@boostxyz/sdk 0.0.0-alpha.9 → 1.1.0-alpha.23

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 (254) hide show
  1. package/dist/Actions/Action.cjs +1 -1
  2. package/dist/Actions/Action.cjs.map +1 -1
  3. package/dist/Actions/Action.js +2 -2
  4. package/dist/Actions/ContractAction.d.ts +11 -11
  5. package/dist/Actions/ContractAction.d.ts.map +1 -1
  6. package/dist/Actions/ERC721MintAction.d.ts +14 -14
  7. package/dist/Actions/ERC721MintAction.d.ts.map +1 -1
  8. package/dist/Actions/EventAction.cjs +1 -1
  9. package/dist/Actions/EventAction.cjs.map +1 -1
  10. package/dist/Actions/EventAction.d.ts +174 -41
  11. package/dist/Actions/EventAction.d.ts.map +1 -1
  12. package/dist/Actions/EventAction.js +557 -129
  13. package/dist/Actions/EventAction.js.map +1 -1
  14. package/dist/AllowLists/AllowList.cjs +1 -1
  15. package/dist/AllowLists/AllowList.cjs.map +1 -1
  16. package/dist/AllowLists/AllowList.d.ts +6 -4
  17. package/dist/AllowLists/AllowList.d.ts.map +1 -1
  18. package/dist/AllowLists/AllowList.js +45 -23
  19. package/dist/AllowLists/AllowList.js.map +1 -1
  20. package/dist/AllowLists/OpenAllowList.d.ts +423 -0
  21. package/dist/AllowLists/OpenAllowList.d.ts.map +1 -0
  22. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  23. package/dist/AllowLists/SimpleAllowList.cjs.map +1 -1
  24. package/dist/AllowLists/SimpleAllowList.d.ts +92 -37
  25. package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -1
  26. package/dist/AllowLists/SimpleAllowList.js +60 -75
  27. package/dist/AllowLists/SimpleAllowList.js.map +1 -1
  28. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  29. package/dist/AllowLists/SimpleDenyList.cjs.map +1 -1
  30. package/dist/AllowLists/SimpleDenyList.d.ts +203 -11
  31. package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -1
  32. package/dist/AllowLists/SimpleDenyList.js +11 -112
  33. package/dist/AllowLists/SimpleDenyList.js.map +1 -1
  34. package/dist/Auth/PassthroughAuth.cjs +1 -1
  35. package/dist/Auth/PassthroughAuth.js +1 -1
  36. package/dist/Boost.cjs +1 -1
  37. package/dist/Boost.cjs.map +1 -1
  38. package/dist/Boost.d.ts +20 -21
  39. package/dist/Boost.d.ts.map +1 -1
  40. package/dist/Boost.js +43 -57
  41. package/dist/Boost.js.map +1 -1
  42. package/dist/BoostCore-Btl5BdAs.cjs +3 -0
  43. package/dist/BoostCore-Btl5BdAs.cjs.map +1 -0
  44. package/dist/BoostCore-CD56zbYX.js +2641 -0
  45. package/dist/BoostCore-CD56zbYX.js.map +1 -0
  46. package/dist/BoostCore.cjs +1 -2
  47. package/dist/BoostCore.cjs.map +1 -1
  48. package/dist/BoostCore.d.ts +749 -78
  49. package/dist/BoostCore.d.ts.map +1 -1
  50. package/dist/BoostCore.js +29 -1150
  51. package/dist/BoostCore.js.map +1 -1
  52. package/dist/BoostRegistry.cjs +1 -1
  53. package/dist/BoostRegistry.cjs.map +1 -1
  54. package/dist/BoostRegistry.d.ts +80 -25
  55. package/dist/BoostRegistry.d.ts.map +1 -1
  56. package/dist/BoostRegistry.js +164 -82
  57. package/dist/BoostRegistry.js.map +1 -1
  58. package/dist/Budgets/Budget.cjs +1 -1
  59. package/dist/Budgets/Budget.cjs.map +1 -1
  60. package/dist/Budgets/Budget.d.ts.map +1 -1
  61. package/dist/Budgets/Budget.js +2 -2
  62. package/dist/Budgets/Budget.js.map +1 -1
  63. package/dist/Budgets/ManagedBudget.cjs +1 -1
  64. package/dist/Budgets/ManagedBudget.cjs.map +1 -1
  65. package/dist/Budgets/ManagedBudget.d.ts +103 -221
  66. package/dist/Budgets/ManagedBudget.d.ts.map +1 -1
  67. package/dist/Budgets/ManagedBudget.js +81 -298
  68. package/dist/Budgets/ManagedBudget.js.map +1 -1
  69. package/dist/Budgets/VestingBudget.d.ts +223 -89
  70. package/dist/Budgets/VestingBudget.d.ts.map +1 -1
  71. package/dist/Deployable/Contract.cjs +1 -1
  72. package/dist/Deployable/Contract.cjs.map +1 -1
  73. package/dist/Deployable/Contract.d.ts +4 -5
  74. package/dist/Deployable/Contract.d.ts.map +1 -1
  75. package/dist/Deployable/Contract.js +5 -7
  76. package/dist/Deployable/Contract.js.map +1 -1
  77. package/dist/Deployable/Deployable.cjs.map +1 -1
  78. package/dist/Deployable/Deployable.d.ts +1 -1
  79. package/dist/Deployable/Deployable.d.ts.map +1 -1
  80. package/dist/Deployable/Deployable.js +3 -5
  81. package/dist/Deployable/Deployable.js.map +1 -1
  82. package/dist/Deployable/DeployableTarget.cjs +1 -1
  83. package/dist/Deployable/DeployableTarget.cjs.map +1 -1
  84. package/dist/Deployable/DeployableTarget.d.ts +13 -13
  85. package/dist/Deployable/DeployableTarget.d.ts.map +1 -1
  86. package/dist/Deployable/DeployableTarget.js +28 -25
  87. package/dist/Deployable/DeployableTarget.js.map +1 -1
  88. package/dist/Deployable/DeployableTargetWithRBAC.cjs +2 -0
  89. package/dist/Deployable/DeployableTargetWithRBAC.cjs.map +1 -0
  90. package/dist/Deployable/DeployableTargetWithRBAC.d.ts +248 -0
  91. package/dist/Deployable/DeployableTargetWithRBAC.d.ts.map +1 -0
  92. package/dist/Deployable/DeployableTargetWithRBAC.js +320 -0
  93. package/dist/Deployable/DeployableTargetWithRBAC.js.map +1 -0
  94. package/dist/Incentive-CcnOIc8L.cjs +2 -0
  95. package/dist/Incentive-CcnOIc8L.cjs.map +1 -0
  96. package/dist/Incentive-rM5nKznp.js +313 -0
  97. package/dist/Incentive-rM5nKznp.js.map +1 -0
  98. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  99. package/dist/Incentives/AllowListIncentive.cjs.map +1 -1
  100. package/dist/Incentives/AllowListIncentive.d.ts +38 -16
  101. package/dist/Incentives/AllowListIncentive.d.ts.map +1 -1
  102. package/dist/Incentives/AllowListIncentive.js +43 -29
  103. package/dist/Incentives/AllowListIncentive.js.map +1 -1
  104. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  105. package/dist/Incentives/CGDAIncentive.cjs.map +1 -1
  106. package/dist/Incentives/CGDAIncentive.d.ts +234 -21
  107. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -1
  108. package/dist/Incentives/CGDAIncentive.js +46 -32
  109. package/dist/Incentives/CGDAIncentive.js.map +1 -1
  110. package/dist/Incentives/ERC1155Incentive.d.ts +224 -37
  111. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -1
  112. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  113. package/dist/Incentives/ERC20Incentive.cjs.map +1 -1
  114. package/dist/Incentives/ERC20Incentive.d.ts +234 -30
  115. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -1
  116. package/dist/Incentives/ERC20Incentive.js +62 -46
  117. package/dist/Incentives/ERC20Incentive.js.map +1 -1
  118. package/dist/{Budgets/SimpleBudget.d.ts → Incentives/ERC20VariableCriteriaIncentive.d.ts} +333 -438
  119. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts.map +1 -0
  120. package/dist/Incentives/ERC20VariableIncentive.d.ts +231 -29
  121. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  122. package/dist/Incentives/Incentive.cjs +1 -1
  123. package/dist/Incentives/Incentive.cjs.map +1 -1
  124. package/dist/Incentives/Incentive.d.ts +4 -4
  125. package/dist/Incentives/Incentive.d.ts.map +1 -1
  126. package/dist/Incentives/Incentive.js +16 -296
  127. package/dist/Incentives/Incentive.js.map +1 -1
  128. package/dist/Incentives/PointsIncentive.cjs +1 -1
  129. package/dist/Incentives/PointsIncentive.cjs.map +1 -1
  130. package/dist/Incentives/PointsIncentive.d.ts +40 -18
  131. package/dist/Incentives/PointsIncentive.d.ts.map +1 -1
  132. package/dist/Incentives/PointsIncentive.js +38 -24
  133. package/dist/Incentives/PointsIncentive.js.map +1 -1
  134. package/dist/SimpleDenyList-BDXpY74P.js +133 -0
  135. package/dist/SimpleDenyList-BDXpY74P.js.map +1 -0
  136. package/dist/SimpleDenyList-DNj5qDWM.cjs +2 -0
  137. package/dist/SimpleDenyList-DNj5qDWM.cjs.map +1 -0
  138. package/dist/Validators/SignerValidator.cjs +1 -1
  139. package/dist/Validators/SignerValidator.cjs.map +1 -1
  140. package/dist/Validators/SignerValidator.d.ts +16 -16
  141. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  142. package/dist/Validators/SignerValidator.js +32 -28
  143. package/dist/Validators/SignerValidator.js.map +1 -1
  144. package/dist/Validators/Validator.cjs +1 -1
  145. package/dist/Validators/Validator.cjs.map +1 -1
  146. package/dist/Validators/Validator.d.ts +1 -1
  147. package/dist/Validators/Validator.js +2 -2
  148. package/dist/Validators/Validator.js.map +1 -1
  149. package/dist/claiming.cjs.map +1 -1
  150. package/dist/claiming.d.ts +1 -1
  151. package/dist/claiming.js.map +1 -1
  152. package/dist/componentInterfaces-BBCFkrZv.js +14 -0
  153. package/dist/componentInterfaces-BBCFkrZv.js.map +1 -0
  154. package/dist/componentInterfaces-DRI_dQ-P.cjs +2 -0
  155. package/dist/componentInterfaces-DRI_dQ-P.cjs.map +1 -0
  156. package/dist/deployments-DF_6-7hH.cjs +2 -0
  157. package/dist/deployments-DF_6-7hH.cjs.map +1 -0
  158. package/dist/deployments-fJsWblwS.js +56 -0
  159. package/dist/deployments-fJsWblwS.js.map +1 -0
  160. package/dist/deployments.json +58 -0
  161. package/dist/errors.cjs +1 -1
  162. package/dist/errors.cjs.map +1 -1
  163. package/dist/errors.d.ts +256 -20
  164. package/dist/errors.d.ts.map +1 -1
  165. package/dist/errors.js +183 -26
  166. package/dist/errors.js.map +1 -1
  167. package/dist/{generated-57_Kffpz.js → generated-CsNyWPKA.js} +3843 -2084
  168. package/dist/generated-CsNyWPKA.js.map +1 -0
  169. package/dist/generated-DHerxf1y.cjs +3 -0
  170. package/dist/generated-DHerxf1y.cjs.map +1 -0
  171. package/dist/index.cjs +1 -1
  172. package/dist/index.d.ts +5 -0
  173. package/dist/index.d.ts.map +1 -1
  174. package/dist/index.js +142 -108
  175. package/dist/index.js.map +1 -1
  176. package/dist/transfers.cjs.map +1 -1
  177. package/dist/transfers.d.ts +1 -1
  178. package/dist/transfers.js.map +1 -1
  179. package/dist/utils.cjs +1 -1
  180. package/dist/utils.cjs.map +1 -1
  181. package/dist/utils.d.ts +26 -12
  182. package/dist/utils.d.ts.map +1 -1
  183. package/dist/utils.js +38 -23
  184. package/dist/utils.js.map +1 -1
  185. package/package.json +20 -10
  186. package/src/Actions/Action.test.ts +14 -13
  187. package/src/Actions/ContractAction.test.ts +10 -10
  188. package/src/Actions/ContractAction.ts +11 -12
  189. package/src/Actions/ERC721MintAction.test.ts +6 -6
  190. package/src/Actions/ERC721MintAction.ts +14 -15
  191. package/src/Actions/EventAction.test.ts +735 -109
  192. package/src/Actions/EventAction.ts +527 -88
  193. package/src/AllowLists/AllowList.test.ts +7 -7
  194. package/src/AllowLists/AllowList.ts +5 -3
  195. package/src/AllowLists/OpenAllowList.test.ts +40 -0
  196. package/src/AllowLists/OpenAllowList.ts +45 -0
  197. package/src/AllowLists/SimpleAllowList.test.ts +4 -4
  198. package/src/AllowLists/SimpleAllowList.ts +40 -61
  199. package/src/AllowLists/SimpleDenyList.test.ts +4 -4
  200. package/src/AllowLists/SimpleDenyList.ts +41 -17
  201. package/src/Auth/PassthroughAuth.test.ts +1 -1
  202. package/src/Boost.ts +21 -24
  203. package/src/BoostCore.test.ts +361 -306
  204. package/src/BoostCore.ts +403 -220
  205. package/src/BoostRegistry.test.ts +53 -0
  206. package/src/BoostRegistry.ts +161 -40
  207. package/src/Budgets/Budget.test.ts +2 -2
  208. package/src/Budgets/Budget.ts +1 -2
  209. package/src/Budgets/ManagedBudget.test.ts +106 -19
  210. package/src/Budgets/ManagedBudget.ts +49 -321
  211. package/src/Budgets/VestingBudget.test.ts +7 -7
  212. package/src/Budgets/VestingBudget.ts +36 -106
  213. package/src/Deployable/Contract.ts +4 -5
  214. package/src/Deployable/Deployable.ts +1 -1
  215. package/src/Deployable/DeployableTarget.ts +30 -19
  216. package/src/Deployable/DeployableTargetWithRBAC.test.ts +103 -0
  217. package/src/Deployable/DeployableTargetWithRBAC.ts +447 -0
  218. package/src/Incentives/AllowListIncentive.test.ts +12 -12
  219. package/src/Incentives/AllowListIncentive.ts +30 -15
  220. package/src/Incentives/CGDAIncentive.test.ts +9 -6
  221. package/src/Incentives/CGDAIncentive.ts +39 -18
  222. package/src/Incentives/ERC1155Incentive.test.ts +3 -3
  223. package/src/Incentives/ERC1155Incentive.ts +30 -29
  224. package/src/Incentives/ERC20Incentive.test.ts +9 -6
  225. package/src/Incentives/ERC20Incentive.ts +54 -27
  226. package/src/Incentives/ERC20VariableCriteriaIncentive.test.ts +184 -0
  227. package/src/Incentives/ERC20VariableCriteriaIncentive.ts +325 -0
  228. package/src/Incentives/ERC20VariableIncentive.test.ts +8 -11
  229. package/src/Incentives/ERC20VariableIncentive.ts +50 -26
  230. package/src/Incentives/Incentive.test.ts +4 -1
  231. package/src/Incentives/Incentive.ts +7 -6
  232. package/src/Incentives/PointsIncentive.test.ts +24 -25
  233. package/src/Incentives/PointsIncentive.ts +32 -17
  234. package/src/Validators/SignerValidator.test.ts +6 -6
  235. package/src/Validators/SignerValidator.ts +20 -17
  236. package/src/Validators/Validator.test.ts +2 -2
  237. package/src/Validators/Validator.ts +1 -1
  238. package/src/claiming.ts +1 -1
  239. package/src/errors.ts +345 -21
  240. package/src/index.test.ts +118 -36
  241. package/src/index.ts +5 -0
  242. package/src/transfers.ts +1 -1
  243. package/src/utils.test.ts +2 -2
  244. package/src/utils.ts +61 -12
  245. package/dist/Budgets/SimpleBudget.d.ts.map +0 -1
  246. package/dist/componentInterfaces-CKCBwG16.cjs +0 -2
  247. package/dist/componentInterfaces-CKCBwG16.cjs.map +0 -1
  248. package/dist/componentInterfaces-DYkaxBda.js +0 -13
  249. package/dist/componentInterfaces-DYkaxBda.js.map +0 -1
  250. package/dist/generated-57_Kffpz.js.map +0 -1
  251. package/dist/generated-wKBNvm48.cjs +0 -3
  252. package/dist/generated-wKBNvm48.cjs.map +0 -1
  253. package/src/Budgets/SimpleBudget.test.ts +0 -152
  254. package/src/Budgets/SimpleBudget.ts +0 -564
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ERC20VariableCriteriaIncentive.d.ts","sourceRoot":"","sources":["../../src/Incentives/ERC20VariableCriteriaIncentive.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EAElC,MAAM,eAAe,CAAC;AAKvB,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,GAAG,EAKT,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAQlE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,MAAM,WAAW,qCAAqC;IACpD;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,YAAY,EAAE,aAAa,CAAC;IAC5B;;;;OAIG;IACH,SAAS,EAAE,GAAG,CAAC;IACf;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,2BACf,SAAQ,UAAU,CAChB,OAAO,iCAAiC,EACxC,sBAAsB,CACvB;CAAG;AAEN,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,GAAG,CAAC;CACX;AAED;;GAEG;AACH,qBAAa,8BAA+B,SAAQ,gBAAgB,CAClE,qCAAqC,EACrC,OAAO,iCAAiC,CACzC;IACC,SAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAqC;IACjE;;;;;;OAMG;IACH,OAAuB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGnD;IAEF;;OAEG;IAEH;;;;;OAKG;IACU,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAgB/D;;;;;;OAMG;IACU,kBAAkB,CAAC,EAC9B,IAAI,GACL,EAAE,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC;IA8E7C;;;;;;;OAOG;IACa,eAAe,CAC7B,QAAQ,CAAC,EAAE,qCAAqC,EAChD,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,uBAAuB;IAa1B;;;;;;;OAOG;IACI,cAAc,CAAC,YAAY,EAAE,MAAM;CAM3C;AAED;;;;;;;;;GASG;AACH,wBAAgB,4CAA4C,CAAC,EAC3D,KAAK,EACL,MAAM,EACN,KAAK,EACL,QAAQ,GACT,EAAE,qCAAqC,iBAqCvC"}
@@ -26,11 +26,17 @@ export interface ERC20VariableIncentivePayload {
26
26
  */
27
27
  reward: bigint;
28
28
  /**
29
- * How many times can this incentive be claimed.
29
+ * The total spending limit of the asset that will be distributed.
30
30
  *
31
31
  * @type {bigint}
32
32
  */
33
33
  limit: bigint;
34
+ /**
35
+ * The entity that can `clawback` funds
36
+ *
37
+ * @type {Address}
38
+ */
39
+ manager: Address;
34
40
  }
