@1delta/margin-fetcher 0.0.265 → 0.0.266

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 (346) hide show
  1. package/dist/ccip-XQNAHYUN.js +5 -0
  2. package/dist/{ccip-SQXTDOS7.js.map → ccip-XQNAHYUN.js.map} +1 -1
  3. package/dist/{chunk-KQ6K6D2V.js → chunk-H6U3H7VY.js} +4 -4
  4. package/dist/{chunk-KQ6K6D2V.js.map → chunk-H6U3H7VY.js.map} +1 -1
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +8151 -316
  8. package/dist/index.js.map +1 -1
  9. package/dist/vaults/classification.d.ts +78 -0
  10. package/dist/vaults/classification.d.ts.map +1 -0
  11. package/dist/vaults/euler-earn/types.d.ts +2 -1
  12. package/dist/vaults/euler-earn/types.d.ts.map +1 -1
  13. package/dist/vaults/fetchVaultsAll.d.ts +25 -1
  14. package/dist/vaults/fetchVaultsAll.d.ts.map +1 -1
  15. package/dist/vaults/fluid/types.d.ts +2 -1
  16. package/dist/vaults/fluid/types.d.ts.map +1 -1
  17. package/dist/vaults/gearbox/types.d.ts +2 -1
  18. package/dist/vaults/gearbox/types.d.ts.map +1 -1
  19. package/dist/vaults/gmx/abis.d.ts +590 -0
  20. package/dist/vaults/gmx/abis.d.ts.map +1 -0
  21. package/dist/vaults/gmx/api.d.ts +54 -0
  22. package/dist/vaults/gmx/api.d.ts.map +1 -0
  23. package/dist/vaults/gmx/contracts.d.ts +20 -0
  24. package/dist/vaults/gmx/contracts.d.ts.map +1 -0
  25. package/dist/vaults/gmx/fetchPublic.d.ts +21 -0
  26. package/dist/vaults/gmx/fetchPublic.d.ts.map +1 -0
  27. package/dist/vaults/gmx/fetchUser.d.ts +19 -0
  28. package/dist/vaults/gmx/fetchUser.d.ts.map +1 -0
  29. package/dist/vaults/gmx/index.d.ts +9 -0
  30. package/dist/vaults/gmx/index.d.ts.map +1 -0
  31. package/dist/vaults/gmx/keys.d.ts +25 -0
  32. package/dist/vaults/gmx/keys.d.ts.map +1 -0
  33. package/dist/vaults/gmx/pricing.d.ts +52 -0
  34. package/dist/vaults/gmx/pricing.d.ts.map +1 -0
  35. package/dist/vaults/gmx/registry.d.ts +13 -0
  36. package/dist/vaults/gmx/registry.d.ts.map +1 -0
  37. package/dist/vaults/gmx/types.d.ts +155 -0
  38. package/dist/vaults/gmx/types.d.ts.map +1 -0
  39. package/dist/vaults/hypercore/fetchPublic.d.ts +13 -0
  40. package/dist/vaults/hypercore/fetchPublic.d.ts.map +1 -0
  41. package/dist/vaults/hypercore/fetchUser.d.ts +18 -0
  42. package/dist/vaults/hypercore/fetchUser.d.ts.map +1 -0
  43. package/dist/vaults/hypercore/index.d.ts +5 -0
  44. package/dist/vaults/hypercore/index.d.ts.map +1 -0
  45. package/dist/vaults/hypercore/registry.d.ts +19 -0
  46. package/dist/vaults/hypercore/registry.d.ts.map +1 -0
  47. package/dist/vaults/hypercore/types.d.ts +80 -0
  48. package/dist/vaults/hypercore/types.d.ts.map +1 -0
  49. package/dist/vaults/index.d.ts +8 -0
  50. package/dist/vaults/index.d.ts.map +1 -1
  51. package/dist/vaults/interfaceKind.d.ts +33 -0
  52. package/dist/vaults/interfaceKind.d.ts.map +1 -0
  53. package/dist/vaults/lagoon/api.d.ts +67 -0
  54. package/dist/vaults/lagoon/api.d.ts.map +1 -0
  55. package/dist/vaults/lagoon/fetchPublic.d.ts +19 -0
  56. package/dist/vaults/lagoon/fetchPublic.d.ts.map +1 -0
  57. package/dist/vaults/lagoon/index.d.ts +4 -0
  58. package/dist/vaults/lagoon/index.d.ts.map +1 -0
  59. package/dist/vaults/lagoon/types.d.ts +104 -0
  60. package/dist/vaults/lagoon/types.d.ts.map +1 -0
  61. package/dist/vaults/lookup.d.ts +20 -0
  62. package/dist/vaults/lookup.d.ts.map +1 -1
  63. package/dist/vaults/lst/abis/ankr.d.ts +14 -0
  64. package/dist/vaults/lst/abis/ankr.d.ts.map +1 -0
  65. package/dist/vaults/lst/abis/beets.d.ts +21 -0
  66. package/dist/vaults/lst/abis/beets.d.ts.map +1 -0
  67. package/dist/vaults/lst/abis/benqi.d.ts +25 -0
  68. package/dist/vaults/lst/abis/benqi.d.ts.map +1 -0
  69. package/dist/vaults/lst/abis/dinero.d.ts +16 -0
  70. package/dist/vaults/lst/abis/dinero.d.ts.map +1 -0
  71. package/dist/vaults/lst/abis/etherfi.d.ts +21 -0
  72. package/dist/vaults/lst/abis/etherfi.d.ts.map +1 -0
  73. package/dist/vaults/lst/abis/hyperbeat.d.ts +17 -0
  74. package/dist/vaults/lst/abis/hyperbeat.d.ts.map +1 -0
  75. package/dist/vaults/lst/abis/index.d.ts +30 -0
  76. package/dist/vaults/lst/abis/index.d.ts.map +1 -0
  77. package/dist/vaults/lst/abis/kelp.d.ts +11 -0
  78. package/dist/vaults/lst/abis/kelp.d.ts.map +1 -0
  79. package/dist/vaults/lst/abis/kinetiq.d.ts +16 -0
  80. package/dist/vaults/lst/abis/kinetiq.d.ts.map +1 -0
  81. package/dist/vaults/lst/abis/lair.d.ts +25 -0
  82. package/dist/vaults/lst/abis/lair.d.ts.map +1 -0
  83. package/dist/vaults/lst/abis/lido.d.ts +11 -0
  84. package/dist/vaults/lst/abis/lido.d.ts.map +1 -0
  85. package/dist/vaults/lst/abis/lista.d.ts +28 -0
  86. package/dist/vaults/lst/abis/lista.d.ts.map +1 -0
  87. package/dist/vaults/lst/abis/mantle.d.ts +15 -0
  88. package/dist/vaults/lst/abis/mantle.d.ts.map +1 -0
  89. package/dist/vaults/lst/abis/renzo.d.ts +17 -0
  90. package/dist/vaults/lst/abis/renzo.d.ts.map +1 -0
  91. package/dist/vaults/lst/abis/rocketpool.d.ts +29 -0
  92. package/dist/vaults/lst/abis/rocketpool.d.ts.map +1 -0
  93. package/dist/vaults/lst/abis/shared.d.ts +57 -0
  94. package/dist/vaults/lst/abis/shared.d.ts.map +1 -0
  95. package/dist/vaults/lst/abis/stader.d.ts +34 -0
  96. package/dist/vaults/lst/abis/stader.d.ts.map +1 -0
  97. package/dist/vaults/lst/abis/stakewise.d.ts +16 -0
  98. package/dist/vaults/lst/abis/stakewise.d.ts.map +1 -0
  99. package/dist/vaults/lst/abis/stcelo.d.ts +17 -0
  100. package/dist/vaults/lst/abis/stcelo.d.ts.map +1 -0
  101. package/dist/vaults/lst/abis/swell.d.ts +13 -0
  102. package/dist/vaults/lst/abis/swell.d.ts.map +1 -0
  103. package/dist/vaults/lst/abis/valantis.d.ts +13 -0
  104. package/dist/vaults/lst/abis/valantis.d.ts.map +1 -0
  105. package/dist/vaults/lst/abis/veda.d.ts +14 -0
  106. package/dist/vaults/lst/abis/veda.d.ts.map +1 -0
  107. package/dist/vaults/lst/fetchPublic.d.ts +25 -0
  108. package/dist/vaults/lst/fetchPublic.d.ts.map +1 -0
  109. package/dist/vaults/lst/index.d.ts +5 -0
  110. package/dist/vaults/lst/index.d.ts.map +1 -0
  111. package/dist/vaults/lst/readers/ankr.d.ts +16 -0
  112. package/dist/vaults/lst/readers/ankr.d.ts.map +1 -0
  113. package/dist/vaults/lst/readers/beets.d.ts +16 -0
  114. package/dist/vaults/lst/readers/beets.d.ts.map +1 -0
  115. package/dist/vaults/lst/readers/benqi.d.ts +16 -0
  116. package/dist/vaults/lst/readers/benqi.d.ts.map +1 -0
  117. package/dist/vaults/lst/readers/bgtWrapper.d.ts +14 -0
  118. package/dist/vaults/lst/readers/bgtWrapper.d.ts.map +1 -0
  119. package/dist/vaults/lst/readers/dinero.d.ts +14 -0
  120. package/dist/vaults/lst/readers/dinero.d.ts.map +1 -0
  121. package/dist/vaults/lst/readers/erc4626.d.ts +23 -0
  122. package/dist/vaults/lst/readers/erc4626.d.ts.map +1 -0
  123. package/dist/vaults/lst/readers/etherfi.d.ts +15 -0
  124. package/dist/vaults/lst/readers/etherfi.d.ts.map +1 -0
  125. package/dist/vaults/lst/readers/hyperbeat.d.ts +17 -0
  126. package/dist/vaults/lst/readers/hyperbeat.d.ts.map +1 -0
  127. package/dist/vaults/lst/readers/index.d.ts +22 -0
  128. package/dist/vaults/lst/readers/index.d.ts.map +1 -0
  129. package/dist/vaults/lst/readers/kelp.d.ts +13 -0
  130. package/dist/vaults/lst/readers/kelp.d.ts.map +1 -0
  131. package/dist/vaults/lst/readers/kinetiq.d.ts +17 -0
  132. package/dist/vaults/lst/readers/kinetiq.d.ts.map +1 -0
  133. package/dist/vaults/lst/readers/lair.d.ts +16 -0
  134. package/dist/vaults/lst/readers/lair.d.ts.map +1 -0
  135. package/dist/vaults/lst/readers/lido.d.ts +12 -0
  136. package/dist/vaults/lst/readers/lido.d.ts.map +1 -0
  137. package/dist/vaults/lst/readers/lista.d.ts +17 -0
  138. package/dist/vaults/lst/readers/lista.d.ts.map +1 -0
  139. package/dist/vaults/lst/readers/mantle.d.ts +14 -0
  140. package/dist/vaults/lst/readers/mantle.d.ts.map +1 -0
  141. package/dist/vaults/lst/readers/offChain.d.ts +11 -0
  142. package/dist/vaults/lst/readers/offChain.d.ts.map +1 -0
  143. package/dist/vaults/lst/readers/renzo.d.ts +19 -0
  144. package/dist/vaults/lst/readers/renzo.d.ts.map +1 -0
  145. package/dist/vaults/lst/readers/rocketpool.d.ts +17 -0
  146. package/dist/vaults/lst/readers/rocketpool.d.ts.map +1 -0
  147. package/dist/vaults/lst/readers/shared.d.ts +65 -0
  148. package/dist/vaults/lst/readers/shared.d.ts.map +1 -0
  149. package/dist/vaults/lst/readers/stader.d.ts +34 -0
  150. package/dist/vaults/lst/readers/stader.d.ts.map +1 -0
  151. package/dist/vaults/lst/readers/stakewise.d.ts +14 -0
  152. package/dist/vaults/lst/readers/stakewise.d.ts.map +1 -0
  153. package/dist/vaults/lst/readers/stcelo.d.ts +15 -0
  154. package/dist/vaults/lst/readers/stcelo.d.ts.map +1 -0
  155. package/dist/vaults/lst/readers/swell.d.ts +13 -0
  156. package/dist/vaults/lst/readers/swell.d.ts.map +1 -0
  157. package/dist/vaults/lst/readers/valantis.d.ts +15 -0
  158. package/dist/vaults/lst/readers/valantis.d.ts.map +1 -0
  159. package/dist/vaults/lst/readers/veda.d.ts +19 -0
  160. package/dist/vaults/lst/readers/veda.d.ts.map +1 -0
  161. package/dist/vaults/lst/registry.d.ts +125 -0
  162. package/dist/vaults/lst/registry.d.ts.map +1 -0
  163. package/dist/vaults/lst/types.d.ts +124 -0
  164. package/dist/vaults/lst/types.d.ts.map +1 -0
  165. package/dist/vaults/lst/withdrawals/abis/beets.d.ts +51 -0
  166. package/dist/vaults/lst/withdrawals/abis/beets.d.ts.map +1 -0
  167. package/dist/vaults/lst/withdrawals/abis/behype.d.ts +52 -0
  168. package/dist/vaults/lst/withdrawals/abis/behype.d.ts.map +1 -0
  169. package/dist/vaults/lst/withdrawals/abis/benqi.d.ts +55 -0
  170. package/dist/vaults/lst/withdrawals/abis/benqi.d.ts.map +1 -0
  171. package/dist/vaults/lst/withdrawals/abis/berapaw.d.ts +33 -0
  172. package/dist/vaults/lst/withdrawals/abis/berapaw.d.ts.map +1 -0
  173. package/dist/vaults/lst/withdrawals/abis/erc7540.d.ts +50 -0
  174. package/dist/vaults/lst/withdrawals/abis/erc7540.d.ts.map +1 -0
  175. package/dist/vaults/lst/withdrawals/abis/ethena.d.ts +25 -0
  176. package/dist/vaults/lst/withdrawals/abis/ethena.d.ts.map +1 -0
  177. package/dist/vaults/lst/withdrawals/abis/etherfi.d.ts +70 -0
  178. package/dist/vaults/lst/withdrawals/abis/etherfi.d.ts.map +1 -0
  179. package/dist/vaults/lst/withdrawals/abis/ibera.d.ts +52 -0
  180. package/dist/vaults/lst/withdrawals/abis/ibera.d.ts.map +1 -0
  181. package/dist/vaults/lst/withdrawals/abis/index.d.ts +24 -0
  182. package/dist/vaults/lst/withdrawals/abis/index.d.ts.map +1 -0
  183. package/dist/vaults/lst/withdrawals/abis/kelp.d.ts +46 -0
  184. package/dist/vaults/lst/withdrawals/abis/kelp.d.ts.map +1 -0
  185. package/dist/vaults/lst/withdrawals/abis/kinetiq.d.ts +59 -0
  186. package/dist/vaults/lst/withdrawals/abis/kinetiq.d.ts.map +1 -0
  187. package/dist/vaults/lst/withdrawals/abis/lido.d.ts +53 -0
  188. package/dist/vaults/lst/withdrawals/abis/lido.d.ts.map +1 -0
  189. package/dist/vaults/lst/withdrawals/abis/lista.d.ts +47 -0
  190. package/dist/vaults/lst/withdrawals/abis/lista.d.ts.map +1 -0
  191. package/dist/vaults/lst/withdrawals/abis/mantle.d.ts +54 -0
  192. package/dist/vaults/lst/withdrawals/abis/mantle.d.ts.map +1 -0
  193. package/dist/vaults/lst/withdrawals/abis/primestaking.d.ts +57 -0
  194. package/dist/vaults/lst/withdrawals/abis/primestaking.d.ts.map +1 -0
  195. package/dist/vaults/lst/withdrawals/abis/puffer.d.ts +48 -0
  196. package/dist/vaults/lst/withdrawals/abis/puffer.d.ts.map +1 -0
  197. package/dist/vaults/lst/withdrawals/abis/renzo.d.ts +50 -0
  198. package/dist/vaults/lst/withdrawals/abis/renzo.d.ts.map +1 -0
  199. package/dist/vaults/lst/withdrawals/abis/staderEthx.d.ts +48 -0
  200. package/dist/vaults/lst/withdrawals/abis/staderEthx.d.ts.map +1 -0
  201. package/dist/vaults/lst/withdrawals/abis/staderMaticx.d.ts +50 -0
  202. package/dist/vaults/lst/withdrawals/abis/staderMaticx.d.ts.map +1 -0
  203. package/dist/vaults/lst/withdrawals/abis/stakewise.d.ts +47 -0
  204. package/dist/vaults/lst/withdrawals/abis/stakewise.d.ts.map +1 -0
  205. package/dist/vaults/lst/withdrawals/abis/stcelo.d.ts +24 -0
  206. package/dist/vaults/lst/withdrawals/abis/stcelo.d.ts.map +1 -0
  207. package/dist/vaults/lst/withdrawals/abis/swell.d.ts +66 -0
  208. package/dist/vaults/lst/withdrawals/abis/swell.d.ts.map +1 -0
  209. package/dist/vaults/lst/withdrawals/abis/trufin.d.ts +43 -0
  210. package/dist/vaults/lst/withdrawals/abis/trufin.d.ts.map +1 -0
  211. package/dist/vaults/lst/withdrawals/abis/valantis.d.ts +46 -0
  212. package/dist/vaults/lst/withdrawals/abis/valantis.d.ts.map +1 -0
  213. package/dist/vaults/lst/withdrawals/abis/yieldnest.d.ts +65 -0
  214. package/dist/vaults/lst/withdrawals/abis/yieldnest.d.ts.map +1 -0
  215. package/dist/vaults/lst/withdrawals/fetchPublic.d.ts +53 -0
  216. package/dist/vaults/lst/withdrawals/fetchPublic.d.ts.map +1 -0
  217. package/dist/vaults/lst/withdrawals/index.d.ts +5 -0
  218. package/dist/vaults/lst/withdrawals/index.d.ts.map +1 -0
  219. package/dist/vaults/lst/withdrawals/readers/beets.d.ts +13 -0
  220. package/dist/vaults/lst/withdrawals/readers/beets.d.ts.map +1 -0
  221. package/dist/vaults/lst/withdrawals/readers/behype.d.ts +15 -0
  222. package/dist/vaults/lst/withdrawals/readers/behype.d.ts.map +1 -0
  223. package/dist/vaults/lst/withdrawals/readers/benqi.d.ts +15 -0
  224. package/dist/vaults/lst/withdrawals/readers/benqi.d.ts.map +1 -0
  225. package/dist/vaults/lst/withdrawals/readers/berapaw.d.ts +13 -0
  226. package/dist/vaults/lst/withdrawals/readers/berapaw.d.ts.map +1 -0
  227. package/dist/vaults/lst/withdrawals/readers/empty.d.ts +21 -0
  228. package/dist/vaults/lst/withdrawals/readers/empty.d.ts.map +1 -0
  229. package/dist/vaults/lst/withdrawals/readers/erc7540.d.ts +22 -0
  230. package/dist/vaults/lst/withdrawals/readers/erc7540.d.ts.map +1 -0
  231. package/dist/vaults/lst/withdrawals/readers/ethenaCooldown.d.ts +13 -0
  232. package/dist/vaults/lst/withdrawals/readers/ethenaCooldown.d.ts.map +1 -0
  233. package/dist/vaults/lst/withdrawals/readers/etherfi.d.ts +13 -0
  234. package/dist/vaults/lst/withdrawals/readers/etherfi.d.ts.map +1 -0
  235. package/dist/vaults/lst/withdrawals/readers/ibera.d.ts +3 -0
  236. package/dist/vaults/lst/withdrawals/readers/ibera.d.ts.map +1 -0
  237. package/dist/vaults/lst/withdrawals/readers/index.d.ts +7 -0
  238. package/dist/vaults/lst/withdrawals/readers/index.d.ts.map +1 -0
  239. package/dist/vaults/lst/withdrawals/readers/kelp.d.ts +21 -0
  240. package/dist/vaults/lst/withdrawals/readers/kelp.d.ts.map +1 -0
  241. package/dist/vaults/lst/withdrawals/readers/kinetiq.d.ts +13 -0
  242. package/dist/vaults/lst/withdrawals/readers/kinetiq.d.ts.map +1 -0
  243. package/dist/vaults/lst/withdrawals/readers/lair.d.ts +23 -0
  244. package/dist/vaults/lst/withdrawals/readers/lair.d.ts.map +1 -0
  245. package/dist/vaults/lst/withdrawals/readers/lido.d.ts +16 -0
  246. package/dist/vaults/lst/withdrawals/readers/lido.d.ts.map +1 -0
  247. package/dist/vaults/lst/withdrawals/readers/lista.d.ts +18 -0
  248. package/dist/vaults/lst/withdrawals/readers/lista.d.ts.map +1 -0
  249. package/dist/vaults/lst/withdrawals/readers/mantle.d.ts +18 -0
  250. package/dist/vaults/lst/withdrawals/readers/mantle.d.ts.map +1 -0
  251. package/dist/vaults/lst/withdrawals/readers/primestaking.d.ts +3 -0
  252. package/dist/vaults/lst/withdrawals/readers/primestaking.d.ts.map +1 -0
  253. package/dist/vaults/lst/withdrawals/readers/puffer.d.ts +17 -0
  254. package/dist/vaults/lst/withdrawals/readers/puffer.d.ts.map +1 -0
  255. package/dist/vaults/lst/withdrawals/readers/renzo.d.ts +16 -0
  256. package/dist/vaults/lst/withdrawals/readers/renzo.d.ts.map +1 -0
  257. package/dist/vaults/lst/withdrawals/readers/shared.d.ts +56 -0
  258. package/dist/vaults/lst/withdrawals/readers/shared.d.ts.map +1 -0
  259. package/dist/vaults/lst/withdrawals/readers/staderEthx.d.ts +15 -0
  260. package/dist/vaults/lst/withdrawals/readers/staderEthx.d.ts.map +1 -0
  261. package/dist/vaults/lst/withdrawals/readers/staderMaticx.d.ts +18 -0
  262. package/dist/vaults/lst/withdrawals/readers/staderMaticx.d.ts.map +1 -0
  263. package/dist/vaults/lst/withdrawals/readers/stakewise.d.ts +26 -0
  264. package/dist/vaults/lst/withdrawals/readers/stakewise.d.ts.map +1 -0
  265. package/dist/vaults/lst/withdrawals/readers/stcelo.d.ts +16 -0
  266. package/dist/vaults/lst/withdrawals/readers/stcelo.d.ts.map +1 -0
  267. package/dist/vaults/lst/withdrawals/readers/swell.d.ts +18 -0
  268. package/dist/vaults/lst/withdrawals/readers/swell.d.ts.map +1 -0
  269. package/dist/vaults/lst/withdrawals/readers/trufin.d.ts +19 -0
  270. package/dist/vaults/lst/withdrawals/readers/trufin.d.ts.map +1 -0
  271. package/dist/vaults/lst/withdrawals/readers/valantis.d.ts +11 -0
  272. package/dist/vaults/lst/withdrawals/readers/valantis.d.ts.map +1 -0
  273. package/dist/vaults/lst/withdrawals/readers/yieldnest.d.ts +11 -0
  274. package/dist/vaults/lst/withdrawals/readers/yieldnest.d.ts.map +1 -0
  275. package/dist/vaults/lst/withdrawals/registry.d.ts +46 -0
  276. package/dist/vaults/lst/withdrawals/registry.d.ts.map +1 -0
  277. package/dist/vaults/lst/withdrawals/types.d.ts +74 -0
  278. package/dist/vaults/lst/withdrawals/types.d.ts.map +1 -0
  279. package/dist/vaults/lst/yieldBinding.d.ts +26 -0
  280. package/dist/vaults/lst/yieldBinding.d.ts.map +1 -0
  281. package/dist/vaults/morpho/types.d.ts +2 -1
  282. package/dist/vaults/morpho/types.d.ts.map +1 -1
  283. package/dist/vaults/savings/abis/index.d.ts +12 -0
  284. package/dist/vaults/savings/abis/index.d.ts.map +1 -0
  285. package/dist/vaults/savings/abis/shared.d.ts +33 -0
  286. package/dist/vaults/savings/abis/shared.d.ts.map +1 -0
  287. package/dist/vaults/savings/fetchPublic.d.ts +22 -0
  288. package/dist/vaults/savings/fetchPublic.d.ts.map +1 -0
  289. package/dist/vaults/savings/index.d.ts +4 -0
  290. package/dist/vaults/savings/index.d.ts.map +1 -0
  291. package/dist/vaults/savings/readers/erc4626.d.ts +25 -0
  292. package/dist/vaults/savings/readers/erc4626.d.ts.map +1 -0
  293. package/dist/vaults/savings/readers/index.d.ts +16 -0
  294. package/dist/vaults/savings/readers/index.d.ts.map +1 -0
  295. package/dist/vaults/savings/readers/shared.d.ts +44 -0
  296. package/dist/vaults/savings/readers/shared.d.ts.map +1 -0
  297. package/dist/vaults/savings/registry.d.ts +69 -0
  298. package/dist/vaults/savings/registry.d.ts.map +1 -0
  299. package/dist/vaults/savings/types.d.ts +111 -0
  300. package/dist/vaults/savings/types.d.ts.map +1 -0
  301. package/dist/vaults/savings/yieldBinding.d.ts +19 -0
  302. package/dist/vaults/savings/yieldBinding.d.ts.map +1 -0
  303. package/dist/vaults/silo/types.d.ts +2 -1
  304. package/dist/vaults/silo/types.d.ts.map +1 -1
  305. package/dist/vaults/yield/annualize.d.ts +62 -0
  306. package/dist/vaults/yield/annualize.d.ts.map +1 -0
  307. package/dist/vaults/yield/index.d.ts +3 -0
  308. package/dist/vaults/yield/index.d.ts.map +1 -0
  309. package/dist/vaults/yield/sharePrice.d.ts +21 -0
  310. package/dist/vaults/yield/sharePrice.d.ts.map +1 -0
  311. package/dist/yields/intrinsic/fetchers/ankr.d.ts +3 -0
  312. package/dist/yields/intrinsic/fetchers/ankr.d.ts.map +1 -0
  313. package/dist/yields/intrinsic/fetchers/berapaw.d.ts +3 -0
  314. package/dist/yields/intrinsic/fetchers/berapaw.d.ts.map +1 -0
  315. package/dist/yields/intrinsic/fetchers/defillama.d.ts +2 -0
  316. package/dist/yields/intrinsic/fetchers/defillama.d.ts.map +1 -0
  317. package/dist/yields/intrinsic/fetchers/dinero.d.ts +3 -0
  318. package/dist/yields/intrinsic/fetchers/dinero.d.ts.map +1 -0
  319. package/dist/yields/intrinsic/fetchers/etherfi.d.ts +1 -0
  320. package/dist/yields/intrinsic/fetchers/etherfi.d.ts.map +1 -1
  321. package/dist/yields/intrinsic/fetchers/infrared.d.ts +4 -0
  322. package/dist/yields/intrinsic/fetchers/infrared.d.ts.map +1 -0
  323. package/dist/yields/intrinsic/fetchers/kinetiq.d.ts +3 -0
  324. package/dist/yields/intrinsic/fetchers/kinetiq.d.ts.map +1 -0
  325. package/dist/yields/intrinsic/fetchers/lair.d.ts +3 -0
  326. package/dist/yields/intrinsic/fetchers/lair.d.ts.map +1 -0
  327. package/dist/yields/intrinsic/fetchers/lista.d.ts +3 -0
  328. package/dist/yields/intrinsic/fetchers/lista.d.ts.map +1 -0
  329. package/dist/yields/intrinsic/fetchers/lombard.d.ts +3 -0
  330. package/dist/yields/intrinsic/fetchers/lombard.d.ts.map +1 -0
  331. package/dist/yields/intrinsic/fetchers/primestaking.d.ts +3 -0
  332. package/dist/yields/intrinsic/fetchers/primestaking.d.ts.map +1 -0
  333. package/dist/yields/intrinsic/fetchers/solv.d.ts +3 -0
  334. package/dist/yields/intrinsic/fetchers/solv.d.ts.map +1 -0
  335. package/dist/yields/intrinsic/fetchers/stcelo.d.ts +3 -0
  336. package/dist/yields/intrinsic/fetchers/stcelo.d.ts.map +1 -0
  337. package/dist/yields/intrinsic/fetchers/swBTC.d.ts +3 -0
  338. package/dist/yields/intrinsic/fetchers/swBTC.d.ts.map +1 -0
  339. package/dist/yields/intrinsic/fetchers/trufin.d.ts +1 -0
  340. package/dist/yields/intrinsic/fetchers/trufin.d.ts.map +1 -1
  341. package/dist/yields/intrinsic/fetchers/valantis.d.ts +3 -0
  342. package/dist/yields/intrinsic/fetchers/valantis.d.ts.map +1 -0
  343. package/dist/yields/intrinsic/fetchers/yieldnest.d.ts.map +1 -1
  344. package/dist/yields/intrinsic/index.d.ts.map +1 -1
  345. package/package.json +5 -5
  346. package/dist/ccip-SQXTDOS7.js +0 -5
