@gearbox-protocol/sdk 11.11.0-next.2 → 11.11.1

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 (458) hide show
  1. package/dist/cjs/dev/create2.js +1 -1
  2. package/dist/cjs/dev/mint/AbstractMinter.js +4 -2
  3. package/dist/cjs/dev/mint/DealMinter.js +3 -0
  4. package/dist/cjs/dev/mint/DirectMinter.js +3 -0
  5. package/dist/cjs/dev/mint/FallbackMinter.js +1 -1
  6. package/dist/cjs/dev/mint/TransferMinter.js +3 -0
  7. package/dist/cjs/permissionless/bindings/address-provider.js +6 -4
  8. package/dist/cjs/permissionless/bindings/base-contract.js +173 -0
  9. package/dist/cjs/permissionless/bindings/bytecode-repository.js +25 -23
  10. package/dist/cjs/permissionless/bindings/compressors/token-compressor.js +4 -4
  11. package/dist/cjs/permissionless/bindings/compressors/withdrawal-compressor.js +17 -11
  12. package/dist/cjs/permissionless/bindings/cross-chain-multisig.js +22 -23
  13. package/dist/cjs/permissionless/bindings/factory/abstract-factory.js +4 -7
  14. package/dist/cjs/permissionless/bindings/governance/batches-chain.js +4 -4
  15. package/dist/cjs/permissionless/bindings/governance/governor.js +49 -30
  16. package/dist/cjs/permissionless/bindings/governance/timelock.js +4 -4
  17. package/dist/cjs/permissionless/bindings/index.js +2 -0
  18. package/dist/cjs/permissionless/bindings/instance-manager.js +77 -58
  19. package/dist/cjs/permissionless/bindings/market-configurator-factory.js +4 -4
  20. package/dist/cjs/permissionless/bindings/market-configurator.js +143 -71
  21. package/dist/cjs/permissionless/bindings/price-feed-store.js +17 -8
  22. package/dist/cjs/permissionless/bindings/router/routing-manager.js +15 -9
  23. package/dist/cjs/permissionless/bindings/treasury-splitter.js +23 -14
  24. package/dist/cjs/permissionless/core/raw-tx.js +2 -2
  25. package/dist/cjs/permissionless/utils/abi-decoder.js +72 -0
  26. package/dist/cjs/permissionless/utils/format.js +2 -2
  27. package/dist/cjs/permissionless/utils/governance/timelock-txs.js +2 -2
  28. package/dist/cjs/permissionless/utils/index.js +2 -0
  29. package/dist/cjs/permissionless/utils/price-update/get-price-feeds.js +2 -1
  30. package/dist/cjs/permissionless/utils/price-update/get-price-update-tx.js +2 -1
  31. package/dist/cjs/permissionless/utils/price-update/get-prices.js +2 -1
  32. package/dist/cjs/permissionless/utils/price-update/get-updatable-feeds.js +3 -2
  33. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  34. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  35. package/dist/cjs/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  36. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  37. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  38. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  39. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  40. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  41. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  42. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  43. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  44. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  45. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  46. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  47. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  48. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  49. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  50. package/dist/cjs/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  51. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  52. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  53. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  54. package/dist/cjs/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  55. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  56. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  57. package/dist/cjs/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  58. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  59. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  60. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  61. package/dist/cjs/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  62. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  63. package/dist/cjs/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  64. package/dist/cjs/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  65. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  66. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  67. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  68. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  69. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  70. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  71. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  72. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  73. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  74. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  75. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  76. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  77. package/dist/cjs/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  78. package/dist/cjs/plugins/bots/BotsPlugin.js +96 -21
  79. package/dist/cjs/plugins/bots/PartialLiquidationBotBaseContract.js +14 -17
  80. package/dist/cjs/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
  81. package/dist/cjs/plugins/bots/config.js +59 -0
  82. package/dist/cjs/plugins/bots/index.js +4 -0
  83. package/dist/cjs/plugins/bots/types.js +9 -0
  84. package/dist/cjs/plugins/zappers/ZappersPlugin.js +1 -1
  85. package/dist/cjs/sdk/GearboxSDK.js +110 -8
  86. package/dist/cjs/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
  87. package/dist/cjs/sdk/accounts/AbstractCreditAccountsService.js +8 -6
  88. package/dist/cjs/sdk/base/AddressLabeller.js +49 -0
  89. package/dist/cjs/sdk/base/BaseContract.js +80 -195
  90. package/dist/cjs/sdk/base/IAddressLabeller.js +16 -0
  91. package/dist/cjs/sdk/base/SDKConstruct.js +29 -3
  92. package/dist/cjs/sdk/base/TokensMeta.js +4 -4
  93. package/dist/cjs/sdk/base/index.js +2 -4
  94. package/dist/cjs/sdk/core/BotListV3Contract.js +2 -2
  95. package/dist/cjs/sdk/core/GearStakingV3Contract.js +2 -2
  96. package/dist/cjs/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  97. package/dist/cjs/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
  98. package/dist/cjs/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  99. package/dist/cjs/sdk/market/MarketConfiguratorContract.js +5 -5
  100. package/dist/cjs/sdk/market/MarketRegister.js +9 -7
  101. package/dist/cjs/sdk/market/MarketSuite.js +2 -2
  102. package/dist/cjs/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
  103. package/dist/cjs/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
  104. package/dist/cjs/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  105. package/dist/cjs/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  106. package/dist/cjs/sdk/market/credit/CreditManagerV300Contract.js +2 -5
  107. package/dist/cjs/sdk/market/credit/CreditManagerV310Contract.js +2 -5
  108. package/dist/cjs/sdk/market/credit/CreditSuite.js +3 -2
  109. package/dist/cjs/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
  110. package/dist/cjs/sdk/market/loss-policy/LossPolicyContract.js +2 -2
  111. package/dist/cjs/sdk/market/loss-policy/createLossPolicy.js +1 -1
  112. package/dist/cjs/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
  113. package/dist/cjs/sdk/market/oracle/createPriceOracle.js +1 -1
  114. package/dist/cjs/sdk/market/pool/GaugeContract.js +2 -2
  115. package/dist/cjs/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  116. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  117. package/dist/cjs/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  118. package/dist/cjs/sdk/market/pool/PoolSuite.js +1 -1
  119. package/dist/cjs/sdk/market/pool/PoolV300Contract.js +5 -5
  120. package/dist/cjs/sdk/market/pool/PoolV310Contract.js +5 -5
  121. package/dist/cjs/sdk/market/pool/TumblerContract.js +2 -2
  122. package/dist/cjs/sdk/market/pool/createInterestRateModel.js +15 -11
  123. package/dist/cjs/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
  124. package/dist/cjs/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  125. package/dist/cjs/sdk/market/pricefeeds/BalancerStablePriceFeed.js +9 -2
  126. package/dist/cjs/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +9 -2
  127. package/dist/cjs/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
  128. package/dist/cjs/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  129. package/dist/cjs/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  130. package/dist/cjs/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +9 -2
  131. package/dist/cjs/sdk/market/pricefeeds/CurveStablePriceFeed.js +9 -2
  132. package/dist/cjs/sdk/market/pricefeeds/CurveUSDPriceFeed.js +9 -2
  133. package/dist/cjs/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
  134. package/dist/cjs/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  135. package/dist/cjs/sdk/market/pricefeeds/MellowLRTPriceFeed.js +10 -2
  136. package/dist/cjs/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  137. package/dist/cjs/sdk/market/pricefeeds/PriceFeedRef.js +4 -6
  138. package/dist/cjs/sdk/market/pricefeeds/PriceFeedsRegister.js +3 -2
  139. package/dist/cjs/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  140. package/dist/cjs/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  141. package/dist/cjs/sdk/market/pricefeeds/WstETHPriceFeed.js +9 -2
  142. package/dist/cjs/sdk/market/pricefeeds/YearnPriceFeed.js +9 -2
  143. package/dist/cjs/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  144. package/dist/cjs/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
  145. package/dist/cjs/sdk/market/pricefeeds/updates/PythUpdater.js +9 -7
  146. package/dist/cjs/sdk/market/pricefeeds/updates/RedstoneUpdater.js +12 -10
  147. package/dist/cjs/sdk/router/AbstractRouterContract.js +0 -5
  148. package/dist/cjs/sdk/router/RouterV310Contract.js +3 -3
  149. package/dist/cjs/sdk/router/createRouter.js +0 -4
  150. package/dist/cjs/sdk/utils/index.js +0 -2
  151. package/dist/esm/dev/create2.js +2 -2
  152. package/dist/esm/dev/mint/AbstractMinter.js +7 -3
  153. package/dist/esm/dev/mint/DealMinter.js +3 -0
  154. package/dist/esm/dev/mint/DirectMinter.js +3 -0
  155. package/dist/esm/dev/mint/FallbackMinter.js +1 -1
  156. package/dist/esm/dev/mint/TransferMinter.js +3 -0
  157. package/dist/esm/permissionless/bindings/address-provider.js +7 -7
  158. package/dist/esm/permissionless/bindings/base-contract.js +151 -0
  159. package/dist/esm/permissionless/bindings/bytecode-repository.js +24 -22
  160. package/dist/esm/permissionless/bindings/compressors/token-compressor.js +3 -3
  161. package/dist/esm/permissionless/bindings/compressors/withdrawal-compressor.js +16 -10
  162. package/dist/esm/permissionless/bindings/cross-chain-multisig.js +16 -20
  163. package/dist/esm/permissionless/bindings/factory/abstract-factory.js +4 -9
  164. package/dist/esm/permissionless/bindings/governance/batches-chain.js +3 -3
  165. package/dist/esm/permissionless/bindings/governance/governor.js +47 -28
  166. package/dist/esm/permissionless/bindings/governance/timelock.js +3 -3
  167. package/dist/esm/permissionless/bindings/index.js +1 -0
  168. package/dist/esm/permissionless/bindings/instance-manager.js +69 -53
  169. package/dist/esm/permissionless/bindings/market-configurator-factory.js +3 -3
  170. package/dist/esm/permissionless/bindings/market-configurator.js +137 -65
  171. package/dist/esm/permissionless/bindings/price-feed-store.js +14 -8
  172. package/dist/esm/permissionless/bindings/router/routing-manager.js +14 -8
  173. package/dist/esm/permissionless/bindings/treasury-splitter.js +22 -15
  174. package/dist/esm/permissionless/core/raw-tx.js +1 -1
  175. package/dist/esm/permissionless/utils/abi-decoder.js +50 -0
  176. package/dist/esm/permissionless/utils/format.js +1 -1
  177. package/dist/esm/permissionless/utils/governance/timelock-txs.js +1 -1
  178. package/dist/esm/permissionless/utils/index.js +1 -0
  179. package/dist/esm/permissionless/utils/price-update/get-price-feeds.js +2 -4
  180. package/dist/esm/permissionless/utils/price-update/get-price-update-tx.js +1 -1
  181. package/dist/esm/permissionless/utils/price-update/get-prices.js +2 -1
  182. package/dist/esm/permissionless/utils/price-update/get-updatable-feeds.js +1 -1
  183. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +2 -2
  184. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  185. package/dist/esm/plugins/adapters/contracts/BalancerV2VaultAdapterContract.js +2 -2
  186. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +2 -2
  187. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +2 -2
  188. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +2 -2
  189. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +2 -2
  190. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +2 -2
  191. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  192. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  193. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  194. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterDeposit.js +2 -2
  195. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  196. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  197. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +2 -2
  198. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +2 -2
  199. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +2 -2
  200. package/dist/esm/plugins/adapters/contracts/EqualizerRouterAdapterContract.js +2 -2
  201. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +2 -2
  202. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +2 -2
  203. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  204. package/dist/esm/plugins/adapters/contracts/InfraredVaultAdapterContract.js +2 -2
  205. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +2 -2
  206. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  207. package/dist/esm/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.js +2 -2
  208. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +2 -2
  209. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +2 -2
  210. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +2 -2
  211. package/dist/esm/plugins/adapters/contracts/MellowDepositQueueAdapterContract.js +2 -2
  212. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +2 -2
  213. package/dist/esm/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.js +2 -2
  214. package/dist/esm/plugins/adapters/contracts/MellowVaultAdapterContract.js +2 -2
  215. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +2 -2
  216. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +2 -2
  217. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +2 -2
  218. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +2 -2
  219. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +2 -2
  220. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +2 -2
  221. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +5 -5
  222. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +22 -22
  223. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +2 -2
  224. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +2 -2
  225. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +2 -2
  226. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +2 -2
  227. package/dist/esm/plugins/adapters/contracts/YearnV2AdapterContract.js +2 -2
  228. package/dist/esm/plugins/bots/BotsPlugin.js +108 -11
  229. package/dist/esm/plugins/bots/PartialLiquidationBotBaseContract.js +16 -7
  230. package/dist/esm/plugins/bots/PartialLiquidationBotV300Contract.js +20 -4
  231. package/dist/esm/plugins/bots/config.js +33 -0
  232. package/dist/esm/plugins/bots/index.js +2 -0
  233. package/dist/esm/plugins/bots/types.js +8 -0
  234. package/dist/esm/plugins/zappers/ZappersPlugin.js +1 -1
  235. package/dist/esm/sdk/GearboxSDK.js +112 -10
  236. package/dist/esm/sdk/accountMigration/AbstractMigrateCreditAccountsService.js +4 -1
  237. package/dist/esm/sdk/accounts/AbstractCreditAccountsService.js +9 -7
  238. package/dist/esm/sdk/base/AddressLabeller.js +25 -0
  239. package/dist/esm/sdk/base/BaseContract.js +81 -202
  240. package/dist/esm/sdk/base/IAddressLabeller.js +0 -0
  241. package/dist/esm/sdk/base/SDKConstruct.js +29 -3
  242. package/dist/esm/sdk/base/TokensMeta.js +4 -4
  243. package/dist/esm/sdk/base/index.js +1 -2
  244. package/dist/esm/sdk/core/BotListV3Contract.js +2 -2
  245. package/dist/esm/sdk/core/GearStakingV3Contract.js +2 -2
  246. package/dist/esm/sdk/core/address-provider/AbstractAddressProviderContract.js +2 -2
  247. package/dist/esm/sdk/core/address-provider/AddressProviderV300Contract.js +6 -11
  248. package/dist/esm/sdk/core/address-provider/AddressProviderV310Contract.js +4 -4
  249. package/dist/esm/sdk/market/MarketConfiguratorContract.js +5 -5
  250. package/dist/esm/sdk/market/MarketRegister.js +10 -8
  251. package/dist/esm/sdk/market/MarketSuite.js +2 -2
  252. package/dist/esm/sdk/market/credit/CreditConfiguratorV300Contract.js +3 -4
  253. package/dist/esm/sdk/market/credit/CreditConfiguratorV310Contract.js +3 -4
  254. package/dist/esm/sdk/market/credit/CreditFacadeV300Contract.js +9 -9
  255. package/dist/esm/sdk/market/credit/CreditFacadeV310Contract.js +8 -8
  256. package/dist/esm/sdk/market/credit/CreditManagerV300Contract.js +2 -5
  257. package/dist/esm/sdk/market/credit/CreditManagerV310Contract.js +2 -5
  258. package/dist/esm/sdk/market/credit/CreditSuite.js +3 -2
  259. package/dist/esm/sdk/market/loss-policy/AliasLossPolicyV310Contract.js +1 -3
  260. package/dist/esm/sdk/market/loss-policy/LossPolicyContract.js +3 -5
  261. package/dist/esm/sdk/market/loss-policy/createLossPolicy.js +1 -1
  262. package/dist/esm/sdk/market/oracle/PriceOracleBaseContract.js +26 -8
  263. package/dist/esm/sdk/market/oracle/createPriceOracle.js +1 -1
  264. package/dist/esm/sdk/market/pool/GaugeContract.js +2 -2
  265. package/dist/esm/sdk/market/pool/LinearInterestRateModelContract.js +2 -2
  266. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV300Contract.js +2 -2
  267. package/dist/esm/sdk/market/pool/PoolQuotaKeeperV310Contract.js +2 -2
  268. package/dist/esm/sdk/market/pool/PoolSuite.js +1 -1
  269. package/dist/esm/sdk/market/pool/PoolV300Contract.js +5 -5
  270. package/dist/esm/sdk/market/pool/PoolV310Contract.js +5 -5
  271. package/dist/esm/sdk/market/pool/TumblerContract.js +2 -2
  272. package/dist/esm/sdk/market/pool/createInterestRateModel.js +15 -11
  273. package/dist/esm/sdk/market/pricefeeds/AbstractLPPriceFeed.js +22 -2
  274. package/dist/esm/sdk/market/pricefeeds/AbstractPriceFeed.js +3 -3
  275. package/dist/esm/sdk/market/pricefeeds/BalancerStablePriceFeed.js +13 -3
  276. package/dist/esm/sdk/market/pricefeeds/BalancerWeightedPriceFeed.js +13 -3
  277. package/dist/esm/sdk/market/pricefeeds/BoundedPriceFeed.js +2 -6
  278. package/dist/esm/sdk/market/pricefeeds/CompositePriceFeed.js +2 -2
  279. package/dist/esm/sdk/market/pricefeeds/ConstantPriceFeed.js +2 -2
  280. package/dist/esm/sdk/market/pricefeeds/CurveCryptoPriceFeed.js +10 -3
  281. package/dist/esm/sdk/market/pricefeeds/CurveStablePriceFeed.js +10 -3
  282. package/dist/esm/sdk/market/pricefeeds/CurveUSDPriceFeed.js +10 -3
  283. package/dist/esm/sdk/market/pricefeeds/Erc4626PriceFeed.js +18 -2
  284. package/dist/esm/sdk/market/pricefeeds/ExternalPriceFeed.js +2 -2
  285. package/dist/esm/sdk/market/pricefeeds/MellowLRTPriceFeed.js +11 -3
  286. package/dist/esm/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.js +2 -2
  287. package/dist/esm/sdk/market/pricefeeds/PriceFeedRef.js +5 -7
  288. package/dist/esm/sdk/market/pricefeeds/PriceFeedsRegister.js +9 -3
  289. package/dist/esm/sdk/market/pricefeeds/PythPriceFeed.js +2 -2
  290. package/dist/esm/sdk/market/pricefeeds/RedstonePriceFeed.js +3 -3
  291. package/dist/esm/sdk/market/pricefeeds/WstETHPriceFeed.js +10 -3
  292. package/dist/esm/sdk/market/pricefeeds/YearnPriceFeed.js +10 -3
  293. package/dist/esm/sdk/market/pricefeeds/ZeroPriceFeed.js +2 -2
  294. package/dist/esm/sdk/market/pricefeeds/updates/PriceUpdatesCache.js +0 -17
  295. package/dist/esm/sdk/market/pricefeeds/updates/PythUpdater.js +10 -8
  296. package/dist/esm/sdk/market/pricefeeds/updates/RedstoneUpdater.js +13 -11
  297. package/dist/esm/sdk/router/AbstractRouterContract.js +0 -5
  298. package/dist/esm/sdk/router/RouterV310Contract.js +3 -3
  299. package/dist/esm/sdk/router/createRouter.js +0 -4
  300. package/dist/esm/sdk/utils/index.js +0 -1
  301. package/dist/types/dev/create2.d.ts +2 -2
  302. package/dist/types/dev/mint/AbstractMinter.d.ts +4 -3
  303. package/dist/types/dev/mint/DealMinter.d.ts +3 -0
  304. package/dist/types/dev/mint/DirectMinter.d.ts +3 -0
  305. package/dist/types/dev/mint/TransferMinter.d.ts +3 -0
  306. package/dist/types/permissionless/bindings/address-provider.d.ts +255 -4
  307. package/dist/types/permissionless/bindings/base-contract.d.ts +23 -0
  308. package/dist/types/permissionless/bindings/bytecode-repository.d.ts +6 -5
  309. package/dist/types/permissionless/bindings/compressors/token-compressor.d.ts +3 -3
  310. package/dist/types/permissionless/bindings/compressors/withdrawal-compressor.d.ts +5 -4
  311. package/dist/types/permissionless/bindings/cross-chain-multisig.d.ts +7 -7
  312. package/dist/types/permissionless/bindings/factory/abstract-factory.d.ts +1 -1
  313. package/dist/types/permissionless/bindings/governance/batches-chain.d.ts +4 -3
  314. package/dist/types/permissionless/bindings/governance/governor.d.ts +7 -6
  315. package/dist/types/permissionless/bindings/governance/timelock.d.ts +3 -3
  316. package/dist/types/permissionless/bindings/governance/types.d.ts +1 -1
  317. package/dist/types/permissionless/bindings/index.d.ts +1 -0
  318. package/dist/types/permissionless/bindings/instance-manager.d.ts +7 -6
  319. package/dist/types/permissionless/bindings/market-configurator-factory.d.ts +4 -4
  320. package/dist/types/permissionless/bindings/market-configurator.d.ts +6 -6
  321. package/dist/types/permissionless/bindings/price-feed-store.d.ts +7 -6
  322. package/dist/types/permissionless/bindings/router/routing-manager.d.ts +5 -4
  323. package/dist/types/permissionless/bindings/treasury-splitter.d.ts +6 -5
  324. package/dist/types/permissionless/core/proposal.d.ts +7 -1
  325. package/dist/types/permissionless/utils/abi-decoder.d.ts +13 -0
  326. package/dist/types/permissionless/utils/create2.d.ts +1 -1
  327. package/dist/types/permissionless/utils/governance/batch.d.ts +1 -1
  328. package/dist/types/permissionless/utils/index.d.ts +1 -0
  329. package/dist/types/permissionless/utils/price-update/get-price-feeds.d.ts +3 -3
  330. package/dist/types/permissionless/utils/price-update/get-price-update-tx.d.ts +2 -2
  331. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +2 -2
  332. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  333. package/dist/types/plugins/adapters/contracts/BalancerV2VaultAdapterContract.d.ts +2 -2
  334. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +2 -2
  335. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +2 -2
  336. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +2 -2
  337. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +2 -2
  338. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +2 -2
  339. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  340. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  341. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  342. package/dist/types/plugins/adapters/contracts/CurveV1AdapterDeposit.d.ts +2 -2
  343. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  344. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  345. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +2 -2
  346. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +2 -2
  347. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +2 -2
  348. package/dist/types/plugins/adapters/contracts/EqualizerRouterAdapterContract.d.ts +2 -2
  349. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +2 -2
  350. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +2 -2
  351. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  352. package/dist/types/plugins/adapters/contracts/InfraredVaultAdapterContract.d.ts +2 -2
  353. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +2 -2
  354. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  355. package/dist/types/plugins/adapters/contracts/KodiakIslandGatewayAdapterContract.d.ts +2 -2
  356. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +2 -2
  357. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +2 -2
  358. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +2 -2
  359. package/dist/types/plugins/adapters/contracts/MellowDepositQueueAdapterContract.d.ts +2 -2
  360. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +2 -2
  361. package/dist/types/plugins/adapters/contracts/MellowRedeemQueueAdapterContract.d.ts +2 -2
  362. package/dist/types/plugins/adapters/contracts/MellowVaultAdapterContract.d.ts +2 -2
  363. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +2 -2
  364. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +2 -2
  365. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +2 -2
  366. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +2 -2
  367. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +2 -2
  368. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +2 -2
  369. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
  370. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
  371. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +2 -2
  372. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +16 -2
  373. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +2 -2
  374. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +2 -2
  375. package/dist/types/plugins/adapters/contracts/YearnV2AdapterContract.d.ts +2 -2
  376. package/dist/types/plugins/bots/BotsPlugin.d.ts +3 -2
  377. package/dist/types/plugins/bots/PartialLiquidationBotBaseContract.d.ts +1 -1
  378. package/dist/types/plugins/bots/PartialLiquidationBotV300Contract.d.ts +8 -2
  379. package/dist/types/plugins/bots/config.d.ts +6 -0
  380. package/dist/types/plugins/bots/index.d.ts +2 -0
  381. package/dist/types/plugins/bots/types.d.ts +16 -0
  382. package/dist/types/sdk/GearboxSDK.d.ts +76 -5
  383. package/dist/types/sdk/accountMigration/AbstractMigrateCreditAccountsService.d.ts +2 -2
  384. package/dist/types/sdk/accountMigration/types.d.ts +2 -1
  385. package/dist/types/sdk/accounts/types.d.ts +3 -4
  386. package/dist/types/sdk/base/AddressLabeller.d.ts +11 -0
  387. package/dist/types/sdk/base/BaseContract.d.ts +28 -72
  388. package/dist/types/sdk/base/IAddressLabeller.d.ts +9 -0
  389. package/dist/types/sdk/base/PlaceholderContract.d.ts +2 -2
  390. package/dist/types/sdk/base/SDKConstruct.d.ts +16 -2
  391. package/dist/types/sdk/base/TokensMeta.d.ts +3 -2
  392. package/dist/types/sdk/base/index.d.ts +1 -2
  393. package/dist/types/sdk/base/types.d.ts +0 -50
  394. package/dist/types/sdk/core/BotListV3Contract.d.ts +1 -1
  395. package/dist/types/sdk/core/GearStakingV3Contract.d.ts +1 -1
  396. package/dist/types/sdk/core/address-provider/AbstractAddressProviderContract.d.ts +4 -3
  397. package/dist/types/sdk/core/address-provider/AddressProviderV300Contract.d.ts +3 -3
  398. package/dist/types/sdk/core/address-provider/AddressProviderV310Contract.d.ts +3 -3
  399. package/dist/types/sdk/market/MarketConfiguratorContract.d.ts +2 -2
  400. package/dist/types/sdk/market/credit/CreditConfiguratorV300Contract.d.ts +3 -3
  401. package/dist/types/sdk/market/credit/CreditConfiguratorV310Contract.d.ts +3 -3
  402. package/dist/types/sdk/market/credit/CreditFacadeV300Contract.d.ts +4 -3
  403. package/dist/types/sdk/market/credit/CreditFacadeV310Contract.d.ts +4 -3
  404. package/dist/types/sdk/market/credit/CreditManagerV300Contract.d.ts +1 -1
  405. package/dist/types/sdk/market/credit/CreditManagerV310Contract.d.ts +1 -1
  406. package/dist/types/sdk/market/credit/CreditSuite.d.ts +1 -1
  407. package/dist/types/sdk/market/credit/types.d.ts +2 -1
  408. package/dist/types/sdk/market/loss-policy/AliasLossPolicyV310Contract.d.ts +0 -1
  409. package/dist/types/sdk/market/loss-policy/LossPolicyContract.d.ts +3 -2
  410. package/dist/types/sdk/market/oracle/PriceOracleBaseContract.d.ts +12 -3
  411. package/dist/types/sdk/market/oracle/types.d.ts +10 -0
  412. package/dist/types/sdk/market/pool/GaugeContract.d.ts +3 -2
  413. package/dist/types/sdk/market/pool/LinearInterestRateModelContract.d.ts +3 -2
  414. package/dist/types/sdk/market/pool/PoolQuotaKeeperV300Contract.d.ts +3 -2
  415. package/dist/types/sdk/market/pool/PoolQuotaKeeperV310Contract.d.ts +3 -2
  416. package/dist/types/sdk/market/pool/PoolV300Contract.d.ts +5 -4
  417. package/dist/types/sdk/market/pool/PoolV310Contract.d.ts +5 -4
  418. package/dist/types/sdk/market/pool/TumblerContract.d.ts +3 -2
  419. package/dist/types/sdk/market/pricefeeds/AbstractLPPriceFeed.d.ts +8 -3
  420. package/dist/types/sdk/market/pricefeeds/AbstractPriceFeed.d.ts +3 -2
  421. package/dist/types/sdk/market/pricefeeds/BalancerStablePriceFeed.d.ts +3 -2
  422. package/dist/types/sdk/market/pricefeeds/BalancerWeightedPriceFeed.d.ts +3 -2
  423. package/dist/types/sdk/market/pricefeeds/BoundedPriceFeed.d.ts +2 -2
  424. package/dist/types/sdk/market/pricefeeds/CompositePriceFeed.d.ts +2 -2
  425. package/dist/types/sdk/market/pricefeeds/ConstantPriceFeed.d.ts +2 -2
  426. package/dist/types/sdk/market/pricefeeds/CurveCryptoPriceFeed.d.ts +3 -2
  427. package/dist/types/sdk/market/pricefeeds/CurveStablePriceFeed.d.ts +3 -2
  428. package/dist/types/sdk/market/pricefeeds/CurveUSDPriceFeed.d.ts +3 -2
  429. package/dist/types/sdk/market/pricefeeds/Erc4626PriceFeed.d.ts +3 -2
  430. package/dist/types/sdk/market/pricefeeds/ExternalPriceFeed.d.ts +2 -2
  431. package/dist/types/sdk/market/pricefeeds/MellowLRTPriceFeed.d.ts +3 -2
  432. package/dist/types/sdk/market/pricefeeds/PendleTWAPPTPriceFeed.d.ts +2 -2
  433. package/dist/types/sdk/market/pricefeeds/PriceFeedRef.d.ts +4 -3
  434. package/dist/types/sdk/market/pricefeeds/PriceFeedsRegister.d.ts +2 -1
  435. package/dist/types/sdk/market/pricefeeds/PythPriceFeed.d.ts +2 -2
  436. package/dist/types/sdk/market/pricefeeds/RedstonePriceFeed.d.ts +2 -2
  437. package/dist/types/sdk/market/pricefeeds/WstETHPriceFeed.d.ts +3 -2
  438. package/dist/types/sdk/market/pricefeeds/YearnPriceFeed.d.ts +3 -2
  439. package/dist/types/sdk/market/pricefeeds/ZeroPriceFeed.d.ts +2 -2
  440. package/dist/types/sdk/market/pricefeeds/types.d.ts +5 -0
  441. package/dist/types/sdk/market/pricefeeds/updates/PriceUpdatesCache.d.ts +1 -8
  442. package/dist/types/sdk/router/AbstractRouterContract.d.ts +1 -4
  443. package/dist/types/sdk/router/types.d.ts +2 -1
  444. package/dist/types/sdk/sdk-legacy/core/creditAccount.d.ts +2 -2
  445. package/dist/types/sdk/utils/index.d.ts +0 -1
  446. package/package.json +10 -10
  447. package/dist/cjs/plugins/bots/deserializePartialLiquidationBotParams.js +0 -49
  448. package/dist/cjs/sdk/base/ChainContractsRegister.js +0 -135
  449. package/dist/cjs/sdk/base/Construct.js +0 -87
  450. package/dist/cjs/sdk/utils/abi-decode.js +0 -58
  451. package/dist/esm/plugins/bots/deserializePartialLiquidationBotParams.js +0 -29
  452. package/dist/esm/sdk/base/ChainContractsRegister.js +0 -111
  453. package/dist/esm/sdk/base/Construct.js +0 -63
  454. package/dist/esm/sdk/utils/abi-decode.js +0 -37
  455. package/dist/types/plugins/bots/deserializePartialLiquidationBotParams.d.ts +0 -3
  456. package/dist/types/sdk/base/ChainContractsRegister.d.ts +0 -57
  457. package/dist/types/sdk/base/Construct.d.ts +0 -38
  458. package/dist/types/sdk/utils/abi-decode.d.ts +0 -10