35
41
  /**
36
42
  * A generic `viem.Log` event with support for `ERC20VariableIncentive` event types.
@@ -43,7 +49,7 @@ export interface ERC20VariableIncentivePayload {
43
49
  */
44
50
  export type ERC20VariableIncentiveLog<event extends ContractEventName<typeof erc20VariableIncentiveAbi> = ContractEventName<typeof erc20VariableIncentiveAbi>> = GenericLog<typeof erc20VariableIncentiveAbi, event>;
45
51
  /**
46
- * A simple ERC20 incentive implementation that allows claiming of tokens
52
+ * A modified ERC20 incentive implementation that allows claiming of variable token amounts with a spending limit
47
53
  *
48
54
  * @export
49
55
  * @class ERC20VariableIncentive
@@ -99,6 +105,10 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
99
105
  readonly type: "error";
100
106
  readonly inputs: readonly [];
101
107
  readonly name: "InvalidInitializationData";
108
+ }, {
109
+ readonly type: "error";
110
+ readonly inputs: readonly [];
111
+ readonly name: "LengthMismatch";
102
112
  }, {
103
113
  readonly type: "error";
104
114
  readonly inputs: readonly [];
@@ -179,6 +189,41 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
179
189
  readonly indexed: true;
180
190
  }];
181
191
  readonly name: "OwnershipTransferred";
192
+ }, {
193
+ readonly type: "event";
194
+ readonly anonymous: false;
195
+ readonly inputs: readonly [{
196
+ readonly name: "user";
197
+ readonly internalType: "address";
198
+ readonly type: "address";
199
+ readonly indexed: true;
200
+ }, {
201
+ readonly name: "roles";
202
+ readonly internalType: "uint256";
203
+ readonly type: "uint256";
204
+ readonly indexed: true;
205
+ }];
206
+ readonly name: "RolesUpdated";
207
+ }, {
208
+ readonly type: "function";
209
+ readonly inputs: readonly [];
210
+ readonly name: "ADMIN_ROLE";
211
+ readonly outputs: readonly [{
212
+ readonly name: "";
213
+ readonly internalType: "uint256";
214
+ readonly type: "uint256";
215
+ }];
216
+ readonly stateMutability: "view";
217
+ }, {
218
+ readonly type: "function";
219
+ readonly inputs: readonly [];
220
+ readonly name: "MANAGER_ROLE";
221
+ readonly outputs: readonly [{
222
+ readonly name: "";
223
+ readonly internalType: "uint256";
224
+ readonly type: "uint256";
225
+ }];
226
+ readonly stateMutability: "view";
182
227
  }, {
183
228
  readonly type: "function";
184
229
  readonly inputs: readonly [];
@@ -247,8 +292,12 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
247
292
  readonly name: "clawback";
248
293
  readonly outputs: readonly [{
249
294
  readonly name: "";
250
- readonly internalType: "bool";
251
- readonly type: "bool";
295
+ readonly internalType: "uint256";
296
+ readonly type: "uint256";
297
+ }, {
298
+ readonly name: "";
299
+ readonly internalType: "address";
300
+ readonly type: "address";
252
301
  }];
253
302
  readonly stateMutability: "nonpayable";
254
303
  }, {
@@ -281,6 +330,70 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
281
330
  readonly type: "bytes4";
282
331
  }];
283
332
  readonly stateMutability: "pure";
333
+ }, {
334
+ readonly type: "function";
335
+ readonly inputs: readonly [{
336
+ readonly name: "accounts_";
337
+ readonly internalType: "address[]";
338
+ readonly type: "address[]";
339
+ }, {
340
+ readonly name: "roles_";
341
+ readonly internalType: "uint256[]";
342
+ readonly type: "uint256[]";
343
+ }];
344
+ readonly name: "grantManyRoles";
345
+ readonly outputs: readonly [];
346
+ readonly stateMutability: "nonpayable";
347
+ }, {
348
+ readonly type: "function";
349
+ readonly inputs: readonly [{
350
+ readonly name: "user";
351
+ readonly internalType: "address";
352
+ readonly type: "address";
353
+ }, {
354
+ readonly name: "roles";
355
+ readonly internalType: "uint256";
356
+ readonly type: "uint256";
357
+ }];
358
+ readonly name: "grantRoles";
359
+ readonly outputs: readonly [];
360
+ readonly stateMutability: "payable";
361
+ }, {
362
+ readonly type: "function";
363
+ readonly inputs: readonly [{
364
+ readonly name: "user";
365
+ readonly internalType: "address";
366
+ readonly type: "address";
367
+ }, {
368
+ readonly name: "roles";
369
+ readonly internalType: "uint256";
370
+ readonly type: "uint256";
371
+ }];
372
+ readonly name: "hasAllRoles";
373
+ readonly outputs: readonly [{
374
+ readonly name: "";
375
+ readonly internalType: "bool";
376
+ readonly type: "bool";
377
+ }];
378
+ readonly stateMutability: "view";
379
+ }, {
380
+ readonly type: "function";
381
+ readonly inputs: readonly [{
382
+ readonly name: "user";
383
+ readonly internalType: "address";
384
+ readonly type: "address";
385
+ }, {
386
+ readonly name: "roles";
387
+ readonly internalType: "uint256";
388
+ readonly type: "uint256";
389
+ }];
390
+ readonly name: "hasAnyRole";
391
+ readonly outputs: readonly [{
392
+ readonly name: "";
393
+ readonly internalType: "bool";
394
+ readonly type: "bool";
395
+ }];
396
+ readonly stateMutability: "view";
284
397
  }, {
285
398
  readonly type: "function";
286
399
  readonly inputs: readonly [{
@@ -291,6 +404,20 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
291
404
  readonly name: "initialize";
292
405
  readonly outputs: readonly [];
293
406
  readonly stateMutability: "nonpayable";
407
+ }, {
408
+ readonly type: "function";
409
+ readonly inputs: readonly [{
410
+ readonly name: "account_";
411
+ readonly internalType: "address";
412
+ readonly type: "address";
413
+ }];
414
+ readonly name: "isAuthorized";
415
+ readonly outputs: readonly [{
416
+ readonly name: "";
417
+ readonly internalType: "bool";
418
+ readonly type: "bool";
419
+ }];
420
+ readonly stateMutability: "view";
294
421
  }, {
295
422
  readonly type: "function";
296
423
  readonly inputs: readonly [{
@@ -363,12 +490,50 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
363
490
  readonly name: "renounceOwnership";
364
491
  readonly outputs: readonly [];
365
492
  readonly stateMutability: "payable";
493
+ }, {
494
+ readonly type: "function";
495
+ readonly inputs: readonly [{
496
+ readonly name: "roles";
497
+ readonly internalType: "uint256";
498
+ readonly type: "uint256";
499
+ }];
500
+ readonly name: "renounceRoles";
501
+ readonly outputs: readonly [];
502
+ readonly stateMutability: "payable";
366
503
  }, {
367
504
  readonly type: "function";
368
505
  readonly inputs: readonly [];
369
506
  readonly name: "requestOwnershipHandover";
370
507
  readonly outputs: readonly [];
371
508
  readonly stateMutability: "payable";
509
+ }, {
510
+ readonly type: "function";
511
+ readonly inputs: readonly [{
512
+ readonly name: "accounts_";
513
+ readonly internalType: "address[]";
514
+ readonly type: "address[]";
515
+ }, {
516
+ readonly name: "roles_";
517
+ readonly internalType: "uint256[]";
518
+ readonly type: "uint256[]";
519
+ }];
520
+ readonly name: "revokeManyRoles";
521
+ readonly outputs: readonly [];
522
+ readonly stateMutability: "nonpayable";
523
+ }, {
524
+ readonly type: "function";
525
+ readonly inputs: readonly [{
526
+ readonly name: "user";
527
+ readonly internalType: "address";
528
+ readonly type: "address";
529
+ }, {
530
+ readonly name: "roles";
531
+ readonly internalType: "uint256";
532
+ readonly type: "uint256";
533
+ }];
534
+ readonly name: "revokeRoles";
535
+ readonly outputs: readonly [];
536
+ readonly stateMutability: "payable";
372
537
  }, {
373
538
  readonly type: "function";
374
539
  readonly inputs: readonly [];
@@ -379,6 +544,34 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
379
544
  readonly type: "uint256";
380
545
  }];
381
546
  readonly stateMutability: "view";
547
+ }, {
548
+ readonly type: "function";
549
+ readonly inputs: readonly [{
550
+ readonly name: "user";
551
+ readonly internalType: "address";
552
+ readonly type: "address";
553
+ }];
554
+ readonly name: "rolesOf";
555
+ readonly outputs: readonly [{
556
+ readonly name: "roles";
557
+ readonly internalType: "uint256";
558
+ readonly type: "uint256";
559
+ }];
560
+ readonly stateMutability: "view";
561
+ }, {
562
+ readonly type: "function";
563
+ readonly inputs: readonly [{
564
+ readonly name: "accounts_";
565
+ readonly internalType: "address[]";
566
+ readonly type: "address[]";
567
+ }, {
568
+ readonly name: "authorized_";
569
+ readonly internalType: "bool[]";
570
+ readonly type: "bool[]";
571
+ }];
572
+ readonly name: "setAuthorized";
573
+ readonly outputs: readonly [];
574
+ readonly stateMutability: "nonpayable";
382
575
  }, {
383
576
  readonly type: "function";
384
577
  readonly inputs: readonly [{
@@ -419,9 +612,9 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
419
612
  *
420
613
  * @public
421
614
  * @static
422
- * @type {Address}
615
+ * @type {Record<number, Address>}
423
616
  */
