@boostxyz/sdk 0.0.0-alpha.2 → 0.0.0-alpha.21

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 (271) hide show
  1. package/dist/Actions/Action.cjs +2 -1
  2. package/dist/Actions/Action.cjs.map +1 -0
  3. package/dist/Actions/Action.d.ts +1 -1
  4. package/dist/Actions/Action.d.ts.map +1 -1
  5. package/dist/Actions/Action.js +14 -12
  6. package/dist/Actions/Action.js.map +1 -0
  7. package/dist/Actions/ContractAction.d.ts +57 -14
  8. package/dist/Actions/ContractAction.d.ts.map +1 -1
  9. package/dist/Actions/ERC721MintAction.d.ts +50 -23
  10. package/dist/Actions/ERC721MintAction.d.ts.map +1 -1
  11. package/dist/Actions/EventAction.cjs +2 -1
  12. package/dist/Actions/EventAction.cjs.map +1 -0
  13. package/dist/Actions/EventAction.d.ts +405 -36
  14. package/dist/Actions/EventAction.d.ts.map +1 -1
  15. package/dist/Actions/EventAction.js +15 -209
  16. package/dist/Actions/EventAction.js.map +1 -0
  17. package/dist/AllowLists/AllowList.cjs +2 -1
  18. package/dist/AllowLists/AllowList.cjs.map +1 -0
  19. package/dist/AllowLists/AllowList.d.ts +6 -5
  20. package/dist/AllowLists/AllowList.d.ts.map +1 -1
  21. package/dist/AllowLists/AllowList.js +46 -22
  22. package/dist/AllowLists/AllowList.js.map +1 -0
  23. package/dist/AllowLists/OpenAllowList.d.ts +423 -0
  24. package/dist/AllowLists/OpenAllowList.d.ts.map +1 -0
  25. package/dist/AllowLists/SimpleAllowList.cjs +2 -1
  26. package/dist/AllowLists/SimpleAllowList.cjs.map +1 -0
  27. package/dist/AllowLists/SimpleAllowList.d.ts +124 -40
  28. package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -1
  29. package/dist/AllowLists/SimpleAllowList.js +76 -76
  30. package/dist/AllowLists/SimpleAllowList.js.map +1 -0
  31. package/dist/AllowLists/SimpleDenyList.cjs +2 -1
  32. package/dist/AllowLists/SimpleDenyList.cjs.map +1 -0
  33. package/dist/AllowLists/SimpleDenyList.d.ts +234 -13
  34. package/dist/AllowLists/SimpleDenyList.d.ts.map +1 -1
  35. package/dist/AllowLists/SimpleDenyList.js +12 -200
  36. package/dist/AllowLists/SimpleDenyList.js.map +1 -0
  37. package/dist/Auth/Auth.cjs +1 -0
  38. package/dist/Auth/Auth.cjs.map +1 -0
  39. package/dist/Auth/Auth.js +1 -0
  40. package/dist/Auth/Auth.js.map +1 -0
  41. package/dist/Auth/PassthroughAuth.cjs +2 -1
  42. package/dist/Auth/PassthroughAuth.cjs.map +1 -0
  43. package/dist/Auth/PassthroughAuth.js +5 -4
  44. package/dist/Auth/PassthroughAuth.js.map +1 -0
  45. package/dist/Boost.cjs +2 -1
  46. package/dist/Boost.cjs.map +1 -0
  47. package/dist/Boost.d.ts +105 -14
  48. package/dist/Boost.d.ts.map +1 -1
  49. package/dist/Boost.js +138 -5
  50. package/dist/Boost.js.map +1 -0
  51. package/dist/BoostCore-DolmDuXW.cjs +3 -0
  52. package/dist/BoostCore-DolmDuXW.cjs.map +1 -0
  53. package/dist/BoostCore-Z97KVu4V.js +1448 -0
  54. package/dist/BoostCore-Z97KVu4V.js.map +1 -0
  55. package/dist/BoostCore.cjs +2 -2
  56. package/dist/BoostCore.cjs.map +1 -0
  57. package/dist/BoostCore.d.ts +788 -79
  58. package/dist/BoostCore.d.ts.map +1 -1
  59. package/dist/BoostCore.js +30 -1103
  60. package/dist/BoostCore.js.map +1 -0
  61. package/dist/BoostRegistry.cjs +2 -1
  62. package/dist/BoostRegistry.cjs.map +1 -0
  63. package/dist/BoostRegistry.d.ts +95 -26
  64. package/dist/BoostRegistry.d.ts.map +1 -1
  65. package/dist/BoostRegistry.js +183 -89
  66. package/dist/BoostRegistry.js.map +1 -0
  67. package/dist/Budgets/Budget.cjs +2 -1
  68. package/dist/Budgets/Budget.cjs.map +1 -0
  69. package/dist/Budgets/Budget.d.ts +1 -1
  70. package/dist/Budgets/Budget.d.ts.map +1 -1
  71. package/dist/Budgets/Budget.js +15 -13
  72. package/dist/Budgets/Budget.js.map +1 -0
  73. package/dist/Budgets/ManagedBudget.cjs +2 -1
  74. package/dist/Budgets/ManagedBudget.cjs.map +1 -0
  75. package/dist/Budgets/ManagedBudget.d.ts +112 -192
  76. package/dist/Budgets/ManagedBudget.d.ts.map +1 -1
  77. package/dist/Budgets/ManagedBudget.js +91 -291
  78. package/dist/Budgets/ManagedBudget.js.map +1 -0
  79. package/dist/Budgets/VestingBudget.d.ts +277 -91
  80. package/dist/Budgets/VestingBudget.d.ts.map +1 -1
  81. package/dist/Deployable/Contract.cjs +2 -1
  82. package/dist/Deployable/Contract.cjs.map +1 -0
  83. package/dist/Deployable/Contract.d.ts +4 -5
  84. package/dist/Deployable/Contract.d.ts.map +1 -1
  85. package/dist/Deployable/Contract.js +7 -8
  86. package/dist/Deployable/Contract.js.map +1 -0
  87. package/dist/Deployable/Deployable.cjs +1 -0
  88. package/dist/Deployable/Deployable.cjs.map +1 -0
  89. package/dist/Deployable/Deployable.d.ts +9 -3
  90. package/dist/Deployable/Deployable.d.ts.map +1 -1
  91. package/dist/Deployable/Deployable.js +10 -5
  92. package/dist/Deployable/Deployable.js.map +1 -0
  93. package/dist/Deployable/DeployableTarget.cjs +2 -1
  94. package/dist/Deployable/DeployableTarget.cjs.map +1 -0
  95. package/dist/Deployable/DeployableTarget.d.ts +16 -15
  96. package/dist/Deployable/DeployableTarget.d.ts.map +1 -1
  97. package/dist/Deployable/DeployableTarget.js +49 -42
  98. package/dist/Deployable/DeployableTarget.js.map +1 -0
  99. package/dist/Deployable/DeployableTargetWithRBAC.cjs +2 -0
  100. package/dist/Deployable/DeployableTargetWithRBAC.cjs.map +1 -0
  101. package/dist/Deployable/DeployableTargetWithRBAC.d.ts +179 -0
  102. package/dist/Deployable/DeployableTargetWithRBAC.d.ts.map +1 -0
  103. package/dist/Deployable/DeployableTargetWithRBAC.js +222 -0
  104. package/dist/Deployable/DeployableTargetWithRBAC.js.map +1 -0
  105. package/dist/EventAction-CBKzuNoN.cjs +2 -0
  106. package/dist/EventAction-CBKzuNoN.cjs.map +1 -0
  107. package/dist/EventAction-DWuuc_Qy.js +1528 -0
  108. package/dist/EventAction-DWuuc_Qy.js.map +1 -0
  109. package/dist/Incentive-BxzEtN26.js +298 -0
  110. package/dist/Incentive-BxzEtN26.js.map +1 -0
  111. package/dist/Incentive-CrF3-ayL.cjs +2 -0
  112. package/dist/Incentive-CrF3-ayL.cjs.map +1 -0
  113. package/dist/Incentives/AllowListIncentive.cjs +2 -1
  114. package/dist/Incentives/AllowListIncentive.cjs.map +1 -0
  115. package/dist/Incentives/AllowListIncentive.d.ts +65 -21
  116. package/dist/Incentives/AllowListIncentive.d.ts.map +1 -1
  117. package/dist/Incentives/AllowListIncentive.js +52 -36
  118. package/dist/Incentives/AllowListIncentive.js.map +1 -0
  119. package/dist/Incentives/CGDAIncentive.cjs +2 -1
  120. package/dist/Incentives/CGDAIncentive.cjs.map +1 -0
  121. package/dist/Incentives/CGDAIncentive.d.ts +315 -26
  122. package/dist/Incentives/CGDAIncentive.d.ts.map +1 -1
  123. package/dist/Incentives/CGDAIncentive.js +64 -39
  124. package/dist/Incentives/CGDAIncentive.js.map +1 -0
  125. package/dist/Incentives/ERC1155Incentive.d.ts +291 -43
  126. package/dist/Incentives/ERC1155Incentive.d.ts.map +1 -1
  127. package/dist/Incentives/ERC20Incentive.cjs +2 -1
  128. package/dist/Incentives/ERC20Incentive.cjs.map +1 -0
  129. package/dist/Incentives/ERC20Incentive.d.ts +270 -33
  130. package/dist/Incentives/ERC20Incentive.d.ts.map +1 -1
  131. package/dist/Incentives/ERC20Incentive.js +69 -46
  132. package/dist/Incentives/ERC20Incentive.js.map +1 -0
  133. package/dist/{Budgets/SimpleBudget.d.ts → Incentives/ERC20VariableCriteriaIncentive.d.ts} +338 -421
  134. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts.map +1 -0
  135. package/dist/Incentives/ERC20VariableIncentive.d.ts +262 -32
  136. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  137. package/dist/Incentives/Incentive.cjs +2 -1
  138. package/dist/Incentives/Incentive.cjs.map +1 -0
  139. package/dist/Incentives/Incentive.d.ts +5 -8
  140. package/dist/Incentives/Incentive.d.ts.map +1 -1
  141. package/dist/Incentives/Incentive.js +17 -278
  142. package/dist/Incentives/Incentive.js.map +1 -0
  143. package/dist/Incentives/PointsIncentive.cjs +2 -1
  144. package/dist/Incentives/PointsIncentive.cjs.map +1 -0
  145. package/dist/Incentives/PointsIncentive.d.ts +81 -23
  146. package/dist/Incentives/PointsIncentive.d.ts.map +1 -1
  147. package/dist/Incentives/PointsIncentive.js +57 -36
  148. package/dist/Incentives/PointsIncentive.js.map +1 -0
  149. package/dist/SimpleDenyList-BUR17Tt1.cjs +2 -0
  150. package/dist/SimpleDenyList-BUR17Tt1.cjs.map +1 -0
  151. package/dist/SimpleDenyList-CGaWjuld.js +132 -0
  152. package/dist/SimpleDenyList-CGaWjuld.js.map +1 -0
  153. package/dist/Validators/SignerValidator.cjs +2 -1
  154. package/dist/Validators/SignerValidator.cjs.map +1 -0
  155. package/dist/Validators/SignerValidator.d.ts +310 -17
  156. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  157. package/dist/Validators/SignerValidator.js +165 -36
  158. package/dist/Validators/SignerValidator.js.map +1 -0
  159. package/dist/Validators/Validator.cjs +2 -1
  160. package/dist/Validators/Validator.cjs.map +1 -0
  161. package/dist/Validators/Validator.d.ts +2 -2
  162. package/dist/Validators/Validator.d.ts.map +1 -1
  163. package/dist/Validators/Validator.js +10 -8
  164. package/dist/Validators/Validator.js.map +1 -0
  165. package/dist/claiming.cjs +2 -0
  166. package/dist/claiming.cjs.map +1 -0
  167. package/dist/claiming.d.ts +43 -0
  168. package/dist/claiming.d.ts.map +1 -0
  169. package/dist/claiming.js +17 -0
  170. package/dist/claiming.js.map +1 -0
  171. package/dist/componentInterfaces-BBCFkrZv.js +14 -0
  172. package/dist/componentInterfaces-BBCFkrZv.js.map +1 -0
  173. package/dist/componentInterfaces-DRI_dQ-P.cjs +2 -0
  174. package/dist/componentInterfaces-DRI_dQ-P.cjs.map +1 -0
  175. package/dist/deployments-DVXioW2i.cjs +2 -0
  176. package/dist/deployments-DVXioW2i.cjs.map +1 -0
  177. package/dist/deployments-oykLv3_Z.js +43 -0
  178. package/dist/deployments-oykLv3_Z.js.map +1 -0
  179. package/dist/deployments.json +44 -0
  180. package/dist/errors.cjs +2 -1
  181. package/dist/errors.cjs.map +1 -0
  182. package/dist/errors.d.ts +421 -1
  183. package/dist/errors.d.ts.map +1 -1
  184. package/dist/errors.js +297 -39
  185. package/dist/errors.js.map +1 -0
  186. package/dist/{generated-x_abr3Yv.js → generated-CKt2yCQd.js} +3143 -3002
  187. package/dist/generated-CKt2yCQd.js.map +1 -0
  188. package/dist/generated-CyTNlOwM.cjs +3 -0
  189. package/dist/generated-CyTNlOwM.cjs.map +1 -0
  190. package/dist/index.cjs +2 -1
  191. package/dist/index.cjs.map +1 -0
  192. package/dist/index.d.ts +10 -9
  193. package/dist/index.d.ts.map +1 -1
  194. package/dist/index.js +144 -1353
  195. package/dist/index.js.map +1 -0
  196. package/dist/transfers.cjs +2 -0
  197. package/dist/transfers.cjs.map +1 -0
  198. package/dist/transfers.d.ts +198 -0
  199. package/dist/transfers.d.ts.map +1 -0
  200. package/dist/transfers.js +84 -0
  201. package/dist/transfers.js.map +1 -0
  202. package/dist/utils.cjs +2 -1
  203. package/dist/utils.cjs.map +1 -0
  204. package/dist/utils.d.ts +26 -1350
  205. package/dist/utils.d.ts.map +1 -1
  206. package/dist/utils.js +38 -636
  207. package/dist/utils.js.map +1 -0
  208. package/package.json +37 -11
  209. package/src/Actions/Action.test.ts +79 -0
  210. package/src/Actions/Action.ts +61 -0
  211. package/src/Actions/ContractAction.test.ts +197 -0
  212. package/src/Actions/ContractAction.ts +300 -0
  213. package/src/Actions/ERC721MintAction.test.ts +112 -0
  214. package/src/Actions/ERC721MintAction.ts +291 -0
  215. package/src/Actions/EventAction.test.ts +787 -0
  216. package/src/Actions/EventAction.ts +1218 -0
  217. package/src/AllowLists/AllowList.test.ts +64 -0
  218. package/src/AllowLists/AllowList.ts +62 -0
  219. package/src/AllowLists/OpenAllowList.test.ts +40 -0
  220. package/src/AllowLists/OpenAllowList.ts +45 -0
  221. package/src/AllowLists/SimpleAllowList.test.ts +52 -0
  222. package/src/AllowLists/SimpleAllowList.ts +262 -0
  223. package/src/AllowLists/SimpleDenyList.test.ts +52 -0
  224. package/src/AllowLists/SimpleDenyList.ts +250 -0
  225. package/src/Auth/Auth.ts +11 -0
  226. package/src/Auth/PassthroughAuth.test.ts +12 -0
  227. package/src/Auth/PassthroughAuth.ts +80 -0
  228. package/src/Boost.ts +287 -0
  229. package/src/BoostCore.test.ts +894 -0
  230. package/src/BoostCore.ts +1438 -0
  231. package/src/BoostRegistry.test.ts +53 -0
  232. package/src/BoostRegistry.ts +588 -0
  233. package/src/Budgets/Budget.test.ts +27 -0
  234. package/src/Budgets/Budget.ts +60 -0
  235. package/src/Budgets/ManagedBudget.test.ts +217 -0
  236. package/src/Budgets/ManagedBudget.ts +534 -0
  237. package/src/Budgets/VestingBudget.test.ts +123 -0
  238. package/src/Budgets/VestingBudget.ts +530 -0
  239. package/src/Deployable/Contract.ts +228 -0
  240. package/src/Deployable/Deployable.ts +250 -0
  241. package/src/Deployable/DeployableTarget.ts +234 -0
  242. package/src/Deployable/DeployableTargetWithRBAC.ts +323 -0
  243. package/src/Incentives/AllowListIncentive.test.ts +143 -0
  244. package/src/Incentives/AllowListIncentive.ts +336 -0
  245. package/src/Incentives/CGDAIncentive.test.ts +135 -0
  246. package/src/Incentives/CGDAIncentive.ts +476 -0
  247. package/src/Incentives/ERC1155Incentive.test.ts +87 -0
  248. package/src/Incentives/ERC1155Incentive.ts +465 -0
  249. package/src/Incentives/ERC20Incentive.test.ts +133 -0
  250. package/src/Incentives/ERC20Incentive.ts +490 -0
  251. package/src/Incentives/ERC20VariableCriteriaIncentive.test.ts +184 -0
  252. package/src/Incentives/ERC20VariableCriteriaIncentive.ts +309 -0
  253. package/src/Incentives/ERC20VariableIncentive.test.ts +139 -0
  254. package/src/Incentives/ERC20VariableIncentive.ts +428 -0
  255. package/src/Incentives/Incentive.test.ts +95 -0
  256. package/src/Incentives/Incentive.ts +86 -0
  257. package/src/Incentives/PointsIncentive.test.ts +138 -0
  258. package/src/Incentives/PointsIncentive.ts +367 -0
  259. package/src/Validators/SignerValidator.test.ts +159 -0
  260. package/src/Validators/SignerValidator.ts +683 -0
  261. package/src/Validators/Validator.test.ts +21 -0
  262. package/src/Validators/Validator.ts +55 -0
  263. package/src/claiming.ts +56 -0
  264. package/src/errors.ts +866 -0
  265. package/src/index.test.ts +122 -0
  266. package/src/index.ts +58 -0
  267. package/src/transfers.ts +284 -0
  268. package/src/utils.test.ts +44 -0
  269. package/src/utils.ts +247 -0
  270. package/dist/Budgets/SimpleBudget.d.ts.map +0 -1
  271. package/dist/generated-BaaleHW-.cjs +0 -2
@@ -1,7 +1,10 @@
1
- import { ac as t, ad as i, ae as n, af as o, ag as h, ah as l, ai as y, aj as u, ak as g, al as m, am as w, an as p, ao as A, ap as V } from "../generated-x_abr3Yv.js";
2
- import { DeployableTarget as _ } from "../Deployable/DeployableTarget.js";
3
- import { RegistryType as R, prepareClaimPayload as s, prepareCGDAIncentivePayload as B } from "../utils.js";
4
- const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f602c608760201b60201c565b90508054600181161560455763f92ee8a95f526004601cfd5b8160c01c808260011c146082578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b611cb4806100bd5f395ff3fe608060405260043610610129575f3560e01c8063715018a6116100aa578063c884ef831161006e578063c884ef831461038c578063db09da12146103c8578063dcc59b6f14610404578063f04e283e1461042e578063f2fde38b1461044a578063fee81cf41461046657610129565b8063715018a6146102c557806375ef18d0146102cf5780638da5cb5b146102fc578063bb1757cf14610326578063c78da39a1461036257610129565b806338d52e0f116100f157806338d52e0f146101f1578063439fab911461021b578063474f5a44146102435780634e7165a21461027f57806354d1f13d146102bb57610129565b806301ffc9a71461012d57806307621eca14610169578063228cb7331461019357806325692962146101bd57806328d6183b146101c7575b5f80fd5b348015610138575f80fd5b50610153600480360381019061014e9190611267565b6104a2565b60405161016091906112ac565b60405180910390f35b348015610174575f80fd5b5061017d61051b565b60405161018a91906112dd565b60405180910390f35b34801561019e575f80fd5b506101a76105c5565b6040516101b491906112dd565b60405180910390f35b6101c56105cb565b005b3480156101d2575f80fd5b506101db61061c565b6040516101e89190611305565b60405180910390f35b3480156101fc575f80fd5b50610205610643565b604051610212919061135d565b60405180910390f35b348015610226575f80fd5b50610241600480360381019061023c91906113d7565b610668565b005b34801561024e575f80fd5b50610269600480360381019061026491906113d7565b610890565b60405161027691906112ac565b60405180910390f35b34801561028a575f80fd5b506102a560048036038101906102a091906113d7565b6109b9565b6040516102b29190611492565b60405180910390f35b6102c3610a89565b005b6102cd610ac2565b005b3480156102da575f80fd5b506102e3610ad5565b6040516102f394939291906114b2565b60405180910390f35b348015610307575f80fd5b50610310610af2565b60405161031d919061135d565b60405180910390f35b348015610331575f80fd5b5061034c6004803603810190610347919061151f565b610b1a565b60405161035991906112ac565b60405180910390f35b34801561036d575f80fd5b50610376610ca6565b60405161038391906112dd565b60405180910390f35b348015610397575f80fd5b506103b260048036038101906103ad919061157c565b610cac565b6040516103bf91906112ac565b60405180910390f35b3480156103d3575f80fd5b506103ee60048036038101906103e9919061151f565b610cc9565b6040516103fb91906112ac565b60405180910390f35b34801561040f575f80fd5b50610418610cdc565b60405161042591906112dd565b60405180910390f35b6104486004803603810190610443919061157c565b610ce1565b005b610464600480360381019061045f919061157c565b610d1f565b005b348015610471575f80fd5b5061048c6004803603810190610487919061157c565b610d48565b60405161049991906112dd565b60405180910390f35b5f7fa39e44d9000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610514575061051382610d61565b5b9050919050565b5f806004600201544261052e91906115d4565b90505f61057b3060035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610dda90919063ffffffff16565b90505f610e10600460010154846105929190611607565b61059c9190611675565b6004600301546105ac91906116a5565b90508181116105bb57806105bd565b815b935050505090565b60015481565b5f6105d4610e0d565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7fa39e44d900000000000000000000000000000000000000000000000000000000905090565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f610671610e17565b905080546003825580156106a35760018160011c14303b1061069a5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f83838101906106b4919061180b565b90505f6106e330835f015173ffffffffffffffffffffffffffffffffffffffff16610dda90919063ffffffff16565b9050816080015181101561073957815f01518183608001516040517f5c54305e00000000000000000000000000000000000000000000000000000000815260040161073093929190611836565b60405180910390fd5b5f8260200151148061074e57505f8260400151145b8061075c57505f8260600151145b8061076e575081602001518260800151105b156107a5576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f015160035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060405180608001604052808360400151815260200183606001518152602001428152602001836020015181525060045f820151815f0155602082015181600101556040820151816002015560608201518160030155905050816080015160088190555061085433610e40565b5050801561088b576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f610899610f16565b5f83838101906108a99190611984565b90505f81602001518060200190518101906108c491906119df565b9050610915825f01518260035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f4d9092919063ffffffff16565b815f015173ffffffffffffffffffffffffffffffffffffffff167f9ad2e7a4af16dceda9cce4274b2f59c328d8c012eb0e15eb5e1e73b7d8f264d360035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16845f01518460405160200161098993929190611a6f565b6040516020818303038152906040526040516109a59190611492565b60405180910390a260019250505092915050565b60605f83838101906109cb919061180b565b90506040518060800160405280600160028111156109ec576109eb611aab565b5b8152602001825f015173ffffffffffffffffffffffffffffffffffffffff1681526020013073ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052808460800151815250604051602001610a4f9190611b01565b604051602081830303815290604052815250604051602001610a719190611c17565b60405160208183030381529060405291505092915050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b610aca610f16565b610ad35f610f96565b565b6004805f0154908060010154908060020154908060030154905084565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b5f610b23610f16565b610b2c8461105c565b610b62576040517f6247a84e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80815480929190610b7390611c37565b91905055505f610b8161051b565b90504260046002018190555060045f01548111610ba25760045f0154610bb3565b60045f015481610bb291906115d4565b5b600460030181905550610c08858260035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610f4d9092919063ffffffff16565b8473ffffffffffffffffffffffffffffffffffffffff167f9ad2e7a4af16dceda9cce4274b2f59c328d8c012eb0e15eb5e1e73b7d8f264d360035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168784604051602001610c7693929190611a6f565b604051602081830303815290604052604051610c929190611492565b60405180910390a260019150509392505050565b60085481565b6002602052805f5260405f205f915054906101000a900460ff1681565b5f610cd38461105c565b90509392505050565b5f5481565b610ce9610f16565b63389a75e1600c52805f526020600c208054421115610d0f57636f5e88185f526004601cfd5b5f815550610d1c81610f96565b50565b610d27610f16565b8060601b610d3c57637448fbae5f526004601cfd5b610d4581610f96565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7f5970a689000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610dd35750610dd28261111b565b5b9050919050565b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b5f6202a300905090565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b610e48611194565b15610ec0577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927805415610e8257630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350610f13565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610f4b576382b429005f526004601cfd5b565b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af13d1560015f51141716610f8d576390b8ec185f526004601cfd5b5f603452505050565b610f9e611194565b15611003577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550611059565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f8061106661051b565b90505f811180156110c05750806110bd3060035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610dda90919063ffffffff16565b10155b8015611113575060025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b915050919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061118d575061118c82611198565b5b9050919050565b5f90565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61124681611212565b8114611250575f80fd5b50565b5f813590506112618161123d565b92915050565b5f6020828403121561127c5761127b61120a565b5b5f61128984828501611253565b91505092915050565b5f8115159050919050565b6112a681611292565b82525050565b5f6020820190506112bf5f83018461129d565b92915050565b5f819050919050565b6112d7816112c5565b82525050565b5f6020820190506112f05f8301846112ce565b92915050565b6112ff81611212565b82525050565b5f6020820190506113185f8301846112f6565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6113478261131e565b9050919050565b6113578161133d565b82525050565b5f6020820190506113705f83018461134e565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261139757611396611376565b5b8235905067ffffffffffffffff8111156113b4576113b361137a565b5b6020830191508360018202830111156113d0576113cf61137e565b5b9250929050565b5f80602083850312156113ed576113ec61120a565b5b5f83013567ffffffffffffffff81111561140a5761140961120e565b5b61141685828601611382565b92509250509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61146482611422565b61146e818561142c565b935061147e81856020860161143c565b6114878161144a565b840191505092915050565b5f6020820190508181035f8301526114aa818461145a565b905092915050565b5f6080820190506114c55f8301876112ce565b6114d260208301866112ce565b6114df60408301856112ce565b6114ec60608301846112ce565b95945050505050565b6114fe8161133d565b8114611508575f80fd5b50565b5f81359050611519816114f5565b92915050565b5f805f604084860312156115365761153561120a565b5b5f6115438682870161150b565b935050602084013567ffffffffffffffff8111156115645761156361120e565b5b61157086828701611382565b92509250509250925092565b5f602082840312156115915761159061120a565b5b5f61159e8482850161150b565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6115de826112c5565b91506115e9836112c5565b9250828203905081811115611601576116006115a7565b5b92915050565b5f611611826112c5565b915061161c836112c5565b925082820261162a816112c5565b91508282048414831517611641576116406115a7565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61167f826112c5565b915061168a836112c5565b92508261169a57611699611648565b5b828204905092915050565b5f6116af826112c5565b91506116ba836112c5565b92508282019050808211156116d2576116d16115a7565b5b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6117128261144a565b810181811067ffffffffffffffff82111715611731576117306116dc565b5b80604052505050565b5f611743611201565b905061174f8282611709565b919050565b5f80fd5b611761816112c5565b811461176b575f80fd5b50565b5f8135905061177c81611758565b92915050565b5f60a08284031215611797576117966116d8565b5b6117a160a061173a565b90505f6117b08482850161150b565b5f8301525060206117c38482850161176e565b60208301525060406117d78482850161176e565b60408301525060606117eb8482850161176e565b60608301525060806117ff8482850161176e565b60808301525092915050565b5f60a082840312156118205761181f61120a565b5b5f61182d84828501611782565b91505092915050565b5f6060820190506118495f83018661134e565b61185660208301856112ce565b61186360408301846112ce565b949350505050565b5f80fd5b5f67ffffffffffffffff821115611889576118886116dc565b5b6118928261144a565b9050602081019050919050565b828183375f83830152505050565b5f6118bf6118ba8461186f565b61173a565b9050828152602081018484840111156118db576118da61186b565b5b6118e684828561189f565b509392505050565b5f82601f83011261190257611901611376565b5b81356119128482602086016118ad565b91505092915050565b5f604082840312156119305761192f6116d8565b5b61193a604061173a565b90505f6119498482850161150b565b5f83015250602082013567ffffffffffffffff81111561196c5761196b611754565b5b611978848285016118ee565b60208301525092915050565b5f602082840312156119995761199861120a565b5b5f82013567ffffffffffffffff8111156119b6576119b561120e565b5b6119c28482850161191b565b91505092915050565b5f815190506119d981611758565b92915050565b5f602082840312156119f4576119f361120a565b5b5f611a01848285016119cb565b91505092915050565b5f8160601b9050919050565b5f611a2082611a0a565b9050919050565b5f611a3182611a16565b9050919050565b611a49611a448261133d565b611a27565b82525050565b5f819050919050565b611a69611a64826112c5565b611a4f565b82525050565b5f611a7a8286611a38565b601482019150611a8a8285611a38565b601482019150611a9a8284611a58565b602082019150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b611ae1816112c5565b82525050565b602082015f820151611afb5f850182611ad8565b50505050565b5f602082019050611b145f830184611ae7565b92915050565b60038110611b2b57611b2a611aab565b5b50565b5f819050611b3b82611b1a565b919050565b5f611b4a82611b2e565b9050919050565b611b5a81611b40565b82525050565b611b698161133d565b82525050565b5f82825260208201905092915050565b5f611b8982611422565b611b938185611b6f565b9350611ba381856020860161143c565b611bac8161144a565b840191505092915050565b5f608083015f830151611bcc5f860182611b51565b506020830151611bdf6020860182611b60565b506040830151611bf26040860182611b60565b5060608301518482036060860152611c0a8282611b7f565b9150508091505092915050565b5f6020820190508181035f830152611c2f8184611bb7565b905092915050565b5f611c41826112c5565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611c7357611c726115a7565b5b60018201905091905056fea2646970667358221220f0478dd581ba0cfa3a9d6a7f556e0a4408663709607484acfcb56fa9be89d7cd64736f6c634300081a0033", c = class c extends _ {
1
+ import { b as t, ac as n, ad as o, ae as l, af as h, ag as m, ah as u, ai as y, aj as w, ak as g, al as p, am as A, an as V, ao as R } from "../generated-CKt2yCQd.js";
2
+ import { encodeAbiParameters as _ } from "viem";
3
+ import { C } from "../deployments-oykLv3_Z.js";
4
+ import { DeployableTarget as P } from "../Deployable/DeployableTarget.js";
5
+ import { prepareClaimPayload as s } from "../claiming.js";
6
+ import { RegistryType as T } from "../utils.js";
7
+ const k = "0x608060405273deaddeaddeaddeaddeaddeaddeaddeaddeaddead5f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015610062575f80fd5b5061007161007660201b60201c565b61010b565b5f6100856100e260201b60201c565b90508054600181161561009f5763f92ee8a95f526004601cfd5b8160c01c808260011c146100dd578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b6127d4806101185f395ff3fe6080604052600436106101ed575f3560e01c806354d1f13d1161010c578063c884ef831161009f578063ec87621c1161006e578063ec87621c1461069d578063f04e283e146106c7578063f2fde38b146106e3578063fe9fbb80146106ff578063fee81cf41461073b576101ed565b8063c884ef83146105d3578063db09da121461060f578063dcc59b6f1461064b578063e667082914610675576101ed565b806380fd6005116100db57806380fd60051461051b5780638da5cb5b14610543578063bb1757cf1461056d578063c78da39a146105a9576101ed565b806354d1f13d146104b0578063715018a6146104ba57806375b238fc146104c457806375ef18d0146104ee576101ed565b80632de9480711610184578063474f5a4411610153578063474f5a44146103df5780634a4ee7b11461041c5780634e7165a214610438578063514e62fc14610474576101ed565b80632de948071461032957806338d52e0f146103655780634359d28a1461038f578063439fab91146103b7576101ed565b80631cd64df4116101c05780631cd64df41461028f578063228cb733146102cb57806325692962146102f557806328d6183b146102ff576101ed565b806301ffc9a7146101f157806307621eca1461022d578063183a4f6e146102575780631c10893f14610273575b5f80fd5b3480156101fc575f80fd5b5061021760048036038101906102129190611a2b565b610777565b6040516102249190611a70565b60405180910390f35b348015610238575f80fd5b506102416107f0565b60405161024e9190611aa1565b60405180910390f35b610271600480360381019061026c9190611ae4565b610898565b005b61028d60048036038101906102889190611b69565b6108a5565b005b34801561029a575f80fd5b506102b560048036038101906102b09190611b69565b6108bb565b6040516102c29190611a70565b60405180910390f35b3480156102d6575f80fd5b506102df6108d1565b6040516102ec9190611aa1565b60405180910390f35b6102fd6108d7565b005b34801561030a575f80fd5b50610313610928565b6040516103209190611bb6565b60405180910390f35b348015610334575f80fd5b5061034f600480360381019061034a9190611bcf565b61094f565b60405161035c9190611aa1565b60405180910390f35b348015610370575f80fd5b50610379610968565b6040516103869190611c09565b60405180910390f35b34801561039a575f80fd5b506103b560048036038101906103b09190611cd8565b61098b565b005b3480156103c2575f80fd5b506103dd60048036038101906103d89190611dab565b610a99565b005b3480156103ea575f80fd5b5061040560048036038101906104009190611dab565b610ccb565b604051610413929190611df6565b60405180910390f35b61043660048036038101906104319190611b69565b610e17565b005b348015610443575f80fd5b5061045e60048036038101906104599190611dab565b610e2d565b60405161046b9190611e8d565b60405180910390f35b34801561047f575f80fd5b5061049a60048036038101906104959190611b69565b610efd565b6040516104a79190611a70565b60405180910390f35b6104b8610f14565b005b6104c2610f4d565b005b3480156104cf575f80fd5b506104d8610f60565b6040516104e59190611aa1565b60405180910390f35b3480156104f9575f80fd5b50610502610f65565b6040516105129493929190611ead565b60405180910390f35b348015610526575f80fd5b50610541600480360381019061053c9190611f45565b610f82565b005b34801561054e575f80fd5b50610557611038565b6040516105649190611c09565b60405180910390f35b348015610578575f80fd5b50610593600480360381019061058e9190611fc3565b611060565b6040516105a09190611a70565b60405180910390f35b3480156105b4575f80fd5b506105bd611249565b6040516105ca9190611aa1565b60405180910390f35b3480156105de575f80fd5b506105f960048036038101906105f49190611bcf565b61124f565b6040516106069190611a70565b60405180910390f35b34801561061a575f80fd5b5061063560048036038101906106309190611fc3565b61126c565b6040516106429190611a70565b60405180910390f35b348015610656575f80fd5b5061065f61127f565b60405161066c9190611aa1565b60405180910390f35b348015610680575f80fd5b5061069b60048036038101906106969190611f45565b611285565b005b3480156106a8575f80fd5b506106b161133b565b6040516106be9190611aa1565b60405180910390f35b6106e160048036038101906106dc9190611bcf565b611340565b005b6106fd60048036038101906106f89190611bcf565b61137e565b005b34801561070a575f80fd5b5061072560048036038101906107209190611bcf565b6113a7565b6040516107329190611a70565b60405180910390f35b348015610746575f80fd5b50610761600480360381019061075c9190611bcf565b6113fa565b60405161076e9190611aa1565b60405180910390f35b5f7f53cf8555000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107e957506107e882611413565b5b9050919050565b5f8060046002015442610803919061204d565b90505f61084e305f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661148c90919063ffffffff16565b90505f610e10600460010154846108659190612080565b61086f91906120ee565b60046003015461087f919061211e565b905081811161088e5780610890565b815b935050505090565b6108a233826114bf565b50565b6108ad6114ce565b6108b78282611505565b5050565b5f81826108c78561094f565b1614905092915050565b60025481565b5f6108e0611515565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7f53cf855500000000000000000000000000000000000000000000000000000000905090565b5f638b78c6d8600c52815f526020600c20549050919050565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026109968161151f565b8282905085859050146109d5576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b85859050811015610a91575f8484838181106109f6576109f5612151565b5b9050602002016020810190610a0b91906121a8565b90506001151581151503610a5057610a4b878784818110610a2f57610a2e612151565b5b9050602002016020810190610a449190611bcf565b6001611505565b610a83565b610a82878784818110610a6657610a65612151565b5b9050602002016020810190610a7b9190611bcf565b60016114bf565b5b5080806001019150506109d7565b505050505050565b5f610aa2611554565b90508054600382558015610ad45760018160011c14303b10610acb5763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f8383810190610ae591906122dc565b90505f610b1430835f015173ffffffffffffffffffffffffffffffffffffffff1661148c90919063ffffffff16565b90508160800151811015610b6a57815f01518183608001516040517f5c54305e000000000000000000000000000000000000000000000000000000008152600401610b6193929190612307565b60405180910390fd5b5f82602001511480610b7f57505f8260400151145b80610b8d57505f8260600151145b80610b9f575081602001518260800151105b15610bd6576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f01515f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060405180608001604052808360400151815260200183606001518152602001428152602001836020015181525060045f820151815f01556020820151816001015560408201518160020155606082015181600301559050508160800151600881905550610c843361157d565b610c8f336001611653565b50508015610cc6576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f806001610cd881611694565b5f8585810190610ce89190612455565b90505f8160200151806020019051810190610d0391906124b0565b9050610d52825f0151825f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166116bb9092919063ffffffff16565b815f015173ffffffffffffffffffffffffffffffffffffffff167f9ad2e7a4af16dceda9cce4274b2f59c328d8c012eb0e15eb5e1e73b7d8f264d35f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff16845f015184604051602001610dc493929190612540565b604051602081830303815290604052604051610de09190611e8d565b60405180910390a2805f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff16945094505050509250929050565b610e1f6114ce565b610e2982826114bf565b5050565b60605f8383810190610e3f91906122dc565b9050604051806080016040528060016002811115610e6057610e5f61257c565b5b8152602001825f015173ffffffffffffffffffffffffffffffffffffffff1681526020013073ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052808460800151815250604051602001610ec391906125d2565b604051602081830303815290604052815250604051602001610ee591906126e8565b60405160208183030381529060405291505092915050565b5f8082610f098561094f565b161415905092915050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b610f556114ce565b610f5e5f611704565b565b600281565b6004805f0154908060010154908060020154908060030154905084565b6002610f8d8161151f565b828290508585905014610fcc576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b8585905081101561103057611023868683818110610fef57610fee612151565b5b90506020020160208101906110049190611bcf565b85858481811061101757611016612151565b5b905060200201356114bf565b8080600101915050610fce565b505050505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b5f6110696114ce565b611072846117ca565b6110b357836040517f4139d81d0000000000000000000000000000000000000000000000000000000081526004016110aa919061272b565b60405180910390fd5b600160035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555060015f81548092919061111a90612757565b91905055505f6111286107f0565b90504260046002018190555060045f015481116111495760045f015461115a565b60045f015481611159919061204d565b5b6004600301819055506111ad85825f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166116bb9092919063ffffffff16565b8473ffffffffffffffffffffffffffffffffffffffff167f9ad2e7a4af16dceda9cce4274b2f59c328d8c012eb0e15eb5e1e73b7d8f264d35f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff16878460405160200161121993929190612540565b6040516020818303038152906040526040516112359190611e8d565b60405180910390a260019150509392505050565b60085481565b6003602052805f5260405f205f915054906101000a900460ff1681565b5f611276846117ca565b90509392505050565b60015481565b60026112908161151f565b8282905085859050146112cf576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b85859050811015611333576113268686838181106112f2576112f1612151565b5b90506020020160208101906113079190611bcf565b85858481811061131a57611319612151565b5b90506020020135611505565b80806001019150506112d1565b505050505050565b600181565b6113486114ce565b63389a75e1600c52805f526020600c20805442111561136e57636f5e88185f526004601cfd5b5f81555061137b81611704565b50565b6113866114ce565b8060601b61139b57637448fbae5f526004601cfd5b6113a481611704565b50565b5f8173ffffffffffffffffffffffffffffffffffffffff166113c7611038565b73ffffffffffffffffffffffffffffffffffffffff1614806113f357506113f2826002600117610efd565b5b9050919050565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fa9216705000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611485575061148482611887565b5b9050919050565b5f816014526f70a082310000000000000000000000005f5260208060246010865afa601f3d111660205102905092915050565b6114ca82825f611900565b5050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611503576382b429005f526004601cfd5b565b61151182826001611900565b5050565b5f6202a300905090565b638b78c6d81954331461155157638b78c6d8600c52335f52806020600c205416611550576382b429005f526004601cfd5b5b50565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b611585611958565b156115fd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278054156115bf57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a350611650565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b638b78c6d8600c52815f52806020600c205580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a35050565b638b78c6d8600c52335f52806020600c2054166116b8576382b429005f526004601cfd5b50565b81601452806034526fa9059cbb0000000000000000000000005f5260205f604460105f875af13d1560015f511417166116fb576390b8ec185f526004601cfd5b5f603452505050565b61170c611958565b15611771577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b82178155506117c7565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f806117d46107f0565b90505f8111801561182c575080611829305f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661148c90919063ffffffff16565b10155b801561187f575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b915050919050565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806118f957506118f88261195c565b5b9050919050565b638b78c6d8600c52825f526020600c2080548381178361192257848216821890505b80835580600c5160601c7f715ad5ce61fc9595c7b415289d59cf203f23a94fa06f04af7e489a0a76e1fe265f80a3505050505050565b5f90565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611a0a816119d6565b8114611a14575f80fd5b50565b5f81359050611a2581611a01565b92915050565b5f60208284031215611a4057611a3f6119ce565b5b5f611a4d84828501611a17565b91505092915050565b5f8115159050919050565b611a6a81611a56565b82525050565b5f602082019050611a835f830184611a61565b92915050565b5f819050919050565b611a9b81611a89565b82525050565b5f602082019050611ab45f830184611a92565b92915050565b611ac381611a89565b8114611acd575f80fd5b50565b5f81359050611ade81611aba565b92915050565b5f60208284031215611af957611af86119ce565b5b5f611b0684828501611ad0565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611b3882611b0f565b9050919050565b611b4881611b2e565b8114611b52575f80fd5b50565b5f81359050611b6381611b3f565b92915050565b5f8060408385031215611b7f57611b7e6119ce565b5b5f611b8c85828601611b55565b9250506020611b9d85828601611ad0565b9150509250929050565b611bb0816119d6565b82525050565b5f602082019050611bc95f830184611ba7565b92915050565b5f60208284031215611be457611be36119ce565b5b5f611bf184828501611b55565b91505092915050565b611c0381611b2e565b82525050565b5f602082019050611c1c5f830184611bfa565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112611c4357611c42611c22565b5b8235905067ffffffffffffffff811115611c6057611c5f611c26565b5b602083019150836020820283011115611c7c57611c7b611c2a565b5b9250929050565b5f8083601f840112611c9857611c97611c22565b5b8235905067ffffffffffffffff811115611cb557611cb4611c26565b5b602083019150836020820283011115611cd157611cd0611c2a565b5b9250929050565b5f805f8060408587031215611cf057611cef6119ce565b5b5f85013567ffffffffffffffff811115611d0d57611d0c6119d2565b5b611d1987828801611c2e565b9450945050602085013567ffffffffffffffff811115611d3c57611d3b6119d2565b5b611d4887828801611c83565b925092505092959194509250565b5f8083601f840112611d6b57611d6a611c22565b5b8235905067ffffffffffffffff811115611d8857611d87611c26565b5b602083019150836001820283011115611da457611da3611c2a565b5b9250929050565b5f8060208385031215611dc157611dc06119ce565b5b5f83013567ffffffffffffffff811115611dde57611ddd6119d2565b5b611dea85828601611d56565b92509250509250929050565b5f604082019050611e095f830185611a92565b611e166020830184611bfa565b9392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611e5f82611e1d565b611e698185611e27565b9350611e79818560208601611e37565b611e8281611e45565b840191505092915050565b5f6020820190508181035f830152611ea58184611e55565b905092915050565b5f608082019050611ec05f830187611a92565b611ecd6020830186611a92565b611eda6040830185611a92565b611ee76060830184611a92565b95945050505050565b5f8083601f840112611f0557611f04611c22565b5b8235905067ffffffffffffffff811115611f2257611f21611c26565b5b602083019150836020820283011115611f3e57611f3d611c2a565b5b9250929050565b5f805f8060408587031215611f5d57611f5c6119ce565b5b5f85013567ffffffffffffffff811115611f7a57611f796119d2565b5b611f8687828801611c2e565b9450945050602085013567ffffffffffffffff811115611fa957611fa86119d2565b5b611fb587828801611ef0565b925092505092959194509250565b5f805f60408486031215611fda57611fd96119ce565b5b5f611fe786828701611b55565b935050602084013567ffffffffffffffff811115612008576120076119d2565b5b61201486828701611d56565b92509250509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61205782611a89565b915061206283611a89565b925082820390508181111561207a57612079612020565b5b92915050565b5f61208a82611a89565b915061209583611a89565b92508282026120a381611a89565b915082820484148315176120ba576120b9612020565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6120f882611a89565b915061210383611a89565b925082612113576121126120c1565b5b828204905092915050565b5f61212882611a89565b915061213383611a89565b925082820190508082111561214b5761214a612020565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b61218781611a56565b8114612191575f80fd5b50565b5f813590506121a28161217e565b92915050565b5f602082840312156121bd576121bc6119ce565b5b5f6121ca84828501612194565b91505092915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61220d82611e45565b810181811067ffffffffffffffff8211171561222c5761222b6121d7565b5b80604052505050565b5f61223e6119c5565b905061224a8282612204565b919050565b5f80fd5b5f60a08284031215612268576122676121d3565b5b61227260a0612235565b90505f61228184828501611b55565b5f83015250602061229484828501611ad0565b60208301525060406122a884828501611ad0565b60408301525060606122bc84828501611ad0565b60608301525060806122d084828501611ad0565b60808301525092915050565b5f60a082840312156122f1576122f06119ce565b5b5f6122fe84828501612253565b91505092915050565b5f60608201905061231a5f830186611bfa565b6123276020830185611a92565b6123346040830184611a92565b949350505050565b5f80fd5b5f67ffffffffffffffff82111561235a576123596121d7565b5b61236382611e45565b9050602081019050919050565b828183375f83830152505050565b5f61239061238b84612340565b612235565b9050828152602081018484840111156123ac576123ab61233c565b5b6123b7848285612370565b509392505050565b5f82601f8301126123d3576123d2611c22565b5b81356123e384826020860161237e565b91505092915050565b5f60408284031215612401576124006121d3565b5b61240b6040612235565b90505f61241a84828501611b55565b5f83015250602082013567ffffffffffffffff81111561243d5761243c61224f565b5b612449848285016123bf565b60208301525092915050565b5f6020828403121561246a576124696119ce565b5b5f82013567ffffffffffffffff811115612487576124866119d2565b5b612493848285016123ec565b91505092915050565b5f815190506124aa81611aba565b92915050565b5f602082840312156124c5576124c46119ce565b5b5f6124d28482850161249c565b91505092915050565b5f8160601b9050919050565b5f6124f1826124db565b9050919050565b5f612502826124e7565b9050919050565b61251a61251582611b2e565b6124f8565b82525050565b5f819050919050565b61253a61253582611a89565b612520565b82525050565b5f61254b8286612509565b60148201915061255b8285612509565b60148201915061256b8284612529565b602082019150819050949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b6125b281611a89565b82525050565b602082015f8201516125cc5f8501826125a9565b50505050565b5f6020820190506125e55f8301846125b8565b92915050565b600381106125fc576125fb61257c565b5b50565b5f81905061260c826125eb565b919050565b5f61261b826125ff565b9050919050565b61262b81612611565b82525050565b61263a81611b2e565b82525050565b5f82825260208201905092915050565b5f61265a82611e1d565b6126648185612640565b9350612674818560208601611e37565b61267d81611e45565b840191505092915050565b5f608083015f83015161269d5f860182612622565b5060208301516126b06020860182612631565b5060408301516126c36040860182612631565b50606083015184820360608601526126db8282612650565b9150508091505092915050565b5f6020820190508181035f8301526127008184612688565b905092915050565b50565b5f6127165f83611e27565b915061272182612708565b5f82019050919050565b5f60408201905061273e5f830184611bfa565b818103602083015261274f8161270b565b905092915050565b5f61276182611a89565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361279357612792612020565b5b60018201905091905056fea2646970667358221220b54f76656cd285a42a0bec8a254700922acaa8f8946eca91c602537cb37d3aef64736f6c634300081a0033", e = class e extends P {
5
8
  constructor() {
6
9
  super(...arguments), this.abi = t;
7
10
  }
@@ -10,11 +13,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
10
13
  *
11
14
  * @public
12
15
  * @async
13
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'owner'>} [params]
14
- * @returns {unknown}
16
+ * @param {?ReadParams} [params]
17
+ * @returns {Promise<Address>}
15
18
  */