@@ -41,7 +41,6 @@ var import_pricefeeds = require("../pricefeeds/index.js");
41
41
  var import_PriceFeedAnswerMap = __toESM(require("./PriceFeedAnswerMap.js"));
42
42
  const ZERO_PRICE_FEED = (0, import_viem.stringToHex)("PRICE_FEED::ZERO", { size: 32 });
43
43
  class PriceOracleBaseContract extends import_base.BaseContract {
44
- sdk;
45
44
  /**
46
45
  * Mapping Token => [PriceFeed Address, stalenessPeriod]
47
46
  */
@@ -73,7 +72,6 @@ class PriceOracleBaseContract extends import_base.BaseContract {
73
72
  );
74
73
  constructor(sdk, args, data) {
75
74
  super(sdk, args);
76
- this.sdk = sdk;
77
75
  const { priceFeedMap, priceFeedTree } = data;
78
76
  this.#loadState(priceFeedMap, priceFeedTree, true);
79
77
  }
@@ -91,6 +89,19 @@ class PriceOracleBaseContract extends import_base.BaseContract {
91
89
  reserve ? this.reservePriceFeeds.get(t)?.priceFeed : void 0
92
90
  ]).filter((f) => !!f);
93
91
  }
92
+ /**
93
+ * Generates updates for all updateable price feeds in this oracle (including dependencies)
94
+ * @returns
95
+ */
96
+ async updatePriceFeeds() {
97
+ const updatables = [];
98
+ for (const node of this.#priceFeedTree.values()) {
99
+ if (node.updatable) {
100
+ updatables.push(this.sdk.priceFeeds.mustGet(node.baseParams.addr));
101
+ }
102
+ }
103
+ return this.sdk.priceFeeds.generatePriceFeedsUpdateTxs(updatables);
104
+ }
94
105
  /**
95
106
  * Gets main price for given token
96
107
  * Throws if token price feed is not found or answer is not successful
@@ -130,9 +141,9 @@ class PriceOracleBaseContract extends import_base.BaseContract {
130
141
  return amount;
131
142
  }
132
143
  const fromPrice = reserve ? this.reservePrice(from) : this.mainPrice(from);
133
- const fromScale = 10n ** BigInt(this.tokensMeta.decimals(from));
144
+ const fromScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
134
145
  const toPrice = reserve ? this.reservePrice(to) : this.mainPrice(to);
135
- const toScale = 10n ** BigInt(this.tokensMeta.decimals(to));
146
+ const toScale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
136
147
  return amount * fromPrice * toScale / (toPrice * fromScale);
137
148
  }
138
149
  /**
@@ -143,7 +154,7 @@ class PriceOracleBaseContract extends import_base.BaseContract {
143
154
  */