424
- static base: Address;
617
+ static bases: Record<number, Address>;
425
618
  /**
426
619
  * @inheritdoc
427
620
  *
@@ -435,17 +628,17 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
435
628
  *
436
629
  * @public
437
630
  * @async
438
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'owner'>} [params]
439
- * @returns {unknown}
631
+ * @param {?ReadParams} [params]
632
+ * @returns {Promise<Address>}
440
633
  */
441
634
  owner(params?: ReadParams<typeof erc20VariableIncentiveAbi, 'owner'>): Promise<`0x${string}`>;
442
635
  /**
443
- * The current reward
636
+ * The total amount of rewards claimed
444
637
  *
445
638
  * @public
446
639
  * @async
447
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'currentReward'>} [params]
448
- * @returns {Promise<bigint>} - The current reward
640
+ * @param {?ReadParams} [params]
641
+ * @returns {Promise<bigint>}
449
642
  */
450
643
  totalClaimed(params?: ReadParams<typeof erc20VariableIncentiveAbi, 'totalClaimed'>): Promise<bigint>;
451
644
  /**
@@ -453,7 +646,7 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
453
646
  *
454
647
  * @public
455
648
  * @async
456
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'currentReward'>} [params]
649
+ * @param {?ReadParams} [params]
457
650
  * @returns {Promise<bigint>} - The current reward
458
651
  */
