@gearbox-protocol/sdk 3.0.0-next.5 → 3.0.0-next.50

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 (264) hide show
  1. package/contracts/IAirdropDistributor.sol +55 -0
  2. package/contracts/IDegenDistributor.sol +28 -0
  3. package/contracts/IOffchainOracle.sol +17 -0
  4. package/contracts/IWETHGateway.sol +33 -0
  5. package/contracts/IwstETHGateway.sol +24 -0
  6. package/contracts/index.sol +11 -3
  7. package/lib/apy/curveAPY.js +2 -1
  8. package/lib/apy/index.d.ts +2 -2
  9. package/lib/apy/yearnAPY.js +1 -1
  10. package/lib/config.d.ts +0 -1
  11. package/lib/config.js +1 -2
  12. package/lib/core/assets.d.ts +4 -4
  13. package/lib/core/assets.js +28 -17
  14. package/lib/core/creditAccount.d.ts +31 -6
  15. package/lib/core/creditAccount.js +101 -37
  16. package/lib/core/creditAccount.spec.js +693 -10
  17. package/lib/core/creditManager.d.ts +22 -8
  18. package/lib/core/creditManager.js +86 -30
  19. package/lib/core/events.js +14 -14
  20. package/lib/core/gauge.d.ts +26 -0
  21. package/lib/core/gauge.js +63 -0
  22. package/lib/core/gaugeMath.d.ts +40 -0
  23. package/lib/core/gaugeMath.js +108 -0
  24. package/lib/core/gaugeMath.spec.d.ts +1 -0
  25. package/lib/core/gaugeMath.spec.js +388 -0
  26. package/lib/core/{pool/data.d.ts → pool.d.ts} +18 -10
  27. package/lib/core/{pool/data.js → pool.js} +69 -24
  28. package/lib/core/strategy.js +2 -2
  29. package/lib/core/trade.d.ts +5 -23
  30. package/lib/core/trade.js +4 -61
  31. package/lib/core/transactions.d.ts +50 -3
  32. package/lib/core/transactions.js +136 -105
  33. package/lib/index.d.ts +3 -0
  34. package/lib/index.js +3 -0
  35. package/lib/parsers/abstractParser.js +1 -2
  36. package/lib/parsers/creditFacadeParser.d.ts +2 -1
  37. package/lib/parsers/creditFacadeParser.js +17 -5
  38. package/lib/parsers/creditFacadeParser.spec.js +2 -3
  39. package/lib/parsers/curveAdapterParser.js +2 -3
  40. package/lib/parsers/txParser.d.ts +4 -4
  41. package/lib/parsers/txParser.js +9 -3
  42. package/lib/parsers/uniV2AdapterParser.js +2 -2
  43. package/lib/parsers/uniV3AdapterParser.js +3 -3
  44. package/lib/pathfinder/core.d.ts +4 -4
  45. package/lib/pathfinder/pathOptions.d.ts +2 -1
  46. package/lib/pathfinder/pathOptions.js +20 -1
  47. package/lib/pathfinder/pathOptions.spec.js +2 -2
  48. package/lib/pathfinder/pathfinder.js +4 -3
  49. package/lib/pathfinder/pathfinder.spec.js +3 -1
  50. package/lib/payload/creditAccount.d.ts +2 -2
  51. package/lib/payload/gauge.d.ts +12 -0
  52. package/lib/payload/pool.d.ts +6 -1
  53. package/lib/types/IAirdropDistributor.sol/IAirdropDistributor.d.ts +124 -0
  54. package/lib/types/IAirdropDistributor.sol/IAirdropDistributorEvents.d.ts +73 -0
  55. package/lib/types/IAirdropDistributor.sol/index.d.ts +2 -0
  56. package/lib/types/IConvexToken.d.ts +9 -1
  57. package/lib/types/IConvexV1BaseRewardPoolAdapter.d.ts +17 -1
  58. package/lib/types/{IConvexV1BoosterAdapter.d.ts → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.d.ts} +19 -4
  59. package/lib/types/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.d.ts +43 -0
  60. package/lib/types/IConvexV1BoosterAdapter.sol/index.d.ts +2 -0
  61. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3.d.ts +716 -0
  62. package/lib/types/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.d.ts +275 -0
  63. package/lib/types/ICreditConfiguratorV3.sol/index.d.ts +2 -0
  64. package/lib/types/ICreditFacadeV2.sol/ICreditFacadeV2Extended.d.ts +7 -11
  65. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3.d.ts +165 -20
  66. package/lib/types/ICreditFacadeV3.sol/ICreditFacadeV3Events.d.ts +5 -7
  67. package/lib/types/ICreditFacadeV3Multicall.d.ts +35 -12
  68. package/lib/types/ICreditManagerV3.sol/ICreditManagerV3.d.ts +273 -39
  69. package/lib/types/IDataCompressorV2_10.d.ts +43 -9
  70. package/lib/types/IDataCompressorV3_00.d.ts +140 -10
  71. package/lib/types/IDegenDistributor.sol/IDegenDistributor.d.ts +96 -0
  72. package/lib/types/IDegenDistributor.sol/IDegenDistributorEvents.d.ts +53 -0
  73. package/lib/types/IDegenDistributor.sol/index.d.ts +2 -0
  74. package/lib/types/{draft-IERC20Permit.sol/IERC20Permit.d.ts → IERC20Permit.d.ts} +1 -1
  75. package/lib/types/IERC20ZapperDeposits.d.ts +117 -0
  76. package/lib/types/IETHZapperDeposits.d.ts +66 -0
  77. package/lib/types/IGasPricer.d.ts +44 -0
  78. package/lib/types/IGearStakingV3.sol/IGearStakingV3.d.ts +408 -0
  79. package/lib/types/IGearStakingV3.sol/IGearStakingV3Events.d.ts +117 -0
  80. package/lib/types/IGearStakingV3.sol/index.d.ts +2 -0
  81. package/lib/types/{ILidoV1Adapter.sol/ILidoV1Adapter.d.ts → ILidoV1Adapter.d.ts} +5 -40
  82. package/lib/types/ILidoV1Adapter.js +2 -0
  83. package/lib/types/IOffchainOracle.d.ts +58 -0
  84. package/lib/types/IOffchainOracle.js +2 -0
  85. package/lib/types/IPoolV3.sol/IPoolV3.d.ts +43 -11
  86. package/lib/types/IPoolV3.sol/index.d.ts +0 -1
  87. package/lib/types/IWETHGateway.d.ts +90 -0
  88. package/lib/types/IWETHGateway.js +2 -0
  89. package/lib/types/IZapper.d.ts +130 -0
  90. package/lib/types/IZapper.js +2 -0
  91. package/lib/types/IwstETHGateway.sol/IwstETHGateWay.d.ts +70 -0
  92. package/lib/types/IwstETHGateway.sol/IwstETHGateWay.js +2 -0
  93. package/lib/types/IwstETHGateway.sol/index.d.ts +1 -0
  94. package/lib/types/IwstETHGateway.sol/index.js +2 -0
  95. package/lib/types/factories/AddressProvider__factory.d.ts +1 -1
  96. package/lib/types/factories/AddressProvider__factory.js +1 -1
  97. package/lib/types/factories/Balances.sol/BalanceOps__factory.d.ts +1 -1
  98. package/lib/types/factories/Balances.sol/BalanceOps__factory.js +1 -1
  99. package/lib/types/factories/Claimable__factory.d.ts +1 -1
  100. package/lib/types/factories/Claimable__factory.js +1 -1
  101. package/lib/types/factories/Errors__factory.d.ts +1 -1
  102. package/lib/types/factories/Errors__factory.js +1 -1
  103. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.d.ts +63 -0
  104. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributorEvents__factory.js +88 -0
  105. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.d.ts +119 -0
  106. package/lib/types/factories/IAirdropDistributor.sol/IAirdropDistributor__factory.js +161 -0
  107. package/lib/types/factories/IAirdropDistributor.sol/index.d.ts +2 -0
  108. package/lib/types/factories/IAirdropDistributor.sol/index.js +10 -0
  109. package/lib/types/factories/IConvexToken__factory.d.ts +10 -0
  110. package/lib/types/factories/IConvexToken__factory.js +13 -0
  111. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.d.ts +20 -0
  112. package/lib/types/factories/IConvexV1BaseRewardPoolAdapter__factory.js +26 -0
  113. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.d.ts +23 -0
  114. package/lib/types/factories/IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents__factory.js +38 -0
  115. package/lib/types/factories/{IConvexV1BoosterAdapter__factory.d.ts → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.d.ts} +16 -1
  116. package/lib/types/factories/{IConvexV1BoosterAdapter__factory.js → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter__factory.js} +19 -0
  117. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.d.ts +2 -0
  118. package/lib/types/factories/IConvexV1BoosterAdapter.sol/index.js +10 -0
  119. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.d.ts +273 -0
  120. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events__factory.js +357 -0
  121. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.d.ts +605 -0
  122. package/lib/types/factories/ICreditConfiguratorV3.sol/ICreditConfiguratorV3__factory.js +785 -0
  123. package/lib/types/factories/ICreditConfiguratorV3.sol/index.d.ts +2 -0
  124. package/lib/types/factories/ICreditConfiguratorV3.sol/index.js +10 -0
  125. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.d.ts +0 -4
  126. package/lib/types/factories/ICreditFacadeV2.sol/ICreditFacadeV2Extended__factory.js +0 -5
  127. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.d.ts +1 -6
  128. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3Events__factory.js +1 -7
  129. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.d.ts +144 -13
  130. package/lib/types/factories/ICreditFacadeV3.sol/ICreditFacadeV3__factory.js +185 -15
  131. package/lib/types/factories/ICreditFacadeV3Multicall__factory.d.ts +35 -5
  132. package/lib/types/factories/ICreditFacadeV3Multicall__factory.js +43 -5
  133. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.d.ts +199 -25
  134. package/lib/types/factories/ICreditManagerV3.sol/ICreditManagerV3__factory.js +252 -28
  135. package/lib/types/factories/IDataCompressorV2_10__factory.d.ts +110 -12
  136. package/lib/types/factories/IDataCompressorV2_10__factory.js +138 -14
  137. package/lib/types/factories/IDataCompressorV3_00__factory.d.ts +400 -16
  138. package/lib/types/factories/IDataCompressorV3_00__factory.js +508 -19
  139. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributorEvents__factory.d.ts +38 -0
  140. package/lib/types/factories/{AaveV2_WrappedAToken.sol/IWrappedATokenEvents__factory.js → IDegenDistributor.sol/IDegenDistributorEvents__factory.js} +13 -25
  141. package/lib/types/factories/IDegenDistributor.sol/IDegenDistributor__factory.d.ts +84 -0
  142. package/lib/types/factories/{IPoolV3.sol/IPoolBase__factory.js → IDegenDistributor.sol/IDegenDistributor__factory.js} +46 -41
  143. package/lib/types/factories/IDegenDistributor.sol/index.d.ts +2 -0
  144. package/lib/types/factories/IDegenDistributor.sol/index.js +10 -0
  145. package/lib/types/factories/{draft-IERC20Permit.sol/IERC20Permit__factory.d.ts → IERC20Permit__factory.d.ts} +1 -1
  146. package/lib/types/factories/IERC20ZapperDeposits__factory.d.ts +120 -0
  147. package/lib/types/factories/IERC20ZapperDeposits__factory.js +165 -0
  148. package/lib/types/factories/IETHZapperDeposits__factory.d.ts +40 -0
  149. package/lib/types/factories/IETHZapperDeposits__factory.js +62 -0
  150. package/lib/types/factories/IGasPricer__factory.d.ts +22 -0
  151. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1AdapterEvents__factory.js → IGasPricer__factory.js} +14 -8
  152. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3Events__factory.d.ts +113 -0
  153. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3Events__factory.js +152 -0
  154. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.d.ts +504 -0
  155. package/lib/types/factories/IGearStakingV3.sol/IGearStakingV3__factory.js +660 -0
  156. package/lib/types/factories/IGearStakingV3.sol/index.d.ts +2 -0
  157. package/lib/types/factories/IGearStakingV3.sol/index.js +10 -0
  158. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1Adapter__factory.d.ts → ILidoV1Adapter__factory.d.ts} +1 -35
  159. package/lib/types/factories/{ILidoV1Adapter.sol/ILidoV1Adapter__factory.js → ILidoV1Adapter__factory.js} +0 -44
  160. package/lib/types/factories/IOffchainOracle__factory.d.ts +48 -0
  161. package/lib/types/factories/IOffchainOracle__factory.js +72 -0
  162. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.d.ts +62 -14
  163. package/lib/types/factories/IPoolV3.sol/IPoolV3__factory.js +79 -17
  164. package/lib/types/factories/IPoolV3.sol/index.d.ts +0 -1
  165. package/lib/types/factories/IPoolV3.sol/index.js +1 -3
  166. package/lib/types/factories/IWETHGateway__factory.d.ts +58 -0
  167. package/lib/types/factories/IWETHGateway__factory.js +83 -0
  168. package/lib/types/factories/{WERC20ZapperBase__factory.d.ts → IZapper__factory.d.ts} +57 -61
  169. package/lib/types/factories/{WERC20ZapperBase__factory.js → IZapper__factory.js} +65 -71
  170. package/lib/types/factories/{ZapperBase__factory.d.ts → IwstETHGateway.sol/IwstETHGateWay__factory.d.ts} +22 -34
  171. package/lib/types/factories/{ZapperBase__factory.js → IwstETHGateway.sol/IwstETHGateWay__factory.js} +22 -39
  172. package/lib/types/factories/IwstETHGateway.sol/index.d.ts +1 -0
  173. package/lib/types/factories/IwstETHGateway.sol/index.js +8 -0
  174. package/lib/types/factories/SafeERC20__factory.d.ts +1 -1
  175. package/lib/types/factories/SafeERC20__factory.js +1 -1
  176. package/lib/types/factories/index.d.ts +15 -13
  177. package/lib/types/factories/index.js +25 -25
  178. package/lib/types/factories/{IRouter__factory.d.ts → interfaces/IRouter__factory.d.ts} +15 -1
  179. package/lib/types/factories/{IRouter__factory.js → interfaces/IRouter__factory.js} +19 -0
  180. package/lib/types/factories/interfaces/index.d.ts +1 -0
  181. package/lib/types/factories/interfaces/index.js +8 -0
  182. package/lib/types/index.d.ts +62 -48
  183. package/lib/types/index.js +52 -46
  184. package/lib/types/{IRouter.d.ts → interfaces/IRouter.d.ts} +12 -2
  185. package/lib/types/interfaces/IRouter.js +2 -0
  186. package/lib/types/interfaces/index.d.ts +1 -0
  187. package/lib/types/interfaces/index.js +2 -0
  188. package/lib/utils/formatter.d.ts +0 -3
  189. package/lib/utils/formatter.js +1 -67
  190. package/lib/utils/math.d.ts +2 -0
  191. package/lib/utils/math.js +2 -0
  192. package/lib/utils/types.d.ts +1 -0
  193. package/lib/watchers/creditAccountWatcher.d.ts +3 -2
  194. package/lib/watchers/creditAccountWatcher.js +19 -13
  195. package/lib/watchers/creditAccountWatcher.spec.js +18 -18
  196. package/lib/watchers/creditManagerWatcher.d.ts +5 -3
  197. package/lib/watchers/creditManagerWatcher.js +32 -10
  198. package/lib/watchers/creditManagerWatcher.spec.js +12 -4
  199. package/package.json +10 -9
  200. package/contracts/IRouter.sol +0 -100
  201. package/lib/core/pool/index.d.ts +0 -1
  202. package/lib/core/pool/index.js +0 -17
  203. package/lib/types/AaveV2_WrappedAToken.sol/IWrappedATokenEvents.d.ts +0 -60
  204. package/lib/types/AaveV2_WrappedAToken.sol/WrappedAToken.d.ts +0 -332
  205. package/lib/types/AaveV2_WrappedAToken.sol/index.d.ts +0 -2
  206. package/lib/types/ERC20.d.ts +0 -198
  207. package/lib/types/IAToken.d.ts +0 -182
  208. package/lib/types/ILendingPool.d.ts +0 -140
  209. package/lib/types/ILidoV1Adapter.sol/ILidoV1AdapterEvents.d.ts +0 -39
  210. package/lib/types/ILidoV1Adapter.sol/ILidoV1AdapterExceptions.d.ts +0 -27
  211. package/lib/types/ILidoV1Adapter.sol/index.d.ts +0 -3
  212. package/lib/types/IPoolV3.sol/IPoolBase.d.ts +0 -102
  213. package/lib/types/WATokenZapper.d.ts +0 -134
  214. package/lib/types/WERC20ZapperBase.d.ts +0 -134
  215. package/lib/types/WETHZapper.d.ts +0 -122
  216. package/lib/types/WstETHZapper.d.ts +0 -134
  217. package/lib/types/ZapperBase.d.ts +0 -70
  218. package/lib/types/draft-IERC20Permit.sol/index.d.ts +0 -1
  219. package/lib/types/factories/AaveV2_WrappedAToken.sol/IWrappedATokenEvents__factory.d.ts +0 -48
  220. package/lib/types/factories/AaveV2_WrappedAToken.sol/WrappedAToken__factory.d.ts +0 -397
  221. package/lib/types/factories/AaveV2_WrappedAToken.sol/WrappedAToken__factory.js +0 -535
  222. package/lib/types/factories/AaveV2_WrappedAToken.sol/index.d.ts +0 -2
  223. package/lib/types/factories/AaveV2_WrappedAToken.sol/index.js +0 -10
  224. package/lib/types/factories/ERC20__factory.d.ts +0 -239
  225. package/lib/types/factories/ERC20__factory.js +0 -328
  226. package/lib/types/factories/IAToken__factory.d.ts +0 -198
  227. package/lib/types/factories/IAToken__factory.js +0 -267
  228. package/lib/types/factories/ILendingPool__factory.d.ts +0 -134
  229. package/lib/types/factories/ILendingPool__factory.js +0 -183
  230. package/lib/types/factories/ILidoV1Adapter.sol/ILidoV1AdapterEvents__factory.d.ts +0 -18
  231. package/lib/types/factories/ILidoV1Adapter.sol/ILidoV1AdapterExceptions__factory.d.ts +0 -12
  232. package/lib/types/factories/ILidoV1Adapter.sol/ILidoV1AdapterExceptions__factory.js +0 -24
  233. package/lib/types/factories/ILidoV1Adapter.sol/index.d.ts +0 -3
  234. package/lib/types/factories/ILidoV1Adapter.sol/index.js +0 -12
  235. package/lib/types/factories/IPoolV3.sol/IPoolBase__factory.d.ts +0 -80
  236. package/lib/types/factories/WATokenZapper__factory.d.ts +0 -161
  237. package/lib/types/factories/WATokenZapper__factory.js +0 -227
  238. package/lib/types/factories/WETHZapper__factory.d.ts +0 -138
  239. package/lib/types/factories/WETHZapper__factory.js +0 -198
  240. package/lib/types/factories/WstETHZapper__factory.d.ts +0 -161
  241. package/lib/types/factories/WstETHZapper__factory.js +0 -227
  242. package/lib/types/factories/draft-IERC20Permit.sol/index.d.ts +0 -1
  243. package/lib/types/factories/draft-IERC20Permit.sol/index.js +0 -8
  244. /package/lib/{types/AaveV2_WrappedAToken.sol/IWrappedATokenEvents.js → payload/gauge.js} +0 -0
  245. /package/lib/types/{AaveV2_WrappedAToken.sol/WrappedAToken.js → IAirdropDistributor.sol/IAirdropDistributor.js} +0 -0
  246. /package/lib/types/{AaveV2_WrappedAToken.sol/index.js → IAirdropDistributor.sol/IAirdropDistributorEvents.js} +0 -0
  247. /package/lib/types/{ILidoV1Adapter.sol → IAirdropDistributor.sol}/index.js +0 -0
  248. /package/lib/types/{IConvexV1BoosterAdapter.js → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapter.js} +0 -0
  249. /package/lib/types/{ERC20.js → IConvexV1BoosterAdapter.sol/IConvexV1BoosterAdapterEvents.js} +0 -0
  250. /package/lib/types/{draft-IERC20Permit.sol → IConvexV1BoosterAdapter.sol}/index.js +0 -0
  251. /package/lib/types/{IAToken.js → ICreditConfiguratorV3.sol/ICreditConfiguratorV3.js} +0 -0
  252. /package/lib/types/{ILendingPool.js → ICreditConfiguratorV3.sol/ICreditConfiguratorV3Events.js} +0 -0
  253. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1Adapter.js → ICreditConfiguratorV3.sol/index.js} +0 -0
  254. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterEvents.js → IDegenDistributor.sol/IDegenDistributor.js} +0 -0
  255. /package/lib/types/{ILidoV1Adapter.sol/ILidoV1AdapterExceptions.js → IDegenDistributor.sol/IDegenDistributorEvents.js} +0 -0
  256. /package/lib/types/{IPoolV3.sol/IPoolBase.js → IDegenDistributor.sol/index.js} +0 -0
  257. /package/lib/types/{draft-IERC20Permit.sol/IERC20Permit.js → IERC20Permit.js} +0 -0
  258. /package/lib/types/{IRouter.js → IERC20ZapperDeposits.js} +0 -0
  259. /package/lib/types/{WATokenZapper.js → IETHZapperDeposits.js} +0 -0
  260. /package/lib/types/{WERC20ZapperBase.js → IGasPricer.js} +0 -0
  261. /package/lib/types/{WETHZapper.js → IGearStakingV3.sol/IGearStakingV3.js} +0 -0
  262. /package/lib/types/{WstETHZapper.js → IGearStakingV3.sol/IGearStakingV3Events.js} +0 -0
  263. /package/lib/types/{ZapperBase.js → IGearStakingV3.sol/index.js} +0 -0
  264. /package/lib/types/factories/{draft-IERC20Permit.sol/IERC20Permit__factory.js → IERC20Permit__factory.js} +0 -0
