@boostxyz/sdk 8.0.0-canary.2 → 8.0.0-canary.4

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 (170) hide show
  1. package/dist/Actions/Action.cjs +1 -1
  2. package/dist/Actions/Action.js +2 -2
  3. package/dist/Actions/EventAction.cjs +1 -1
  4. package/dist/Actions/EventAction.cjs.map +1 -1
  5. package/dist/Actions/EventAction.js +46 -46
  6. package/dist/Actions/EventAction.js.map +1 -1
  7. package/dist/{AllowList-DQf-8HQC.js → AllowList-CTRuUBCQ.js} +41 -41
  8. package/dist/{AllowList-DQf-8HQC.js.map → AllowList-CTRuUBCQ.js.map} +1 -1
  9. package/dist/{AllowList-DaX239DR.cjs → AllowList-GEmUfOR1.cjs} +2 -2
  10. package/dist/{AllowList-DaX239DR.cjs.map → AllowList-GEmUfOR1.cjs.map} +1 -1
  11. package/dist/AllowLists/AllowList.cjs +1 -1
  12. package/dist/AllowLists/AllowList.js +4 -4
  13. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  14. package/dist/AllowLists/SimpleAllowList.js +7 -7
  15. package/dist/AllowLists/SimpleDenyList.cjs +1 -1
  16. package/dist/AllowLists/SimpleDenyList.js +3 -3
  17. package/dist/Auth/PassthroughAuth.cjs +1 -1
  18. package/dist/Auth/PassthroughAuth.js +2 -2
  19. package/dist/BoostCore.cjs +2 -2
  20. package/dist/BoostCore.cjs.map +1 -1
  21. package/dist/BoostCore.d.ts +137 -2
  22. package/dist/BoostCore.d.ts.map +1 -1
  23. package/dist/BoostCore.js +336 -206
  24. package/dist/BoostCore.js.map +1 -1
  25. package/dist/BoostRegistry.cjs +1 -1
  26. package/dist/BoostRegistry.js +21 -21
  27. package/dist/{Budget-LnAQ_Slw.js → Budget-BH0s7Bxu.js} +52 -52
  28. package/dist/{Budget-LnAQ_Slw.js.map → Budget-BH0s7Bxu.js.map} +1 -1
  29. package/dist/{Budget-WIB8IJoM.cjs → Budget-CwNhsa3m.cjs} +2 -2
  30. package/dist/{Budget-WIB8IJoM.cjs.map → Budget-CwNhsa3m.cjs.map} +1 -1
  31. package/dist/Budgets/Budget.cjs +1 -1
  32. package/dist/Budgets/Budget.js +3 -3
  33. package/dist/Budgets/ManagedBudget.cjs +1 -1
  34. package/dist/Budgets/ManagedBudget.js +26 -26
  35. package/dist/Deployable/DeployableTarget.cjs +1 -1
  36. package/dist/Deployable/DeployableTarget.js +1 -1
  37. package/dist/Deployable/DeployableTargetWithRBAC.cjs +1 -1
  38. package/dist/Deployable/DeployableTargetWithRBAC.js +17 -17
  39. package/dist/{Incentive-gT7z-4v3.cjs → Incentive-B2ZBE5LU.cjs} +2 -2
  40. package/dist/{Incentive-gT7z-4v3.cjs.map → Incentive-B2ZBE5LU.cjs.map} +1 -1
  41. package/dist/{Incentive-D_IBex5V.js → Incentive-BCSV7OtF.js} +41 -41
  42. package/dist/{Incentive-D_IBex5V.js.map → Incentive-BCSV7OtF.js.map} +1 -1
  43. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  44. package/dist/Incentives/AllowListIncentive.js +17 -17
  45. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  46. package/dist/Incentives/CGDAIncentive.js +14 -14
  47. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  48. package/dist/Incentives/ERC20Incentive.js +13 -13
  49. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.cjs +1 -1
  50. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.js +71 -71
  51. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs +1 -1
  52. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs.map +1 -1
  53. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js +36 -36
  54. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js.map +1 -1
  55. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs +1 -1
  56. package/dist/Incentives/ERC20VariableCriteriaIncentive.js +9 -9
  57. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs +1 -1
  58. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs.map +1 -1
  59. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js +13 -13
  60. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js.map +1 -1
  61. package/dist/Incentives/ERC20VariableIncentive.cjs +1 -1
  62. package/dist/Incentives/ERC20VariableIncentive.js +8 -8
  63. package/dist/Incentives/Incentive.cjs +1 -1
  64. package/dist/Incentives/Incentive.js +3 -3
  65. package/dist/Incentives/PointsIncentive.cjs +1 -1
  66. package/dist/Incentives/PointsIncentive.js +28 -28
  67. package/dist/{SimpleDenyList-D5AoBdVi.cjs → SimpleDenyList-6_sxnZB0.cjs} +2 -2
  68. package/dist/{SimpleDenyList-D5AoBdVi.cjs.map → SimpleDenyList-6_sxnZB0.cjs.map} +1 -1
  69. package/dist/{SimpleDenyList-CtdXM49y.js → SimpleDenyList-CrjjFnn5.js} +17 -17
  70. package/dist/{SimpleDenyList-CtdXM49y.js.map → SimpleDenyList-CrjjFnn5.js.map} +1 -1
  71. package/dist/Validators/LimitedSignerValidator.cjs +1 -1
  72. package/dist/Validators/LimitedSignerValidator.cjs.map +1 -1
  73. package/dist/Validators/LimitedSignerValidator.d.ts +9 -9
  74. package/dist/Validators/LimitedSignerValidator.d.ts.map +1 -1
  75. package/dist/Validators/LimitedSignerValidator.js +19 -19
  76. package/dist/Validators/LimitedSignerValidator.js.map +1 -1
  77. package/dist/Validators/LimitedSignerValidatorV2.cjs +2 -0
  78. package/dist/Validators/LimitedSignerValidatorV2.cjs.map +1 -0
  79. package/dist/Validators/LimitedSignerValidatorV2.d.ts +842 -0
  80. package/dist/Validators/LimitedSignerValidatorV2.d.ts.map +1 -0
  81. package/dist/Validators/LimitedSignerValidatorV2.js +301 -0
  82. package/dist/Validators/LimitedSignerValidatorV2.js.map +1 -0
  83. package/dist/Validators/PayableLimitedSignerValidator.cjs +2 -0
  84. package/dist/Validators/PayableLimitedSignerValidator.cjs.map +1 -0
  85. package/dist/Validators/PayableLimitedSignerValidator.d.ts.map +1 -1
  86. package/dist/{Validator-BEUqV28V.js → Validators/PayableLimitedSignerValidator.js} +56 -102
  87. package/dist/Validators/PayableLimitedSignerValidator.js.map +1 -0
  88. package/dist/Validators/PayableLimitedSignerValidatorV2.cjs +2 -0
  89. package/dist/Validators/PayableLimitedSignerValidatorV2.cjs.map +1 -0
  90. package/dist/Validators/PayableLimitedSignerValidatorV2.d.ts +855 -0
  91. package/dist/Validators/PayableLimitedSignerValidatorV2.d.ts.map +1 -0
  92. package/dist/Validators/PayableLimitedSignerValidatorV2.js +372 -0
  93. package/dist/Validators/PayableLimitedSignerValidatorV2.js.map +1 -0
  94. package/dist/Validators/SignerValidator.cjs +1 -1
  95. package/dist/Validators/SignerValidator.cjs.map +1 -1
  96. package/dist/Validators/SignerValidator.d.ts +4 -2
  97. package/dist/Validators/SignerValidator.d.ts.map +1 -1
  98. package/dist/Validators/SignerValidator.js +12 -12
  99. package/dist/Validators/SignerValidator.js.map +1 -1
  100. package/dist/Validators/SignerValidatorV2.cjs +2 -0
  101. package/dist/Validators/SignerValidatorV2.cjs.map +1 -0
  102. package/dist/Validators/SignerValidatorV2.d.ts +728 -0
  103. package/dist/Validators/SignerValidatorV2.d.ts.map +1 -0
  104. package/dist/Validators/SignerValidatorV2.js +299 -0
  105. package/dist/Validators/SignerValidatorV2.js.map +1 -0
  106. package/dist/Validators/Validator.cjs +1 -1
  107. package/dist/Validators/Validator.cjs.map +1 -1
  108. package/dist/Validators/Validator.d.ts +19 -4
  109. package/dist/Validators/Validator.d.ts.map +1 -1
  110. package/dist/Validators/Validator.js +79 -14
  111. package/dist/Validators/Validator.js.map +1 -1
  112. package/dist/componentInterfaces-43ygGrVO.js +28 -0
  113. package/dist/componentInterfaces-43ygGrVO.js.map +1 -0
  114. package/dist/componentInterfaces-JU4NBkEc.cjs +2 -0
  115. package/dist/componentInterfaces-JU4NBkEc.cjs.map +1 -0
  116. package/dist/{deployments-Dw5Suk_D.js → deployments-COm00j8v.js} +48 -39
  117. package/dist/{deployments-Dw5Suk_D.js.map → deployments-COm00j8v.js.map} +1 -1
  118. package/dist/deployments-uLDgrxCp.cjs +2 -0
  119. package/dist/deployments-uLDgrxCp.cjs.map +1 -0
  120. package/dist/deployments.json +30 -21
  121. package/dist/generated-CkZm1EVH.cjs +3 -0
  122. package/dist/generated-CkZm1EVH.cjs.map +1 -0
  123. package/dist/{generated-krkFnwbV.js → generated-DRbljODL.js} +2314 -1284
  124. package/dist/generated-DRbljODL.js.map +1 -0
  125. package/dist/index.cjs +1 -1
  126. package/dist/index.d.ts +3 -0
  127. package/dist/index.d.ts.map +1 -1
  128. package/dist/index.js +185 -165
  129. package/dist/index.js.map +1 -1
  130. package/package.json +25 -1
  131. package/src/Actions/EventAction.ts +1 -1
  132. package/src/BoostCore.test.ts +77 -11
  133. package/src/BoostCore.ts +165 -4
  134. package/src/Budgets/ManagedBudgetWithFees.test.ts +14 -14
  135. package/src/Budgets/ManagedBudgetWithFeesV2.test.ts +3 -3
  136. package/src/Incentives/AllowListIncentive.test.ts +5 -5
  137. package/src/Incentives/CGDAIncentive.test.ts +6 -6
  138. package/src/Incentives/ERC1155Incentive.test.ts +2 -2
  139. package/src/Incentives/ERC20Incentive.test.ts +6 -6
  140. package/src/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.test.ts +5 -5
  141. package/src/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.ts +1 -1
  142. package/src/Incentives/ERC20VariableCriteriaIncentiveV2.test.ts +5 -5
  143. package/src/Incentives/ERC20VariableCriteriaIncentiveV2.ts +1 -1
  144. package/src/Incentives/ERC20VariableIncentive.test.ts +7 -8
  145. package/src/Incentives/PointsIncentive.test.ts +5 -5
  146. package/src/Validators/LimitedSignerValidator.test.ts +1 -1
  147. package/src/Validators/LimitedSignerValidator.ts +9 -10
  148. package/src/Validators/LimitedSignerValidatorV2.test.ts +231 -0
  149. package/src/Validators/LimitedSignerValidatorV2.ts +707 -0
  150. package/src/Validators/PayableLimitedSignerValidator.test.ts +1 -1
  151. package/src/Validators/PayableLimitedSignerValidator.ts +0 -1
  152. package/src/Validators/PayableLimitedSignerValidatorV2.test.ts +202 -0
  153. package/src/Validators/PayableLimitedSignerValidatorV2.ts +688 -0
  154. package/src/Validators/SignerValidator.ts +4 -2
  155. package/src/Validators/SignerValidatorV2.test.ts +163 -0
  156. package/src/Validators/SignerValidatorV2.ts +635 -0
  157. package/src/Validators/Validator.ts +45 -2
  158. package/src/index.ts +3 -0
  159. package/dist/Validator-BEUqV28V.js.map +0 -1
  160. package/dist/Validator-FxcxYKhR.cjs +0 -2
  161. package/dist/Validator-FxcxYKhR.cjs.map +0 -1
  162. package/dist/componentInterfaces-BZ3fSNkT.cjs +0 -2
  163. package/dist/componentInterfaces-BZ3fSNkT.cjs.map +0 -1
  164. package/dist/componentInterfaces-D2s6AXlV.js +0 -25
  165. package/dist/componentInterfaces-D2s6AXlV.js.map +0 -1
  166. package/dist/deployments-DimWVnA4.cjs +0 -2
  167. package/dist/deployments-DimWVnA4.cjs.map +0 -1
  168. package/dist/generated-Cf82M-QP.cjs +0 -3
  169. package/dist/generated-Cf82M-QP.cjs.map +0 -1
  170. package/dist/generated-krkFnwbV.js.map +0 -1
@@ -0,0 +1,855 @@
1
+ import { payableLimitedSignerValidatorV2Abi } from '@boostxyz/evm';
2
+ import { type Address, type ContractEventName, type Hex, type PrivateKeyAccount } from 'viem';
3
+ import type { DeployableOptions, GenericDeployableParams } from '../Deployable/Deployable';
4
+ import { DeployableTarget } from '../Deployable/DeployableTarget';
5
+ import { type GenericLog, type ReadParams, RegistryType, type WriteParams } from '../utils';
6
+ import type { LimitedSignerValidatorInputParams, LimitedSignerValidatorValidatePayload } from './LimitedSignerValidator';
7
+ export { payableLimitedSignerValidatorV2Abi };
8
+ /**
9
+ * Object representation of a {@link PayableLimitedSignerValidatorV2} initialization payload
10
+ *
11
+ * @export
12
+ * @interface PayableLimitedSignerValidatorV2Payload
13
+ * @typedef {PayableLimitedSignerValidatorV2Payload}
14
+ */
15
+ export interface PayableLimitedSignerValidatorV2Payload {
16
+ /**
17
+ * The list of authorized signers. The first address in the list will be the initial owner of the contract.
18
+ *
19
+ * @type {Address[]}
20
+ */
21
+ signers: Address[];
22
+ /**
23
+ * The authorized caller of the validator function
24
+ * @type {Address}
25
+ */
26
+ validatorCaller: Address;
27
+ /**
28
+ * The max quantity of claims a user can make for a given incentive
29
+ * @type {number}
30
+ */
31
+ maxClaimCount: number;
32
+ }
33
+ /**
34
+ * Extended validate payload that includes the payment value
35
+ *
36
+ * @export
37
+ * @interface PayableLimitedSignerValidatorV2ValidatePayload
38
+ * @typedef {PayableLimitedSignerValidatorV2ValidatePayload}
39
+ */
40
+ export interface PayableLimitedSignerValidatorV2ValidatePayload extends LimitedSignerValidatorValidatePayload {
41
+ /**
42
+ * The amount of ETH to send with the validation call (must match claimFee exactly)
43
+ *
44
+ * @type {bigint}
45
+ */
46
+ value: bigint;
47
+ }
48
+ /**
49
+ * Signer Validator Claim Data Payload
50
+ *
51
+ * @export
52
+ * @interface PayableLimitedSignerValidatorV2ClaimDataParams
53
+ * @typedef {PayableLimitedSignerValidatorV2ClaimDataParams}
54
+ */
55
+ export interface PayableLimitedSignerValidatorV2ClaimDataParams {
56
+ /**
57
+ * The signer with which to sign the input
58
+ *
59
+ * @type {{
60
+ * account: Address;
61
+ * key: Hex;
62
+ * privateKey: PrivateKeyAccount;
63
+ * }}
64
+ */
65
+ signer: {
66
+ account: Address;
67
+ key: Hex;
68
+ privateKey: PrivateKeyAccount;
69
+ };
70
+ /**
71
+ * The encoded data to provide the underlying incentive
72
+ *
73
+ * @type {Hex}
74
+ */
75
+ incentiveData: Hex;
76
+ /**
77
+ * The chain id to target
78
+ *
79
+ * @type {number}
80
+ */
81
+ chainId: number;
82
+ /**
83
+ * The address of the validator
84
+ *
85
+ * @type {Address}
86
+ */
87
+ validator: Address;
88
+ /**
89
+ * The incentive quantity.
90
+ *
91
+ * @type {number}
92
+ */
93
+ incentiveQuantity: number;
94
+ /**
95
+ * The address of the claimant
96
+ *
97
+ * @type {Address}
98
+ */
99
+ claimant: Address;
100
+ /**
101
+ * The ID of the boost
102
+ *
103
+ * @type {bigint}
104
+ */
105
+ boostId: bigint;
106
+ /**
107
+ * The address of the referrer
108
+ *
109
+ * @type {?Address}
110
+ */
111
+ referrer?: Address;
112
+ }
113
+ /**
114
+ * Object representing the payload for signing before validation.
115
+ *
116
+ * @export
117
+ * @interface PayableLimitedSignerValidatorV2SignaturePayload
118
+ * @typedef {PayableLimitedSignerValidatorV2SignaturePayload}
119
+ */
120
+ export interface PayableLimitedSignerValidatorV2SignaturePayload {
121
+ /**
122
+ * The ID of the boost.
123
+ *
124
+ * @type {bigint}
125
+ */
126
+ boostId: bigint;
127
+ /**
128
+ * The ID of the incentive.
129
+ *
130
+ * @type {number}
131
+ */
132
+ incentiveQuantity: number;
133
+ /**
134
+ * The address of the claimant.
135
+ *
136
+ * @type {Address}
137
+ */
138
+ claimant: Address;
139
+ /**
140
+ * The claim data.
141
+ *
142
+ * @type {Hex}
143
+ */
144
+ incentiveData: Hex;
145
+ /**
146
+ * The address of the referrer (defaults to claimant if omitted)
147
+ *
148
+ * @type {?Address}
149
+ */
150
+ referrer?: Address;
151
+ }
152
+ /**
153
+ * A generic `viem.Log` event with support for `PayableLimitedSignerValidatorV2` event types.
154
+ *
155
+ * @export
156
+ * @typedef {PayableLimitedSignerValidatorV2Log}
157
+ */
158
+ export type PayableLimitedSignerValidatorV2Log<event extends ContractEventName<typeof payableLimitedSignerValidatorV2Abi> = ContractEventName<typeof payableLimitedSignerValidatorV2Abi>> = GenericLog<typeof payableLimitedSignerValidatorV2Abi, event>;
159
+ /**
160
+ * A validator that verifies signatures, limits claims per address, and requires a claim fee.
161
+ * The claim fee is stored on the base implementation and all clones read from it.
162
+ * This allows updating the fee globally by only changing it on the base.
163
+ *
164
+ * @export
165
+ * @class PayableLimitedSignerValidatorV2
166
+ * @extends {DeployableTarget}
167
+ */
168
+ export declare class PayableLimitedSignerValidatorV2 extends DeployableTarget<PayableLimitedSignerValidatorV2Payload, typeof payableLimitedSignerValidatorV2Abi> {
169
+ /**
170
+ * @inheritdoc
171
+ *
172
+ * @public
173
+ * @readonly
174
+ * @type {*}
175
+ */
176
+ readonly abi: readonly [{
177
+ readonly type: "constructor";
178
+ readonly inputs: readonly [{
179
+ readonly name: "owner_";
180
+ readonly internalType: "address";
181
+ readonly type: "address";
182
+ }, {
183
+ readonly name: "initialClaimFee_";
184
+ readonly internalType: "uint256";
185
+ readonly type: "uint256";
186
+ }];
187
+ readonly stateMutability: "nonpayable";
188
+ }, {
189
+ readonly type: "error";
190
+ readonly inputs: readonly [];
191
+ readonly name: "AlreadyInitialized";
192
+ }, {
193
+ readonly type: "error";
194
+ readonly inputs: readonly [];
195
+ readonly name: "CloneAlreadyInitialized";
196
+ }, {
197
+ readonly type: "error";
198
+ readonly inputs: readonly [];
199
+ readonly name: "FeeTransferFailed";
200
+ }, {
201
+ readonly type: "error";
202
+ readonly inputs: readonly [];
203
+ readonly name: "InitializerNotImplemented";
204
+ }, {
205
+ readonly type: "error";
206
+ readonly inputs: readonly [];
207
+ readonly name: "InvalidClaimFee";
208
+ }, {
209
+ readonly type: "error";
210
+ readonly inputs: readonly [{
211
+ readonly name: "available";
212
+ readonly internalType: "uint8";
213
+ readonly type: "uint8";
214
+ }, {
215
+ readonly name: "id";
216
+ readonly internalType: "uint256";
217
+ readonly type: "uint256";
218
+ }];
219
+ readonly name: "InvalidIncentive";
220
+ }, {
221
+ readonly type: "error";
222
+ readonly inputs: readonly [];
223
+ readonly name: "InvalidInitialization";
224
+ }, {
225
+ readonly type: "error";
226
+ readonly inputs: readonly [];
227
+ readonly name: "InvalidInitializationData";
228
+ }, {
229
+ readonly type: "error";
230
+ readonly inputs: readonly [];
231
+ readonly name: "LengthMismatch";
232
+ }, {
233
+ readonly type: "error";
234
+ readonly inputs: readonly [{
235
+ readonly name: "claimant";
236
+ readonly internalType: "address";
237
+ readonly type: "address";
238
+ }];
239
+ readonly name: "MaximumClaimed";
240
+ }, {
241
+ readonly type: "error";
242
+ readonly inputs: readonly [];
243
+ readonly name: "NewOwnerIsZeroAddress";
244
+ }, {
245
+ readonly type: "error";
246
+ readonly inputs: readonly [];
247
+ readonly name: "NoHandoverRequest";
248
+ }, {
249
+ readonly type: "error";
250
+ readonly inputs: readonly [];
251
+ readonly name: "NotInitializing";
252
+ }, {
253
+ readonly type: "error";
254
+ readonly inputs: readonly [];
255
+ readonly name: "Unauthorized";
256
+ }, {
257
+ readonly type: "error";
258
+ readonly inputs: readonly [];
259
+ readonly name: "Unauthorized";
260
+ }, {
261
+ readonly type: "event";
262
+ readonly anonymous: false;
263
+ readonly inputs: readonly [{
264
+ readonly name: "claimant";
265
+ readonly internalType: "address";
266
+ readonly type: "address";
267
+ readonly indexed: true;
268
+ }, {
269
+ readonly name: "boostId";
270
+ readonly internalType: "uint256";
271
+ readonly type: "uint256";
272
+ readonly indexed: true;
273
+ }, {
274
+ readonly name: "incentiveId";
275
+ readonly internalType: "uint256";
276
+ readonly type: "uint256";
277
+ readonly indexed: true;
278
+ }, {
279
+ readonly name: "fee";
280
+ readonly internalType: "uint256";
281
+ readonly type: "uint256";
282
+ readonly indexed: false;
283
+ }, {
284
+ readonly name: "feeReceiver";
285
+ readonly internalType: "address";
286
+ readonly type: "address";
287
+ readonly indexed: false;
288
+ }];
289
+ readonly name: "ClaimFeePaid";
290
+ }, {
291
+ readonly type: "event";
292
+ readonly anonymous: false;
293
+ readonly inputs: readonly [{
294
+ readonly name: "newFee";
295
+ readonly internalType: "uint256";
296
+ readonly type: "uint256";
297
+ readonly indexed: false;
298
+ }];
299
+ readonly name: "ClaimFeeUpdated";
300
+ }, {
301
+ readonly type: "event";
302
+ readonly anonymous: false;
303
+ readonly inputs: readonly [{
304
+ readonly name: "version";
305
+ readonly internalType: "uint64";
306
+ readonly type: "uint64";
307
+ readonly indexed: false;
308
+ }];
309
+ readonly name: "Initialized";
310
+ }, {
311
+ readonly type: "event";
312
+ readonly anonymous: false;
313
+ readonly inputs: readonly [{
314
+ readonly name: "pendingOwner";
315
+ readonly internalType: "address";
316
+ readonly type: "address";
317
+ readonly indexed: true;
318
+ }];
319
+ readonly name: "OwnershipHandoverCanceled";
320
+ }, {
321
+ readonly type: "event";
322
+ readonly anonymous: false;
323
+ readonly inputs: readonly [{
324
+ readonly name: "pendingOwner";
325
+ readonly internalType: "address";
326
+ readonly type: "address";
327
+ readonly indexed: true;
328
+ }];
329
+ readonly name: "OwnershipHandoverRequested";
330
+ }, {
331
+ readonly type: "event";
332
+ readonly anonymous: false;
333
+ readonly inputs: readonly [{
334
+ readonly name: "oldOwner";
335
+ readonly internalType: "address";
336
+ readonly type: "address";
337
+ readonly indexed: true;
338
+ }, {
339
+ readonly name: "newOwner";
340
+ readonly internalType: "address";
341
+ readonly type: "address";
342
+ readonly indexed: true;
343
+ }];
344
+ readonly name: "OwnershipTransferred";
345
+ }, {
346
+ readonly type: "event";
347
+ readonly anonymous: false;
348
+ readonly inputs: readonly [{
349
+ readonly name: "validatorCaller";
350
+ readonly internalType: "address";
351
+ readonly type: "address";
352
+ readonly indexed: false;
353
+ }];
354
+ readonly name: "SignerValidatorV2Initialized";
355
+ }, {
356
+ readonly type: "function";
357
+ readonly inputs: readonly [];
358
+ readonly name: "cancelOwnershipHandover";
359
+ readonly outputs: readonly [];
360
+ readonly stateMutability: "payable";
361
+ }, {
362
+ readonly type: "function";
363
+ readonly inputs: readonly [];
364
+ readonly name: "claimFee";
365
+ readonly outputs: readonly [{
366
+ readonly name: "";
367
+ readonly internalType: "uint256";
368
+ readonly type: "uint256";
369
+ }];
370
+ readonly stateMutability: "view";
371
+ }, {
372
+ readonly type: "function";
373
+ readonly inputs: readonly [{
374
+ readonly name: "pendingOwner";
375
+ readonly internalType: "address";
376
+ readonly type: "address";
377
+ }];
378
+ readonly name: "completeOwnershipHandover";
379
+ readonly outputs: readonly [];
380
+ readonly stateMutability: "payable";
381
+ }, {
382
+ readonly type: "function";
383
+ readonly inputs: readonly [];
384
+ readonly name: "eip712Domain";
385
+ readonly outputs: readonly [{
386
+ readonly name: "fields";
387
+ readonly internalType: "bytes1";
388
+ readonly type: "bytes1";
389
+ }, {
390
+ readonly name: "name";
391
+ readonly internalType: "string";
392
+ readonly type: "string";
393
+ }, {
394
+ readonly name: "version";
395
+ readonly internalType: "string";
396
+ readonly type: "string";
397
+ }, {
398
+ readonly name: "chainId";
399
+ readonly internalType: "uint256";
400
+ readonly type: "uint256";
401
+ }, {
402
+ readonly name: "verifyingContract";
403
+ readonly internalType: "address";
404
+ readonly type: "address";
405
+ }, {
406
+ readonly name: "salt";
407
+ readonly internalType: "bytes32";
408
+ readonly type: "bytes32";
409
+ }, {
410
+ readonly name: "extensions";
411
+ readonly internalType: "uint256[]";
412
+ readonly type: "uint256[]";
413
+ }];
414
+ readonly stateMutability: "view";
415
+ }, {
416
+ readonly type: "function";
417
+ readonly inputs: readonly [];
418
+ readonly name: "getClaimFee";
419
+ readonly outputs: readonly [{
420
+ readonly name: "";
421
+ readonly internalType: "uint256";
422
+ readonly type: "uint256";
423
+ }];
424
+ readonly stateMutability: "view";
425
+ }, {
426
+ readonly type: "function";
427
+ readonly inputs: readonly [];
428
+ readonly name: "getComponentInterface";
429
+ readonly outputs: readonly [{
430
+ readonly name: "";
431
+ readonly internalType: "bytes4";
432
+ readonly type: "bytes4";
433
+ }];
434
+ readonly stateMutability: "pure";
435
+ }, {
436
+ readonly type: "function";
437
+ readonly inputs: readonly [{
438
+ readonly name: "boostId";
439
+ readonly internalType: "uint256";
440
+ readonly type: "uint256";
441
+ }, {
442
+ readonly name: "incentiveId";
443
+ readonly internalType: "uint256";
444
+ readonly type: "uint256";
445
+ }, {
446
+ readonly name: "claimant";
447
+ readonly internalType: "address";
448
+ readonly type: "address";
449
+ }];
450
+ readonly name: "hashClaimantData";
451
+ readonly outputs: readonly [{
452
+ readonly name: "hash";
453
+ readonly internalType: "bytes32";
454
+ readonly type: "bytes32";
455
+ }];
456
+ readonly stateMutability: "pure";
457
+ }, {
458
+ readonly type: "function";
459
+ readonly inputs: readonly [{
460
+ readonly name: "boostId";
461
+ readonly internalType: "uint256";
462
+ readonly type: "uint256";
463
+ }, {
464
+ readonly name: "incentiveQuantity";
465
+ readonly internalType: "uint8";
466
+ readonly type: "uint8";
467
+ }, {
468
+ readonly name: "claimant";
469
+ readonly internalType: "address";
470
+ readonly type: "address";
471
+ }, {
472
+ readonly name: "incentiveData";
473
+ readonly internalType: "bytes";
474
+ readonly type: "bytes";
475
+ }, {
476
+ readonly name: "referrer";
477
+ readonly internalType: "address";
478
+ readonly type: "address";
479
+ }];
480
+ readonly name: "hashSignerData";
481
+ readonly outputs: readonly [{
482
+ readonly name: "hashedSignerData";
483
+ readonly internalType: "bytes32";
484
+ readonly type: "bytes32";
485
+ }];
486
+ readonly stateMutability: "view";
487
+ }, {
488
+ readonly type: "function";
489
+ readonly inputs: readonly [{
490
+ readonly name: "data_";
491
+ readonly internalType: "bytes";
492
+ readonly type: "bytes";
493
+ }];
494
+ readonly name: "initialize";
495
+ readonly outputs: readonly [];
496
+ readonly stateMutability: "nonpayable";
497
+ }, {
498
+ readonly type: "function";
499
+ readonly inputs: readonly [];
500
+ readonly name: "maxClaimCount";
501
+ readonly outputs: readonly [{
502
+ readonly name: "";
503
+ readonly internalType: "uint256";
504
+ readonly type: "uint256";
505
+ }];
506
+ readonly stateMutability: "view";
507
+ }, {
508
+ readonly type: "function";
509
+ readonly inputs: readonly [];
510
+ readonly name: "owner";
511
+ readonly outputs: readonly [{
512
+ readonly name: "result";
513
+ readonly internalType: "address";
514
+ readonly type: "address";
515
+ }];
516
+ readonly stateMutability: "view";
517
+ }, {
518
+ readonly type: "function";
519
+ readonly inputs: readonly [{
520
+ readonly name: "pendingOwner";
521
+ readonly internalType: "address";
522
+ readonly type: "address";
523
+ }];
524
+ readonly name: "ownershipHandoverExpiresAt";
525
+ readonly outputs: readonly [{
526
+ readonly name: "result";
527
+ readonly internalType: "uint256";
528
+ readonly type: "uint256";
529
+ }];
530
+ readonly stateMutability: "view";
531
+ }, {
532
+ readonly type: "function";
533
+ readonly inputs: readonly [{
534
+ readonly name: "";
535
+ readonly internalType: "bytes32";
536
+ readonly type: "bytes32";
537
+ }];
538
+ readonly name: "quantityClaimed";
539
+ readonly outputs: readonly [{
540
+ readonly name: "";
541
+ readonly internalType: "uint256";
542
+ readonly type: "uint256";
543
+ }];
544
+ readonly stateMutability: "view";
545
+ }, {
546
+ readonly type: "function";
547
+ readonly inputs: readonly [];
548
+ readonly name: "renounceOwnership";
549
+ readonly outputs: readonly [];
550
+ readonly stateMutability: "payable";
551
+ }, {
552
+ readonly type: "function";
553
+ readonly inputs: readonly [];
554
+ readonly name: "requestOwnershipHandover";
555
+ readonly outputs: readonly [];
556
+ readonly stateMutability: "payable";
557
+ }, {
558
+ readonly type: "function";
559
+ readonly inputs: readonly [{
560
+ readonly name: "signers_";
561
+ readonly internalType: "address[]";
562
+ readonly type: "address[]";
563
+ }, {
564
+ readonly name: "authorized_";
565
+ readonly internalType: "bool[]";
566
+ readonly type: "bool[]";
567
+ }];
568
+ readonly name: "setAuthorized";
569
+ readonly outputs: readonly [];
570
+ readonly stateMutability: "nonpayable";
571
+ }, {
572
+ readonly type: "function";
573
+ readonly inputs: readonly [{
574
+ readonly name: "newFee";
575
+ readonly internalType: "uint256";
576
+ readonly type: "uint256";
577
+ }];
578
+ readonly name: "setClaimFee";
579
+ readonly outputs: readonly [];
580
+ readonly stateMutability: "nonpayable";
581
+ }, {
582
+ readonly type: "function";
583
+ readonly inputs: readonly [{
584
+ readonly name: "newCaller";
585
+ readonly internalType: "address";
586
+ readonly type: "address";
587
+ }];
588
+ readonly name: "setValidatorCaller";
589
+ readonly outputs: readonly [];
590
+ readonly stateMutability: "nonpayable";
591
+ }, {
592
+ readonly type: "function";
593
+ readonly inputs: readonly [{
594
+ readonly name: "";
595
+ readonly internalType: "address";
596
+ readonly type: "address";
597
+ }];
598
+ readonly name: "signers";
599
+ readonly outputs: readonly [{
600
+ readonly name: "";
601
+ readonly internalType: "bool";
602
+ readonly type: "bool";
603
+ }];
604
+ readonly stateMutability: "view";
605
+ }, {
606
+ readonly type: "function";
607
+ readonly inputs: readonly [{
608
+ readonly name: "interfaceId";
609
+ readonly internalType: "bytes4";
610
+ readonly type: "bytes4";
611
+ }];
612
+ readonly name: "supportsInterface";
613
+ readonly outputs: readonly [{
614
+ readonly name: "";
615
+ readonly internalType: "bool";
616
+ readonly type: "bool";
617
+ }];
618
+ readonly stateMutability: "view";
619
+ }, {
620
+ readonly type: "function";
621
+ readonly inputs: readonly [{
622
+ readonly name: "newOwner";
623
+ readonly internalType: "address";
624
+ readonly type: "address";
625
+ }];
626
+ readonly name: "transferOwnership";
627
+ readonly outputs: readonly [];
628
+ readonly stateMutability: "payable";
629
+ }, {
630
+ readonly type: "function";
631
+ readonly inputs: readonly [{
632
+ readonly name: "boostId";
633
+ readonly internalType: "uint256";
634
+ readonly type: "uint256";
635
+ }, {
636
+ readonly name: "incentiveId";
637
+ readonly internalType: "uint256";
638
+ readonly type: "uint256";
639
+ }, {
640
+ readonly name: "claimant";
641
+ readonly internalType: "address";
642
+ readonly type: "address";
643
+ }, {
644
+ readonly name: "claimData";
645
+ readonly internalType: "bytes";
646
+ readonly type: "bytes";
647
+ }];
648
+ readonly name: "validate";
649
+ readonly outputs: readonly [{
650
+ readonly name: "";
651
+ readonly internalType: "bool";
652
+ readonly type: "bool";
653
+ }];
654
+ readonly stateMutability: "payable";
655
+ }, {
656
+ readonly type: "function";
657
+ readonly inputs: readonly [];
658
+ readonly name: "validatorName";
659
+ readonly outputs: readonly [{
660
+ readonly name: "";
661
+ readonly internalType: "string";
662
+ readonly type: "string";
663
+ }];
664
+ readonly stateMutability: "pure";
665
+ }];
666
+ /**
667
+ * @inheritdoc
668
+ *
669
+ * @public
670
+ * @static
671
+ * @type {Record<number, Address>}
672
+ */
673
+ static bases: Record<number, Address>;
674
+ /**
675
+ * @inheritdoc
676
+ *
677
+ * @public
678
+ * @static
679
+ * @type {RegistryType}
680
+ */
681
+ static registryType: RegistryType;
682
+ /**
683
+ * Get the current claim fee. For clones, this reads from the base implementation.
684
+ *
685
+ * @public
686
+ * @async
687
+ * @param {?ReadParams} [params]
688
+ * @returns {Promise<bigint>}
689
+ */
690
+ getClaimFee(params?: ReadParams): Promise<bigint>;
691
+ /**
692
+ * Set the claim fee (only callable on the base implementation by the owner)
693
+ *
694
+ * @public
695
+ * @async
696
+ * @param {bigint} newFee - The new claim fee amount in wei
697
+ * @param {?WriteParams} [params]
698
+ * @returns {Promise<void>}
699
+ */
700
+ setClaimFee(newFee: bigint, params?: WriteParams): Promise<void>;
701
+ /**
702
+ * Set the claim fee (only callable on the base implementation by the owner)
703
+ *
704
+ * @public
705
+ * @async
706
+ * @param {bigint} newFee - The new claim fee amount in wei
707
+ * @param {?WriteParams} [params]
708
+ * @returns {Promise<{ hash: `0x${string}`; result: void; }>}
709
+ */
710
+ setClaimFeeRaw(newFee: bigint, params?: WriteParams): Promise<{
711
+ hash: `0x${string}`;
712
+ result: void;
713
+ }>;
714
+ /**
715
+ * The set of authorized signers
716
+ *
717
+ * @public
718
+ * @async
719
+ * @param {Address} address
720
+ * @param {?ReadParams} [params]
721
+ * @returns {Promise<boolean>}
722
+ */
723
+ signers(address: Address, params?: ReadParams): Promise<boolean>;
724
+ /**
725
+ * Retrieve the hash and signer data for a given hash
726
+ *
727
+ * @public
728
+ * @async
729
+ * @param {PayableLimitedSignerValidatorV2SignaturePayload} payload
730
+ * @param {?ReadParams} [params]
731
+ * @returns {Promise<Hex>}
732
+ */
733
+ hashSignerData(payload: PayableLimitedSignerValidatorV2SignaturePayload, params?: ReadParams): Promise<`0x${string}`>;
734
+ /**
735
+ * Validate that the action has been completed successfully.
736
+ * Requires exact payment of the claim fee.
737
+ *
738
+ * @public
739
+ * @async
740
+ * @param {PayableLimitedSignerValidatorV2ValidatePayload} payload
741
+ * @param {?WriteParams} [params]
742
+ * @returns {Promise<boolean>} - True if the action has been validated
743
+ */
744
+ protected validate(payload: PayableLimitedSignerValidatorV2ValidatePayload, params?: WriteParams): Promise<boolean>;
745
+ /**
746
+ * Validate that the action has been completed successfully.
747
+ * Requires exact payment of the claim fee.
748
+ *
749
+ * @public
750
+ * @async
751
+ * @param {PayableLimitedSignerValidatorV2ValidatePayload} payload
752
+ * @param {?WriteParams} [params]
753
+ * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>}
754
+ */
755
+ protected validateRaw(payload: PayableLimitedSignerValidatorV2ValidatePayload, params?: WriteParams): Promise<{
756
+ hash: `0x${string}`;
757
+ result: boolean;
758
+ }>;
759
+ /**
760
+ * Set the authorized status of a signer
761
+ *
762
+ * @public
763
+ * @async
764
+ * @param {Address[]} addresses - The list of signers to update
765
+ * @param {boolean[]} allowed - The authorized status of each signer
766
+ * @param {?WriteParams} [params]
767
+ * @returns {Promise<void>}
768
+ */
769
+ setAuthorized(addresses: Address[], allowed: boolean[], params?: WriteParams): Promise<void>;
770
+ /**
771
+ * Set the authorized status of a signer
772
+ *
773
+ * @public
774
+ * @async
775
+ * @param {Address[]} addresses - The list of signers to update
776
+ * @param {boolean[]} allowed - The authorized status of each signer
777
+ * @param {?WriteParams} [params]
778
+ * @returns {Promise<{ hash: `0x${string}`; result: void; }>}
779
+ */
780
+ setAuthorizedRaw(addresses: Address[], allowed: boolean[], params?: WriteParams): Promise<{
781
+ hash: `0x${string}`;
782
+ result: void;
783
+ }>;
784
+ /**
785
+ * Update the authorized caller of the validator function
786
+ *
787
+ * @public
788
+ * @async
789
+ * @param {Address} address
790
+ * @param {?WriteParams} [params]
791
+ * @returns {Promise<{ hash: `0x${string}`; result: void; }>}
792
+ */
793
+ setValidatorCallerRaw(address: Address, params?: WriteParams): Promise<{
794
+ hash: `0x${string}`;
795
+ result: void;
796
+ }>;
797
+ /**
798
+ * Update the authorized caller of the validator function
799
+ *
800
+ * @public
801
+ * @async
802
+ * @param {Address} address
803
+ * @param {?WriteParams} [params]
804
+ * @returns {Promise<void>}
805
+ */
806
+ setValidatorCaller(address: Address, params?: WriteParams): Promise<void>;
807
+ /**
808
+ * Properly encodes the data needed to claim
809
+ *
810
+ * @public
811
+ * @async
812
+ * @param {PayableLimitedSignerValidatorV2ClaimDataParams} params
813
+ * @returns {Promise<Hex>}
814
+ */
815
+ encodeClaimData(params: Omit<PayableLimitedSignerValidatorV2ClaimDataParams, 'validator'>): Promise<Hex>;
816
+ /**
817
+ * @inheritdoc
818
+ *
819
+ * @public
820
+ * @param {?PayableLimitedSignerValidatorV2Payload} [_payload]
821
+ * @param {?DeployableOptions} [_options]
822
+ * @returns {GenericDeployableParams}
823
+ */
824
+ buildParameters(_payload?: PayableLimitedSignerValidatorV2Payload, _options?: DeployableOptions): GenericDeployableParams;
825
+ }
826
+ /**
827
+ * Payable Limited Signer Validator Claim Data Payload Preparation
828
+ *
829
+ * @export
830
+ * @async
831
+ * @param {PayableLimitedSignerValidatorV2ClaimDataParams} param0
832
+ * @returns {Promise<Hex>}
833
+ */
834
+ export declare function preparePayableLimitedSignerValidatorV2ClaimDataPayload({ signer, incentiveData, chainId, validator, incentiveQuantity, claimant, boostId, referrer, }: PayableLimitedSignerValidatorV2ClaimDataParams): Promise<Hex>;
835
+ /**
836
+ * Given a {@link PayableLimitedSignerValidatorV2InputParams}, properly encode the initialization payload.
837
+ *
838
+ * @param {LimitedSignerValidatorInputParams} param0
839
+ * @param {Address} param0.signer
840
+ * @param {Hex} param0.signature
841
+ * @param {number} param0.incentiveQuantity
842
+ * @returns {Hex}
843
+ */
844
+ export declare function preparePayableLimitedSignerValidatorV2InputParams({ signer, signature, incentiveQuantity, }: LimitedSignerValidatorInputParams): `0x${string}`;
845
+ /**
846
+ * Prepare the initialization payload for a PayableLimitedSignerValidatorV2
847
+ *
848
+ * @export
849
+ * @param {PayableLimitedSignerValidatorV2Payload & { baseImplementation: Address }} payload
850
+ * @returns {Hex}
851
+ */
852
+ export declare function preparePayableLimitedSignerValidatorV2Payload(payload: PayableLimitedSignerValidatorV2Payload & {
853
+ baseImplementation: Address;
854
+ }): Hex;
855
+ //# sourceMappingURL=PayableLimitedSignerValidatorV2.d.ts.map