459
652
  currentReward(params?: ReadParams<typeof erc20VariableIncentiveAbi, 'currentReward'>): Promise<bigint>;
@@ -462,7 +655,7 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
462
655
  *
463
656
  * @public
464
657
  * @async
465
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'claims'>} [params]
658
+ * @param {?ReadParams} [params]
466
659
  * @returns {Promise<bigint>}
467
660
  */
468
661
  claims(params?: ReadParams<typeof erc20VariableIncentiveAbi, 'claims'>): Promise<bigint>;
@@ -472,7 +665,7 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
472
665
  * @public
473
666
  * @async
474
667
  * @param {Address} address
475
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'claimed'>} [params]
668
+ * @param {?ReadParams} [params]
476
669
  * @returns {Promise<boolean>}
477
670
  */
478
671
  claimed(address: Address, params?: ReadParams<typeof erc20VariableIncentiveAbi, 'claimed'>): Promise<boolean>;
@@ -481,7 +674,7 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
481
674
  *
482
675
  * @public
483
676
  * @async
484
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'asset'>} [params]
677
+ * @param {?ReadParams} [params]
485
678
  * @returns {Promise<Address>}
486
679
  */
487
680
  asset(params?: ReadParams<typeof erc20VariableIncentiveAbi, 'asset'>): Promise<`0x${string}`>;
@@ -490,7 +683,7 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
490
683
  *
491
684
  * @public
492
685
  * @async
493
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'reward'>} [params]
686
+ * @param {?ReadParams} [params]
494
687
  * @returns {Promise<bigint>}
495
688
  */
496
689
  reward(params?: ReadParams<typeof erc20VariableIncentiveAbi, 'reward'>): Promise<bigint>;
@@ -499,8 +692,8 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
499
692
  *
500
693
  * @public
501
694
  * @async
502
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'limit'>} [params]
503
- * @returns {unknown}
695
+ * @param {?ReadParams} [params]
696
+ * @returns {Promise<bigint>}
504
697
  */
505
698
  limit(params?: ReadParams<typeof erc20VariableIncentiveAbi, 'limit'>): Promise<bigint>;
506
699
  /**
@@ -509,7 +702,7 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
509
702
  * @public
510
703
  * @async
511
704
  * @param {ClaimPayload} payload
512
- * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>} [params]
705
+ * @param {?WriteParams} [params]
513
706
  * @returns {Promise<boolean>} - Returns true if successfully claimed
514
707
  */
515
708
  protected claim(payload: ClaimPayload, params?: WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>): Promise<boolean>;
@@ -519,8 +712,8 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
519
712
  * @public
520
713
  * @async
521
714
  * @param {ClaimPayload} payload
522
- * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>} [params]
523
- * @returns {Promise<boolean>} - Returns true if successfully claimed
715
+ * @param {?WriteParams} [params]
716
+ * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - Returns true if successfully claimed
524
717
  */
525
718
  protected claimRaw(payload: ClaimPayload, params?: WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>): Promise<{
526
719
  hash: `0x${string}`;
@@ -532,22 +725,22 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
532
725
  * @public
533
726
  * @async
534
727
  * @param {ClaimPayload} payload
535
- * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>} [params]
728
+ * @param {?WriteParams} [params]
536
729
  * @returns {Promise<boolean>} - True if the assets were successfully clawbacked
537
730
  */
538
- clawback(payload: ClaimPayload, params?: WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>): Promise<boolean>;
731
+ clawback(payload: ClaimPayload, params?: WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>): Promise<readonly [bigint, `0x${string}`]>;
539
732
  /**
540
733
  * Clawback assets from the incentive
541
734
  *
542
735
  * @public
543
736
  * @async
544
737
  * @param {ClaimPayload} payload
545
- * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>} [params]
546
- * @returns {Promise<boolean>} - True if the assets were successfully clawbacked
738
+ * @param {?WriteParams} [params]
739
+ * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the assets were successfully clawbacked
547
740
  */
548
741
  clawbackRaw(payload: ClaimPayload, params?: WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>): Promise<{
549
742
  hash: `0x${string}`;
550
- result: boolean;
743
+ result: readonly [bigint, `0x${string}`];
551
744
  }>;
552
745
  /**
553
746
  * Check if an incentive is claimable. For the POOL strategy, the `bytes data` portion of the payload ignored. The recipient must not have already claimed the incentive.
@@ -555,10 +748,19 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
555
748
  * @public
556
749
  * @async
557
750
  * @param {ClaimPayload} payload
558
- * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'isClaimable'>} [params]
559
- * @returns {unknown} = True if the incentive is claimable based on the data payload
751
+ * @param {?ReadParams} [params]
752
+ * @returns {Promise<boolean>} = True if the incentive is claimable based on the data payload
560
753
  */
561
754
  isClaimable(payload: ClaimPayload, params?: ReadParams<typeof erc20VariableIncentiveAbi, 'isClaimable'>): Promise<boolean>;
