@raac/rpc 1.2.0-beta.5 → 1.2.0-beta.7

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 (196) hide show
  1. package/dist/RPCLibrary.js +38 -97
  2. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +2 -2
  3. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.json +155 -144
  4. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.json +119 -335
  5. package/dist/artifacts/core/governance/gauges/GaugeRewardsDistributor.sol/GaugeRewardsDistributor.json +104 -325
  6. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.json +167 -146
  7. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.json +167 -146
  8. package/dist/artifacts/core/governance/proposals/Governance.sol/Governance.json +2 -2
  9. package/dist/artifacts/core/lockers/RAACLiquidLocker.sol/RAACLiquidLocker.json +2 -2
  10. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +66 -32
  11. package/dist/configs/chains/11155111.json +83 -16
  12. package/dist/configs/chains/8453.json +6 -6
  13. package/dist/contracts/getContractAddress.js +1 -0
  14. package/dist/contracts/governance/distributor/claimAll.js +25 -0
  15. package/dist/contracts/governance/distributor/claimForGauge.js +26 -0
  16. package/dist/contracts/governance/distributor/deposit.js +12 -21
  17. package/dist/contracts/governance/distributor/getClaimableForGauge.js +29 -0
  18. package/dist/contracts/governance/distributor/getClaimedAtEpoch.js +30 -0
  19. package/dist/contracts/governance/distributor/getDepositedAtEpoch.js +30 -0
  20. package/dist/contracts/governance/distributor/getGaugeController.js +28 -0
  21. package/dist/contracts/governance/distributor/getLastClaimedEpoch.js +29 -0
  22. package/dist/contracts/governance/distributor/getPeriodDuration.js +28 -0
  23. package/dist/contracts/governance/distributor/{getRewardTokens.js → getRewardToken.js} +10 -9
  24. package/dist/contracts/governance/distributor/getRewardTokenInfo.js +9 -19
  25. package/dist/contracts/governance/distributor/getRewardTokenStats.js +30 -0
  26. package/dist/contracts/governance/{gaugeController/isGauge.js → distributor/getStartEpoch.js} +10 -10
  27. package/dist/contracts/governance/distributor/index.js +31 -17
  28. package/dist/contracts/governance/distributor/setController.js +26 -0
  29. package/dist/contracts/governance/distributor/withdrawRemovedGaugeRewards.js +27 -0
  30. package/dist/contracts/governance/distributor/withdrawUnallocatedRewards.js +26 -0
  31. package/dist/contracts/governance/gauge/addRewardToken.js +34 -0
  32. package/dist/contracts/governance/gauge/claimExtraReward.js +34 -0
  33. package/dist/contracts/governance/gauge/claimExtraRewards.js +33 -0
  34. package/dist/contracts/governance/gauge/claimOnBehalfOf.js +36 -0
  35. package/dist/contracts/governance/gauge/claimRewardToken.js +3 -4
  36. package/dist/contracts/governance/gauge/claimRewardsFor.js +34 -0
  37. package/dist/contracts/governance/gauge/depositRewardToken.js +35 -0
  38. package/dist/contracts/governance/gauge/getAllPendingExtraRewards.js +36 -0
  39. package/dist/contracts/governance/gauge/getControllerAddress.js +34 -0
  40. package/dist/contracts/governance/gauge/getDecimalAdjustment.js +35 -0
  41. package/dist/contracts/governance/gauge/getDepositRAACOnClaim.js +34 -0
  42. package/dist/contracts/governance/gauge/getDistributorData.js +36 -0
  43. package/dist/contracts/governance/gauge/getDistributors.js +34 -0
  44. package/dist/contracts/governance/gauge/getEarnedReward.js +11 -19
  45. package/dist/contracts/governance/gauge/getExtraRewardTokens.js +34 -0
  46. package/dist/contracts/governance/gauge/getGaugeRewardTokenData.js +44 -0
  47. package/dist/contracts/governance/gauge/getPendingExtraRewards.js +36 -0
  48. package/dist/contracts/governance/gauge/getPendingRewards.js +11 -19
  49. package/dist/contracts/governance/gauge/getRaacAutolockMin.js +34 -0
  50. package/dist/contracts/governance/gauge/getUserRewardTokenData.js +37 -0
  51. package/dist/contracts/governance/gauge/getUserWeight.js +35 -0
  52. package/dist/contracts/governance/gauge/index.js +53 -35
  53. package/dist/contracts/governance/gauge/isPaused.js +34 -0
  54. package/dist/contracts/governance/gauge/manageDistributor.js +35 -0
  55. package/dist/contracts/governance/gauge/setController.js +34 -0
  56. package/dist/contracts/governance/gauge/setDepositRAACOnClaim.js +34 -0
  57. package/dist/contracts/governance/gauge/setDistributorApproval.js +35 -0
  58. package/dist/contracts/governance/gauge/setEmergencyPaused.js +34 -0
  59. package/dist/contracts/governance/gauge/setGaugeRewardDistributor.js +34 -0
  60. package/dist/contracts/governance/gauge/setRaacAutolockMin.js +34 -0
  61. package/dist/contracts/governance/gauge/updateUserRewards.js +3 -2
  62. package/dist/contracts/governance/gaugeController/addGauge.js +24 -0
  63. package/dist/contracts/governance/gaugeController/batchVote.js +25 -0
  64. package/dist/contracts/governance/gaugeController/forceCompleteCheckpoint.js +24 -0
  65. package/dist/contracts/governance/gaugeController/getConstants.js +45 -0
  66. package/dist/contracts/governance/gaugeController/getCurrentEpoch.js +27 -0
  67. package/dist/contracts/governance/gaugeController/getGauge.js +29 -0
  68. package/dist/contracts/governance/gaugeController/getGaugeEmissions.js +136 -0
  69. package/dist/contracts/governance/gaugeController/getGaugeRelativeWeight.js +29 -0
  70. package/dist/contracts/governance/gaugeController/getGaugeRelativeWeightView.js +30 -0
  71. package/dist/contracts/governance/gaugeController/getLastVoteTime.js +29 -0
  72. package/dist/contracts/governance/gaugeController/getNextEpoch.js +27 -0
  73. package/dist/contracts/governance/gaugeController/getUserGaugeVotePower.js +29 -0
  74. package/dist/contracts/governance/gaugeController/getVeToken.js +27 -0
  75. package/dist/contracts/governance/gaugeController/getVoteUserPower.js +28 -0
  76. package/dist/contracts/governance/gaugeController/getVoteUserSlope.js +30 -0
  77. package/dist/contracts/governance/gaugeController/index.js +44 -23
  78. package/dist/contracts/governance/gaugeController/isPaused.js +27 -0
  79. package/dist/contracts/governance/gaugeController/kick.js +24 -0
  80. package/dist/contracts/governance/gaugeController/removeGauge.js +24 -0
  81. package/dist/contracts/governance/gaugeController/removePowerFromGauge.js +24 -0
  82. package/dist/contracts/governance/gaugeController/setBoostAmplificationEnabled.js +25 -0
  83. package/dist/contracts/governance/gaugeController/setEmergencyGaugePause.js +25 -0
  84. package/dist/contracts/governance/gaugeController/setEmergencyPause.js +24 -0
  85. package/dist/contracts/lockers/botLocker/unlock.js +4 -1
  86. package/dist/contracts/lockers/maturityVault/harvest.js +3 -2
  87. package/dist/types/RPCLibrary.d.ts +6 -64
  88. package/dist/types/contracts/governance/distributor/claimAll.d.ts +11 -0
  89. package/dist/types/contracts/governance/distributor/claimForGauge.d.ts +12 -0
  90. package/dist/types/contracts/governance/distributor/deposit.d.ts +6 -7
  91. package/dist/types/contracts/governance/distributor/getClaimableForGauge.d.ts +11 -0
  92. package/dist/types/contracts/governance/distributor/getClaimedAtEpoch.d.ts +12 -0
  93. package/dist/types/contracts/governance/distributor/getDepositedAtEpoch.d.ts +12 -0
  94. package/dist/types/contracts/governance/distributor/getGaugeController.d.ts +10 -0
  95. package/dist/types/contracts/governance/distributor/getLastClaimedEpoch.d.ts +11 -0
  96. package/dist/types/contracts/governance/distributor/getPeriodDuration.d.ts +10 -0
  97. package/dist/types/contracts/governance/distributor/{getRewardTokens.d.ts → getRewardToken.d.ts} +3 -3
  98. package/dist/types/contracts/governance/distributor/getRewardTokenInfo.d.ts +8 -10
  99. package/dist/types/contracts/governance/distributor/getRewardTokenStats.d.ts +15 -0
  100. package/dist/types/contracts/governance/distributor/getStartEpoch.d.ts +10 -0
  101. package/dist/types/contracts/governance/distributor/index.d.ts +16 -8
  102. package/dist/types/contracts/governance/distributor/setController.d.ts +12 -0
  103. package/dist/types/contracts/governance/distributor/withdrawRemovedGaugeRewards.d.ts +13 -0
  104. package/dist/types/contracts/governance/distributor/withdrawUnallocatedRewards.d.ts +12 -0
  105. package/dist/types/contracts/governance/gauge/addRewardToken.d.ts +10 -0
  106. package/dist/types/contracts/governance/gauge/claimExtraReward.d.ts +10 -0
  107. package/dist/types/contracts/governance/gauge/claimExtraRewards.d.ts +9 -0
  108. package/dist/types/contracts/governance/gauge/claimOnBehalfOf.d.ts +12 -0
  109. package/dist/types/contracts/governance/gauge/claimRewardToken.d.ts +1 -2
  110. package/dist/types/contracts/governance/gauge/claimRewardsFor.d.ts +10 -0
  111. package/dist/types/contracts/governance/gauge/depositRewardToken.d.ts +11 -0
  112. package/dist/types/contracts/governance/gauge/getAllPendingExtraRewards.d.ts +13 -0
  113. package/dist/types/contracts/governance/gauge/getControllerAddress.d.ts +9 -0
  114. package/dist/types/contracts/governance/gauge/getDecimalAdjustment.d.ts +10 -0
  115. package/dist/types/contracts/governance/gauge/getDepositRAACOnClaim.d.ts +9 -0
  116. package/dist/types/contracts/governance/gauge/getDistributorData.d.ts +13 -0
  117. package/dist/types/contracts/governance/gauge/{getRewardTokens.d.ts → getDistributors.d.ts} +3 -5
  118. package/dist/types/contracts/governance/gauge/getEarnedReward.d.ts +4 -5
  119. package/dist/types/contracts/governance/gauge/getExtraRewardTokens.d.ts +9 -0
  120. package/dist/types/contracts/governance/gauge/getGaugeRewardTokenData.d.ts +18 -0
  121. package/dist/types/contracts/governance/gauge/getPendingExtraRewards.d.ts +11 -0
  122. package/dist/types/contracts/governance/gauge/getPendingRewards.d.ts +4 -5
  123. package/dist/types/contracts/governance/gauge/getRaacAutolockMin.d.ts +9 -0
  124. package/dist/types/contracts/governance/gauge/getUserRewardTokenData.d.ts +17 -0
  125. package/dist/types/contracts/governance/gauge/getUserWeight.d.ts +10 -0
  126. package/dist/types/contracts/governance/gauge/index.d.ts +38 -17
  127. package/dist/types/contracts/governance/gauge/isPaused.d.ts +9 -0
  128. package/dist/types/contracts/governance/gauge/manageDistributor.d.ts +11 -0
  129. package/dist/types/contracts/governance/gauge/setController.d.ts +10 -0
  130. package/dist/types/contracts/governance/gauge/setDepositRAACOnClaim.d.ts +10 -0
  131. package/dist/types/contracts/governance/gauge/setDistributorApproval.d.ts +11 -0
  132. package/dist/types/contracts/governance/gauge/setEmergencyPaused.d.ts +10 -0
  133. package/dist/types/contracts/governance/gauge/setGaugeRewardDistributor.d.ts +10 -0
  134. package/dist/types/contracts/governance/gauge/setRaacAutolockMin.d.ts +10 -0
  135. package/dist/types/contracts/governance/gauge/updateUserRewards.d.ts +2 -1
  136. package/dist/types/contracts/governance/gaugeController/addGauge.d.ts +10 -0
  137. package/dist/types/contracts/governance/gaugeController/batchVote.d.ts +11 -0
  138. package/dist/types/contracts/governance/gaugeController/forceCompleteCheckpoint.d.ts +10 -0
  139. package/dist/types/contracts/governance/gaugeController/getConstants.d.ts +18 -0
  140. package/dist/types/contracts/governance/gaugeController/getCurrentEpoch.d.ts +9 -0
  141. package/dist/types/contracts/governance/gaugeController/getGauge.d.ts +15 -0
  142. package/dist/types/contracts/governance/gaugeController/getGaugeEmissions.d.ts +51 -0
  143. package/dist/types/contracts/governance/gaugeController/getGaugeRelativeWeight.d.ts +15 -0
  144. package/dist/types/contracts/governance/gaugeController/getGaugeRelativeWeightView.d.ts +14 -0
  145. package/dist/types/contracts/governance/gaugeController/getLastVoteTime.d.ts +11 -0
  146. package/dist/types/contracts/governance/gaugeController/getNextEpoch.d.ts +9 -0
  147. package/dist/types/contracts/governance/gaugeController/getUserGaugeVotePower.d.ts +11 -0
  148. package/dist/types/contracts/governance/gaugeController/getVeToken.d.ts +9 -0
  149. package/dist/types/contracts/governance/gaugeController/getVoteUserPower.d.ts +10 -0
  150. package/dist/types/contracts/governance/gaugeController/getVoteUserSlope.d.ts +15 -0
  151. package/dist/types/contracts/governance/gaugeController/index.d.ts +29 -11
  152. package/dist/types/contracts/governance/gaugeController/isPaused.d.ts +9 -0
  153. package/dist/types/contracts/governance/gaugeController/kick.d.ts +10 -0
  154. package/dist/types/contracts/governance/gaugeController/removeGauge.d.ts +10 -0
  155. package/dist/types/contracts/governance/gaugeController/removePowerFromGauge.d.ts +10 -0
  156. package/dist/types/contracts/governance/gaugeController/setBoostAmplificationEnabled.d.ts +11 -0
  157. package/dist/types/contracts/governance/gaugeController/setEmergencyGaugePause.d.ts +11 -0
  158. package/dist/types/contracts/governance/gaugeController/setEmergencyPause.d.ts +10 -0
  159. package/dist/types/contracts/lockers/botLocker/unlock.d.ts +3 -0
  160. package/dist/types/contracts/lockers/maturityVault/harvest.d.ts +1 -1
  161. package/dist/utils/contracts.js +1 -1
  162. package/package.json +1 -1
  163. package/dist/contracts/governance/distributor/getAvailableBalance.js +0 -29
  164. package/dist/contracts/governance/distributor/getGaugeRewardTokens.js +0 -28
  165. package/dist/contracts/governance/distributor/getTransferableBalance.js +0 -30
  166. package/dist/contracts/governance/distributor/isRewardTokenApproved.js +0 -29
  167. package/dist/contracts/governance/distributor/isTokenApproved.js +0 -29
  168. package/dist/contracts/governance/gauge/claimReward.js +0 -44
  169. package/dist/contracts/governance/gauge/getAllEarnedRewards.js +0 -51
  170. package/dist/contracts/governance/gauge/getAllPendingRewards.js +0 -41
  171. package/dist/contracts/governance/gauge/getRewardTokens.js +0 -41
  172. package/dist/contracts/governance/gauge/getUserGaugeVoteWeight.js +0 -42
  173. package/dist/contracts/governance/gauge/getWorkingBalance.js +0 -43
  174. package/dist/contracts/governance/gauge/syncRewardTokens.js +0 -51
  175. package/dist/contracts/governance/gaugeController/checkpoint.js +0 -33
  176. package/dist/contracts/governance/gaugeController/checkpointGauge.js +0 -34
  177. package/dist/contracts/governance/gaugeController/getUserGaugeVoteWeight.js +0 -30
  178. package/dist/tests/liquidLocker.test.js +0 -262
  179. package/dist/tests/test.js +0 -32
  180. package/dist/types/contracts/governance/distributor/getAvailableBalance.d.ts +0 -11
  181. package/dist/types/contracts/governance/distributor/getGaugeRewardTokens.d.ts +0 -11
  182. package/dist/types/contracts/governance/distributor/getTransferableBalance.d.ts +0 -12
  183. package/dist/types/contracts/governance/distributor/isRewardTokenApproved.d.ts +0 -12
  184. package/dist/types/contracts/governance/distributor/isTokenApproved.d.ts +0 -11
  185. package/dist/types/contracts/governance/gauge/claimReward.d.ts +0 -11
  186. package/dist/types/contracts/governance/gauge/getAllEarnedRewards.d.ts +0 -17
  187. package/dist/types/contracts/governance/gauge/getAllPendingRewards.d.ts +0 -19
  188. package/dist/types/contracts/governance/gauge/getUserGaugeVoteWeight.d.ts +0 -14
  189. package/dist/types/contracts/governance/gauge/getWorkingBalance.d.ts +0 -12
  190. package/dist/types/contracts/governance/gauge/syncRewardTokens.d.ts +0 -13
  191. package/dist/types/contracts/governance/gaugeController/checkpoint.d.ts +0 -11
  192. package/dist/types/contracts/governance/gaugeController/checkpointGauge.d.ts +0 -12
  193. package/dist/types/contracts/governance/gaugeController/getUserGaugeVoteWeight.d.ts +0 -12
  194. package/dist/types/contracts/governance/gaugeController/isGauge.d.ts +0 -11
  195. package/dist/types/tests/liquidLocker.test.d.ts +0 -18
  196. package/dist/types/tests/test.d.ts +0 -1
