@defisaver/positions-sdk 2.1.147-spark-ltv0-fallback-dev → 2.1.148-comp-dev

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.
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  /* eslint-disable */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.LiquityView = exports.crvUSDFactory = exports.crvUSDView = exports.crvUSDsfrxETHAmm = exports.crvUSDtBTCAmm = exports.crvUSDWBTCAmm = exports.crvUSDETHAmm = exports.crvUSDwstETHAmm = exports.crvUSDsfrxETHController = exports.crvUSDtBTCController = exports.crvUSDWBTCController = exports.crvUSDETHController = exports.crvUSDwstETHController = exports.SparkProtocolDataProvider = exports.SparkPoolAddressesProvider = exports.SparkLendingPool = exports.SparkIncentiveDataProvider = exports.SparkView = exports.Pot = exports.IAToken = exports.IVariableDebtToken = exports.Comptroller = exports.CompoundLoanInfo = exports.AaveLendingPoolV2 = exports.AaveProtocolDataProvider = exports.LendingPoolAddressesProvider = exports.AaveLoanInfoV2 = exports.wstETH = exports.CompV3BulkerL2 = exports.CompV3BulkerMainnetETH = exports.CompV3BulkerMainnetUSDC = exports.CompV3View = exports.cWstETHv3 = exports.cUSDSv3 = exports.cUSDTv3 = exports.cETHv3 = exports.cUSDbCv3 = exports.cUSDCev3 = exports.cUSDCv3 = exports.AaveUiIncentiveDataProviderV3 = exports.AaveV3EtherfiProtocolDataProvider = exports.AaveV3LidoProtocolDataProvider = exports.AaveV3ProtocolDataProvider = exports.AaveV3EtherfiLendingPool = exports.AaveV3LidoLendingPool = exports.AaveV3LendingPool = exports.AaveV3EtherfiPoolAddressesProvider = exports.AaveV3LidoPoolAddressesProvider = exports.AaveV3PoolAddressesProvider = exports.AaveV3View = void 0;
5
- exports.AaveV4View = exports.YearnV3Vault = exports.SkySavings = exports.SparkSavingsVault = exports.MakerDsr = exports.YearnView = exports.YearnVault = exports.MorphoVault = exports.StkAAVE = exports.LiquityV2sBoldVault = exports.LiquityV2ActivePool = exports.AaveRewardsController = exports.SparkRewardsController = exports.SparkAirdrop = exports.UUPS = exports.LiquityStabilityPool = exports.LiquityLQTYStaking = exports.AaveUmbrellaView = exports.Erc4626 = exports.Erc20 = exports.AaveIncentivesController = exports.McdCdpManager = exports.McdGetCdps = exports.FluidView = exports.LiquityV2StabilityPool = exports.LiquityV2TroveNFT = exports.LiquityV2CollSurplusPool = exports.LiquityV2View = exports.LiquityV2LegacyView = exports.LlamaLendControllerAbi = exports.LlamaLendView = exports.DFSFeedRegistry = exports.FeedRegistry = exports.MidnightView = exports.MorphoBlueView = exports.WeETHPriceFeed = exports.WstETHPriceFeed = exports.USDCPriceFeed = exports.BTCPriceFeed = exports.ETHPriceFeed = exports.COMPPriceFeed = exports.McdDog = exports.McdJug = exports.McdVat = exports.McdSpotter = exports.McdView = exports.LiquityActivePool = exports.PriceFeed = exports.TroveManager = exports.CollSurplusPool = void 0;
6
- exports.UniswapTokenDistributor = void 0;
4
+ exports.crvUSDFactory = exports.crvUSDView = exports.crvUSDsfrxETHAmm = exports.crvUSDtBTCAmm = exports.crvUSDWBTCAmm = exports.crvUSDETHAmm = exports.crvUSDwstETHAmm = exports.crvUSDsfrxETHController = exports.crvUSDtBTCController = exports.crvUSDWBTCController = exports.crvUSDETHController = exports.crvUSDwstETHController = exports.SparkProtocolDataProvider = exports.SparkPoolAddressesProvider = exports.SparkLendingPool = exports.SparkIncentiveDataProvider = exports.SparkView = exports.Pot = exports.IAToken = exports.IVariableDebtToken = exports.Comptroller = exports.CompoundLoanInfo = exports.AaveLendingPoolV2 = exports.AaveProtocolDataProvider = exports.LendingPoolAddressesProvider = exports.AaveLoanInfoV2 = exports.wstETH = exports.CompV3BulkerL2 = exports.CompV3BulkerMainnetETH = exports.CompV3BulkerMainnetUSDC = exports.CompV3View = exports.ciUSDCv3 = exports.cWstETHv3 = exports.cUSDSv3 = exports.cUSDTv3 = exports.cETHv3 = exports.cUSDbCv3 = exports.cUSDCev3 = exports.cUSDCv3 = exports.AaveUiIncentiveDataProviderV3 = exports.AaveV3EtherfiProtocolDataProvider = exports.AaveV3LidoProtocolDataProvider = exports.AaveV3ProtocolDataProvider = exports.AaveV3EtherfiLendingPool = exports.AaveV3LidoLendingPool = exports.AaveV3LendingPool = exports.AaveV3EtherfiPoolAddressesProvider = exports.AaveV3LidoPoolAddressesProvider = exports.AaveV3PoolAddressesProvider = exports.AaveV3View = void 0;
5
+ exports.YearnV3Vault = exports.SkySavings = exports.SparkSavingsVault = exports.MakerDsr = exports.YearnView = exports.YearnVault = exports.MorphoVault = exports.StkAAVE = exports.LiquityV2sBoldVault = exports.LiquityV2ActivePool = exports.AaveRewardsController = exports.SparkRewardsController = exports.SparkAirdrop = exports.UUPS = exports.LiquityStabilityPool = exports.LiquityLQTYStaking = exports.AaveUmbrellaView = exports.Erc4626 = exports.Erc20 = exports.AaveIncentivesController = exports.McdCdpManager = exports.McdGetCdps = exports.FluidView = exports.LiquityV2StabilityPool = exports.LiquityV2TroveNFT = exports.LiquityV2CollSurplusPool = exports.LiquityV2View = exports.LiquityV2LegacyView = exports.LlamaLendControllerAbi = exports.LlamaLendView = exports.DFSFeedRegistry = exports.FeedRegistry = exports.MidnightView = exports.MorphoBlueView = exports.WeETHPriceFeed = exports.WstETHPriceFeed = exports.USDCPriceFeed = exports.BTCPriceFeed = exports.ETHPriceFeed = exports.COMPPriceFeed = exports.McdDog = exports.McdJug = exports.McdVat = exports.McdSpotter = exports.McdView = exports.LiquityActivePool = exports.PriceFeed = exports.TroveManager = exports.CollSurplusPool = exports.LiquityView = void 0;
6
+ exports.UniswapTokenDistributor = exports.AaveV4View = void 0;
7
7
  exports.AaveV3View = {
8
8
  "abi": [{ "inputs": [], "name": "AAVE_REFERRAL_CODE", "outputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_umbrella", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getAdditionalUmbrellaStakingData", "outputs": [{ "components": [{ "internalType": "address", "name": "stkToken", "type": "address" }, { "internalType": "uint256", "name": "totalShares", "type": "uint256" }, { "internalType": "address", "name": "stkUnderlyingToken", "type": "address" }, { "internalType": "address", "name": "aToken", "type": "address" }, { "internalType": "uint256", "name": "cooldownPeriod", "type": "uint256" }, { "internalType": "uint256", "name": "unstakeWindow", "type": "uint256" }, { "internalType": "uint256", "name": "stkTokenToWaTokenRate", "type": "uint256" }, { "internalType": "uint256", "name": "waTokenToATokenRate", "type": "uint256" }, { "internalType": "uint256[]", "name": "rewardsEmissionRates", "type": "uint256[]" }, { "internalType": "uint256", "name": "userCooldownAmount", "type": "uint256" }, { "internalType": "uint256", "name": "userEndOfCooldown", "type": "uint256" }, { "internalType": "uint256", "name": "userWithdrawalWindow", "type": "uint256" }], "internalType": "struct AaveV3View.UmbrellaStkData[]", "name": "retVal", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }], "name": "getAllEmodes", "outputs": [{ "components": [{ "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "uint128", "name": "collateralBitmap", "type": "uint128" }, { "internalType": "bool", "name": "isolated", "type": "bool" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "uint128", "name": "borrowableBitmap", "type": "uint128" }, { "internalType": "uint128", "name": "ltvzeroBitmap", "type": "uint128" }], "internalType": "struct DataTypes.EModeCategoryNew[]", "name": "emodesData", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "components": [{ "internalType": "address", "name": "reserveAddress", "type": "address" }, { "internalType": "uint256", "name": "liquidityAdded", "type": "uint256" }, { "internalType": "uint256", "name": "liquidityTaken", "type": "uint256" }, { "internalType": "bool", "name": "isDebtAsset", "type": "bool" }], "internalType": "struct AaveV3View.LiquidityChangeParams[]", "name": "_reserveParams", "type": "tuple[]" }], "name": "getApyAfterValuesEstimation", "outputs": [{ "components": [{ "internalType": "address", "name": "reserveAddress", "type": "address" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "variableBorrowRate", "type": "uint256" }], "internalType": "struct AaveV3View.EstimatedRates[]", "name": "", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_tokenAddr", "type": "address" }], "name": "getAssetPrice", "outputs": [{ "internalType": "uint256", "name": "price", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokens", "type": "address[]" }], "name": "getCollFactors", "outputs": [{ "internalType": "uint256[]", "name": "collFactors", "type": "uint256[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "emodeCategory", "type": "uint256" }, { "internalType": "contract IPoolV3", "name": "lendingPool", "type": "address" }], "name": "getEModeCollateralFactor", "outputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_asset", "type": "address" }, { "internalType": "address", "name": "_eoa", "type": "address" }, { "internalType": "address", "name": "_proxy", "type": "address" }, { "internalType": "address", "name": "_market", "type": "address" }], "name": "getEOAApprovalsAndBalances", "outputs": [{ "components": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "aToken", "type": "address" }, { "internalType": "address", "name": "variableDebtToken", "type": "address" }, { "internalType": "uint256", "name": "assetApproval", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenApproval", "type": "uint256" }, { "internalType": "uint256", "name": "variableDebtDelegation", "type": "uint256" }, { "internalType": "uint256", "name": "borrowedVariableAmount", "type": "uint256" }, { "internalType": "uint256", "name": "eoaBalance", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenBalance", "type": "uint256" }], "internalType": "struct AaveV3View.EOAApprovalData", "name": "approvalData", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_eoa", "type": "address" }, { "internalType": "address", "name": "_proxy", "type": "address" }, { "internalType": "address", "name": "_market", "type": "address" }], "name": "getEOAApprovalsAndBalancesForAllTokens", "outputs": [{ "components": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "aToken", "type": "address" }, { "internalType": "address", "name": "variableDebtToken", "type": "address" }, { "internalType": "uint256", "name": "assetApproval", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenApproval", "type": "uint256" }, { "internalType": "uint256", "name": "variableDebtDelegation", "type": "uint256" }, { "internalType": "uint256", "name": "borrowedVariableAmount", "type": "uint256" }, { "internalType": "uint256", "name": "eoaBalance", "type": "uint256" }, { "internalType": "uint256", "name": "aTokenBalance", "type": "uint256" }], "internalType": "struct AaveV3View.EOAApprovalData[]", "name": "approvalData", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "contract IPoolV3", "name": "_lendingPool", "type": "address" }, { "internalType": "uint8", "name": "_id", "type": "uint8" }], "name": "getEmodeData", "outputs": [{ "components": [{ "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "uint128", "name": "collateralBitmap", "type": "uint128" }, { "internalType": "bool", "name": "isolated", "type": "bool" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "uint128", "name": "borrowableBitmap", "type": "uint128" }, { "internalType": "uint128", "name": "ltvzeroBitmap", "type": "uint128" }], "internalType": "struct DataTypes.EModeCategoryNew", "name": "emodeData", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokenAddresses", "type": "address[]" }], "name": "getFullTokensInfo", "outputs": [{ "components": [{ "internalType": "address", "name": "aTokenAddress", "type": "address" }, { "internalType": "address", "name": "underlyingTokenAddress", "type": "address" }, { "internalType": "uint16", "name": "assetId", "type": "uint16" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateVariable", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateStable", "type": "uint256" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "uint256", "name": "availableLiquidity", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrow", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowVar", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowStab", "type": "uint256" }, { "internalType": "uint256", "name": "collateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationRatio", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "supplyCap", "type": "uint256" }, { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, { "internalType": "uint256", "name": "emodeCategory", "type": "uint256" }, { "internalType": "uint256", "name": "debtCeilingForIsolationMode", "type": "uint256" }, { "internalType": "uint256", "name": "isolationModeTotalDebt", "type": "uint256" }, { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, { "internalType": "bool", "name": "isolationModeBorrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "isSiloedForBorrowing", "type": "bool" }, { "internalType": "uint256", "name": "eModeCollateralFactor", "type": "uint256" }, { "internalType": "bool", "name": "isFlashLoanEnabled", "type": "bool" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "bool", "name": "isActive", "type": "bool" }, { "internalType": "bool", "name": "isPaused", "type": "bool" }, { "internalType": "bool", "name": "isFrozen", "type": "bool" }, { "internalType": "address", "name": "debtTokenAddress", "type": "address" }], "internalType": "struct AaveV3View.TokenInfoFull[]", "name": "tokens", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getHealthFactor", "outputs": [{ "internalType": "uint256", "name": "healthFactor", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getLoanData", "outputs": [{ "components": [{ "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint256", "name": "eMode", "type": "uint256" }, { "internalType": "address[]", "name": "collAddr", "type": "address[]" }, { "internalType": "bool[]", "name": "enabledAsColl", "type": "bool[]" }, { "internalType": "address[]", "name": "borrowAddr", "type": "address[]" }, { "internalType": "uint256[]", "name": "collAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowStableAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowVariableAmounts", "type": "uint256[]" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }], "internalType": "struct AaveV3View.LoanData", "name": "data", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_users", "type": "address[]" }], "name": "getLoanDataArr", "outputs": [{ "components": [{ "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint128", "name": "ratio", "type": "uint128" }, { "internalType": "uint256", "name": "eMode", "type": "uint256" }, { "internalType": "address[]", "name": "collAddr", "type": "address[]" }, { "internalType": "bool[]", "name": "enabledAsColl", "type": "bool[]" }, { "internalType": "address[]", "name": "borrowAddr", "type": "address[]" }, { "internalType": "uint256[]", "name": "collAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowStableAmounts", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "borrowVariableAmounts", "type": "uint256[]" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }], "internalType": "struct AaveV3View.LoanData[]", "name": "loans", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokens", "type": "address[]" }], "name": "getPrices", "outputs": [{ "internalType": "uint256[]", "name": "prices", "type": "uint256[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getRatio", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_users", "type": "address[]" }], "name": "getRatios", "outputs": [{ "internalType": "uint256[]", "name": "ratios", "type": "uint256[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getSafetyRatio", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }, { "internalType": "address[]", "name": "_tokens", "type": "address[]" }], "name": "getTokenBalances", "outputs": [{ "components": [{ "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "borrowsStable", "type": "uint256" }, { "internalType": "uint256", "name": "borrowsVariable", "type": "uint256" }, { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, { "internalType": "bool", "name": "enabledAsCollateral", "type": "bool" }], "internalType": "struct AaveV3View.UserToken[]", "name": "userTokens", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_tokenAddr", "type": "address" }], "name": "getTokenInfoFull", "outputs": [{ "components": [{ "internalType": "address", "name": "aTokenAddress", "type": "address" }, { "internalType": "address", "name": "underlyingTokenAddress", "type": "address" }, { "internalType": "uint16", "name": "assetId", "type": "uint16" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateVariable", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRateStable", "type": "uint256" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "uint256", "name": "availableLiquidity", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrow", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowVar", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrowStab", "type": "uint256" }, { "internalType": "uint256", "name": "collateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationRatio", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "supplyCap", "type": "uint256" }, { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, { "internalType": "uint256", "name": "emodeCategory", "type": "uint256" }, { "internalType": "uint256", "name": "debtCeilingForIsolationMode", "type": "uint256" }, { "internalType": "uint256", "name": "isolationModeTotalDebt", "type": "uint256" }, { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, { "internalType": "bool", "name": "isolationModeBorrowingEnabled", "type": "bool" }, { "internalType": "bool", "name": "isSiloedForBorrowing", "type": "bool" }, { "internalType": "uint256", "name": "eModeCollateralFactor", "type": "uint256" }, { "internalType": "bool", "name": "isFlashLoanEnabled", "type": "bool" }, { "internalType": "uint16", "name": "ltv", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, { "internalType": "address", "name": "priceSource", "type": "address" }, { "internalType": "string", "name": "label", "type": "string" }, { "internalType": "bool", "name": "isActive", "type": "bool" }, { "internalType": "bool", "name": "isPaused", "type": "bool" }, { "internalType": "bool", "name": "isFrozen", "type": "bool" }, { "internalType": "address", "name": "debtTokenAddress", "type": "address" }], "internalType": "struct AaveV3View.TokenInfoFull", "name": "_tokenInfo", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_tokenAddresses", "type": "address[]" }], "name": "getTokensInfo", "outputs": [{ "components": [{ "internalType": "address", "name": "aTokenAddress", "type": "address" }, { "internalType": "address", "name": "underlyingTokenAddress", "type": "address" }, { "internalType": "uint256", "name": "collateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }], "internalType": "struct AaveV3View.TokenInfo[]", "name": "tokens", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "isBorrowAllowed", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "pure", "type": "function" }],
9
9
  "networks": {
@@ -512,6 +512,14 @@ exports.cWstETHv3 = {
512
512
  },
513
513
  },
514
514
  };
515
+ exports.ciUSDCv3 = {
516
+ "abi": [{ "inputs": [{ "internalType": "address", "name": "manager", "type": "address" }, { "internalType": "bool", "name": "isAllowed_", "type": "bool" }], "name": "allow", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "components": [{ "internalType": "address", "name": "governor", "type": "address" }, { "internalType": "address", "name": "pauseGuardian", "type": "address" }, { "internalType": "address", "name": "baseToken", "type": "address" }, { "internalType": "address", "name": "baseTokenPriceFeed", "type": "address" }, { "internalType": "address", "name": "extensionDelegate", "type": "address" }, { "internalType": "uint64", "name": "supplyKink", "type": "uint64" }, { "internalType": "uint64", "name": "supplyPerYearInterestRateSlopeLow", "type": "uint64" }, { "internalType": "uint64", "name": "supplyPerYearInterestRateSlopeHigh", "type": "uint64" }, { "internalType": "uint64", "name": "supplyPerYearInterestRateBase", "type": "uint64" }, { "internalType": "uint64", "name": "borrowKink", "type": "uint64" }, { "internalType": "uint64", "name": "borrowPerYearInterestRateSlopeLow", "type": "uint64" }, { "internalType": "uint64", "name": "borrowPerYearInterestRateSlopeHigh", "type": "uint64" }, { "internalType": "uint64", "name": "borrowPerYearInterestRateBase", "type": "uint64" }, { "internalType": "uint64", "name": "storeFrontPriceFactor", "type": "uint64" }, { "internalType": "uint64", "name": "trackingIndexScale", "type": "uint64" }, { "internalType": "uint64", "name": "baseTrackingSupplySpeed", "type": "uint64" }, { "internalType": "uint64", "name": "baseTrackingBorrowSpeed", "type": "uint64" }, { "internalType": "uint104", "name": "baseMinForRewards", "type": "uint104" }, { "internalType": "uint104", "name": "baseBorrowMin", "type": "uint104" }, { "internalType": "uint104", "name": "targetReserves", "type": "uint104" }, { "components": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "priceFeed", "type": "address" }, { "internalType": "uint8", "name": "decimals", "type": "uint8" }, { "internalType": "uint64", "name": "borrowCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidateCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidationFactor", "type": "uint64" }, { "internalType": "uint128", "name": "supplyCap", "type": "uint128" }], "internalType": "struct CometConfiguration.AssetConfig[]", "name": "assetConfigs", "type": "tuple[]" }], "internalType": "struct CometConfiguration.Configuration", "name": "config", "type": "tuple" }], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "Absurd", "type": "error" }, { "inputs": [], "name": "AlreadyInitialized", "type": "error" }, { "inputs": [], "name": "BadAsset", "type": "error" }, { "inputs": [], "name": "BadDecimals", "type": "error" }, { "inputs": [], "name": "BadDiscount", "type": "error" }, { "inputs": [], "name": "BadMinimum", "type": "error" }, { "inputs": [], "name": "BadPrice", "type": "error" }, { "inputs": [], "name": "BorrowCFTooLarge", "type": "error" }, { "inputs": [], "name": "BorrowTooSmall", "type": "error" }, { "inputs": [], "name": "InsufficientReserves", "type": "error" }, { "inputs": [], "name": "InvalidInt104", "type": "error" }, { "inputs": [], "name": "InvalidInt256", "type": "error" }, { "inputs": [], "name": "InvalidUInt104", "type": "error" }, { "inputs": [], "name": "InvalidUInt128", "type": "error" }, { "inputs": [], "name": "InvalidUInt64", "type": "error" }, { "inputs": [], "name": "LiquidateCFTooLarge", "type": "error" }, { "inputs": [], "name": "NegativeNumber", "type": "error" }, { "inputs": [], "name": "NoSelfTransfer", "type": "error" }, { "inputs": [], "name": "NotCollateralized", "type": "error" }, { "inputs": [], "name": "NotForSale", "type": "error" }, { "inputs": [], "name": "NotLiquidatable", "type": "error" }, { "inputs": [], "name": "Paused", "type": "error" }, { "inputs": [], "name": "SupplyCapExceeded", "type": "error" }, { "inputs": [], "name": "TimestampTooLarge", "type": "error" }, { "inputs": [], "name": "TooManyAssets", "type": "error" }, { "inputs": [], "name": "TooMuchSlippage", "type": "error" }, { "inputs": [], "name": "TransferInFailed", "type": "error" }, { "inputs": [], "name": "TransferOutFailed", "type": "error" }, { "inputs": [], "name": "Unauthorized", "type": "error" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "absorber", "type": "address" }, { "indexed": true, "internalType": "address", "name": "borrower", "type": "address" }, { "indexed": true, "internalType": "address", "name": "asset", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "collateralAbsorbed", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "usdValue", "type": "uint256" }], "name": "AbsorbCollateral", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "absorber", "type": "address" }, { "indexed": true, "internalType": "address", "name": "borrower", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "basePaidOut", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "usdValue", "type": "uint256" }], "name": "AbsorbDebt", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "buyer", "type": "address" }, { "indexed": true, "internalType": "address", "name": "asset", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "baseAmount", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "collateralAmount", "type": "uint256" }], "name": "BuyCollateral", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "bool", "name": "supplyPaused", "type": "bool" }, { "indexed": false, "internalType": "bool", "name": "transferPaused", "type": "bool" }, { "indexed": false, "internalType": "bool", "name": "withdrawPaused", "type": "bool" }, { "indexed": false, "internalType": "bool", "name": "absorbPaused", "type": "bool" }, { "indexed": false, "internalType": "bool", "name": "buyPaused", "type": "bool" }], "name": "PauseAction", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "dst", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "Supply", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "dst", "type": "address" }, { "indexed": true, "internalType": "address", "name": "asset", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "SupplyCollateral", "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": "amount", "type": "uint256" }], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "address", "name": "asset", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "TransferCollateral", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "src", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "Withdraw", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "src", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "address", "name": "asset", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "WithdrawCollateral", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "WithdrawReserves", "type": "event" }, { "stateMutability": "payable", "type": "fallback" }, { "inputs": [{ "internalType": "address", "name": "absorber", "type": "address" }, { "internalType": "address[]", "name": "accounts", "type": "address[]" }], "name": "absorb", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "account", "type": "address" }], "name": "accrueAccount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "manager", "type": "address" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "approveThis", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "account", "type": "address" }], "name": "balanceOf", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseBorrowMin", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseMinForRewards", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseScale", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseToken", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseTokenPriceFeed", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseTrackingBorrowSpeed", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseTrackingSupplySpeed", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "account", "type": "address" }], "name": "borrowBalanceOf", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "borrowKink", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "borrowPerSecondInterestRateBase", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "borrowPerSecondInterestRateSlopeHigh", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "borrowPerSecondInterestRateSlopeLow", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "minAmount", "type": "uint256" }, { "internalType": "uint256", "name": "baseAmount", "type": "uint256" }, { "internalType": "address", "name": "recipient", "type": "address" }], "name": "buyCollateral", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [{ "internalType": "uint8", "name": "", "type": "uint8" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "extensionDelegate", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint8", "name": "i", "type": "uint8" }], "name": "getAssetInfo", "outputs": [{ "components": [{ "internalType": "uint8", "name": "offset", "type": "uint8" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "priceFeed", "type": "address" }, { "internalType": "uint64", "name": "scale", "type": "uint64" }, { "internalType": "uint64", "name": "borrowCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidateCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidationFactor", "type": "uint64" }, { "internalType": "uint128", "name": "supplyCap", "type": "uint128" }], "internalType": "struct CometCore.AssetInfo", "name": "", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], "name": "getAssetInfoByAddress", "outputs": [{ "components": [{ "internalType": "uint8", "name": "offset", "type": "uint8" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "priceFeed", "type": "address" }, { "internalType": "uint64", "name": "scale", "type": "uint64" }, { "internalType": "uint64", "name": "borrowCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidateCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidationFactor", "type": "uint64" }, { "internalType": "uint128", "name": "supplyCap", "type": "uint128" }], "internalType": "struct CometCore.AssetInfo", "name": "", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "utilization", "type": "uint256" }], "name": "getBorrowRate", "outputs": [{ "internalType": "uint64", "name": "", "type": "uint64" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "priceFeed", "type": "address" }], "name": "getPrice", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getReserves", "outputs": [{ "internalType": "int256", "name": "", "type": "int256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "utilization", "type": "uint256" }], "name": "getSupplyRate", "outputs": [{ "internalType": "uint64", "name": "", "type": "uint64" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getUtilization", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "governor", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "manager", "type": "address" }], "name": "hasPermission", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "initializeStorage", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "isAbsorbPaused", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }], "name": "isAllowed", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "account", "type": "address" }], "name": "isBorrowCollateralized", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isBuyPaused", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "account", "type": "address" }], "name": "isLiquidatable", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isSupplyPaused", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isTransferPaused", "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": "", "type": "address" }], "name": "liquidatorPoints", "outputs": [{ "internalType": "uint32", "name": "numAbsorbs", "type": "uint32" }, { "internalType": "uint64", "name": "numAbsorbed", "type": "uint64" }, { "internalType": "uint128", "name": "approxSpend", "type": "uint128" }, { "internalType": "uint32", "name": "_reserved", "type": "uint32" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "numAssets", "outputs": [{ "internalType": "uint8", "name": "", "type": "uint8" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bool", "name": "supplyPaused", "type": "bool" }, { "internalType": "bool", "name": "transferPaused", "type": "bool" }, { "internalType": "bool", "name": "withdrawPaused", "type": "bool" }, { "internalType": "bool", "name": "absorbPaused", "type": "bool" }, { "internalType": "bool", "name": "buyPaused", "type": "bool" }], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "pauseGuardian", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "baseAmount", "type": "uint256" }], "name": "quoteCollateral", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "storeFrontPriceFactor", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "supply", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "dst", "type": "address" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "supplyFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "supplyKink", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "supplyPerSecondInterestRateBase", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "supplyPerSecondInterestRateSlopeHigh", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "supplyPerSecondInterestRateSlopeLow", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "dst", "type": "address" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "supplyTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "targetReserves", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalBorrow", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "totalsCollateral", "outputs": [{ "internalType": "uint128", "name": "totalSupplyAsset", "type": "uint128" }, { "internalType": "uint128", "name": "_reserved", "type": "uint128" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "trackingIndexScale", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "dst", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "transfer", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "dst", "type": "address" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "transferAsset", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "src", "type": "address" }, { "internalType": "address", "name": "dst", "type": "address" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "transferAssetFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "src", "type": "address" }, { "internalType": "address", "name": "dst", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "transferFrom", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "userBasic", "outputs": [{ "internalType": "int104", "name": "principal", "type": "int104" }, { "internalType": "uint64", "name": "baseTrackingIndex", "type": "uint64" }, { "internalType": "uint64", "name": "baseTrackingAccrued", "type": "uint64" }, { "internalType": "uint16", "name": "assetsIn", "type": "uint16" }, { "internalType": "uint8", "name": "_reserved", "type": "uint8" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }], "name": "userCollateral", "outputs": [{ "internalType": "uint128", "name": "balance", "type": "uint128" }, { "internalType": "uint128", "name": "_reserved", "type": "uint128" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }], "name": "userNonce", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "src", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "withdrawFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "withdrawReserves", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "to", "type": "address" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }], "name": "withdrawTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }],
517
+ "networks": {
518
+ "1": {
519
+ "address": "0x207158a267CBD2598BB3d611D8CBdEE2709F2F8C",
520
+ },
521
+ },
522
+ };
515
523
  exports.CompV3View = {
516
524
  "abi": [{ "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }, { "internalType": "uint256", "name": "_supplyAmount", "type": "uint256" }, { "internalType": "uint256", "name": "_borrowAmount", "type": "uint256" }], "name": "getApyAfterValuesEstimation", "outputs": [{ "internalType": "uint256", "name": "utilization", "type": "uint256" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRate", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_tokenAddr", "type": "address" }], "name": "getAssetPrice", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }], "name": "getAssets", "outputs": [{ "components": [{ "internalType": "uint8", "name": "offset", "type": "uint8" }, { "internalType": "address", "name": "asset", "type": "address" }, { "internalType": "address", "name": "priceFeed", "type": "address" }, { "internalType": "uint64", "name": "scale", "type": "uint64" }, { "internalType": "uint64", "name": "borrowCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidateCollateralFactor", "type": "uint64" }, { "internalType": "uint64", "name": "liquidationFactor", "type": "uint64" }, { "internalType": "uint128", "name": "supplyCap", "type": "uint128" }], "internalType": "struct IComet.AssetInfo[]", "name": "assets", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }], "name": "getFullBaseTokenInfo", "outputs": [{ "components": [{ "internalType": "address", "name": "tokenAddr", "type": "address" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "supplyIndex", "type": "uint256" }, { "internalType": "uint256", "name": "borrowIndex", "type": "uint256" }, { "internalType": "uint256", "name": "trackingSupplyIndex", "type": "uint256" }, { "internalType": "uint256", "name": "trackingBorrowIndex", "type": "uint256" }, { "internalType": "uint256", "name": "supplyRate", "type": "uint256" }, { "internalType": "uint256", "name": "borrowRate", "type": "uint256" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "uint256", "name": "totalBorrow", "type": "uint256" }, { "internalType": "uint256", "name": "utilization", "type": "uint256" }, { "internalType": "uint256", "name": "baseBorrowMin", "type": "uint256" }, { "internalType": "uint256", "name": "baseTrackingBorrowRewardsSpeed", "type": "uint256" }, { "internalType": "uint256", "name": "baseTrackingSupplyRewardsSpeed", "type": "uint256" }], "internalType": "struct CompV3View.BaseTokenInfoFull", "name": "baseToken", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_tokenAddr", "type": "address" }], "name": "getFullCollInfo", "outputs": [{ "components": [{ "internalType": "address", "name": "tokenAddr", "type": "address" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "uint256", "name": "supplyReserved", "type": "uint256" }, { "internalType": "uint256", "name": "borrowCollateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidateCollateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationFactor", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "supplyCap", "type": "uint256" }], "internalType": "struct CompV3View.CollateralInfoFull", "name": "coll", "type": "tuple" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }], "name": "getFullCollInfos", "outputs": [{ "components": [{ "internalType": "address", "name": "tokenAddr", "type": "address" }, { "internalType": "uint256", "name": "totalSupply", "type": "uint256" }, { "internalType": "uint256", "name": "supplyReserved", "type": "uint256" }, { "internalType": "uint256", "name": "borrowCollateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidateCollateralFactor", "type": "uint256" }, { "internalType": "uint256", "name": "liquidationFactor", "type": "uint256" }, { "internalType": "uint256", "name": "price", "type": "uint256" }, { "internalType": "uint256", "name": "supplyCap", "type": "uint256" }], "internalType": "struct CompV3View.CollateralInfoFull[]", "name": "colls", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }], "name": "getGovernanceInfoFull", "outputs": [{ "components": [{ "internalType": "bool", "name": "isSupplyPaused", "type": "bool" }, { "internalType": "bool", "name": "isTransferPaused", "type": "bool" }, { "internalType": "bool", "name": "isWithdrawPaused", "type": "bool" }, { "internalType": "bool", "name": "isAbsorbPaused", "type": "bool" }], "internalType": "struct CompV3View.GovernanceInfoFull", "name": "govInfo", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getLoanData", "outputs": [{ "components": [{ "internalType": "address", "name": "user", "type": "address" }, { "internalType": "address[]", "name": "collAddr", "type": "address[]" }, { "internalType": "uint256[]", "name": "collAmounts", "type": "uint256[]" }, { "internalType": "uint256", "name": "depositAmount", "type": "uint256" }, { "internalType": "uint256", "name": "depositValue", "type": "uint256" }, { "internalType": "uint256", "name": "borrowAmount", "type": "uint256" }, { "internalType": "uint256", "name": "borrowValue", "type": "uint256" }, { "internalType": "uint256", "name": "collValue", "type": "uint256" }], "internalType": "struct CompV3View.LoanData", "name": "data", "type": "tuple" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address[]", "name": "_users", "type": "address[]" }], "name": "getLoanDataArr", "outputs": [{ "components": [{ "internalType": "address", "name": "user", "type": "address" }, { "internalType": "address[]", "name": "collAddr", "type": "address[]" }, { "internalType": "uint256[]", "name": "collAmounts", "type": "uint256[]" }, { "internalType": "uint256", "name": "depositAmount", "type": "uint256" }, { "internalType": "uint256", "name": "depositValue", "type": "uint256" }, { "internalType": "uint256", "name": "borrowAmount", "type": "uint256" }, { "internalType": "uint256", "name": "borrowValue", "type": "uint256" }, { "internalType": "uint256", "name": "collValue", "type": "uint256" }], "internalType": "struct CompV3View.LoanData[]", "name": "loans", "type": "tuple[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getRewardsOwed", "outputs": [{ "components": [{ "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "owed", "type": "uint256" }], "internalType": "struct ICometRewards.RewardOwed", "name": "rewardsOwed", "type": "tuple" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "components": [{ "internalType": "uint64", "name": "baseSupplyIndex", "type": "uint64" }, { "internalType": "uint64", "name": "baseBorrowIndex", "type": "uint64" }, { "internalType": "uint64", "name": "trackingSupplyIndex", "type": "uint64" }, { "internalType": "uint64", "name": "trackingBorrowIndex", "type": "uint64" }, { "internalType": "uint104", "name": "totalSupplyBase", "type": "uint104" }, { "internalType": "uint104", "name": "totalBorrowBase", "type": "uint104" }, { "internalType": "uint40", "name": "lastAccrualTime", "type": "uint40" }, { "internalType": "uint8", "name": "pauseFlags", "type": "uint8" }], "internalType": "struct IComet.TotalsBasic", "name": "totals", "type": "tuple" }], "name": "getUtilization", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "pure", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_owner", "type": "address" }, { "internalType": "address", "name": "_manager", "type": "address" }], "name": "isAllowed", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "_market", "type": "address" }, { "internalType": "address", "name": "_user", "type": "address" }], "name": "getRewardsOwed", "outputs": [{ "components": [{ "internalType": "address", "name": "token", "type": "address" }, { "internalType": "uint256", "name": "owed", "type": "uint256" }], "internalType": "struct ICometRewards.RewardOwed", "name": "rewardsOwed", "type": "tuple" }], "stateMutability": "view", "type": "function" }],
517
525
  "networks": {
@@ -19,19 +19,6 @@ export declare const sparkGetEmodeMutableProps: ({ eModeCategory, eModeCategorie
19
19
  liquidationRatio: string;
20
20
  collateralFactor: string;
21
21
  };
22
- /**
23
- * @description Per-asset effective LTV and liquidation threshold (LLTV) for the user, eMode-aware.
24
- * Mirrors SparkRatioHelper._getUserAccountDataWithLtvZeroFallback: unlike Aave v3 (eMode ltv-zero
25
- * bitmap), Spark's LTV-0 state lives on the RESERVE config (asset offboarding zeroes the reserve ltv),
26
- * so a zeroed reserve keeps `ltv` 0 even inside the active eMode category, while its `lltv` stays the
27
- * eMode liquidation threshold there (liquidations only consider LLTV). The returned `ltv` is identical
28
- * to sparkGetEmodeMutableProps().collateralFactor whenever the reserve ltv is non-zero, so a ratio
29
- * built on this matches the regular safety ratio whenever no collateral is LTV-0.
30
- */
31
- export declare const sparkGetUserReserveLtvAndLltv: ({ eModeCategory, eModeCategoriesData, assetsData, }: SparkHelperCommon, _asset: string) => {
32
- ltv: string;
33
- lltv: string;
34
- };
35
22
  export declare const sparkGetAggregatedPositionData: ({ usedAssets, eModeCategory, eModeCategoriesData, assetsData, selectedMarket, network, ...rest }: SparkHelperCommon) => SparkAggregatedPositionData;
36
23
  export declare const getApyAfterValuesEstimation: (selectedMarket: SparkMarketData, actions: [{
37
24
  action: string;
@@ -23,7 +23,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
23
23
  return (mod && mod.__esModule) ? mod : { "default": mod };
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getApyAfterValuesEstimation = exports.sparkGetAggregatedPositionData = exports.sparkGetUserReserveLtvAndLltv = exports.sparkGetEmodeMutableProps = exports.sparkGetSuppliableAsCollAssets = exports.sparkGetSuppliableAssets = exports.sparkGetCollSuppliedAssets = exports.sparkIsInIsolationMode = void 0;
26
+ exports.getApyAfterValuesEstimation = exports.sparkGetAggregatedPositionData = exports.sparkGetEmodeMutableProps = exports.sparkGetSuppliableAsCollAssets = exports.sparkGetSuppliableAssets = exports.sparkGetCollSuppliedAssets = exports.sparkIsInIsolationMode = void 0;
27
27
  const decimal_js_1 = __importDefault(require("decimal.js"));
28
28
  const tokens_1 = require("@defisaver/tokens");
29
29
  const moneymarket_1 = require("../../moneymarket");
@@ -68,37 +68,6 @@ const sparkGetEmodeMutableProps = ({ eModeCategory, eModeCategoriesData, assetsD
68
68
  return ({ liquidationRatio, collateralFactor });
69
69
  };
70
70
  exports.sparkGetEmodeMutableProps = sparkGetEmodeMutableProps;
71
- /**
72
- * @description Offset subtracted from the liquidation threshold (LLTV) when crediting LTV-0 collateral
73
- * in the safety-ratio fallback. Matches SparkView.getSafetyRatioWithLtvZeroFallback ('LLTV - 5%').
74
- * Values are fractions (e.g. 0.8), so 5% === 0.05.
75
- */
76
- const LTV_ZERO_FALLBACK_LLTV_OFFSET = '0.05';
77
- /**
78
- * @description Per-asset effective LTV and liquidation threshold (LLTV) for the user, eMode-aware.
79
- * Mirrors SparkRatioHelper._getUserAccountDataWithLtvZeroFallback: unlike Aave v3 (eMode ltv-zero
80
- * bitmap), Spark's LTV-0 state lives on the RESERVE config (asset offboarding zeroes the reserve ltv),
81
- * so a zeroed reserve keeps `ltv` 0 even inside the active eMode category, while its `lltv` stays the
82
- * eMode liquidation threshold there (liquidations only consider LLTV). The returned `ltv` is identical
83
- * to sparkGetEmodeMutableProps().collateralFactor whenever the reserve ltv is non-zero, so a ratio
84
- * built on this matches the regular safety ratio whenever no collateral is LTV-0.
85
- */
86
- const sparkGetUserReserveLtvAndLltv = ({ eModeCategory, eModeCategoriesData, assetsData, }, _asset) => {
87
- const asset = (0, utils_1.getNativeAssetFromWrapped)(_asset);
88
- const assetData = assetsData[asset];
89
- const eModeCategoryData = eModeCategoriesData === null || eModeCategoriesData === void 0 ? void 0 : eModeCategoriesData[eModeCategory];
90
- if (eModeCategory === 0
91
- || !eModeCategoryData
92
- || !eModeCategoryData.collateralAssets.includes(asset)
93
- || new decimal_js_1.default(eModeCategoryData.collateralFactor || 0).eq(0)) {
94
- return { ltv: assetData.collateralFactor, lltv: assetData.liquidationRatio };
95
- }
96
- // In the active eMode category the fallback trigger is still the reserve-level ltv (the contract
97
- // checks the reserve config's ltv), so an offboarded asset must not pick up the category-wide eMode ltv.
98
- const ltv = new decimal_js_1.default(assetData.collateralFactor || 0).eq(0) ? '0' : eModeCategoryData.collateralFactor;
99
- return { ltv, lltv: eModeCategoryData.liquidationRatio };
100
- };
101
- exports.sparkGetUserReserveLtvAndLltv = sparkGetUserReserveLtvAndLltv;
102
71
  const sparkGetAggregatedPositionData = (_a) => {
103
72
  var { usedAssets, eModeCategory, eModeCategoriesData, assetsData, selectedMarket, network } = _a, rest = __rest(_a, ["usedAssets", "eModeCategory", "eModeCategoriesData", "assetsData", "selectedMarket", "network"]);
104
73
  const data = Object.assign({ usedAssets, eModeCategory, eModeCategoriesData, assetsData, selectedMarket, network }, rest);
@@ -112,17 +81,6 @@ const sparkGetAggregatedPositionData = (_a) => {
112
81
  payload.leftToBorrowUsd = leftToBorrowUsd.lte('0') ? '0' : leftToBorrowUsd.toString();
113
82
  payload.ratio = +payload.suppliedUsd ? new decimal_js_1.default(payload.borrowLimitUsd).div(payload.borrowedUsd).mul(100).toString() : '0';
114
83
  payload.collRatio = +payload.suppliedUsd ? new decimal_js_1.default(payload.suppliedCollateralUsd).div(payload.borrowedUsd).mul(100).toString() : '0';
115
- // Safety ratio as evaluated by the automation bots: LTV-0 collateral is credited at (LLTV - 5%)
116
- // instead of 0 (SparkView.getSafetyRatioWithLtvZeroFallback). Equals `ratio` when no collateral
117
- // is LTV-0. Computed off-chain here so it is available for after-value simulations too.
118
- payload.borrowLimitWithLtvZeroFallbackUsd = (0, moneymarket_1.getAssetsTotal)(usedAssets, ({ isSupplied, collateral }) => isSupplied && collateral, ({ symbol, suppliedUsd }) => {
119
- const { ltv, lltv } = (0, exports.sparkGetUserReserveLtvAndLltv)(data, symbol);
120
- const effectiveLtv = new decimal_js_1.default(ltv).eq(0)
121
- ? decimal_js_1.default.max(0, new decimal_js_1.default(lltv).sub(LTV_ZERO_FALLBACK_LLTV_OFFSET))
122
- : new decimal_js_1.default(ltv);
123
- return new decimal_js_1.default(suppliedUsd).mul(effectiveLtv);
124
- });
125
- payload.safetyRatioWithLtvZeroFallback = +payload.suppliedUsd ? new decimal_js_1.default(payload.borrowLimitWithLtvZeroFallbackUsd).div(payload.borrowedUsd).mul(100).toString() : '0';
126
84
  const { netApy, incentiveUsd, totalInterestUsd } = (0, staking_1.calculateNetApy)({ usedAssets, assetsData });
127
85
  payload.netApy = netApy;
128
86
  payload.incentiveUsd = incentiveUsd;
@@ -10,6 +10,7 @@ export declare const COMPOUND_V3_USDBC: (networkId: NetworkNumber) => CompoundMa
10
10
  export declare const COMPOUND_V3_USDT: (networkId: NetworkNumber) => CompoundMarketData;
11
11
  export declare const COMPOUND_V3_WSTETH: (networkId: NetworkNumber) => CompoundMarketData;
12
12
  export declare const COMPOUND_V3_USDS: (networkId: NetworkNumber) => CompoundMarketData;
13
+ export declare const COMPOUND_V3_INSTITUTIONAL_USDC: (networkId: NetworkNumber) => CompoundMarketData;
13
14
  export declare const CompoundMarkets: (networkId: NetworkNumber) => {
14
15
  readonly v2: CompoundMarketData;
15
16
  readonly "v3-ETH": CompoundMarketData;
@@ -19,4 +20,5 @@ export declare const CompoundMarkets: (networkId: NetworkNumber) => {
19
20
  readonly "v3-USDT": CompoundMarketData;
20
21
  readonly "v3-wstETH": CompoundMarketData;
21
22
  readonly "v3-USDS": CompoundMarketData;
23
+ readonly "v3-institutional-USDC": CompoundMarketData;
22
24
  };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CompoundMarkets = exports.COMPOUND_V3_USDS = exports.COMPOUND_V3_WSTETH = exports.COMPOUND_V3_USDT = exports.COMPOUND_V3_USDBC = exports.COMPOUND_V3_ETH = exports.COMPOUND_V3_USDCe = exports.COMPOUND_V3_USDC = exports.COMPOUND_V2 = exports.v3USDTCollAssets = exports.v3USDCeCollAssets = exports.v3USDCCollAssets = exports.v3USDbCCollAssets = exports.v3ETHCollAssets = exports.compoundV2CollateralAssets = void 0;
3
+ exports.CompoundMarkets = exports.COMPOUND_V3_INSTITUTIONAL_USDC = exports.COMPOUND_V3_USDS = exports.COMPOUND_V3_WSTETH = exports.COMPOUND_V3_USDT = exports.COMPOUND_V3_USDBC = exports.COMPOUND_V3_ETH = exports.COMPOUND_V3_USDCe = exports.COMPOUND_V3_USDC = exports.COMPOUND_V2 = exports.v3USDTCollAssets = exports.v3USDCeCollAssets = exports.v3USDCCollAssets = exports.v3USDbCCollAssets = exports.v3ETHCollAssets = exports.compoundV2CollateralAssets = void 0;
4
4
  const constants_1 = require("../../constants");
5
5
  const contracts_1 = require("../../contracts");
6
6
  const types_1 = require("../../types");
@@ -24,6 +24,7 @@ const BULKER_OPTIONS = {
24
24
  [types_1.CompoundVersions.CompoundV3USDT]: STANDARD_BULKER_OPTIONS,
25
25
  [types_1.CompoundVersions.CompoundV3wstETH]: STANDARD_BULKER_OPTIONS,
26
26
  [types_1.CompoundVersions.CompoundV3USDS]: STANDARD_BULKER_OPTIONS,
27
+ [types_1.CompoundVersions.CompoundV3InstitutionalUSDC]: STANDARD_BULKER_OPTIONS,
27
28
  // Non-existing markets, keeping it because of typescript
28
29
  [types_1.CompoundVersions.CompoundV2]: EMPTY_BULKER_OPTIONS,
29
30
  [types_1.CompoundVersions.CompoundV3USDCe]: EMPTY_BULKER_OPTIONS,
@@ -39,6 +40,7 @@ const BULKER_OPTIONS = {
39
40
  [types_1.CompoundVersions.CompoundV3USDbC]: EMPTY_BULKER_OPTIONS,
40
41
  [types_1.CompoundVersions.CompoundV3wstETH]: EMPTY_BULKER_OPTIONS,
41
42
  [types_1.CompoundVersions.CompoundV3USDS]: EMPTY_BULKER_OPTIONS,
43
+ [types_1.CompoundVersions.CompoundV3InstitutionalUSDC]: EMPTY_BULKER_OPTIONS,
42
44
  },
43
45
  [common_1.NetworkNumber.Base]: {
44
46
  [types_1.CompoundVersions.CompoundV3ETH]: STANDARD_BULKER_OPTIONS,
@@ -50,6 +52,7 @@ const BULKER_OPTIONS = {
50
52
  [types_1.CompoundVersions.CompoundV3USDCe]: EMPTY_BULKER_OPTIONS,
51
53
  [types_1.CompoundVersions.CompoundV3USDT]: EMPTY_BULKER_OPTIONS,
52
54
  [types_1.CompoundVersions.CompoundV3wstETH]: EMPTY_BULKER_OPTIONS,
55
+ [types_1.CompoundVersions.CompoundV3InstitutionalUSDC]: EMPTY_BULKER_OPTIONS,
53
56
  },
54
57
  [common_1.NetworkNumber.Opt]: {
55
58
  [types_1.CompoundVersions.CompoundV3USDC]: STANDARD_BULKER_OPTIONS,
@@ -61,6 +64,7 @@ const BULKER_OPTIONS = {
61
64
  [types_1.CompoundVersions.CompoundV3USDCe]: EMPTY_BULKER_OPTIONS,
62
65
  [types_1.CompoundVersions.CompoundV3wstETH]: EMPTY_BULKER_OPTIONS,
63
66
  [types_1.CompoundVersions.CompoundV3USDS]: EMPTY_BULKER_OPTIONS,
67
+ [types_1.CompoundVersions.CompoundV3InstitutionalUSDC]: EMPTY_BULKER_OPTIONS,
64
68
  },
65
69
  [common_1.NetworkNumber.Linea]: {
66
70
  // Non-existing markets, keeping it because of typescript
@@ -72,6 +76,7 @@ const BULKER_OPTIONS = {
72
76
  [types_1.CompoundVersions.CompoundV3USDCe]: EMPTY_BULKER_OPTIONS,
73
77
  [types_1.CompoundVersions.CompoundV3wstETH]: EMPTY_BULKER_OPTIONS,
74
78
  [types_1.CompoundVersions.CompoundV3USDS]: EMPTY_BULKER_OPTIONS,
79
+ [types_1.CompoundVersions.CompoundV3InstitutionalUSDC]: EMPTY_BULKER_OPTIONS,
75
80
  },
76
81
  [common_1.NetworkNumber.Plasma]: {
77
82
  // Non-existing markets, keeping it because of typescript
@@ -83,12 +88,14 @@ const BULKER_OPTIONS = {
83
88
  [types_1.CompoundVersions.CompoundV3USDCe]: EMPTY_BULKER_OPTIONS,
84
89
  [types_1.CompoundVersions.CompoundV3wstETH]: EMPTY_BULKER_OPTIONS,
85
90
  [types_1.CompoundVersions.CompoundV3USDS]: EMPTY_BULKER_OPTIONS,
91
+ [types_1.CompoundVersions.CompoundV3InstitutionalUSDC]: EMPTY_BULKER_OPTIONS,
86
92
  },
87
93
  };
88
94
  exports.COMPOUND_V2 = {
89
95
  chainIds: [common_1.NetworkNumber.Eth],
90
96
  label: 'Compound V2',
91
97
  shortLabel: types_1.CompoundVersionType.V2,
98
+ url: '',
92
99
  value: types_1.CompoundVersions.CompoundV2,
93
100
  baseAsset: '',
94
101
  collAssets: marketsAssets_1.compoundV2CollateralAssets.map(a => a.underlyingAsset),
@@ -104,6 +111,7 @@ const COMPOUND_V3_USDC = (networkId) => ({
104
111
  chainIds: [common_1.NetworkNumber.Eth, common_1.NetworkNumber.Arb, common_1.NetworkNumber.Base, common_1.NetworkNumber.Opt],
105
112
  label: 'Compound V3 - USDC',
106
113
  shortLabel: types_1.CompoundVersionType.V3,
114
+ url: 'cusdcv3',
107
115
  value: types_1.CompoundVersions.CompoundV3USDC,
108
116
  baseAsset: 'USDC',
109
117
  collAssets: networkId ? marketsAssets_1.v3USDCCollAssets[networkId] : [],
@@ -120,6 +128,7 @@ const COMPOUND_V3_USDCe = (networkId) => ({
120
128
  chainIds: [common_1.NetworkNumber.Arb],
121
129
  label: 'Compound V3 - USDC.e',
122
130
  shortLabel: types_1.CompoundVersionType.V3,
131
+ url: 'cusdcev3',
123
132
  value: types_1.CompoundVersions.CompoundV3USDCe,
124
133
  baseAsset: 'USDC.e',
125
134
  collAssets: networkId ? marketsAssets_1.v3USDCeCollAssets[networkId] : [],
@@ -136,6 +145,7 @@ const COMPOUND_V3_ETH = (networkId) => ({
136
145
  chainIds: [common_1.NetworkNumber.Eth, common_1.NetworkNumber.Base, common_1.NetworkNumber.Arb, common_1.NetworkNumber.Opt],
137
146
  label: 'Compound V3 - ETH',
138
147
  shortLabel: types_1.CompoundVersionType.V3,
148
+ url: 'cethv3',
139
149
  value: types_1.CompoundVersions.CompoundV3ETH,
140
150
  baseAsset: 'ETH',
141
151
  collAssets: networkId ? marketsAssets_1.v3ETHCollAssets[networkId] : [],
@@ -152,6 +162,7 @@ const COMPOUND_V3_USDBC = (networkId) => ({
152
162
  chainIds: [common_1.NetworkNumber.Base],
153
163
  label: 'Compound V3 - USDbC',
154
164
  shortLabel: types_1.CompoundVersionType.V3,
165
+ url: 'cusdbcv3',
155
166
  value: types_1.CompoundVersions.CompoundV3USDbC,
156
167
  baseAsset: 'USDbC',
157
168
  collAssets: networkId ? marketsAssets_1.v3USDbCCollAssets[networkId] : [],
@@ -168,6 +179,7 @@ const COMPOUND_V3_USDT = (networkId) => ({
168
179
  chainIds: [common_1.NetworkNumber.Eth, common_1.NetworkNumber.Arb, common_1.NetworkNumber.Opt],
169
180
  label: 'Compound V3 - USDT',
170
181
  shortLabel: types_1.CompoundVersionType.V3,
182
+ url: 'cusdtv3',
171
183
  value: types_1.CompoundVersions.CompoundV3USDT,
172
184
  baseAsset: 'USDT',
173
185
  collAssets: networkId ? marketsAssets_1.v3USDTCollAssets[networkId] : [],
@@ -184,6 +196,7 @@ const COMPOUND_V3_WSTETH = (networkId) => ({
184
196
  chainIds: [common_1.NetworkNumber.Eth],
185
197
  label: 'Compound V3 - wstETH',
186
198
  shortLabel: types_1.CompoundVersionType.V3,
199
+ url: 'cwstethv3',
187
200
  value: types_1.CompoundVersions.CompoundV3wstETH,
188
201
  baseAsset: 'wstETH',
189
202
  collAssets: networkId ? marketsAssets_1.v3wstETHCollAssets[networkId] : [],
@@ -199,6 +212,7 @@ const COMPOUND_V3_USDS = (networkId) => ({
199
212
  chainIds: [common_1.NetworkNumber.Eth, common_1.NetworkNumber.Base],
200
213
  label: 'Compound V3 - USDS',
201
214
  shortLabel: types_1.CompoundVersionType.V3,
215
+ url: 'cusdsv3',
202
216
  value: types_1.CompoundVersions.CompoundV3USDS,
203
217
  baseAsset: 'USDS',
204
218
  collAssets: networkId ? marketsAssets_1.v3USDSCollAssets[networkId] : [],
@@ -210,6 +224,22 @@ const COMPOUND_V3_USDS = (networkId) => ({
210
224
  bulkerOptions: BULKER_OPTIONS[networkId][types_1.CompoundVersions.CompoundV3USDS],
211
225
  });
212
226
  exports.COMPOUND_V3_USDS = COMPOUND_V3_USDS;
227
+ const COMPOUND_V3_INSTITUTIONAL_USDC = (networkId) => ({
228
+ chainIds: [common_1.NetworkNumber.Eth],
229
+ label: 'Compound V3 - Institutional USDC',
230
+ shortLabel: types_1.CompoundVersionType.V3,
231
+ url: 'ciusdcv3',
232
+ value: types_1.CompoundVersions.CompoundV3InstitutionalUSDC,
233
+ baseAsset: 'USDC',
234
+ collAssets: networkId ? marketsAssets_1.v3InstitutionalUSDCCollAssets[networkId] : [],
235
+ baseMarket: 'ciUSDCv3',
236
+ baseMarketAddress: (0, contracts_1.getConfigContractAddress)('ciUSDCv3', networkId),
237
+ secondLabel: 'Market',
238
+ bulkerName: networkId === common_1.NetworkNumber.Eth ? 'CompV3BulkerMainnetETH' : 'CompV3BulkerL2',
239
+ bulkerAddress: (0, contracts_1.getConfigContractAddress)(networkId === common_1.NetworkNumber.Eth ? 'CompV3BulkerMainnetETH' : 'CompV3BulkerL2', networkId),
240
+ bulkerOptions: BULKER_OPTIONS[networkId][types_1.CompoundVersions.CompoundV3InstitutionalUSDC],
241
+ });
242
+ exports.COMPOUND_V3_INSTITUTIONAL_USDC = COMPOUND_V3_INSTITUTIONAL_USDC;
213
243
  const CompoundMarkets = (networkId) => ({
214
244
  [types_1.CompoundVersions.CompoundV2]: exports.COMPOUND_V2,
215
245
  [types_1.CompoundVersions.CompoundV3ETH]: (0, exports.COMPOUND_V3_ETH)(networkId),
@@ -219,5 +249,6 @@ const CompoundMarkets = (networkId) => ({
219
249
  [types_1.CompoundVersions.CompoundV3USDT]: (0, exports.COMPOUND_V3_USDT)(networkId),
220
250
  [types_1.CompoundVersions.CompoundV3wstETH]: (0, exports.COMPOUND_V3_WSTETH)(networkId),
221
251
  [types_1.CompoundVersions.CompoundV3USDS]: (0, exports.COMPOUND_V3_USDS)(networkId),
252
+ [types_1.CompoundVersions.CompoundV3InstitutionalUSDC]: (0, exports.COMPOUND_V3_INSTITUTIONAL_USDC)(networkId),
222
253
  });
223
254
  exports.CompoundMarkets = CompoundMarkets;
@@ -72,3 +72,12 @@ export declare const v3wstETHCollAssets: {
72
72
  59144: never[];
73
73
  9745: never[];
74
74
  };
75
+ export declare const v3InstitutionalUSDCCollAssetsEth: string[];
76
+ export declare const v3InstitutionalUSDCCollAssets: {
77
+ 1: string[];
78
+ 10: never[];
79
+ 42161: never[];
80
+ 8453: never[];
81
+ 59144: never[];
82
+ 9745: never[];
83
+ };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.v3wstETHCollAssets = exports.v3wstETHCollAssetsEth = exports.v3USDSCollAssets = exports.v3USDSCollAssetsBase = exports.v3USDSCollAssetsEth = exports.v3USDTCollAssets = exports.v3USDTCollAssetsOpt = exports.v3USDTCollAssetsArb = exports.v3USDTCollAssetsEth = exports.v3USDbCCollAssets = exports.v3USDbCCollAssetsBase = exports.v3ETHCollAssets = exports.v3ETHCollAssetsOpt = exports.v3ETHCollAssetsArb = exports.v3ETHCollAssetsBase = exports.v3ETHCollAssetsEth = exports.v3USDCeCollAssets = exports.v3USDCeCollAssetsArb = exports.v3USDCCollAssets = exports.v3USDCCollAssetsOpt = exports.v3USDCCollAssetsBase = exports.v3USDCCollAssetsArb = exports.v3USDCCollAssetsEth = exports.compoundV2CollateralAssets = void 0;
3
+ exports.v3InstitutionalUSDCCollAssets = exports.v3InstitutionalUSDCCollAssetsEth = exports.v3wstETHCollAssets = exports.v3wstETHCollAssetsEth = exports.v3USDSCollAssets = exports.v3USDSCollAssetsBase = exports.v3USDSCollAssetsEth = exports.v3USDTCollAssets = exports.v3USDTCollAssetsOpt = exports.v3USDTCollAssetsArb = exports.v3USDTCollAssetsEth = exports.v3USDbCCollAssets = exports.v3USDbCCollAssetsBase = exports.v3ETHCollAssets = exports.v3ETHCollAssetsOpt = exports.v3ETHCollAssetsArb = exports.v3ETHCollAssetsBase = exports.v3ETHCollAssetsEth = exports.v3USDCeCollAssets = exports.v3USDCeCollAssetsArb = exports.v3USDCCollAssets = exports.v3USDCCollAssetsOpt = exports.v3USDCCollAssetsBase = exports.v3USDCCollAssetsArb = exports.v3USDCCollAssetsEth = exports.compoundV2CollateralAssets = void 0;
4
4
  const tokens_1 = require("@defisaver/tokens");
5
5
  const common_1 = require("../../types/common");
6
6
  exports.compoundV2CollateralAssets = [
@@ -84,3 +84,12 @@ exports.v3wstETHCollAssets = {
84
84
  [common_1.NetworkNumber.Linea]: [],
85
85
  [common_1.NetworkNumber.Plasma]: [],
86
86
  };
87
+ exports.v3InstitutionalUSDCCollAssetsEth = ['ETH', 'wstETH', 'cbBTC', 'WBTC'];
88
+ exports.v3InstitutionalUSDCCollAssets = {
89
+ [common_1.NetworkNumber.Eth]: exports.v3InstitutionalUSDCCollAssetsEth,
90
+ [common_1.NetworkNumber.Opt]: [],
91
+ [common_1.NetworkNumber.Arb]: [],
92
+ [common_1.NetworkNumber.Base]: [],
93
+ [common_1.NetworkNumber.Linea]: [],
94
+ [common_1.NetworkNumber.Plasma]: [],
95
+ };
@@ -7,7 +7,8 @@ export declare enum CompoundVersions {
7
7
  'CompoundV3USDbC' = "v3-USDbC",
8
8
  'CompoundV3USDT' = "v3-USDT",
9
9
  'CompoundV3USDS' = "v3-USDS",
10
- 'CompoundV3wstETH' = "v3-wstETH"
10
+ 'CompoundV3wstETH' = "v3-wstETH",
11
+ 'CompoundV3InstitutionalUSDC' = "v3-institutional-USDC"
11
12
  }
12
13
  export declare enum CompoundVersionType {
13
14
  V2 = "v2",
@@ -21,6 +22,7 @@ export interface CompoundMarketData {
21
22
  chainIds: NetworkNumber[];
22
23
  label: string;
23
24
  shortLabel: string;
25
+ url: string;
24
26
  value: CompoundVersions;
25
27
  baseAsset: string;
26
28
  collAssets: readonly string[];
@@ -11,6 +11,7 @@ var CompoundVersions;
11
11
  CompoundVersions["CompoundV3USDT"] = "v3-USDT";
12
12
  CompoundVersions["CompoundV3USDS"] = "v3-USDS";
13
13
  CompoundVersions["CompoundV3wstETH"] = "v3-wstETH";
14
+ CompoundVersions["CompoundV3InstitutionalUSDC"] = "v3-institutional-USDC";
14
15
  })(CompoundVersions || (exports.CompoundVersions = CompoundVersions = {}));
15
16
  var CompoundVersionType;
16
17
  (function (CompoundVersionType) {
@@ -85,8 +85,6 @@ export interface SparkAggregatedPositionData {
85
85
  leftToBorrowUsd: string;
86
86
  ratio: string;
87
87
  collRatio: string;
88
- borrowLimitWithLtvZeroFallbackUsd: string;
89
- safetyRatioWithLtvZeroFallback: string;
90
88
  netApy: string;
91
89
  incentiveUsd: string;
92
90
  totalInterestUsd: string;
@@ -106,7 +104,6 @@ export interface SparkPositionData extends MMPositionData {
106
104
  ratio: string;
107
105
  minRatio: string;
108
106
  collRatio: string;
109
- safetyRatioWithLtvZeroFallback?: string;
110
107
  suppliedUsd: string;
111
108
  borrowedUsd: string;
112
109
  borrowLimitUsd: string;
@@ -7,12 +7,29 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ import { BaseError, ContractFunctionRevertedError } from 'viem';
10
11
  import { assetAmountInEth, getAssetInfoByAddress } from '@defisaver/tokens';
11
12
  import { CompV3ViewContractViem } from '../contracts';
12
13
  import { ClaimType } from '../types/claiming';
14
+ // `CometRewards.NotSupported(address)`. CometRewards reverts with it for any Comet that has no
15
+ // `rewardConfig` set - such a market never accrues COMP, so there is nothing to claim.
16
+ // Not decodable by name, since the error lives in CometRewards' ABI and we call through CompV3View.
17
+ const NOT_SUPPORTED_ERROR_SIG = '0x9c58e3b6';
18
+ // Only an actual on-chain revert counts - viem reports transport failures as ContractFunctionExecutionError too.
19
+ const isMarketWithoutRewardsConfig = (err) => {
20
+ var _a;
21
+ if (!(err instanceof BaseError))
22
+ return false;
23
+ const revert = err.walk((e) => e instanceof ContractFunctionRevertedError);
24
+ return revert instanceof ContractFunctionRevertedError && !!((_a = revert.raw) === null || _a === void 0 ? void 0 : _a.startsWith(NOT_SUPPORTED_ERROR_SIG));
25
+ };
13
26
  export const getCompoundV3Rewards = (provider, network, user, market) => __awaiter(void 0, void 0, void 0, function* () {
14
27
  const compV3View = CompV3ViewContractViem(provider, network);
15
- const rewards = yield compV3View.read.getRewardsOwed([market, user]);
28
+ const rewards = yield compV3View.read.getRewardsOwed([market, user]).catch((err) => {
29
+ if (isMarketWithoutRewardsConfig(err))
30
+ return null;
31
+ throw err;
32
+ });
16
33
  if (!rewards || rewards.owed.toString() === '0' || getAssetInfoByAddress(rewards.token, network).symbol !== 'COMP')
17
34
  return [];
18
35
  return [{