@lagoon-protocol/v0-core 0.12.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2145,6 +2145,7 @@ __export(exports_src, {
2145
2145
  tryCatch: () => tryCatch,
2146
2146
  resolveVersion: () => resolveVersion,
2147
2147
  isValidVersion: () => isValidVersion,
2148
+ feeRegistryAbi_v2: () => feeRegistryAbi_v2,
2148
2149
  addresses: () => addresses,
2149
2150
  Version: () => Version,
2150
2151
  VaultUtils: () => VaultUtils,
@@ -2171,6 +2172,7 @@ var vaultAbi_v0_4_0 = [{ type: "constructor", inputs: [{ name: "disable", type:
2171
2172
  var vaultAbi_v0_3_0 = [{ type: "constructor", inputs: [{ name: "disable", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "MAX_MANAGEMENT_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "MAX_PERFORMANCE_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "MAX_PROTOCOL_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "acceptOwnership", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "addToWhitelist", inputs: [{ name: "accounts", type: "address[]", internalType: "address[]" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "allowance", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "spender", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "approve", inputs: [{ name: "spender", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "asset", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "balanceOf", inputs: [{ name: "account", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "cancelRequestDeposit", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "claimSharesAndRequestRedeem", inputs: [{ name: "sharesToRedeem", type: "uint256", internalType: "uint256" }], outputs: [{ name: "requestId", type: "uint40", internalType: "uint40" }], stateMutability: "nonpayable" }, { type: "function", name: "claimableDepositRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "claimableRedeemRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "close", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "convertToAssets", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToAssets", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "requestId", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToShares", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToShares", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "requestId", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "decimals", inputs: [], outputs: [{ name: "", type: "uint8", internalType: "uint8" }], stateMutability: "view" }, { type: "function", name: "deposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "deposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "disableWhitelist", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "feeRates", inputs: [], outputs: [{ name: "", type: "tuple", internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }], stateMutability: "view" }, { type: "function", name: "getRolesStorage", inputs: [], outputs: [{ name: "_rolesStorage", type: "tuple", internalType: "struct Roles.RolesStorage", components: [{ name: "whitelistManager", type: "address", internalType: "address" }, { name: "feeReceiver", type: "address", internalType: "address" }, { name: "safe", type: "address", internalType: "address" }, { name: "feeRegistry", type: "address", internalType: "contract FeeRegistry" }, { name: "valuationManager", type: "address", internalType: "address" }] }], stateMutability: "pure" }, { type: "function", name: "highWaterMark", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "initialize", inputs: [{ name: "data", type: "bytes", internalType: "bytes" }, { name: "feeRegistry", type: "address", internalType: "address" }, { name: "wrappedNativeToken", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "initiateClosing", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "isOperator", inputs: [{ name: "controller", type: "address", internalType: "address" }, { name: "operator", type: "address", internalType: "address" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "isWhitelistActivated", inputs: [], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "isWhitelisted", inputs: [{ name: "account", type: "address", internalType: "address" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "lastDepositRequestId", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint40", internalType: "uint40" }], stateMutability: "view" }, { type: "function", name: "lastFeeTime", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "lastRedeemRequestId", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint40", internalType: "uint40" }], stateMutability: "view" }, { type: "function", name: "maxDeposit", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxMint", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxRedeem", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxWithdraw", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "mint", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "mint", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "name", inputs: [], outputs: [{ name: "", type: "string", internalType: "string" }], stateMutability: "view" }, { type: "function", name: "owner", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "pause", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "paused", inputs: [], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "pendingDepositRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "pendingOwner", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "pendingRedeemRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "pendingSilo", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "previewDeposit", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewMint", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewRedeem", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewWithdraw", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "redeem", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "renounceOwnership", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "requestDeposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "payable" }, { type: "function", name: "requestDeposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }, { name: "referral", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "payable" }, { type: "function", name: "requestRedeem", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "revokeFromWhitelist", inputs: [{ name: "accounts", type: "address[]", internalType: "address[]" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "setOperator", inputs: [{ name: "operator", type: "address", internalType: "address" }, { name: "approved", type: "bool", internalType: "bool" }], outputs: [{ name: "success", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "settleDeposit", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "settleRedeem", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "share", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "supportsInterface", inputs: [{ name: "interfaceId", type: "bytes4", internalType: "bytes4" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "symbol", inputs: [], outputs: [{ name: "", type: "string", internalType: "string" }], stateMutability: "view" }, { type: "function", name: "totalAssets", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "totalSupply", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "transfer", inputs: [{ name: "to", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "transferFrom", inputs: [{ name: "from", type: "address", internalType: "address" }, { name: "to", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "transferOwnership", inputs: [{ name: "newOwner", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "unpause", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateFeeReceiver", inputs: [{ name: "_feeReceiver", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateNewTotalAssets", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateRates", inputs: [{ name: "newRates", type: "tuple", internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateValuationManager", inputs: [{ name: "_valuationManager", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateWhitelistManager", inputs: [{ name: "_whitelistManager", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "version", inputs: [], outputs: [{ name: "", type: "string", internalType: "string" }], stateMutability: "pure" }, { type: "function", name: "withdraw", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "event", name: "Approval", inputs: [{ name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "spender", type: "address", indexed: true, internalType: "address" }, { name: "value", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Deposit", inputs: [{ name: "sender", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "DepositRequest", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "sender", type: "address", indexed: false, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "DepositRequestCanceled", inputs: [{ name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "controller", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "FeeReceiverUpdated", inputs: [{ name: "oldReceiver", type: "address", indexed: false, internalType: "address" }, { name: "newReceiver", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "HighWaterMarkUpdated", inputs: [{ name: "oldHighWaterMark", type: "uint256", indexed: false, internalType: "uint256" }, { name: "newHighWaterMark", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Initialized", inputs: [{ name: "version", type: "uint64", indexed: false, internalType: "uint64" }], anonymous: false }, { type: "event", name: "NewTotalAssetsUpdated", inputs: [{ name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "OperatorSet", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "operator", type: "address", indexed: true, internalType: "address" }, { name: "approved", type: "bool", indexed: false, internalType: "bool" }], anonymous: false }, { type: "event", name: "OwnershipTransferStarted", inputs: [{ name: "previousOwner", type: "address", indexed: true, internalType: "address" }, { name: "newOwner", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "OwnershipTransferred", inputs: [{ name: "previousOwner", type: "address", indexed: true, internalType: "address" }, { name: "newOwner", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "Paused", inputs: [{ name: "account", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "RatesUpdated", inputs: [{ name: "oldRates", type: "tuple", indexed: false, internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }, { name: "newRate", type: "tuple", indexed: false, internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }, { name: "timestamp", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "RedeemRequest", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "sender", type: "address", indexed: false, internalType: "address" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Referral", inputs: [{ name: "referral", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "SettleDeposit", inputs: [{ name: "epochId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "settledId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "totalSupply", type: "uint256", indexed: false, internalType: "uint256" }, { name: "assetsDeposited", type: "uint256", indexed: false, internalType: "uint256" }, { name: "sharesMinted", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "SettleRedeem", inputs: [{ name: "epochId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "settledId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "totalSupply", type: "uint256", indexed: false, internalType: "uint256" }, { name: "assetsWithdrawed", type: "uint256", indexed: false, internalType: "uint256" }, { name: "sharesBurned", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "StateUpdated", inputs: [{ name: "state", type: "uint8", indexed: false, internalType: "enum State" }], anonymous: false }, { type: "event", name: "TotalAssetsUpdated", inputs: [{ name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Transfer", inputs: [{ name: "from", type: "address", indexed: true, internalType: "address" }, { name: "to", type: "address", indexed: true, internalType: "address" }, { name: "value", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Unpaused", inputs: [{ name: "account", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "ValuationManagerUpdated", inputs: [{ name: "oldManager", type: "address", indexed: false, internalType: "address" }, { name: "newManager", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "WhitelistDisabled", inputs: [], anonymous: false }, { type: "event", name: "WhitelistManagerUpdated", inputs: [{ name: "oldManager", type: "address", indexed: false, internalType: "address" }, { name: "newManager", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "WhitelistUpdated", inputs: [{ name: "account", type: "address", indexed: true, internalType: "address" }, { name: "authorized", type: "bool", indexed: false, internalType: "bool" }], anonymous: false }, { type: "event", name: "Withdraw", inputs: [{ name: "sender", type: "address", indexed: true, internalType: "address" }, { name: "receiver", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "error", name: "AboveMaxRate", inputs: [{ name: "maxRate", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "AddressEmptyCode", inputs: [{ name: "target", type: "address", internalType: "address" }] }, { type: "error", name: "AddressInsufficientBalance", inputs: [{ name: "account", type: "address", internalType: "address" }] }, { type: "error", name: "CantDepositNativeToken", inputs: [] }, { type: "error", name: "Closed", inputs: [] }, { type: "error", name: "ERC20InsufficientAllowance", inputs: [{ name: "spender", type: "address", internalType: "address" }, { name: "allowance", type: "uint256", internalType: "uint256" }, { name: "needed", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC20InsufficientBalance", inputs: [{ name: "sender", type: "address", internalType: "address" }, { name: "balance", type: "uint256", internalType: "uint256" }, { name: "needed", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC20InvalidApprover", inputs: [{ name: "approver", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidReceiver", inputs: [{ name: "receiver", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidSender", inputs: [{ name: "sender", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidSpender", inputs: [{ name: "spender", type: "address", internalType: "address" }] }, { type: "error", name: "ERC4626ExceededMaxDeposit", inputs: [{ name: "receiver", type: "address", internalType: "address" }, { name: "assets", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxMint", inputs: [{ name: "receiver", type: "address", internalType: "address" }, { name: "shares", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxRedeem", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "shares", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxWithdraw", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "assets", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC7540InvalidOperator", inputs: [] }, { type: "error", name: "ERC7540PreviewDepositDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewMintDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewRedeemDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewWithdrawDisabled", inputs: [] }, { type: "error", name: "EnforcedPause", inputs: [] }, { type: "error", name: "ExpectedPause", inputs: [] }, { type: "error", name: "FailedInnerCall", inputs: [] }, { type: "error", name: "InvalidInitialization", inputs: [] }, { type: "error", name: "MathOverflowedMulDiv", inputs: [] }, { type: "error", name: "NewTotalAssetsMissing", inputs: [] }, { type: "error", name: "NotClosing", inputs: [{ name: "currentState", type: "uint8", internalType: "enum State" }] }, { type: "error", name: "NotInitializing", inputs: [] }, { type: "error", name: "NotOpen", inputs: [{ name: "currentState", type: "uint8", internalType: "enum State" }] }, { type: "error", name: "NotWhitelisted", inputs: [] }, { type: "error", name: "OnlyOneRequestAllowed", inputs: [] }, { type: "error", name: "OnlySafe", inputs: [{ name: "safe", type: "address", internalType: "address" }] }, { type: "error", name: "OnlyValuationManager", inputs: [{ name: "valuationManager", type: "address", internalType: "address" }] }, { type: "error", name: "OnlyWhitelistManager", inputs: [{ name: "whitelistManager", type: "address", internalType: "address" }] }, { type: "error", name: "OwnableInvalidOwner", inputs: [{ name: "owner", type: "address", internalType: "address" }] }, { type: "error", name: "OwnableUnauthorizedAccount", inputs: [{ name: "account", type: "address", internalType: "address" }] }, { type: "error", name: "RequestIdNotClaimable", inputs: [] }, { type: "error", name: "RequestNotCancelable", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "SafeERC20FailedOperation", inputs: [{ name: "token", type: "address", internalType: "address" }] }, { type: "error", name: "WrongNewTotalAssets", inputs: [] }];
2172
2173
  var vaultAbi_v0_2_0 = [{ type: "constructor", inputs: [{ name: "disable", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "MAX_MANAGEMENT_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "MAX_PERFORMANCE_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "MAX_PROTOCOL_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "acceptOwnership", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "addToWhitelist", inputs: [{ name: "accounts", type: "address[]", internalType: "address[]" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "allowance", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "spender", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "approve", inputs: [{ name: "spender", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "asset", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "balanceOf", inputs: [{ name: "account", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "cancelRequestDeposit", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "claimSharesAndRequestRedeem", inputs: [{ name: "sharesToRedeem", type: "uint256", internalType: "uint256" }], outputs: [{ name: "requestId", type: "uint40", internalType: "uint40" }], stateMutability: "nonpayable" }, { type: "function", name: "claimableDepositRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "claimableRedeemRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "close", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "convertToAssets", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToAssets", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "requestId", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToShares", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToShares", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "requestId", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "decimals", inputs: [], outputs: [{ name: "", type: "uint8", internalType: "uint8" }], stateMutability: "view" }, { type: "function", name: "deposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "deposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "disableWhitelist", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "feeRates", inputs: [], outputs: [{ name: "", type: "tuple", internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }], stateMutability: "view" }, { type: "function", name: "getRolesStorage", inputs: [], outputs: [{ name: "_rolesStorage", type: "tuple", internalType: "struct Roles.RolesStorage", components: [{ name: "whitelistManager", type: "address", internalType: "address" }, { name: "feeReceiver", type: "address", internalType: "address" }, { name: "safe", type: "address", internalType: "address" }, { name: "feeRegistry", type: "address", internalType: "contract FeeRegistry" }, { name: "valuationManager", type: "address", internalType: "address" }] }], stateMutability: "pure" }, { type: "function", name: "highWaterMark", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "initialize", inputs: [{ name: "init", type: "tuple", internalType: "struct InitStruct", components: [{ name: "underlying", type: "address", internalType: "contract IERC20" }, { name: "name", type: "string", internalType: "string" }, { name: "symbol", type: "string", internalType: "string" }, { name: "safe", type: "address", internalType: "address" }, { name: "whitelistManager", type: "address", internalType: "address" }, { name: "valuationManager", type: "address", internalType: "address" }, { name: "admin", type: "address", internalType: "address" }, { name: "feeReceiver", type: "address", internalType: "address" }, { name: "feeRegistry", type: "address", internalType: "address" }, { name: "wrappedNativeToken", type: "address", internalType: "address" }, { name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }, { name: "enableWhitelist", type: "bool", internalType: "bool" }, { name: "rateUpdateCooldown", type: "uint256", internalType: "uint256" }] }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "initiateClosing", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "isOperator", inputs: [{ name: "controller", type: "address", internalType: "address" }, { name: "operator", type: "address", internalType: "address" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "isWhitelistActivated", inputs: [], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "isWhitelisted", inputs: [{ name: "account", type: "address", internalType: "address" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "lastDepositRequestId", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint40", internalType: "uint40" }], stateMutability: "view" }, { type: "function", name: "lastFeeTime", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "lastRedeemRequestId", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint40", internalType: "uint40" }], stateMutability: "view" }, { type: "function", name: "maxDeposit", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxMint", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxRedeem", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxWithdraw", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "mint", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "mint", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "name", inputs: [], outputs: [{ name: "", type: "string", internalType: "string" }], stateMutability: "view" }, { type: "function", name: "owner", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "pause", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "paused", inputs: [], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "pendingDepositRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "pendingOwner", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "pendingRedeemRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "pendingSilo", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "previewDeposit", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewMint", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewRedeem", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewWithdraw", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "redeem", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "renounceOwnership", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "requestDeposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "payable" }, { type: "function", name: "requestDeposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }, { name: "referral", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "payable" }, { type: "function", name: "requestRedeem", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "revokeFromWhitelist", inputs: [{ name: "accounts", type: "address[]", internalType: "address[]" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "setOperator", inputs: [{ name: "operator", type: "address", internalType: "address" }, { name: "approved", type: "bool", internalType: "bool" }], outputs: [{ name: "success", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "settleDeposit", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "settleRedeem", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "share", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "supportsInterface", inputs: [{ name: "interfaceId", type: "bytes4", internalType: "bytes4" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "symbol", inputs: [], outputs: [{ name: "", type: "string", internalType: "string" }], stateMutability: "view" }, { type: "function", name: "totalAssets", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "totalSupply", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "transfer", inputs: [{ name: "to", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "transferFrom", inputs: [{ name: "from", type: "address", internalType: "address" }, { name: "to", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "transferOwnership", inputs: [{ name: "newOwner", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "unpause", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateFeeReceiver", inputs: [{ name: "_feeReceiver", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateNewTotalAssets", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateRates", inputs: [{ name: "newRates", type: "tuple", internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateValuationManager", inputs: [{ name: "_valuationManager", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateWhitelistManager", inputs: [{ name: "_whitelistManager", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "withdraw", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "event", name: "Approval", inputs: [{ name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "spender", type: "address", indexed: true, internalType: "address" }, { name: "value", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Deposit", inputs: [{ name: "sender", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "DepositRequest", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "sender", type: "address", indexed: false, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "DepositRequestCanceled", inputs: [{ name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "controller", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "FeeReceiverUpdated", inputs: [{ name: "oldReceiver", type: "address", indexed: false, internalType: "address" }, { name: "newReceiver", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "HighWaterMarkUpdated", inputs: [{ name: "oldHighWaterMark", type: "uint256", indexed: false, internalType: "uint256" }, { name: "newHighWaterMark", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Initialized", inputs: [{ name: "version", type: "uint64", indexed: false, internalType: "uint64" }], anonymous: false }, { type: "event", name: "NewTotalAssetsUpdated", inputs: [{ name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "OperatorSet", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "operator", type: "address", indexed: true, internalType: "address" }, { name: "approved", type: "bool", indexed: false, internalType: "bool" }], anonymous: false }, { type: "event", name: "OwnershipTransferStarted", inputs: [{ name: "previousOwner", type: "address", indexed: true, internalType: "address" }, { name: "newOwner", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "OwnershipTransferred", inputs: [{ name: "previousOwner", type: "address", indexed: true, internalType: "address" }, { name: "newOwner", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "Paused", inputs: [{ name: "account", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "RatesUpdated", inputs: [{ name: "oldRates", type: "tuple", indexed: false, internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }, { name: "newRate", type: "tuple", indexed: false, internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }, { name: "timestamp", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "RedeemRequest", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "sender", type: "address", indexed: false, internalType: "address" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Referral", inputs: [{ name: "referral", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "SettleDeposit", inputs: [{ name: "epochId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "settledId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "totalSupply", type: "uint256", indexed: false, internalType: "uint256" }, { name: "assetsDeposited", type: "uint256", indexed: false, internalType: "uint256" }, { name: "sharesMinted", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "SettleRedeem", inputs: [{ name: "epochId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "settledId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "totalSupply", type: "uint256", indexed: false, internalType: "uint256" }, { name: "assetsWithdrawed", type: "uint256", indexed: false, internalType: "uint256" }, { name: "sharesBurned", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "StateUpdated", inputs: [{ name: "state", type: "uint8", indexed: false, internalType: "enum State" }], anonymous: false }, { type: "event", name: "TotalAssetsUpdated", inputs: [{ name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Transfer", inputs: [{ name: "from", type: "address", indexed: true, internalType: "address" }, { name: "to", type: "address", indexed: true, internalType: "address" }, { name: "value", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Unpaused", inputs: [{ name: "account", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "ValuationManagerUpdated", inputs: [{ name: "oldManager", type: "address", indexed: false, internalType: "address" }, { name: "newManager", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "WhitelistDisabled", inputs: [], anonymous: false }, { type: "event", name: "WhitelistManagerUpdated", inputs: [{ name: "oldManager", type: "address", indexed: false, internalType: "address" }, { name: "newManager", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "WhitelistUpdated", inputs: [{ name: "account", type: "address", indexed: true, internalType: "address" }, { name: "authorized", type: "bool", indexed: false, internalType: "bool" }], anonymous: false }, { type: "event", name: "Withdraw", inputs: [{ name: "sender", type: "address", indexed: true, internalType: "address" }, { name: "receiver", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "error", name: "AboveMaxRate", inputs: [{ name: "maxRate", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "AddressEmptyCode", inputs: [{ name: "target", type: "address", internalType: "address" }] }, { type: "error", name: "AddressInsufficientBalance", inputs: [{ name: "account", type: "address", internalType: "address" }] }, { type: "error", name: "CantDepositNativeToken", inputs: [] }, { type: "error", name: "Closed", inputs: [] }, { type: "error", name: "ERC20InsufficientAllowance", inputs: [{ name: "spender", type: "address", internalType: "address" }, { name: "allowance", type: "uint256", internalType: "uint256" }, { name: "needed", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC20InsufficientBalance", inputs: [{ name: "sender", type: "address", internalType: "address" }, { name: "balance", type: "uint256", internalType: "uint256" }, { name: "needed", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC20InvalidApprover", inputs: [{ name: "approver", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidReceiver", inputs: [{ name: "receiver", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidSender", inputs: [{ name: "sender", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidSpender", inputs: [{ name: "spender", type: "address", internalType: "address" }] }, { type: "error", name: "ERC4626ExceededMaxDeposit", inputs: [{ name: "receiver", type: "address", internalType: "address" }, { name: "assets", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxMint", inputs: [{ name: "receiver", type: "address", internalType: "address" }, { name: "shares", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxRedeem", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "shares", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxWithdraw", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "assets", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC7540InvalidOperator", inputs: [] }, { type: "error", name: "ERC7540PreviewDepositDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewMintDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewRedeemDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewWithdrawDisabled", inputs: [] }, { type: "error", name: "EnforcedPause", inputs: [] }, { type: "error", name: "ExpectedPause", inputs: [] }, { type: "error", name: "FailedInnerCall", inputs: [] }, { type: "error", name: "InvalidInitialization", inputs: [] }, { type: "error", name: "MathOverflowedMulDiv", inputs: [] }, { type: "error", name: "NewTotalAssetsMissing", inputs: [] }, { type: "error", name: "NotClosing", inputs: [{ name: "currentState", type: "uint8", internalType: "enum State" }] }, { type: "error", name: "NotInitializing", inputs: [] }, { type: "error", name: "NotOpen", inputs: [{ name: "currentState", type: "uint8", internalType: "enum State" }] }, { type: "error", name: "NotWhitelisted", inputs: [] }, { type: "error", name: "OnlyOneRequestAllowed", inputs: [] }, { type: "error", name: "OnlySafe", inputs: [{ name: "safe", type: "address", internalType: "address" }] }, { type: "error", name: "OnlyValuationManager", inputs: [{ name: "valuationManager", type: "address", internalType: "address" }] }, { type: "error", name: "OnlyWhitelistManager", inputs: [{ name: "whitelistManager", type: "address", internalType: "address" }] }, { type: "error", name: "OwnableInvalidOwner", inputs: [{ name: "owner", type: "address", internalType: "address" }] }, { type: "error", name: "OwnableUnauthorizedAccount", inputs: [{ name: "account", type: "address", internalType: "address" }] }, { type: "error", name: "RequestIdNotClaimable", inputs: [] }, { type: "error", name: "RequestNotCancelable", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "SafeERC20FailedOperation", inputs: [{ name: "token", type: "address", internalType: "address" }] }, { type: "error", name: "WrongNewTotalAssets", inputs: [] }];
2173
2174
  var vaultAbi_v0_1_0 = [{ type: "constructor", inputs: [{ name: "disable", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "MAX_MANAGEMENT_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "MAX_PERFORMANCE_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "MAX_PROTOCOL_RATE", inputs: [], outputs: [{ name: "", type: "uint16", internalType: "uint16" }], stateMutability: "view" }, { type: "function", name: "acceptOwnership", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "addToWhitelist", inputs: [{ name: "accounts", type: "address[]", internalType: "address[]" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "allowance", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "spender", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "approve", inputs: [{ name: "spender", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "asset", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "balanceOf", inputs: [{ name: "account", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "cancelRequestDeposit", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "claimSharesAndRequestRedeem", inputs: [{ name: "sharesToRedeem", type: "uint256", internalType: "uint256" }], outputs: [{ name: "requestId", type: "uint40", internalType: "uint40" }], stateMutability: "nonpayable" }, { type: "function", name: "claimableDepositRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "claimableRedeemRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "close", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "convertToAssets", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToAssets", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "requestId", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToShares", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "convertToShares", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "requestId", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "decimals", inputs: [], outputs: [{ name: "", type: "uint8", internalType: "uint8" }], stateMutability: "view" }, { type: "function", name: "deposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "deposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "disableWhitelist", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "feeRates", inputs: [], outputs: [{ name: "", type: "tuple", internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }], stateMutability: "view" }, { type: "function", name: "getRolesStorage", inputs: [], outputs: [{ name: "_rolesStorage", type: "tuple", internalType: "struct Roles.RolesStorage", components: [{ name: "whitelistManager", type: "address", internalType: "address" }, { name: "feeReceiver", type: "address", internalType: "address" }, { name: "safe", type: "address", internalType: "address" }, { name: "feeRegistry", type: "address", internalType: "contract FeeRegistry" }, { name: "valuationManager", type: "address", internalType: "address" }] }], stateMutability: "pure" }, { type: "function", name: "highWaterMark", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "initialize", inputs: [{ name: "init", type: "tuple", internalType: "struct InitStruct", components: [{ name: "underlying", type: "address", internalType: "contract IERC20" }, { name: "name", type: "string", internalType: "string" }, { name: "symbol", type: "string", internalType: "string" }, { name: "safe", type: "address", internalType: "address" }, { name: "whitelistManager", type: "address", internalType: "address" }, { name: "valuationManager", type: "address", internalType: "address" }, { name: "admin", type: "address", internalType: "address" }, { name: "feeReceiver", type: "address", internalType: "address" }, { name: "feeRegistry", type: "address", internalType: "address" }, { name: "wrappedNativeToken", type: "address", internalType: "address" }, { name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }, { name: "enableWhitelist", type: "bool", internalType: "bool" }, { name: "rateUpdateCooldown", type: "uint256", internalType: "uint256" }] }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "initiateClosing", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "isOperator", inputs: [{ name: "controller", type: "address", internalType: "address" }, { name: "operator", type: "address", internalType: "address" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "isWhitelistActivated", inputs: [], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "isWhitelisted", inputs: [{ name: "account", type: "address", internalType: "address" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "lastDepositRequestId", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint40", internalType: "uint40" }], stateMutability: "view" }, { type: "function", name: "lastFeeTime", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "lastRedeemRequestId", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint40", internalType: "uint40" }], stateMutability: "view" }, { type: "function", name: "maxDeposit", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxMint", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxRedeem", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "maxWithdraw", inputs: [{ name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "mint", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "mint", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "name", inputs: [], outputs: [{ name: "", type: "string", internalType: "string" }], stateMutability: "view" }, { type: "function", name: "owner", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "pause", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "paused", inputs: [], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "pendingDepositRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "pendingOwner", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "pendingRedeemRequest", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "pendingSilo", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "previewDeposit", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewMint", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewRedeem", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "previewWithdraw", inputs: [{ name: "", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "pure" }, { type: "function", name: "redeem", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "assets", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "renounceOwnership", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "requestDeposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "payable" }, { type: "function", name: "requestDeposit", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }, { name: "referral", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "payable" }, { type: "function", name: "requestRedeem", inputs: [{ name: "shares", type: "uint256", internalType: "uint256" }, { name: "controller", type: "address", internalType: "address" }, { name: "owner", type: "address", internalType: "address" }], outputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "function", name: "revokeFromWhitelist", inputs: [{ name: "accounts", type: "address[]", internalType: "address[]" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "setOperator", inputs: [{ name: "operator", type: "address", internalType: "address" }, { name: "approved", type: "bool", internalType: "bool" }], outputs: [{ name: "success", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "settleDeposit", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "settleRedeem", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "share", inputs: [], outputs: [{ name: "", type: "address", internalType: "address" }], stateMutability: "view" }, { type: "function", name: "supportsInterface", inputs: [{ name: "interfaceId", type: "bytes4", internalType: "bytes4" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "view" }, { type: "function", name: "symbol", inputs: [], outputs: [{ name: "", type: "string", internalType: "string" }], stateMutability: "view" }, { type: "function", name: "totalAssets", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "totalSupply", inputs: [], outputs: [{ name: "", type: "uint256", internalType: "uint256" }], stateMutability: "view" }, { type: "function", name: "transfer", inputs: [{ name: "to", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "transferFrom", inputs: [{ name: "from", type: "address", internalType: "address" }, { name: "to", type: "address", internalType: "address" }, { name: "value", type: "uint256", internalType: "uint256" }], outputs: [{ name: "", type: "bool", internalType: "bool" }], stateMutability: "nonpayable" }, { type: "function", name: "transferOwnership", inputs: [{ name: "newOwner", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "unpause", inputs: [], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateFeeReceiver", inputs: [{ name: "_feeReceiver", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateNewTotalAssets", inputs: [{ name: "_newTotalAssets", type: "uint256", internalType: "uint256" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateRates", inputs: [{ name: "newRates", type: "tuple", internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateValuationManager", inputs: [{ name: "_valuationManager", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "updateWhitelistManager", inputs: [{ name: "_whitelistManager", type: "address", internalType: "address" }], outputs: [], stateMutability: "nonpayable" }, { type: "function", name: "withdraw", inputs: [{ name: "assets", type: "uint256", internalType: "uint256" }, { name: "receiver", type: "address", internalType: "address" }, { name: "controller", type: "address", internalType: "address" }], outputs: [{ name: "shares", type: "uint256", internalType: "uint256" }], stateMutability: "nonpayable" }, { type: "event", name: "Approval", inputs: [{ name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "spender", type: "address", indexed: true, internalType: "address" }, { name: "value", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Deposit", inputs: [{ name: "sender", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "DepositRequest", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "sender", type: "address", indexed: false, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "DepositRequestCanceled", inputs: [{ name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "controller", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "FeeReceiverUpdated", inputs: [{ name: "oldReceiver", type: "address", indexed: false, internalType: "address" }, { name: "newReceiver", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "HighWaterMarkUpdated", inputs: [{ name: "oldHighWaterMark", type: "uint256", indexed: false, internalType: "uint256" }, { name: "newHighWaterMark", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Initialized", inputs: [{ name: "version", type: "uint64", indexed: false, internalType: "uint64" }], anonymous: false }, { type: "event", name: "NewTotalAssetsUpdated", inputs: [{ name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "OperatorSet", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "operator", type: "address", indexed: true, internalType: "address" }, { name: "approved", type: "bool", indexed: false, internalType: "bool" }], anonymous: false }, { type: "event", name: "OwnershipTransferStarted", inputs: [{ name: "previousOwner", type: "address", indexed: true, internalType: "address" }, { name: "newOwner", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "OwnershipTransferred", inputs: [{ name: "previousOwner", type: "address", indexed: true, internalType: "address" }, { name: "newOwner", type: "address", indexed: true, internalType: "address" }], anonymous: false }, { type: "event", name: "Paused", inputs: [{ name: "account", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "RatesUpdated", inputs: [{ name: "oldRates", type: "tuple", indexed: false, internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }, { name: "newRate", type: "tuple", indexed: false, internalType: "struct Rates", components: [{ name: "managementRate", type: "uint16", internalType: "uint16" }, { name: "performanceRate", type: "uint16", internalType: "uint16" }] }, { name: "timestamp", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "RedeemRequest", inputs: [{ name: "controller", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "sender", type: "address", indexed: false, internalType: "address" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Referral", inputs: [{ name: "referral", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "requestId", type: "uint256", indexed: true, internalType: "uint256" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "SettleDeposit", inputs: [{ name: "epochId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "settledId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "totalSupply", type: "uint256", indexed: false, internalType: "uint256" }, { name: "assetsDeposited", type: "uint256", indexed: false, internalType: "uint256" }, { name: "sharesMinted", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "SettleRedeem", inputs: [{ name: "epochId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "settledId", type: "uint40", indexed: true, internalType: "uint40" }, { name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "totalSupply", type: "uint256", indexed: false, internalType: "uint256" }, { name: "assetsWithdrawed", type: "uint256", indexed: false, internalType: "uint256" }, { name: "sharesBurned", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "StateUpdated", inputs: [{ name: "state", type: "uint8", indexed: false, internalType: "enum State" }], anonymous: false }, { type: "event", name: "TotalAssetsUpdated", inputs: [{ name: "totalAssets", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Transfer", inputs: [{ name: "from", type: "address", indexed: true, internalType: "address" }, { name: "to", type: "address", indexed: true, internalType: "address" }, { name: "value", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "event", name: "Unpaused", inputs: [{ name: "account", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "ValuationManagerUpdated", inputs: [{ name: "oldManager", type: "address", indexed: false, internalType: "address" }, { name: "newManager", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "WhitelistDisabled", inputs: [], anonymous: false }, { type: "event", name: "WhitelistManagerUpdated", inputs: [{ name: "oldManager", type: "address", indexed: false, internalType: "address" }, { name: "newManager", type: "address", indexed: false, internalType: "address" }], anonymous: false }, { type: "event", name: "WhitelistUpdated", inputs: [{ name: "account", type: "address", indexed: true, internalType: "address" }, { name: "authorized", type: "bool", indexed: false, internalType: "bool" }], anonymous: false }, { type: "event", name: "Withdraw", inputs: [{ name: "sender", type: "address", indexed: true, internalType: "address" }, { name: "receiver", type: "address", indexed: true, internalType: "address" }, { name: "owner", type: "address", indexed: true, internalType: "address" }, { name: "assets", type: "uint256", indexed: false, internalType: "uint256" }, { name: "shares", type: "uint256", indexed: false, internalType: "uint256" }], anonymous: false }, { type: "error", name: "AboveMaxRate", inputs: [{ name: "maxRate", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "AddressEmptyCode", inputs: [{ name: "target", type: "address", internalType: "address" }] }, { type: "error", name: "AddressInsufficientBalance", inputs: [{ name: "account", type: "address", internalType: "address" }] }, { type: "error", name: "CantDepositNativeToken", inputs: [] }, { type: "error", name: "Closed", inputs: [] }, { type: "error", name: "ERC20InsufficientAllowance", inputs: [{ name: "spender", type: "address", internalType: "address" }, { name: "allowance", type: "uint256", internalType: "uint256" }, { name: "needed", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC20InsufficientBalance", inputs: [{ name: "sender", type: "address", internalType: "address" }, { name: "balance", type: "uint256", internalType: "uint256" }, { name: "needed", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC20InvalidApprover", inputs: [{ name: "approver", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidReceiver", inputs: [{ name: "receiver", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidSender", inputs: [{ name: "sender", type: "address", internalType: "address" }] }, { type: "error", name: "ERC20InvalidSpender", inputs: [{ name: "spender", type: "address", internalType: "address" }] }, { type: "error", name: "ERC4626ExceededMaxDeposit", inputs: [{ name: "receiver", type: "address", internalType: "address" }, { name: "assets", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxMint", inputs: [{ name: "receiver", type: "address", internalType: "address" }, { name: "shares", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxRedeem", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "shares", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC4626ExceededMaxWithdraw", inputs: [{ name: "owner", type: "address", internalType: "address" }, { name: "assets", type: "uint256", internalType: "uint256" }, { name: "max", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "ERC7540InvalidOperator", inputs: [] }, { type: "error", name: "ERC7540PreviewDepositDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewMintDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewRedeemDisabled", inputs: [] }, { type: "error", name: "ERC7540PreviewWithdrawDisabled", inputs: [] }, { type: "error", name: "EnforcedPause", inputs: [] }, { type: "error", name: "ExpectedPause", inputs: [] }, { type: "error", name: "FailedInnerCall", inputs: [] }, { type: "error", name: "InvalidInitialization", inputs: [] }, { type: "error", name: "MathOverflowedMulDiv", inputs: [] }, { type: "error", name: "NewTotalAssetsMissing", inputs: [] }, { type: "error", name: "NotClosing", inputs: [{ name: "currentState", type: "uint8", internalType: "enum State" }] }, { type: "error", name: "NotInitializing", inputs: [] }, { type: "error", name: "NotOpen", inputs: [{ name: "currentState", type: "uint8", internalType: "enum State" }] }, { type: "error", name: "NotWhitelisted", inputs: [] }, { type: "error", name: "OnlyOneRequestAllowed", inputs: [] }, { type: "error", name: "OnlySafe", inputs: [{ name: "safe", type: "address", internalType: "address" }] }, { type: "error", name: "OnlyValuationManager", inputs: [{ name: "valuationManager", type: "address", internalType: "address" }] }, { type: "error", name: "OnlyWhitelistManager", inputs: [{ name: "whitelistManager", type: "address", internalType: "address" }] }, { type: "error", name: "OwnableInvalidOwner", inputs: [{ name: "owner", type: "address", internalType: "address" }] }, { type: "error", name: "OwnableUnauthorizedAccount", inputs: [{ name: "account", type: "address", internalType: "address" }] }, { type: "error", name: "RequestIdNotClaimable", inputs: [] }, { type: "error", name: "RequestNotCancelable", inputs: [{ name: "requestId", type: "uint256", internalType: "uint256" }] }, { type: "error", name: "SafeERC20FailedOperation", inputs: [{ name: "token", type: "address", internalType: "address" }] }, { type: "error", name: "WrongNewTotalAssets", inputs: [] }];
2175
+ var feeRegistryAbi_v2 = [{ inputs: [{ internalType: "bool", name: "disable", type: "bool" }], stateMutability: "nonpayable", type: "constructor" }, { inputs: [], name: "CantRemoveDefaultLogic", type: "error" }, { inputs: [], name: "InvalidInitialization", type: "error" }, { inputs: [{ internalType: "address", name: "Logic", type: "address" }], name: "LogicNotWhitelisted", type: "error" }, { inputs: [], name: "NotInitializing", type: "error" }, { inputs: [{ internalType: "address", name: "owner", type: "address" }], name: "OwnableInvalidOwner", type: "error" }, { inputs: [{ internalType: "address", name: "account", type: "address" }], name: "OwnableUnauthorizedAccount", type: "error" }, { anonymous: false, inputs: [{ indexed: false, internalType: "address", name: "vault", type: "address" }, { indexed: false, internalType: "uint16", name: "rate", type: "uint16" }, { indexed: false, internalType: "bool", name: "isActivated", type: "bool" }], name: "CustomRateUpdated", type: "event" }, { anonymous: false, inputs: [{ indexed: false, internalType: "address", name: "previous", type: "address" }, { indexed: false, internalType: "address", name: "newImpl", type: "address" }], name: "DefaultLogicUpdated", type: "event" }, { anonymous: false, inputs: [{ indexed: false, internalType: "uint256", name: "oldRate", type: "uint256" }, { indexed: false, internalType: "uint256", name: "newRate", type: "uint256" }], name: "DefaultRateUpdated", type: "event" }, { anonymous: false, inputs: [{ indexed: false, internalType: "uint64", name: "version", type: "uint64" }], name: "Initialized", type: "event" }, { anonymous: false, inputs: [{ indexed: false, internalType: "address", name: "Logic", type: "address" }], name: "LogicAdded", type: "event" }, { anonymous: false, inputs: [{ indexed: false, internalType: "address", name: "Logic", type: "address" }], name: "LogicRemoved", type: "event" }, { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" }], name: "OwnershipTransferStarted", type: "event" }, { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" }], name: "OwnershipTransferred", type: "event" }, { anonymous: false, inputs: [{ indexed: false, internalType: "address", name: "oldReceiver", type: "address" }, { indexed: false, internalType: "address", name: "newReceiver", type: "address" }], name: "ProtocolFeeReceiverUpdated", type: "event" }, { inputs: [{ internalType: "address", name: "_protocolFeeReceiver", type: "address" }], name: "__FeeRegistry_init", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "_newLogic", type: "address" }], name: "addLogic", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "fromLogic", type: "address" }, { internalType: "address", name: "logic", type: "address" }], name: "canUseLogic", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function" }, { inputs: [], name: "defaultLogic", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" }, { inputs: [{ internalType: "address", name: "initialOwner", type: "address" }, { internalType: "address", name: "_protocolFeeReceiver", type: "address" }], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "vault", type: "address" }], name: "isCustomRate", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function" }, { inputs: [], name: "owner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" }, { inputs: [], name: "pendingOwner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" }, { inputs: [], name: "protocolFeeReceiver", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" }, { inputs: [], name: "protocolRate", outputs: [{ internalType: "uint256", name: "rate", type: "uint256" }], stateMutability: "view", type: "function" }, { inputs: [{ internalType: "address", name: "vault", type: "address" }], name: "protocolRate", outputs: [{ internalType: "uint256", name: "rate", type: "uint256" }], stateMutability: "view", type: "function" }, { inputs: [{ internalType: "address", name: "_logic", type: "address" }], name: "removeLogic", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "newOwner", type: "address" }], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "vault", type: "address" }, { internalType: "uint16", name: "rate", type: "uint16" }, { internalType: "bool", name: "isActivated", type: "bool" }], name: "updateCustomRate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "_newLogic", type: "address" }], name: "updateDefaultLogic", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "uint16", name: "rate", type: "uint16" }], name: "updateDefaultRate", outputs: [], stateMutability: "nonpayable", type: "function" }, { inputs: [{ internalType: "address", name: "_protocolFeeReceiver", type: "address" }], name: "updateProtocolFeeReceiver", outputs: [], stateMutability: "nonpayable", type: "function" }];
2174
2176
 
2175
2177
  // src/math/MathLib.ts
2176
2178
  var MathLib;
@@ -2306,6 +2308,9 @@ var VaultUtils;
2306
2308
  ((VaultUtils) => {
2307
2309
  VaultUtils.VIRTUAL_ASSETS = 1n;
2308
2310
  VaultUtils.BPS = 10000n;
2311
+ VaultUtils.MAX_MANAGEMENT_RATE = 1000n;
2312
+ VaultUtils.MAX_PERFORMANCE_RATE = 5000n;
2313
+ VaultUtils.MAX_PROTOCOL_RATE = 3000n;
2309
2314
  VaultUtils.ONE_SHARE = 10n ** 18n;
2310
2315
  function decimalsOffset(decimals) {
2311
2316
  return MathLib.zeroFloorSub(18n, decimals);
@@ -2395,6 +2400,7 @@ class Vault extends Token {
2395
2400
  highWaterMark;
2396
2401
  cooldown;
2397
2402
  feeRates;
2403
+ protocolRate;
2398
2404
  owner;
2399
2405
  pendingOwner;
2400
2406
  whitelistManager;
@@ -2435,6 +2441,7 @@ class Vault extends Token {
2435
2441
  state,
2436
2442
  isWhitelistActivated,
2437
2443
  version,
2444
+ protocolRate,
2438
2445
  ...config
2439
2446
  }) {
2440
2447
  super({ ...config, decimals: 18 });
@@ -2459,6 +2466,7 @@ class Vault extends Token {
2459
2466
  this.highWaterMark = highWaterMark;
2460
2467
  this.cooldown = cooldown;
2461
2468
  this.feeRates = feeRates;
2469
+ this.protocolRate = protocolRate;
2462
2470
  this.owner = owner;
2463
2471
  this.pendingOwner = pendingOwner;
2464
2472
  this.whitelistManager = whitelistManager;
@@ -2624,6 +2632,7 @@ class User {
2624
2632
  hasRedeemRequestOnboarded;
2625
2633
  maxMint;
2626
2634
  maxDeposit;
2635
+ claimableDepositRequestActualized;
2627
2636
  maxWithdraw;
2628
2637
  maxRedeem;
2629
2638
  lastDepositRequestId;
@@ -2647,6 +2656,7 @@ class User {
2647
2656
  pendingDepositRequestInShares,
2648
2657
  maxMint,
2649
2658
  maxDeposit,
2659
+ claimableDepositRequestActualized,
2650
2660
  balance,
2651
2661
  balanceInAssets,
2652
2662
  pendingRedeemRequest,
@@ -2664,6 +2674,7 @@ class User {
2664
2674
  this.pendingDepositRequestInShares = pendingDepositRequestInShares;
2665
2675
  this.maxMint = maxMint;
2666
2676
  this.maxDeposit = maxDeposit;
2677
+ this.claimableDepositRequestActualized = claimableDepositRequestActualized;
2667
2678
  this.balance = balance;
2668
2679
  this.balanceInAssets = balanceInAssets;
2669
2680
  this.pendingRedeemRequestInAssets = pendingRedeemRequestInAssets;
@@ -2671,7 +2682,7 @@ class User {
2671
2682
  this.maxWithdraw = maxWithdraw;
2672
2683
  this.maxRedeem = maxRedeem;
2673
2684
  this.positionInShares = pendingDepositRequestInShares + maxMint + balance + pendingRedeemRequest + maxRedeem;
2674
- this.positionInAssets = pendingDepositRequest + maxDeposit + balanceInAssets + pendingRedeemRequestInAssets + maxWithdraw;
2685
+ this.positionInAssets = pendingDepositRequest + claimableDepositRequestActualized + balanceInAssets + pendingRedeemRequestInAssets + maxWithdraw;
2675
2686
  }
2676
2687
  }
2677
2688
  // src/proxy/DelayProxyAdmin.ts