@gearbox-protocol/sdk 14.0.0-next.1 → 14.0.0-next.11

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.
Files changed (530) hide show
  1. package/dist/cjs/dev/RevolverTransport.js +10 -4
  2. package/dist/cjs/dev/logSplitterTransport.js +10 -1
  3. package/dist/cjs/permissionless/utils/create2.js +2 -2
  4. package/dist/cjs/plugins/apy/ApyPlugin.js +266 -0
  5. package/dist/cjs/plugins/apy/apy-cache.js +120 -0
  6. package/dist/cjs/plugins/apy/apy-parser.js +169 -0
  7. package/dist/cjs/plugins/{pools-history/index.js → apy/constants.js} +14 -7
  8. package/dist/cjs/plugins/apy/index.js +34 -0
  9. package/dist/cjs/plugins/apy/pool-apy-types.js +16 -0
  10. package/dist/cjs/plugins/apy/pool-apy-utils.js +141 -0
  11. package/dist/cjs/rewards/rewards/extra-apy.js +11 -9
  12. package/dist/cjs/sdk/MultichainSDK.js +10 -1
  13. package/dist/cjs/sdk/OnchainSDK.js +9 -1
  14. package/dist/cjs/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.js +20 -23
  15. package/dist/cjs/sdk/market/pricefeeds/updates/fetchPythPayloads.js +1 -1
  16. package/dist/cjs/sdk/utils/formatter.js +99 -20
  17. package/dist/esm/dev/RevolverTransport.js +10 -4
  18. package/dist/esm/dev/logSplitterTransport.js +10 -1
  19. package/dist/esm/permissionless/utils/create2.js +1 -1
  20. package/dist/esm/plugins/apy/ApyPlugin.js +255 -0
  21. package/dist/esm/plugins/apy/apy-cache.js +86 -0
  22. package/dist/esm/plugins/apy/apy-parser.js +143 -0
  23. package/dist/esm/plugins/apy/constants.js +6 -0
  24. package/dist/esm/plugins/apy/index.js +7 -0
  25. package/dist/esm/plugins/apy/pool-apy-utils.js +113 -0
  26. package/dist/esm/plugins/apy/types.js +0 -0
  27. package/dist/esm/rewards/rewards/extra-apy.js +11 -9
  28. package/dist/esm/sdk/MultichainSDK.js +10 -1
  29. package/dist/esm/sdk/OnchainSDK.js +9 -1
  30. package/dist/esm/sdk/market/pricefeeds/updates/PythAccumulatorUpdateData.js +20 -13
  31. package/dist/esm/sdk/market/pricefeeds/updates/fetchPythPayloads.js +1 -1
  32. package/dist/esm/sdk/utils/formatter.js +99 -10
  33. package/dist/types/{src/dev → dev}/RevolverTransport.d.ts +2 -1
  34. package/dist/types/{src/dev → dev}/create2.d.ts +1 -2
  35. package/dist/types/{src/dev → dev}/logSplitterTransport.d.ts +3 -1
  36. package/dist/types/{src/dev → dev}/replaceStorage.d.ts +1 -1
  37. package/dist/types/plugins/apy/ApyPlugin.d.ts +46 -0
  38. package/dist/types/plugins/apy/apy-cache.d.ts +28 -0
  39. package/dist/types/plugins/apy/apy-parser.d.ts +5 -0
  40. package/dist/types/plugins/apy/constants.d.ts +2 -0
  41. package/dist/types/plugins/apy/index.d.ts +7 -0
  42. package/dist/types/plugins/apy/pool-apy-types.d.ts +41 -0
  43. package/dist/types/plugins/apy/pool-apy-utils.d.ts +73 -0
  44. package/dist/types/plugins/apy/types.d.ts +37 -0
  45. package/dist/types/{src/rewards → rewards}/rewards/api.d.ts +10 -1
  46. package/dist/types/rewards/rewards/common.d.ts +6 -0
  47. package/dist/types/{src/rewards → rewards}/rewards/extra-apy.d.ts +4 -6
  48. package/dist/types/{src/sdk → sdk}/MultichainSDK.d.ts +10 -1
  49. package/dist/types/{src/sdk → sdk}/OnchainSDK.d.ts +7 -1
  50. package/dist/types/{src/sdk → sdk}/market/credit/types.d.ts +1 -1
  51. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/PythAccumulatorUpdateData.d.ts +12 -13
  52. package/dist/types/{src/sdk → sdk}/pools/types.d.ts +1 -2
  53. package/dist/types/{src/sdk → sdk}/router/helpers.d.ts +1 -1
  54. package/dist/types/{src/sdk → sdk}/utils/toAddress.d.ts +1 -1
  55. package/dist/types/{src/sdk → sdk}/utils/viem/getLogsPaginated.d.ts +1 -2
  56. package/dist/types/{src/sdk → sdk}/utils/viem/getLogsSafe.d.ts +1 -1
  57. package/dist/types/{src/sdk → sdk}/utils/viem/simulateWithPriceUpdates.d.ts +1 -2
  58. package/package.json +5 -8
  59. package/dist/cjs/plugins/pools-history/Pools7DAgoPlugin.js +0 -108
  60. package/dist/esm/plugins/pools-history/Pools7DAgoPlugin.js +0 -90
  61. package/dist/esm/plugins/pools-history/index.js +0 -2
  62. package/dist/types/src/plugins/pools-history/Pools7DAgoPlugin.d.ts +0 -20
  63. package/dist/types/src/plugins/pools-history/index.d.ts +0 -2
  64. package/dist/types/src/plugins/pools-history/types.d.ts +0 -9
  65. package/dist/types/src/rewards/rewards/common.d.ts +0 -16
  66. package/dist/cjs/plugins/{pools-history → apy}/package.json +0 -0
  67. package/dist/cjs/plugins/{pools-history → apy}/types.js +0 -0
  68. package/dist/esm/plugins/{pools-history → apy}/package.json +0 -0
  69. package/dist/esm/plugins/{pools-history/types.js → apy/pool-apy-types.js} +0 -0
  70. package/dist/types/{src/abi → abi}/310/configure/creditSuiteParams.d.ts +0 -0
  71. package/dist/types/{src/abi → abi}/310/configure/iCreditConfigureActions.d.ts +0 -0
  72. package/dist/types/{src/abi → abi}/310/configure/iPoolConfigureActions.d.ts +0 -0
  73. package/dist/types/{src/abi → abi}/310/configure/iPriceOracleConfigureActions.d.ts +0 -0
  74. package/dist/types/{src/abi → abi}/310/crossChainMultisig.d.ts +0 -0
  75. package/dist/types/{src/abi → abi}/310/generated.d.ts +0 -0
  76. package/dist/types/{src/abi → abi}/310/iBytecodeRepository.d.ts +0 -0
  77. package/dist/types/{src/abi → abi}/310/iLinearInterestRateModelV310.d.ts +0 -0
  78. package/dist/types/{src/abi → abi}/310/iMarketConfiguratorFactory.d.ts +0 -0
  79. package/dist/types/{src/abi → abi}/310/iPriceFeedStore.d.ts +0 -0
  80. package/dist/types/{src/abi → abi}/310/iTreasurySplitter.d.ts +0 -0
  81. package/dist/types/{src/abi → abi}/310/instanceManager.d.ts +0 -0
  82. package/dist/types/{src/abi → abi}/AccountMigrator.d.ts +0 -0
  83. package/dist/types/{src/abi → abi}/IWithdrawalCompressorV310.d.ts +0 -0
  84. package/dist/types/{src/abi → abi}/compressors/creditAccountCompressor.d.ts +0 -0
  85. package/dist/types/{src/abi → abi}/compressors/creditSuiteCompressor.d.ts +0 -0
  86. package/dist/types/{src/abi → abi}/compressors/defillamaCompressor.d.ts +0 -0
  87. package/dist/types/{src/abi → abi}/compressors/gaugeCompressor.d.ts +0 -0
  88. package/dist/types/{src/abi → abi}/compressors/marketCompressor.d.ts +0 -0
  89. package/dist/types/{src/abi → abi}/compressors/peripheryCompressor.d.ts +0 -0
  90. package/dist/types/{src/abi → abi}/compressors/priceFeedCompressor.d.ts +0 -0
  91. package/dist/types/{src/abi → abi}/compressors/rewardsCompressor.d.ts +0 -0
  92. package/dist/types/{src/abi → abi}/compressors/subcompressors/infinifiWithdrawalSubcompressor.d.ts +0 -0
  93. package/dist/types/{src/abi → abi}/compressors/subcompressors/kelpLRTWithdrawalSubcompressor.d.ts +0 -0
  94. package/dist/types/{src/abi → abi}/compressors/subcompressors/mellowFlexibleDepositSubcompressor.d.ts +0 -0
  95. package/dist/types/{src/abi → abi}/compressors/subcompressors/mellowFlexibleRedeemSubcompressor.d.ts +0 -0
  96. package/dist/types/{src/abi → abi}/compressors/subcompressors/mellowWithdrawalSubcompressor.d.ts +0 -0
  97. package/dist/types/{src/abi → abi}/compressors/subcompressors/midasWithdrawalSubcompressor.d.ts +0 -0
  98. package/dist/types/{src/abi → abi}/compressors/subcompressors/upshiftWithdrawalSubcompressor.d.ts +0 -0
  99. package/dist/types/{src/abi → abi}/compressors/tokenCompressor.d.ts +0 -0
  100. package/dist/types/{src/abi → abi}/compressors/withdrawalCompressor.d.ts +0 -0
  101. package/dist/types/{src/abi → abi}/errors.d.ts +0 -0
  102. package/dist/types/{src/abi → abi}/governance/batchesChain.d.ts +0 -0
  103. package/dist/types/{src/abi → abi}/governance/governor.d.ts +0 -0
  104. package/dist/types/{src/abi → abi}/governance/iTimeLock.d.ts +0 -0
  105. package/dist/types/{src/abi → abi}/iAirdropDistributor.d.ts +0 -0
  106. package/dist/types/{src/abi → abi}/iBaseRewardPool.d.ts +0 -0
  107. package/dist/types/{src/abi → abi}/iCurvePool.d.ts +0 -0
  108. package/dist/types/{src/abi → abi}/iERC20.d.ts +0 -0
  109. package/dist/types/{src/abi → abi}/iERC20Permit.d.ts +0 -0
  110. package/dist/types/{src/abi → abi}/iERC20ZapperDeposits.d.ts +0 -0
  111. package/dist/types/{src/abi → abi}/iETHZapperDeposits.d.ts +0 -0
  112. package/dist/types/{src/abi → abi}/iFarmingPool.d.ts +0 -0
  113. package/dist/types/{src/abi → abi}/iInterestRateModel.d.ts +0 -0
  114. package/dist/types/{src/abi → abi}/iMulticall3.d.ts +0 -0
  115. package/dist/types/{src/abi → abi}/iOffchainOracle.d.ts +0 -0
  116. package/dist/types/{src/abi → abi}/iPausable.d.ts +0 -0
  117. package/dist/types/{src/abi → abi}/iPriceFeed.d.ts +0 -0
  118. package/dist/types/{src/abi → abi}/iStateSerializer.d.ts +0 -0
  119. package/dist/types/{src/abi → abi}/iUpdatablePriceFeed.d.ts +0 -0
  120. package/dist/types/{src/abi → abi}/iVersion.d.ts +0 -0
  121. package/dist/types/{src/abi → abi}/iZapper.d.ts +0 -0
  122. package/dist/types/{src/abi → abi}/mellow.d.ts +0 -0
  123. package/dist/types/{src/abi → abi}/migration.d.ts +0 -0
  124. package/dist/types/{src/abi → abi}/router/balancerV2Worker.d.ts +0 -0
  125. package/dist/types/{src/abi → abi}/router/balancerV3Worker.d.ts +0 -0
  126. package/dist/types/{src/abi → abi}/router/balancerV3WrapperWorker.d.ts +0 -0
  127. package/dist/types/{src/abi → abi}/router/camelotV3Worker.d.ts +0 -0
  128. package/dist/types/{src/abi → abi}/router/convexWorker.d.ts +0 -0
  129. package/dist/types/{src/abi → abi}/router/curveWorker.d.ts +0 -0
  130. package/dist/types/{src/abi → abi}/router/daiUsdsWorker.d.ts +0 -0
  131. package/dist/types/{src/abi → abi}/router/equalizerRouterWorker.d.ts +0 -0
  132. package/dist/types/{src/abi → abi}/router/erc4626Worker.d.ts +0 -0
  133. package/dist/types/{src/abi → abi}/router/fluidDexWorker.d.ts +0 -0
  134. package/dist/types/{src/abi → abi}/router/gearboxRouter.d.ts +0 -0
  135. package/dist/types/{src/abi → abi}/router/infinifiWorker.d.ts +0 -0
  136. package/dist/types/{src/abi → abi}/router/infraredVaultWorker.d.ts +0 -0
  137. package/dist/types/{src/abi → abi}/router/kelpLRTDepositPoolWorker.d.ts +0 -0
  138. package/dist/types/{src/abi → abi}/router/kodiakWorker.d.ts +0 -0
  139. package/dist/types/{src/abi → abi}/router/lidoWorker.d.ts +0 -0
  140. package/dist/types/{src/abi → abi}/router/mellow4626Worker.d.ts +0 -0
  141. package/dist/types/{src/abi → abi}/router/mellowDVVWorker.d.ts +0 -0
  142. package/dist/types/{src/abi → abi}/router/mellowVaultWorker.d.ts +0 -0
  143. package/dist/types/{src/abi → abi}/router/midasWorker.d.ts +0 -0
  144. package/dist/types/{src/abi → abi}/router/pendleRouterWorker.d.ts +0 -0
  145. package/dist/types/{src/abi → abi}/router/routingManager.d.ts +0 -0
  146. package/dist/types/{src/abi → abi}/router/stakingRewardsWorker.d.ts +0 -0
  147. package/dist/types/{src/abi → abi}/router/traderJoeWorker.d.ts +0 -0
  148. package/dist/types/{src/abi → abi}/router/uniswapV2Worker.d.ts +0 -0
  149. package/dist/types/{src/abi → abi}/router/uniswapV3Worker.d.ts +0 -0
  150. package/dist/types/{src/abi → abi}/router/uniswapV4Worker.d.ts +0 -0
  151. package/dist/types/{src/abi → abi}/router/upshiftWorker.d.ts +0 -0
  152. package/dist/types/{src/abi → abi}/router/velodromeV2Worker.d.ts +0 -0
  153. package/dist/types/{src/abi → abi}/router/wstETHWorker.d.ts +0 -0
  154. package/dist/types/{src/abi → abi}/router/yearnV2Worker.d.ts +0 -0
  155. package/dist/types/{src/common-utils → common-utils}/charts/credit-manager-payload.d.ts +0 -0
  156. package/dist/types/{src/common-utils → common-utils}/charts/credit-manager.d.ts +0 -0
  157. package/dist/types/{src/common-utils → common-utils}/charts/credit-session.d.ts +0 -0
  158. package/dist/types/{src/common-utils → common-utils}/charts/credit-sessions-payload.d.ts +0 -0
  159. package/dist/types/{src/common-utils → common-utils}/charts/graph-payload.d.ts +0 -0
  160. package/dist/types/{src/common-utils → common-utils}/charts/index.d.ts +0 -0
  161. package/dist/types/{src/common-utils → common-utils}/charts/pool-payload.d.ts +0 -0
  162. package/dist/types/{src/common-utils → common-utils}/charts/pool.d.ts +0 -0
  163. package/dist/types/{src/common-utils → common-utils}/charts/token-data.d.ts +0 -0
  164. package/dist/types/{src/common-utils → common-utils}/index.d.ts +0 -0
  165. package/dist/types/{src/common-utils → common-utils}/static/index.d.ts +0 -0
  166. package/dist/types/{src/common-utils → common-utils}/static/migration-config.d.ts +0 -0
  167. package/dist/types/{src/common-utils → common-utils}/static/pool-config.d.ts +0 -0
  168. package/dist/types/{src/common-utils → common-utils}/static/strategy.d.ts +0 -0
  169. package/dist/types/{src/common-utils → common-utils}/static/trading-pair.d.ts +0 -0
  170. package/dist/types/{src/common-utils → common-utils}/utils/assets-math.d.ts +0 -0
  171. package/dist/types/{src/common-utils → common-utils}/utils/bigint-math.d.ts +0 -0
  172. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/calc-health-factor.d.ts +0 -0
  173. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/calc-overall-apy.d.ts +0 -0
  174. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/calc-quota-borrow-rate.d.ts +0 -0
  175. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/calc-relative-base-borrow-rate.d.ts +0 -0
  176. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/debt.d.ts +0 -0
  177. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/get-time-to-liquidation.d.ts +0 -0
  178. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/index.d.ts +0 -0
  179. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/liquidation-price.d.ts +0 -0
  180. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/quota-utils.d.ts +0 -0
  181. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/sort.d.ts +0 -0
  182. package/dist/types/{src/common-utils → common-utils}/utils/creditAccount/types.d.ts +0 -0
  183. package/dist/types/{src/common-utils → common-utils}/utils/index.d.ts +0 -0
  184. package/dist/types/{src/common-utils → common-utils}/utils/price-math.d.ts +0 -0
  185. package/dist/types/{src/dev → dev}/AccountOpener.d.ts +0 -0
  186. package/dist/types/{src/dev → dev}/EthCallSpy.d.ts +0 -0
  187. package/dist/types/{src/dev → dev}/abi.d.ts +0 -0
  188. package/dist/types/{src/dev → dev}/calcLiquidatableLTs.d.ts +0 -0
  189. package/dist/types/{src/dev → dev}/claimFromFaucet.d.ts +0 -0
  190. package/dist/types/{src/dev → dev}/createAnvilClient.d.ts +0 -0
  191. package/dist/types/{src/dev → dev}/detectChain.d.ts +0 -0
  192. package/dist/types/{src/dev → dev}/index.d.ts +0 -0
  193. package/dist/types/{src/dev → dev}/isOutOfSyncError.d.ts +0 -0
  194. package/dist/types/{src/dev → dev}/isRateLimitError.d.ts +0 -0
  195. package/dist/types/{src/dev → dev}/isTransientError.d.ts +0 -0
  196. package/dist/types/{src/dev → dev}/ltUtils.d.ts +0 -0
  197. package/dist/types/{src/dev → dev}/migrateFaucet.d.ts +0 -0
  198. package/dist/types/{src/dev → dev}/mint/AbstractMinter.d.ts +0 -0
  199. package/dist/types/{src/dev → dev}/mint/DealMinter.d.ts +0 -0
  200. package/dist/types/{src/dev → dev}/mint/DirectMinter.d.ts +0 -0
  201. package/dist/types/{src/dev → dev}/mint/FallbackMinter.d.ts +0 -0
  202. package/dist/types/{src/dev → dev}/mint/TransferMinter.d.ts +0 -0
  203. package/dist/types/{src/dev → dev}/mint/factory.d.ts +0 -0
  204. package/dist/types/{src/dev → dev}/mint/index.d.ts +0 -0
  205. package/dist/types/{src/dev → dev}/mint/types.d.ts +0 -0
  206. package/dist/types/{src/dev → dev}/providers.d.ts +0 -0
  207. package/dist/types/{src/dev → dev}/resilientTransport.d.ts +0 -0
  208. package/dist/types/{src/dev → dev}/transports.d.ts +0 -0
  209. package/dist/types/{src/dev → dev}/types.d.ts +0 -0
  210. package/dist/types/{src/history → history}/assembleOperations.d.ts +0 -0
  211. package/dist/types/{src/history → history}/classifyMulticallOperations.d.ts +0 -0
  212. package/dist/types/{src/history → history}/errors.d.ts +0 -0
  213. package/dist/types/{src/history → history}/extractProtocolCalls.d.ts +0 -0
  214. package/dist/types/{src/history → history}/extractTransfers.d.ts +0 -0
  215. package/dist/types/{src/history → history}/findFacadeCalls.d.ts +0 -0
  216. package/dist/types/{src/history → history}/index.d.ts +0 -0
  217. package/dist/types/{src/history → history}/inner-operations.d.ts +0 -0
  218. package/dist/types/{src/history → history}/internal-types.d.ts +0 -0
  219. package/dist/types/{src/history → history}/mapOperations.d.ts +0 -0
  220. package/dist/types/{src/history → history}/parseCreditAccountTransaction.d.ts +0 -0
  221. package/dist/types/{src/history → history}/populateContractsRegister.d.ts +0 -0
  222. package/dist/types/{src/history → history}/toLegacyOperation.d.ts +0 -0
  223. package/dist/types/{src/history → history}/trace-utils.d.ts +0 -0
  224. package/dist/types/{src/history → history}/types.d.ts +0 -0
  225. package/dist/types/{src/permissionless → permissionless}/bindings/address-provider.d.ts +0 -0
  226. package/dist/types/{src/permissionless → permissionless}/bindings/bytecode-repository.d.ts +0 -0
  227. package/dist/types/{src/permissionless → permissionless}/bindings/compressors/index.d.ts +0 -0
  228. package/dist/types/{src/permissionless → permissionless}/bindings/compressors/token-compressor.d.ts +0 -0
  229. package/dist/types/{src/permissionless → permissionless}/bindings/compressors/withdrawal-compressor.d.ts +0 -0
  230. package/dist/types/{src/permissionless → permissionless}/bindings/cross-chain-multisig.d.ts +0 -0
  231. package/dist/types/{src/permissionless → permissionless}/bindings/factory/abstract-factory.d.ts +0 -0
  232. package/dist/types/{src/permissionless → permissionless}/bindings/factory/credit-factory.d.ts +0 -0
  233. package/dist/types/{src/permissionless → permissionless}/bindings/factory/loss-policy-factory.d.ts +0 -0
  234. package/dist/types/{src/permissionless → permissionless}/bindings/factory/pool-factory.d.ts +0 -0
  235. package/dist/types/{src/permissionless → permissionless}/bindings/factory/price-oracle-factory.d.ts +0 -0
  236. package/dist/types/{src/permissionless → permissionless}/bindings/governance/batches-chain.d.ts +0 -0
  237. package/dist/types/{src/permissionless → permissionless}/bindings/governance/governor.d.ts +0 -0
  238. package/dist/types/{src/permissionless → permissionless}/bindings/governance/index.d.ts +0 -0
  239. package/dist/types/{src/permissionless → permissionless}/bindings/governance/timelock.d.ts +0 -0
  240. package/dist/types/{src/permissionless → permissionless}/bindings/governance/types.d.ts +0 -0
  241. package/dist/types/{src/permissionless → permissionless}/bindings/index.d.ts +0 -0
  242. package/dist/types/{src/permissionless → permissionless}/bindings/instance-manager.d.ts +0 -0
  243. package/dist/types/{src/permissionless → permissionless}/bindings/market-configurator-factory.d.ts +0 -0
  244. package/dist/types/{src/permissionless → permissionless}/bindings/market-configurator.d.ts +0 -0
  245. package/dist/types/{src/permissionless → permissionless}/bindings/price-feed-store.d.ts +0 -0
  246. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/balancer-stable.d.ts +0 -0
  247. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/balancer-weighted.d.ts +0 -0
  248. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/bounded.d.ts +0 -0
  249. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/composite.d.ts +0 -0
  250. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/constant.d.ts +0 -0
  251. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/curve-crypto.d.ts +0 -0
  252. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/curve-stable.d.ts +0 -0
  253. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/curve-twap.d.ts +0 -0
  254. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/curve-usd.d.ts +0 -0
  255. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/erc4626.d.ts +0 -0
  256. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/external.d.ts +0 -0
  257. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/index.d.ts +0 -0
  258. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/kodiak.d.ts +0 -0
  259. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/mellow-lrt.d.ts +0 -0
  260. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/pendle-pt-twap.d.ts +0 -0
  261. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/pyth.d.ts +0 -0
  262. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/redstone.d.ts +0 -0
  263. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/wsteth.d.ts +0 -0
  264. package/dist/types/{src/permissionless → permissionless}/bindings/pricefeeds/zero.d.ts +0 -0
  265. package/dist/types/{src/permissionless → permissionless}/bindings/router/index.d.ts +0 -0
  266. package/dist/types/{src/permissionless → permissionless}/bindings/router/routing-manager.d.ts +0 -0
  267. package/dist/types/{src/permissionless → permissionless}/bindings/treasury-splitter.d.ts +0 -0
  268. package/dist/types/{src/permissionless → permissionless}/bindings/types.d.ts +0 -0
  269. package/dist/types/{src/permissionless → permissionless}/chains/archive-transport.d.ts +0 -0
  270. package/dist/types/{src/permissionless → permissionless}/chains/chunked-log-transport.d.ts +0 -0
  271. package/dist/types/{src/permissionless → permissionless}/core/auditor.d.ts +0 -0
  272. package/dist/types/{src/permissionless → permissionless}/core/bytecode.d.ts +0 -0
  273. package/dist/types/{src/permissionless → permissionless}/core/index.d.ts +0 -0
  274. package/dist/types/{src/permissionless → permissionless}/core/pricefeed-builder.d.ts +0 -0
  275. package/dist/types/{src/permissionless → permissionless}/core/pricefeed.d.ts +0 -0
  276. package/dist/types/{src/permissionless → permissionless}/core/proposal.d.ts +0 -0
  277. package/dist/types/{src/permissionless → permissionless}/core/raw-tx.d.ts +0 -0
  278. package/dist/types/{src/permissionless → permissionless}/deployment/addresses.d.ts +0 -0
  279. package/dist/types/{src/permissionless → permissionless}/deployment/mainnet.d.ts +0 -0
  280. package/dist/types/{src/permissionless → permissionless}/index.d.ts +0 -0
  281. package/dist/types/{src/permissionless → permissionless}/plugins/index.d.ts +0 -0
  282. package/dist/types/{src/permissionless → permissionless}/plugins/irm/constructor-params-abi.d.ts +0 -0
  283. package/dist/types/{src/permissionless → permissionless}/plugins/loss-policies/constructor-params-abi.d.ts +0 -0
  284. package/dist/types/{src/permissionless → permissionless}/plugins/rate-keepers/constructor-params-abi.d.ts +0 -0
  285. package/dist/types/{src/permissionless → permissionless}/utils/abi-encoder.d.ts +0 -0
  286. package/dist/types/{src/permissionless → permissionless}/utils/block-utils.d.ts +0 -0
  287. package/dist/types/{src/permissionless → permissionless}/utils/create2.d.ts +0 -0
  288. package/dist/types/{src/permissionless → permissionless}/utils/format.d.ts +0 -0
  289. package/dist/types/{src/permissionless → permissionless}/utils/governance/batch.d.ts +0 -0
  290. package/dist/types/{src/permissionless → permissionless}/utils/governance/index.d.ts +0 -0
  291. package/dist/types/{src/permissionless → permissionless}/utils/governance/timelock-txs.d.ts +0 -0
  292. package/dist/types/{src/permissionless → permissionless}/utils/governance/types.d.ts +0 -0
  293. package/dist/types/{src/permissionless → permissionless}/utils/index.d.ts +0 -0
  294. package/dist/types/{src/permissionless → permissionless}/utils/literals.d.ts +0 -0
  295. package/dist/types/{src/permissionless → permissionless}/utils/price-update/get-price-feeds.d.ts +0 -0
  296. package/dist/types/{src/permissionless → permissionless}/utils/price-update/get-price-update-tx.d.ts +0 -0
  297. package/dist/types/{src/permissionless → permissionless}/utils/price-update/get-prices.d.ts +0 -0
  298. package/dist/types/{src/permissionless → permissionless}/utils/price-update/get-updatable-feeds.d.ts +0 -0
  299. package/dist/types/{src/permissionless → permissionless}/utils/price-update/index.d.ts +0 -0
  300. package/dist/types/{src/permissionless → permissionless}/utils/signature.d.ts +0 -0
  301. package/dist/types/{src/plugins → plugins}/accounts/AccountsPlugin.d.ts +0 -0
  302. package/dist/types/{src/plugins → plugins}/accounts/index.d.ts +0 -0
  303. package/dist/types/{src/plugins → plugins}/accounts-counter/AccountsCounterPlugin.d.ts +0 -0
  304. package/dist/types/{src/plugins → plugins}/accounts-counter/index.d.ts +0 -0
  305. package/dist/types/{src/plugins → plugins}/adapters/AdaptersPlugin.d.ts +0 -0
  306. package/dist/types/{src/plugins → plugins}/adapters/abi/actionAbi.d.ts +0 -0
  307. package/dist/types/{src/plugins → plugins}/adapters/abi/conctructorAbi.d.ts +0 -0
  308. package/dist/types/{src/plugins → plugins}/adapters/abi/conctructorAbiPatterns.d.ts +0 -0
  309. package/dist/types/{src/plugins → plugins}/adapters/abi/index.d.ts +0 -0
  310. package/dist/types/{src/plugins → plugins}/adapters/abi/targetContractAbi.d.ts +0 -0
  311. package/dist/types/{src/plugins → plugins}/adapters/abi/utils.d.ts +0 -0
  312. package/dist/types/{src/plugins → plugins}/adapters/contracts/AbstractAdapter.d.ts +0 -0
  313. package/dist/types/{src/plugins → plugins}/adapters/contracts/AccountMigratorAdapterContract.d.ts +0 -0
  314. package/dist/types/{src/plugins → plugins}/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +0 -0
  315. package/dist/types/{src/plugins → plugins}/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +0 -0
  316. package/dist/types/{src/plugins → plugins}/adapters/contracts/CamelotV3AdapterContract.d.ts +0 -0
  317. package/dist/types/{src/plugins → plugins}/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +0 -0
  318. package/dist/types/{src/plugins → plugins}/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +0 -0
  319. package/dist/types/{src/plugins → plugins}/adapters/contracts/Curve2AssetsAdapterContract.d.ts +0 -0
  320. package/dist/types/{src/plugins → plugins}/adapters/contracts/Curve3AssetsAdapterContract.d.ts +0 -0
  321. package/dist/types/{src/plugins → plugins}/adapters/contracts/Curve4AssetsAdapterContract.d.ts +0 -0
  322. package/dist/types/{src/plugins → plugins}/adapters/contracts/CurveV1AdapterDeposit.d.ts +0 -0
  323. package/dist/types/{src/plugins → plugins}/adapters/contracts/CurveV1AdapterStETHContract.d.ts +0 -0
  324. package/dist/types/{src/plugins → plugins}/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +0 -0
  325. package/dist/types/{src/plugins → plugins}/adapters/contracts/DaiUsdsAdapterContract.d.ts +0 -0
  326. package/dist/types/{src/plugins → plugins}/adapters/contracts/ERC4626AdapterContract.d.ts +0 -0
  327. package/dist/types/{src/plugins → plugins}/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +0 -0
  328. package/dist/types/{src/plugins → plugins}/adapters/contracts/FluidDexAdapterContract.d.ts +0 -0
  329. package/dist/types/{src/plugins → plugins}/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +0 -0
  330. package/dist/types/{src/plugins → plugins}/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +0 -0
  331. package/dist/types/{src/plugins → plugins}/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +0 -0
  332. package/dist/types/{src/plugins → plugins}/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +0 -0
  333. package/dist/types/{src/plugins → plugins}/adapters/contracts/LidoV1AdapterContract.d.ts +0 -0
  334. package/dist/types/{src/plugins → plugins}/adapters/contracts/MellowClaimerAdapterContract.d.ts +0 -0
  335. package/dist/types/{src/plugins → plugins}/adapters/contracts/MellowDVVAdapterContract.d.ts +0 -0
  336. package/dist/types/{src/plugins → plugins}/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +0 -0
  337. package/dist/types/{src/plugins → plugins}/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +0 -0
  338. package/dist/types/{src/plugins → plugins}/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +0 -0
  339. package/dist/types/{src/plugins → plugins}/adapters/contracts/MellowWrapperAdapterContract.d.ts +0 -0
  340. package/dist/types/{src/plugins → plugins}/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +0 -0
  341. package/dist/types/{src/plugins → plugins}/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +0 -0
  342. package/dist/types/{src/plugins → plugins}/adapters/contracts/PendleRouterAdapterContract.d.ts +0 -0
  343. package/dist/types/{src/plugins → plugins}/adapters/contracts/StakingRewardsAdapterContract.d.ts +0 -0
  344. package/dist/types/{src/plugins → plugins}/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +0 -0
  345. package/dist/types/{src/plugins → plugins}/adapters/contracts/UniswapV2AdapterContract.d.ts +0 -0
  346. package/dist/types/{src/plugins → plugins}/adapters/contracts/UniswapV3AdapterContract.d.ts +0 -0
  347. package/dist/types/{src/plugins → plugins}/adapters/contracts/UniswapV4AdapterContract.d.ts +0 -0
  348. package/dist/types/{src/plugins → plugins}/adapters/contracts/UpshiftVaultAdapterContract.d.ts +0 -0
  349. package/dist/types/{src/plugins → plugins}/adapters/contracts/VelodromeV2AdapterContract.d.ts +0 -0
  350. package/dist/types/{src/plugins → plugins}/adapters/contracts/WstETHV1AdapterContract.d.ts +0 -0
  351. package/dist/types/{src/plugins → plugins}/adapters/contracts/index.d.ts +0 -0
  352. package/dist/types/{src/plugins → plugins}/adapters/createAdapter.d.ts +0 -0
  353. package/dist/types/{src/plugins → plugins}/adapters/index.d.ts +0 -0
  354. package/dist/types/{src/plugins → plugins}/adapters/legacyAdapterOperations.d.ts +0 -0
  355. package/dist/types/{src/plugins → plugins}/adapters/transferHelpers.d.ts +0 -0
  356. package/dist/types/{src/plugins → plugins}/adapters/types.d.ts +0 -0
  357. package/dist/types/{src/plugins → plugins}/bots/BotsPlugin.d.ts +0 -0
  358. package/dist/types/{src/plugins → plugins}/bots/PartialLiquidationBotV310Contract.d.ts +0 -0
  359. package/dist/types/{src/plugins → plugins}/bots/abi/iPartialLiquidationBotV310.d.ts +0 -0
  360. package/dist/types/{src/plugins → plugins}/bots/abi/index.d.ts +0 -0
  361. package/dist/types/{src/plugins → plugins}/bots/config.d.ts +0 -0
  362. package/dist/types/{src/plugins → plugins}/bots/deserializePartialLiquidationBotParams.d.ts +0 -0
  363. package/dist/types/{src/plugins → plugins}/bots/index.d.ts +0 -0
  364. package/dist/types/{src/plugins → plugins}/bots/types.d.ts +0 -0
  365. package/dist/types/{src/plugins → plugins}/degen-distributors/DegenDistributorsPlugin.d.ts +0 -0
  366. package/dist/types/{src/plugins → plugins}/degen-distributors/index.d.ts +0 -0
  367. package/dist/types/{src/plugins → plugins}/degen-distributors/types.d.ts +0 -0
  368. package/dist/types/{src/plugins → plugins}/delayed-withdrawal/DelayedWithdrawalPlugin.d.ts +0 -0
  369. package/dist/types/{src/plugins → plugins}/delayed-withdrawal/index.d.ts +0 -0
  370. package/dist/types/{src/plugins → plugins}/delayed-withdrawal/types.d.ts +0 -0
  371. package/dist/types/{src/rewards → rewards}/apy/index.d.ts +0 -0
  372. package/dist/types/{src/rewards → rewards}/apy/output-details.d.ts +0 -0
  373. package/dist/types/{src/rewards → rewards}/apy/output.d.ts +0 -0
  374. package/dist/types/{src/rewards → rewards}/index.d.ts +0 -0
  375. package/dist/types/{src/rewards → rewards}/rewards/index.d.ts +0 -0
  376. package/dist/types/{src/rewards → rewards}/rewards/merkl-api.d.ts +0 -0
  377. package/dist/types/{src/sdk → sdk}/abi/index.d.ts +0 -0
  378. package/dist/types/{src/sdk → sdk}/abi/oracles.d.ts +0 -0
  379. package/dist/types/{src/sdk → sdk}/accounts/AbstractCreditAccountsService.d.ts +0 -0
  380. package/dist/types/{src/sdk → sdk}/accounts/CreditAccountsServiceV310.d.ts +0 -0
  381. package/dist/types/{src/sdk → sdk}/accounts/createCreditAccountService.d.ts +0 -0
  382. package/dist/types/{src/sdk → sdk}/accounts/index.d.ts +0 -0
  383. package/dist/types/{src/sdk → sdk}/accounts/multicall-utils.d.ts +0 -0
  384. package/dist/types/{src/sdk → sdk}/accounts/types.d.ts +0 -0
  385. package/dist/types/{src/sdk → sdk}/accounts/utils.d.ts +0 -0
  386. package/dist/types/{src/sdk → sdk}/base/BaseContract.d.ts +0 -0
  387. package/dist/types/{src/sdk → sdk}/base/ChainContractsRegister.d.ts +0 -0
  388. package/dist/types/{src/sdk → sdk}/base/Construct.d.ts +0 -0
  389. package/dist/types/{src/sdk → sdk}/base/PlaceholderContract.d.ts +0 -0
  390. package/dist/types/{src/sdk → sdk}/base/SDKConstruct.d.ts +0 -0
  391. package/dist/types/{src/sdk → sdk}/base/TokensMeta.d.ts +0 -0
  392. package/dist/types/{src/sdk → sdk}/base/errors.d.ts +0 -0
  393. package/dist/types/{src/sdk → sdk}/base/index.d.ts +0 -0
  394. package/dist/types/{src/sdk → sdk}/base/token-types.d.ts +0 -0
  395. package/dist/types/{src/sdk → sdk}/base/types.d.ts +0 -0
  396. package/dist/types/{src/sdk → sdk}/chain/chains.d.ts +0 -0
  397. package/dist/types/{src/sdk → sdk}/chain/detectNetwork.d.ts +0 -0
  398. package/dist/types/{src/sdk → sdk}/chain/index.d.ts +0 -0
  399. package/dist/types/{src/sdk → sdk}/constants/address-provider.d.ts +0 -0
  400. package/dist/types/{src/sdk → sdk}/constants/addresses.d.ts +0 -0
  401. package/dist/types/{src/sdk → sdk}/constants/bot-permissions.d.ts +0 -0
  402. package/dist/types/{src/sdk → sdk}/constants/index.d.ts +0 -0
  403. package/dist/types/{src/sdk → sdk}/constants/math.d.ts +0 -0
  404. package/dist/types/{src/sdk → sdk}/constants/networks.d.ts +0 -0
  405. package/dist/types/{src/sdk → sdk}/constants/periphery.d.ts +0 -0
  406. package/dist/types/{src/sdk → sdk}/constants/versions.d.ts +0 -0
  407. package/dist/types/{src/sdk → sdk}/core/AbstractAddressProviderContract.d.ts +0 -0
  408. package/dist/types/{src/sdk → sdk}/core/AddressProviderV310Contract.d.ts +0 -0
  409. package/dist/types/{src/sdk → sdk}/core/createAddressProvider.d.ts +0 -0
  410. package/dist/types/{src/sdk → sdk}/core/errors.d.ts +0 -0
  411. package/dist/types/{src/sdk → sdk}/core/index.d.ts +0 -0
  412. package/dist/types/{src/sdk → sdk}/core/types.d.ts +0 -0
  413. package/dist/types/{src/sdk → sdk}/index.d.ts +0 -0
  414. package/dist/types/{src/sdk → sdk}/market/MarketConfiguratorContract.d.ts +0 -0
  415. package/dist/types/{src/sdk → sdk}/market/MarketRegister.d.ts +0 -0
  416. package/dist/types/{src/sdk → sdk}/market/MarketSuite.d.ts +0 -0
  417. package/dist/types/{src/sdk → sdk}/market/ZapperRegister.d.ts +0 -0
  418. package/dist/types/{src/sdk → sdk}/market/adapters/PlaceholderAdapterContracts.d.ts +0 -0
  419. package/dist/types/{src/sdk → sdk}/market/adapters/createAdapter.d.ts +0 -0
  420. package/dist/types/{src/sdk → sdk}/market/adapters/index.d.ts +0 -0
  421. package/dist/types/{src/sdk → sdk}/market/adapters/types.d.ts +0 -0
  422. package/dist/types/{src/sdk → sdk}/market/credit/CreditConfiguratorV310Contract.d.ts +0 -0
  423. package/dist/types/{src/sdk → sdk}/market/credit/CreditFacadeV310BaseContract.d.ts +0 -0
  424. package/dist/types/{src/sdk → sdk}/market/credit/CreditFacadeV310Contract.d.ts +0 -0
  425. package/dist/types/{src/sdk → sdk}/market/credit/CreditManagerV310Contract.d.ts +0 -0
  426. package/dist/types/{src/sdk → sdk}/market/credit/CreditSuite.d.ts +0 -0
  427. package/dist/types/{src/sdk → sdk}/market/credit/createCreditConfigurator.d.ts +0 -0
  428. package/dist/types/{src/sdk → sdk}/market/credit/createCreditFacade.d.ts +0 -0
  429. package/dist/types/{src/sdk → sdk}/market/credit/createCreditManager.d.ts +0 -0
  430. package/dist/types/{src/sdk → sdk}/market/credit/index.d.ts +0 -0
  431. package/dist/types/{src/sdk → sdk}/market/index.d.ts +0 -0
  432. package/dist/types/{src/sdk → sdk}/market/loss-policy/AliasLossPolicyV310Contract.d.ts +0 -0
  433. package/dist/types/{src/sdk → sdk}/market/loss-policy/LossPolicyContract.d.ts +0 -0
  434. package/dist/types/{src/sdk → sdk}/market/loss-policy/constants.d.ts +0 -0
  435. package/dist/types/{src/sdk → sdk}/market/loss-policy/createLossPolicy.d.ts +0 -0
  436. package/dist/types/{src/sdk → sdk}/market/loss-policy/index.d.ts +0 -0
  437. package/dist/types/{src/sdk → sdk}/market/loss-policy/types.d.ts +0 -0
  438. package/dist/types/{src/sdk → sdk}/market/oracle/PriceFeedAnswerMap.d.ts +0 -0
  439. package/dist/types/{src/sdk → sdk}/market/oracle/PriceOracleBaseContract.d.ts +0 -0
  440. package/dist/types/{src/sdk → sdk}/market/oracle/PriceOracleV310Contract.d.ts +0 -0
  441. package/dist/types/{src/sdk → sdk}/market/oracle/createPriceOracle.d.ts +0 -0
  442. package/dist/types/{src/sdk → sdk}/market/oracle/index.d.ts +0 -0
  443. package/dist/types/{src/sdk → sdk}/market/oracle/types.d.ts +0 -0
  444. package/dist/types/{src/sdk → sdk}/market/pool/GaugeContract.d.ts +0 -0
  445. package/dist/types/{src/sdk → sdk}/market/pool/LinearInterestRateModelContract.d.ts +0 -0
  446. package/dist/types/{src/sdk → sdk}/market/pool/PoolQuotaKeeperV310Contract.d.ts +0 -0
  447. package/dist/types/{src/sdk → sdk}/market/pool/PoolSuite.d.ts +0 -0
  448. package/dist/types/{src/sdk → sdk}/market/pool/PoolV310Contract.d.ts +0 -0
  449. package/dist/types/{src/sdk → sdk}/market/pool/TumblerContract.d.ts +0 -0
  450. package/dist/types/{src/sdk → sdk}/market/pool/createInterestRateModel.d.ts +0 -0
  451. package/dist/types/{src/sdk → sdk}/market/pool/createPool.d.ts +0 -0
  452. package/dist/types/{src/sdk → sdk}/market/pool/createPoolQuotaKeeper.d.ts +0 -0
  453. package/dist/types/{src/sdk → sdk}/market/pool/createRateKeeper.d.ts +0 -0
  454. package/dist/types/{src/sdk → sdk}/market/pool/index.d.ts +0 -0
  455. package/dist/types/{src/sdk → sdk}/market/pool/types.d.ts +0 -0
  456. package/dist/types/{src/sdk → sdk}/market/pricefeeds/AbstractLPPriceFeed.d.ts +0 -0
  457. package/dist/types/{src/sdk → sdk}/market/pricefeeds/AbstractPriceFeed.d.ts +0 -0
  458. package/dist/types/{src/sdk → sdk}/market/pricefeeds/BalancerStablePriceFeed.d.ts +0 -0
  459. package/dist/types/{src/sdk → sdk}/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +0 -0
  460. package/dist/types/{src/sdk → sdk}/market/pricefeeds/BoundedPriceFeed.d.ts +0 -0
  461. package/dist/types/{src/sdk → sdk}/market/pricefeeds/CompositePriceFeed.d.ts +0 -0
  462. package/dist/types/{src/sdk → sdk}/market/pricefeeds/ConstantPriceFeed.d.ts +0 -0
  463. package/dist/types/{src/sdk → sdk}/market/pricefeeds/CurveCryptoPriceFeed.d.ts +0 -0
  464. package/dist/types/{src/sdk → sdk}/market/pricefeeds/CurveStablePriceFeed.d.ts +0 -0
  465. package/dist/types/{src/sdk → sdk}/market/pricefeeds/CurveUSDPriceFeed.d.ts +0 -0
  466. package/dist/types/{src/sdk → sdk}/market/pricefeeds/Erc4626PriceFeed.d.ts +0 -0
  467. package/dist/types/{src/sdk → sdk}/market/pricefeeds/ExternalPriceFeed.d.ts +0 -0
  468. package/dist/types/{src/sdk → sdk}/market/pricefeeds/MellowLRTPriceFeed.d.ts +0 -0
  469. package/dist/types/{src/sdk → sdk}/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +0 -0
  470. package/dist/types/{src/sdk → sdk}/market/pricefeeds/PriceFeedRef.d.ts +0 -0
  471. package/dist/types/{src/sdk → sdk}/market/pricefeeds/PriceFeedsRegister.d.ts +0 -0
  472. package/dist/types/{src/sdk → sdk}/market/pricefeeds/PythPriceFeed.d.ts +0 -0
  473. package/dist/types/{src/sdk → sdk}/market/pricefeeds/RedstonePriceFeed.d.ts +0 -0
  474. package/dist/types/{src/sdk → sdk}/market/pricefeeds/WstETHPriceFeed.d.ts +0 -0
  475. package/dist/types/{src/sdk → sdk}/market/pricefeeds/YearnPriceFeed.d.ts +0 -0
  476. package/dist/types/{src/sdk → sdk}/market/pricefeeds/ZeroPriceFeed.d.ts +0 -0
  477. package/dist/types/{src/sdk → sdk}/market/pricefeeds/getRawPriceUpdates.d.ts +0 -0
  478. package/dist/types/{src/sdk → sdk}/market/pricefeeds/index.d.ts +0 -0
  479. package/dist/types/{src/sdk → sdk}/market/pricefeeds/isUpdatablePriceFeed.d.ts +0 -0
  480. package/dist/types/{src/sdk → sdk}/market/pricefeeds/types.d.ts +0 -0
  481. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/PriceUpdateTx.d.ts +0 -0
  482. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/PriceUpdatesCache.d.ts +0 -0
  483. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/PythUpdater.d.ts +0 -0
  484. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/RedstoneUpdater.d.ts +0 -0
  485. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/fetchPythPayloads.d.ts +0 -0
  486. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/fetchRedstonePayloads.d.ts +0 -0
  487. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/index.d.ts +0 -0
  488. package/dist/types/{src/sdk → sdk}/market/pricefeeds/updates/types.d.ts +0 -0
  489. package/dist/types/{src/sdk → sdk}/market/types.d.ts +0 -0
  490. package/dist/types/{src/sdk → sdk}/options.d.ts +0 -0
  491. package/dist/types/{src/sdk → sdk}/plugins/BasePlugin.d.ts +0 -0
  492. package/dist/types/{src/sdk → sdk}/plugins/errors.d.ts +0 -0
  493. package/dist/types/{src/sdk → sdk}/plugins/index.d.ts +0 -0
  494. package/dist/types/{src/sdk → sdk}/plugins/types.d.ts +0 -0
  495. package/dist/types/{src/sdk → sdk}/pools/PoolService.d.ts +0 -0
  496. package/dist/types/{src/sdk → sdk}/pools/index.d.ts +0 -0
  497. package/dist/types/{src/sdk → sdk}/router/AbstractRouterContract.d.ts +0 -0
  498. package/dist/types/{src/sdk → sdk}/router/RouterV310Contract.d.ts +0 -0
  499. package/dist/types/{src/sdk → sdk}/router/createRouter.d.ts +0 -0
  500. package/dist/types/{src/sdk → sdk}/router/index.d.ts +0 -0
  501. package/dist/types/{src/sdk → sdk}/router/types.d.ts +0 -0
  502. package/dist/types/{src/sdk → sdk}/types/index.d.ts +0 -0
  503. package/dist/types/{src/sdk → sdk}/types/logger.d.ts +0 -0
  504. package/dist/types/{src/sdk → sdk}/types/state-human.d.ts +0 -0
  505. package/dist/types/{src/sdk → sdk}/types/state.d.ts +0 -0
  506. package/dist/types/{src/sdk → sdk}/types/transactions.d.ts +0 -0
  507. package/dist/types/{src/sdk → sdk}/utils/AddressMap.d.ts +0 -0
  508. package/dist/types/{src/sdk → sdk}/utils/AddressSet.d.ts +0 -0
  509. package/dist/types/{src/sdk → sdk}/utils/abi-decode.d.ts +0 -0
  510. package/dist/types/{src/sdk → sdk}/utils/bytes32ToString.d.ts +0 -0
  511. package/dist/types/{src/sdk → sdk}/utils/childLogger.d.ts +0 -0
  512. package/dist/types/{src/sdk → sdk}/utils/createRawTx.d.ts +0 -0
  513. package/dist/types/{src/sdk → sdk}/utils/etherscan.d.ts +0 -0
  514. package/dist/types/{src/sdk → sdk}/utils/filterDust.d.ts +0 -0
  515. package/dist/types/{src/sdk → sdk}/utils/formatter.d.ts +1 -1
  516. /package/dist/types/{src/sdk → sdk}/utils/hex.d.ts +0 -0
  517. /package/dist/types/{src/sdk → sdk}/utils/index.d.ts +0 -0
  518. /package/dist/types/{src/sdk → sdk}/utils/internal/Hooks.d.ts +0 -0
  519. /package/dist/types/{src/sdk → sdk}/utils/internal/index.d.ts +0 -0
  520. /package/dist/types/{src/sdk → sdk}/utils/isDust.d.ts +0 -0
  521. /package/dist/types/{src/sdk → sdk}/utils/json.d.ts +0 -0
  522. /package/dist/types/{src/sdk → sdk}/utils/mappers.d.ts +0 -0
  523. /package/dist/types/{src/sdk → sdk}/utils/retry.d.ts +0 -0
  524. /package/dist/types/{src/sdk → sdk}/utils/type-utils.d.ts +0 -0
  525. /package/dist/types/{src/sdk → sdk}/utils/viem/cast.d.ts +0 -0
  526. /package/dist/types/{src/sdk → sdk}/utils/viem/index.d.ts +0 -0
  527. /package/dist/types/{src/sdk → sdk}/utils/viem/sendRawTx.d.ts +0 -0
  528. /package/dist/types/{src/sdk → sdk}/utils/viem/simulateMulticall.d.ts +0 -0
  529. /package/dist/types/{src/sdk → sdk}/utils/viem/watchBlocksAsync.d.ts +0 -0
  530. /package/dist/types/{src/sdk → sdk}/utils/zod.d.ts +0 -0
