@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,728 @@
1
+ import { signerValidatorV2Abi } 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
+ export { signerValidatorV2Abi };
7
+ /**
8
+ * Object reprentation of a {@link SignerValidatorV2} initialization payload
9
+ *
10
+ * @export
11
+ * @interface SignerValidatorV2Payload
12
+ * @typedef {SignerValidatorV2Payload}
13
+ */
14
+ export interface SignerValidatorV2Payload {
15
+ /**
16
+ * The list of authorized signers. The first address in the list will be the initial owner of the contract.
17
+ *
18
+ * @type {Address[]}
19
+ */
20
+ signers: Address[];
21
+ /**
22
+ * The authorized caller of the {@link prepareSignerValidatorV2} function
23
+ * @type {Address}
24
+ */
25
+ validatorCaller: Address;
26
+ }
27
+ /**
28
+ * Description placeholder
29
+ *
30
+ * @export
31
+ * @interface SignerValidatorV2ValidatePayload
32
+ * @typedef {SignerValidatorV2ValidatePayload}
33
+ */
34
+ export interface SignerValidatorV2ValidatePayload {
35
+ /**
36
+ * The ID of the boost.
37
+ *
38
+ * @type {bigint}
39
+ */
40
+ boostId: bigint;
41
+ /**
42
+ * The ID of the incentive.
43
+ *
44
+ * @type {bigint}
45
+ */
46
+ incentiveId: bigint;
47
+ /**
48
+ * The address of the claimant.
49
+ *
50
+ * @type {Address}
51
+ */
52
+ claimant: Address;
53
+ /**
54
+ * The claim data.
55
+ *
56
+ * @type {Hex}
57
+ */
58
+ claimData: Hex;
59
+ }
60
+ /**
61
+ * Signer Validator Claim Data Payload
62
+ *
63
+ * @export
64
+ * @interface SignerValidatorV2ClaimDataParams
65
+ * @typedef {SignerValidatorV2ClaimDataParams}
66
+ */
67
+ export interface SignerValidatorV2ClaimDataParams {
68
+ /**
69
+ * The signer with which to sign the input
70
+ *
71
+ * @type {{
72
+ * account: Address;
73
+ * key: Hex;
74
+ * privateKey: PrivateKeyAccount;
75
+ * }}
76
+ */
77
+ signer: {
78
+ account: Address;
79
+ key: Hex;
80
+ privateKey: PrivateKeyAccount;
81
+ };
82
+ /**
83
+ * The encoded data to provide the underlying incentive. You can use {@link prepareAllowListIncentivePayload}, {@link prepareCGDAIncentivePayload}, {@link prepareERC20IncentivePayload}, {@link prepareERC1155IncentivePayload}, or {@link preparePointsIncentivePayload}
84
+ *
85
+ * @type {Hex}
86
+ */
87
+ incentiveData: Hex;
88
+ /**
89
+ * The chain id to target
90
+ *
91
+ * @type {number}
92
+ */
93
+ chainId: number;
94
+ /**
95
+ * The address of the validator
96
+ *
97
+ * @type {Address}
98
+ */
99
+ validator: Address;
100
+ /**
101
+ * The total number of incentives on the Boost
102
+ *
103
+ * @type {number}
104
+ */
105
+ incentiveQuantity: number;
106
+ /**
107
+ * The address of the claimant
108
+ *
109
+ * @type {Address}
110
+ */
111
+ claimant: Address;
112
+ /**
113
+ * The ID of the boost
114
+ *
115
+ * @type {bigint}
116
+ */
117
+ boostId: bigint;
118
+ /**
119
+ * The address of the referrer
120
+ *
121
+ * @type {?Address}
122
+ */
123
+ referrer?: Address;
124
+ }
125
+ /**
126
+ * Object representation of a {@link SignerValidatorV2InputParams} initialization payload
127
+ *
128
+ * @export
129
+ * @interface SignerValidatorV2InputParams
130
+ * @typedef {SignerValidatorV2InputParams}
131
+ */
132
+ export interface SignerValidatorV2InputParams {
133
+ /**
134
+ * The signer address.
135
+ *
136
+ * @type {Address}
137
+ */
138
+ signer: Address;
139
+ /**
140
+ * The signature data.
141
+ *
142
+ * @type {Hex}
143
+ */
144
+ signature: Hex;
145
+ /**
146
+ * The total number of incentives on the Boost
147
+ *
148
+ * @type {number}
149
+ */
150
+ incentiveQuantity: number;
151
+ }
152
+ /**
153
+ * Object representing the payload for signing before validaton.
154
+ *
155
+ * @export
156
+ * @interface SignerValidatorV2SignaturePayload
157
+ * @typedef {SignerValidatorV2SignaturePayload}
158
+ */
159
+ export interface SignerValidatorV2SignaturePayload {
160
+ /**
161
+ * The ID of the boost.
162
+ *
163
+ * @type {bigint}
164
+ */
165
+ boostId: bigint;
166
+ /**
167
+ * The ID of the incentive.
168
+ *
169
+ * @type {number}
170
+ */
171
+ incentiveQuantity: number;
172
+ /**
173
+ * The address of the claimant.
174
+ *
175
+ * @type {Address}
176
+ */
177
+ claimant: Address;
178
+ /**
179
+ * The claim data.
180
+ *
181
+ * @type {Hex}
182
+ */
183
+ incentiveData: Hex;
184
+ /**
185
+ * The address of the referrer (defaults to claimant if omitted)
186
+ *
187
+ * @type {?Address}
188
+ */
189
+ referrer?: Address;
190
+ }
191
+ /**
192
+ * A generic `viem.Log` event with support for `BoostCore` event types.
193
+ *
194
+ * @export
195
+ * @typedef {SignerValidatorV2Log}
196
+ * @template {ContractEventName<
197
+ * typeof signerValidatorV2Abi
198
+ * >} [event=ContractEventName<typeof signerValidatorV2Abi>]
199
+ */
200
+ export type SignerValidatorV2Log<event extends ContractEventName<typeof signerValidatorV2Abi> = ContractEventName<typeof signerValidatorV2Abi>> = GenericLog<typeof signerValidatorV2Abi, event>;
201
+ /**
202
+ * A simple implementation of a Validator that verifies a given signature and checks the recovered address against a set of authorized signers
203
+ *
204
+ * @export
205
+ * @class SignerValidatorV2
206
+ * @typedef {SignerValidatorV2}
207
+ * @extends {DeployableTarget<SignerValidatorV2Payload>}
208
+ */
209
+ export declare class SignerValidatorV2 extends DeployableTarget<SignerValidatorV2Payload, typeof signerValidatorV2Abi> {
210
+ /**
211
+ * @inheritdoc
212
+ *
213
+ * @public
214
+ * @readonly
215
+ * @type {*}
216
+ */
217
+ readonly abi: readonly [{
218
+ readonly type: "constructor";
219
+ readonly inputs: readonly [];
220
+ readonly stateMutability: "nonpayable";
221
+ }, {
222
+ readonly type: "error";
223
+ readonly inputs: readonly [];
224
+ readonly name: "AlreadyInitialized";
225
+ }, {
226
+ readonly type: "error";
227
+ readonly inputs: readonly [];
228
+ readonly name: "CloneAlreadyInitialized";
229
+ }, {
230
+ readonly type: "error";
231
+ readonly inputs: readonly [];
232
+ readonly name: "InitializerNotImplemented";
233
+ }, {
234
+ readonly type: "error";
235
+ readonly inputs: readonly [{
236
+ readonly name: "available";
237
+ readonly internalType: "uint8";
238
+ readonly type: "uint8";
239
+ }, {
240
+ readonly name: "id";
241
+ readonly internalType: "uint256";
242
+ readonly type: "uint256";
243
+ }];
244
+ readonly name: "InvalidIncentive";
245
+ }, {
246
+ readonly type: "error";
247
+ readonly inputs: readonly [];
248
+ readonly name: "InvalidInitialization";
249
+ }, {
250
+ readonly type: "error";
251
+ readonly inputs: readonly [];
252
+ readonly name: "InvalidInitializationData";
253
+ }, {
254
+ readonly type: "error";
255
+ readonly inputs: readonly [];
256
+ readonly name: "LengthMismatch";
257
+ }, {
258
+ readonly type: "error";
259
+ readonly inputs: readonly [];
260
+ readonly name: "NewOwnerIsZeroAddress";
261
+ }, {
262
+ readonly type: "error";
263
+ readonly inputs: readonly [];
264
+ readonly name: "NoHandoverRequest";
265
+ }, {
266
+ readonly type: "error";
267
+ readonly inputs: readonly [];
268
+ readonly name: "NotInitializing";
269
+ }, {
270
+ readonly type: "error";
271
+ readonly inputs: readonly [];
272
+ readonly name: "Unauthorized";
273
+ }, {
274
+ readonly type: "error";
275
+ readonly inputs: readonly [];
276
+ readonly name: "Unauthorized";
277
+ }, {
278
+ readonly type: "event";
279
+ readonly anonymous: false;
280
+ readonly inputs: readonly [{
281
+ readonly name: "version";
282
+ readonly internalType: "uint64";
283
+ readonly type: "uint64";
284
+ readonly indexed: false;
285
+ }];
286
+ readonly name: "Initialized";
287
+ }, {
288
+ readonly type: "event";
289
+ readonly anonymous: false;
290
+ readonly inputs: readonly [{
291
+ readonly name: "pendingOwner";
292
+ readonly internalType: "address";
293
+ readonly type: "address";
294
+ readonly indexed: true;
295
+ }];
296
+ readonly name: "OwnershipHandoverCanceled";
297
+ }, {
298
+ readonly type: "event";
299
+ readonly anonymous: false;
300
+ readonly inputs: readonly [{
301
+ readonly name: "pendingOwner";
302
+ readonly internalType: "address";
303
+ readonly type: "address";
304
+ readonly indexed: true;
305
+ }];
306
+ readonly name: "OwnershipHandoverRequested";
307
+ }, {
308
+ readonly type: "event";
309
+ readonly anonymous: false;
310
+ readonly inputs: readonly [{
311
+ readonly name: "oldOwner";
312
+ readonly internalType: "address";
313
+ readonly type: "address";
314
+ readonly indexed: true;
315
+ }, {
316
+ readonly name: "newOwner";
317
+ readonly internalType: "address";
318
+ readonly type: "address";
319
+ readonly indexed: true;
320
+ }];
321
+ readonly name: "OwnershipTransferred";
322
+ }, {
323
+ readonly type: "event";
324
+ readonly anonymous: false;
325
+ readonly inputs: readonly [{
326
+ readonly name: "validatorCaller";
327
+ readonly internalType: "address";
328
+ readonly type: "address";
329
+ readonly indexed: false;
330
+ }];
331
+ readonly name: "SignerValidatorV2Initialized";
332
+ }, {
333
+ readonly type: "function";
334
+ readonly inputs: readonly [];
335
+ readonly name: "cancelOwnershipHandover";
336
+ readonly outputs: readonly [];
337
+ readonly stateMutability: "payable";
338
+ }, {
339
+ readonly type: "function";
340
+ readonly inputs: readonly [{
341
+ readonly name: "pendingOwner";
342
+ readonly internalType: "address";
343
+ readonly type: "address";
344
+ }];
345
+ readonly name: "completeOwnershipHandover";
346
+ readonly outputs: readonly [];
347
+ readonly stateMutability: "payable";
348
+ }, {
349
+ readonly type: "function";
350
+ readonly inputs: readonly [];
351
+ readonly name: "eip712Domain";
352
+ readonly outputs: readonly [{
353
+ readonly name: "fields";
354
+ readonly internalType: "bytes1";
355
+ readonly type: "bytes1";
356
+ }, {
357
+ readonly name: "name";
358
+ readonly internalType: "string";
359
+ readonly type: "string";
360
+ }, {
361
+ readonly name: "version";
362
+ readonly internalType: "string";
363
+ readonly type: "string";
364
+ }, {
365
+ readonly name: "chainId";
366
+ readonly internalType: "uint256";
367
+ readonly type: "uint256";
368
+ }, {
369
+ readonly name: "verifyingContract";
370
+ readonly internalType: "address";
371
+ readonly type: "address";
372
+ }, {
373
+ readonly name: "salt";
374
+ readonly internalType: "bytes32";
375
+ readonly type: "bytes32";
376
+ }, {
377
+ readonly name: "extensions";
378
+ readonly internalType: "uint256[]";
379
+ readonly type: "uint256[]";
380
+ }];
381
+ readonly stateMutability: "view";
382
+ }, {
383
+ readonly type: "function";
384
+ readonly inputs: readonly [];
385
+ readonly name: "getComponentInterface";
386
+ readonly outputs: readonly [{
387
+ readonly name: "";
388
+ readonly internalType: "bytes4";
389
+ readonly type: "bytes4";
390
+ }];
391
+ readonly stateMutability: "pure";
392
+ }, {
393
+ readonly type: "function";
394
+ readonly inputs: readonly [{
395
+ readonly name: "boostId";
396
+ readonly internalType: "uint256";
397
+ readonly type: "uint256";
398
+ }, {
399
+ readonly name: "incentiveQuantity";
400
+ readonly internalType: "uint8";
401
+ readonly type: "uint8";
402
+ }, {
403
+ readonly name: "claimant";
404
+ readonly internalType: "address";
405
+ readonly type: "address";
406
+ }, {
407
+ readonly name: "incentiveData";
408
+ readonly internalType: "bytes";
409
+ readonly type: "bytes";
410
+ }, {
411
+ readonly name: "referrer";
412
+ readonly internalType: "address";
413
+ readonly type: "address";
414
+ }];
415
+ readonly name: "hashSignerData";
416
+ readonly outputs: readonly [{
417
+ readonly name: "hashedSignerData";
418
+ readonly internalType: "bytes32";
419
+ readonly type: "bytes32";
420
+ }];
421
+ readonly stateMutability: "view";
422
+ }, {
423
+ readonly type: "function";
424
+ readonly inputs: readonly [{
425
+ readonly name: "data_";
426
+ readonly internalType: "bytes";
427
+ readonly type: "bytes";
428
+ }];
429
+ readonly name: "initialize";
430
+ readonly outputs: readonly [];
431
+ readonly stateMutability: "nonpayable";
432
+ }, {
433
+ readonly type: "function";
434
+ readonly inputs: readonly [];
435
+ readonly name: "owner";
436
+ readonly outputs: readonly [{
437
+ readonly name: "result";
438
+ readonly internalType: "address";
439
+ readonly type: "address";
440
+ }];
441
+ readonly stateMutability: "view";
442
+ }, {
443
+ readonly type: "function";
444
+ readonly inputs: readonly [{
445
+ readonly name: "pendingOwner";
446
+ readonly internalType: "address";
447
+ readonly type: "address";
448
+ }];
449
+ readonly name: "ownershipHandoverExpiresAt";
450
+ readonly outputs: readonly [{
451
+ readonly name: "result";
452
+ readonly internalType: "uint256";
453
+ readonly type: "uint256";
454
+ }];
455
+ readonly stateMutability: "view";
456
+ }, {
457
+ readonly type: "function";
458
+ readonly inputs: readonly [];
459
+ readonly name: "renounceOwnership";
460
+ readonly outputs: readonly [];
461
+ readonly stateMutability: "payable";
462
+ }, {
463
+ readonly type: "function";
464
+ readonly inputs: readonly [];
465
+ readonly name: "requestOwnershipHandover";
466
+ readonly outputs: readonly [];
467
+ readonly stateMutability: "payable";
468
+ }, {
469
+ readonly type: "function";
470
+ readonly inputs: readonly [{
471
+ readonly name: "signers_";
472
+ readonly internalType: "address[]";
473
+ readonly type: "address[]";
474
+ }, {
475
+ readonly name: "authorized_";
476
+ readonly internalType: "bool[]";
477
+ readonly type: "bool[]";
478
+ }];
479
+ readonly name: "setAuthorized";
480
+ readonly outputs: readonly [];
481
+ readonly stateMutability: "nonpayable";
482
+ }, {
483
+ readonly type: "function";
484
+ readonly inputs: readonly [{
485
+ readonly name: "newCaller";
486
+ readonly internalType: "address";
487
+ readonly type: "address";
488
+ }];
489
+ readonly name: "setValidatorCaller";
490
+ readonly outputs: readonly [];
491
+ readonly stateMutability: "nonpayable";
492
+ }, {
493
+ readonly type: "function";
494
+ readonly inputs: readonly [{
495
+ readonly name: "";
496
+ readonly internalType: "address";
497
+ readonly type: "address";
498
+ }];
499
+ readonly name: "signers";
500
+ readonly outputs: readonly [{
501
+ readonly name: "";
502
+ readonly internalType: "bool";
503
+ readonly type: "bool";
504
+ }];
505
+ readonly stateMutability: "view";
506
+ }, {
507
+ readonly type: "function";
508
+ readonly inputs: readonly [{
509
+ readonly name: "interfaceId";
510
+ readonly internalType: "bytes4";
511
+ readonly type: "bytes4";
512
+ }];
513
+ readonly name: "supportsInterface";
514
+ readonly outputs: readonly [{
515
+ readonly name: "";
516
+ readonly internalType: "bool";
517
+ readonly type: "bool";
518
+ }];
519
+ readonly stateMutability: "view";
520
+ }, {
521
+ readonly type: "function";
522
+ readonly inputs: readonly [{
523
+ readonly name: "newOwner";
524
+ readonly internalType: "address";
525
+ readonly type: "address";
526
+ }];
527
+ readonly name: "transferOwnership";
528
+ readonly outputs: readonly [];
529
+ readonly stateMutability: "payable";
530
+ }, {
531
+ readonly type: "function";
532
+ readonly inputs: readonly [{
533
+ readonly name: "boostId";
534
+ readonly internalType: "uint256";
535
+ readonly type: "uint256";
536
+ }, {
537
+ readonly name: "incentiveId";
538
+ readonly internalType: "uint256";
539
+ readonly type: "uint256";
540
+ }, {
541
+ readonly name: "claimant";
542
+ readonly internalType: "address";
543
+ readonly type: "address";
544
+ }, {
545
+ readonly name: "claimData";
546
+ readonly internalType: "bytes";
547
+ readonly type: "bytes";
548
+ }];
549
+ readonly name: "validate";
550
+ readonly outputs: readonly [{
551
+ readonly name: "";
552
+ readonly internalType: "bool";
553
+ readonly type: "bool";
554
+ }];
555
+ readonly stateMutability: "payable";
556
+ }, {
557
+ readonly type: "function";
558
+ readonly inputs: readonly [];
559
+ readonly name: "validatorName";
560
+ readonly outputs: readonly [{
561
+ readonly name: "";
562
+ readonly internalType: "string";
563
+ readonly type: "string";
564
+ }];
565
+ readonly stateMutability: "pure";
566
+ }];
567
+ /**
568
+ * @inheritdoc
569
+ *
570
+ * @public
571
+ * @static
572
+ * @type {Record<number, Address>}
573
+ */
574
+ static bases: Record<number, Address>;
575
+ /**
576
+ * @inheritdoc
577
+ *
578
+ * @public
579
+ * @static
580
+ * @type {RegistryType}
581
+ */
582
+ static registryType: RegistryType;
583
+ /**
584
+ * The set of authorized signers
585
+ *
586
+ * @public
587
+ * @async
588
+ * @param {Address} address
589
+ * @param {?ReadParams} [params]
590
+ * @returns {Promise<boolean>}
591
+ */
592
+ signers(address: Address, params?: ReadParams): Promise<boolean>;
593
+ /**
594
+ * Retrieve the hash and signer data for a given hash
595
+ *
596
+ * @public
597
+ * @async
598
+ * @param {SignerValidatorV2SignaturePayload} payload
599
+ * @param {?ReadParams} [params]
600
+ * @returns {Promise<Hex>}
601
+ */
602
+ hashSignerData(payload: SignerValidatorV2SignaturePayload, params?: ReadParams): Promise<`0x${string}`>;
603
+ /**
604
+ * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.
605
+ *
606
+ * @public
607
+ * @async
608
+ * @param {SignerValidatorV2ValidatePayload} payload
609
+ * @param {?WriteParams} [params]
610
+ * @returns {Promise<boolean>} - True if the action has been validated based on the data payload
611
+ */
612
+ validate(payload: SignerValidatorV2ValidatePayload, params?: WriteParams): Promise<boolean>;
613
+ /**
614
+ * Validate that the action has been completed successfully. The data payload is expected to be a tuple of (address signer, bytes32 hash, bytes signature). The signature is expected to be a valid ECDSA or EIP-1271 signature of a unique hash by an authorized signer.
615
+ *
616
+ * @public
617
+ * @async
618
+ * @param {SignerValidatorV2ValidatePayload} payload
619
+ * @param {?WriteParams} [params]
620
+ * @returns {Promise<boolean>} - True if the action has been validated based on the data payload
621
+ */
622
+ validateRaw(payload: SignerValidatorV2ValidatePayload, params?: WriteParams): Promise<{
623
+ hash: `0x${string}`;
624
+ result: boolean;
625
+ }>;
626
+ /**
627
+ * Set the authorized status of a signer
628
+ *
629
+ * @public
630
+ * @async
631
+ * @param {Address[]} addresses - The list of signers to update
632
+ * @param {boolean[]} allowed - The authorized status of each signer
633
+ * @param {?WriteParams} [params]
634
+ * @returns {Promise<void>}
635
+ */
636
+ setAuthorized(addresses: Address[], allowed: boolean[], params?: WriteParams): Promise<void>;
637
+ /**
638
+ * Set the authorized status of a signer
639
+ *
640
+ * @public
641
+ * @async
642
+ * @param {Address[]} addresses - The list of signers to update
643
+ * @param {boolean[]} allowed - The authorized status of each signer
644
+ * @param {?WriteParams} [params]
645
+ * @returns {Promise<{ hash: `0x${string}`; result: void; }>}
646
+ */
647
+ setAuthorizedRaw(addresses: Address[], allowed: boolean[], params?: WriteParams): Promise<{
648
+ hash: `0x${string}`;
649
+ result: void;
650
+ }>;
651
+ /**
652
+ * Update the authorized caller of the validator function
653
+ *
654
+ * @public
655
+ * @async
656
+ * @param {Address} address
657
+ * @param {?WriteParams} [params]
658
+ * @returns {Promise<{ hash: `0x${string}`; result: void; }>}
659
+ */
660
+ setValidatorCallerRaw(address: Address, params?: WriteParams): Promise<{
661
+ hash: `0x${string}`;
662
+ result: void;
663
+ }>;
664
+ /**
665
+ * Update the authorized caller of the validator function
666
+ *
667
+ * @public
668
+ * @async
669
+ * @param {Address} address
670
+ * @param {?WriteParams} [params]
671
+ * @returns {Promise<void>}
672
+ */
673
+ setValidatorCaller(address: Address, params?: WriteParams): Promise<void>;
674
+ /**
675
+ * Properly encodes the data needed to claim
676
+ *
677
+ * @public
678
+ * @async
679
+ * @param {SignerValidatorV2ClaimDataParams} params
680
+ * @returns {Promise<Hex>}
681
+ */
682
+ encodeClaimData(params: Omit<SignerValidatorV2ClaimDataParams, 'validator'>): Promise<Hex>;
683
+ /**
684
+ * @inheritdoc
685
+ *
686
+ * @public
687
+ * @param {?SignerValidatorV2Payload} [_payload]
688
+ * @param {?DeployableOptions} [_options]
689
+ * @returns {GenericDeployableParams}
690
+ */
691
+ buildParameters(_payload?: SignerValidatorV2Payload, _options?: DeployableOptions): GenericDeployableParams;
692
+ }
693
+ /**
694
+ * Signer Validator Claim Data Payload Preparation
695
+ *
696
+ * @export
697
+ * @async
698
+ * @param {SignerValidatorV2ClaimDataParams} param0
699
+ * @param {{ account: Address; key: Hex; privateKey: PrivateKeyAccount; }} param0.signer
700
+ * @param {Hex} param0.incentiveData
701
+ * @param {number} param0.chainId
702
+ * @param {Address} param0.validator
703
+ * @param {number} param0.incentiveQuantity
704
+ * @param {Address} param0.claimant
705
+ * @param {bigint} param0.boostId
706
+ * @returns {Promise<Hex>}
707
+ */
708
+ export declare function prepareSignerValidatorV2ClaimDataPayload({ signer, incentiveData, chainId, validator, incentiveQuantity, claimant, boostId, referrer, }: SignerValidatorV2ClaimDataParams): Promise<Hex>;
709
+ /**
710
+ * Given a {@link SignerValidatorV2InputParams}, properly encode the initialization payload.
711
+ *
712
+ * @param {SignerValidatorV2InputParams} param0
713
+ * @param {Address} param0.signer
714
+ * @param {Hex} param0.signature
715
+ * @param {number} param0.incentiveQuantity
716
+ * @returns {Hex}
717
+ */
718
+ export declare function prepareSignerValidatorV2InputParams({ signer, signature, incentiveQuantity, }: SignerValidatorV2InputParams): `0x${string}`;
719
+ /**
720
+ * Given a {@link SignerValidatorV2Payload}, properly encode the initialization payload.
721
+ *
722
+ * @param {SignerValidatorV2Payload} param0
723
+ * @param {Address[]} param0.signers
724
+ * @param {Address} param0.validatorCaller
725
+ * @returns {Hex}
726
+ */
727
+ export declare function prepareSignerValidatorV2Payload({ signers, validatorCaller, }: SignerValidatorV2Payload): `0x${string}`;
728
+ //# sourceMappingURL=SignerValidatorV2.d.ts.map