755
+ /**
756
+ * Builds the claim data for the ERC20VariableIncentive.
757
+ *
758
+ * @public
759
+ * @param {bigint} rewardAmount
760
+ * @returns {Hex} Returns the encoded claim data
761
+ * @description This function returns the encoded claim data for the ERC20VariableIncentive.
762
+ */
763
+ buildClaimData(rewardAmount: bigint): `0x${string}`;
562
764
  /**
563
765
  * @inheritdoc
564
766
  *
@@ -576,7 +778,7 @@ export declare class ERC20VariableIncentive extends DeployableTarget<ERC20Variab
576
778
  * @param {Address} param0.asset - The address of the incentivized asset.
577
779
  * @param {bigint} param0.reward - The amount of the asset to distribute.
578
780
  * @param {bigint} param0.limit - How many times can this incentive be claimed.
579
- * @returns {*}
781
+ * @returns {Hex}
580
782
  */
581
783
  export declare function prepareERC20VariableIncentivePayload({ asset, reward, limit, }: ERC20VariableIncentivePayload): `0x${string}`;
582
784
  //# sourceMappingURL=ERC20VariableIncentive.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ERC20VariableIncentive.d.ts","sourceRoot":"","sources":["../../src/Incentives/ERC20VariableIncentive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ERC20VariableIncentive.d.ts","sourceRoot":"","sources":["../../src/Incentives/ERC20VariableIncentive.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../generated-wKBNvm48.cjs"),t=require("../componentInterfaces-CKCBwG16.cjs"),y=require("@wagmi/core"),A=require("../errors.cjs"),o=require("./AllowListIncentive.cjs"),l=require("./CGDAIncentive.cjs"),u=require("./ERC20Incentive.cjs"),g=require("viem"),m=require("../Deployable/DeployableTarget.cjs"),n=require("../claiming.cjs"),I=require("../utils.cjs"),h=require("./PointsIncentive.cjs"),p="0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f602c608760201b60201c565b90508054600181161560455763f92ee8a95f526004601cfd5b8160c01c808260011c146082578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b611c07806100bd5f395ff3fe608060405260043610610129575f3560e01c8063715018a6116100aa578063d54ad2a11161006e578063d54ad2a11461039b578063db09da12146103c5578063dcc59b6f14610401578063f04e283e1461042b578063f2fde38b14610447578063fee81cf41461046357610129565b8063715018a6146102c55780638da5cb5b146102cf578063a4d66daf146102f9578063bb1757cf14610323578063c884ef831461035f57610129565b806338d52e0f116100f157806338d52e0f146101f1578063439fab911461021b578063474f5a44146102435780634e7165a21461027f57806354d1f13d146102bb57610129565b806301ffc9a71461012d57806307621eca14610169578063228cb7331461019357806325692962146101bd57806328d6183b146101c7575b5f80fd5b348015610138575f80fd5b50610153600480360381019061014e9190611115565b61049f565b604051610160919061115a565b60405180910390f35b348015610174575f80fd5b5061017d610518565b60405161018a919061118b565b60405180910390f35b34801561019e575f80fd5b506101a7610521565b6040516101b4919061118b565b60405180910390f35b6101c5610527565b005b3480156101d2575f80fd5b506101db610578565b6040516101e891906111b3565b60405180910390f35b3480156101fc575f80fd5b5061020561059f565b604051610212919061120b565b60405180910390f35b348015610226575f80fd5b50610241600480360381019061023c9190611285565b6105c4565b005b34801561024e575f80fd5b5061026960048036038101906102649190611285565b610780565b604051610276919061115a565b60405180910390f35b34801561028a575f80fd5b506102a560048036038101906102a09190611285565b6108c1565b6040516102b29190611340565b60405180910390f35b6102c3610992565b005b6102cd6109cb565b005b3480156102da575f80fd5b506102e36109de565b6040516102f0919061120b565b60405180910390f35b348015610304575f80fd5b5061030d610a06565b60405161031a919061118b565b60405180910390f35b34801561032e575f80fd5b506103496004803603810190610344919061138a565b610a0c565b604051610356919061115a565b60405180910390f35b34801561036a575f80fd5b50610385600480360381019061038091906113e7565b610c04565b604051610392919061115a565b60405180910390f35b3480156103a6575f80fd5b506103af610c21565b6040516103bc919061118b565b60405180910390f35b3480156103d0575f80fd5b506103eb60048036038101906103e6919061138a565b610c27565b6040516103f8919061115a565b60405180910390f35b34801561040c575f80fd5b50610415610c3a565b604051610422919061118b565b60405180910390f35b610445600480360381019061044091906113e7565b610c3f565b005b610461600480360381019061045c91906113e7565b610c7d565b005b34801561046e575f80fd5b50610489600480360381019061048491906113e7565b610ca6565b604051610496919061118b565b60405180910390f35b5f7f6060409d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610511575061051082610cbf565b5b9050919050565b5f600154905090565b60015481565b5f610530610d38565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7f6060409d00000000000000000000000000000000000000000000000000000000905090565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f6105cd610d42565b905080546003825580156105ff5760018160011c14303b106105f65763f92ee8a95f526004601cfd5b818160ff1b1b91505b5061060933610d6b565b5f8383810190610619919061151d565b90505f815f015190505f826020015190505f836040015190505f810361066b576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610695308573ffffffffffffffffffffffffffffffffffffffff16610e4190919063ffffffff16565b9050818110156106e357845f015181836040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016106da93929190611548565b60405180910390fd5b8360035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600181905550816004819055505f60058190555061074133610d6b565b5050505050801561077b576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f610789610e74565b5f83838101906107999190611696565b90505f81602001518060200190518101906107b491906116f1565b90508060045f8282546107c79190611749565b9250508190555061081d825f01518260035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610eab9092919063ffffffff16565b815f015173ffffffffffffffffffffffffffffffffffffffff167f9ad2e7a4af16dceda9cce4274b2f59c328d8c012eb0e15eb5e1e73b7d8f264d360035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16845f015184604051602001610891939291906117e1565b6040516020818303038152906040526040516108ad9190611340565b60405180910390a260019250505092915050565b60605f805f85858101906108d59190611858565b9250925092506040518060800160405280600160028111156108fa576108f96118a8565b5b81526020018473ffffffffffffffffffffffffffffffffffffffff1681526020013073ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052808481525060405160200161095691906118fe565b6040516020818303038152906040528152506040516020016109789190611a14565b604051602081830303815290604052935050505092915050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b6109d3610e74565b6109dc5f610ef4565b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b60045481565b5f610a15610e74565b5f8383810190610a259190611ab9565b90505f8160200151806020019051810190610a4091906116f1565b90505f610a4c87610fba565b610a82576040517f6247a84e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015403610a9357819050610ab7565b670de0b6b3a764000082600154610aaa9190611b00565b610ab49190611b6e565b90505b60045481600554610ac89190611b9e565b1115610b00576040517f360e42e100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060055f828254610b119190611b9e565b92505081905550610b64878260035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610eab9092919063ffffffff16565b8673ffffffffffffffffffffffffffffffffffffffff167f9ad2e7a4af16dceda9cce4274b2f59c328d8c012eb0e15eb5e1e73b7d8f264d360035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168984604051602001610bd2939291906117e1565b604051602081830303815290604052604051610bee9190611340565b60405180910390a2600193505050509392505050565b6002602052805f5260405f205f915054906101000a900460ff1681565b60055481565b5f610c3184610fba565b90509392505050565b5f5481565b610c47610e74565b63389a75e1600c52805f526020600c208054421115610c6d57636f5e88185f526004601cfd5b5f815550610c7a81610ef4565b50565b610c85610e74565b8060601b610c9a57637448fbae5f526004601cfd5b610ca381610ef4565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7f5970a689000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610d315750610d3082610fc9565b5b9050919050565b5f6202a300905090565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610d73611042565b15610deb577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610dad57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610e3e565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610ea9576382b429005f526004601cfd5b565b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af13d1560015f51141716610eeb576390b8ec185f526004601cfd5b5f603452505050565b610efc611042565b15610f61577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610fb7565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f600454600554109050919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061103b575061103a82611046565b5b9050919050565b5f90565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6110f4816110c0565b81146110fe575f80fd5b50565b5f8135905061110f816110eb565b92915050565b5f6020828403121561112a576111296110b8565b5b5f61113784828501611101565b91505092915050565b5f8115159050919050565b61115481611140565b82525050565b5f60208201905061116d5f83018461114b565b92915050565b5f819050919050565b61118581611173565b82525050565b5f60208201905061119e5f83018461117c565b92915050565b6111ad816110c0565b82525050565b5f6020820190506111c65f8301846111a4565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6111f5826111cc565b9050919050565b611205816111eb565b82525050565b5f60208201905061121e5f8301846111fc565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261124557611244611224565b5b8235905067ffffffffffffffff81111561126257611261611228565b5b60208301915083600182028301111561127e5761127d61122c565b5b9250929050565b5f806020838503121561129b5761129a6110b8565b5b5f83013567ffffffffffffffff8111156112b8576112b76110bc565b5b6112c485828601611230565b92509250509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611312826112d0565b61131c81856112da565b935061132c8185602086016112ea565b611335816112f8565b840191505092915050565b5f6020820190508181035f8301526113588184611308565b905092915050565b611369816111eb565b8114611373575f80fd5b50565b5f8135905061138481611360565b92915050565b5f805f604084860312156113a1576113a06110b8565b5b5f6113ae86828701611376565b935050602084013567ffffffffffffffff8111156113cf576113ce6110bc565b5b6113db86828701611230565b92509250509250925092565b5f602082840312156113fc576113fb6110b8565b5b5f61140984828501611376565b91505092915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61144c826112f8565b810181811067ffffffffffffffff8211171561146b5761146a611416565b5b80604052505050565b5f61147d6110af565b90506114898282611443565b919050565b5f80fd5b61149b81611173565b81146114a5575f80fd5b50565b5f813590506114b681611492565b92915050565b5f606082840312156114d1576114d0611412565b5b6114db6060611474565b90505f6114ea84828501611376565b5f8301525060206114fd848285016114a8565b6020830152506040611511848285016114a8565b60408301525092915050565b5f60608284031215611532576115316110b8565b5b5f61153f848285016114bc565b91505092915050565b5f60608201905061155b5f8301866111fc565b611568602083018561117c565b611575604083018461117c565b949350505050565b5f80fd5b5f67ffffffffffffffff82111561159b5761159a611416565b5b6115a4826112f8565b9050602081019050919050565b828183375f83830152505050565b5f6115d16115cc84611581565b611474565b9050828152602081018484840111156115ed576115ec61157d565b5b6115f88482856115b1565b509392505050565b5f82601f83011261161457611613611224565b5b81356116248482602086016115bf565b91505092915050565b5f6040828403121561164257611641611412565b5b61164c6040611474565b90505f61165b84828501611376565b5f83015250602082013567ffffffffffffffff81111561167e5761167d61148e565b5b61168a84828501611600565b60208301525092915050565b5f602082840312156116ab576116aa6110b8565b5b5f82013567ffffffffffffffff8111156116c8576116c76110bc565b5b6116d48482850161162d565b91505092915050565b5f815190506116eb81611492565b92915050565b5f60208284031215611706576117056110b8565b5b5f611713848285016116dd565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61175382611173565b915061175e83611173565b92508282039050818111156117765761177561171c565b5b92915050565b5f8160601b9050919050565b5f6117928261177c565b9050919050565b5f6117a382611788565b9050919050565b6117bb6117b6826111eb565b611799565b82525050565b5f819050919050565b6117db6117d682611173565b6117c1565b82525050565b5f6117ec82866117aa565b6014820191506117fc82856117aa565b60148201915061180c82846117ca565b602082019150819050949350505050565b5f611827826111cc565b9050919050565b6118378161181d565b8114611841575f80fd5b50565b5f813590506118528161182e565b92915050565b5f805f6060848603121561186f5761186e6110b8565b5b5f61187c86828701611844565b935050602061188d868287016114a8565b925050604061189e868287016114a8565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6118de81611173565b82525050565b602082015f8201516118f85f8501826118d5565b50505050565b5f6020820190506119115f8301846118e4565b92915050565b60038110611928576119276118a8565b5b50565b5f81905061193882611917565b919050565b5f6119478261192b565b9050919050565b6119578161193d565b82525050565b611966816111eb565b82525050565b5f82825260208201905092915050565b5f611986826112d0565b611990818561196c565b93506119a08185602086016112ea565b6119a9816112f8565b840191505092915050565b5f608083015f8301516119c95f86018261194e565b5060208301516119dc602086018261195d565b5060408301516119ef604086018261195d565b5060608301518482036060860152611a07828261197c565b9150508091505092915050565b5f6020820190508181035f830152611a2c81846119b4565b905092915050565b5f60408284031215611a4957611a48611412565b5b611a536040611474565b90505f82013567ffffffffffffffff811115611a7257611a7161148e565b5b611a7e84828501611600565b5f83015250602082013567ffffffffffffffff811115611aa157611aa061148e565b5b611aad84828501611600565b60208301525092915050565b5f60208284031215611ace57611acd6110b8565b5b5f82013567ffffffffffffffff811115611aeb57611aea6110bc565b5b611af784828501611a34565b91505092915050565b5f611b0a82611173565b9150611b1583611173565b9250828202611b2381611173565b91508282048414831517611b3a57611b3961171c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611b7882611173565b9150611b8383611173565b925082611b9357611b92611b41565b5b828204905092915050565b5f611ba882611173565b9150611bb383611173565b9250828201905080821115611bcb57611bca61171c565b5b9291505056fea2646970667358221220a9439a260a68f54e27503ba4a35d38eead0eee9484d16611fb206387bc2ede8564736f6c634300081a0033",i=class i extends m.DeployableTarget{constructor(){super(...arguments),this.abi=a.w}async owner(f){return await a.sb(this._config,{address:this.assertValidAddress(),args:[],...f})}async totalClaimed(f){return await a.lb(this._config,{address:this.assertValidAddress(),args:[],...f})}async currentReward(f){return await a.tb(this._config,{address:this.assertValidAddress(),args:[],...f})}async claims(f){return await a.eb(this._config,{address:this.assertValidAddress(),args:[],...f})}async claimed(f,b){return await a.Ym(this._config,{address:this.assertValidAddress(),args:[f],...b})}async asset(f){return await a.Xm(this._config,{address:this.assertValidAddress(),...f})}async reward(f){return await a.pb(this._config,{address:this.assertValidAddress(),...f})}async limit(f){return await a.ib(this._config,{address:this.assertValidAddress(),...f})}async claim(f,b){return await this.awaitResult(this.claimRaw(f,b))}async claimRaw(f,b){const{request:e,result:c}=await a.Nb(this._config,{address:this.assertValidAddress(),args:[n.prepareClaimPayload(f)],...this.optionallyAttachAccount(),...b});return{hash:await a.cb(this._config,e),result:c}}async clawback(f,b){return await this.awaitResult(this.clawbackRaw(f,b))}async clawbackRaw(f,b){const{request:e,result:c}=await a.hb(this._config,{address:this.assertValidAddress(),args:[n.prepareClaimPayload(f)],...this.optionallyAttachAccount(),...b});return{hash:await a.mb(this._config,e),result:c}}async isClaimable(f,b){return await a.ab(this._config,{address:this.assertValidAddress(),args:[n.prepareClaimPayload(f)],...b})}buildParameters(f,b){const[e,c]=this.validateDeploymentConfig(f,b);return{abi:a.w,bytecode:p,args:[v(e)],...this.optionallyAttachAccount(c.account)}}};i.base="0x08AC38DB2f723Db15fa8Cd6c7Bb12C5dA5743875",i.registryType=I.RegistryType.INCENTIVE;let s=i;function v({asset:d,reward:f,limit:b}){return g.encodeAbiParameters([{type:"address",name:"asset"},{type:"uint256",name:"reward"},{type:"uint256",name:"limit"}],[d,f,b])}const r={[t.APointsIncentive]:h.PointsIncentive,[t.AERC20Incentive]:u.ERC20Incentive,"0x0a466e6f":o.AllowListIncentive,[t.ACGDAIncentive]:l.CGDAIncentive,[t.AERC20VariableIncentive]:s};async function C(d,f){const b=await y.readContract(d.config,{abi:a.G,functionName:"getComponentInterface",address:f}),e=r[b];if(!e)throw new A.InvalidComponentInterfaceError(Object.keys(r),b);return new e(d,f)}exports.AllowListIncentive=o.AllowListIncentive;exports.CGDAIncentive=l.CGDAIncentive;exports.ERC20Incentive=u.ERC20Incentive;exports.PointsIncentive=h.PointsIncentive;exports.ERC20VariableIncentive=s;exports.IncentiveByComponentInterface=r;exports.incentiveFromAddress=C;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../generated-DHerxf1y.cjs");require("../componentInterfaces-DRI_dQ-P.cjs");require("@wagmi/core");require("../errors.cjs");const n=require("./AllowListIncentive.cjs"),i=require("./CGDAIncentive.cjs"),t=require("./ERC20Incentive.cjs"),e=require("../Incentive-CcnOIc8L.cjs"),r=require("./PointsIncentive.cjs");exports.AllowListIncentive=n.AllowListIncentive;exports.CGDAIncentive=i.CGDAIncentive;exports.ERC20Incentive=t.ERC20Incentive;exports.ERC20VariableIncentive=e.ERC20VariableIncentive;exports.IncentiveByComponentInterface=e.IncentiveByComponentInterface;exports.incentiveFromAddress=e.incentiveFromAddress;exports.PointsIncentive=r.PointsIncentive;