@@ -0,0 +1,255 @@
1
+ import { marketCompressorAbi } from "../../abi/compressors/marketCompressor.js";
2
+ import { PoolPointsAPI } from "../../rewards/rewards/extra-apy.js";
3
+ import {
4
+ AddressMap,
5
+ AP_MARKET_COMPRESSOR,
6
+ BasePlugin,
7
+ BLOCKS_PER_WEEK_BY_NETWORK,
8
+ PERCENTAGE_DECIMALS,
9
+ VERSION_RANGE_310
10
+ } from "../../sdk/index.js";
11
+ import { rayToNumber } from "../../sdk/utils/formatter.js";
12
+ import { hexEq } from "../../sdk/utils/hex.js";
13
+ import { ApyOutputCache } from "./apy-cache.js";
14
+ import { parseGearStats, parseNetworkApy } from "./apy-parser.js";
15
+ import { APY_STATE_CACHE_URL, DEFAULT_APY_INTERVAL_MS } from "./constants.js";
16
+ import {
17
+ calculatePoolFullAPY,
18
+ calculatePoolFullAPY7DAgo,
19
+ calculatePoolPoints,
20
+ calculateSupplyApy7d,
21
+ getPoolExtraAPY
22
+ } from "./pool-apy-utils.js";
23
+ const MAP_LABEL = "pools7DAgo";
24
+ class ApyPlugin extends BasePlugin {
25
+ #apyUrl;
26
+ #cacheTtlMs;
27
+ #pools7DAgo;
28
+ #apySnapshot;
29
+ constructor(loadOnAttach = false, options) {
30
+ super(loadOnAttach);
31
+ this.#apyUrl = options?.apyUrl ?? APY_STATE_CACHE_URL;
32
+ this.#cacheTtlMs = options?.cacheTtlMs ?? DEFAULT_APY_INTERVAL_MS;
33
+ }
34
+ // ---------------------------------------------------------------------------
35
+ // Load — single entry point for all data (on-chain + state-cache)
36
+ // ---------------------------------------------------------------------------
37
+ async load(force, loadOptions) {
38
+ if (!force && this.loaded) {
39
+ return this.state;
40
+ }
41
+ const targetBlock = this.sdk.currentBlock - BLOCKS_PER_WEEK_BY_NETWORK[this.sdk.networkType];
42
+ const [marketCompressorAddress] = this.sdk.addressProvider.mustGetLatest(
43
+ AP_MARKET_COMPRESSOR,
44
+ VERSION_RANGE_310
45
+ );
46
+ this.#logger?.debug(
47
+ `loading pools 7d ago with market compressor ${marketCompressorAddress}`
48
+ );
49
+ const markets = this.sdk.marketRegister.markets;
50
+ const shouldLoadPools7DAgo = !this.#pools7DAgo || !!loadOptions?.loadPools7DAgo;
51
+ const [multicallResp, apySnapshot] = await Promise.all([
52
+ shouldLoadPools7DAgo ? this.client.multicall({
53
+ allowFailure: true,
54
+ contracts: markets.map(
55
+ (m) => ({
56
+ address: marketCompressorAddress,
57
+ abi: marketCompressorAbi,
58
+ functionName: "getPoolState",
59
+ args: [m.pool.pool.address]
60
+ })
61
+ ),
62
+ blockNumber: targetBlock > 0n ? targetBlock : void 0,
63
+ batchSize: 0
64
+ }) : null,
65
+ this.#fetchApy()
66
+ ]);
67
+ if (multicallResp !== null) {
68
+ this.#pools7DAgo = new AddressMap(void 0, MAP_LABEL);
69
+ multicallResp.forEach((r, index) => {
70
+ const m = markets[index];
71
+ const cfg = m.configurator.address;
72
+ const pool = m.pool.pool.address;
73
+ if (r.status === "success") {
74
+ this.#pools7DAgo?.upsert(m.pool.pool.address, {
75
+ dieselRate: r.result.dieselRate,
76
+ pool
77
+ });
78
+ } else {
79
+ this.#logger?.error(
80
+ `failed to load pools 7d ago for market configurator ${this.labelAddress(cfg)} and pool ${this.labelAddress(pool)}: ${r.error}`
81
+ );
82
+ }
83
+ });
84
+ }
85
+ if (apySnapshot) {
86
+ this.#apySnapshot = apySnapshot;
87
+ }
88
+ return this.state;
89
+ }
90
+ get loaded() {
91
+ return !!this.#pools7DAgo && !!this.#apySnapshot;
92
+ }
93
+ // ---------------------------------------------------------------------------
94
+ // Accessors
95
+ // ---------------------------------------------------------------------------
96
+ /**
97
+ * @throws if plugin is not loaded
98
+ */
99
+ get pools7DAgo() {
100
+ if (!this.#pools7DAgo) {
101
+ throw new Error("apy plugin not loaded");
102
+ }
103
+ return this.#pools7DAgo;
104
+ }
105
+ /**
106
+ * @throws if plugin is not loaded
107
+ */
108
+ get apySnapshot() {
109
+ if (!this.#apySnapshot) {
110
+ throw new Error("apy plugin not loaded");
111
+ }
112
+ return this.#apySnapshot;
113
+ }
114
+ // ---------------------------------------------------------------------------
115
+ // Aggregated APY / points
116
+ // ---------------------------------------------------------------------------
117
+ /**
118
+ * Computes per-pool APY (current + 7d-ago) and points for all markets.
119
+ *
120
+ * @throws if plugin is not loaded
121
+ */
122
+ getPoolsAPY() {
123
+ if (!this.loaded) {
124
+ throw new Error("apy plugin not loaded");
125
+ }
126
+ const markets = this.sdk.marketRegister.markets;
127
+ const { apy } = this.apySnapshot;
128
+ const totalTokenBalances = {};
129
+ const poolPointsBase = apy.poolRewardsList && Object.keys(apy.poolRewardsList).length > 0 ? PoolPointsAPI.getPointsByPool({
130
+ poolRewards: apy.poolRewardsList,
131
+ totalTokenBalances,
132
+ pools: markets,
133
+ tokensList: this.sdk.tokensMeta
134
+ }) : {};
135
+ const data = {};
136
+ const data7DAgo = {};
137
+ const points = {};
138
+ for (const market of markets) {
139
+ const pool = market.pool.pool;
140
+ const poolAddr = pool.address.toLowerCase();
141
+ const underlyingLc = pool.underlying.toLowerCase();
142
+ const depositAPY = rayToNumber(pool.supplyRate) * Number(PERCENTAGE_DECIMALS);
143
+ const underlyingAPY = apy.apyList?.[underlyingLc] ?? apy.apyList?.[pool.underlying] ?? 0;
144
+ const lookupAddresses = this.#getExtraAPYLookupAddresses(poolAddr);
145
+ const extraAPY = getPoolExtraAPY(lookupAddresses, apy.poolExtraAPYList);
146
+ const currentExternalList = apy.poolExternalAPYList?.[poolAddr];
147
+ const poolAPY = calculatePoolFullAPY({
148
+ depositAPY,
149
+ underlyingAPY,
150
+ extraAPY,
151
+ currentExternalList
152
+ });
153
+ data[poolAddr] = poolAPY;
154
+ const pool7DAgo = this.#pools7DAgo?.get(poolAddr);
155
+ const supplyAPY7DAgo = pool7DAgo ? calculateSupplyApy7d(
156
+ pool.dieselRate,
157
+ pool.supplyRate,
158
+ pool7DAgo.dieselRate
159
+ ) : void 0;
160
+ data7DAgo[poolAddr] = calculatePoolFullAPY7DAgo({
161
+ supplyAPY7DAgo,
162
+ depositAPY,
163
+ poolAPY
164
+ });
165
+ const poolTokenMeta = this.sdk.tokensMeta.get(pool.underlying);
166
+ points[poolAddr] = calculatePoolPoints({
167
+ poolTokenSymbol: poolTokenMeta?.symbol,
168
+ points: poolPointsBase[poolAddr],
169
+ tokensList: this.sdk.tokensMeta
170
+ });
171
+ }
172
+ return { data, data7DAgo, pointsBase: poolPointsBase, points };
173
+ }
174
+ // ---------------------------------------------------------------------------
175
+ // Plugin lifecycle
176
+ // ---------------------------------------------------------------------------
177
+ async syncState() {
178
+ await this.load();
179
+ }
180
+ stateHuman(_) {
181
+ return this.pools7DAgo.values().flatMap((p) => ({
182
+ address: p.pool,
183
+ version: this.version,
184
+ dieselRate: p.dieselRate
185
+ }));
186
+ }
187
+ get state() {
188
+ return {
189
+ pools7DAgo: this.pools7DAgo.asRecord(),
190
+ apySnapshot: this.apySnapshot
191
+ };
192
+ }
193
+ hydrate(state) {
194
+ this.#pools7DAgo = new AddressMap(
195
+ Object.entries(state.pools7DAgo),
196
+ MAP_LABEL
197
+ );
198
+ this.#apySnapshot = state.apySnapshot;
199
+ }
200
+ // ---------------------------------------------------------------------------
201
+ // Internal
202
+ // ---------------------------------------------------------------------------
203
+ async #fetchApy() {
204
+ try {
205
+ const cache = ApyOutputCache.get(
206
+ this.#apyUrl,
207
+ this.#cacheTtlMs,
208
+ this.#logger
209
+ );
210
+ const output = await cache.fetch();
211
+ if (!output) return void 0;
212
+ const chainData = output.chains[this.sdk.chainId];
213
+ if (!chainData) {
214
+ this.#logger?.debug(
215
+ `apy state-cache: no data for chainId ${this.sdk.chainId}`
216
+ );
217
+ return void 0;
218
+ }
219
+ const apy = parseNetworkApy(chainData.tokens, chainData.pools);
220
+ if (!apy) return void 0;
221
+ return {
222
+ apy,
223
+ gearStats: parseGearStats(output),
224
+ timestamp: output.timestamp
225
+ };
226
+ } catch (e) {
227
+ this.#logger?.error(e, "failed to fetch apy state-cache");
228
+ return void 0;
229
+ }
230
+ }
231
+ /**
232
+ * Collects addresses to look up in poolExtraAPYList for a given pool.
233
+ * Includes pool address (= diesel token) + any staked diesel token
234
+ * outputs discovered from zappers.
235
+ */
236
+ #getExtraAPYLookupAddresses(poolAddr) {
237
+ const addresses = [poolAddr];
238
+ try {
239
+ const zappers = this.sdk.marketRegister.poolZappers(poolAddr);
240
+ for (const z of zappers) {
241
+ if (!hexEq(z.tokenOut.addr, poolAddr)) {
242
+ addresses.push(z.tokenOut.addr);
243
+ }
244
+ }
245
+ } catch {
246
+ }
247
+ return addresses;
248
+ }
249
+ get #logger() {
250
+ return this.logger;
251
+ }
252
+ }
253
+ export {
254
+ ApyPlugin
255
+ };
@@ -0,0 +1,86 @@
1
+ import axios from "axios";
2
+ class ApyOutputCache {
3
+ static #instances = /* @__PURE__ */ new Map();
4
+ #url;
5
+ #ttlMs;
6
+ #cache;
7
+ #pending;
8
+ #logger;
9
+ constructor(url, ttlMs, logger) {
10
+ this.#url = url;
11
+ this.#ttlMs = ttlMs;
12
+ this.#logger = logger;
13
+ }
14
+ /**
15
+ * Returns a shared cache instance for the given URL.
16
+ * The same instance is reused across all callers with identical URL.
17
+ */
18
+ static get(url, ttlMs, logger) {
19
+ let instance = ApyOutputCache.#instances.get(url);
20
+ if (!instance) {
21
+ instance = new ApyOutputCache(url, ttlMs, logger);
22
+ ApyOutputCache.#instances.set(url, instance);
23
+ }
24
+ if (logger) {
25
+ instance.#logger = logger;
26
+ }
27
+ return instance;
28
+ }
29
+ /**
30
+ * Returns cached Output if fresh, otherwise fetches from the network.
31
+ * Concurrent calls are de-duplicated.
32
+ */
33
+ async fetch() {
34
+ if (this.#cache && Date.now() - this.#cache.fetchedAt < this.#ttlMs) {
35
+ this.#logger?.debug("apy cache: TTL still valid, returning cached data");
36
+ return this.#cache.data;
37
+ }
38
+ if (this.#pending) {
39
+ this.#logger?.debug("apy cache: request in flight, waiting");
40
+ return this.#pending;
41
+ }
42
+ this.#pending = this.#doFetch();
43
+ try {
44
+ return await this.#pending;
45
+ } finally {
46
+ this.#pending = void 0;
47
+ }
48
+ }
49
+ async #doFetch() {
50
+ try {
51
+ const headers = {};
52
+ if (this.#cache?.etag) {
53
+ headers["If-None-Match"] = this.#cache.etag;
54
+ }
55
+ const response = await axios.get(this.#url, {
56
+ headers,
57
+ validateStatus: (status) => status === 200 || status === 304
58
+ });
59
+ if (response.status === 304 && this.#cache) {
60
+ this.#cache.fetchedAt = Date.now();
61
+ this.#logger?.debug("apy cache: 304 Not Modified, extended TTL");
62
+ return this.#cache.data;
63
+ }
64
+ const etag = response.headers["etag"];
65
+ this.#cache = {
66
+ data: response.data,
67
+ etag,
68
+ fetchedAt: Date.now()
69
+ };
70
+ this.#logger?.debug(
71
+ `apy cache: fetched fresh data (timestamp: ${response.data.timestamp})`
72
+ );
73
+ return response.data;
74
+ } catch (e) {
75
+ this.#logger?.error(e, "apy cache: fetch failed");
76
+ return this.#cache?.data;
77
+ }
78
+ }
79
+ /** Evicts all cached entries. Mainly useful for tests. */
80
+ static clearAll() {
81
+ ApyOutputCache.#instances.clear();
82
+ }
83
+ }
84
+ export {
85
+ ApyOutputCache
86
+ };
@@ -0,0 +1,143 @@
1
+ import { PERCENTAGE_FACTOR } from "../../sdk/index.js";
2
+ function numberToAPY(baseApy) {
3
+ return Math.round(baseApy * Number(PERCENTAGE_FACTOR));
4
+ }
5
+ function parseGearStats(output) {
6
+ const d = output.gearApy?.status === "ok" ? output.gearApy.data : void 0;
7
+ if (!d) return null;
8
+ return {
9
+ base: numberToAPY(d.base ?? 0),
10
+ crv: numberToAPY(d.crv ?? 0),
11
+ gear: numberToAPY(d.gear ?? 0),
12
+ gearPrice: d.gearPrice ?? 0
13
+ };
14
+ }
15
+ function parseNetworkApy(apyResp, poolResp) {
16
+ const baseAPYList = {};
17
+ const extraCollateralAPYList = {};
18
+ const basePointsList = {};
19
+ const extraCollateralPointsList = {};
20
+ const tokenExtraRewardsList = {};
21
+ const apyData = apyResp?.status === "ok" ? apyResp.data : void 0;
22
+ for (const d of apyData ?? []) {
23
+ const tokenAddress = d.address.toLowerCase();
24
+ const tokenSymbol = d.symbol;
25
+ const apy = d.rewards.apy?.[0];
26
+ if (apy) {
27
+ baseAPYList[tokenAddress] = numberToAPY(apy.value ?? 0);
28
+ }
29
+ const points = d.rewards.points?.[0];
30
+ if (points) {
31
+ basePointsList[tokenAddress] = {
32
+ address: tokenAddress,
33
+ symbol: tokenSymbol,
34
+ rewards: points.rewards.map((p) => ({
35
+ ...p,
36
+ multiplier: p.multiplier === "soon" ? p.multiplier : BigInt(p.multiplier || 0)
37
+ })),
38
+ debtRewards: points.debtRewards?.map((p) => ({
39
+ ...p,
40
+ cm: (p.cm || "").toLowerCase(),
41
+ multiplier: p.multiplier === "soon" ? p.multiplier : BigInt(p.multiplier || 0)
42
+ }))
43
+ };
44
+ }
45
+ const extraRewards = d.rewards.extraRewards;
46
+ if (extraRewards && extraRewards.length > 0) {
47
+ tokenExtraRewardsList[tokenAddress] = extraRewards.map((r) => ({
48
+ address: tokenAddress,
49
+ symbol: r.rewardSymbol,
50
+ rewardToken: r.rewardToken.toLowerCase(),
51
+ rewardSymbol: r.rewardSymbol,
52
+ token: r.rewardToken.toLowerCase(),
53
+ finished: BigInt(r.finished || 0),
54
+ duration: BigInt(r.duration || 0),
55
+ reward: BigInt(r.reward || 0),
56
+ balance: BigInt(r.balance || 0)
57
+ }));
58
+ }
59
+ const ecApy = d.rewards.extraCollateralAPY;
60
+ if (ecApy && ecApy.length > 0) {
61
+ for (const ea of ecApy) {
62
+ const pool = ea.pool.toLowerCase();
63
+ if (!extraCollateralAPYList[pool]) extraCollateralAPYList[pool] = {};
64
+ extraCollateralAPYList[pool][tokenAddress] = {
65
+ ...ea,
66
+ address: tokenAddress,
67
+ symbol: tokenSymbol,
68
+ pool,
69
+ value: numberToAPY(ea.value ?? 0)
70
+ };
71
+ }
72
+ }
73
+ const ecPoints = d.rewards.extraCollateralPoints;
74
+ if (ecPoints && ecPoints.length > 0) {
75
+ for (const ea of ecPoints) {
76
+ const pool = ea.pool.toLowerCase();
77
+ if (!extraCollateralPointsList[pool])
78
+ extraCollateralPointsList[pool] = {};
79
+ extraCollateralPointsList[pool][tokenAddress] = {
80
+ address: tokenAddress,
81
+ symbol: tokenSymbol,
82
+ rewards: ea.rewards.map((p) => ({
83
+ ...p,
84
+ multiplier: p.multiplier === "soon" ? p.multiplier : BigInt(p.multiplier || 0)
85
+ })),
86
+ debtRewards: ea.debtRewards?.map((p) => ({
87
+ ...p,
88
+ cm: (p.cm || "").toLowerCase(),
89
+ multiplier: p.multiplier === "soon" ? p.multiplier : BigInt(p.multiplier || 0)
90
+ }))
91
+ };
92
+ }
93
+ }
94
+ }
95
+ const poolRewardsList = {};
96
+ const poolExternalAPYList = {};
97
+ const poolExtraAPYList = {};
98
+ const poolData = poolResp?.status === "ok" ? poolResp.data : void 0;
99
+ for (const r of poolData ?? []) {
100
+ const pool = (r.pool || "").toLowerCase();
101
+ const points = r.rewards.points;
102
+ if (points && points.length > 0) {
103
+ poolRewardsList[pool] = points.map((p) => ({
104
+ ...p,
105
+ token: p.token.toLowerCase(),
106
+ pool,
107
+ amount: BigInt(p.amount || 0)
108
+ }));
109
+ }
110
+ const externalAPY = r.rewards.externalAPY;
111
+ if (externalAPY && externalAPY.length > 0) {
112
+ poolExternalAPYList[pool] = externalAPY.map((ex) => ({ ...ex, pool }));
113
+ }
114
+ const extraAPY = r.rewards.extraAPY;
115
+ if (extraAPY && extraAPY.length > 0) {
116
+ poolExtraAPYList[extraAPY[0].token.toLowerCase()] = extraAPY.map((ex) => ({
117
+ ...ex,
118
+ token: ex.token.toLowerCase(),
119
+ rewardToken: ex.rewardToken.toLowerCase()
120
+ }));
121
+ }
122
+ }
123
+ const allResponses = [apyResp, poolResp];
124
+ const allErrors = allResponses.filter((r) => r?.status === "error");
125
+ if (allResponses.length > 0 && allErrors.length === allResponses.length) {
126
+ return void 0;
127
+ }
128
+ return {
129
+ apyList: Object.keys(baseAPYList).length > 0 ? baseAPYList : void 0,
130
+ extraCollateralAPYList: Object.keys(extraCollateralAPYList).length > 0 ? extraCollateralAPYList : void 0,
131
+ pointsList: Object.keys(basePointsList).length > 0 ? basePointsList : void 0,
132
+ extraCollateralPointsList: Object.keys(extraCollateralPointsList).length > 0 ? extraCollateralPointsList : void 0,
133
+ poolRewardsList: Object.keys(poolRewardsList).length > 0 ? poolRewardsList : void 0,
134
+ tokenExtraRewardsList: Object.keys(tokenExtraRewardsList).length > 0 ? tokenExtraRewardsList : void 0,
135
+ poolExternalAPYList: Object.keys(poolExternalAPYList).length > 0 ? poolExternalAPYList : void 0,
136
+ poolExtraAPYList: Object.keys(poolExtraAPYList).length > 0 ? poolExtraAPYList : void 0
137
+ };
138
+ }
139
+ export {
140
+ numberToAPY,
141
+ parseGearStats,
142
+ parseNetworkApy
143
+ };
@@ -0,0 +1,6 @@
1
+ const APY_STATE_CACHE_URL = "https://state-cache.gearbox.foundation/apy-server/latest.json";
2
+ const DEFAULT_APY_INTERVAL_MS = 10 * 60 * 1e3;
3
+ export {
4
+ APY_STATE_CACHE_URL,
5
+ DEFAULT_APY_INTERVAL_MS
6
+ };
@@ -0,0 +1,7 @@
1
+ export * from "./ApyPlugin.js";
2
+ export * from "./apy-cache.js";
3
+ export * from "./apy-parser.js";
4
+ export * from "./constants.js";
5
+ export * from "./pool-apy-types.js";
6
+ export * from "./pool-apy-utils.js";
7
+ export * from "./types.js";
@@ -0,0 +1,113 @@
1
+ import { PERCENTAGE_FACTOR, RAY } from "../../sdk/constants/index.js";
2
+ import { formatBN, rayToNumber } from "../../sdk/utils/formatter.js";
3
+ const SCALE = 1000000n;
4
+ const WEEKS_PER_YEAR = 54n;
5
+ function getPoolExtraAPY(lookupAddresses, poolExtraAPYList) {
6
+ if (!poolExtraAPYList) return [];
7
+ const result = [];
8
+ for (const addr of lookupAddresses) {
9
+ const extra = poolExtraAPYList[addr.toLowerCase()];
10
+ if (extra) {
11
+ result.push(...extra);
12
+ }
13
+ }
14
+ return result;
15
+ }
16
+ function calculateSupplyApy7d(currentDieselRate, currentSupplyRate, dieselRate7DAgo) {
17
+ if (dieselRate7DAgo > currentDieselRate) {
18
+ return rayToNumber(currentSupplyRate * SCALE) / Number(PERCENTAGE_FACTOR);
19
+ }
20
+ const apy = (currentDieselRate * RAY / dieselRate7DAgo - RAY) * WEEKS_PER_YEAR;
21
+ return rayToNumber(apy * SCALE) / Number(PERCENTAGE_FACTOR);
22
+ }
23
+ function calculatePoolFullAPY({
24
+ depositAPY,
25
+ underlyingAPY,
26
+ extraAPY,
27
+ currentExternalList
28
+ }) {
29
+ const baseAPY = [
30
+ { type: "supplyAPY", apy: depositAPY },
31
+ ...underlyingAPY > 0 ? [
32
+ {
33
+ type: "tokenYield",
34
+ apy: Number(underlyingAPY) / Number(PERCENTAGE_FACTOR)
35
+ }
36
+ ] : []
37
+ ];
38
+ const filteredExtra = [...extraAPY ?? []].filter((r) => r.apy > 0);
39
+ const baseAPYTotal = baseAPY.reduce((s, r) => s + (r.apy || 0), 0);
40
+ const extraAPYTotal = filteredExtra.reduce((s, r) => s + (r.apy || 0), 0);
41
+ const total = baseAPYTotal + extraAPYTotal;
42
+ const externalAPY = resolveExternalAPY(currentExternalList, total);
43
+ return {
44
+ totalAPY: total,
45
+ baseAPY,
46
+ extraAPY: filteredExtra,
47
+ extraAPYTotal,
48
+ externalAPY
49
+ };
50
+ }
51
+ function resolveExternalAPY(list, baseTotal) {
52
+ const first = list?.[0];
53
+ if (!first) return void 0;
54
+ return {
55
+ ...first,
56
+ totalValue: baseTotal + first.value
57
+ };
58
+ }
59
+ function calculatePoolFullAPY7DAgo({
60
+ supplyAPY7DAgo,
61
+ depositAPY,
62
+ poolAPY
63
+ }) {
64
+ const {
65
+ baseAPY = [],
66
+ extraAPYTotal = 0,
67
+ extraAPY = [],
68
+ externalAPY
69
+ } = poolAPY ?? {};
70
+ const base = [
71
+ { apy: supplyAPY7DAgo || depositAPY, type: "supplyAPY" },
72
+ ...baseAPY.filter((r) => r.type !== "supplyAPY")
73
+ ];
74
+ const baseTotal = base.reduce((acc, r) => acc + r.apy, 0);
75
+ const total = baseTotal + extraAPYTotal;
76
+ return {
77
+ totalAPY: total,
78
+ extraAPYTotal,
79
+ baseAPY: base,
80
+ extraAPY,
81
+ externalAPY,
82
+ loading7DAgo: supplyAPY7DAgo === void 0
83
+ };
84
+ }
85
+ function calculatePoolPoints({
86
+ poolTokenSymbol,
87
+ points,
88
+ tokensList
89
+ }) {
90
+ return points?.map(({ info, points: pts }) => {
91
+ const { decimals = 18 } = tokensList.get(info.token) || {};
92
+ const amount = formatBN(pts, decimals);
93
+ const { name = "Points", duration } = info ?? {};
94
+ return {
95
+ reward: info,
96
+ name,
97
+ amount,
98
+ tokenTitle: poolTokenSymbol,
99
+ fullTip: [
100
+ `${amount} ${name}`,
101
+ ...duration ? [duration] : [],
102
+ ...poolTokenSymbol ? [poolTokenSymbol] : []
103
+ ].join(" per ")
104
+ };
105
+ });
106
+ }
107
+ export {
108
+ calculatePoolFullAPY,
109
+ calculatePoolFullAPY7DAgo,
110
+ calculatePoolPoints,
111
+ calculateSupplyApy7d,
112
+ getPoolExtraAPY
113
+ };
File without changes
@@ -36,7 +36,7 @@ class PoolPointsAPI {
36
36
  }
