@raac/rpc 1.2.0-beta.10 → 1.2.0-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/dist/RPCLibrary.js +2 -0
  2. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.json +113 -20
  3. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.json +259 -31
  4. package/dist/artifacts/core/governance/gauges/GaugeRewardsDistributor.sol/GaugeRewardsDistributor.json +159 -31
  5. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.json +115 -22
  6. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.json +115 -22
  7. package/dist/configs/chains/1.json +22 -25
  8. package/dist/configs/chains/11155111.json +56 -71
  9. package/dist/configs/chains/17000.json +22 -25
  10. package/dist/configs/chains/18453.json +22 -25
  11. package/dist/configs/chains/8453.json +61 -31
  12. package/dist/contracts/findContract.js +11 -4
  13. package/dist/contracts/getContractAddress.js +0 -1
  14. package/dist/contracts/governance/distributor/claimAll.js +18 -11
  15. package/dist/contracts/governance/distributor/claimForGauge.js +18 -12
  16. package/dist/contracts/governance/distributor/deposit.js +17 -12
  17. package/dist/contracts/governance/distributor/getClaimableForGauge.js +10 -9
  18. package/dist/contracts/governance/distributor/getClaimedAtEpoch.js +11 -10
  19. package/dist/contracts/governance/distributor/getDepositedAtEpoch.js +8 -8
  20. package/dist/contracts/governance/distributor/getDustLastProcessedEpoch.js +28 -0
  21. package/dist/contracts/governance/distributor/getGaugeController.js +7 -7
  22. package/dist/contracts/governance/distributor/getLastClaimedEpoch.js +10 -9
  23. package/dist/contracts/governance/distributor/getMaxClaimBound.js +29 -0
  24. package/dist/contracts/governance/distributor/getPeriodDuration.js +7 -7
  25. package/dist/contracts/governance/distributor/getRewardToken.js +7 -7
  26. package/dist/contracts/governance/distributor/getRewardTokenInfo.js +7 -7
  27. package/dist/contracts/governance/distributor/getRewardTokenStats.js +7 -7
  28. package/dist/contracts/governance/distributor/index.js +5 -2
  29. package/dist/contracts/governance/distributor/setController.js +17 -12
  30. package/dist/contracts/governance/distributor/setLastClaimedEpoch.js +32 -0
  31. package/dist/contracts/governance/distributor/setMaxClaimBound.js +31 -0
  32. package/dist/contracts/governance/distributor/withdrawDust.js +31 -0
  33. package/dist/contracts/governance/distributor/withdrawRemovedGaugeRewards.js +19 -13
  34. package/dist/contracts/governance/gauge/_apy.js +122 -0
  35. package/dist/contracts/governance/gauge/_tokens.js +36 -0
  36. package/dist/contracts/governance/gauge/addRewardToken.js +2 -12
  37. package/dist/contracts/governance/gauge/approveGaugeToken.js +31 -0
  38. package/dist/contracts/governance/gauge/claimExtraReward.js +2 -12
  39. package/dist/contracts/governance/gauge/claimExtraRewards.js +2 -12
  40. package/dist/contracts/governance/gauge/claimOnBehalfOf.js +2 -12
  41. package/dist/contracts/governance/gauge/claimRewardToken.js +3 -13
  42. package/dist/contracts/governance/gauge/claimRewardsFor.js +2 -12
  43. package/dist/contracts/governance/gauge/depositRewardToken.js +2 -12
  44. package/dist/contracts/governance/gauge/getAllPendingExtraRewards.js +2 -9
  45. package/dist/contracts/governance/gauge/getApy.js +44 -0
  46. package/dist/contracts/governance/gauge/getBalanceOf.js +2 -15
  47. package/dist/contracts/governance/gauge/getControllerAddress.js +2 -9
  48. package/dist/contracts/governance/gauge/getDecimalAdjustment.js +2 -9
  49. package/dist/contracts/governance/gauge/getDepositRAACOnClaim.js +2 -9
  50. package/dist/contracts/governance/gauge/getDistributorData.js +2 -9
  51. package/dist/contracts/governance/gauge/getDistributors.js +2 -9
  52. package/dist/contracts/governance/gauge/getEarnedExtraReward.js +30 -0
  53. package/dist/contracts/governance/gauge/getEarnedReward.js +8 -14
  54. package/dist/contracts/governance/gauge/getExtraRewardTokens.js +2 -9
  55. package/dist/contracts/governance/gauge/getGaugeData.js +39 -0
  56. package/dist/contracts/governance/gauge/getGaugeRewardTokenData.js +2 -9
  57. package/dist/contracts/governance/gauge/getPauseStatus.js +31 -0
  58. package/dist/contracts/governance/gauge/getPendingExtraRewards.js +2 -9
  59. package/dist/contracts/governance/gauge/getPendingRewards.js +8 -14
  60. package/dist/contracts/governance/gauge/getPeriodBoundaries.js +2 -15
  61. package/dist/contracts/governance/gauge/getPeriodDuration.js +2 -15
  62. package/dist/contracts/governance/gauge/getRaacAutolockMin.js +2 -9
  63. package/dist/contracts/governance/gauge/getRawBalanceOf.js +2 -15
  64. package/dist/contracts/governance/gauge/getRawTotalSupply.js +2 -15
  65. package/dist/contracts/governance/gauge/getRewardTokens.js +28 -0
  66. package/dist/contracts/governance/gauge/getTotalSupply.js +2 -15
  67. package/dist/contracts/governance/gauge/getUserApy.js +71 -0
  68. package/dist/contracts/governance/gauge/getUserClaimableRewards.js +21 -73
  69. package/dist/contracts/governance/gauge/getUserGaugeState.js +44 -0
  70. package/dist/contracts/governance/gauge/getUserRewardTokenData.js +2 -9
  71. package/dist/contracts/governance/gauge/getUserWeight.js +2 -9
  72. package/dist/contracts/governance/gauge/index.js +11 -1
  73. package/dist/contracts/governance/gauge/isPaused.js +4 -11
  74. package/dist/contracts/governance/gauge/manageDistributor.js +2 -12
  75. package/dist/contracts/governance/gauge/pullRewardsFromDistributor.js +30 -0
  76. package/dist/contracts/governance/gauge/setController.js +2 -12
  77. package/dist/contracts/governance/gauge/setDepositRAACOnClaim.js +2 -12
  78. package/dist/contracts/governance/gauge/setEmergencyPaused.js +2 -12
  79. package/dist/contracts/governance/gauge/setGaugeRewardDistributor.js +2 -12
  80. package/dist/contracts/governance/gauge/setRaacAutolockMin.js +2 -12
  81. package/dist/contracts/governance/gauge/stake.js +2 -18
  82. package/dist/contracts/governance/gauge/unwrapStakingToken.js +28 -0
  83. package/dist/contracts/governance/gauge/updateUserRewards.js +2 -18
  84. package/dist/contracts/governance/gauge/withdraw.js +2 -18
  85. package/dist/contracts/governance/gauge/wrapStakingToken.js +28 -0
  86. package/dist/contracts/governance/gaugeController/addGauge.js +19 -11
  87. package/dist/contracts/governance/gaugeController/batchVote.js +20 -12
  88. package/dist/contracts/governance/gaugeController/calculateBoost.js +20 -23
  89. package/dist/contracts/governance/gaugeController/forceCompleteCheckpoint.js +19 -11
  90. package/dist/contracts/governance/gaugeController/getActiveGaugeCount.js +28 -0
  91. package/dist/contracts/governance/gaugeController/getActiveGauges.js +10 -13
  92. package/dist/contracts/governance/gaugeController/getConstants.js +10 -18
  93. package/dist/contracts/governance/gaugeController/getCurrentEpoch.js +8 -7
  94. package/dist/contracts/governance/gaugeController/getExpiredGaugeVotePower.js +30 -0
  95. package/dist/contracts/governance/gaugeController/getGauge.js +11 -9
  96. package/dist/contracts/governance/gaugeController/getGaugeDistributor.js +28 -0
  97. package/dist/contracts/governance/gaugeController/getGaugeEmissions.js +15 -9
  98. package/dist/contracts/governance/gaugeController/getGaugeRelativeWeight.js +19 -15
  99. package/dist/contracts/governance/gaugeController/getGaugeRelativeWeightView.js +12 -10
  100. package/dist/contracts/governance/gaugeController/getGaugeWeight.js +10 -8
  101. package/dist/contracts/governance/gaugeController/getLastVoteTime.js +11 -9
  102. package/dist/contracts/governance/gaugeController/getMaxVoteBuckets.js +28 -0
  103. package/dist/contracts/governance/gaugeController/getNextEpoch.js +8 -7
  104. package/dist/contracts/governance/gaugeController/getRegisteredGaugeList.js +28 -0
  105. package/dist/contracts/governance/gaugeController/getTotalWeight.js +8 -7
  106. package/dist/contracts/governance/gaugeController/getUserGaugeVotePower.js +11 -9
  107. package/dist/contracts/governance/gaugeController/getUserVotePowerRemaining.js +10 -9
  108. package/dist/contracts/governance/gaugeController/getVeToken.js +8 -7
  109. package/dist/contracts/governance/gaugeController/getVoteUserLocks.js +32 -0
  110. package/dist/contracts/governance/gaugeController/getVoteUserPower.js +8 -7
  111. package/dist/contracts/governance/gaugeController/getVoteUserSlope.js +12 -10
  112. package/dist/contracts/governance/gaugeController/index.js +10 -1
  113. package/dist/contracts/governance/gaugeController/isGaugeActive.js +11 -9
  114. package/dist/contracts/governance/gaugeController/isPaused.js +9 -8
  115. package/dist/contracts/governance/gaugeController/kick.js +17 -10
  116. package/dist/contracts/governance/gaugeController/removeGauge.js +20 -11
  117. package/dist/contracts/governance/gaugeController/removePowerFromGauge.js +19 -11
  118. package/dist/contracts/governance/gaugeController/setBoostAmplificationEnabled.js +20 -12
  119. package/dist/contracts/governance/gaugeController/setDistributor.js +31 -0
  120. package/dist/contracts/governance/gaugeController/setEmergencyGaugePause.js +20 -12
  121. package/dist/contracts/governance/gaugeController/setEmergencyGaugePauseBatch.js +33 -0
  122. package/dist/contracts/governance/gaugeController/setEmergencyPause.js +18 -11
  123. package/dist/contracts/governance/gaugeController/setMaxVoteBuckets.js +31 -0
  124. package/dist/contracts/governance/gaugeController/vote.js +15 -16
  125. package/dist/contracts/governance/gaugeSystems/_helpers.js +123 -0
  126. package/dist/contracts/governance/gaugeSystems/findGauge.js +14 -0
  127. package/dist/contracts/governance/gaugeSystems/getGaugeSystem.js +14 -0
  128. package/dist/contracts/governance/gaugeSystems/getGaugeSystems.js +13 -0
  129. package/dist/contracts/governance/gaugeSystems/getGauges.js +15 -0
  130. package/dist/contracts/governance/gaugeSystems/index.js +21 -0
  131. package/dist/types/RPCLibrary.d.ts +2 -0
  132. package/dist/types/configs/chains/index.d.ts +36 -46
  133. package/dist/types/configs/index.d.ts +18 -23
  134. package/dist/types/contracts/governance/distributor/claimAll.d.ts +7 -5
  135. package/dist/types/contracts/governance/distributor/claimForGauge.d.ts +7 -6
  136. package/dist/types/contracts/governance/distributor/deposit.d.ts +7 -6
  137. package/dist/types/contracts/governance/distributor/getClaimableForGauge.d.ts +6 -4
  138. package/dist/types/contracts/governance/distributor/getClaimedAtEpoch.d.ts +7 -5
  139. package/dist/types/contracts/governance/distributor/getDepositedAtEpoch.d.ts +6 -4
  140. package/dist/types/contracts/governance/distributor/getDustLastProcessedEpoch.d.ts +12 -0
  141. package/dist/types/contracts/governance/distributor/getGaugeController.d.ts +5 -3
  142. package/dist/types/contracts/governance/distributor/getLastClaimedEpoch.d.ts +6 -4
  143. package/dist/types/contracts/governance/distributor/getMaxClaimBound.d.ts +15 -0
  144. package/dist/types/contracts/governance/distributor/getPeriodDuration.d.ts +5 -3
  145. package/dist/types/contracts/governance/distributor/getRewardToken.d.ts +5 -3
  146. package/dist/types/contracts/governance/distributor/getRewardTokenInfo.d.ts +5 -3
  147. package/dist/types/contracts/governance/distributor/getRewardTokenStats.d.ts +5 -3
  148. package/dist/types/contracts/governance/distributor/index.d.ts +5 -2
  149. package/dist/types/contracts/governance/distributor/setController.d.ts +7 -6
  150. package/dist/types/contracts/governance/distributor/setLastClaimedEpoch.d.ts +13 -0
  151. package/dist/types/contracts/governance/distributor/setMaxClaimBound.d.ts +13 -0
  152. package/dist/types/contracts/governance/distributor/withdrawDust.d.ts +13 -0
  153. package/dist/types/contracts/governance/distributor/withdrawRemovedGaugeRewards.d.ts +8 -7
  154. package/dist/types/contracts/governance/gauge/_apy.d.ts +61 -0
  155. package/dist/types/contracts/governance/gauge/_tokens.d.ts +14 -0
  156. package/dist/types/contracts/governance/gauge/approveGaugeToken.d.ts +14 -0
  157. package/dist/types/contracts/governance/gauge/claimRewardToken.d.ts +1 -1
  158. package/dist/types/contracts/governance/gauge/getApy.d.ts +41 -0
  159. package/dist/types/contracts/governance/gauge/getEarnedExtraReward.d.ts +13 -0
  160. package/dist/types/contracts/governance/gauge/getEarnedReward.d.ts +3 -2
  161. package/dist/types/contracts/governance/gauge/getGaugeData.d.ts +23 -0
  162. package/dist/types/contracts/governance/gauge/getPauseStatus.d.ts +19 -0
  163. package/dist/types/contracts/governance/gauge/getPendingRewards.d.ts +3 -2
  164. package/dist/types/contracts/governance/gauge/getRewardTokens.d.ts +11 -0
  165. package/dist/types/contracts/governance/gauge/getUserApy.d.ts +44 -0
  166. package/dist/types/contracts/governance/gauge/getUserClaimableRewards.d.ts +14 -12
  167. package/dist/types/contracts/governance/gauge/getUserGaugeState.d.ts +31 -0
  168. package/dist/types/contracts/governance/gauge/index.d.ts +11 -1
  169. package/dist/types/contracts/governance/gauge/isPaused.d.ts +1 -1
  170. package/dist/types/contracts/governance/gauge/pullRewardsFromDistributor.d.ts +11 -0
  171. package/dist/types/contracts/governance/gauge/unwrapStakingToken.d.ts +12 -0
  172. package/dist/types/contracts/governance/gauge/wrapStakingToken.d.ts +13 -0
  173. package/dist/types/contracts/governance/gaugeController/addGauge.d.ts +8 -5
  174. package/dist/types/contracts/governance/gaugeController/batchVote.d.ts +9 -6
  175. package/dist/types/contracts/governance/gaugeController/calculateBoost.d.ts +10 -8
  176. package/dist/types/contracts/governance/gaugeController/forceCompleteCheckpoint.d.ts +8 -5
  177. package/dist/types/contracts/governance/gaugeController/getActiveGaugeCount.d.ts +12 -0
  178. package/dist/types/contracts/governance/gaugeController/getActiveGauges.d.ts +7 -3
  179. package/dist/types/contracts/governance/gaugeController/getConstants.d.ts +6 -4
  180. package/dist/types/contracts/governance/gaugeController/getCurrentEpoch.d.ts +6 -3
  181. package/dist/types/contracts/governance/gaugeController/getExpiredGaugeVotePower.d.ts +16 -0
  182. package/dist/types/contracts/governance/gaugeController/getGauge.d.ts +7 -4
  183. package/dist/types/contracts/governance/gaugeController/getGaugeDistributor.d.ts +12 -0
  184. package/dist/types/contracts/governance/gaugeController/getGaugeEmissions.d.ts +6 -3
  185. package/dist/types/contracts/governance/gaugeController/getGaugeRelativeWeight.d.ts +8 -9
  186. package/dist/types/contracts/governance/gaugeController/getGaugeRelativeWeightView.d.ts +8 -5
  187. package/dist/types/contracts/governance/gaugeController/getGaugeWeight.d.ts +6 -4
  188. package/dist/types/contracts/governance/gaugeController/getLastVoteTime.d.ts +7 -4
  189. package/dist/types/contracts/governance/gaugeController/getMaxVoteBuckets.d.ts +12 -0
  190. package/dist/types/contracts/governance/gaugeController/getNextEpoch.d.ts +6 -3
  191. package/dist/types/contracts/governance/gaugeController/getRegisteredGaugeList.d.ts +12 -0
  192. package/dist/types/contracts/governance/gaugeController/getTotalWeight.d.ts +5 -3
  193. package/dist/types/contracts/governance/gaugeController/getUserGaugeVotePower.d.ts +7 -4
  194. package/dist/types/contracts/governance/gaugeController/getUserVotePowerRemaining.d.ts +6 -4
  195. package/dist/types/contracts/governance/gaugeController/getVeToken.d.ts +6 -3
  196. package/dist/types/contracts/governance/gaugeController/getVoteUserLocks.d.ts +17 -0
  197. package/dist/types/contracts/governance/gaugeController/getVoteUserPower.d.ts +6 -3
  198. package/dist/types/contracts/governance/gaugeController/getVoteUserSlope.d.ts +8 -5
  199. package/dist/types/contracts/governance/gaugeController/index.d.ts +10 -1
  200. package/dist/types/contracts/governance/gaugeController/isGaugeActive.d.ts +6 -4
  201. package/dist/types/contracts/governance/gaugeController/isPaused.d.ts +6 -3
  202. package/dist/types/contracts/governance/gaugeController/kick.d.ts +7 -4
  203. package/dist/types/contracts/governance/gaugeController/removeGauge.d.ts +9 -5
  204. package/dist/types/contracts/governance/gaugeController/removePowerFromGauge.d.ts +8 -5
  205. package/dist/types/contracts/governance/gaugeController/setBoostAmplificationEnabled.d.ts +9 -6
  206. package/dist/types/contracts/governance/gaugeController/setDistributor.d.ts +13 -0
  207. package/dist/types/contracts/governance/gaugeController/setEmergencyGaugePause.d.ts +9 -6
  208. package/dist/types/contracts/governance/gaugeController/setEmergencyGaugePauseBatch.d.ts +14 -0
  209. package/dist/types/contracts/governance/gaugeController/setEmergencyPause.d.ts +8 -5
  210. package/dist/types/contracts/governance/gaugeController/setMaxVoteBuckets.d.ts +13 -0
  211. package/dist/types/contracts/governance/gaugeController/vote.d.ts +9 -7
  212. package/dist/types/contracts/governance/gaugeSystems/_helpers.d.ts +71 -0
  213. package/dist/types/contracts/governance/gaugeSystems/findGauge.d.ts +11 -0
  214. package/dist/types/contracts/governance/gaugeSystems/getGaugeSystem.d.ts +11 -0
  215. package/dist/types/contracts/governance/gaugeSystems/getGaugeSystems.d.ts +10 -0
  216. package/dist/types/contracts/governance/gaugeSystems/getGauges.d.ts +13 -0
  217. package/dist/types/contracts/governance/gaugeSystems/index.d.ts +5 -0
  218. package/dist/types/typechain-types/contracts/core/governance/gauges/BaseGauge.d.ts +176 -105
  219. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeController.d.ts +260 -213
  220. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeRewardsDistributor.d.ts +173 -212
  221. package/dist/types/typechain-types/contracts/core/governance/gauges/RAACGauge.d.ts +176 -105
  222. package/dist/types/typechain-types/contracts/core/governance/gauges/RWAGauge.d.ts +176 -105
  223. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IBaseGauge.d.ts +111 -108
  224. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGaugeController.d.ts +210 -34
  225. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IGaugeRewardsDistributor.d.ts +112 -151
  226. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/BaseGauge__factory.d.ts +174 -95
  227. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +243 -227
  228. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeRewardsDistributor__factory.d.ts +164 -232
  229. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +185 -98
  230. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +185 -98
  231. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IBaseGauge__factory.d.ts +104 -95
  232. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IGaugeController__factory.d.ts +241 -22
  233. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IGaugeRewardsDistributor__factory.d.ts +72 -158
  234. package/dist/types/utils/artifacts.d.ts +40 -0
  235. package/dist/types/utils/contracts.d.ts +34 -44
  236. package/dist/utils/contracts.js +1 -1
  237. package/package.json +1 -1
  238. package/dist/contracts/governance/distributor/getStartEpoch.js +0 -28
  239. package/dist/contracts/governance/distributor/withdrawUnallocatedRewards.js +0 -26
  240. package/dist/contracts/governance/gauge/setDistributorApproval.js +0 -35
  241. package/dist/types/contracts/governance/distributor/getStartEpoch.d.ts +0 -10
  242. package/dist/types/contracts/governance/distributor/withdrawUnallocatedRewards.d.ts +0 -12
  243. package/dist/types/contracts/governance/gauge/setDistributorApproval.d.ts +0 -11