@@ -0,0 +1,408 @@
1
+ import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
2
+ import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
3
+ import type { Listener, Provider } from "@ethersproject/providers";
4
+ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../common";
5
+ export type MultiVoteStruct = {
6
+ votingContract: PromiseOrValue<string>;
7
+ voteAmount: PromiseOrValue<BigNumberish>;
8
+ isIncrease: PromiseOrValue<boolean>;
9
+ extraData: PromiseOrValue<BytesLike>;
10
+ };
11
+ export type MultiVoteStructOutput = [string, BigNumber, boolean, string] & {
12
+ votingContract: string;
13
+ voteAmount: BigNumber;
14
+ isIncrease: boolean;
15
+ extraData: string;
16
+ };
17
+ export interface IGearStakingV3Interface extends utils.Interface {
18
+ functions: {
19
+ "allowedVotingContract(address)": FunctionFragment;
20
+ "availableBalance(address)": FunctionFragment;
21
+ "balanceOf(address)": FunctionFragment;
22
+ "claimWithdrawals(address)": FunctionFragment;
23
+ "deposit(uint96,(address,uint96,bool,bytes)[])": FunctionFragment;
24
+ "depositOnMigration(uint96,address,(address,uint96,bool,bytes)[])": FunctionFragment;
25
+ "depositWithPermit(uint96,(address,uint96,bool,bytes)[],uint256,uint8,bytes32,bytes32)": FunctionFragment;
26
+ "firstEpochTimestamp()": FunctionFragment;
27
+ "gear()": FunctionFragment;
28
+ "getCurrentEpoch()": FunctionFragment;
29
+ "getWithdrawableAmounts(address)": FunctionFragment;
30
+ "migrate(uint96,(address,uint96,bool,bytes)[],(address,uint96,bool,bytes)[])": FunctionFragment;
31
+ "migrator()": FunctionFragment;
32
+ "multivote((address,uint96,bool,bytes)[])": FunctionFragment;
33
+ "setMigrator(address)": FunctionFragment;
34
+ "setSuccessor(address)": FunctionFragment;
35
+ "setVotingContractStatus(address,uint8)": FunctionFragment;
36
+ "successor()": FunctionFragment;
37
+ "version()": FunctionFragment;
38
+ "withdraw(uint96,address,(address,uint96,bool,bytes)[])": FunctionFragment;
39
+ };
40
+ getFunction(nameOrSignatureOrTopic: "allowedVotingContract" | "availableBalance" | "balanceOf" | "claimWithdrawals" | "deposit" | "depositOnMigration" | "depositWithPermit" | "firstEpochTimestamp" | "gear" | "getCurrentEpoch" | "getWithdrawableAmounts" | "migrate" | "migrator" | "multivote" | "setMigrator" | "setSuccessor" | "setVotingContractStatus" | "successor" | "version" | "withdraw"): FunctionFragment;
41
+ encodeFunctionData(functionFragment: "allowedVotingContract", values: [PromiseOrValue<string>]): string;
42
+ encodeFunctionData(functionFragment: "availableBalance", values: [PromiseOrValue<string>]): string;
43
+ encodeFunctionData(functionFragment: "balanceOf", values: [PromiseOrValue<string>]): string;
44
+ encodeFunctionData(functionFragment: "claimWithdrawals", values: [PromiseOrValue<string>]): string;
45
+ encodeFunctionData(functionFragment: "deposit", values: [PromiseOrValue<BigNumberish>, MultiVoteStruct[]]): string;
46
+ encodeFunctionData(functionFragment: "depositOnMigration", values: [
47
+ PromiseOrValue<BigNumberish>,
48
+ PromiseOrValue<string>,
49
+ MultiVoteStruct[]
50
+ ]): string;
51
+ encodeFunctionData(functionFragment: "depositWithPermit", values: [
52
+ PromiseOrValue<BigNumberish>,
53
+ MultiVoteStruct[],
54
+ PromiseOrValue<BigNumberish>,
55
+ PromiseOrValue<BigNumberish>,
56
+ PromiseOrValue<BytesLike>,
57
+ PromiseOrValue<BytesLike>
58
+ ]): string;
59
+ encodeFunctionData(functionFragment: "firstEpochTimestamp", values?: undefined): string;
60
+ encodeFunctionData(functionFragment: "gear", values?: undefined): string;
61
+ encodeFunctionData(functionFragment: "getCurrentEpoch", values?: undefined): string;
62
+ encodeFunctionData(functionFragment: "getWithdrawableAmounts", values: [PromiseOrValue<string>]): string;
63
+ encodeFunctionData(functionFragment: "migrate", values: [PromiseOrValue<BigNumberish>, MultiVoteStruct[], MultiVoteStruct[]]): string;
64
+ encodeFunctionData(functionFragment: "migrator", values?: undefined): string;
65
+ encodeFunctionData(functionFragment: "multivote", values: [MultiVoteStruct[]]): string;
66
+ encodeFunctionData(functionFragment: "setMigrator", values: [PromiseOrValue<string>]): string;
67
+ encodeFunctionData(functionFragment: "setSuccessor", values: [PromiseOrValue<string>]): string;
68
+ encodeFunctionData(functionFragment: "setVotingContractStatus", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
69
+ encodeFunctionData(functionFragment: "successor", values?: undefined): string;
70
+ encodeFunctionData(functionFragment: "version", values?: undefined): string;
71
+ encodeFunctionData(functionFragment: "withdraw", values: [
72
+ PromiseOrValue<BigNumberish>,
73
+ PromiseOrValue<string>,
74
+ MultiVoteStruct[]
75
+ ]): string;
76
+ decodeFunctionResult(functionFragment: "allowedVotingContract", data: BytesLike): Result;
77
+ decodeFunctionResult(functionFragment: "availableBalance", data: BytesLike): Result;
78
+ decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
79
+ decodeFunctionResult(functionFragment: "claimWithdrawals", data: BytesLike): Result;
80
+ decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
81
+ decodeFunctionResult(functionFragment: "depositOnMigration", data: BytesLike): Result;
82
+ decodeFunctionResult(functionFragment: "depositWithPermit", data: BytesLike): Result;
83
+ decodeFunctionResult(functionFragment: "firstEpochTimestamp", data: BytesLike): Result;
84
+ decodeFunctionResult(functionFragment: "gear", data: BytesLike): Result;
85
+ decodeFunctionResult(functionFragment: "getCurrentEpoch", data: BytesLike): Result;
86
+ decodeFunctionResult(functionFragment: "getWithdrawableAmounts", data: BytesLike): Result;
87
+ decodeFunctionResult(functionFragment: "migrate", data: BytesLike): Result;
88
+ decodeFunctionResult(functionFragment: "migrator", data: BytesLike): Result;
89
+ decodeFunctionResult(functionFragment: "multivote", data: BytesLike): Result;
90
+ decodeFunctionResult(functionFragment: "setMigrator", data: BytesLike): Result;
91
+ decodeFunctionResult(functionFragment: "setSuccessor", data: BytesLike): Result;
92
+ decodeFunctionResult(functionFragment: "setVotingContractStatus", data: BytesLike): Result;
93
+ decodeFunctionResult(functionFragment: "successor", data: BytesLike): Result;
94
+ decodeFunctionResult(functionFragment: "version", data: BytesLike): Result;
95
+ decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
96
+ events: {
97
+ "ClaimGearWithdrawal(address,address,uint256)": EventFragment;
98
+ "DepositGear(address,uint256)": EventFragment;
99
+ "MigrateGear(address,address,uint256)": EventFragment;
100
+ "ScheduleGearWithdrawal(address,uint256)": EventFragment;
101
+ "SetMigrator(address)": EventFragment;
102
+ "SetSuccessor(address)": EventFragment;
103
+ "SetVotingContractStatus(address,uint8)": EventFragment;
104
+ };
105
+ getEvent(nameOrSignatureOrTopic: "ClaimGearWithdrawal"): EventFragment;
106
+ getEvent(nameOrSignatureOrTopic: "DepositGear"): EventFragment;
107
+ getEvent(nameOrSignatureOrTopic: "MigrateGear"): EventFragment;
108
+ getEvent(nameOrSignatureOrTopic: "ScheduleGearWithdrawal"): EventFragment;
109
+ getEvent(nameOrSignatureOrTopic: "SetMigrator"): EventFragment;
110
+ getEvent(nameOrSignatureOrTopic: "SetSuccessor"): EventFragment;
111
+ getEvent(nameOrSignatureOrTopic: "SetVotingContractStatus"): EventFragment;
112
+ }
113
+ export interface ClaimGearWithdrawalEventObject {
114
+ user: string;
115
+ to: string;
116
+ amount: BigNumber;
117
+ }
118
+ export type ClaimGearWithdrawalEvent = TypedEvent<[
119
+ string,
120
+ string,
121
+ BigNumber
122
+ ], ClaimGearWithdrawalEventObject>;
123
+ export type ClaimGearWithdrawalEventFilter = TypedEventFilter<ClaimGearWithdrawalEvent>;
124
+ export interface DepositGearEventObject {
125
+ user: string;
126
+ amount: BigNumber;
127
+ }
128
+ export type DepositGearEvent = TypedEvent<[
129
+ string,
130
+ BigNumber
131
+ ], DepositGearEventObject>;
132
+ export type DepositGearEventFilter = TypedEventFilter<DepositGearEvent>;
133
+ export interface MigrateGearEventObject {
134
+ user: string;
135
+ successor: string;
136
+ amount: BigNumber;
137
+ }
138
+ export type MigrateGearEvent = TypedEvent<[
139
+ string,
140
+ string,
141
+ BigNumber
142
+ ], MigrateGearEventObject>;
143
+ export type MigrateGearEventFilter = TypedEventFilter<MigrateGearEvent>;
144
+ export interface ScheduleGearWithdrawalEventObject {
145
+ user: string;
146
+ amount: BigNumber;
147
+ }
148
+ export type ScheduleGearWithdrawalEvent = TypedEvent<[
149
+ string,
150
+ BigNumber
151
+ ], ScheduleGearWithdrawalEventObject>;
152
+ export type ScheduleGearWithdrawalEventFilter = TypedEventFilter<ScheduleGearWithdrawalEvent>;
153
+ export interface SetMigratorEventObject {
154
+ migrator: string;
155
+ }
156
+ export type SetMigratorEvent = TypedEvent<[string], SetMigratorEventObject>;
157
+ export type SetMigratorEventFilter = TypedEventFilter<SetMigratorEvent>;
158
+ export interface SetSuccessorEventObject {
159
+ successor: string;
160
+ }
161
+ export type SetSuccessorEvent = TypedEvent<[string], SetSuccessorEventObject>;
162
+ export type SetSuccessorEventFilter = TypedEventFilter<SetSuccessorEvent>;
163
+ export interface SetVotingContractStatusEventObject {
164
+ votingContract: string;
165
+ status: number;
166
+ }
167
+ export type SetVotingContractStatusEvent = TypedEvent<[
168
+ string,
169
+ number
170
+ ], SetVotingContractStatusEventObject>;
171
+ export type SetVotingContractStatusEventFilter = TypedEventFilter<SetVotingContractStatusEvent>;
172
+ export interface IGearStakingV3 extends BaseContract {
173
+ connect(signerOrProvider: Signer | Provider | string): this;
174
+ attach(addressOrName: string): this;
175
+ deployed(): Promise<this>;
176
+ interface: IGearStakingV3Interface;
177
+ queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
178
+ listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
179
+ listeners(eventName?: string): Array<Listener>;
180
+ removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
181
+ removeAllListeners(eventName?: string): this;
182
+ off: OnEvent<this>;
183
+ on: OnEvent<this>;
184
+ once: OnEvent<this>;
185
+ removeListener: OnEvent<this>;
186
+ functions: {
187
+ allowedVotingContract(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[number]>;
188
+ availableBalance(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
189
+ balanceOf(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
190
+ claimWithdrawals(to: PromiseOrValue<string>, overrides?: Overrides & {
191
+ from?: PromiseOrValue<string>;
192
+ }): Promise<ContractTransaction>;
193
+ deposit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], overrides?: Overrides & {
194
+ from?: PromiseOrValue<string>;
195
+ }): Promise<ContractTransaction>;
196
+ depositOnMigration(amount: PromiseOrValue<BigNumberish>, onBehalfOf: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
197
+ from?: PromiseOrValue<string>;
198
+ }): Promise<ContractTransaction>;
199
+ depositWithPermit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & {
200
+ from?: PromiseOrValue<string>;
201
+ }): Promise<ContractTransaction>;
202
+ firstEpochTimestamp(overrides?: CallOverrides): Promise<[BigNumber]>;
203
+ gear(overrides?: CallOverrides): Promise<[string]>;
204
+ getCurrentEpoch(overrides?: CallOverrides): Promise<[number]>;
205
+ getWithdrawableAmounts(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
206
+ BigNumber,
207
+ [BigNumber, BigNumber, BigNumber, BigNumber]
208
+ ] & {
209
+ withdrawableNow: BigNumber;
210
+ withdrawableInEpochs: [BigNumber, BigNumber, BigNumber, BigNumber];
211
+ }>;
212
+ migrate(amount: PromiseOrValue<BigNumberish>, votesBefore: MultiVoteStruct[], votesAfter: MultiVoteStruct[], overrides?: Overrides & {
213
+ from?: PromiseOrValue<string>;
214
+ }): Promise<ContractTransaction>;
215
+ migrator(overrides?: CallOverrides): Promise<[string]>;
216
+ multivote(votes: MultiVoteStruct[], overrides?: Overrides & {
217
+ from?: PromiseOrValue<string>;
218
+ }): Promise<ContractTransaction>;
219
+ setMigrator(newMigrator: PromiseOrValue<string>, overrides?: Overrides & {
220
+ from?: PromiseOrValue<string>;
221
+ }): Promise<ContractTransaction>;
222
+ setSuccessor(newSuccessor: PromiseOrValue<string>, overrides?: Overrides & {
223
+ from?: PromiseOrValue<string>;
224
+ }): Promise<ContractTransaction>;
225
+ setVotingContractStatus(votingContract: PromiseOrValue<string>, status: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
226
+ from?: PromiseOrValue<string>;
227
+ }): Promise<ContractTransaction>;
228
+ successor(overrides?: CallOverrides): Promise<[string]>;
229
+ version(overrides?: CallOverrides): Promise<[BigNumber]>;
230
+ withdraw(amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
231
+ from?: PromiseOrValue<string>;
232
+ }): Promise<ContractTransaction>;
233
+ };
234
+ allowedVotingContract(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
235
+ availableBalance(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
236
+ balanceOf(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
237
+ claimWithdrawals(to: PromiseOrValue<string>, overrides?: Overrides & {
238
+ from?: PromiseOrValue<string>;
239
+ }): Promise<ContractTransaction>;
240
+ deposit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], overrides?: Overrides & {
241
+ from?: PromiseOrValue<string>;
242
+ }): Promise<ContractTransaction>;
243
+ depositOnMigration(amount: PromiseOrValue<BigNumberish>, onBehalfOf: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
244
+ from?: PromiseOrValue<string>;
245
+ }): Promise<ContractTransaction>;
246
+ depositWithPermit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & {
247
+ from?: PromiseOrValue<string>;
248
+ }): Promise<ContractTransaction>;
249
+ firstEpochTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
250
+ gear(overrides?: CallOverrides): Promise<string>;
251
+ getCurrentEpoch(overrides?: CallOverrides): Promise<number>;
252
+ getWithdrawableAmounts(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
253
+ BigNumber,
254
+ [BigNumber, BigNumber, BigNumber, BigNumber]
255
+ ] & {
256
+ withdrawableNow: BigNumber;
257
+ withdrawableInEpochs: [BigNumber, BigNumber, BigNumber, BigNumber];
258
+ }>;
259
+ migrate(amount: PromiseOrValue<BigNumberish>, votesBefore: MultiVoteStruct[], votesAfter: MultiVoteStruct[], overrides?: Overrides & {
260
+ from?: PromiseOrValue<string>;
261
+ }): Promise<ContractTransaction>;
262
+ migrator(overrides?: CallOverrides): Promise<string>;
263
+ multivote(votes: MultiVoteStruct[], overrides?: Overrides & {
264
+ from?: PromiseOrValue<string>;
265
+ }): Promise<ContractTransaction>;
266
+ setMigrator(newMigrator: PromiseOrValue<string>, overrides?: Overrides & {
267
+ from?: PromiseOrValue<string>;
268
+ }): Promise<ContractTransaction>;
269
+ setSuccessor(newSuccessor: PromiseOrValue<string>, overrides?: Overrides & {
270
+ from?: PromiseOrValue<string>;
271
+ }): Promise<ContractTransaction>;
272
+ setVotingContractStatus(votingContract: PromiseOrValue<string>, status: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
273
+ from?: PromiseOrValue<string>;
274
+ }): Promise<ContractTransaction>;
275
+ successor(overrides?: CallOverrides): Promise<string>;
276
+ version(overrides?: CallOverrides): Promise<BigNumber>;
277
+ withdraw(amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
278
+ from?: PromiseOrValue<string>;
279
+ }): Promise<ContractTransaction>;
280
+ callStatic: {
281
+ allowedVotingContract(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
282
+ availableBalance(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
283
+ balanceOf(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
284
+ claimWithdrawals(to: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
285
+ deposit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], overrides?: CallOverrides): Promise<void>;
286
+ depositOnMigration(amount: PromiseOrValue<BigNumberish>, onBehalfOf: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: CallOverrides): Promise<void>;
287
+ depositWithPermit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
288
+ firstEpochTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
289
+ gear(overrides?: CallOverrides): Promise<string>;
290
+ getCurrentEpoch(overrides?: CallOverrides): Promise<number>;
291
+ getWithdrawableAmounts(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
292
+ BigNumber,
293
+ [BigNumber, BigNumber, BigNumber, BigNumber]
294
+ ] & {
295
+ withdrawableNow: BigNumber;
296
+ withdrawableInEpochs: [BigNumber, BigNumber, BigNumber, BigNumber];
297
+ }>;
298
+ migrate(amount: PromiseOrValue<BigNumberish>, votesBefore: MultiVoteStruct[], votesAfter: MultiVoteStruct[], overrides?: CallOverrides): Promise<void>;
299
+ migrator(overrides?: CallOverrides): Promise<string>;
300
+ multivote(votes: MultiVoteStruct[], overrides?: CallOverrides): Promise<void>;
301
+ setMigrator(newMigrator: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
302
+ setSuccessor(newSuccessor: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
303
+ setVotingContractStatus(votingContract: PromiseOrValue<string>, status: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
304
+ successor(overrides?: CallOverrides): Promise<string>;
305
+ version(overrides?: CallOverrides): Promise<BigNumber>;
306
+ withdraw(amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: CallOverrides): Promise<void>;
307
+ };
308
+ filters: {
309
+ "ClaimGearWithdrawal(address,address,uint256)"(user?: PromiseOrValue<string> | null, to?: null, amount?: null): ClaimGearWithdrawalEventFilter;
310
+ ClaimGearWithdrawal(user?: PromiseOrValue<string> | null, to?: null, amount?: null): ClaimGearWithdrawalEventFilter;
311
+ "DepositGear(address,uint256)"(user?: PromiseOrValue<string> | null, amount?: null): DepositGearEventFilter;
312
+ DepositGear(user?: PromiseOrValue<string> | null, amount?: null): DepositGearEventFilter;
313
+ "MigrateGear(address,address,uint256)"(user?: PromiseOrValue<string> | null, successor?: PromiseOrValue<string> | null, amount?: null): MigrateGearEventFilter;
314
+ MigrateGear(user?: PromiseOrValue<string> | null, successor?: PromiseOrValue<string> | null, amount?: null): MigrateGearEventFilter;
315
+ "ScheduleGearWithdrawal(address,uint256)"(user?: PromiseOrValue<string> | null, amount?: null): ScheduleGearWithdrawalEventFilter;
316
+ ScheduleGearWithdrawal(user?: PromiseOrValue<string> | null, amount?: null): ScheduleGearWithdrawalEventFilter;
317
+ "SetMigrator(address)"(migrator?: PromiseOrValue<string> | null): SetMigratorEventFilter;
318
+ SetMigrator(migrator?: PromiseOrValue<string> | null): SetMigratorEventFilter;
319
+ "SetSuccessor(address)"(successor?: PromiseOrValue<string> | null): SetSuccessorEventFilter;
320
+ SetSuccessor(successor?: PromiseOrValue<string> | null): SetSuccessorEventFilter;
321
+ "SetVotingContractStatus(address,uint8)"(votingContract?: PromiseOrValue<string> | null, status?: null): SetVotingContractStatusEventFilter;
322
+ SetVotingContractStatus(votingContract?: PromiseOrValue<string> | null, status?: null): SetVotingContractStatusEventFilter;
323
+ };
324
+ estimateGas: {
325
+ allowedVotingContract(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
326
+ availableBalance(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
327
+ balanceOf(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
328
+ claimWithdrawals(to: PromiseOrValue<string>, overrides?: Overrides & {
329
+ from?: PromiseOrValue<string>;
330
+ }): Promise<BigNumber>;
331
+ deposit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], overrides?: Overrides & {
332
+ from?: PromiseOrValue<string>;
333
+ }): Promise<BigNumber>;
334
+ depositOnMigration(amount: PromiseOrValue<BigNumberish>, onBehalfOf: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
335
+ from?: PromiseOrValue<string>;
336
+ }): Promise<BigNumber>;
337
+ depositWithPermit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & {
338
+ from?: PromiseOrValue<string>;
339
+ }): Promise<BigNumber>;
340
+ firstEpochTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
341
+ gear(overrides?: CallOverrides): Promise<BigNumber>;
342
+ getCurrentEpoch(overrides?: CallOverrides): Promise<BigNumber>;
343
+ getWithdrawableAmounts(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
344
+ migrate(amount: PromiseOrValue<BigNumberish>, votesBefore: MultiVoteStruct[], votesAfter: MultiVoteStruct[], overrides?: Overrides & {
345
+ from?: PromiseOrValue<string>;
346
+ }): Promise<BigNumber>;
347
+ migrator(overrides?: CallOverrides): Promise<BigNumber>;
348
+ multivote(votes: MultiVoteStruct[], overrides?: Overrides & {
349
+ from?: PromiseOrValue<string>;
350
+ }): Promise<BigNumber>;
351
+ setMigrator(newMigrator: PromiseOrValue<string>, overrides?: Overrides & {
352
+ from?: PromiseOrValue<string>;
353
+ }): Promise<BigNumber>;
354
+ setSuccessor(newSuccessor: PromiseOrValue<string>, overrides?: Overrides & {
355
+ from?: PromiseOrValue<string>;
356
+ }): Promise<BigNumber>;
357
+ setVotingContractStatus(votingContract: PromiseOrValue<string>, status: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
358
+ from?: PromiseOrValue<string>;
359
+ }): Promise<BigNumber>;
360
+ successor(overrides?: CallOverrides): Promise<BigNumber>;
361
+ version(overrides?: CallOverrides): Promise<BigNumber>;
362
+ withdraw(amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
363
+ from?: PromiseOrValue<string>;
364
+ }): Promise<BigNumber>;
365
+ };
366
+ populateTransaction: {
367
+ allowedVotingContract(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
368
+ availableBalance(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
369
+ balanceOf(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
370
+ claimWithdrawals(to: PromiseOrValue<string>, overrides?: Overrides & {
371
+ from?: PromiseOrValue<string>;
372
+ }): Promise<PopulatedTransaction>;
373
+ deposit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], overrides?: Overrides & {
374
+ from?: PromiseOrValue<string>;
375
+ }): Promise<PopulatedTransaction>;
376
+ depositOnMigration(amount: PromiseOrValue<BigNumberish>, onBehalfOf: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
377
+ from?: PromiseOrValue<string>;
378
+ }): Promise<PopulatedTransaction>;
379
+ depositWithPermit(amount: PromiseOrValue<BigNumberish>, votes: MultiVoteStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & {
380
+ from?: PromiseOrValue<string>;
381
+ }): Promise<PopulatedTransaction>;
382
+ firstEpochTimestamp(overrides?: CallOverrides): Promise<PopulatedTransaction>;
383
+ gear(overrides?: CallOverrides): Promise<PopulatedTransaction>;
384
+ getCurrentEpoch(overrides?: CallOverrides): Promise<PopulatedTransaction>;
385
+ getWithdrawableAmounts(user: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
386
+ migrate(amount: PromiseOrValue<BigNumberish>, votesBefore: MultiVoteStruct[], votesAfter: MultiVoteStruct[], overrides?: Overrides & {
387
+ from?: PromiseOrValue<string>;
388
+ }): Promise<PopulatedTransaction>;
389
+ migrator(overrides?: CallOverrides): Promise<PopulatedTransaction>;
390
+ multivote(votes: MultiVoteStruct[], overrides?: Overrides & {
391
+ from?: PromiseOrValue<string>;
392
+ }): Promise<PopulatedTransaction>;
393
+ setMigrator(newMigrator: PromiseOrValue<string>, overrides?: Overrides & {
394
+ from?: PromiseOrValue<string>;
395
+ }): Promise<PopulatedTransaction>;
396
+ setSuccessor(newSuccessor: PromiseOrValue<string>, overrides?: Overrides & {
397
+ from?: PromiseOrValue<string>;
398
+ }): Promise<PopulatedTransaction>;
399
+ setVotingContractStatus(votingContract: PromiseOrValue<string>, status: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
400
+ from?: PromiseOrValue<string>;
401
+ }): Promise<PopulatedTransaction>;
402
+ successor(overrides?: CallOverrides): Promise<PopulatedTransaction>;
403
+ version(overrides?: CallOverrides): Promise<PopulatedTransaction>;
404
+ withdraw(amount: PromiseOrValue<BigNumberish>, to: PromiseOrValue<string>, votes: MultiVoteStruct[], overrides?: Overrides & {
405
+ from?: PromiseOrValue<string>;
406
+ }): Promise<PopulatedTransaction>;
407
+ };
408
+ }
@@ -0,0 +1,117 @@
1
+ import type { BaseContract, BigNumber, Signer, utils } from "ethers";
2
+ import type { EventFragment } from "@ethersproject/abi";
3
+ import type { Listener, Provider } from "@ethersproject/providers";
4
+ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../common";
5
+ export interface IGearStakingV3EventsInterface extends utils.Interface {
6
+ functions: {};
7
+ events: {
8
+ "ClaimGearWithdrawal(address,address,uint256)": EventFragment;
9
+ "DepositGear(address,uint256)": EventFragment;
10
+ "MigrateGear(address,address,uint256)": EventFragment;
11
+ "ScheduleGearWithdrawal(address,uint256)": EventFragment;
12
+ "SetMigrator(address)": EventFragment;
13
+ "SetSuccessor(address)": EventFragment;
14
+ "SetVotingContractStatus(address,uint8)": EventFragment;
15
+ };
16
+ getEvent(nameOrSignatureOrTopic: "ClaimGearWithdrawal"): EventFragment;
17
+ getEvent(nameOrSignatureOrTopic: "DepositGear"): EventFragment;
18
+ getEvent(nameOrSignatureOrTopic: "MigrateGear"): EventFragment;
19
+ getEvent(nameOrSignatureOrTopic: "ScheduleGearWithdrawal"): EventFragment;
20
+ getEvent(nameOrSignatureOrTopic: "SetMigrator"): EventFragment;
21
+ getEvent(nameOrSignatureOrTopic: "SetSuccessor"): EventFragment;
22
+ getEvent(nameOrSignatureOrTopic: "SetVotingContractStatus"): EventFragment;
23
+ }
24
+ export interface ClaimGearWithdrawalEventObject {
25
+ user: string;
26
+ to: string;
27
+ amount: BigNumber;
28
+ }
29
+ export type ClaimGearWithdrawalEvent = TypedEvent<[
30
+ string,
31
+ string,
32
+ BigNumber
33
+ ], ClaimGearWithdrawalEventObject>;
34
+ export type ClaimGearWithdrawalEventFilter = TypedEventFilter<ClaimGearWithdrawalEvent>;
35
+ export interface DepositGearEventObject {
36
+ user: string;
37
+ amount: BigNumber;
38
+ }
39
+ export type DepositGearEvent = TypedEvent<[
40
+ string,
41
+ BigNumber
42
+ ], DepositGearEventObject>;
43
+ export type DepositGearEventFilter = TypedEventFilter<DepositGearEvent>;
44
+ export interface MigrateGearEventObject {
45
+ user: string;
46
+ successor: string;
47
+ amount: BigNumber;
48
+ }
49
+ export type MigrateGearEvent = TypedEvent<[
50
+ string,
51
+ string,
52
+ BigNumber
53
+ ], MigrateGearEventObject>;
54
+ export type MigrateGearEventFilter = TypedEventFilter<MigrateGearEvent>;
55
+ export interface ScheduleGearWithdrawalEventObject {
56
+ user: string;
57
+ amount: BigNumber;
58
+ }
59
+ export type ScheduleGearWithdrawalEvent = TypedEvent<[
60
+ string,
61
+ BigNumber
62
+ ], ScheduleGearWithdrawalEventObject>;
63
+ export type ScheduleGearWithdrawalEventFilter = TypedEventFilter<ScheduleGearWithdrawalEvent>;
64
+ export interface SetMigratorEventObject {
65
+ migrator: string;
66
+ }
67
+ export type SetMigratorEvent = TypedEvent<[string], SetMigratorEventObject>;
68
+ export type SetMigratorEventFilter = TypedEventFilter<SetMigratorEvent>;
69
+ export interface SetSuccessorEventObject {
70
+ successor: string;
71
+ }
72
+ export type SetSuccessorEvent = TypedEvent<[string], SetSuccessorEventObject>;
73
+ export type SetSuccessorEventFilter = TypedEventFilter<SetSuccessorEvent>;
74
+ export interface SetVotingContractStatusEventObject {
75
+ votingContract: string;
76
+ status: number;
77
+ }
78
+ export type SetVotingContractStatusEvent = TypedEvent<[
79
+ string,
80
+ number
81
+ ], SetVotingContractStatusEventObject>;
82
+ export type SetVotingContractStatusEventFilter = TypedEventFilter<SetVotingContractStatusEvent>;
83
+ export interface IGearStakingV3Events extends BaseContract {
84
+ connect(signerOrProvider: Signer | Provider | string): this;
85
+ attach(addressOrName: string): this;
86
+ deployed(): Promise<this>;
87
+ interface: IGearStakingV3EventsInterface;
88
+ queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
89
+ listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
90
+ listeners(eventName?: string): Array<Listener>;
91
+ removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
92
+ removeAllListeners(eventName?: string): this;
93
+ off: OnEvent<this>;
94
+ on: OnEvent<this>;
95
+ once: OnEvent<this>;
96
+ removeListener: OnEvent<this>;
97
+ functions: {};
98
+ callStatic: {};
99
+ filters: {
100
+ "ClaimGearWithdrawal(address,address,uint256)"(user?: PromiseOrValue<string> | null, to?: null, amount?: null): ClaimGearWithdrawalEventFilter;
101
+ ClaimGearWithdrawal(user?: PromiseOrValue<string> | null, to?: null, amount?: null): ClaimGearWithdrawalEventFilter;
102
+ "DepositGear(address,uint256)"(user?: PromiseOrValue<string> | null, amount?: null): DepositGearEventFilter;
103
+ DepositGear(user?: PromiseOrValue<string> | null, amount?: null): DepositGearEventFilter;
104
+ "MigrateGear(address,address,uint256)"(user?: PromiseOrValue<string> | null, successor?: PromiseOrValue<string> | null, amount?: null): MigrateGearEventFilter;
105
+ MigrateGear(user?: PromiseOrValue<string> | null, successor?: PromiseOrValue<string> | null, amount?: null): MigrateGearEventFilter;
106
+ "ScheduleGearWithdrawal(address,uint256)"(user?: PromiseOrValue<string> | null, amount?: null): ScheduleGearWithdrawalEventFilter;
107
+ ScheduleGearWithdrawal(user?: PromiseOrValue<string> | null, amount?: null): ScheduleGearWithdrawalEventFilter;
108
+ "SetMigrator(address)"(migrator?: PromiseOrValue<string> | null): SetMigratorEventFilter;
109
+ SetMigrator(migrator?: PromiseOrValue<string> | null): SetMigratorEventFilter;
110
+ "SetSuccessor(address)"(successor?: PromiseOrValue<string> | null): SetSuccessorEventFilter;
111
+ SetSuccessor(successor?: PromiseOrValue<string> | null): SetSuccessorEventFilter;
112
+ "SetVotingContractStatus(address,uint8)"(votingContract?: PromiseOrValue<string> | null, status?: null): SetVotingContractStatusEventFilter;
113
+ SetVotingContractStatus(votingContract?: PromiseOrValue<string> | null, status?: null): SetVotingContractStatusEventFilter;
114
+ };
115
+ estimateGas: {};
116
+ populateTransaction: {};
117
+ }
@@ -0,0 +1,2 @@
1
+ export type { IGearStakingV3 } from "./IGearStakingV3";
2
+ export type { IGearStakingV3Events } from "./IGearStakingV3Events";
@@ -1,15 +1,13 @@
1
1
  import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
2
- import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
2
+ import type { FunctionFragment, Result } from "@ethersproject/abi";
3
3
  import type { Listener, Provider } from "@ethersproject/providers";
4
- import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../common";
4
+ import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "./common";
5
5
  export interface ILidoV1AdapterInterface extends utils.Interface {
6
6
  functions: {
7
7
  "_gearboxAdapterType()": FunctionFragment;
8
8
  "_gearboxAdapterVersion()": FunctionFragment;
9
9
  "addressProvider()": FunctionFragment;
10
10
  "creditManager()": FunctionFragment;
11
- "limit()": FunctionFragment;
12
- "setLimit(uint256)": FunctionFragment;
13
11
  "stETH()": FunctionFragment;
14
12
  "stETHTokenMask()": FunctionFragment;
15
13
  "submit(uint256)": FunctionFragment;
@@ -19,13 +17,11 @@ export interface ILidoV1AdapterInterface extends utils.Interface {
19
17
  "weth()": FunctionFragment;
20
18
  "wethTokenMask()": FunctionFragment;
21
19
  };
22
- getFunction(nameOrSignatureOrTopic: "_gearboxAdapterType" | "_gearboxAdapterVersion" | "addressProvider" | "creditManager" | "limit" | "setLimit" | "stETH" | "stETHTokenMask" | "submit" | "submitAll" | "targetContract" | "treasury" | "weth" | "wethTokenMask"): FunctionFragment;
20
+ getFunction(nameOrSignatureOrTopic: "_gearboxAdapterType" | "_gearboxAdapterVersion" | "addressProvider" | "creditManager" | "stETH" | "stETHTokenMask" | "submit" | "submitAll" | "targetContract" | "treasury" | "weth" | "wethTokenMask"): FunctionFragment;
23
21
  encodeFunctionData(functionFragment: "_gearboxAdapterType", values?: undefined): string;
24
22
  encodeFunctionData(functionFragment: "_gearboxAdapterVersion", values?: undefined): string;
25
23
  encodeFunctionData(functionFragment: "addressProvider", values?: undefined): string;
26
24
  encodeFunctionData(functionFragment: "creditManager", values?: undefined): string;
27
- encodeFunctionData(functionFragment: "limit", values?: undefined): string;
28
- encodeFunctionData(functionFragment: "setLimit", values: [PromiseOrValue<BigNumberish>]): string;
29
25
  encodeFunctionData(functionFragment: "stETH", values?: undefined): string;
30
26
  encodeFunctionData(functionFragment: "stETHTokenMask", values?: undefined): string;
31
27
  encodeFunctionData(functionFragment: "submit", values: [PromiseOrValue<BigNumberish>]): string;
@@ -38,8 +34,6 @@ export interface ILidoV1AdapterInterface extends utils.Interface {
38
34
  decodeFunctionResult(functionFragment: "_gearboxAdapterVersion", data: BytesLike): Result;
39
35
  decodeFunctionResult(functionFragment: "addressProvider", data: BytesLike): Result;
40
36
  decodeFunctionResult(functionFragment: "creditManager", data: BytesLike): Result;
41
- decodeFunctionResult(functionFragment: "limit", data: BytesLike): Result;
42
- decodeFunctionResult(functionFragment: "setLimit", data: BytesLike): Result;
43
37
  decodeFunctionResult(functionFragment: "stETH", data: BytesLike): Result;
44
38
  decodeFunctionResult(functionFragment: "stETHTokenMask", data: BytesLike): Result;
45
39
  decodeFunctionResult(functionFragment: "submit", data: BytesLike): Result;
@@ -48,16 +42,8 @@ export interface ILidoV1AdapterInterface extends utils.Interface {
48
42
  decodeFunctionResult(functionFragment: "treasury", data: BytesLike): Result;
49
43
  decodeFunctionResult(functionFragment: "weth", data: BytesLike): Result;
50
44
  decodeFunctionResult(functionFragment: "wethTokenMask", data: BytesLike): Result;
51
- events: {
52
- "SetLimit(uint256)": EventFragment;
53
- };
54
- getEvent(nameOrSignatureOrTopic: "SetLimit"): EventFragment;
55
- }
56
- export interface SetLimitEventObject {
57
- _limit: BigNumber;
45
+ events: {};
58
46
  }
59
- export type SetLimitEvent = TypedEvent<[BigNumber], SetLimitEventObject>;
60
- export type SetLimitEventFilter = TypedEventFilter<SetLimitEvent>;
61
47
  export interface ILidoV1Adapter extends BaseContract {
62
48
  connect(signerOrProvider: Signer | Provider | string): this;
63
49
  attach(addressOrName: string): this;
@@ -77,10 +63,6 @@ export interface ILidoV1Adapter extends BaseContract {
77
63
  _gearboxAdapterVersion(overrides?: CallOverrides): Promise<[number]>;
78
64
  addressProvider(overrides?: CallOverrides): Promise<[string]>;
79
65
  creditManager(overrides?: CallOverrides): Promise<[string]>;
80
- limit(overrides?: CallOverrides): Promise<[BigNumber]>;
81
- setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
82
- from?: PromiseOrValue<string>;
83
- }): Promise<ContractTransaction>;
84
66
  stETH(overrides?: CallOverrides): Promise<[string]>;
85
67
  stETHTokenMask(overrides?: CallOverrides): Promise<[BigNumber]>;
86
68
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -98,10 +80,6 @@ export interface ILidoV1Adapter extends BaseContract {
98
80
  _gearboxAdapterVersion(overrides?: CallOverrides): Promise<number>;
99
81
  addressProvider(overrides?: CallOverrides): Promise<string>;
100
82
  creditManager(overrides?: CallOverrides): Promise<string>;
101
- limit(overrides?: CallOverrides): Promise<BigNumber>;
102
- setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
103
- from?: PromiseOrValue<string>;
104
- }): Promise<ContractTransaction>;
105
83
  stETH(overrides?: CallOverrides): Promise<string>;
106
84
  stETHTokenMask(overrides?: CallOverrides): Promise<BigNumber>;
107
85
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -119,8 +97,6 @@ export interface ILidoV1Adapter extends BaseContract {
119
97
  _gearboxAdapterVersion(overrides?: CallOverrides): Promise<number>;
120
98
  addressProvider(overrides?: CallOverrides): Promise<string>;
121
99
  creditManager(overrides?: CallOverrides): Promise<string>;
122
- limit(overrides?: CallOverrides): Promise<BigNumber>;
123
- setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
124
100
  stETH(overrides?: CallOverrides): Promise<string>;
125
101
  stETHTokenMask(overrides?: CallOverrides): Promise<BigNumber>;
126
102
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
@@ -142,19 +118,12 @@ export interface ILidoV1Adapter extends BaseContract {
142
118
  weth(overrides?: CallOverrides): Promise<string>;
143
119
  wethTokenMask(overrides?: CallOverrides): Promise<BigNumber>;
144
120
  };
145
- filters: {
146
- "SetLimit(uint256)"(_limit?: null): SetLimitEventFilter;
147
- SetLimit(_limit?: null): SetLimitEventFilter;
148
- };
121
+ filters: {};
149
122
  estimateGas: {
150
123
  _gearboxAdapterType(overrides?: CallOverrides): Promise<BigNumber>;
151
124
  _gearboxAdapterVersion(overrides?: CallOverrides): Promise<BigNumber>;
152
125
  addressProvider(overrides?: CallOverrides): Promise<BigNumber>;
153
126
  creditManager(overrides?: CallOverrides): Promise<BigNumber>;
154
- limit(overrides?: CallOverrides): Promise<BigNumber>;
155
- setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
156
- from?: PromiseOrValue<string>;
157
- }): Promise<BigNumber>;
158
127
  stETH(overrides?: CallOverrides): Promise<BigNumber>;
159
128
  stETHTokenMask(overrides?: CallOverrides): Promise<BigNumber>;
160
129
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
@@ -173,10 +142,6 @@ export interface ILidoV1Adapter extends BaseContract {
173
142
  _gearboxAdapterVersion(overrides?: CallOverrides): Promise<PopulatedTransaction>;
174
143
  addressProvider(overrides?: CallOverrides): Promise<PopulatedTransaction>;
175
144
  creditManager(overrides?: CallOverrides): Promise<PopulatedTransaction>;
176
- limit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
177
- setLimit(_limit: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
178
- from?: PromiseOrValue<string>;
179
- }): Promise<PopulatedTransaction>;
180
145
  stETH(overrides?: CallOverrides): Promise<PopulatedTransaction>;
181
146
  stETHTokenMask(overrides?: CallOverrides): Promise<PopulatedTransaction>;
182
147
  submit(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {