"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.nonces = exports.name = exports.mint = exports.maxWithdraw = exports.maxRedeem = exports.maxMint = exports.maxDeposit = exports.initialize = exports.increaseAllowance = exports.highWaterMark = exports.getAllFlywheels = exports.flywheelLogic = exports.flywheelForRewardToken = exports.feesUpdatedAt = exports.fees = exports.feeRecipient = exports.emergencyExit = exports.depositLimit = exports.deposit = exports.decreaseAllowance = exports.decimals = exports.convertToShares = exports.convertToAssets = exports.claimRewardsForUser = exports.claimRewards = exports.balanceOf = exports.assetsCheckpoint = exports.asset = exports.approve = exports.allowance = exports.addRewardToken = exports.adaptersCount = exports.adapters = exports.acceptOwnership = exports._getExtensionFunctions = exports.DECIMAL_OFFSET = exports.Withdraw = exports.Unpaused = exports.Transfer = exports.Paused = exports.OwnershipTransferred = exports.OwnershipTransferStarted = exports.NewAdaptersProposed = exports.Initialized = exports.Deposit = exports.Approval = exports.InvalidVaultFees = exports.InvalidFeeRecipient = exports.InvalidConfig = exports.AssetInvalid = void 0;
exports.withdrawalThreshold = exports.withdraw = exports.transferOwnership = exports.transferFrom = exports.transfer = exports.totalSupply = exports.totalAssets = exports.symbol = exports.rewardTokens = exports.renounceOwnership = exports.registry = exports.redeem = exports.quitPeriod = exports.proposedFees = exports.proposedFeeTime = exports.proposedAdaptersCount = exports.proposedAdapters = exports.proposedAdapterTime = exports.proposeAdapters = exports.previewWithdraw = exports.previewRedeem = exports.previewMint = exports.previewDeposit = exports.pendingOwner = exports.paused = exports.owner = void 0;
/**
 * Autogenerated file. Do not edit manually. */