@@ -0,0 +1,34 @@
1
+ import type { LstRegistryEntry } from '../registry';
2
+ import { type LstReader } from './shared';
3
+ /**
4
+ * Stader ETHx reader.
5
+ *
6
+ * Two calls: `ETHx.totalSupply()` + `StakePoolsManager
7
+ * .getExchangeRate()` (returns 1e18-scaled ETH-per-ETHx rate).
8
+ *
9
+ * Fallback: when `readerExtras.staderStakePoolsManager` is absent,
10
+ * fall back to `ETHx.totalSupply()` with a 1:1 placeholder rate.
11
+ */
12
+ export declare const readerStaderEthx: (entry: LstRegistryEntry) => LstReader;
13
+ /**
14
+ * Stader MaticX reader.
15
+ *
16
+ * Two calls:
17
+ * 1. `MaticX.totalSupply()` — on the entry's chain (Ethereum
18
+ * L1 entry or Polygon bridge-token entry)
19
+ * 2. `convertMaticXToMatic(1e18)` — on the **home** contract; the
20
+ * Polygon bridge child has no rate getter, so the call always
21
+ * goes to the Ethereum home contract. When
22
+ * `readerExtras.staderMaticXHomeContract` is set, the call is
23
+ * dispatched cross-chain to the home contract on
24
+ * `readerExtras.staderMaticXHomeChainId`. Otherwise it's a
25
+ * local call on `entry.address`.
26
+ *
27
+ * The 3-tuple return is `(amountInMatic, totalShares,
28
+ * totalPooledMatic)`; element 0 is the 1e18-scaled rate, element 2
29
+ * is total MATIC pooled (a stronger `totalAssets` than the derived
30
+ * `totalSupply * rate / 1e18`, but only from the home chain — on
31
+ * Polygon we still surface the Polygon-side `totalSupply`).
32
+ */
33
+ export declare const readerStaderMaticX: (entry: LstRegistryEntry) => LstReader;
34
+ //# sourceMappingURL=stader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stader.d.ts","sourceRoot":"","sources":["../../../../src/vaults/lst/readers/stader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,gBAAgB,KAAG,SAoC1D,CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,gBAAgB,KAAG,SAsC5D,CAAA"}
@@ -0,0 +1,14 @@
1
+ import type { LstRegistryEntry } from '../registry';
2
+ import { type LstReader } from './shared';
3
+ /**
4
+ * StakeWise V3 osETH reader.
5
+ *
6
+ * Two calls: `osETH.totalSupply()` + `OsTokenVaultController
7
+ * .convertToAssets(1e18)`. The controller does the share→assets
8
+ * conversion at the protocol's current exchange rate.
9
+ *
10
+ * Fallback: when `readerExtras.osTokenController` is absent, surface
11
+ * a 1:1 placeholder rate.
12
+ */
13
+ export declare const readerStakeWiseOsEth: (entry: LstRegistryEntry) => LstReader;
14
+ //# sourceMappingURL=stakewise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakewise.d.ts","sourceRoot":"","sources":["../../../../src/vaults/lst/readers/stakewise.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAAI,OAAO,gBAAgB,KAAG,SAoC9D,CAAA"}
@@ -0,0 +1,15 @@
1
+ import type { LstRegistryEntry } from '../registry';
2
+ import { type LstReader } from './shared';
3
+ /**
4
+ * StakedCelo (stCELO) reader.
5
+ *
6
+ * Two calls: `stCELO.totalSupply()` + `Manager.toCelo(1e18)` (returns
7
+ * the 1e18-scaled CELO-per-stCELO rate). stCELO is value-accruing
8
+ * (non-rebasing); the Manager holds the rate, not the token.
9
+ *
10
+ * The Manager address is pinned in
11
+ * `entry.readerExtras.stceloManager`. Falls back to a 1:1 placeholder
12
+ * if absent.
13
+ */
14
+ export declare const readerStCelo: (entry: LstRegistryEntry) => LstReader;
15
+ //# sourceMappingURL=stcelo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stcelo.d.ts","sourceRoot":"","sources":["../../../../src/vaults/lst/readers/stcelo.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,gBAAgB,KAAG,SAoCtD,CAAA"}
@@ -0,0 +1,13 @@
1
+ import type { LstRegistryEntry } from '../registry';
2
+ import { type LstReader } from './shared';
3
+ /**
4
+ * Swell rswETH reader — `getRate()`.
5
+ *
6
+ * Two calls: `rswETH.totalSupply()` + `rswETH.getRate()`. Both 1e18.
7
+ *
8
+ * swETH (the older LST at `0xf951…d78`) uses a different exchange-rate
9
+ * getter and is intentionally not in the registry yet — re-add once
10
+ * its selector is verified against the deployed contract.
11
+ */
12
+ export declare const readerSwellGetRate: (entry: LstRegistryEntry) => LstReader;
13
+ //# sourceMappingURL=swell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swell.d.ts","sourceRoot":"","sources":["../../../../src/vaults/lst/readers/swell.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,gBAAgB,KAAG,SAkB3D,CAAA"}
@@ -0,0 +1,15 @@
1
+ import type { LstRegistryEntry } from '../registry';
2
+ import { type LstReader } from './shared';
3
+ /**
4
+ * Valantis wstHYPE reader.
5
+ *
6
+ * Two calls: `wstHYPE.totalSupply()` + `stHYPE.balancePerShare()`
7
+ * (1e18-scaled HYPE-per-share). wstHYPE wraps the same underlying
8
+ * state as stHYPE, so the rate getter on the stHYPE contract works
9
+ * for both.
10
+ *
11
+ * `entry.readerExtras.valantisStHype` pins the stHYPE address. Fall
12
+ * back to `offChain`-style placeholder if absent.
13
+ */
14
+ export declare const readerValantisWstHype: (entry: LstRegistryEntry) => LstReader;
15
+ //# sourceMappingURL=valantis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"valantis.d.ts","sourceRoot":"","sources":["../../../../src/vaults/lst/readers/valantis.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D;;;;;;;;;;GAUG;AACH,eAAO,MAAM,qBAAqB,GAAI,OAAO,gBAAgB,KAAG,SAoC/D,CAAA"}
@@ -0,0 +1,19 @@
1
+ import type { LstRegistryEntry } from '../registry';
2
+ import { type LstReader } from './shared';
3
+ /**
4
+ * Veda Labs BoringVault reader — used for ether.fi's eBTC.
5
+ *
6
+ * The vault share token has no ERC-4626 surface; its exchange rate
7
+ * lives on the Accountant's `getRate()`, denominated in the base
8
+ * asset's decimals (8 for the BTC vaults). Two calls:
9
+ * 1. `vault.totalSupply()`
10
+ * 2. `Accountant.getRate()` — assets-per-share, base-asset decimals.
11
+ *
12
+ * The rate is normalised to the 1e18 scale the rest of the pipeline
13
+ * expects via `10 ** (18 - entry.decimals)` (rate decimals == the
14
+ * token's decimals for these single-base-asset BTC vaults). Requires
15
+ * `readerExtras.vedaAccountant`; without it the reader degrades to a
16
+ * bare `totalSupply()` at a 1:1 rate so the entry still surfaces.
17
+ */
18
+ export declare const readerVedaAccountant: (entry: LstRegistryEntry) => LstReader;
19
+ //# sourceMappingURL=veda.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"veda.d.ts","sourceRoot":"","sources":["../../../../src/vaults/lst/readers/veda.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,oBAAoB,GAAI,OAAO,gBAAgB,KAAG,SAgC9D,CAAA"}
@@ -0,0 +1,125 @@
1
+ import type { YieldFetcher } from '../../yields/types';
2
+ import type { LstWithdrawalMode } from './types';
3
+ /** Reader kind — picks which on-chain call set the orchestrator emits
4
+ * for a given LST. See `readers.ts` for the per-kind implementations. */
5
+ export type LstReaderKind = 'erc4626' | 'erc4626PreviewRedeem' | 'lidoWstEth' | 'rocketReth' | 'etherfiWeEth' | 'renzoEzEth' | 'kelpRsEth' | 'swellGetRate' | 'stakewiseOsEth' | 'staderEthx' | 'staderMaticX' | 'mantleMEth' | 'beetsStS' | 'benqiSavax' | 'kinetiqKHype' | 'valantisWstHype' | 'hyperbeatBeHype' | 'stceloManager' | 'lairStKaia' | 'listaSlisBnb' | 'dineroBeraEth' | 'bgtWrapper1to1' | 'ankrRatio' | 'vedaAccountant' | 'offChain';
6
+ /**
7
+ * Static registry entry for an LST share-token.
8
+ *
9
+ * Per-chain LSTs live in {@link LST_REGISTRY}. Each entry pins the
10
+ * on-chain identity (address, decimals, brand), the reader strategy
11
+ * (which contracts to multicall and how to compute the rate), the
12
+ * mint/withdrawal metadata used by downstream calldata routing, and a
13
+ * pointer to the existing intrinsic-yield fetcher whose APR is
14
+ * surfaced as `supplyRate`.
15
+ */
16
+ export interface LstRegistryEntry {
17
+ /** Share-token contract address, lowercased. */
18
+ address: string;
19
+ /** Underlying asset address, lowercased — `zeroAddress` for native
20
+ * ETH, an ERC-20 address otherwise (e.g. wstETH for pufETH). */
21
+ underlying: string;
22
+ /** Share-token symbol. */
23
+ symbol: string;
24
+ /** Display name — `${brand} ${symbol}` is composed in the parser if
25
+ * this is omitted. */
26
+ brand: string;
27
+ /** Share decimals. */
28
+ decimals: number;
29
+ /** Reader strategy — drives the multicall payload. */
30
+ reader: LstReaderKind;
31
+ /** Whether this is a real ERC-4626 (informational; the reader still
32
+ * decides the call shape). */
33
+ isErc4626: boolean;
34
+ /** Whether the share token rebases. */
35
+ isRebasing: boolean;
36
+ /** Whether the LST can be minted permissionlessly on-chain. */
37
+ isMintable: boolean;
38
+ /** Whether the mint entry accepts native ETH. */
39
+ isNativeUnderlying: boolean;
40
+ /** Mint entry contract — used by calldata-sdk when wiring deposits. */
41
+ mintContract?: string;
42
+ /** Mint input asset. */
43
+ mintInputAsset?: 'native' | string;
44
+ /** Withdrawal mechanism. */
45
+ withdrawalMode: LstWithdrawalMode;
46
+ /** Fixed cooldown in seconds (only for `fixed-cooldown` mode). */
47
+ withdrawalCooldownSeconds?: number;
48
+ /** Existing intrinsic-yield fetcher whose APR is surfaced as
49
+ * `supplyRate`. Undefined when no yield source exists yet (e.g.
50
+ * ynLSDe). */
51
+ yieldFetcher?: YieldFetcher;
52
+ /** Key inside the yield fetcher's `YieldResult` to read. Yield
53
+ * fetchers return maps keyed by symbol or by a free-text label;
54
+ * this is the exact key. */
55
+ yieldKey?: string;
56
+ /** Extra contracts the reader needs (oracle, deposit pool, …).
57
+ * Shape is reader-specific. */
58
+ readerExtras?: {
59
+ /** Renzo `RestakeManager` (chainId 1: 0x74a09653a083691711cf8215a6ab074bb4e99ef5). */
60
+ restakeManager?: string;
61
+ /** Kelp `LRTOracle` (chainId 1: 0x349a73444b1a310bae67ef67973022020d70020d). */
62
+ lrtOracle?: string;
63
+ /** StakeWise `OsTokenVaultController` (chainId 1:
64
+ * 0x2a261e60fb14586b474c208b1b7ac6d0f5000306). */
65
+ osTokenController?: string;
66
+ /** Stader `StaderStakePoolsManager` (chainId 1:
67
+ * 0xcf5ea1b38380f6af39068375516daf40ed70d299). */
68
+ staderStakePoolsManager?: string;
69
+ /** Mantle `Staking` (chainId 1: 0xe3cbd06d7dadb3f4e6557bab7edd924cd1489e8f). */
70
+ mantleStaking?: string;
71
+ /** Rocket Pool `RocketDepositPool` (current address — resolve via
72
+ * `RocketStorage` at deploy time; this is a snapshot). */
73
+ rocketDepositPool?: string;
74
+ /** EtherFi `LiquidityPool` — exposes the pooled-ETH buffer. */
75
+ etherFiLiquidityPool?: string;
76
+ /** Kinetiq `StakingAccountant` (chainId 999:
77
+ * 0x9209648Ec9D448EF57116B73A2f081835643dc7A) — exposes
78
+ * `kHYPEToHYPE(uint256)`. */
79
+ kinetiqAccountant?: string;
80
+ /** Valantis `stHYPE` (chainId 999:
81
+ * 0xffaa4a3d97fe9107cef8a3f48c069f577ff76cc1) — exposes
82
+ * `balancePerShare()` (1e18-scaled HYPE-per-share). */
83
+ valantisStHype?: string;
84
+ /** Hyperbeat `StakingCore` (chainId 999:
85
+ * 0xcEAD893b162D38e714D82d06a7fe0b0dc3c38E0b) — exposes
86
+ * `BeHYPEToHYPE(uint256)`. */
87
+ hyperbeatStakingCore?: string;
88
+ /** StakedCelo `Manager` (Celo mainnet 42220:
89
+ * 0x0239b96D10a434a56CC9E09383077A0490cF9398) — exposes
90
+ * `toCelo(uint256)` (1e18-scaled CELO-per-stCELO). */
91
+ stceloManager?: string;
92
+ /** Stader MaticX **home** contract address, used by the
93
+ * cross-chain Polygon entry. The Polygon bridge child has no
94
+ * rate getter — the rate is read from the Ethereum home
95
+ * contract (`0xf03a…b645`) via cross-chain dispatch. */
96
+ staderMaticXHomeContract?: string;
97
+ /** Chain to dispatch the rate-getter call to. Pairs with
98
+ * `staderMaticXHomeContract`. */
99
+ staderMaticXHomeChainId?: string;
100
+ /** Lista `ListaStakeManager` (BNB chain 56:
101
+ * 0x1adb950d8bb3da4be104211d5ab038628e477fe6) — exposes
102
+ * `convertSnBnbToBnb(uint256)` (1e18-scaled BNB-per-slisBNB) and
103
+ * `getTotalPooledBnb()`. The slisBNB token itself carries no rate. */
104
+ listaStakeManager?: string;
105
+ /** Veda BoringVault `AccountantWithRateProviders` (eBTC on chain 1:
106
+ * 0x1b293DC39F94157fA0D1D36d7e0090C8B8B8c13F) — exposes
107
+ * `getRate()` (assets-per-share, base-asset decimals). The eBTC
108
+ * vault token carries no ERC-4626 rate surface. */
109
+ vedaAccountant?: string;
110
+ };
111
+ }
112
+ /**
113
+ * Per-chain LST allowlist. Keyed by chainId (string to match the rest
114
+ * of the codebase). Add new chains by appending an entry; the LST
115
+ * vault provider returns `{}` for chains with no entry.
116
+ *
117
+ * Coverage: Ethereum mainnet only in this drop — see VAULT_CANDIDATES.md
118
+ * for the broader roadmap (HyperEVM LSTs, ezETH on L2s, etc.).
119
+ */
120
+ export declare const LST_REGISTRY: {
121
+ [chainId: string]: LstRegistryEntry[];
122
+ };
123
+ /** Returns the registry entries for a chain, or `[]` when unsupported. */
124
+ export declare const getLstRegistry: (chainId: string) => LstRegistryEntry[];
125
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/vaults/lst/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AA0CtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD;0EAC0E;AAC1E,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,sBAAsB,GACtB,YAAY,GACZ,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,WAAW,GACX,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,cAAc,GACd,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,cAAc,GACd,iBAAiB,GACjB,iBAAiB,GACjB,eAAe,GACf,YAAY,GACZ,cAAc,GACd,eAAe,GACf,gBAAgB,GAChB,WAAW,GACX,gBAAgB,GAChB,UAAU,CAAA;AAEd;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAA;IACf;qEACiE;IACjE,UAAU,EAAE,MAAM,CAAA;IAClB,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd;2BACuB;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,sDAAsD;IACtD,MAAM,EAAE,aAAa,CAAA;IACrB;mCAC+B;IAC/B,SAAS,EAAE,OAAO,CAAA;IAClB,uCAAuC;IACvC,UAAU,EAAE,OAAO,CAAA;IACnB,+DAA+D;IAC/D,UAAU,EAAE,OAAO,CAAA;IACnB,iDAAiD;IACjD,kBAAkB,EAAE,OAAO,CAAA;IAC3B,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,wBAAwB;IACxB,cAAc,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IAClC,4BAA4B;IAC5B,cAAc,EAAE,iBAAiB,CAAA;IACjC,kEAAkE;IAClE,yBAAyB,CAAC,EAAE,MAAM,CAAA;IAClC;;mBAEe;IACf,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;iCAE6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;oCACgC;IAChC,YAAY,CAAC,EAAE;QACb,sFAAsF;QACtF,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,gFAAgF;QAChF,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB;2DACmD;QACnD,iBAAiB,CAAC,EAAE,MAAM,CAAA;QAC1B;2DACmD;QACnD,uBAAuB,CAAC,EAAE,MAAM,CAAA;QAChC,gFAAgF;QAChF,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB;mEAC2D;QAC3D,iBAAiB,CAAC,EAAE,MAAM,CAAA;QAC1B,+DAA+D;QAC/D,oBAAoB,CAAC,EAAE,MAAM,CAAA;QAC7B;;sCAE8B;QAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAA;QAC1B;;gEAEwD;QACxD,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB;;uCAE+B;QAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAA;QAC7B;;+DAEuD;QACvD,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB;;;iEAGyD;QACzD,wBAAwB,CAAC,EAAE,MAAM,CAAA;QACjC;0CACkC;QAClC,uBAAuB,CAAC,EAAE,MAAM,CAAA;QAChC;;;+EAGuE;QACvE,iBAAiB,CAAC,EAAE,MAAM,CAAA;QAC1B;;;4DAGoD;QACpD,cAAc,CAAC,EAAE,MAAM,CAAA;KACxB,CAAA;CACF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE;IAAE,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAAA;CAmhCjE,CAAA;AAED,0EAA0E;AAC1E,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,gBAAgB,EACpC,CAAA"}
@@ -0,0 +1,124 @@
1
+ import { GenericCurrency } from '../../types/general';
2
+ import type { VaultClassificationFields } from '../classification';
3
+ /**
4
+ * Withdrawal exit mode for an LST. Drives downstream UX: queued LSTs
5
+ * need a withdrawal-request flow, instant ones can burn-to-asset right
6
+ * away, off-chain ones must be routed through the issuer or a DEX.
7
+ *
8
+ * See LST_WITHDRAWAL_QUEUES.md for the per-LST mechanism details.
9
+ */
10
+ export type LstWithdrawalMode = 'queued' | 'fixed-cooldown' | 'instant-or-queued' | 'fee-or-queued' | 'off-chain' | 'dex-only';
11
+ /**
12
+ * Parsed LST share-token entry.
13
+ *
14
+ * LSTs are protocol-issued staking-share tokens (Lido stETH, Rocket
15
+ * Pool rETH, EtherFi weETH, …). Some are real ERC-4626 vaults
16
+ * (pufETH), most use a custom share/exchange-rate interface.
17
+ *
18
+ * Modeled to mirror the existing vault provider shapes (`MorphoVault`,
19
+ * `FluidFToken`, `EulerEarnVault`) so the cross-provider lookup picks
20
+ * them up without branching. The required cross-provider fields
21
+ * (`address`, `underlying`, `symbol`, `name`, `decimals`, `totalAssets`,
22
+ * `totalSupply`) match `buildVaultLookup`'s structural constraint —
23
+ * extending this type while dropping one of them will break the
24
+ * compile.
25
+ */
26
+ export interface LstShareToken extends VaultClassificationFields {
27
+ /** Share-token contract address, lowercased. */
28
+ address: string;
29
+ /** Underlying asset address, lowercased. `zeroAddress` for LSTs whose
30
+ * underlying is native ETH (most ETH LSTs). For pufETH the
31
+ * underlying is wstETH. */
32
+ underlying: string;
33
+ /** Share-token symbol, e.g. `wstETH`, `weETH`, `rETH`. */
34
+ symbol: string;
35
+ /** Share-token name as returned by `name()`, or a falsy-safe fallback
36
+ * composed from the brand + symbol. */
37
+ name: string;
38
+ /** Cross-provider UI label — `${brand} ${symbol}` (e.g. `Lido wstETH`,
39
+ * `EtherFi weETH`). Always non-empty. */
40
+ displayName: string;
41
+ /** Brand label — `Lido`, `EtherFi`, `Rocket Pool`, … */
42
+ brand: string;
43
+ /** Alias for `brand` to match `curatorName` on the other providers'
44
+ * vault types — keeps cross-provider UI code uniform. */
45
+ curatorName: string;
46
+ /** Share decimals (always 18 in practice for the LSTs covered here). */
47
+ decimals: number;
48
+ /** Total underlying held, raw integer (wei-like) as string.
49
+ * Computed as `totalSupply * exchangeRate / 10**decimals` when the
50
+ * share token does not expose a direct `totalAssets()`. */
51
+ totalAssets: string;
52
+ /** Total shares minted, raw integer as string. */
53
+ totalSupply: string;
54
+ /** Raw `convertToShares(10**decimals)` — 1 underlying → X shares. */
55
+ convertToShares: string;
56
+ /** Raw `convertToAssets(10**decimals)` — 1 share → X underlying. */
57
+ convertToAssets: string;
58
+ /** 1e18-scaled exchange rate: 1 share → X underlying. The canonical
59
+ * pricing primitive — `convertToAssets` is derived from this when
60
+ * `decimals != 18`. */
61
+ exchangeRate: string;
62
+ /** Supply APR in percent (e.g. `3.12` = 3.12 %). Sourced from the
63
+ * matching intrinsic-yield fetcher. */
64
+ supplyRate: number;
65
+ /** Extra rewards APR in percent — usually 0 for LSTs; populated only
66
+ * when the protocol layers a separate reward stream on top. */
67
+ rewardsRate: number;
68
+ /** Sum of `supplyRate + rewardsRate` — what a depositor actually
69
+ * earns. */
70
+ depositRate: number;
71
+ /** True if the share token is a real ERC-4626. Drives whether the
72
+ * calldata builder uses `deposit(uint256,address)` or a
73
+ * protocol-specific entry. */
74
+ isErc4626: boolean;
75
+ /** True if the share token rebases (e.g. stETH, eETH). Most LSTs
76
+ * covered here are non-rebasing wrappers (wstETH, weETH). */
77
+ isRebasing: boolean;
78
+ /** False when the share token cannot be minted permissionlessly
79
+ * on-chain — e.g. cbETH (Coinbase off-chain mint). */
80
+ isMintable: boolean;
81
+ /** True if the mint entry accepts native ETH (`payable`). */
82
+ isNativeUnderlying: boolean;
83
+ /** Mint entry contract address, lowercased. Undefined when
84
+ * `isMintable === false`. */
85
+ mintContract?: string;
86
+ /** Input asset for the mint call. `native` for `payable` entries,
87
+ * otherwise a lowercased ERC-20 address. Undefined when not
88
+ * mintable. */
89
+ mintInputAsset?: 'native' | string;
90
+ /** Withdrawal mechanism — see `LstWithdrawalMode`. */
91
+ withdrawalMode: LstWithdrawalMode;
92
+ /** Fixed cooldown in seconds for `fixed-cooldown` mode. Undefined
93
+ * otherwise. Queue-finalization protocols (Lido, EtherFi, …) have
94
+ * no fixed delay — their wait depends on the validator-exit queue. */
95
+ withdrawalCooldownSeconds?: number;
96
+ /** Hydrated asset metadata from the provided token list, if any. */
97
+ asset?: GenericCurrency;
98
+ /** USD price of one underlying unit, if prices were supplied. */
99
+ priceUsd?: number;
100
+ /** Human-formatted total assets (`totalAssets / 10**decimals`). */
101
+ totalAssetsFormatted: number;
102
+ /** Human-formatted total assets in USD. */
103
+ totalAssetsUsd: number;
104
+ /** Instant-exit liquidity estimate, raw integer as string. Populated
105
+ * only when a protocol exposes a queryable buffer (e.g. Rocket Pool
106
+ * `RocketDepositPool.getBalance()`, EtherFi `LiquidityPool` buffer). */
107
+ liquidity?: string;
108
+ /** Human-formatted instant-exit liquidity. */
109
+ liquidityFormatted?: number;
110
+ /** Human-formatted instant-exit liquidity in USD. */
111
+ liquidityUsd?: number;
112
+ }
113
+ /**
114
+ * Full parsed payload: per-share-token-address map.
115
+ *
116
+ * Keyed by lowercased share-token address (parity with Morpho / Silo /
117
+ * Euler-Earn). LSTs do not naturally key by underlying — many LSTs
118
+ * share `zeroAddress` (native ETH) as their underlying, so the
119
+ * underlying-keyed shape used by Fluid/Gearbox would collide.
120
+ */
121
+ export type LstShareTokens = {
122
+ [shareAddress: string]: LstShareToken;
123
+ };
124
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/lst/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAElE;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GACzB,QAAQ,GACR,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,WAAW,GACX,UAAU,CAAA;AAEd;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,aAAc,SAAQ,yBAAyB;IAC9D,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAA;IACf;;gCAE4B;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAA;IACd;4CACwC;IACxC,IAAI,EAAE,MAAM,CAAA;IACZ;8CAC0C;IAC1C,WAAW,EAAE,MAAM,CAAA;IACnB,wDAAwD;IACxD,KAAK,EAAE,MAAM,CAAA;IACb;8DAC0D;IAC1D,WAAW,EAAE,MAAM,CAAA;IACnB,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAA;IAEhB;;gEAE4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAA;IACnB,qEAAqE;IACrE,eAAe,EAAE,MAAM,CAAA;IACvB,oEAAoE;IACpE,eAAe,EAAE,MAAM,CAAA;IACvB;;4BAEwB;IACxB,YAAY,EAAE,MAAM,CAAA;IAEpB;4CACwC;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB;oEACgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB;iBACa;IACb,WAAW,EAAE,MAAM,CAAA;IAEnB;;mCAE+B;IAC/B,SAAS,EAAE,OAAO,CAAA;IAClB;kEAC8D;IAC9D,UAAU,EAAE,OAAO,CAAA;IACnB;2DACuD;IACvD,UAAU,EAAE,OAAO,CAAA;IACnB,6DAA6D;IAC7D,kBAAkB,EAAE,OAAO,CAAA;IAE3B;kCAC8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;oBAEgB;IAChB,cAAc,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IAElC,sDAAsD;IACtD,cAAc,EAAE,iBAAiB,CAAA;IACjC;;2EAEuE;IACvE,yBAAyB,CAAC,EAAE,MAAM,CAAA;IAElC,oEAAoE;IACpE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mEAAmE;IACnE,oBAAoB,EAAE,MAAM,CAAA;IAC5B,2CAA2C;IAC3C,cAAc,EAAE,MAAM,CAAA;IAEtB;;6EAEyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,8CAA8C;IAC9C,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,CAAC,YAAY,EAAE,MAAM,GAAG,aAAa,CAAA;CACtC,CAAA"}
@@ -0,0 +1,51 @@
1
+ /** Beets stS — paginated user-withdraw enumeration + delay constant.
2
+ * Address on chain 146: `0xe5da20f15420ad15de0fa650600afc998bbe3955`. */
3
+ export declare const BeetsStSWithdrawalAbi: readonly [{
4
+ readonly name: "getUserWithdraws";
5
+ readonly type: "function";
6
+ readonly stateMutability: "view";
7
+ readonly inputs: readonly [{
8
+ readonly type: "address";
9
+ readonly name: "user";
10
+ }, {
11
+ readonly type: "uint256";
12
+ readonly name: "skip";
13
+ }, {
14
+ readonly type: "uint256";
15
+ readonly name: "maxSize";
16
+ }, {
17
+ readonly type: "bool";
18
+ readonly name: "reverseOrder";
19
+ }];
20
+ readonly outputs: readonly [{
21
+ readonly type: "tuple[]";
22
+ readonly components: readonly [{
23
+ readonly type: "uint8";
24
+ readonly name: "kind";
25
+ }, {
26
+ readonly type: "uint256";
27
+ readonly name: "validatorId";
28
+ }, {
29
+ readonly type: "uint256";
30
+ readonly name: "assetAmount";
31
+ }, {
32
+ readonly type: "bool";
33
+ readonly name: "isWithdrawn";
34
+ }, {
35
+ readonly type: "uint256";
36
+ readonly name: "requestTimestamp";
37
+ }, {
38
+ readonly type: "address";
39
+ readonly name: "user";
40
+ }];
41
+ }];
42
+ }, {
43
+ readonly name: "withdrawDelay";
44
+ readonly type: "function";
45
+ readonly stateMutability: "view";
46
+ readonly inputs: readonly [];
47
+ readonly outputs: readonly [{
48
+ readonly type: "uint256";
49
+ }];
50
+ }];
51
+ //# sourceMappingURL=beets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beets.d.ts","sourceRoot":"","sources":["../../../../../src/vaults/lst/withdrawals/abis/beets.ts"],"names":[],"mappings":"AAAA;0EAC0E;AAC1E,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCxB,CAAA"}
@@ -0,0 +1,52 @@
1
+ /** Hyperbeat beHYPE — withdrawal enumeration on the WithdrawManager
2
+ * (`0x9d0b0877b9f2204cf414ca7862e4f03506822538`, HyperEVM 999,
3
+ * VERIFIED via Sourcify).
4
+ *
5
+ * `getUserUnclaimedWithdrawals(user)` already returns only the
6
+ * open request ids; `withdrawalQueue(id)` gives the amounts and
7
+ * `canClaimWithdrawal(id)` the finalization flag. */
8
+ export declare const BeHypeWithdrawalAbi: readonly [{
9
+ readonly name: "getUserUnclaimedWithdrawals";
10
+ readonly type: "function";
11
+ readonly stateMutability: "view";
12
+ readonly inputs: readonly [{
13
+ readonly type: "address";
14
+ readonly name: "user";
15
+ }];
16
+ readonly outputs: readonly [{
17
+ readonly type: "uint256[]";
18
+ }];
19
+ }, {
20
+ readonly name: "canClaimWithdrawal";
21
+ readonly type: "function";
22
+ readonly stateMutability: "view";
23
+ readonly inputs: readonly [{
24
+ readonly type: "uint256";
25
+ readonly name: "requestId";
26
+ }];
27
+ readonly outputs: readonly [{
28
+ readonly type: "bool";
29
+ }];
30
+ }, {
31
+ readonly name: "withdrawalQueue";
32
+ readonly type: "function";
33
+ readonly stateMutability: "view";
34
+ readonly inputs: readonly [{
35
+ readonly type: "uint256";
36
+ readonly name: "requestId";
37
+ }];
38
+ readonly outputs: readonly [{
39
+ readonly name: "user";
40
+ readonly type: "address";
41
+ }, {
42
+ readonly name: "beHypeAmount";
43
+ readonly type: "uint256";
44
+ }, {
45
+ readonly name: "hypeAmount";
46
+ readonly type: "uint256";
47
+ }, {
48
+ readonly name: "claimed";
49
+ readonly type: "bool";
50
+ }];
51
+ }];
52
+ //# sourceMappingURL=behype.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"behype.d.ts","sourceRoot":"","sources":["../../../../../src/vaults/lst/withdrawals/abis/behype.ts"],"names":[],"mappings":"AAAA;;;;;;sDAMsD;AACtD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BtB,CAAA"}
@@ -0,0 +1,55 @@
1
+ /** BENQI sAVAX — paginated unlock-requests enumeration.
2
+ * Address on chain 43114: `0x2b2c81e08f1af8835a78bb2a90ae924ace0ea4be`. */
3
+ export declare const BenqiSavaxWithdrawalAbi: readonly [{
4
+ readonly name: "getUnlockRequestCount";
5
+ readonly type: "function";
6
+ readonly stateMutability: "view";
7
+ readonly inputs: readonly [{
8
+ readonly type: "address";
9
+ readonly name: "user";
10
+ }];
11
+ readonly outputs: readonly [{
12
+ readonly type: "uint256";
13
+ }];
14
+ }, {
15
+ readonly name: "getPaginatedUnlockRequests";
16
+ readonly type: "function";
17
+ readonly stateMutability: "view";
18
+ readonly inputs: readonly [{
19
+ readonly type: "address";
20
+ readonly name: "user";
21
+ }, {
22
+ readonly type: "uint256";
23
+ readonly name: "from";
24
+ }, {
25
+ readonly type: "uint256";
26
+ readonly name: "to";
27
+ }];
28
+ readonly outputs: readonly [{
29
+ readonly type: "tuple[]";
30
+ readonly components: readonly [{
31
+ readonly type: "uint256";
32
+ readonly name: "startedAt";
33
+ }, {
34
+ readonly type: "uint256";
35
+ readonly name: "shareAmount";
36
+ }];
37
+ }];
38
+ }, {
39
+ readonly name: "cooldownPeriod";
40
+ readonly type: "function";
41
+ readonly stateMutability: "view";
42
+ readonly inputs: readonly [];
43
+ readonly outputs: readonly [{
44
+ readonly type: "uint256";
45
+ }];
46
+ }, {
47
+ readonly name: "redeemPeriod";
48
+ readonly type: "function";
49
+ readonly stateMutability: "view";
50
+ readonly inputs: readonly [];
51
+ readonly outputs: readonly [{
52
+ readonly type: "uint256";
53
+ }];
54
+ }];
55
+ //# sourceMappingURL=benqi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"benqi.d.ts","sourceRoot":"","sources":["../../../../../src/vaults/lst/withdrawals/abis/benqi.ts"],"names":[],"mappings":"AAAA;4EAC4E;AAC5E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyC1B,CAAA"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * BeraPaw LBGT — BeraPawForge redemption read surface.
3
+ *
4
+ * LBGT → BERA redemptions are tracked per-user by `redeemPosition(account)`
5
+ * which returns `(queued, available)` LBGT amounts (1:1 with BERA). No
6
+ * per-request id to enumerate — `queued` is the still-locked portion,
7
+ * `available` is claimable now. `queueDelay()` is the cooldown.
8
+ */
9
+ export declare const BeraPawForgeWithdrawalAbi: readonly [{
10
+ readonly name: "redeemPosition";
11
+ readonly type: "function";
12
+ readonly stateMutability: "view";
13
+ readonly inputs: readonly [{
14
+ readonly name: "account";
15
+ readonly type: "address";
16
+ }];
17
+ readonly outputs: readonly [{
18
+ readonly name: "queued";
19
+ readonly type: "uint128";
20
+ }, {
21
+ readonly name: "available";
22
+ readonly type: "uint128";
23
+ }];
24
+ }, {
25
+ readonly name: "queueDelay";
26
+ readonly type: "function";
27
+ readonly stateMutability: "view";
28
+ readonly inputs: readonly [];
29
+ readonly outputs: readonly [{
30
+ readonly type: "uint96";
31
+ }];
32
+ }];
33
+ //# sourceMappingURL=berapaw.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"berapaw.d.ts","sourceRoot":"","sources":["../../../../../src/vaults/lst/withdrawals/abis/berapaw.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;EAkB5B,CAAA"}