2
2
  //# sourceMappingURL=Incentive.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Incentive.cjs","sources":["../../src/Incentives/ERC20VariableIncentive.ts","../../src/Incentives/Incentive.ts"],"sourcesContent":["import {\n erc20VariableIncentiveAbi,\n readErc20VariableIncentiveAsset,\n readErc20VariableIncentiveClaimed,\n readErc20VariableIncentiveClaims,\n readErc20VariableIncentiveCurrentReward,\n readErc20VariableIncentiveIsClaimable,\n readErc20VariableIncentiveLimit,\n readErc20VariableIncentiveOwner,\n readErc20VariableIncentiveReward,\n readErc20VariableIncentiveTotalClaimed,\n simulateErc20VariableIncentiveClaim,\n simulateErc20VariableIncentiveClawback,\n writeErc20VariableIncentiveClaim,\n writeErc20VariableIncentiveClawback,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/incentives/ERC20VariableIncentive.sol/ERC20VariableIncentive.json';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n} from 'viem';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport { type ClaimPayload, prepareClaimPayload } from '../claiming';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type WriteParams,\n} from '../utils';\n\nexport { erc20VariableIncentiveAbi };\n/**\n * The object representation of a `ERC20VariableIncentivePayload.InitPayload`\n *\n * @export\n * @interface ERC20VariableIncentivePayload\n * @typedef {ERC20VariableIncentivePayload}\n */\nexport interface ERC20VariableIncentivePayload {\n /**\n * The address of the incentivized asset.\n *\n * @type {Address}\n */\n asset: Address;\n /**\n * The amount of the asset to distribute.\n *\n * @type {bigint}\n */\n reward: bigint;\n /**\n * How many times can this incentive be claimed.\n *\n * @type {bigint}\n */\n limit: bigint;\n}\n\n/**\n * A generic `viem.Log` event with support for `ERC20VariableIncentive` event types.\n *\n * @export\n * @typedef {ERC20VariableIncentiveLog}\n * @template {ContractEventName<typeof erc20VariableIncentiveAbi>} [event=ContractEventName<\n * typeof erc20VariableIncentiveAbi\n * >]\n */\nexport type ERC20VariableIncentiveLog<\n event extends ContractEventName<\n typeof erc20VariableIncentiveAbi\n > = ContractEventName<typeof erc20VariableIncentiveAbi>,\n> = GenericLog<typeof erc20VariableIncentiveAbi, event>;\n\n/**\n * A simple ERC20 incentive implementation that allows claiming of tokens\n *\n * @export\n * @class ERC20VariableIncentive\n * @typedef {ERC20VariableIncentive}\n * @extends {DeployableTarget<ERC20VariableIncentivePayload>}\n */\nexport class ERC20VariableIncentive extends DeployableTarget<\n ERC20VariableIncentivePayload,\n typeof erc20VariableIncentiveAbi\n> {\n public override readonly abi = erc20VariableIncentiveAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Address}\n */\n public static override base: Address = import.meta.env\n .VITE_ERC20_VARIABLE_INCENTIVE_BASE;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.INCENTIVE;\n\n /**\n * The owner of the incentive\n *\n * @public\n * @async\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'owner'>} [params]\n * @returns {unknown}\n */\n public async owner(\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'owner'>,\n ) {\n return await readErc20VariableIncentiveOwner(this._config, {\n address: this.assertValidAddress(),\n args: [],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * The current reward\n *\n * @public\n * @async\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'currentReward'>} [params]\n * @returns {Promise<bigint>} - The current reward\n */\n public async totalClaimed(\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'totalClaimed'>,\n ) {\n return await readErc20VariableIncentiveTotalClaimed(this._config, {\n address: this.assertValidAddress(),\n args: [],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * The current reward\n *\n * @public\n * @async\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'currentReward'>} [params]\n * @returns {Promise<bigint>} - The current reward\n */\n public async currentReward(\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'currentReward'>,\n ) {\n return await readErc20VariableIncentiveCurrentReward(this._config, {\n address: this.assertValidAddress(),\n args: [],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * The number of claims that have been made\n *\n * @public\n * @async\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'claims'>} [params]\n * @returns {Promise<bigint>}\n */\n public async claims(\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'claims'>,\n ) {\n return await readErc20VariableIncentiveClaims(this._config, {\n address: this.assertValidAddress(),\n args: [],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * A mapping of address to claim status\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'claimed'>} [params]\n * @returns {Promise<boolean>}\n */\n public async claimed(\n address: Address,\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'claimed'>,\n ) {\n return await readErc20VariableIncentiveClaimed(this._config, {\n address: this.assertValidAddress(),\n args: [address],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * The address of the ERC20-like token\n *\n * @public\n * @async\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'asset'>} [params]\n * @returns {Promise<Address>}\n */\n public async asset(\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'asset'>,\n ) {\n return await readErc20VariableIncentiveAsset(this._config, {\n address: this.assertValidAddress(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * The reward amount issued for each claim\n *\n * @public\n * @async\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'reward'>} [params]\n * @returns {Promise<bigint>}\n */\n public async reward(\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'reward'>,\n ) {\n return await readErc20VariableIncentiveReward(this._config, {\n address: this.assertValidAddress(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * The limit (max claims, or max entries for raffles)\n *\n * @public\n * @async\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'limit'>} [params]\n * @returns {unknown}\n */\n public async limit(\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'limit'>,\n ) {\n return await readErc20VariableIncentiveLimit(this._config, {\n address: this.assertValidAddress(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Claim the incentive\n *\n * @public\n * @async\n * @param {ClaimPayload} payload\n * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>} [params]\n * @returns {Promise<boolean>} - Returns true if successfully claimed\n */\n protected async claim(\n payload: ClaimPayload,\n params?: WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>,\n ) {\n return await this.awaitResult(this.claimRaw(payload, params));\n }\n\n /**\n * Claim the incentive\n *\n * @public\n * @async\n * @param {ClaimPayload} payload\n * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>} [params]\n * @returns {Promise<boolean>} - Returns true if successfully claimed\n */\n protected async claimRaw(\n payload: ClaimPayload,\n params?: WriteParams<typeof erc20VariableIncentiveAbi, 'claim'>,\n ) {\n const { request, result } = await simulateErc20VariableIncentiveClaim(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareClaimPayload(payload)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeErc20VariableIncentiveClaim(this._config, request);\n return { hash, result };\n }\n\n /**\n * Clawback assets from the incentive\n *\n * @public\n * @async\n * @param {ClaimPayload} payload\n * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>} [params]\n * @returns {Promise<boolean>} - True if the assets were successfully clawbacked\n */\n public async clawback(\n payload: ClaimPayload,\n params?: WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>,\n ) {\n return await this.awaitResult(this.clawbackRaw(payload, params));\n }\n\n /**\n * Clawback assets from the incentive\n *\n * @public\n * @async\n * @param {ClaimPayload} payload\n * @param {?WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>} [params]\n * @returns {Promise<boolean>} - True if the assets were successfully clawbacked\n */\n public async clawbackRaw(\n payload: ClaimPayload,\n params?: WriteParams<typeof erc20VariableIncentiveAbi, 'clawback'>,\n ) {\n const { request, result } = await simulateErc20VariableIncentiveClawback(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [prepareClaimPayload(payload)],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeErc20VariableIncentiveClawback(\n this._config,\n request,\n );\n return { hash, result };\n }\n\n /**\n * Check if an incentive is claimable. For the POOL strategy, the `bytes data` portion of the payload ignored. The recipient must not have already claimed the incentive.\n *\n * @public\n * @async\n * @param {ClaimPayload} payload\n * @param {?ReadParams<typeof erc20VariableIncentiveAbi, 'isClaimable'>} [params]\n * @returns {unknown} = True if the incentive is claimable based on the data payload\n */\n public async isClaimable(\n payload: ClaimPayload,\n params?: ReadParams<typeof erc20VariableIncentiveAbi, 'isClaimable'>,\n ) {\n return await readErc20VariableIncentiveIsClaimable(this._config, {\n address: this.assertValidAddress(),\n args: [prepareClaimPayload(payload)],\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?ERC20VariableIncentivePayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: ERC20VariableIncentivePayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n return {\n abi: erc20VariableIncentiveAbi,\n bytecode: bytecode as Hex,\n args: [prepareERC20VariableIncentivePayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link ERC20VariableIncentivePayload}, properly encode a ` ERC20VariableIncentive.InitPayload` for use with {@link ERC20VariableIncentive} initialization.\n *\n * @param {ERC20VariableIncentivePayload} param0\n * @param {Address} param0.asset - The address of the incentivized asset.\n * @param {bigint} param0.reward - The amount of the asset to distribute.\n * @param {bigint} param0.limit - How many times can this incentive be claimed.\n * @returns {*}\n */\nexport function prepareERC20VariableIncentivePayload({\n asset,\n reward,\n limit,\n}: ERC20VariableIncentivePayload) {\n return encodeAbiParameters(\n [\n { type: 'address', name: 'asset' },\n { type: 'uint256', name: 'reward' },\n { type: 'uint256', name: 'limit' },\n ],\n [asset, reward, limit],\n );\n}\n","import { aIncentiveAbi } from '@boostxyz/evm';\nimport {\n AAllowListIncentive,\n ACGDAIncentive,\n AERC20Incentive,\n AERC20VariableIncentive,\n APointsIncentive,\n} from '@boostxyz/evm/deploys/componentInterfaces.json';\nimport { readContract } from '@wagmi/core';\nimport type { Address, Hex } from 'viem';\nimport type { DeployableOptions } from '../Deployable/Deployable';\nimport { InvalidComponentInterfaceError } from '../errors';\nimport { AllowListIncentive } from './AllowListIncentive';\nimport { CGDAIncentive } from './CGDAIncentive';\nimport { ERC20Incentive } from './ERC20Incentive';\nimport { ERC20VariableIncentive } from './ERC20VariableIncentive';\n// import { ERC1155Incentive } from './ERC1155Incentive';\nimport { PointsIncentive } from './PointsIncentive';\n\nexport {\n AllowListIncentive,\n CGDAIncentive,\n // ERC1155Incentive,\n ERC20Incentive,\n PointsIncentive,\n ERC20VariableIncentive,\n};\n\n/**\n * A union type representing all valid protocol Incentive implementations\n *\n * @export\n * @typedef {Incentive}\n */\nexport type Incentive =\n | AllowListIncentive\n | CGDAIncentive\n | ERC20Incentive\n // | ERC1155Incentive\n | PointsIncentive\n | ERC20VariableIncentive;\n\n/**\n * A map of Incentive component interfaces to their constructors.\n *\n * @type {{ \"0xc5b24b8e\": typeof PointsIncentive; \"0x8c901437\": typeof ERC20Incentive; \"0x0a466e6f\": typeof AllowListIncentive; \"0xa39e44d9\": typeof CGDAIncentive; \"0x6060409d\": typeof ERC20VariableIncentive }}\n */\nexport const IncentiveByComponentInterface = {\n [APointsIncentive as Hex]: PointsIncentive,\n [AERC20Incentive as Hex]: ERC20Incentive,\n // TODO: figure out why evm generates bad bytes4 here\n ['0x0a466e6f']: AllowListIncentive,\n // [APointsIncentive as Hex]: ERC1155Incentive,\n [ACGDAIncentive as Hex]: CGDAIncentive,\n [AERC20VariableIncentive as Hex]: ERC20VariableIncentive,\n};\n\n/**\n * A function that will read a contract's component interface using `getComponentInterface` and return the correct instantiated instance.\n *\n * @export\n * @async\n * @param {DeployableOptions} options\n * @param {Address} address\n * @returns {unknown}\n * @throws {@link InvalidComponentInterfaceError}\n */\nexport async function incentiveFromAddress(\n options: DeployableOptions,\n address: Address,\n) {\n const interfaceId = (await readContract(options.config, {\n abi: aIncentiveAbi,\n functionName: 'getComponentInterface',\n address,\n })) as keyof typeof IncentiveByComponentInterface;\n const Ctor = IncentiveByComponentInterface[interfaceId];\n if (!Ctor) {\n throw new InvalidComponentInterfaceError(\n Object.keys(IncentiveByComponentInterface) as Hex[],\n interfaceId as Hex,\n );\n }\n return new Ctor(options, address);\n}\n"],"names":["_ERC20VariableIncentive","DeployableTarget","erc20VariableIncentiveAbi","params","readErc20VariableIncentiveOwner","readErc20VariableIncentiveTotalClaimed","readErc20VariableIncentiveCurrentReward","readErc20VariableIncentiveClaims","address","readErc20VariableIncentiveClaimed","readErc20VariableIncentiveAsset","readErc20VariableIncentiveReward","readErc20VariableIncentiveLimit","payload","request","result","simulateErc20VariableIncentiveClaim","prepareClaimPayload","writeErc20VariableIncentiveClaim","simulateErc20VariableIncentiveClawback","writeErc20VariableIncentiveClawback","readErc20VariableIncentiveIsClaimable","_payload","_options","options","bytecode","prepareERC20VariableIncentivePayload","RegistryType","ERC20VariableIncentive","asset","reward","limit","encodeAbiParameters","IncentiveByComponentInterface","APointsIncentive","PointsIncentive","AERC20Incentive","ERC20Incentive","AllowListIncentive","ACGDAIncentive","CGDAIncentive","AERC20VariableIncentive","incentiveFromAddress","interfaceId","readContract","aIncentiveAbi","Ctor","InvalidComponentInterfaceError"],"mappings":"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"}