37
37
  static async getTokenTotal(token, network, tokensList) {
38
38
  const chainId = chains[network]?.id;
39
- const url = `https://charts-server.fly.dev/api/getBalanceAt?asset=${token}&chainId=${chainId}`;
39
+ const url = `https://api.gearbox.foundation/v1/getBalanceAt?asset=${token}&chainId=${chainId}`;
40
40
  const result = await axios.get(url);
41
41
  const balance = result.data.result.reduce(
42
42
  (sum, r) => r.effective_balance + sum,
@@ -52,11 +52,13 @@ class PoolPointsAPI {
52
52
  tokensList
53
53
  }) {
54
54
  const r = pools.reduce((acc, p) => {
55
- const pointsInfo = poolRewards[p.address] || [];
55
+ const poolAddress = p.pool.pool.address.toLowerCase();
56
+ const pointsInfo = poolRewards[poolAddress] || [];
56
57
  const poolPointsList = pointsInfo.reduce(
57
58
  (acc2, pointsInfo2) => {
58
- const { address: tokenAddress } = tokensList[pointsInfo2.token] || {};
59
- const tokenBalance = totalTokenBalances[tokenAddress || ""];
59
+ const { addr: tokenAddress } = tokensList.get(pointsInfo2.token) || {};
60
+ const tokenAddressLower = (tokenAddress || "").toLowerCase();
61
+ const tokenBalance = totalTokenBalances[tokenAddressLower];
60
62
  const points = PoolPointsAPI.getPoolTokenPoints(
61
63
  tokenBalance,
62
64
  p,
@@ -74,22 +76,22 @@ class PoolPointsAPI {
74
76
  },
75
77
  []
76
78
  );
77
- acc[p.address] = poolPointsList;
79
+ acc[poolAddress] = poolPointsList;
78
80
  return acc;
79
81
  }, {});
80
82
  return r;
81
83
  }
82
84
  static getPoolTokenPoints(tokenBalanceInPool, pool, tokensList, pointsInfo) {
83
- if (pool.expectedLiquidity <= 0) return 0n;
85
+ if (pool.pool.pool.expectedLiquidity <= 0) return 0n;
84
86
  if (pointsInfo.estimation === "relative" && !tokenBalanceInPool)
85
87
  return null;
86
- const { decimals = 18 } = tokensList[pointsInfo.token] || {};
88
+ const { decimals = 18 } = tokensList.get(pointsInfo.token) || {};
87
89
  const targetFactor = 10n ** BigInt(decimals);
88
90
  const defaultPoints = pointsInfo.amount * targetFactor / PERCENTAGE_FACTOR;
89
91
  if (pointsInfo.estimation === "absolute") return defaultPoints;
90
- const { decimals: underlyingDecimals = 18 } = tokensList[pool.underlyingToken] || {};
92
+ const { decimals: underlyingDecimals = 18 } = tokensList.get(pool.pool.pool.underlying) || {};
91
93
  const underlyingFactor = 10n ** BigInt(underlyingDecimals);
92
- const points = (tokenBalanceInPool?.balance || 0n) * defaultPoints / (pool.expectedLiquidity * targetFactor / underlyingFactor);
94
+ const points = (tokenBalanceInPool?.balance || 0n) * defaultPoints / (pool.pool.pool.expectedLiquidity * targetFactor / underlyingFactor);
93
95
  return BigIntMath.min(points, defaultPoints);
94
96
  }
95
97
  }