@@ -0,0 +1,14 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Reads a gauge's relative weight at a given epoch without modifying state.
5
+ * @param chainId - The chain/network to use.
6
+ * @param gauge - Address of the gauge.
7
+ * @param epoch - Epoch timestamp to query.
8
+ * @param provider - Optional ethers.js Provider instance.
9
+ * @returns An object with relativeWeight (1e18-scaled, where 1e18 = 100%) and totalWeight, both bigint.
10
+ */
11
+ export declare const getGaugeRelativeWeightView: (chainId: ChainId, gauge: string, epoch: string | number | bigint, provider?: Provider) => Promise<{
12
+ relativeWeight: bigint;
13
+ totalWeight: bigint;
14
+ }>;
@@ -0,0 +1,11 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Gets the timestamp of a user's last vote on a given gauge.
5
+ * @param chainId - The chain/network to use.
6
+ * @param user - Address of the user.
7
+ * @param gauge - Address of the gauge.
8
+ * @param provider - Optional ethers.js Provider instance.
9
+ * @returns The last vote timestamp as a bigint.
10
+ */
11
+ export declare const getLastVoteTime: (chainId: ChainId, user: string, gauge: string, provider?: Provider) => Promise<bigint>;
@@ -0,0 +1,9 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Gets the next epoch boundary (current epoch plus one week) from the GaugeController.
5
+ * @param chainId - The chain/network to use.
6
+ * @param provider - Optional ethers.js Provider instance.
7
+ * @returns Next epoch timestamp as a bigint.
8
+ */
9
+ export declare const getNextEpoch: (chainId: ChainId, provider?: Provider) => Promise<bigint>;
@@ -0,0 +1,11 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Gets the vote weight (in basis points) a user has allocated to a gauge.
5
+ * @param chainId - The chain/network to use.
6
+ * @param user - Address of the user.
7
+ * @param gauge - Address of the gauge.
8
+ * @param provider - Optional ethers.js Provider instance.
9
+ * @returns Vote weight in basis points as a bigint.
10
+ */
11
+ export declare const getUserGaugeVotePower: (chainId: ChainId, user: string, gauge: string, provider?: Provider) => Promise<bigint>;
@@ -0,0 +1,9 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Gets the veToken (voting escrow token) address used by the GaugeController.
5
+ * @param chainId - The chain/network to use.
6
+ * @param provider - Optional ethers.js Provider instance.
7
+ * @returns The veToken contract address as a string.
8
+ */
9
+ export declare const getVeToken: (chainId: ChainId, provider?: Provider) => Promise<string>;
@@ -0,0 +1,10 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Gets the total vote power a user has currently allocated across all gauges.
5
+ * @param chainId - The chain/network to use.
6
+ * @param user - Address of the user.
7
+ * @param provider - Optional ethers.js Provider instance.
8
+ * @returns The user's allocated vote power as a bigint.
9
+ */
10
+ export declare const getVoteUserPower: (chainId: ChainId, user: string, provider?: Provider) => Promise<bigint>;
@@ -0,0 +1,15 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Reads a user's vote slope for a gauge from the public `voteUserSlopes` mapping.
5
+ * @param chainId - The chain/network to use.
6
+ * @param user - Address of the user.
7
+ * @param gauge - Address of the gauge.
8
+ * @param provider - Optional ethers.js Provider instance.
9
+ * @returns An object with locked, power and end, all bigint.
10
+ */
11
+ export declare const getVoteUserSlope: (chainId: ChainId, user: string, gauge: string, provider?: Provider) => Promise<{
12
+ locked: bigint;
13
+ power: bigint;
14
+ end: bigint;
15
+ }>;
@@ -1,11 +1,29 @@
1
- export { calculateBoost } from "./calculateBoost";
2
- export { isGauge } from "./isGauge";
3
- export { isGaugeActive } from "./isGaugeActive";
4
- export { getGaugeWeight } from "./getGaugeWeight";
5
- export { getTotalWeight } from "./getTotalWeight";
6
- export { getActiveGauges, type ActiveGaugesInfo } from "./getActiveGauges";
7
- export { getUserVotePowerRemaining } from "./getUserVotePowerRemaining";
8
- export { getUserGaugeVoteWeight } from "./getUserGaugeVoteWeight";
9
- export { vote } from "./vote";
10
- export { checkpoint } from "./checkpoint";
11
- export { checkpointGauge } from "./checkpointGauge";
1
+ export * from "./addGauge";
2
+ export * from "./batchVote";
3
+ export * from "./calculateBoost";
4
+ export * from "./forceCompleteCheckpoint";
5
+ export * from "./getActiveGauges";
6
+ export * from "./getConstants";
7
+ export * from "./getCurrentEpoch";
8
+ export * from "./getGauge";
9
+ export * from "./getGaugeRelativeWeight";
10
+ export * from "./getGaugeRelativeWeightView";
11
+ export * from "./getGaugeEmissions";
12
+ export * from "./getGaugeWeight";
13
+ export * from "./getLastVoteTime";
14
+ export * from "./getNextEpoch";
15
+ export * from "./getTotalWeight";
16
+ export * from "./getUserGaugeVotePower";
17
+ export * from "./getUserVotePowerRemaining";
18
+ export * from "./getVeToken";
19
+ export * from "./getVoteUserPower";
20
+ export * from "./getVoteUserSlope";
21
+ export * from "./isGaugeActive";
22
+ export * from "./isPaused";
23
+ export * from "./kick";
24
+ export * from "./removeGauge";
25
+ export * from "./removePowerFromGauge";
26
+ export * from "./setBoostAmplificationEnabled";
27
+ export * from "./setEmergencyGaugePause";
28
+ export * from "./setEmergencyPause";
29
+ export * from "./vote";
@@ -0,0 +1,9 @@
1
+ import { Provider } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Checks whether the GaugeController is currently paused.
5
+ * @param chainId - The chain/network to use.
6
+ * @param provider - Optional ethers.js Provider instance.
7
+ * @returns True if the contract is paused, false otherwise.
8
+ */
9
+ export declare const isPaused: (chainId: ChainId, provider?: Provider) => Promise<boolean>;
@@ -0,0 +1,10 @@
1
+ import { Signer } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Kicks a user, forcing a re-checkpoint of their vote power (e.g. after their veToken lock expired).
5
+ * @param chainId - The chain/network to use.
6
+ * @param user - Address of the user to kick.
7
+ * @param signer - An ethers.js Signer instance (required).
8
+ * @returns The transaction response.
9
+ */
10
+ export declare const kick: (chainId: ChainId, user: string, signer: Signer) => Promise<any>;
@@ -0,0 +1,10 @@
1
+ import { Signer } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Removes a gauge from the GaugeController. Requires the GAUGE_ADMIN role.
5
+ * @param chainId - The chain/network to use.
6
+ * @param gauge - Address of the gauge to remove.
7
+ * @param signer - An ethers.js Signer instance (required).
8
+ * @returns The transaction response.
9
+ */
10
+ export declare const removeGauge: (chainId: ChainId, gauge: string, signer: Signer) => Promise<any>;
@@ -0,0 +1,10 @@
1
+ import { Signer } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Removes the caller's allocated vote power from a gauge.
5
+ * @param chainId - The chain/network to use.
6
+ * @param gauge - Address of the gauge to remove power from.
7
+ * @param signer - An ethers.js Signer instance (required).
8
+ * @returns The transaction response.
9
+ */
10
+ export declare const removePowerFromGauge: (chainId: ChainId, gauge: string, signer: Signer) => Promise<any>;
@@ -0,0 +1,11 @@
1
+ import { Signer } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Enables or disables boost amplification for a gauge. Requires the GAUGE_ADMIN role.
5
+ * @param chainId - The chain/network to use.
6
+ * @param gauge - Address of the gauge.
7
+ * @param enabled - Whether boost amplification should be enabled.
8
+ * @param signer - An ethers.js Signer instance (required).
9
+ * @returns The transaction response.
10
+ */
11
+ export declare const setBoostAmplificationEnabled: (chainId: ChainId, gauge: string, enabled: boolean, signer: Signer) => Promise<any>;
@@ -0,0 +1,11 @@
1
+ import { Signer } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Emergency-pauses or unpauses a single gauge. Requires the EMERGENCY_ADMIN role.
5
+ * @param chainId - The chain/network to use.
6
+ * @param gauge - Address of the gauge.
7
+ * @param paused - Whether the gauge should be paused.
8
+ * @param signer - An ethers.js Signer instance (required).
9
+ * @returns The transaction response.
10
+ */
11
+ export declare const setEmergencyGaugePause: (chainId: ChainId, gauge: string, paused: boolean, signer: Signer) => Promise<any>;
@@ -0,0 +1,10 @@
1
+ import { Signer } from "ethers";
2
+ import { ChainId } from "../../../configs/chains";
3
+ /**
4
+ * Emergency-pauses or unpauses the entire GaugeController. Requires the EMERGENCY_ADMIN role.
5
+ * @param chainId - The chain/network to use.
6
+ * @param paused - Whether the contract should be paused.
7
+ * @param signer - An ethers.js Signer instance (required).
8
+ * @returns The transaction response.
9
+ */
10
+ export declare const setEmergencyPause: (chainId: ChainId, paused: boolean, signer: Signer) => Promise<any>;
@@ -3,5 +3,8 @@ import { ChainId } from "../../../configs/chains";
3
3
  /**
4
4
  * Unlock NFTs from the bot-locker. Each tokenId must satisfy the unlock-window check
5
5
  * (locked duration is a non-zero multiple of LOCK_DURATION_IN_EPOCH * EPOCH_DURATION).
6
+ *
7
+ * The contract no longer has a standalone unlock — it was merged into
8
+ * unlockAndClaim, which unlocks and claims accrued rewards atomically.
6
9
  */