144
155
  convertToUSD(from, amount, reserve = false) {
145
156
  const price = reserve ? this.reservePrice(from) : this.mainPrice(from);
146
- const scale = 10n ** BigInt(this.tokensMeta.decimals(from));
157
+ const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(from));
147
158
  return amount * price / scale;
148
159
  }
149
160
  /**
@@ -154,9 +165,16 @@ class PriceOracleBaseContract extends import_base.BaseContract {
154
165
  */
155
166
  convertFromUSD(to, amount, reserve = false) {
156
167
  const price = reserve ? this.reservePrice(to) : this.mainPrice(to);
157
- const scale = 10n ** BigInt(this.tokensMeta.decimals(to));
168
+ const scale = 10n ** BigInt(this.sdk.tokensMeta.decimals(to));
158
169
  return amount * scale / price;
159
170
  }
171
+ /**
172
+ * Loads new prices for this oracle from PriceFeedCompressor
173
+ * Will (re)create price feeds if needed
174
+ */
175
+ async updatePrices() {
176
+ await this.sdk.marketRegister.updatePrices([this.address]);
177
+ }
160
178
  /**
161
179
  * All price feed tree nodes known to this oracle
162
180
  */
@@ -245,8 +263,8 @@ class PriceOracleBaseContract extends import_base.BaseContract {
245
263
  this.dirty = false;
246
264
  }