1
+ {"version":3,"file":"Incentive.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -3,6 +3,7 @@ import type { DeployableOptions } from '../Deployable/Deployable';
3
3
  import { AllowListIncentive } from './AllowListIncentive';
4
4
  import { CGDAIncentive } from './CGDAIncentive';
5
5
  import { ERC20Incentive } from './ERC20Incentive';
6
+ import type { ERC20VariableCriteriaIncentive } from './ERC20VariableCriteriaIncentive';
6
7
  import { ERC20VariableIncentive } from './ERC20VariableIncentive';
7
8
  import { PointsIncentive } from './PointsIncentive';
8
9
  export { AllowListIncentive, CGDAIncentive, ERC20Incentive, PointsIncentive, ERC20VariableIncentive, };
@@ -12,15 +13,14 @@ export { AllowListIncentive, CGDAIncentive, ERC20Incentive, PointsIncentive, ERC
12
13
  * @export
13
14
  * @typedef {Incentive}
14
15
  */
15
- export type Incentive = AllowListIncentive | CGDAIncentive | ERC20Incentive | PointsIncentive | ERC20VariableIncentive;
16
+ export type Incentive = AllowListIncentive | CGDAIncentive | ERC20Incentive | PointsIncentive | ERC20VariableIncentive | ERC20VariableCriteriaIncentive;
16
17
  /**
17
18
  * A map of Incentive component interfaces to their constructors.
18
19
  *
19
- * @type {{ "0xc5b24b8e": typeof PointsIncentive; "0x8c901437": typeof ERC20Incentive; "0x0a466e6f": typeof AllowListIncentive; "0xa39e44d9": typeof CGDAIncentive; "0x6060409d": typeof ERC20VariableIncentive }}
20
+ * @type {{ "0xc5b24b8e": typeof PointsIncentive; "0x8c901437": typeof ERC20Incentive; "0x4414fbb4": typeof AllowListIncentive; "0xa39e44d9": typeof CGDAIncentive; "0xa8e4af1e": typeof ERC20VariableIncentive }}
20
21
  */
21
22
  export declare const IncentiveByComponentInterface: {
22
23
  [x: string]: typeof AllowListIncentive | typeof CGDAIncentive | typeof ERC20Incentive | typeof ERC20VariableIncentive | typeof PointsIncentive;
23
- "0x0a466e6f": typeof AllowListIncentive;
24
24
  };
25
25
  /**
26
26
  * A function that will read a contract's component interface using `getComponentInterface` and return the correct instantiated instance.
@@ -29,7 +29,7 @@ export declare const IncentiveByComponentInterface: {
29
29
  * @async
30
30
  * @param {DeployableOptions} options
31
31
  * @param {Address} address
32
- * @returns {unknown}
32
+ * @returns {Incentive}
33
33
  * @throws {@link InvalidComponentInterfaceError}
34
34
  */
35
35
  export declare function incentiveFromAddress(options: DeployableOptions, address: Address): Promise<AllowListIncentive | CGDAIncentive | ERC20Incentive | ERC20VariableIncentive | PointsIncentive>;
@@ -1 +1 @@
1
- {"version":3,"file":"Incentive.d.ts","sourceRoot":"","sources":["../../src/Incentives/Incentive.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,kBAAkB,EAClB,aAAa,EAEb,cAAc,EACd,eAAe,EACf,sBAAsB,GACvB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,aAAa,GACb,cAAc,GAEd,eAAe,GACf,sBAAsB,CAAC;AAE3B;;;;GAIG;AACH,eAAO,MAAM,6BAA6B;;;CAQzC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,OAAO,2GAejB"}
1
+ {"version":3,"file":"Incentive.d.ts","sourceRoot":"","sources":["../../src/Incentives/Incentive.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAO,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EACL,kBAAkB,EAClB,aAAa,EAEb,cAAc,EACd,eAAe,EACf,sBAAsB,GACvB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,aAAa,GACb,cAAc,GAEd,eAAe,GACf,sBAAsB,GACtB,8BAA8B,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,6BAA6B;;CAOzC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,OAAO,2GAejB"}