"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.withdrawStableLeftovers = exports.stableMarket = exports.stableAsset = exports.receiveFlashLoan = exports.positionOwner = exports.pool = exports.isPositionClosed = exports.getSupplyAmountDelta = exports.getMinLeverageRatio = exports.getMaxLeverageRatio = exports.getEquityAmount = exports.getCurrentLeverageRatio = exports.getAccruedRewards = exports.fundPosition = exports.factory = exports.collateralMarket = exports.collateralAsset = exports.closePosition_ = exports.closePosition_address = exports.claimRewards_address = exports.claimRewards_ = exports.adjustLeverageRatio = exports.SupplyCollateralFailed = exports.RepayFlashLoanFailed = exports.RepayBorrowFailed = exports.RedeemFailed = exports.RedeemCollateralFailed = exports.OnlyWhenClosed = exports.NotPositionOwner = exports.ExtNotFound = exports.ExitFailed = exports.ConvertFundsFailed = exports.BorrowStableFailed = void 0;
/**
 * Autogenerated file. Do not edit manually. */
exports.BorrowStableFailed = { inputs: [{ internalType: "uint256", name: "errorCode", type: "uint256" }], name: "BorrowStableFailed", type: "error" };
exports.ConvertFundsFailed = { inputs: [], name: "ConvertFundsFailed", type: "error" };
exports.ExitFailed = { inputs: [{ internalType: "uint256", name: "errorCode", type: "uint256" }], name: "ExitFailed", type: "error" };
exports.ExtNotFound = { inputs: [{ internalType: "bytes4", name: "_functionSelector", type: "bytes4" }], name: "ExtNotFound", type: "error" };
exports.NotPositionOwner = { inputs: [], name: "NotPositionOwner", type: "error" };
exports.OnlyWhenClosed = { inputs: [], name: "OnlyWhenClosed", type: "error" };
exports.RedeemCollateralFailed = { inputs: [{ internalType: "uint256", name: "errorCode", type: "uint256" }], name: "RedeemCollateralFailed", type: "error" };
exports.RedeemFailed = { inputs: [{ internalType: "uint256", name: "errorCode", type: "uint256" }], name: "RedeemFailed", type: "error" };
exports.RepayBorrowFailed = { inputs: [{ internalType: "uint256", name: "errorCode", type: "uint256" }], name: "RepayBorrowFailed", type: "error" };
exports.RepayFlashLoanFailed = { inputs: [{ internalType: "address", name: "asset", type: "address" }, { internalType: "uint256", name: "currentBalance", type: "uint256" }, { internalType: "uint256", name: "repayAmount", type: "uint256" }], name: "RepayFlashLoanFailed", type: "error" };
exports.SupplyCollateralFailed = { inputs: [{ internalType: "uint256", name: "errorCode", type: "uint256" }], name: "SupplyCollateralFailed", type: "error" };
exports.adjustLeverageRatio = { inputs: [{ internalType: "uint256", name: "targetRatioMantissa", type: "uint256" }], name: "adjustLeverageRatio", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.claimRewards_ = { inputs: [], name: "claimRewards", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.claimRewards_address = { inputs: [{ internalType: "address", name: "withdrawTo", type: "address" }], name: "claimRewards", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.closePosition_address = { inputs: [{ internalType: "address", name: "withdrawTo", type: "address" }], name: "closePosition", outputs: [{ internalType: "uint256", name: "withdrawAmount", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.closePosition_ = { inputs: [], name: "closePosition", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.collateralAsset = { inputs: [], name: "collateralAsset", outputs: [{ internalType: "contract IERC20Upgradeable", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.collateralMarket = { inputs: [], name: "collateralMarket", outputs: [{ internalType: "contract ICErc20", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.factory = { inputs: [], name: "factory", outputs: [{ internalType: "contract ILeveredPositionFactory", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.fundPosition = { inputs: [{ internalType: "contract IERC20Upgradeable", name: "fundingAsset", type: "address" }, { internalType: "uint256", name: "amount", type: "uint256" }], name: "fundPosition", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.getAccruedRewards = { inputs: [], name: "getAccruedRewards", outputs: [{ internalType: "contract ERC20[]", name: "rewardTokens", type: "address[]" }, { internalType: "uint256[]", name: "amounts", type: "uint256[]" }], stateMutability: "nonpayable", type: "function" };
exports.getCurrentLeverageRatio = { inputs: [], name: "getCurrentLeverageRatio", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.getEquityAmount = { inputs: [], name: "getEquityAmount", outputs: [{ internalType: "uint256", name: "equityAmount", type: "uint256" }], stateMutability: "view", type: "function" };
exports.getMaxLeverageRatio = { inputs: [], name: "getMaxLeverageRatio", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.getMinLeverageRatio = { inputs: [], name: "getMinLeverageRatio", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.getSupplyAmountDelta = { inputs: [{ internalType: "uint256", name: "targetRatio", type: "uint256" }], name: "getSupplyAmountDelta", outputs: [{ internalType: "uint256", name: "", type: "uint256" }, { internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function" };
exports.isPositionClosed = { inputs: [], name: "isPositionClosed", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function" };
exports.pool = { inputs: [], name: "pool", outputs: [{ internalType: "contract IonicComptroller", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.positionOwner = { inputs: [], name: "positionOwner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.receiveFlashLoan = { inputs: [{ internalType: "address", name: "assetAddress", type: "address" }, { internalType: "uint256", name: "borrowedAmount", type: "uint256" }, { internalType: "bytes", name: "data", type: "bytes" }], name: "receiveFlashLoan", outputs: [], stateMutability: "nonpayable", type: "function" };
exports.stableAsset = { inputs: [], name: "stableAsset", outputs: [{ internalType: "contract IERC20Upgradeable", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.stableMarket = { inputs: [], name: "stableMarket", outputs: [{ internalType: "contract ICErc20", name: "", type: "address" }], stateMutability: "view", type: "function" };
exports.withdrawStableLeftovers = { inputs: [{ internalType: "address", name: "withdrawTo", type: "address" }], name: "withdrawStableLeftovers", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "nonpayable", type: "function" };
exports.default = [exports.BorrowStableFailed, exports.ConvertFundsFailed, exports.ExitFailed, exports.ExtNotFound, exports.NotPositionOwner, exports.OnlyWhenClosed, exports.RedeemCollateralFailed, exports.RedeemFailed, exports.RepayBorrowFailed, exports.RepayFlashLoanFailed, exports.SupplyCollateralFailed, exports.adjustLeverageRatio, exports.claimRewards_, exports.claimRewards_address, exports.closePosition_address, exports.closePosition_, exports.collateralAsset, exports.collateralMarket, exports.factory, exports.fundPosition, exports.getAccruedRewards, exports.getCurrentLeverageRatio, exports.getEquityAmount, exports.getMaxLeverageRatio, exports.getMinLeverageRatio, exports.getSupplyAmountDelta, exports.isPositionClosed, exports.pool, exports.positionOwner, exports.receiveFlashLoan, exports.stableAsset, exports.stableMarket, exports.withdrawStableLeftovers];
