UNPKG

@iqai/mcp-fraxlend

Version:
1,679 lines 61.8 kB
export const FRAXLEND_ABI = [ { inputs: [ { internalType: "bytes", name: "_configData", type: "bytes" }, { internalType: "bytes", name: "_immutables", type: "bytes" }, { internalType: "bytes", name: "_customConfigData", type: "bytes" }, ], stateMutability: "nonpayable", type: "constructor", }, { inputs: [], name: "AccessControlRevoked", type: "error" }, { inputs: [], name: "BadProtocolFee", type: "error" }, { inputs: [], name: "BadSwapper", type: "error" }, { inputs: [], name: "BorrowerSolvent", type: "error" }, { inputs: [], name: "ExceedsBorrowLimit", type: "error" }, { inputs: [], name: "ExceedsDepositLimit", type: "error" }, { inputs: [], name: "ExceedsMaxOracleDeviation", type: "error" }, { inputs: [ { internalType: "uint256", name: "_borrow", type: "uint256" }, { internalType: "uint256", name: "_collateral", type: "uint256" }, { internalType: "uint256", name: "_exchangeRate", type: "uint256" }, ], name: "Insolvent", type: "error", }, { inputs: [ { internalType: "uint256", name: "_assets", type: "uint256" }, { internalType: "uint256", name: "_request", type: "uint256" }, ], name: "InsufficientAssetsInContract", type: "error", }, { inputs: [], name: "InterestPaused", type: "error" }, { inputs: [ { internalType: "address", name: "_expected", type: "address" }, { internalType: "address", name: "_actual", type: "address" }, ], name: "InvalidPath", type: "error", }, { inputs: [], name: "InvalidReceiver", type: "error" }, { inputs: [], name: "LiquidatePaused", type: "error" }, { inputs: [], name: "OnlyPendingTimelock", type: "error" }, { inputs: [], name: "OnlyProtocolOrOwner", type: "error" }, { inputs: [], name: "OnlyTimelock", type: "error" }, { inputs: [], name: "OnlyTimelockOrOwner", type: "error" }, { inputs: [ { internalType: "uint256", name: "_blockTimestamp", type: "uint256" }, { internalType: "uint256", name: "_deadline", type: "uint256" }, ], name: "PastDeadline", type: "error", }, { inputs: [], name: "RepayPaused", type: "error" }, { inputs: [], name: "SetterRevoked", type: "error" }, { inputs: [ { internalType: "uint256", name: "_minOut", type: "uint256" }, { internalType: "uint256", name: "_actual", type: "uint256" }, ], name: "SlippageTooHigh", type: "error", }, { inputs: [], name: "WithdrawPaused", type: "error" }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "sender", type: "address", }, { indexed: true, internalType: "address", name: "borrower", type: "address", }, { indexed: false, internalType: "uint256", name: "collateralAmount", type: "uint256", }, ], name: "AddCollateral", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "interestEarned", type: "uint256", }, { indexed: false, internalType: "uint256", name: "rate", type: "uint256", }, { indexed: false, internalType: "uint256", name: "feesAmount", type: "uint256", }, { indexed: false, internalType: "uint256", name: "feesShare", type: "uint256", }, ], name: "AddInterest", type: "event", }, { 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", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "_borrower", type: "address", }, { indexed: true, internalType: "address", name: "_receiver", type: "address", }, { indexed: false, internalType: "uint256", name: "_borrowAmount", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_sharesAdded", type: "uint256", }, ], name: "BorrowAsset", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint32", name: "newFee", type: "uint32", }, ], name: "ChangeFee", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "caller", 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", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "_borrower", type: "address", }, { indexed: false, internalType: "address", name: "_swapperAddress", type: "address", }, { indexed: false, internalType: "uint256", name: "_borrowAmount", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_borrowShares", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_initialCollateralAmount", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_amountCollateralOut", type: "uint256", }, ], name: "LeveragedPosition", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "_borrower", type: "address", }, { indexed: false, internalType: "uint256", name: "_collateralForLiquidator", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_sharesToLiquidate", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_amountLiquidatorToRepay", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_feesAmount", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_sharesToAdjust", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_amountToAdjust", type: "uint256", }, ], name: "Liquidate", 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: "bool", name: "isPaused", type: "bool" }, ], name: "PauseInterest", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "bool", name: "isPaused", type: "bool" }, ], name: "PauseLiquidate", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "bool", name: "isPaused", type: "bool" }, ], name: "PauseRepay", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "bool", name: "isPaused", type: "bool" }, ], name: "PauseWithdraw", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "_sender", type: "address", }, { indexed: false, internalType: "uint256", name: "_collateralAmount", type: "uint256", }, { indexed: true, internalType: "address", name: "_receiver", type: "address", }, { indexed: true, internalType: "address", name: "_borrower", type: "address", }, ], name: "RemoveCollateral", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "payer", type: "address", }, { indexed: true, internalType: "address", name: "borrower", type: "address", }, { indexed: false, internalType: "uint256", name: "amountToRepay", type: "uint256", }, { indexed: false, internalType: "uint256", name: "shares", type: "uint256", }, ], name: "RepayAsset", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "_borrower", type: "address", }, { indexed: false, internalType: "address", name: "_swapperAddress", type: "address", }, { indexed: false, internalType: "uint256", name: "_collateralToSwap", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_amountAssetOut", type: "uint256", }, { indexed: false, internalType: "uint256", name: "_sharesRepaid", type: "uint256", }, ], name: "RepayAssetWithCollateral", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "borrowLimit", type: "uint256", }, ], name: "RevokeBorrowAccessControl", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "depositLimit", type: "uint256", }, ], name: "RevokeDepositAccessControl", type: "event", }, { anonymous: false, inputs: [], name: "RevokeInterestAccessControl", type: "event", }, { anonymous: false, inputs: [], name: "RevokeLiquidateAccessControl", type: "event", }, { anonymous: false, inputs: [], name: "RevokeLiquidationFeeSetter", type: "event", }, { anonymous: false, inputs: [], name: "RevokeMaxLTVSetter", type: "event" }, { anonymous: false, inputs: [], name: "RevokeOracleInfoSetter", type: "event", }, { anonymous: false, inputs: [], name: "RevokeRateContractSetter", type: "event", }, { anonymous: false, inputs: [], name: "RevokeRepayAccessControl", type: "event", }, { anonymous: false, inputs: [], name: "RevokeWithdrawAccessControl", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "limit", type: "uint256", }, ], name: "SetBorrowLimit", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "oldCircuitBreaker", type: "address", }, { indexed: false, internalType: "address", name: "newCircuitBreaker", type: "address", }, ], name: "SetCircuitBreaker", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "limit", type: "uint256", }, ], name: "SetDepositLimit", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldCleanLiquidationFee", type: "uint256", }, { indexed: false, internalType: "uint256", name: "oldDirtyLiquidationFee", type: "uint256", }, { indexed: false, internalType: "uint256", name: "oldProtocolLiquidationFee", type: "uint256", }, { indexed: false, internalType: "uint256", name: "newCleanLiquidationFee", type: "uint256", }, { indexed: false, internalType: "uint256", name: "newDirtyLiquidationFee", type: "uint256", }, { indexed: false, internalType: "uint256", name: "newProtocolLiquidationFee", type: "uint256", }, ], name: "SetLiquidationFees", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldMaxLTV", type: "uint256", }, { indexed: false, internalType: "uint256", name: "newMaxLTV", type: "uint256", }, ], name: "SetMaxLTV", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "oldOracle", type: "address", }, { indexed: false, internalType: "uint32", name: "oldMaxOracleDeviation", type: "uint32", }, { indexed: false, internalType: "address", name: "newOracle", type: "address", }, { indexed: false, internalType: "uint32", name: "newMaxOracleDeviation", type: "uint32", }, ], name: "SetOracleInfo", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "oldRateContract", type: "address", }, { indexed: false, internalType: "address", name: "newRateContract", type: "address", }, ], name: "SetRateContract", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "swapper", type: "address", }, { indexed: false, internalType: "bool", name: "approval", type: "bool" }, ], name: "SetSwapper", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousTimelock", type: "address", }, { indexed: true, internalType: "address", name: "newTimelock", type: "address", }, ], name: "TimelockTransferStarted", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "previousTimelock", type: "address", }, { indexed: true, internalType: "address", name: "newTimelock", type: "address", }, ], name: "TimelockTransferred", type: "event", }, { 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", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "lowExchangeRate", type: "uint256", }, { indexed: false, internalType: "uint256", name: "highExchangeRate", type: "uint256", }, ], name: "UpdateExchangeRate", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint256", name: "oldRatePerSec", type: "uint256", }, { indexed: false, internalType: "uint256", name: "oldFullUtilizationRate", type: "uint256", }, { indexed: false, internalType: "uint256", name: "newRatePerSec", type: "uint256", }, { indexed: false, internalType: "uint256", name: "newFullUtilizationRate", type: "uint256", }, ], name: "UpdateRate", type: "event", }, { anonymous: false, inputs: [ { indexed: false, internalType: "address", name: "oracle", type: "address", }, ], name: "WarnOracleData", type: "event", }, { anonymous: false, inputs: [ { indexed: true, internalType: "address", name: "caller", 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", }, { anonymous: false, inputs: [ { indexed: false, internalType: "uint128", name: "shares", type: "uint128", }, { indexed: false, internalType: "address", name: "recipient", type: "address", }, { indexed: false, internalType: "uint256", name: "amountToTransfer", type: "uint256", }, { indexed: false, internalType: "uint256", name: "collateralAmount", type: "uint256", }, ], name: "WithdrawFees", type: "event", }, { inputs: [], name: "DEPLOYER_ADDRESS", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "DEVIATION_PRECISION", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "EXCHANGE_PRECISION", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "FEE_PRECISION", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "LIQ_PRECISION", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "LTV_PRECISION", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "MAX_PROTOCOL_FEE", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "RATE_PRECISION", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "UTIL_PREC", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "acceptOwnership", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "acceptTransferTimelock", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint256", name: "_collateralAmount", type: "uint256" }, { internalType: "address", name: "_borrower", type: "address" }, ], name: "addCollateral", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "bool", name: "_returnAccounting", type: "bool" }], name: "addInterest", outputs: [ { internalType: "uint256", name: "_interestEarned", type: "uint256" }, { internalType: "uint256", name: "_feesAmount", type: "uint256" }, { internalType: "uint256", name: "_feesShare", type: "uint256" }, { components: [ { internalType: "uint32", name: "lastBlock", type: "uint32" }, { internalType: "uint32", name: "feeToProtocolRate", type: "uint32" }, { internalType: "uint64", name: "lastTimestamp", type: "uint64" }, { internalType: "uint64", name: "ratePerSec", type: "uint64" }, { internalType: "uint64", name: "fullUtilizationRate", type: "uint64", }, ], internalType: "struct FraxlendPairCore.CurrentRateInfo", name: "_currentRateInfo", type: "tuple", }, { components: [ { internalType: "uint128", name: "amount", type: "uint128" }, { internalType: "uint128", name: "shares", type: "uint128" }, ], internalType: "struct VaultAccount", name: "_totalAsset", type: "tuple", }, { components: [ { internalType: "uint128", name: "amount", type: "uint128" }, { internalType: "uint128", name: "shares", type: "uint128" }, ], internalType: "struct VaultAccount", name: "_totalBorrow", type: "tuple", }, ], stateMutability: "nonpayable", type: "function", }, { 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", }, { 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", }, { inputs: [], name: "asset", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "address", name: "account", type: "address" }], name: "balanceOf", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "uint256", name: "_borrowAmount", type: "uint256" }, { internalType: "uint256", name: "_collateralAmount", type: "uint256" }, { internalType: "address", name: "_receiver", type: "address" }, ], name: "borrowAsset", outputs: [{ internalType: "uint256", name: "_shares", type: "uint256" }], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "borrowLimit", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint32", name: "_newFee", type: "uint32" }], name: "changeFee", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "circuitBreakerAddress", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "cleanLiquidationFee", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "collateralContract", outputs: [{ internalType: "contract IERC20", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "_shares", type: "uint256" }], name: "convertToAssets", outputs: [{ internalType: "uint256", name: "_assets", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "_assets", type: "uint256" }], name: "convertToShares", outputs: [{ internalType: "uint256", name: "_shares", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "currentRateInfo", outputs: [ { internalType: "uint32", name: "lastBlock", type: "uint32" }, { internalType: "uint32", name: "feeToProtocolRate", type: "uint32" }, { internalType: "uint64", name: "lastTimestamp", type: "uint64" }, { internalType: "uint64", name: "ratePerSec", type: "uint64" }, { internalType: "uint64", name: "fullUtilizationRate", type: "uint64" }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "decimals", outputs: [{ internalType: "uint8", name: "", type: "uint8" }], stateMutability: "view", type: "function", }, { 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", }, { inputs: [ { internalType: "uint256", name: "_amount", type: "uint256" }, { internalType: "address", name: "_receiver", type: "address" }, ], name: "deposit", outputs: [ { internalType: "uint256", name: "_sharesReceived", type: "uint256" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "depositLimit", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "dirtyLiquidationFee", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "exchangeRateInfo", outputs: [ { internalType: "address", name: "oracle", type: "address" }, { internalType: "uint32", name: "maxOracleDeviation", type: "uint32" }, { internalType: "uint184", name: "lastTimestamp", type: "uint184" }, { internalType: "uint256", name: "lowExchangeRate", type: "uint256" }, { internalType: "uint256", name: "highExchangeRate", type: "uint256" }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "getConstants", outputs: [ { internalType: "uint256", name: "_LTV_PRECISION", type: "uint256" }, { internalType: "uint256", name: "_LIQ_PRECISION", type: "uint256" }, { internalType: "uint256", name: "_UTIL_PREC", type: "uint256" }, { internalType: "uint256", name: "_FEE_PRECISION", type: "uint256" }, { internalType: "uint256", name: "_EXCHANGE_PRECISION", type: "uint256" }, { internalType: "uint256", name: "_DEVIATION_PRECISION", type: "uint256", }, { internalType: "uint256", name: "_RATE_PRECISION", type: "uint256" }, { internalType: "uint256", name: "_MAX_PROTOCOL_FEE", type: "uint256" }, ], stateMutability: "pure", type: "function", }, { inputs: [], name: "getPairAccounting", outputs: [ { internalType: "uint128", name: "_totalAssetAmount", type: "uint128" }, { internalType: "uint128", name: "_totalAssetShares", type: "uint128" }, { internalType: "uint128", name: "_totalBorrowAmount", type: "uint128" }, { internalType: "uint128", name: "_totalBorrowShares", type: "uint128" }, { internalType: "uint256", name: "_totalCollateral", type: "uint256" }, ], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "address", name: "_address", type: "address" }], name: "getUserSnapshot", outputs: [ { internalType: "uint256", name: "_userAssetShares", type: "uint256" }, { internalType: "uint256", name: "_userBorrowShares", type: "uint256" }, { internalType: "uint256", name: "_userCollateralBalance", type: "uint256", }, ], stateMutability: "view", type: "function", }, { 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", }, { inputs: [], name: "isBorrowAccessControlRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isDepositAccessControlRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isInterestAccessControlRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isInterestPaused", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isLiquidateAccessControlRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isLiquidatePaused", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isLiquidationFeeSetterRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isMaxLTVSetterRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isOracleSetterRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isRateContractSetterRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isRepayAccessControlRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isRepayPaused", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isWithdrawAccessControlRevoked", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [], name: "isWithdrawPaused", outputs: [{ internalType: "bool", name: "", type: "bool" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "address", name: "_swapperAddress", type: "address" }, { internalType: "uint256", name: "_borrowAmount", type: "uint256" }, { internalType: "uint256", name: "_initialCollateralAmount", type: "uint256", }, { internalType: "uint256", name: "_amountCollateralOutMin", type: "uint256", }, { internalType: "address[]", name: "_path", type: "address[]" }, ], name: "leveragedPosition", outputs: [ { internalType: "uint256", name: "_totalCollateralBalance", type: "uint256", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint128", name: "_sharesToLiquidate", type: "uint128" }, { internalType: "uint256", name: "_deadline", type: "uint256" }, { internalType: "address", name: "_borrower", type: "address" }, ], name: "liquidate", outputs: [ { internalType: "uint256", name: "_collateralForLiquidator", type: "uint256", }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "address", name: "_receiver", type: "address" }], name: "maxDeposit", outputs: [{ internalType: "uint256", name: "_maxAssets", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "maxLTV", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "address", name: "_receiver", type: "address" }], name: "maxMint", outputs: [{ internalType: "uint256", name: "_maxShares", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "address", name: "_owner", type: "address" }], name: "maxRedeem", outputs: [{ internalType: "uint256", name: "_maxShares", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "address", name: "_owner", type: "address" }], name: "maxWithdraw", outputs: [{ internalType: "uint256", name: "_maxAssets", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [ { internalType: "uint256", name: "_shares", type: "uint256" }, { internalType: "address", name: "_receiver", type: "address" }, ], name: "mint", outputs: [{ internalType: "uint256", name: "_amount", type: "uint256" }], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "name", outputs: [{ internalType: "string", name: "", type: "string" }], stateMutability: "view", type: "function", }, { inputs: [], name: "owner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "pause", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "pauseBorrow", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "pauseDeposit", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "bool", name: "_isPaused", type: "bool" }], name: "pauseInterest", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "bool", name: "_isPaused", type: "bool" }], name: "pauseLiquidate", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "bool", name: "_isPaused", type: "bool" }], name: "pauseRepay", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [{ internalType: "bool", name: "_isPaused", type: "bool" }], name: "pauseWithdraw", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "pendingOwner", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "pendingTimelockAddress", outputs: [{ internalType: "address", name: "", type: "address" }], stateMutability: "view", type: "function", }, { inputs: [], name: "previewAddInterest", outputs: [ { internalType: "uint256", name: "_interestEarned", type: "uint256" }, { internalType: "uint256", name: "_feesAmount", type: "uint256" }, { internalType: "uint256", name: "_feesShare", type: "uint256" }, { components: [ { internalType: "uint32", name: "lastBlock", type: "uint32" }, { internalType: "uint32", name: "feeToProtocolRate", type: "uint32" }, { internalType: "uint64", name: "lastTimestamp", type: "uint64" }, { internalType: "uint64", name: "ratePerSec", type: "uint64" }, { internalType: "uint64", name: "fullUtilizationRate", type: "uint64", }, ], internalType: "struct FraxlendPairCore.CurrentRateInfo", name: "_newCurrentRateInfo", type: "tuple", }, { components: [ { internalType: "uint128", name: "amount", type: "uint128" }, { internalType: "uint128", name: "shares", type: "uint128" }, ], internalType: "struct VaultAccount", name: "_totalAsset", type: "tuple", }, { components: [ { internalType: "uint128", name: "amount", type: "uint128" }, { internalType: "uint128", name: "shares", type: "uint128" }, ], internalType: "struct VaultAccount", name: "_totalBorrow", type: "tuple", }, ], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "_assets", type: "uint256" }], name: "previewDeposit", outputs: [ { internalType: "uint256", name: "_sharesReceived", type: "uint256" }, ], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "_shares", type: "uint256" }], name: "previewMint", outputs: [{ internalType: "uint256", name: "_amount", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "_shares", type: "uint256" }], name: "previewRedeem", outputs: [{ internalType: "uint256", name: "_assets", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [{ internalType: "uint256", name: "_amount", type: "uint256" }], name: "previewWithdraw", outputs: [ { internalType: "uint256", name: "_sharesToBurn", type: "uint256" }, ], stateMutability: "view", type: "function", }, { inputs: [], name: "pricePerShare", outputs: [{ internalType: "uint256", name: "_amount", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "protocolLiquidationFee", outputs: [{ internalType: "uint256", name: "", type: "uint256" }], stateMutability: "view", type: "function", }, { inputs: [], name: "rateContract", outputs: [ { internalType: "contract IRateCalculatorV2", name: "", type: "address" }, ], stateMutability: "view", type: "function", }, { 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: "_amountToReturn", type: "uint256" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint256", name: "_collateralAmount", type: "uint256" }, { internalType: "address", name: "_receiver", type: "address" }, ], name: "removeCollateral", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "renounceOwnership", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [], name: "renounceTimelock", outputs: [], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "uint256", name: "_shares", type: "uint256" }, { internalType: "address", name: "_borrower", type: "address" }, ], name: "repayAsset", outputs: [ { internalType: "uint256", name: "_amountToRepay", type: "uint256" }, ], stateMutability: "nonpayable", type: "function", }, { inputs: [ { internalType: "address", name: "_swapperAddress", type: "address" }, { internalType: "uint256", name: "_collateralToSwap", type: "