exports.AssetInvalid = { inputs: [], name: "AssetInvalid", type: "error" };
exports.InvalidConfig = { inputs: [], name: "InvalidConfig", type: "error" };
exports.InvalidFeeRecipient = { inputs: [], name: "InvalidFeeRecipient", type: "error" };
exports.InvalidVaultFees = { inputs: [], name: "InvalidVaultFees", type: "error" };
exports.Approval = { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: true, internalType: "address", name: "spender", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }], name: "Approval", type: "event" };
exports.Deposit = { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: false, internalType: "uint256", name: "assets", type: "uint256" }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256" }], name: "Deposit", type: "event" };
exports.Initialized = { anonymous: false, inputs: [{ indexed: false, internalType: "uint8", name: "version", type: "uint8" }], name: "Initialized", type: "event" };
exports.NewAdaptersProposed = { anonymous: false, inputs: [{ components: [{ internalType: "contract CompoundMarketERC4626", name: "adapter", type: "address" }, { internalType: "uint64", name: "allocation", type: "uint64" }], indexed: false, internalType: "struct AdapterConfig[10]", name: "newAdapter", type: "tuple[10]" }, { indexed: false, internalType: "uint8", name: "adaptersCount", type: "uint8" }, { indexed: false, internalType: "uint256", name: "timestamp", type: "uint256" }], name: "NewAdaptersProposed", type: "event" };
exports.OwnershipTransferStarted = { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" }], name: "OwnershipTransferStarted", type: "event" };
exports.OwnershipTransferred = { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "previousOwner", type: "address" }, { indexed: true, internalType: "address", name: "newOwner", type: "address" }], name: "OwnershipTransferred", type: "event" };
exports.Paused = { anonymous: false, inputs: [{ indexed: false, internalType: "address", name: "account", type: "address" }], name: "Paused", type: "event" };
exports.Transfer = { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "from", type: "address" }, { indexed: true, internalType: "address", name: "to", type: "address" }, { indexed: false, internalType: "uint256", name: "value", type: "uint256" }], name: "Transfer", type: "event" };
exports.Unpaused = { anonymous: false, inputs: [{ indexed: false, internalType: "address", name: "account", type: "address" }], name: "Unpaused", type: "event" };
exports.Withdraw = { anonymous: false, inputs: [{ indexed: true, internalType: "address", name: "sender", type: "address" }, { indexed: true, internalType: "address", name: "receiver", type: "address" }, { indexed: true, internalType: "address", name: "owner", type: "address" }, { indexed: false, internalType: "uint256", name: "assets", type: "uint256" }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256" }], name: "Withdraw", type: "event" };
exports.DECIMAL_OFFSET = { inputs: [], name: "DECIMAL_OFFSET", outputs: [{ internalType: "uint8", name: "", type: "uint8" }], stateMutability: "view", type: "function" };
exports._getExtensionFunctions = { inputs: [], name: "_getExtensionFunctions", outputs: [{ internalType: "bytes4[]", name: "", type: "bytes4[]" }], stateMutability: "pure", type: "function" };
exports.acceptOwnership = { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.adapters = { inputs: [{ internalType: "uint256", name: "", type: "uint256" }], name: "adapters", outputs: [{ internalType: "contract CompoundMarketERC4626", name: "adapter", type: "address" }, { internalType: "uint64", name: "allocation", type: "uint64" }], stateMutability: "view", type: "function" };
exports.adaptersCount = { inputs: [], name: "adaptersCount", outputs: [{ internalType: "uint8", name: "", type: "uint8" }], stateMutability: "view", type: "function" };
exports.addRewardToken = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "token_", type: "address" }], name: "addRewardToken", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.allowance = { inputs: [{ internalType: "address", name: "owner", type: "address" }, { internalType: "address", name: "spender", type: "address" }], name: "allowance", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.approve = { inputs: [{ internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }], name: "approve", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function" };
exports.asset = { inputs: [], name: "asset", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.assetsCheckpoint = { inputs: [], name: "assetsCheckpoint", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.balanceOf = { inputs: [{ internalType: "address", name: "account", type: "address" }], name: "balanceOf", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.claimRewards = { inputs: [], name: "claimRewards", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.claimRewardsForUser = { inputs: [{ internalType: "address", name: "user", type: "address" }], name: "claimRewardsForUser", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.convertToAssets = { inputs: [{ internalType: "uint256", name: "shares", type: "uint256" }], name: "convertToAssets", outputs: [{ internalType: "uint256", name: "assets", type: "uint256" }], stateMutability: "view", type: "function" };
exports.convertToShares = { inputs: [{ internalType: "uint256", name: "assets", type: "uint256" }], name: "convertToShares", outputs: [{ internalType: "uint256", name: "shares", type: "uint256" }], stateMutability: "view", type: "function" };
exports.decimals = { inputs: [], name: "decimals", outputs: [{ internalType: "uint8", name: "", type: "uint8" }], stateMutability: "view", type: "function" };
exports.decreaseAllowance = { inputs: [{ internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "subtractedValue", type: "uint256" }], name: "decreaseAllowance", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function" };
exports.deposit = { inputs: [{ internalType: "uint256", name: "assets", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }], name: "deposit", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.depositLimit = { inputs: [], name: "depositLimit", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.emergencyExit = { inputs: [], name: "emergencyExit", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function" };
exports.feeRecipient = { inputs: [], name: "feeRecipient", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.fees = { inputs: [], name: "fees", outputs: [{ internalType: "uint64", name: "deposit", type: "uint64" }, { internalType: "uint64", name: "withdrawal", type: "uint64" }, { internalType: "uint64", name: "management", type: "uint64" }, { internalType: "uint64", name: "performance", type: "uint64" }], stateMutability: "view", type: "function" };
exports.feesUpdatedAt = { inputs: [], name: "feesUpdatedAt", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.flywheelForRewardToken = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "", type: "address" }], name: "flywheelForRewardToken", outputs: [{ internalType: "contract IonicFlywheel", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.flywheelLogic = { inputs: [], name: "flywheelLogic", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.getAllFlywheels = { inputs: [], name: "getAllFlywheels", outputs: [{ internalType: "contract IonicFlywheel[]", name: "allFlywheels", type: "address[]" }], stateMutability: "view", type: "function" };
exports.highWaterMark = { inputs: [], name: "highWaterMark", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.increaseAllowance = { inputs: [{ internalType: "address", name: "spender", type: "address" }, { internalType: "uint256", name: "addedValue", type: "uint256" }], name: "increaseAllowance", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function" };
exports.initialize = { inputs: [{ internalType: "bytes", name: "data", type: "bytes" }], name: "initialize", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.maxDeposit = { inputs: [{ internalType: "address", name: "", type: "address" }], name: "maxDeposit", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.maxMint = { inputs: [{ internalType: "address", name: "", type: "address" }], name: "maxMint", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.maxRedeem = { inputs: [{ internalType: "address", name: "owner", type: "address" }], name: "maxRedeem", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.maxWithdraw = { inputs: [{ internalType: "address", name: "owner", type: "address" }], name: "maxWithdraw", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.mint = { inputs: [{ internalType: "uint256", name: "shares", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }], name: "mint", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.name = { inputs: [], name: "name", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function" };
exports.nonces = { inputs: [{ internalType: "address", name: "", type: "address" }], name: "nonces", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.owner = { inputs: [], name: "owner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.paused = { inputs: [], name: "paused", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function" };
exports.pendingOwner = { inputs: [], name: "pendingOwner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.previewDeposit = { inputs: [{ internalType: "uint256", name: "assets", type: "uint256" }], name: "previewDeposit", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.previewMint = { inputs: [{ internalType: "uint256", name: "shares", type: "uint256" }], name: "previewMint", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.previewRedeem = { inputs: [{ internalType: "uint256", name: "shares", type: "uint256" }], name: "previewRedeem", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.previewWithdraw = { inputs: [{ internalType: "uint256", name: "assets", type: "uint256" }], name: "previewWithdraw", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.proposeAdapters = { inputs: [{ components: [{ internalType: "contract CompoundMarketERC4626", name: "adapter", type: "address" }, { internalType: "uint64", name: "allocation", type: "uint64" }], internalType: "struct AdapterConfig[10]", name: "newAdapters", type: "tuple[10]" }, { internalType: "uint8", name: "newAdaptersCount", type: "uint8" }], name: "proposeAdapters", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.proposedAdapterTime = { inputs: [], name: "proposedAdapterTime", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.proposedAdapters = { inputs: [{ internalType: "uint256", name: "", type: "uint256" }], name: "proposedAdapters", outputs: [{ internalType: "contract CompoundMarketERC4626", name: "adapter", type: "address" }, { internalType: "uint64", name: "allocation", type: "uint64" }], stateMutability: "view", type: "function" };
exports.proposedAdaptersCount = { inputs: [], name: "proposedAdaptersCount", outputs: [{ internalType: "uint8", name: "", type: "uint8" }], stateMutability: "view", type: "function" };
exports.proposedFeeTime = { inputs: [], name: "proposedFeeTime", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.proposedFees = { inputs: [], name: "proposedFees", outputs: [{ internalType: "uint64", name: "deposit", type: "uint64" }, { internalType: "uint64", name: "withdrawal", type: "uint64" }, { internalType: "uint64", name: "management", type: "uint64" }, { internalType: "uint64", name: "performance", type: "uint64" }], stateMutability: "view", type: "function" };
exports.quitPeriod = { inputs: [], name: "quitPeriod", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.redeem = { inputs: [{ internalType: "uint256", name: "shares", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "address", name: "owner", type: "address" }], name: "redeem", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.registry = { inputs: [], name: "registry", outputs: [{ internalType: "contract OptimizedVaultsRegistry", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.renounceOwnership = { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.rewardTokens = { inputs: [{ internalType: "uint256", name: "", type: "uint256" }], name: "rewardTokens", outputs: [{ internalType: "contract IERC20Upgradeable", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.symbol = { inputs: [], name: "symbol", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function" };
exports.totalAssets = { inputs: [], name: "totalAssets", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.totalSupply = { inputs: [], name: "totalSupply", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.transfer = { inputs: [{ internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }], name: "transfer", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function" };
exports.transferFrom = { inputs: [{ internalType: "address", name: "from", type: "address" }, { internalType: "address", name: "to", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }], name: "transferFrom", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "nonpayable", type: "function" };
exports.transferOwnership = { inputs: [{ internalType: "address", name: "newOwner", type: "address" }], name: "transferOwnership", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.withdraw = { inputs: [{ internalType: "uint256", name: "assets", type: "uint256" }, { internalType: "address", name: "receiver", type: "address" }, { internalType: "address", name: "owner", type: "address" }], name: "withdraw", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.withdrawalThreshold = { inputs: [], name: "withdrawalThreshold", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.default = [exports.AssetInvalid, exports.InvalidConfig, exports.InvalidFeeRecipient, exports.InvalidVaultFees, exports.Approval, exports.Deposit, exports.Initialized, exports.NewAdaptersProposed, exports.OwnershipTransferStarted, exports.OwnershipTransferred, exports.Paused, exports.Transfer, exports.Unpaused, exports.Withdraw, exports.DECIMAL_OFFSET, exports._getExtensionFunctions, exports.acceptOwnership, exports.adapters, exports.adaptersCount, exports.addRewardToken, exports.allowance, exports.approve, exports.asset, exports.assetsCheckpoint, exports.balanceOf, exports.claimRewards, exports.claimRewardsForUser, exports.convertToAssets, exports.convertToShares, exports.decimals, exports.decreaseAllowance, exports.deposit, exports.depositLimit, exports.emergencyExit, exports.feeRecipient, exports.fees, exports.feesUpdatedAt, exports.flywheelForRewardToken, exports.flywheelLogic, exports.getAllFlywheels, exports.highWaterMark, exports.increaseAllowance, exports.initialize, exports.maxDeposit, exports.maxMint, exports.maxRedeem, exports.maxWithdraw, exports.mint, exports.name, exports.nonces, exports.owner, exports.paused, exports.pendingOwner, exports.previewDeposit, exports.previewMint, exports.previewRedeem, exports.previewWithdraw, exports.proposeAdapters, exports.proposedAdapterTime, exports.proposedAdapters, exports.proposedAdaptersCount, exports.proposedFeeTime, exports.proposedFees, exports.quitPeriod, exports.redeem, exports.registry, exports.renounceOwnership, exports.rewardTokens, exports.symbol, exports.totalAssets, exports.totalSupply, exports.transfer, exports.transferFrom, exports.transferOwnership, exports.withdraw, exports.withdrawalThreshold];
