@boostxyz/sdk 7.3.0 → 7.5.0

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