@@ -2,24 +2,32 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setEmergencyGaugePause = void 0;
4
4
  const ethers_1 = require("ethers");
5
- const getContractAddress_1 = require("../../getContractAddress");
6
5
  const artifacts_1 = require("../../../utils/artifacts");
6
+ const _helpers_1 = require("../gaugeSystems/_helpers");
7
+ const _helpers_2 = require("../_helpers");
7
8
  /**
8
- * Emergency-pauses or unpauses a single gauge. Requires the EMERGENCY_ADMIN role.
9
+ * Pauses or unpauses a single gauge. Requires EMERGENCY_ADMIN. Flips only the gauge's own switch: votes and weight are kept and its share stays in the distributor until it is unpaused. Pausing requires a registered gauge; unpausing also works for a removed one.
10
+ *
9
11
  * @param chainId - The chain/network to use.
10
- * @param gauge - Address of the gauge.
11
- * @param paused - Whether the gauge should be paused.
12
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeController address.
13
+ * @param gaugeAddressOrId - Address or config id of the gauge.
14
+ * @param paused - True to pause, false to unpause.
12
15
  * @param signer - An ethers.js Signer instance (required).
13
- * @returns The transaction response.
16
+ * @returns The transaction after it has been mined.
14
17
  */
15
- const setEmergencyGaugePause = async (chainId, gauge, paused, signer) => {
18
+ const setEmergencyGaugePause = async (chainId, gaugeSystem, gaugeAddressOrId, paused, signer) => {
16
19
  if (!signer)
17
20
  throw new Error("Signer is required");
18
- const address = (0, getContractAddress_1.getContractAddress)(chainId, "gaugecontroller");
19
- const abi = (0, artifacts_1.getABI)("gaugecontroller");
20
- const contract = new ethers_1.ethers.Contract(address, abi, signer);
21
- const tx = await contract.setEmergencyGaugePause(gauge, paused);
22
- await tx.wait();
23
- return tx;
21
+ const address = (0, _helpers_1.resolveGaugeController)(chainId, gaugeSystem);
22
+ const gaugeAddress = (0, _helpers_1.resolveGauge)(chainId, gaugeAddressOrId);
23
+ const contract = new ethers_1.ethers.Contract(address, (0, artifacts_1.getABI)("gaugecontroller"), signer);
24
+ try {
25
+ const tx = await contract.setEmergencyGaugePause(gaugeAddress, paused);
26
+ await tx.wait();
27
+ return tx;
28
+ }
29
+ catch (error) {
30
+ throw (0, _helpers_2.toGovernanceTxError)("Failed to set gauge pause", error);
31
+ }
24
32
  };
25
33
  exports.setEmergencyGaugePause = setEmergencyGaugePause;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setEmergencyGaugePauseBatch = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const artifacts_1 = require("../../../utils/artifacts");
6
+ const _helpers_1 = require("../gaugeSystems/_helpers");
7
+ const _helpers_2 = require("../_helpers");
8
+ /**
9
+ * Pauses or unpauses several gauges in one transaction. Requires EMERGENCY_ADMIN. All-or-nothing: a zero address, pausing an unregistered gauge, or a gauge already in its requested state reverts the whole batch.
10
+ *
11
+ * @param chainId - The chain/network to use.
12
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeController address.
13
+ * @param gaugeAddressesOrIds - Addresses or config ids of the gauges.
14
+ * @param statuses - Requested pause state per gauge, index-aligned with the gauges.
15
+ * @param signer - An ethers.js Signer instance (required).
16
+ * @returns The transaction after it has been mined.
17
+ */
18
+ const setEmergencyGaugePauseBatch = async (chainId, gaugeSystem, gaugeAddressesOrIds, statuses, signer) => {
19
+ if (!signer)
20
+ throw new Error("Signer is required");
21
+ const address = (0, _helpers_1.resolveGaugeController)(chainId, gaugeSystem);
22
+ const gaugeAddresses = gaugeAddressesOrIds.map((g) => (0, _helpers_1.resolveGauge)(chainId, g));
23
+ const contract = new ethers_1.ethers.Contract(address, (0, artifacts_1.getABI)("gaugecontroller"), signer);
24
+ try {
25
+ const tx = await contract.setEmergencyGaugePauseBatch(gaugeAddresses, statuses);
26
+ await tx.wait();
27
+ return tx;
28
+ }
29
+ catch (error) {
30
+ throw (0, _helpers_2.toGovernanceTxError)("Failed to set gauge pause batch", error);
31
+ }
32
+ };
33
+ exports.setEmergencyGaugePauseBatch = setEmergencyGaugePauseBatch;
@@ -2,23 +2,30 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setEmergencyPause = void 0;
4
4
  const ethers_1 = require("ethers");
5
- const getContractAddress_1 = require("../../getContractAddress");
6
5
  const artifacts_1 = require("../../../utils/artifacts");
6
+ const _helpers_1 = require("../gaugeSystems/_helpers");
7
+ const _helpers_2 = require("../_helpers");
7
8
  /**
8
- * Emergency-pauses or unpauses the entire GaugeController. Requires the EMERGENCY_ADMIN role.
9
+ * Sets the controller's global emergency pause. Requires EMERGENCY_ADMIN. Does not touch any gauge's own switch, so individually paused gauges stay paused after a global unpause.
10
+ *
9
11
  * @param chainId - The chain/network to use.
10
- * @param paused - Whether the contract should be paused.
12
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeController address.
13
+ * @param paused - True to pause, false to unpause.
11
14
  * @param signer - An ethers.js Signer instance (required).
12
- * @returns The transaction response.
15
+ * @returns The transaction after it has been mined.
13
16
  */
14
- const setEmergencyPause = async (chainId, paused, signer) => {
17
+ const setEmergencyPause = async (chainId, gaugeSystem, paused, signer) => {
15
18
  if (!signer)
16
19
  throw new Error("Signer is required");
17
- const address = (0, getContractAddress_1.getContractAddress)(chainId, "gaugecontroller");
18
- const abi = (0, artifacts_1.getABI)("gaugecontroller");
19
- const contract = new ethers_1.ethers.Contract(address, abi, signer);
20
- const tx = await contract.setEmergencyPause(paused);
21
- await tx.wait();
22
- return tx;
20
+ const address = (0, _helpers_1.resolveGaugeController)(chainId, gaugeSystem);
21
+ const contract = new ethers_1.ethers.Contract(address, (0, artifacts_1.getABI)("gaugecontroller"), signer);
22
+ try {
23
+ const tx = await contract.setEmergencyPause(paused);
24
+ await tx.wait();
25
+ return tx;
26
+ }
27
+ catch (error) {
28
+ throw (0, _helpers_2.toGovernanceTxError)("Failed to set emergency pause", error);
29
+ }
23
30
  };
24
31
  exports.setEmergencyPause = setEmergencyPause;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setMaxVoteBuckets = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const artifacts_1 = require("../../../utils/artifacts");
6
+ const _helpers_1 = require("../gaugeSystems/_helpers");
7
+ const _helpers_2 = require("../_helpers");
8
+ /**
9
+ * Sets the per-vote decay-bucket cap. Requires GAUGE_ADMIN. 0 is exact; 2 to 64 caps heavy multi-lock voters; 1 is rejected.
10
+ *
11
+ * @param chainId - The chain/network to use.
12
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeController address.
13
+ * @param maxBuckets - 0, or 2 to 64.
14
+ * @param signer - An ethers.js Signer instance (required).
15
+ * @returns The transaction after it has been mined.
16
+ */
17
+ const setMaxVoteBuckets = async (chainId, gaugeSystem, maxBuckets, signer) => {
18
+ if (!signer)
19
+ throw new Error("Signer is required");
20
+ const address = (0, _helpers_1.resolveGaugeController)(chainId, gaugeSystem);
21
+ const contract = new ethers_1.ethers.Contract(address, (0, artifacts_1.getABI)("gaugecontroller"), signer);
22
+ try {
23
+ const tx = await contract.setMaxVoteBuckets(maxBuckets);
24
+ await tx.wait();
25
+ return tx;
26
+ }
27
+ catch (error) {
28
+ throw (0, _helpers_2.toGovernanceTxError)("Failed to set max vote buckets", error);
29
+ }
30
+ };
31
+ exports.setMaxVoteBuckets = setMaxVoteBuckets;
@@ -2,33 +2,32 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.vote = void 0;
4
4
  const ethers_1 = require("ethers");
5
- const getContractAddress_1 = require("../../getContractAddress");
6
5
  const artifacts_1 = require("../../../utils/artifacts");
6
+ const _helpers_1 = require("../gaugeSystems/_helpers");
7
+ const _helpers_2 = require("../_helpers");
7
8
  /**
8
- * Calls the vote function on the GaugeController contract.
9
+ * Allocates vote weight to a gauge. Reverts with GaugePaused for a non-zero vote on a paused gauge, and with EnforcedPause during a global pause.
9
10
  *
10
11
  * @param chainId - The chain/network to use.
11
- * @param gaugeAddress - The address of the gauge you wish to vote for.
12
- * @param voteWeight - The vote weight to allocate (uint256).
13
- * @param signer - An ethers.js Signer instance (must be connected to wallet).
14
- * @returns Transaction receipt after the vote is cast.
12
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeController address.
13
+ * @param gaugeAddressOrId - Address or config id of the gauge.
14
+ * @param voteWeight - Vote weight in basis points.
15
+ * @param signer - An ethers.js Signer instance (required).
16
+ * @returns The transaction after it has been mined.
15
17
  */
16
- const vote = async (chainId, gaugeAddress, voteWeight, signer) => {
17
- if (!signer) {
18
+ const vote = async (chainId, gaugeSystem, gaugeAddressOrId, voteWeight, signer) => {
19
+ if (!signer)
18
20
  throw new Error("Signer is required");
19
- }
21
+ const address = (0, _helpers_1.resolveGaugeController)(chainId, gaugeSystem);
22
+ const gaugeAddress = (0, _helpers_1.resolveGauge)(chainId, gaugeAddressOrId);
23
+ const contract = new ethers_1.ethers.Contract(address, (0, artifacts_1.getABI)("gaugecontroller"), signer);
20
24
  try {
21
- const gaugeControllerAddress = (0, getContractAddress_1.getContractAddress)(chainId, "gaugecontroller");
22
- const gaugeControllerABI = (0, artifacts_1.getABI)("gaugecontroller");
23
- const gaugeControllerContract = new ethers_1.ethers.Contract(gaugeControllerAddress, gaugeControllerABI, signer);
24
- const tx = await gaugeControllerContract.vote(gaugeAddress, voteWeight);
25
+ const tx = await contract.vote(gaugeAddress, voteWeight);
25
26
  await tx.wait();
26
- console.log(`Vote cast for gauge: ${gaugeAddress}`);
27
27
  return tx;
28
28
  }
29
29
  catch (error) {
30
- console.error("Error voting:", error);
31
- throw new Error(`Failed to vote: ${error.message}`);
30
+ throw (0, _helpers_2.toGovernanceTxError)("Failed to vote", error);
32
31
  }
33
32
  };
34
33
  exports.vote = vote;
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.resolveGauge = exports.lookupGauge = exports.listGauges = exports.resolveGaugeDistributor = exports.resolveGaugeController = exports.requireGaugeSystem = exports.getGaugeSystemsConfig = exports.GAUGE_SYSTEM_IDS = void 0;
7
+ const ethers_1 = require("ethers");
8
+ const chains_1 = __importDefault(require("../../../configs/chains"));
9
+ const _helpers_1 = require("../_helpers");
10
+ exports.GAUGE_SYSTEM_IDS = ["raacgauges", "rwagauges"];
11
+ const isDeployed = (address) => !!address && ethers_1.ethers.isAddress(address) && address !== ethers_1.ethers.ZeroAddress;
12
+ /**
13
+ * Reads the `gauges` section of a chain config.
14
+ *
15
+ * @param chainId - The chain/network to use.
16
+ * @returns The configured gauge systems keyed by id; systems missing from the config are absent.
17
+ */
18
+ const getGaugeSystemsConfig = (chainId) => {
19
+ const config = chains_1.default[chainId];
20
+ if (!config) {
21
+ throw new Error(`Chain configuration not found for chainId: ${chainId}`);
22
+ }
23
+ return (config.gauges ?? {});
24
+ };
25
+ exports.getGaugeSystemsConfig = getGaugeSystemsConfig;
26
+ /**
27
+ * Looks up one gauge system in the chain config.
28
+ *
29
+ * @param chainId - The chain/network to use.
30
+ * @param system - Gauge system id, any case.
31
+ * @returns The system config.
32
+ * @throws If the id is unknown or the chain does not configure it.
33
+ */
34
+ const requireGaugeSystem = (chainId, system) => {
35
+ const id = system.toLowerCase();
36
+ if (!exports.GAUGE_SYSTEM_IDS.includes(id)) {
37
+ throw new Error(`Unknown gauge system "${system}". Expected one of: ${exports.GAUGE_SYSTEM_IDS.join(", ")}`);
38
+ }
39
+ const found = (0, exports.getGaugeSystemsConfig)(chainId)[id];
40
+ if (!found) {
41
+ throw new Error(`Gauge system "${id}" is not configured for chainId: ${chainId}`);
42
+ }
43
+ return found;
44
+ };
45
+ exports.requireGaugeSystem = requireGaugeSystem;
46
+ const resolveSystemContract = (chainId, ref, field, name) => {
47
+ if (!ref) {
48
+ throw new Error(`Gauge system or ${name} address is required`);
49
+ }
50
+ if (ethers_1.ethers.isAddress(ref)) {
51
+ return (0, _helpers_1.requireAddress)(ref, name);
52
+ }
53
+ const system = (0, exports.requireGaugeSystem)(chainId, ref);
54
+ if (!isDeployed(system[field])) {
55
+ throw new Error(`Gauge system "${system.id}" has no ${name} deployed on chainId: ${chainId}`);
56
+ }
57
+ return ethers_1.ethers.getAddress(system[field]);
58
+ };
59
+ /**
60
+ * Resolves the GaugeController a controller method targets.
61
+ *
62
+ * @param chainId - The chain/network to use.
63
+ * @param ref - Gauge system id or a GaugeController address.
64
+ * @returns The checksummed GaugeController address.
65
+ */
66
+ const resolveGaugeController = (chainId, ref) => resolveSystemContract(chainId, ref, "controller", "GaugeController");
67
+ exports.resolveGaugeController = resolveGaugeController;
68
+ /**
69
+ * Resolves the GaugeRewardsDistributor a distributor method targets.
70
+ *
71
+ * @param chainId - The chain/network to use.
72
+ * @param ref - Gauge system id or a GaugeRewardsDistributor address.
73
+ * @returns The checksummed GaugeRewardsDistributor address.
74
+ */
75
+ const resolveGaugeDistributor = (chainId, ref) => resolveSystemContract(chainId, ref, "distributor", "GaugeRewardsDistributor");
76
+ exports.resolveGaugeDistributor = resolveGaugeDistributor;
77
+ /**
78
+ * Lists gauges from the chain config, tagged with their system.
79
+ *
80
+ * @param chainId - The chain/network to use.
81
+ * @param system - Optional gauge system id; all systems when omitted.
82
+ * @returns The configured gauges.
83
+ */
84
+ const listGauges = (chainId, system) => {
85
+ const systems = system ? [(0, exports.requireGaugeSystem)(chainId, system)] : Object.values((0, exports.getGaugeSystemsConfig)(chainId));
86
+ return systems.flatMap((s) => (s?.gauges ?? []).map((g) => ({ ...g, system: s.id, gaugeType: s.gaugeType })));
87
+ };
88
+ exports.listGauges = listGauges;
89
+ /**
90
+ * Finds a gauge in the chain config by address or id.
91
+ *
92
+ * @param chainId - The chain/network to use.
93
+ * @param gaugeAddressOrId - Gauge address or config id, any case.
94
+ * @returns The gauge tagged with its system, or null if the config does not list it.
95
+ */
96
+ const lookupGauge = (chainId, gaugeAddressOrId) => {
97
+ const target = gaugeAddressOrId.toLowerCase();
98
+ const field = ethers_1.ethers.isAddress(target) ? "contract" : "id";
99
+ return (0, exports.listGauges)(chainId).find((g) => g[field].toLowerCase() === target) ?? null;
100
+ };
101
+ exports.lookupGauge = lookupGauge;
102
+ /**
103
+ * Resolves a gauge argument to an address. Addresses pass through, so gauges missing from the
104
+ * config still work; ids are looked up across every gauge system.
105
+ *
106
+ * @param chainId - The chain/network to use.
107
+ * @param gaugeAddressOrId - Gauge address or config id.
108
+ * @returns The checksummed gauge address.
109
+ */
110
+ const resolveGauge = (chainId, gaugeAddressOrId) => {
111
+ if (!gaugeAddressOrId) {
112
+ throw new Error("Gauge address or id is required");
113
+ }
114
+ if (ethers_1.ethers.isAddress(gaugeAddressOrId)) {
115
+ return ethers_1.ethers.getAddress(gaugeAddressOrId);
116
+ }
117
+ const gauge = (0, exports.lookupGauge)(chainId, gaugeAddressOrId);
118
+ if (!gauge) {
119
+ throw new Error(`Gauge "${gaugeAddressOrId}" not found in any gauge system for chainId: ${chainId}`);
120
+ }
121
+ return (0, _helpers_1.requireAddress)(gauge.contract, "gauge");
122
+ };
123
+ exports.resolveGauge = resolveGauge;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.findGauge = void 0;
4
+ const _helpers_1 = require("./_helpers");
5
+ /**
6
+ * Finds a gauge in the chain config by address or id and reports which system it belongs to.
7
+ * Reads the chain config only; no RPC call is made.
8
+ *
9
+ * @param chainId - The chain/network to use.
10
+ * @param gaugeAddressOrId - Gauge address or config id, any case.
11
+ * @returns The gauge tagged with its system and gauge type, or null if the config does not list it.
12
+ */
13
+ const findGauge = (chainId, gaugeAddressOrId) => (0, _helpers_1.lookupGauge)(chainId, gaugeAddressOrId);
14
+ exports.findGauge = findGauge;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGaugeSystem = void 0;
4
+ const _helpers_1 = require("./_helpers");
5
+ /**
6
+ * Returns one gauge system from the chain config.
7
+ * Reads the chain config only; no RPC call is made.
8
+ *
9
+ * @param chainId - The chain/network to use.
10
+ * @param system - Gauge system id: "raacgauges" or "rwagauges".
11
+ * @returns The system's label, gauge type, controller and distributor addresses and gauge list.
12
+ */
13
+ const getGaugeSystem = (chainId, system) => (0, _helpers_1.requireGaugeSystem)(chainId, system);
14
+ exports.getGaugeSystem = getGaugeSystem;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGaugeSystems = void 0;
4
+ const _helpers_1 = require("./_helpers");
5
+ /**
6
+ * Lists the gauge systems configured for a chain (RAAC gauges, RWA gauges).
7
+ * Reads the chain config only; no RPC call is made.
8
+ *
9
+ * @param chainId - The chain/network to use.
10
+ * @returns Each system with its id, label, gauge type, controller and distributor addresses and gauge list.
11
+ */
12
+ const getGaugeSystems = (chainId) => Object.values((0, _helpers_1.getGaugeSystemsConfig)(chainId)).filter((s) => !!s);
13
+ exports.getGaugeSystems = getGaugeSystems;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getGauges = void 0;
4
+ const _helpers_1 = require("./_helpers");
5
+ /**
6
+ * Lists the gauges in the chain config, each tagged with the system it belongs to.
7
+ * Reads the chain config only; no RPC call is made. For the controller's on-chain list use
8
+ * `governance.controller.getRegisteredGaugeList`.
9
+ *
10
+ * @param chainId - The chain/network to use.
11
+ * @param system - Optional gauge system id; gauges of every system when omitted.
12
+ * @returns The configured gauges with their addresses.
13
+ */
14
+ const getGauges = (chainId, system) => (0, _helpers_1.listGauges)(chainId, system);
15
+ exports.getGauges = getGauges;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ // Re-exports every method in this namespace.
18
+ __exportStar(require("./findGauge"), exports);
19
+ __exportStar(require("./getGauges"), exports);
20
+ __exportStar(require("./getGaugeSystem"), exports);
21
+ __exportStar(require("./getGaugeSystems"), exports);
@@ -111,6 +111,7 @@ import { decodeErrorName, getErrorInfo, attachDecodedError, decodeErrorMessage,
111
111
  import * as distributorMethods from "./contracts/governance/distributor";
112
112
  import * as gaugeMethods from "./contracts/governance/gauge";
113
113
  import * as controllerMethods from "./contracts/governance/gaugeController";
114
+ import * as gaugeSystemMethods from "./contracts/governance/gaugeSystems";
114
115
  import { cancel as cancelProposals } from "./contracts/governance/proposals/cancel";
115
116
  import { getQuorumNumerator as getQuorumNumeratorProposals } from "./contracts/governance/proposals/getQuorumNumerator";
116
117
  import { getVotingPeriod as getVotingPeriodProposals } from "./contracts/governance/proposals/getVotingPeriod";
@@ -363,6 +364,7 @@ declare class RPCLibrary {
363
364
  distributor: typeof distributorMethods;
364
365
  gauge: typeof gaugeMethods;
365
366
  controller: typeof controllerMethods;
367
+ gaugeSystems: typeof gaugeSystemMethods;
366
368
  proposals: {
367
369
  cancel: typeof cancelProposals;
368
370
  getQuorumNumerator: typeof getQuorumNumeratorProposals;
@@ -105,31 +105,26 @@ declare const chains: {
105
105
  contract: string;
106
106
  };
107
107
  };
108
- governance: {
109
- gaugerewardsdistributor: {
110
- id: string;
111
- name: string;
112
- contract: string;
113
- };
114
- gaugecontroller: {
115
- id: string;
116
- name: string;
117
- contract: string;
118
- };
119
- gauge: {
120
- id: string;
121
- name: string;
122
- contract: string;
123
- };
124
- raacgauge: {
125
- id: string;
126
- name: string;
127
- contract: string;
108
+ gauges: {
109
+ raacgauges: {
110
+ id: string;
111
+ label: string;
112
+ gaugeType: string;
113
+ controller: string;
114
+ distributor: string;
115
+ gauges: {
116
+ id: string;
117
+ name: string;
118
+ contract: string;
119
+ }[];
128
120
  };
129
- rwagauge: {
121
+ rwagauges: {
130
122
  id: string;
131
- name: string;
132
- contract: string;
123
+ label: string;
124
+ gaugeType: string;
125
+ controller: string;
126
+ distributor: string;
127
+ gauges: any[];
133
128
  };
134
129
  };
135
130
  proposals: any[];
@@ -351,31 +346,26 @@ export declare const configs: {
351
346
  contract: string;
352
347
  };
353
348
  };
354
- governance: {
355
- gaugerewardsdistributor: {
356
- id: string;
357
- name: string;
358
- contract: string;
359
- };
360
- gaugecontroller: {
361
- id: string;
362
- name: string;
363
- contract: string;
364
- };
365
- gauge: {
366
- id: string;
367
- name: string;
368
- contract: string;
369
- };
370
- raacgauge: {
371
- id: string;
372
- name: string;
373
- contract: string;
349
+ gauges: {
350
+ raacgauges: {
351
+ id: string;
352
+ label: string;
353
+ gaugeType: string;
354
+ controller: string;
355
+ distributor: string;
356
+ gauges: {
357
+ id: string;
358
+ name: string;
359
+ contract: string;
360
+ }[];
374
361
  };
375
- rwagauge: {
362
+ rwagauges: {
376
363
  id: string;
377
- name: string;
378
- contract: string;
364
+ label: string;
365
+ gaugeType: string;
366
+ controller: string;
367
+ distributor: string;
368
+ gauges: any[];
379
369
  };
380
370
  };
381
371
  proposals: any[];
@@ -105,31 +105,26 @@ declare function getChainsConfig(): {
105
105
  contract: string;
106
106
  };
107
107
  };
108
- governance: {
109
- gaugerewardsdistributor: {
110
- id: string;
111
- name: string;
112
- contract: string;
113
- };
114
- gaugecontroller: {
115
- id: string;
116
- name: string;
117
- contract: string;
118
- };
119
- gauge: {
120
- id: string;
121
- name: string;
122
- contract: string;
123
- };
124
- raacgauge: {
125
- id: string;
126
- name: string;
127
- contract: string;
108
+ gauges: {
109
+ raacgauges: {
110
+ id: string;
111
+ label: string;
112
+ gaugeType: string;
113
+ controller: string;
114
+ distributor: string;
115
+ gauges: {
116
+ id: string;
117
+ name: string;
118
+ contract: string;
119
+ }[];
128
120
  };
129
- rwagauge: {
121
+ rwagauges: {
130
122
  id: string;
131
- name: string;
132
- contract: string;
123
+ label: string;
124
+ gaugeType: string;
125
+ controller: string;
126
+ distributor: string;
127
+ gauges: any[];
133
128
  };
134
129
  };
135
130
  proposals: any[];
@@ -1,11 +1,13 @@
1
- import { Signer } from "ethers";
1
+ import { ethers, Signer } from "ethers";
2
2
  import { ChainId } from "../../../configs/chains";
3
+ import { GaugeSystemRef } from "../gaugeSystems/_helpers";
3
4
  /**
4
- * Claims accrued rewards for multiple gauges in a single transaction.
5
+ * Claims rewards for the caller on several gauges. Each gauge must be active.
5
6
  *
6
7
  * @param chainId - The chain/network to use.
7
- * @param gauges - Array of gauge addresses.
8
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeRewardsDistributor address.
9
+ * @param gaugeAddressesOrIds - Addresses or config ids of the gauges.
8
10
  * @param signer - An ethers.js Signer instance (required).
9
- * @returns Transaction after it has been mined.
11
+ * @returns The transaction after it has been mined.
10
12
  */
11
- export declare const claimAll: (chainId: ChainId, gauges: string[], signer: Signer) => Promise<any>;
13
+ export declare const claimAll: (chainId: ChainId, gaugeSystem: GaugeSystemRef, gaugeAddressesOrIds: string[], signer: Signer) => Promise<ethers.ContractTransactionResponse>;
@@ -1,12 +1,13 @@
1
- import { Signer } from "ethers";
1
+ import { ethers, Signer } from "ethers";
2
2
  import { ChainId } from "../../../configs/chains";
3
+ import { GaugeSystemRef } from "../gaugeSystems/_helpers";
3
4
  /**
4
- * Claims accrued rewards for a gauge.
5
- * Note: only callable by the gauge contract itself (msg.sender must == gauge).
5
+ * Transfers a gauge's accrued share from the distributor to the gauge.
6
6
  *
7
7
  * @param chainId - The chain/network to use.
8
- * @param gauge - Address of the gauge.
8
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeRewardsDistributor address.
9
+ * @param gaugeAddressOrId - Address or config id of the gauge.
9
10
  * @param signer - An ethers.js Signer instance (required).
10
- * @returns Transaction after it has been mined.
11
+ * @returns The transaction after it has been mined.
11
12
  */
12
- export declare const claimForGauge: (chainId: ChainId, gauge: string, signer: Signer) => Promise<any>;
13
+ export declare const claimForGauge: (chainId: ChainId, gaugeSystem: GaugeSystemRef, gaugeAddressOrId: string, signer: Signer) => Promise<ethers.ContractTransactionResponse>;
@@ -1,13 +1,14 @@
1
- import { Signer } from "ethers";
1
+ import { ethers, Signer } from "ethers";
2
2
  import { ChainId } from "../../../configs/chains";
3
+ import { GaugeSystemRef } from "../gaugeSystems/_helpers";
3
4
  /**
4
- * Deposits reward tokens into the distributor.
5
- * The reward token must be pre-approved by the caller before calling.
5
+ * Deposits reward tokens into the distributor for the current epoch. The token must be the distributor's reward token and pre-approved. Reverts when no gauge is registered.
6
6
  *
7
7
  * @param chainId - The chain/network to use.
8
+ * @param gaugeSystem - Gauge system id ("raacgauges" or "rwagauges") or a GaugeRewardsDistributor address.
8
9
  * @param token - Address of the reward token.
9
- * @param amount - Amount of reward tokens to deposit.
10
+ * @param amount - Amount to deposit, base units.
10
11
  * @param signer - An ethers.js Signer instance (required).
11
- * @returns Transaction after it has been mined.
12
+ * @returns The transaction after it has been mined.
12
13
  */
13
- export declare const deposit: (chainId: ChainId, token: string, amount: string | number | bigint, signer: Signer) => Promise<any>;
14
+ export declare const deposit: (chainId: ChainId, gaugeSystem: GaugeSystemRef, token: string, amount: string | number | bigint, signer: Signer) => Promise<ethers.ContractTransactionResponse>;