247
265
  #labelPriceFeed(address, usage, token) {
248
- this.sdk.setAddressLabel(address, (oldLabel) => {
249
- const symbol = this.tokensMeta.symbol(token);
266
+ this.sdk.addressLabels.set(address, (oldLabel) => {
267
+ const symbol = this.sdk.tokensMeta.symbol(token);
250
268
  let pricefeedTag = `${symbol}.${usage}`;
251
269
  if (oldLabel) {
252
270
  const oldLabelParts = new Set(oldLabel.split(", "));
@@ -27,7 +27,7 @@ var import_PriceOracleV300Contract = require("./PriceOracleV300Contract.js");
27
27
  var import_PriceOracleV310Contract = require("./PriceOracleV310Contract.js");
28
28
  function getOrCreatePriceOracle(sdk, data) {
29
29
  const { version, addr } = data.baseParams;
30
- const existing = sdk.getContract(addr);
30
+ const existing = sdk.contracts.get(addr);
31
31
  let result;
32
32
  if (existing) {
33
33
  result = tryExtendExistingOracle(existing, data);
@@ -32,8 +32,8 @@ class GaugeContract extends import_base.BaseContract {
32
32
  epochFrozen;
33
33
  epochLastUpdate;
34
34
  rates;
35
- constructor(options, pool, gauge) {
36
- super(options, {
35
+ constructor(sdk, pool, gauge) {
36
+ super(sdk, {
37
37
  ...gauge.baseParams,
38
38
  name: `Gauge(${pool.name})`,
39
39
  abi: import_v300.iGaugeV300Abi
@@ -34,8 +34,8 @@ class LinearInterestRateModelContract extends import_base.BaseContract {
34
34
  Rslope2;
35
35
  Rslope3;
36
36
  isBorrowingMoreU2Forbidden;
37
- constructor(options, params) {
38
- super(options, {
37
+ constructor(sdk, params) {
38
+ super(sdk, {
39
39
  ...params.baseParams,
40
40
  name: "LinearInterestRateModel",
41
41
  abi
@@ -28,8 +28,8 @@ const abi = import_v300.iPoolQuotaKeeperV300Abi;
28
28
  class PoolQuotaKeeperV300Contract extends import_base.BaseContract {
29
29
  decimals;
30
30
  quotas;
31
- constructor(options, pool, pqk) {
32
- super(options, {
31
+ constructor(sdk, pool, pqk) {
32
+ super(sdk, {
33
33
  ...pqk.baseParams,
34
34
  name: `PoolQuotaKeeper(${pool.name})`,
35
35
  abi
@@ -28,8 +28,8 @@ const abi = import_generated.iPoolQuotaKeeperV310Abi;
28
28
  class PoolQuotaKeeperV310Contract extends import_base.BaseContract {
29
29
  decimals;
30
30
  quotas;
31
- constructor(options, pool, pqk) {
32
- super(options, {
31
+ constructor(sdk, pool, pqk) {
32
+ super(sdk, {
33
33
  ...pqk.baseParams,
34
34
  name: `PoolQuotaKeeper(${pool.name})`,
35
35
  abi
@@ -81,7 +81,7 @@ class PoolSuite extends import_base.SDKConstruct {
81
81
  );
82
82
  }
83
83
  get marketConfigurator() {
84
- return this.register.mustGetContract(
84
+ return this.sdk.contracts.mustGet(
85
85
  this.#marketConfigurator
86
86
  );
87
87
  }
@@ -28,9 +28,9 @@ var import_utils = require("../../utils/index.js");
28
28
  const abi = [...import_v300.iPoolV300Abi, ...import_iPausable.iPausableAbi];
29
29
  class PoolV300Contract extends import_base.BaseContract {
30
30
  creditManagerDebtParams;
31
- constructor(options, data) {
31
+ constructor(sdk, data) {
32
32
  const { baseParams, creditManagerDebtParams, ...rest } = data;
33
- super(options, {
33
+ super(sdk, {
34
34
  ...data.baseParams,
35
35
  name: `PoolV3(${data.name})`,
36
36
  abi
@@ -39,7 +39,7 @@ class PoolV300Contract extends import_base.BaseContract {
39
39
  this.creditManagerDebtParams = new import_utils.AddressMap(
40
40
  creditManagerDebtParams.map((p) => [p.creditManager, p])
41
41
  );
42
- this.register.tokensMeta.upsert(data.baseParams.addr, {
42
+ sdk.tokensMeta.upsert(data.baseParams.addr, {
43
43
  addr: data.baseParams.addr,
44
44
  decimals: data.decimals,
45
45
  name: data.name,
@@ -118,14 +118,14 @@ class PoolV300Contract extends import_base.BaseContract {
118
118
  break;
119
119
  }
120
120
  }
121
- stringifyFunctionParams(params) {
121
+ parseFunctionParams(params) {
122
122
  switch (params.functionName) {
123
123
  case "deposit": {
124
124
  const [amount, onBehalfOf] = params.args;
125
125
  return [(0, import_utils.formatBN)(amount, this.decimals), this.labelAddress(onBehalfOf)];
126
126
  }
127
127
  default:
128
- return super.stringifyFunctionParams(params);
128
+ return void 0;
129
129
  }
130
130
  }
131
131
  }
@@ -28,9 +28,9 @@ var import_utils = require("../../utils/index.js");
28
28
  const abi = [...import_generated.iPoolV310Abi, ...import_iPausable.iPausableAbi];
29
29
  class PoolV310Contract extends import_base.BaseContract {
30
30
  creditManagerDebtParams;
31
- constructor(options, data) {
31
+ constructor(sdk, data) {
32
32
  const { baseParams, creditManagerDebtParams, ...rest } = data;
33
- super(options, {
33
+ super(sdk, {
34
34
  ...data.baseParams,
35
35
  name: `PoolV3(${data.name})`,
36
36
  abi
@@ -39,7 +39,7 @@ class PoolV310Contract extends import_base.BaseContract {
39
39
  this.creditManagerDebtParams = new import_utils.AddressMap(
40
40
  creditManagerDebtParams.map((p) => [p.creditManager, p])
41
41
  );
42
- this.register.tokensMeta.upsert(data.baseParams.addr, {
42
+ sdk.tokensMeta.upsert(data.baseParams.addr, {
43
43
  addr: data.baseParams.addr,
44
44
  decimals: data.decimals,
45
45
  name: data.name,
@@ -118,14 +118,14 @@ class PoolV310Contract extends import_base.BaseContract {
118
118
  break;
119
119
  }
120
120
  }
121
- stringifyFunctionParams(params) {
121
+ parseFunctionParams(params) {
122
122
  switch (params.functionName) {
123
123
  case "deposit": {
124
124
  const [amount, onBehalfOf] = params.args;
125
125
  return [(0, import_utils.formatBN)(amount, this.decimals), this.labelAddress(onBehalfOf)];
126
126
  }
127
127
  default:
128
- return super.stringifyFunctionParams(params);
128
+ return void 0;
129
129
  }
130
130
  }
131
131
  }
@@ -29,8 +29,8 @@ const abi = import_generated.iTumblerV310Abi;
29
29
  class TumblerContract extends import_base.BaseContract {
30
30
  epochLength;
31
31
  rates;
32
- constructor(options, pool, tumbler) {
33
- super(options, {
32
+ constructor(sdk, pool, tumbler) {
33
+ super(sdk, {
34
34
  ...tumbler.baseParams,
35
35
  name: `Tumbler(${pool.name})`,
36
36
  abi
@@ -25,17 +25,21 @@ var import_utils = require("../../utils/index.js");
25
25
  var import_LinearInterestRateModelContract = require("./LinearInterestRateModelContract.js");
26
26
  function createInterestRateModel(sdk, data) {
27
27
  const { addr, contractType } = data.baseParams;
28
- const existing = sdk.getContract(addr);
29
- if (existing) {
30
- return existing;
31
- }
32
- const modelType = (0, import_utils.bytes32ToString)(contractType);
33
- switch (modelType) {
34
- case "IRM::LINEAR": {
35
- return new import_LinearInterestRateModelContract.LinearInterestRateModelContract(sdk, data);
36
- }
37
- default: {
38
- throw new Error(`Unknown interest rate model type: ${modelType}`);
28
+ if (sdk.interestRateModels.has(addr)) {
29
+ return sdk.interestRateModels.mustGet(
30
+ addr
31
+ );
32
+ } else {
33
+ const modelType = (0, import_utils.bytes32ToString)(contractType);
34
+ switch (modelType) {
35
+ case "IRM::LINEAR": {
36
+ const linearModel = new import_LinearInterestRateModelContract.LinearInterestRateModelContract(sdk, data);
37
+ sdk.interestRateModels.insert(addr, linearModel);
38
+ return linearModel;
39
+ }
40
+ default: {
41
+ throw new Error(`Unknown interest rate model type: ${modelType}`);
42
+ }
39
43
  }
40
44
  }
41
45
  }
@@ -23,8 +23,10 @@ __export(AbstractLPPriceFeed_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(AbstractLPPriceFeed_exports);
25
25
  var import_viem = require("viem");
26
+ var import_abi = require("../../abi/index.js");
26
27
  var import_versions = require("../../constants/versions.js");
27
28
  var import_AbstractPriceFeed = require("./AbstractPriceFeed.js");
29
+ const LOWER_BOUND_FACTOR = 99n;
28
30
  class AbstractLPPriceFeedContract extends import_AbstractPriceFeed.AbstractPriceFeedContract {
29
31
  lpContract;
30
32
  lpToken;
@@ -34,8 +36,8 @@ class AbstractLPPriceFeedContract extends import_AbstractPriceFeed.AbstractPrice
34
36
  exchangeRate;
35
37
  aggregatePrice;
36
38
  scale;
37
- constructor(options, args) {
38
- super(options, { ...args, decimals: 8 });
39
+ constructor(sdk, args) {
40
+ super(sdk, { ...args, decimals: 8 });
39
41
  this.hasLowerBoundCap = true;
40
42
  if ((0, import_versions.isV310)(args.baseParams.version)) {
41
43
  const decoder = (0, import_viem.decodeAbiParameters)(
@@ -81,6 +83,24 @@ class AbstractLPPriceFeedContract extends import_AbstractPriceFeed.AbstractPrice
81
83
  this.scale = decoder[4].scale;
82
84
  }
83
85
  }
86
+ async getLowerBound() {
87
+ const value = await this.getValue();
88
+ const lowerBound = AbstractLPPriceFeedContract.toLowerBound(value);
89
+ this.logger?.debug(
90
+ `Lowerbound for ${this.labelAddress(this.address)}: ${lowerBound}`
91
+ );
92
+ return lowerBound;
93
+ }
94
+ async currentLowerBound() {
95
+ return await this.sdk.client.readContract({
96
+ abi: import_abi.ilpPriceFeedAbi,
97
+ address: this.address,
98
+ functionName: "lowerBound"
99
+ });
100
+ }
101
+ static toLowerBound(value) {
102
+ return value * LOWER_BOUND_FACTOR / 100n;
103
+ }
84
104
  stateHuman(raw) {
85
105
  return {
86
106
  ...super.stateHuman(raw),
@@ -47,8 +47,8 @@ class AbstractPriceFeedContract extends import_base.BaseContract {
47
47
  #args;
48
48
  hasLowerBoundCap = false;
49
49
  description;
50
- constructor(options, args) {
51
- super(options, {
50
+ constructor(sdk, args) {
51
+ super(sdk, {
52
52
  abi: args.abi,
53
53
  addr: args.baseParams.addr,
54
54
  name: args.name + (args.description ? ` ${args.description}` : ""),
@@ -64,7 +64,7 @@ class AbstractPriceFeedContract extends import_base.BaseContract {
64
64
  if (args.underlyingFeeds && args.underlyingStalenessPeriods) {
65
65
  const underlyingStalenessPeriods = args.underlyingStalenessPeriods;
66
66
  this.#underlyingPriceFeeds = args.underlyingFeeds.map(
67
- (address, i) => new import_PriceFeedRef.PriceFeedRef(options, address, underlyingStalenessPeriods[i])
67
+ (address, i) => new import_PriceFeedRef.PriceFeedRef(this.sdk, address, underlyingStalenessPeriods[i])
68
68
  );
69
69
  }
70
70
  }
@@ -24,13 +24,20 @@ module.exports = __toCommonJS(BalancerStablePriceFeed_exports);
24
24
  var import_abi = require("../../abi/index.js");
25
25
  var import_AbstractLPPriceFeed = require("./AbstractLPPriceFeed.js");
26
26
  class BalancerStablePriceFeedContract extends import_AbstractLPPriceFeed.AbstractLPPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
27
+ constructor(sdk, args) {
28
+ super(sdk, {
29
29
  ...args,
30
30
  name: "BalancerStablePriceFeed",
31
31
  abi: import_abi.bptStablePriceFeedAbi
32
32
  });
33
33
  }
34
+ async getValue() {
35
+ return await this.sdk.client.readContract({
36
+ abi: import_abi.iBalancerStablePoolAbi,
37
+ address: this.lpContract,
38
+ functionName: "getRate"
39
+ });
40
+ }
34
41
  }
35
42
  // Annotate the CommonJS export names for ESM import in node:
36
43
  0 && (module.exports = {
@@ -28,7 +28,7 @@ class BalancerWeightedPriceFeedContract extends import_AbstractLPPriceFeed.Abstr
28
28
  vault;
29
29
  poolId;
30
30
  weights;
31
- constructor(options, args) {
31
+ constructor(sdk, args) {
32
32
  const decoded = (0, import_viem.decodeAbiParameters)(
33
33
  [
34
34
  { type: "bytes", name: "superParams" },
@@ -38,7 +38,7 @@ class BalancerWeightedPriceFeedContract extends import_AbstractLPPriceFeed.Abstr
38
38
  ],
39
39
  (0, import_viem.hexToBytes)(args.baseParams.serializedParams)
40
40
  );
41
- super(options, {
41
+ super(sdk, {
42
42
  ...args,
43
43
  baseParams: {
44
44
  ...args.baseParams,
@@ -51,6 +51,13 @@ class BalancerWeightedPriceFeedContract extends import_AbstractLPPriceFeed.Abstr
51
51
  this.poolId = decoded[2];
52
52
  this.weights = decoded[3];
53
53
  }
54
+ async getValue() {
55
+ return await this.sdk.client.readContract({
56
+ abi: import_abi.iBalancerWeightedPoolAbi,
57
+ address: this.lpContract,
58
+ functionName: "getRate"
59
+ });
60
+ }
54
61
  stateHuman(raw) {
55
62
  return {
56
63
  ...super.stateHuman(raw),
@@ -26,12 +26,8 @@ var import_abi = require("../../abi/index.js");
26
26
  var import_AbstractPriceFeed = require("./AbstractPriceFeed.js");
27
27
  class BoundedPriceFeedContract extends import_AbstractPriceFeed.AbstractPriceFeedContract {
28
28
  upperBound;
29
- constructor(options, args) {
30
- super(options, {
31
- ...args,
32
- name: "BoundedPriceFeed",
33
- abi: import_abi.boundedPriceFeedAbi
34
- });
29
+ constructor(sdk, args) {
30
+ super(sdk, { ...args, name: "BoundedPriceFeed", abi: import_abi.boundedPriceFeedAbi });
35
31
  const decoder = (0, import_viem.decodeAbiParameters)(
36
32
  [
37
33
  { type: "int256" }
@@ -24,8 +24,8 @@ module.exports = __toCommonJS(CompositePriceFeed_exports);
24
24
  var import_abi = require("../../abi/index.js");
25
25
  var import_AbstractPriceFeed = require("./AbstractPriceFeed.js");
26
26
  class CompositePriceFeedContract extends import_AbstractPriceFeed.AbstractPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
27
+ constructor(sdk, args) {
28
+ super(sdk, {
29
29
  ...args,
30
30
  name: "CompositePriceFeed",
31
31
  abi: import_abi.compositePriceFeedAbi
@@ -26,8 +26,8 @@ var import_oracles = require("../../abi/oracles.js");
26
26
  var import_AbstractPriceFeed = require("./AbstractPriceFeed.js");
27
27
  class ConstantPriceFeedContract extends import_AbstractPriceFeed.AbstractPriceFeedContract {
28
28
  price;
29
- constructor(options, args) {
30
- super(options, {
29
+ constructor(sdk, args) {
30
+ super(sdk, {
31
31
  ...args,
32
32
  name: "ConstantPriceFeed",
33
33
  abi: import_oracles.constantPriceFeedAbi,
@@ -24,13 +24,20 @@ module.exports = __toCommonJS(CurveCryptoPriceFeed_exports);
24
24
  var import_abi = require("../../abi/index.js");
25
25
  var import_AbstractLPPriceFeed = require("./AbstractLPPriceFeed.js");
26
26
  class CurveCryptoPriceFeedContract extends import_AbstractLPPriceFeed.AbstractLPPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
27
+ constructor(sdk, args) {
28
+ super(sdk, {
29
29
  ...args,
30
30
  name: "CurveCryptoPriceFeed",
31
31
  abi: import_abi.curveCryptoLpPriceFeedAbi
32
32
  });
33
33
  }
34
+ async getValue() {
35
+ return await this.sdk.client.readContract({
36
+ abi: import_abi.iCurvePoolAbi,
37
+ address: this.lpContract,
38
+ functionName: "get_virtual_price"
39
+ });
40
+ }
34
41
  }
35
42
  // Annotate the CommonJS export names for ESM import in node:
36
43
  0 && (module.exports = {
@@ -24,13 +24,20 @@ module.exports = __toCommonJS(CurveStablePriceFeed_exports);
24
24
  var import_abi = require("../../abi/index.js");
25
25
  var import_AbstractLPPriceFeed = require("./AbstractLPPriceFeed.js");
26
26
  class CurveStablePriceFeedContract extends import_AbstractLPPriceFeed.AbstractLPPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
27
+ constructor(sdk, args) {
28
+ super(sdk, {
29
29
  ...args,
30
30
  name: "CurveStablePriceFeed",
31
31
  abi: import_abi.curveStableLpPriceFeedAbi
32
32
  });
33
33
  }
34
+ async getValue() {
35
+ return await this.sdk.client.readContract({
36
+ abi: import_abi.iCurvePoolAbi,
37
+ address: this.lpContract,
38
+ functionName: "get_virtual_price"
39
+ });
40
+ }
34
41
  }
35
42
  // Annotate the CommonJS export names for ESM import in node:
36
43
  0 && (module.exports = {
@@ -24,13 +24,20 @@ module.exports = __toCommonJS(CurveUSDPriceFeed_exports);
24
24
  var import_abi = require("../../abi/index.js");
25
25
  var import_AbstractLPPriceFeed = require("./AbstractLPPriceFeed.js");
26
26
  class CurveUSDPriceFeedContract extends import_AbstractLPPriceFeed.AbstractLPPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
27
+ constructor(sdk, args) {
28
+ super(sdk, {
29
29
  ...args,
30
30
  name: "CurveUSDPriceFeed",
31
31
  abi: import_abi.curveUsdPriceFeedAbi
32
32
  });
33
33
  }
34
+ async getValue() {
35
+ return await this.sdk.client.readContract({
36
+ abi: import_abi.iCurvePoolAbi,
37
+ address: this.lpContract,
38
+ functionName: "get_virtual_price"
39
+ });
40
+ }
34
41
  }
35
42
  // Annotate the CommonJS export names for ESM import in node:
36
43
  0 && (module.exports = {
@@ -21,16 +21,32 @@ __export(Erc4626PriceFeed_exports, {
21
21
  Erc4626PriceFeedContract: () => Erc4626PriceFeedContract
22
22
  });
23
23
  module.exports = __toCommonJS(Erc4626PriceFeed_exports);
24
+ var import_viem = require("viem");
25
+ var import_iERC20 = require("../../../abi/iERC20.js");
24
26
  var import_abi = require("../../abi/index.js");
25
27
  var import_AbstractLPPriceFeed = require("./AbstractLPPriceFeed.js");
26
28
  class Erc4626PriceFeedContract extends import_AbstractLPPriceFeed.AbstractLPPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
29
+ constructor(sdk, args) {
30
+ super(sdk, {
29
31
  ...args,
30
32
  name: "ERC4626PriceFeed",
31
33
  abi: import_abi.erc4626PriceFeedAbi
32
34
  });
33
35
  }
36
+ async getValue() {
37
+ const decimals = await this.sdk.client.readContract({
38
+ abi: import_iERC20.ierc20Abi,
39
+ address: this.lpContract,
40
+ functionName: "decimals"
41
+ });
42
+ const price = await this.sdk.client.readContract({
43
+ abi: import_viem.erc4626Abi,
44
+ address: this.lpContract,
45
+ functionName: "convertToAssets",
46
+ args: [10n ** BigInt(decimals)]
47
+ });
48
+ return price;
49
+ }
34
50
  }
35
51
  // Annotate the CommonJS export names for ESM import in node:
36
52
  0 && (module.exports = {
@@ -24,8 +24,8 @@ module.exports = __toCommonJS(ExternalPriceFeed_exports);
24
24
  var import_abi = require("../../abi/index.js");
25
25
  var import_AbstractPriceFeed = require("./AbstractPriceFeed.js");
26
26
  class ExternalPriceFeedContract extends import_AbstractPriceFeed.AbstractPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
27
+ constructor(sdk, args) {
28
+ super(sdk, {
29
29
  ...args,
30
30
  name: "ExternalPriceFeed",
31
31
  abi: import_abi.chainlinkReadableAggregatorAbi
@@ -24,13 +24,21 @@ module.exports = __toCommonJS(MellowLRTPriceFeed_exports);
24
24
  var import_abi = require("../../abi/index.js");
25
25
  var import_AbstractLPPriceFeed = require("./AbstractLPPriceFeed.js");
26
26
  class MellowLRTPriceFeedContract extends import_AbstractLPPriceFeed.AbstractLPPriceFeedContract {
27
- constructor(options, args) {
28
- super(options, {
27
+ constructor(sdk, args) {
28
+ super(sdk, {
29
29
  ...args,
30
30
  name: "MellowLRTPriceFeed",
31
31
  abi: import_abi.mellowLrtPriceFeedAbi
32
32
  });
33
33
  }
34
+ async getValue() {
35
+ const stack = await this.sdk.client.readContract({
36
+ abi: import_abi.iMellowVaultAbi,
37
+ address: this.lpContract,
38
+ functionName: "calculateStack"
39
+ });
40
+ return stack.totalValue * BigInt(1e18) / stack.totalSupply;
41
+ }
34
42
  }
35
43
  // Annotate the CommonJS export names for ESM import in node:
36
44
  0 && (module.exports = {
@@ -32,8 +32,8 @@ class PendleTWAPPTPriceFeed extends import_AbstractPriceFeed.AbstractPriceFeedCo
32
32
  expiry;
33
33
  twapWindow;
34
34
  priceToSy;
35
- constructor(options, args) {
36
- super(options, {
35
+ constructor(sdk, args) {
36
+ super(sdk, {
37
37
  ...args,
38
38
  name: "PendleTWAPPTPriceFeed",
39
39
  abi
@@ -23,20 +23,18 @@ __export(PriceFeedRef_exports, {
23
23
  module.exports = __toCommonJS(PriceFeedRef_exports);
24
24
  var import_base = require("../../base/index.js");
25
25
  var import_utils = require("../../utils/index.js");
26
- class PriceFeedRef extends import_base.Construct {
26
+ class PriceFeedRef extends import_base.SDKConstruct {
27
27
  address;
28
28
  stalenessPeriod;
29
29
  #priceFeed;
30
- constructor(options, address, stalenessPeriod) {
31
- super(options);
30
+ constructor(sdk, address, stalenessPeriod) {
31
+ super(sdk);
32
32
  this.address = address;
33
33
  this.stalenessPeriod = stalenessPeriod;
34
34
  }
35
35
  get priceFeed() {
36
36
  if (!this.#priceFeed) {
37
- this.#priceFeed = this.register.mustGetContract(
38
- this.address
39
- );
37
+ this.#priceFeed = this.sdk.priceFeeds.mustGet(this.address);
40
38
  }
41
39
  return this.#priceFeed;
42
40
  }
@@ -48,12 +48,14 @@ var import_WstETHPriceFeed = require("./WstETHPriceFeed.js");
48
48
  var import_YearnPriceFeed = require("./YearnPriceFeed.js");
49
49
  var import_ZeroPriceFeed = require("./ZeroPriceFeed.js");
50
50
  class PriceFeedRegister extends import_base.SDKConstruct {
51
+ logger;
51
52
  #hooks = new import_internal.Hooks();
52
53
  #feeds = new import_utils.AddressMap(void 0, "priceFeeds");
53
54
  #latestUpdate;
54
55
  updaters;
55
56
  constructor(sdk, opts = {}) {
56
57
  super(sdk);
58
+ this.logger = (0, import_utils.childLogger)("PriceFeedRegister", sdk.logger);
57
59
  this.updaters = [
58
60
  new import_updates.RedstoneUpdater(sdk, opts?.redstone),
59
61
  new import_updates.PythUpdater(sdk, opts?.pyth)
@@ -283,8 +285,7 @@ class PriceFeedRegister extends import_base.SDKConstruct {
283
285
  }
284
286
  }
285
287
  #createUpdatableProxy(data) {
286
- const contract = this.#feeds.get(data.baseParams.addr) ?? this.create(data);
287
- return new Proxy(contract, {
288
+ return new Proxy(this.create(data), {
288
289
  get(target, prop) {
289
290
  if (prop === "updatableDependencies") {
290
291
  return () => [target];
@@ -30,8 +30,8 @@ class PythPriceFeed extends import_AbstractPriceFeed.AbstractPriceFeedContract {
30
30
  priceFeedId;
31
31
  pyth;
32
32
  maxConfToPriceRatio;
33
- constructor(options, args) {
34
- super(options, {
33
+ constructor(sdk, args) {
34
+ super(sdk, {
35
35
  ...args,
36
36
  name: "PythPriceFeed",
37
37
  abi