16
19
  async owner(f) {
17
- return i(this._config, {
20
+ return await n(this._config, {
18
21
  address: this.assertValidAddress(),
19
22
  args: [],
20
23
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -26,11 +29,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
26
29
  *
27
30
  * @public
28
31
  * @async
29
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'claims'>} [params]
32
+ * @param {?ReadParams} [params]
30
33
  * @returns {Promise<bigint>}
31
34
  */
32
35
  async claims(f) {
33
- return n(this._config, {
36
+ return await o(this._config, {
34
37
  address: this.assertValidAddress(),
35
38
  args: [],
36
39
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -42,11 +45,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
42
45
  *
43
46
  * @public
44
47
  * @async
45
- * @param {?ReadParams<typeof allowListIncentiveAbi, 'reward'>} [params]
48
+ * @param {?ReadParams} [params]
46
49
  * @returns {Promise<bigint>}
47
50
  */
48
51
  async reward(f) {
49
- return o(this._config, {
52
+ return await l(this._config, {
50
53
  address: this.assertValidAddress(),
51
54
  args: [],
52
55
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -59,11 +62,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
59
62
  * @public
60
63
  * @async
61
64
  * @param {Address} address
62
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'claimed'>} [params]
65
+ * @param {?ReadParams} [params]
63
66
  * @returns {Promise<boolean>}
64
67
  */
65
68
  async claimed(f, b) {
66
- return h(this._config, {
69
+ return await h(this._config, {
67
70
  address: this.assertValidAddress(),
68
71
  args: [f],
69
72
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -75,11 +78,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
75
78
  *
76
79
  * @public
77
80
  * @async
78
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'asset'>} [params]
79
- * @returns {unknown}
81
+ * @param {?ReadParams} [params]
82
+ * @returns {Promise<Address>}
80
83
  */
81
84
  async asset(f) {
82
- return l(this._config, {
85
+ return await m(this._config, {
83
86
  address: this.assertValidAddress(),
84
87
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
85
88
  ...f
@@ -90,11 +93,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
90
93
  *
91
94
  * @public
92
95
  * @async
93
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'cgdaParams'>} [params]
96
+ * @param {?ReadParams} [params]
94
97
  * @returns {Promise<CGDAParameters>}
95
98
  */
96
99
  async cgdaParams(f) {
97
- const [b, a, d, e] = await y(this._config, {
100
+ const [b, a, d, c] = await u(this._config, {
98
101
  address: this.assertValidAddress(),
99
102
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
100
103
  ...f
@@ -103,7 +106,7 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
103
106
  rewardDecay: b,
104
107
  rewardBoost: a,
105
108
  lastClaimTime: d,
106
- currentReward: e
109
+ currentReward: c
107
110
  };
108
111
  }
109
112
  /**
@@ -111,11 +114,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
111
114
  *
112
115
  * @public
113
116
  * @async
114
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'totalBudget'>} [params]
117
+ * @param {?ReadParams} [params]
115
118
  * @returns {Promise<bigint>}
116
119
  */
117
120
  async totalBudget(f) {
118
- return u(this._config, {
121
+ return await y(this._config, {
119
122
  address: this.assertValidAddress(),
120
123
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
121
124
  ...f
@@ -127,11 +130,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
127
130
  * @public
128
131
  * @async
129
132
  * @param {ClaimPayload} payload
130
- * @param {?WriteParams<typeof cgdaIncentiveAbi, 'claim'>} [params]
133
+ * @param {?WriteParams} [params]
131
134
  * @returns {Promise<boolean>} - Returns true if successfully claimed
132
135
  */
133
136
  async claim(f, b) {
134
- return this.awaitResult(this.claimRaw(f, b));
137
+ return await this.awaitResult(this.claimRaw(f, b));
135
138
  }
136
139
  /**
137
140
  * Claim the incentive
@@ -139,18 +142,18 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
139
142
  * @public
140
143
  * @async
141
144
  * @param {ClaimPayload} payload
142
- * @param {?WriteParams<typeof cgdaIncentiveAbi, 'claim'>} [params]
145
+ * @param {?WriteParams} [params]
143
146
  * @returns {Promise<boolean>} - Returns true if successfully claimed
144
147
  */
145
148
  async claimRaw(f, b) {
146
- const { request: a, result: d } = await g(this._config, {
149
+ const { request: a, result: d } = await w(this._config, {
147
150
  address: this.assertValidAddress(),
148
151
  args: [s(f)],
149
152
  ...this.optionallyAttachAccount(),
150
153
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
151
154
  ...b
152
155
  });
153
- return { hash: await m(this._config, a), result: d };
156
+ return { hash: await g(this._config, a), result: d };
154
157
  }
155
158
  /**
156
159
  * Clawback assets from the incentive
@@ -158,11 +161,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
158
161
  * @public
159
162
  * @async
160
163
  * @param {ClaimPayload} payload
161
- * @param {?WriteParams<typeof cgdaIncentiveAbi, 'clawback'>} [params]
164
+ * @param {?WriteParams} [params]
162
165
  * @returns {Promise<boolean>} - True if the assets were successfully clawbacked
163
166
  */
164
167
  async clawback(f, b) {
165
- return this.awaitResult(this.clawbackRaw(f, b));
168
+ return await this.awaitResult(this.clawbackRaw(f, b));
166
169
  }
167
170
  /**
168
171
  * Clawback assets from the incentive
@@ -170,11 +173,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
170
173
  * @public
171
174
  * @async
172
175
  * @param {ClaimPayload} payload
173
- * @param {?WriteParams<typeof cgdaIncentiveAbi, 'clawback'>} [params]
176
+ * @param {?WriteParams} [params]
174
177
  * @returns {Promise<boolean>} - True if the assets were successfully clawbacked
175
178
  */
176
179
  async clawbackRaw(f, b) {
177
- const { request: a, result: d } = await w(
180
+ const { request: a, result: d } = await p(
178
181
  this._config,
179
182
  {
180
183
  address: this.assertValidAddress(),
@@ -184,7 +187,7 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
184
187
  ...b
185
188
  }
186
189
  );
187
- return { hash: await p(this._config, a), result: d };
190
+ return { hash: await A(this._config, a), result: d };
188
191
  }
189
192
  /**
190
193
  * Check if an incentive is claimable
@@ -192,11 +195,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
192
195
  * @public
193
196
  * @async
194
197
  * @param {ClaimPayload} payload
195
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'isClaimable'>} [params]
198
+ * @param {?ReadParams} [params]
196
199
  * @returns {Promise<boolean>} - True if the incentive is claimable based on the data payload
197
200
  */
198
201
  async isClaimable(f, b) {
199
- return A(this._config, {
202
+ return await V(this._config, {
200
203
  address: this.assertValidAddress(),
201
204
  args: [s(f)],
202
205
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
@@ -210,11 +213,11 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
210
213
  *
211
214
  * @public
212
215
  * @async
213
- * @param {?ReadParams<typeof cgdaIncentiveAbi, 'currentReward'>} [params]
216
+ * @param {?ReadParams} [params]
214
217
  * @returns {Promise<bigint>} - The current reward
215
218
  */
216
219
  async currentReward(f) {
217
- return V(this._config, {
220
+ return await R(this._config, {
218
221
  address: this.assertValidAddress(),
219
222
  // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally
220
223
  ...f
@@ -235,15 +238,37 @@ const x = "0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f6
235
238
  );
236
239
  return {
237
240
  abi: t,
238
- bytecode: x,
241
+ bytecode: k,
239
242
  args: [B(a)],
240
243
  ...this.optionallyAttachAccount(d.account)
241
244
  };
242
245
  }
243
246
  };
244
- c.base = "0x147c3aBFF7Ab7867B206A8c652Cd59D3BE41Dc3E", c.registryType = R.INCENTIVE;
245
- let r = c;
247
+ e.bases = {
248
+ ...C
249
+ }, e.registryType = T.INCENTIVE;
250
+ let r = e;
251
+ function B({
252
+ asset: i,
253
+ initialReward: f,
254
+ rewardDecay: b,
255
+ rewardBoost: a,
256
+ totalBudget: d
257
+ }) {
258
+ return _(
259
+ [
260
+ { type: "address", name: "asset" },
261
+ { type: "uint256", name: "initialReward" },
262
+ { type: "uint256", name: "rewardDecay" },
263
+ { type: "uint256", name: "rewardBoost" },
264
+ { type: "uint256", name: "totalBudget" }
265
+ ],
266
+ [i, f, b, a, d]
267
+ );
268
+ }
246
269
  export {
247
270
  r as CGDAIncentive,
248
- t as cgdaIncentiveAbi
271
+ t as cgdaIncentiveAbi,
272
+ B as prepareCGDAIncentivePayload
249
273
  };
274
+ //# sourceMappingURL=CGDAIncentive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CGDAIncentive.js","sources":["../../src/Incentives/CGDAIncentive.ts"],"sourcesContent":["import {\n cgdaIncentiveAbi,\n readCgdaIncentiveAsset,\n readCgdaIncentiveCgdaParams,\n readCgdaIncentiveClaimed,\n readCgdaIncentiveClaims,\n readCgdaIncentiveCurrentReward,\n readCgdaIncentiveIsClaimable,\n readCgdaIncentiveOwner,\n readCgdaIncentiveReward,\n readCgdaIncentiveTotalBudget,\n simulateCgdaIncentiveClaim,\n simulateCgdaIncentiveClawback,\n writeCgdaIncentiveClaim,\n writeCgdaIncentiveClawback,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/incentives/CGDAIncentive.sol/CGDAIncentive.json';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n encodeAbiParameters,\n} from 'viem';\nimport { CGDAIncentive as CGDAIncentiveBases } from '../../dist/deployments.json';\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 { cgdaIncentiveAbi };\n\n/**\n * The object representation of a `CGDAIncentive.InitPayload`\n *\n * @export\n * @interface CGDAIncentivePayload\n * @typedef {CGDAIncentivePayload}\n */\nexport interface CGDAIncentivePayload {\n /**\n * The address of the ERC20-like token\n *\n * @type {Address}\n */\n asset: Address;\n /**\n * The initial reward amount\n *\n * @type {bigint}\n */\n initialReward: bigint;\n /**\n * The amount to subtract from the current reward after each claim\n *\n * @type {bigint}\n */\n rewardDecay: bigint;\n /**\n * The amount by which the reward increases for each hour without a claim (continuous linear increase)\n *\n * @type {bigint}\n */\n rewardBoost: bigint;\n /**\n * The total budget for the incentive\n *\n * @type {bigint}\n */\n totalBudget: bigint;\n /**\n * The entity that can `clawback` funds\n *\n * @type {Address}\n */\n manager: Address;\n}\n\n/**\n * The configuration parameters for the CGDAIncentive\n *\n * @export\n * @interface CGDAParameters\n * @typedef {CGDAParameters}\n */\nexport interface CGDAParameters {\n /**\n * The amount to subtract from the current reward after each claim\n *\n * @type {bigint}\n */\n rewardDecay: bigint;\n /**\n * The amount by which the reward increases for each hour without a claim (continuous linear increase)\n *\n * @type {bigint}\n */\n rewardBoost: bigint;\n /**\n * The timestamp of the last claim\n *\n * @type {bigint}\n */\n lastClaimTime: bigint;\n /**\n * The current reward amount\n *\n * @type {bigint}\n */\n currentReward: bigint;\n}\n\n/**\n * A generic `viem.Log` event with support for `CGDAIncentive` event types.\n *\n * @export\n * @typedef {CGDAIncentiveLog}\n * @template {ContractEventName<typeof cgdaIncentiveAbi>} [event=ContractEventName<\n * typeof cgdaIncentiveAbi\n * >]\n */\nexport type CGDAIncentiveLog<\n event extends ContractEventName<typeof cgdaIncentiveAbi> = ContractEventName<\n typeof cgdaIncentiveAbi\n >,\n> = GenericLog<typeof cgdaIncentiveAbi, event>;\n\n/**\n * Continuous Gradual Dutch Auction Incentive.\n * An CGDA incentive implementation with reward amounts adjusting dynamically based on claim volume.\n *\n * @export\n * @class CGDAIncentive\n * @typedef {CGDAIncentive}\n * @extends {DeployableTarget<CGDAIncentivePayload>}\n */\nexport class CGDAIncentive extends DeployableTarget<\n CGDAIncentivePayload,\n typeof cgdaIncentiveAbi\n> {\n public override readonly abi = cgdaIncentiveAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Record<number, Address>}\n */\n public static override bases: Record<number, Address> = {\n ...(CGDAIncentiveBases as Record<number, Address>),\n };\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.INCENTIVE;\n\n /**\n * The incentive's owner.\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>}\n */\n public async owner(params?: ReadParams<typeof cgdaIncentiveAbi, 'owner'>) {\n return await readCgdaIncentiveOwner(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} [params]\n * @returns {Promise<bigint>}\n */\n public async claims(params?: ReadParams<typeof cgdaIncentiveAbi, 'claims'>) {\n return await readCgdaIncentiveClaims(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 reward amount issued for each claim\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>}\n */\n public async reward(params?: ReadParams<typeof cgdaIncentiveAbi, 'reward'>) {\n return await readCgdaIncentiveReward(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 * Get the claim status for a user\n *\n * @public\n * @async\n * @param {Address} address\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>}\n */\n public async claimed(\n address: Address,\n params?: ReadParams<typeof cgdaIncentiveAbi, 'claimed'>,\n ) {\n return await readCgdaIncentiveClaimed(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 CGDA-like token used for the incentive\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<Address>}\n */\n public async asset(params?: ReadParams<typeof cgdaIncentiveAbi, 'asset'>) {\n return await readCgdaIncentiveAsset(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 configuration parameters for the CGDAIncentive\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<CGDAParameters>}\n */\n public async cgdaParams(\n params?: ReadParams<typeof cgdaIncentiveAbi, 'cgdaParams'>,\n ): Promise<CGDAParameters> {\n const [rewardDecay, rewardBoost, lastClaimTime, currentReward] =\n await readCgdaIncentiveCgdaParams(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 return {\n rewardDecay,\n rewardBoost,\n lastClaimTime,\n currentReward,\n };\n }\n\n /**\n * The total budget of the incentive\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>}\n */\n public async totalBudget(\n params?: ReadParams<typeof cgdaIncentiveAbi, 'totalBudget'>,\n ) {\n return await readCgdaIncentiveTotalBudget(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} [params]\n * @returns {Promise<boolean>} - Returns true if successfully claimed\n */\n protected async claim(\n payload: ClaimPayload,\n params?: WriteParams<typeof cgdaIncentiveAbi, '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} [params]\n * @returns {Promise<boolean>} - Returns true if successfully claimed\n */\n protected async claimRaw(\n payload: ClaimPayload,\n params?: WriteParams<typeof cgdaIncentiveAbi, 'claim'>,\n ) {\n const { request, result } = await simulateCgdaIncentiveClaim(this._config, {\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 const hash = await writeCgdaIncentiveClaim(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} [params]\n * @returns {Promise<boolean>} - True if the assets were successfully clawbacked\n */\n public async clawback(\n payload: ClaimPayload,\n params?: WriteParams<typeof cgdaIncentiveAbi, '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} [params]\n * @returns {Promise<boolean>} - True if the assets were successfully clawbacked\n */\n public async clawbackRaw(\n payload: ClaimPayload,\n params?: WriteParams<typeof cgdaIncentiveAbi, 'clawback'>,\n ) {\n const { request, result } = await simulateCgdaIncentiveClawback(\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 writeCgdaIncentiveClawback(this._config, request);\n return { hash, result };\n }\n\n /**\n * Check if an incentive is claimable\n *\n * @public\n * @async\n * @param {ClaimPayload} payload\n * @param {?ReadParams} [params]\n * @returns {Promise<boolean>} - True if the incentive is claimable based on the data payload\n */\n public async isClaimable(\n payload: ClaimPayload,\n params?: ReadParams<typeof cgdaIncentiveAbi, 'isClaimable'>,\n ) {\n return await readCgdaIncentiveIsClaimable(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 * Calculates the current reward based on the time since the last claim.\n * The reward is calculated based on the time since the last claim, the available budget, and the reward parameters. It increases linearly over time in the absence of claims, with each hour adding `rewardBoost` to the current reward, up to the available budget.\n * For example, if there is one claim in the first hour, then no claims for three hours, the claimable reward would be `initialReward - rewardDecay + (rewardBoost * 3)`\n *\n * @public\n * @async\n * @param {?ReadParams} [params]\n * @returns {Promise<bigint>} - The current reward\n */\n public async currentReward(\n params?: ReadParams<typeof cgdaIncentiveAbi, 'currentReward'>,\n ) {\n return await readCgdaIncentiveCurrentReward(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 * @inheritdoc\n *\n * @public\n * @param {?CGDAIncentivePayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: CGDAIncentivePayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n return {\n abi: cgdaIncentiveAbi,\n bytecode: bytecode as Hex,\n args: [prepareCGDAIncentivePayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n\n/**\n * Given a {@link CGDAIncentivePayload}, properly encode a `CGDAIncentive.InitPayload` for use with {@link CGDAIncentive} initialization.\n *\n * @param {CGDAIncentivePayload} param0\n * @param {Address} param0.asset - The address of the ERC20-like token\n * @param {bigint} param0.initialReward - The initial reward amount\n * @param {bigint} param0.rewardDecay - The amount to subtract from the current reward after each claim\n * @param {bigint} param0.rewardBoost - The amount by which the reward increases for each hour without a claim (continuous linear increase)\n * @param {bigint} param0.totalBudget - The total budget for the incentive\n * @returns {Hex}\n */\nexport function prepareCGDAIncentivePayload({\n asset,\n initialReward,\n rewardDecay,\n rewardBoost,\n totalBudget,\n}: CGDAIncentivePayload) {\n return encodeAbiParameters(\n [\n { type: 'address', name: 'asset' },\n { type: 'uint256', name: 'initialReward' },\n { type: 'uint256', name: 'rewardDecay' },\n { type: 'uint256', name: 'rewardBoost' },\n { type: 'uint256', name: 'totalBudget' },\n ],\n [asset, initialReward, rewardDecay, rewardBoost, totalBudget],\n );\n}\n"],"names":["_CGDAIncentive","DeployableTarget","cgdaIncentiveAbi","params","readCgdaIncentiveOwner","readCgdaIncentiveClaims","readCgdaIncentiveReward","address","readCgdaIncentiveClaimed","readCgdaIncentiveAsset","rewardDecay","rewardBoost","lastClaimTime","currentReward","readCgdaIncentiveCgdaParams","readCgdaIncentiveTotalBudget","payload","request","result","simulateCgdaIncentiveClaim","prepareClaimPayload","writeCgdaIncentiveClaim","simulateCgdaIncentiveClawback","writeCgdaIncentiveClawback","readCgdaIncentiveIsClaimable","readCgdaIncentiveCurrentReward","_payload","_options","options","bytecode","prepareCGDAIncentivePayload","CGDAIncentiveBases","RegistryType","CGDAIncentive","asset","initialReward","totalBudget","encodeAbiParameters"],"mappings":"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"}