7
10
  export declare const unlock: (chainId: ChainId, tokenIds: (string | number | bigint)[], signer: Signer) => Promise<import("ethers").ContractTransactionResponse>;
@@ -3,4 +3,4 @@ import { ChainId } from "../../../configs/chains";
3
3
  /**
4
4
  * Harvest free RAAC in the vault and distribute. Whitelisted callers only.
5
5
  */
6
- export declare const harvest: (chainId: ChainId, recipient: string, minimumOut: string | number | bigint, signer: Signer) => Promise<import("ethers").ContractTransactionResponse>;
6
+ export declare const harvest: (chainId: ChainId, recipient: string, signer: Signer) => Promise<import("ethers").ContractTransactionResponse>;
@@ -54,7 +54,7 @@ const getContractAddress = (chainId, contractName) => {
54
54
  if (!config) {
55
55
  throw new Error(`Unsupported chain ID: ${chainId}`);
56
56
  }
57
- const chainKeys = ["contracts", "governance", "assets", "pools", "nfts", "lockers", "zap"];
57
+ const chainKeys = ["contracts", "governance", "assets", "pools", "nfts", "lockers", "zap", "gauges"];
58
58
  const keys = Object.keys(config).filter((key) => chainKeys.includes(key));
59
59
  let address = null;
60
60
  for (const key of keys) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raac/rpc",
3
- "version": "1.2.0-beta.5",
3
+ "version": "1.2.0-beta.7",
4
4
  "description": "RPC Library for RAAC",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -1,29 +0,0 @@
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.getAvailableBalance = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = require("../../getContractAddress");
10
- const GET_AVAILABLE_BALANCE_ABI = "function getAvailableBalance(address token) view returns (uint256)";
11
- /**
12
- * Gets available balance for a token in the distributor.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param tokenAddress - Address of the reward token.
16
- * @param provider - Optional ethers.js Provider instance.
17
- * @returns Available balance formatted in ether units.
18
- */
19
- const getAvailableBalance = async (chainId, tokenAddress, provider) => {
20
- if (!provider) {
21
- const rpc = chains_1.default[chainId].rpcs[0];
22
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
23
- }
24
- const contractAddress = (0, getContractAddress_1.getContractAddress)(chainId, "gaugerewardsdistributor");
25
- const contract = new ethers_1.ethers.Contract(contractAddress, [GET_AVAILABLE_BALANCE_ABI], provider);
26
- const balance = await contract.getAvailableBalance(tokenAddress);
27
- return ethers_1.ethers.formatEther(balance);
28
- };
29
- exports.getAvailableBalance = getAvailableBalance;
@@ -1,28 +0,0 @@
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.getGaugeRewardTokens = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = require("../../getContractAddress");
10
- const GET_GAUGE_REWARD_TOKENS_ABI = "function getGaugeRewardTokens(address gauge) view returns (address[] memory)";
11
- /**
12
- * Gets all approved and active reward tokens for a gauge.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param gaugeAddress - Address of the gauge.
16
- * @param provider - Optional ethers.js Provider instance.
17
- * @returns Array of approved reward token addresses.
18
- */
19
- const getGaugeRewardTokens = async (chainId, gaugeAddress, provider) => {
20
- if (!provider) {
21
- const rpc = chains_1.default[chainId].rpcs[0];
22
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
23
- }
24
- const contractAddress = (0, getContractAddress_1.getContractAddress)(chainId, "gaugerewardsdistributor");
25
- const contract = new ethers_1.ethers.Contract(contractAddress, [GET_GAUGE_REWARD_TOKENS_ABI], provider);
26
- return await contract.getGaugeRewardTokens(gaugeAddress);
27
- };
28
- exports.getGaugeRewardTokens = getGaugeRewardTokens;
@@ -1,30 +0,0 @@
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.getTransferableBalance = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = require("../../getContractAddress");
10
- const GET_TRANSFERABLE_BALANCE_ABI = "function getTransferableBalance(address token, address gauge) view returns (uint256 distributable)";
11
- /**
12
- * Gets the transferable balance for a token and a gauge.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param tokenAddress - Address of the reward token.
16
- * @param gaugeAddress - Address of the gauge.
17
- * @param provider - Optional ethers.js Provider instance.
18
- * @returns Transferable balance formatted in ether units.
19
- */
20
- const getTransferableBalance = async (chainId, tokenAddress, gaugeAddress, provider) => {
21
- if (!provider) {
22
- const rpc = chains_1.default[chainId].rpcs[0];
23
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
24
- }
25
- const contractAddress = (0, getContractAddress_1.getContractAddress)(chainId, "gaugerewardsdistributor");
26
- const contract = new ethers_1.ethers.Contract(contractAddress, [GET_TRANSFERABLE_BALANCE_ABI], provider);
27
- const balance = await contract.getTransferableBalance(tokenAddress, gaugeAddress);
28
- return ethers_1.ethers.formatEther(balance);
29
- };
30
- exports.getTransferableBalance = getTransferableBalance;
@@ -1,29 +0,0 @@
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.isRewardTokenApproved = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = require("../../getContractAddress");
10
- const IS_REWARD_TOKEN_APPROVED_ABI = "function isRewardTokenApproved(address gauge, address token) view returns (bool)";
11
- /**
12
- * Checks if a token is approved for a specific gauge.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param gaugeAddress - Address of the gauge.
16
- * @param tokenAddress - Address of the reward token.
17
- * @param provider - Optional ethers.js Provider instance.
18
- * @returns True if the token is approved for the gauge.
19
- */
20
- const isRewardTokenApproved = async (chainId, gaugeAddress, tokenAddress, provider) => {
21
- if (!provider) {
22
- const rpc = chains_1.default[chainId].rpcs[0];
23
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
24
- }
25
- const contractAddress = (0, getContractAddress_1.getContractAddress)(chainId, "gaugerewardsdistributor");
26
- const contract = new ethers_1.ethers.Contract(contractAddress, [IS_REWARD_TOKEN_APPROVED_ABI], provider);
27
- return await contract.isRewardTokenApproved(gaugeAddress, tokenAddress);
28
- };
29
- exports.isRewardTokenApproved = isRewardTokenApproved;
@@ -1,29 +0,0 @@
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.isTokenApproved = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = require("../../getContractAddress");
10
- const IS_TOKEN_APPROVED_ABI = "function isTokenApproved(address token) view returns (bool)";
11
- /**
12
- * Checks if a token is approved for deposit.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param tokenAddress - Address of the token to check.
16
- * @param provider - Optional ethers.js Provider instance.
17
- * @returns True if the token is approved.
18
- */
19
- const isTokenApproved = async (chainId, tokenAddress, provider) => {
20
- if (!provider) {
21
- const rpc = chains_1.default[chainId].rpcs[0];
22
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
23
- }
24
- const contractAddress = (0, getContractAddress_1.getContractAddress)(chainId, "gaugerewardsdistributor");
25
- console.log(contractAddress);
26
- const contract = new ethers_1.ethers.Contract(contractAddress, [IS_TOKEN_APPROVED_ABI], provider);
27
- return await contract.isTokenApproved(tokenAddress);
28
- };
29
- exports.isTokenApproved = isTokenApproved;
@@ -1,44 +0,0 @@
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.claimReward = void 0;
7
- const ethers_1 = require("ethers");
8
- const artifacts_1 = require("../../../utils/artifacts");
9
- const ethers_2 = require("ethers");
10
- const getContractAddress_1 = __importDefault(require("../../getContractAddress"));
11
- /**
12
- * Claims all rewards from a gauge.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param gaugeAddressOrId - Address of the gauge contract or ID of the gauge.
16
- * @param signer - An ethers.js Signer instance (must be connected to wallet).
17
- * @returns Transaction receipt after the claim rewards is made.
18
- */
19
- const claimReward = async (chainId, gaugeAddressOrId, signer) => {
20
- if (!signer) {
21
- throw new Error("Signer is required");
22
- }
23
- let gaugeAddress;
24
- try {
25
- const gaugeABI = (0, artifacts_1.getABI)("basegauge");
26
- if ((0, ethers_2.isAddress)(gaugeAddressOrId)) {
27
- gaugeAddress = gaugeAddressOrId;
28
- }
29
- else {
30
- // @ts-ignore
31
- gaugeAddress = (0, getContractAddress_1.default)(chainId, gaugeAddressOrId.toLowerCase());
32
- }
33
- const gaugeContract = new ethers_1.ethers.Contract(gaugeAddress, gaugeABI, signer);
34
- const tx = await gaugeContract.claimRewards();
35
- await tx.wait();
36
- console.log(`Claimed rewards from gauge: ${gaugeAddress}`);
37
- return tx;
38
- }
39
- catch (error) {
40
- console.error("Error claiming rewards:", error);
41
- throw new Error(`Failed to claim rewards from gauge ${gaugeAddress}: ${error.message}`);
42
- }
43
- };
44
- exports.claimReward = claimReward;
@@ -1,51 +0,0 @@
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.getAllEarnedRewards = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = __importDefault(require("../../getContractAddress"));
10
- const EARNED_ABI = "function earned(address token, address user) view returns (uint256)";
11
- /**
12
- * Gets earned rewards for a user for the provided reward tokens.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param gaugeAddressOrId - Address of the gauge contract or ID of the gauge.
16
- * @param accountAddress - Address of the user.
17
- * @param rewardTokens - The list of reward token addresses to query.
18
- * @param provider - Optional ethers.js Provider instance.
19
- * @returns Array of tokens and their earned amounts.
20
- */
21
- const getAllEarnedRewards = async (chainId, gaugeAddressOrId, accountAddress, rewardTokens, provider) => {
22
- if (!provider) {
23
- const rpc = chains_1.default[chainId].rpcs[0];
24
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
25
- }
26
- let gaugeAddress;
27
- try {
28
- if ((0, ethers_1.isAddress)(gaugeAddressOrId)) {
29
- gaugeAddress = gaugeAddressOrId;
30
- }
31
- else {
32
- // @ts-ignore
33
- gaugeAddress = (0, getContractAddress_1.default)(chainId, gaugeAddressOrId.toLowerCase());
34
- }
35
- }
36
- catch (error) {
37
- console.error("Error getting all earned rewards:", error);
38
- throw new Error(`Failed to get all earned rewards from gauge ${gaugeAddress}: ${error.message}`);
39
- }
40
- const contract = new ethers_1.ethers.Contract(gaugeAddress, [EARNED_ABI], provider);
41
- const amounts = [];
42
- for (const token of rewardTokens) {
43
- const earned = await contract.earned(token, accountAddress);
44
- amounts.push(ethers_1.ethers.formatEther(earned));
45
- }
46
- return {
47
- tokens: rewardTokens,
48
- amounts,
49
- };
50
- };
51
- exports.getAllEarnedRewards = getAllEarnedRewards;
@@ -1,41 +0,0 @@
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.getAllPendingRewards = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = __importDefault(require("../../getContractAddress"));
10
- const PENDING_REWARDS_ABI = "function pendingRewards(address token, address user) view returns (uint256)";
11
- const getAllPendingRewards = async (chainId, gaugeAddressOrId, accountAddress, rewardTokens, provider) => {
12
- if (!provider) {
13
- const rpc = chains_1.default[chainId].rpcs[0];
14
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
15
- }
16
- let gaugeAddress;
17
- try {
18
- if ((0, ethers_1.isAddress)(gaugeAddressOrId)) {
19
- gaugeAddress = gaugeAddressOrId;
20
- }
21
- else {
22
- // @ts-ignore
23
- gaugeAddress = (0, getContractAddress_1.default)(chainId, gaugeAddressOrId.toLowerCase());
24
- }
25
- }
26
- catch (error) {
27
- console.error("Error getting all pending rewards:", error);
28
- throw new Error(`Failed to get all pending rewards from gauge ${gaugeAddress}: ${error.message}`);
29
- }
30
- const contract = new ethers_1.ethers.Contract(gaugeAddress, [PENDING_REWARDS_ABI], provider);
31
- const amounts = [];
32
- for (const token of rewardTokens) {
33
- const pending = await contract.pendingRewards(token, accountAddress);
34
- amounts.push(ethers_1.ethers.formatEther(pending));
35
- }
36
- return {
37
- tokens: rewardTokens,
38
- amounts,
39
- };
40
- };
41
- exports.getAllPendingRewards = getAllPendingRewards;
@@ -1,41 +0,0 @@
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.getRewardTokens = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = __importDefault(require("../../getContractAddress"));
10
- const GET_REWARD_TOKENS_ABI = "function getRewardTokens() view returns (address[] memory)";
11
- /**
12
- * Gets all registered reward tokens for the gauge.
13
- *
14
- * @param chainId - The chain/network to use.
15
- * @param gaugeAddressOrId - Address of the gauge contract or ID of the gauge.
16
- * @param provider - Optional ethers.js Provider instance.
17
- * @returns Array of reward token addresses.
18
- */
19
- const getRewardTokens = async (chainId, gaugeAddressOrId, provider) => {
20
- if (!provider) {
21
- const rpc = chains_1.default[chainId].rpcs[0];
22
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
23
- }
24
- let gaugeAddress;
25
- try {
26
- if ((0, ethers_1.isAddress)(gaugeAddressOrId)) {
27
- gaugeAddress = gaugeAddressOrId;
28
- }
29
- else {
30
- // @ts-ignore
31
- gaugeAddress = (0, getContractAddress_1.default)(chainId, gaugeAddressOrId.toLowerCase());
32
- }
33
- }
34
- catch (error) {
35
- console.error("Error getting reward tokens:", error);
36
- throw new Error(`Failed to get reward tokens from gauge ${gaugeAddress}: ${error.message}`);
37
- }
38
- const contract = new ethers_1.ethers.Contract(gaugeAddress, [GET_REWARD_TOKENS_ABI], provider);
39
- return await contract.getRewardTokens();
40
- };
41
- exports.getRewardTokens = getRewardTokens;
@@ -1,42 +0,0 @@
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.getUserGaugeVoteWeight = void 0;
7
- const ethers_1 = require("ethers");
8
- const chains_1 = __importDefault(require("../../../configs/chains"));
9
- const getContractAddress_1 = __importDefault(require("../../getContractAddress"));
10
- const GET_USER_GAUGE_VOTE_WEIGHT_ABI = "function getUserGaugeVoteWeight(address account, address gauge) view returns (uint256 voteWeight)";
11
- const getUserGaugeVoteWeight = async (chainId, user, gaugeAddressOrId, provider) => {
12
- if (!provider) {
13
- const rpc = chains_1.default[chainId].rpcs[0];
14
- provider = new ethers_1.ethers.JsonRpcProvider(rpc);
15
- }
16
- let gaugeAddress;
17
- try {
18
- if ((0, ethers_1.isAddress)(gaugeAddressOrId)) {
19
- gaugeAddress = gaugeAddressOrId;
20
- }
21
- else {
22
- // @ts-ignore
23
- gaugeAddress = (0, getContractAddress_1.default)(chainId, gaugeAddressOrId.toLowerCase());
24
- }
25
- }
26
- catch (error) {
27
- console.error("Error resolving gauge address:", error);
28
- throw new Error(`Failed to resolve gauge address for input ${gaugeAddressOrId}: ${error.message}`);
29
- }
30
- const contract = new ethers_1.ethers.Contract(gaugeAddress, [GET_USER_GAUGE_VOTE_WEIGHT_ABI], provider);
31
- try {
32
- const voteWeight = await contract.getUserGaugeVoteWeight(user, gaugeAddress);
33
- return {
34
- voteWeight: voteWeight.toString()
35
- };
36
- }
37
- catch (error) {
38
- console.error("Error fetching user gauge vote weight:", error);
39
- throw new Error(`Failed to fetch user gauge vote weight from gauge ${gaugeAddress}: ${error.message}`);
40
- }
41
- };
42
- exports.getUserGaugeVoteWeight = getUserGaugeVoteWeight;