@boostxyz/sdk 6.1.3 → 7.0.0-canary.1

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 (186) hide show
  1. package/README.md +1 -1
  2. package/dist/Actions/Action.cjs +1 -1
  3. package/dist/Actions/Action.js +7 -7
  4. package/dist/Actions/EventAction.cjs +1 -1
  5. package/dist/Actions/EventAction.cjs.map +1 -1
  6. package/dist/Actions/EventAction.d.ts +10 -0
  7. package/dist/Actions/EventAction.d.ts.map +1 -1
  8. package/dist/Actions/EventAction.js +77 -76
  9. package/dist/Actions/EventAction.js.map +1 -1
  10. package/dist/AllowLists/AllowList.cjs +1 -1
  11. package/dist/AllowLists/AllowList.js +5 -5
  12. package/dist/AllowLists/SimpleAllowList.cjs +1 -1
  13. package/dist/AllowLists/SimpleAllowList.cjs.map +1 -1
  14. package/dist/AllowLists/SimpleAllowList.js +17 -17
  15. package/dist/AllowLists/SimpleAllowList.js.map +1 -1
  16. package/dist/AllowLists/SimpleDenyList.cjs +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 +1894 -267
  23. package/dist/BoostCore.d.ts.map +1 -1
  24. package/dist/BoostCore.js +831 -520
  25. package/dist/BoostCore.js.map +1 -1
  26. package/dist/BoostRegistry.cjs +1 -1
  27. package/dist/BoostRegistry.js +48 -48
  28. package/dist/Budget-BgGihcwx.js +1124 -0
  29. package/dist/Budget-BgGihcwx.js.map +1 -0
  30. package/dist/Budget-DYlTLLwg.cjs +2 -0
  31. package/dist/Budget-DYlTLLwg.cjs.map +1 -0
  32. package/dist/Budgets/Budget.cjs +1 -1
  33. package/dist/Budgets/Budget.d.ts +5 -4
  34. package/dist/Budgets/Budget.d.ts.map +1 -1
  35. package/dist/Budgets/Budget.js +9 -6
  36. package/dist/Budgets/ManagedBudget.cjs +1 -1
  37. package/dist/Budgets/ManagedBudget.cjs.map +1 -1
  38. package/dist/Budgets/ManagedBudget.d.ts +4 -0
  39. package/dist/Budgets/ManagedBudget.d.ts.map +1 -1
  40. package/dist/Budgets/ManagedBudget.js +22 -22
  41. package/dist/Budgets/ManagedBudgetWithFees.d.ts +4 -0
  42. package/dist/Budgets/ManagedBudgetWithFees.d.ts.map +1 -1
  43. package/dist/Budgets/ManagedBudgetWithFeesV2.d.ts +4 -0
  44. package/dist/Budgets/ManagedBudgetWithFeesV2.d.ts.map +1 -1
  45. package/dist/Budgets/TransparentBudget.d.ts +944 -0
  46. package/dist/Budgets/TransparentBudget.d.ts.map +1 -0
  47. package/dist/Budgets/VestingBudget.d.ts +4 -0
  48. package/dist/Budgets/VestingBudget.d.ts.map +1 -1
  49. package/dist/Deployable/Deployable.cjs.map +1 -1
  50. package/dist/Deployable/Deployable.d.ts +1 -1
  51. package/dist/Deployable/Deployable.d.ts.map +1 -1
  52. package/dist/Deployable/Deployable.js.map +1 -1
  53. package/dist/Deployable/DeployableTarget.cjs +1 -1
  54. package/dist/Deployable/DeployableTarget.js +1 -1
  55. package/dist/Deployable/DeployableTargetWithRBAC.cjs +1 -1
  56. package/dist/Deployable/DeployableTargetWithRBAC.js +20 -20
  57. package/dist/Incentive-BDqkFt0J.cjs +2 -0
  58. package/dist/Incentive-BDqkFt0J.cjs.map +1 -0
  59. package/dist/Incentive-DPOADY1f.js +449 -0
  60. package/dist/Incentive-DPOADY1f.js.map +1 -0
  61. package/dist/Incentives/AllowListIncentive.cjs +1 -1
  62. package/dist/Incentives/AllowListIncentive.cjs.map +1 -1
  63. package/dist/Incentives/AllowListIncentive.js +14 -14
  64. package/dist/Incentives/AllowListIncentive.js.map +1 -1
  65. package/dist/Incentives/CGDAIncentive.cjs +1 -1
  66. package/dist/Incentives/CGDAIncentive.cjs.map +1 -1
  67. package/dist/Incentives/CGDAIncentive.js +11 -11
  68. package/dist/Incentives/CGDAIncentive.js.map +1 -1
  69. package/dist/Incentives/ERC20Incentive.cjs +1 -1
  70. package/dist/Incentives/ERC20Incentive.cjs.map +1 -1
  71. package/dist/Incentives/ERC20Incentive.js +14 -14
  72. package/dist/Incentives/ERC20Incentive.js.map +1 -1
  73. package/dist/Incentives/ERC20PeggedIncentive.d.ts +1 -1
  74. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.cjs +2 -0
  75. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.cjs.map +1 -0
  76. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.d.ts +3 -1
  77. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.d.ts.map +1 -1
  78. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.js +604 -0
  79. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentive.js.map +1 -0
  80. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs +2 -0
  81. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.cjs.map +1 -0
  82. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.d.ts +1103 -0
  83. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.d.ts.map +1 -0
  84. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js +625 -0
  85. package/dist/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.js.map +1 -0
  86. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs +1 -1
  87. package/dist/Incentives/ERC20VariableCriteriaIncentive.cjs.map +1 -1
  88. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts +11 -1
  89. package/dist/Incentives/ERC20VariableCriteriaIncentive.d.ts.map +1 -1
  90. package/dist/Incentives/ERC20VariableCriteriaIncentive.js +112 -80
  91. package/dist/Incentives/ERC20VariableCriteriaIncentive.js.map +1 -1
  92. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs +2 -0
  93. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.cjs.map +1 -0
  94. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.d.ts +903 -0
  95. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.d.ts.map +1 -0
  96. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js +242 -0
  97. package/dist/Incentives/ERC20VariableCriteriaIncentiveV2.js.map +1 -0
  98. package/dist/Incentives/ERC20VariableIncentive.cjs +1 -1
  99. package/dist/Incentives/ERC20VariableIncentive.cjs.map +1 -1
  100. package/dist/Incentives/ERC20VariableIncentive.d.ts +3 -3
  101. package/dist/Incentives/ERC20VariableIncentive.d.ts.map +1 -1
  102. package/dist/Incentives/ERC20VariableIncentive.js +22 -22
  103. package/dist/Incentives/ERC20VariableIncentive.js.map +1 -1
  104. package/dist/Incentives/Incentive.cjs +1 -1
  105. package/dist/Incentives/Incentive.d.ts +8 -6
  106. package/dist/Incentives/Incentive.d.ts.map +1 -1
  107. package/dist/Incentives/Incentive.js +19 -14
  108. package/dist/Incentives/Incentive.js.map +1 -1
  109. package/dist/Incentives/PointsIncentive.cjs +1 -1
  110. package/dist/Incentives/PointsIncentive.cjs.map +1 -1
  111. package/dist/Incentives/PointsIncentive.js +9 -9
  112. package/dist/Incentives/PointsIncentive.js.map +1 -1
  113. package/dist/SimpleDenyList-B_AcmgYq.cjs +2 -0
  114. package/dist/{SimpleDenyList-DgjVf7FK.cjs.map → SimpleDenyList-B_AcmgYq.cjs.map} +1 -1
  115. package/dist/SimpleDenyList-BbDLzRw7.js +133 -0
  116. package/dist/{SimpleDenyList-BKfPoTo1.js.map → SimpleDenyList-BbDLzRw7.js.map} +1 -1
  117. package/dist/Validators/LimitedSignerValidator.cjs +1 -1
  118. package/dist/Validators/LimitedSignerValidator.cjs.map +1 -1
  119. package/dist/Validators/LimitedSignerValidator.js +13 -13
  120. package/dist/Validators/LimitedSignerValidator.js.map +1 -1
  121. package/dist/Validators/SignerValidator.cjs +1 -1
  122. package/dist/Validators/SignerValidator.cjs.map +1 -1
  123. package/dist/Validators/SignerValidator.js +52 -52
  124. package/dist/Validators/SignerValidator.js.map +1 -1
  125. package/dist/Validators/Validator.cjs +1 -1
  126. package/dist/Validators/Validator.js +2 -2
  127. package/dist/componentInterfaces-C5ig8mCK.cjs +2 -0
  128. package/dist/componentInterfaces-C5ig8mCK.cjs.map +1 -0
  129. package/dist/componentInterfaces-Ddus5rIA.js +23 -0
  130. package/dist/componentInterfaces-Ddus5rIA.js.map +1 -0
  131. package/dist/deployments-C17nvui-.cjs +2 -0
  132. package/dist/deployments-C17nvui-.cjs.map +1 -0
  133. package/dist/deployments-CH4Xmkbv.js +132 -0
  134. package/dist/{deployments-W_LUj833.js.map → deployments-CH4Xmkbv.js.map} +1 -1
  135. package/dist/deployments.json +63 -48
  136. package/dist/{generated-CElkFqkY.js → generated-CINzoGbl.js} +2611 -955
  137. package/dist/generated-CINzoGbl.js.map +1 -0
  138. package/dist/generated-C_JEoLDO.cjs +3 -0
  139. package/dist/generated-C_JEoLDO.cjs.map +1 -0
  140. package/dist/index.cjs +1 -1
  141. package/dist/index.d.ts +3 -0
  142. package/dist/index.d.ts.map +1 -1
  143. package/dist/index.js +167 -154
  144. package/dist/index.js.map +1 -1
  145. package/dist/utils.cjs.map +1 -1
  146. package/dist/utils.js.map +1 -1
  147. package/package.json +20 -2
  148. package/src/Actions/EventAction.ts +11 -0
  149. package/src/BoostCore.test.ts +14 -9
  150. package/src/BoostCore.ts +428 -26
  151. package/src/Budgets/Budget.ts +8 -1
  152. package/src/Budgets/TransparentBudget.test.ts +70 -0
  153. package/src/Budgets/TransparentBudget.ts +334 -0
  154. package/src/Deployable/Deployable.ts +1 -1
  155. package/src/Incentives/ERC20PeggedIncentive.ts +1 -1
  156. package/src/Incentives/ERC20PeggedVariableCriteriaIncentive.ts +3 -1
  157. package/src/Incentives/{ERC20PeggedVariableCriteriaIncentive.test.ts → ERC20PeggedVariableCriteriaIncentiveV2.test.ts} +20 -16
  158. package/src/Incentives/ERC20PeggedVariableCriteriaIncentiveV2.ts +872 -0
  159. package/src/Incentives/ERC20VariableCriteriaIncentive.ts +50 -1
  160. package/src/Incentives/{ERC20VariableCriteriaIncentive.test.ts → ERC20VariableCriteriaIncentiveV2.test.ts} +24 -19
  161. package/src/Incentives/ERC20VariableCriteriaIncentiveV2.ts +447 -0
  162. package/src/Incentives/ERC20VariableIncentive.ts +4 -2
  163. package/src/Incentives/Incentive.ts +13 -2
  164. package/src/index.test.ts +2 -2
  165. package/src/index.ts +3 -0
  166. package/src/utils.ts +1 -1
  167. package/dist/Budget-BjfL8dVX.cjs +0 -2
  168. package/dist/Budget-BjfL8dVX.cjs.map +0 -1
  169. package/dist/Budget-DD7IPuDx.js +0 -922
  170. package/dist/Budget-DD7IPuDx.js.map +0 -1
  171. package/dist/Incentive-V1RjH38L.js +0 -1036
  172. package/dist/Incentive-V1RjH38L.js.map +0 -1
  173. package/dist/Incentive-gVTfsnMB.cjs +0 -2
  174. package/dist/Incentive-gVTfsnMB.cjs.map +0 -1
  175. package/dist/SimpleDenyList-BKfPoTo1.js +0 -133
  176. package/dist/SimpleDenyList-DgjVf7FK.cjs +0 -2
  177. package/dist/componentInterfaces-CA1UIqWL.js +0 -20
  178. package/dist/componentInterfaces-CA1UIqWL.js.map +0 -1
  179. package/dist/componentInterfaces-aBgBbB7r.cjs +0 -2
  180. package/dist/componentInterfaces-aBgBbB7r.cjs.map +0 -1
  181. package/dist/deployments-CwTZr-cK.cjs +0 -2
  182. package/dist/deployments-CwTZr-cK.cjs.map +0 -1
  183. package/dist/deployments-W_LUj833.js +0 -117
  184. package/dist/generated-BPiHi7W2.cjs +0 -3
  185. package/dist/generated-BPiHi7W2.cjs.map +0 -1
  186. package/dist/generated-CElkFqkY.js.map +0 -1
@@ -0,0 +1,944 @@
1
+ import { transparentBudgetAbi } from '@boostxyz/evm';
2
+ import { type Address, type ContractEventName, type Hex } from 'viem';
3
+ import type { DeployableOptions, GenericDeployableParams } from '../Deployable/Deployable';
4
+ import { DeployableTargetWithRBAC } from '../Deployable/DeployableTargetWithRBAC';
5
+ import type { ERC1155TransferPayload, FungibleTransferPayload } from '../transfers';
6
+ import { type GenericLog, type ReadParams, RegistryType, type WriteParams } from '../utils';
7
+ export { transparentBudgetAbi };
8
+ export type { ERC1155TransferPayload, FungibleTransferPayload };
9
+ /**
10
+ * A generic `viem.Log` event with support for `TransparentBudget` event types.
11
+ *
12
+ * @export
13
+ * @typedef {TransparentBudgetLog}
14
+ * @template {ContractEventName<typeof transparentBudgetAbi>} [event=ContractEventName<
15
+ * typeof transparentBudgetAbi
16
+ * >]
17
+ */
18
+ export type TransparentBudgetLog<event extends ContractEventName<typeof transparentBudgetAbi> = ContractEventName<typeof transparentBudgetAbi>> = GenericLog<typeof transparentBudgetAbi, event>;
19
+ /**
20
+ * A budget implementation that transfers assets to the budget on Boost creation.
21
+ * Can be used with or without [Permit2](https://github.com/Uniswap/permit2) for token approval
22
+ *
23
+ * @export
24
+ * @class TransparentBudget
25
+ * @typedef {TransparentBudget}
26
+ * @extends {DeployableTargetWithRBAC<TransparentBudgetPayload>}
27
+ */
28
+ export declare class TransparentBudget extends DeployableTargetWithRBAC<never, typeof transparentBudgetAbi> {
29
+ /**
30
+ * @inheritdoc
31
+ *
32
+ * @public
33
+ * @readonly
34
+ * @type {*}
35
+ */
36
+ readonly abi: readonly [{
37
+ readonly type: "error";
38
+ readonly inputs: readonly [];
39
+ readonly name: "AlreadyInitialized";
40
+ }, {
41
+ readonly type: "error";
42
+ readonly inputs: readonly [];
43
+ readonly name: "CloneAlreadyInitialized";
44
+ }, {
45
+ readonly type: "error";
46
+ readonly inputs: readonly [];
47
+ readonly name: "FnSelectorNotRecognized";
48
+ }, {
49
+ readonly type: "error";
50
+ readonly inputs: readonly [];
51
+ readonly name: "InitializerNotImplemented";
52
+ }, {
53
+ readonly type: "error";
54
+ readonly inputs: readonly [{
55
+ readonly name: "asset";
56
+ readonly internalType: "address";
57
+ readonly type: "address";
58
+ }, {
59
+ readonly name: "available";
60
+ readonly internalType: "uint256";
61
+ readonly type: "uint256";
62
+ }, {
63
+ readonly name: "required";
64
+ readonly internalType: "uint256";
65
+ readonly type: "uint256";
66
+ }];
67
+ readonly name: "InsufficientFunds";
68
+ }, {
69
+ readonly type: "error";
70
+ readonly inputs: readonly [{
71
+ readonly name: "asset";
72
+ readonly internalType: "address";
73
+ readonly type: "address";
74
+ }, {
75
+ readonly name: "amount";
76
+ readonly internalType: "uint256";
77
+ readonly type: "uint256";
78
+ }];
79
+ readonly name: "InvalidAllocation";
80
+ }, {
81
+ readonly type: "error";
82
+ readonly inputs: readonly [];
83
+ readonly name: "InvalidInitialization";
84
+ }, {
85
+ readonly type: "error";
86
+ readonly inputs: readonly [];
87
+ readonly name: "InvalidInitializationData";
88
+ }, {
89
+ readonly type: "error";
90
+ readonly inputs: readonly [];
91
+ readonly name: "LengthMismatch";
92
+ }, {
93
+ readonly type: "error";
94
+ readonly inputs: readonly [];
95
+ readonly name: "NewOwnerIsZeroAddress";
96
+ }, {
97
+ readonly type: "error";
98
+ readonly inputs: readonly [];
99
+ readonly name: "NoHandoverRequest";
100
+ }, {
101
+ readonly type: "error";
102
+ readonly inputs: readonly [];
103
+ readonly name: "NotImplemented";
104
+ }, {
105
+ readonly type: "error";
106
+ readonly inputs: readonly [];
107
+ readonly name: "NotInitializing";
108
+ }, {
109
+ readonly type: "error";
110
+ readonly inputs: readonly [];
111
+ readonly name: "Reentrancy";
112
+ }, {
113
+ readonly type: "error";
114
+ readonly inputs: readonly [{
115
+ readonly name: "asset";
116
+ readonly internalType: "address";
117
+ readonly type: "address";
118
+ }, {
119
+ readonly name: "to";
120
+ readonly internalType: "address";
121
+ readonly type: "address";
122
+ }, {
123
+ readonly name: "amount";
124
+ readonly internalType: "uint256";
125
+ readonly type: "uint256";
126
+ }];
127
+ readonly name: "TransferFailed";
128
+ }, {
129
+ readonly type: "error";
130
+ readonly inputs: readonly [];
131
+ readonly name: "Unauthorized";
132
+ }, {
133
+ readonly type: "error";
134
+ readonly inputs: readonly [];
135
+ readonly name: "Unauthorized";
136
+ }, {
137
+ readonly type: "event";
138
+ readonly anonymous: false;
139
+ readonly inputs: readonly [{
140
+ readonly name: "asset";
141
+ readonly internalType: "address";
142
+ readonly type: "address";
143
+ readonly indexed: true;
144
+ }, {
145
+ readonly name: "to";
146
+ readonly internalType: "address";
147
+ readonly type: "address";
148
+ readonly indexed: false;
149
+ }, {
150
+ readonly name: "amount";
151
+ readonly internalType: "uint256";
152
+ readonly type: "uint256";
153
+ readonly indexed: false;
154
+ }];
155
+ readonly name: "Distributed";
156
+ }, {
157
+ readonly type: "event";
158
+ readonly anonymous: false;
159
+ readonly inputs: readonly [{
160
+ readonly name: "version";
161
+ readonly internalType: "uint64";
162
+ readonly type: "uint64";
163
+ readonly indexed: false;
164
+ }];
165
+ readonly name: "Initialized";
166
+ }, {
167
+ readonly type: "event";
168
+ readonly anonymous: false;
169
+ readonly inputs: readonly [{
170
+ readonly name: "pendingOwner";
171
+ readonly internalType: "address";
172
+ readonly type: "address";
173
+ readonly indexed: true;
174
+ }];
175
+ readonly name: "OwnershipHandoverCanceled";
176
+ }, {
177
+ readonly type: "event";
178
+ readonly anonymous: false;
179
+ readonly inputs: readonly [{
180
+ readonly name: "pendingOwner";
181
+ readonly internalType: "address";
182
+ readonly type: "address";
183
+ readonly indexed: true;
184
+ }];
185
+ readonly name: "OwnershipHandoverRequested";
186
+ }, {
187
+ readonly type: "event";
188
+ readonly anonymous: false;
189
+ readonly inputs: readonly [{
190
+ readonly name: "oldOwner";
191
+ readonly internalType: "address";
192
+ readonly type: "address";
193
+ readonly indexed: true;
194
+ }, {
195
+ readonly name: "newOwner";
196
+ readonly internalType: "address";
197
+ readonly type: "address";
198
+ readonly indexed: true;
199
+ }];
200
+ readonly name: "OwnershipTransferred";
201
+ }, {
202
+ readonly type: "event";
203
+ readonly anonymous: false;
204
+ readonly inputs: readonly [{
205
+ readonly name: "user";
206
+ readonly internalType: "address";
207
+ readonly type: "address";
208
+ readonly indexed: true;
209
+ }, {
210
+ readonly name: "roles";
211
+ readonly internalType: "uint256";
212
+ readonly type: "uint256";
213
+ readonly indexed: true;
214
+ }];
215
+ readonly name: "RolesUpdated";
216
+ }, {
217
+ readonly type: "fallback";
218
+ readonly stateMutability: "payable";
219
+ }, {
220
+ readonly type: "function";
221
+ readonly inputs: readonly [];
222
+ readonly name: "ADMIN_ROLE";
223
+ readonly outputs: readonly [{
224
+ readonly name: "";
225
+ readonly internalType: "uint256";
226
+ readonly type: "uint256";
227
+ }];
228
+ readonly stateMutability: "view";
229
+ }, {
230
+ readonly type: "function";
231
+ readonly inputs: readonly [];
232
+ readonly name: "MANAGER_ROLE";
233
+ readonly outputs: readonly [{
234
+ readonly name: "";
235
+ readonly internalType: "uint256";
236
+ readonly type: "uint256";
237
+ }];
238
+ readonly stateMutability: "view";
239
+ }, {
240
+ readonly type: "function";
241
+ readonly inputs: readonly [];
242
+ readonly name: "PERMIT2";
243
+ readonly outputs: readonly [{
244
+ readonly name: "";
245
+ readonly internalType: "contract IPermit2";
246
+ readonly type: "address";
247
+ }];
248
+ readonly stateMutability: "view";
249
+ }, {
250
+ readonly type: "function";
251
+ readonly inputs: readonly [{
252
+ readonly name: "";
253
+ readonly internalType: "bytes";
254
+ readonly type: "bytes";
255
+ }];
256
+ readonly name: "allocate";
257
+ readonly outputs: readonly [{
258
+ readonly name: "";
259
+ readonly internalType: "bool";
260
+ readonly type: "bool";
261
+ }];
262
+ readonly stateMutability: "payable";
263
+ }, {
264
+ readonly type: "function";
265
+ readonly inputs: readonly [{
266
+ readonly name: "";
267
+ readonly internalType: "address";
268
+ readonly type: "address";
269
+ }];
270
+ readonly name: "available";
271
+ readonly outputs: readonly [{
272
+ readonly name: "";
273
+ readonly internalType: "uint256";
274
+ readonly type: "uint256";
275
+ }];
276
+ readonly stateMutability: "view";
277
+ }, {
278
+ readonly type: "function";
279
+ readonly inputs: readonly [{
280
+ readonly name: "";
281
+ readonly internalType: "address";
282
+ readonly type: "address";
283
+ }, {
284
+ readonly name: "";
285
+ readonly internalType: "uint256";
286
+ readonly type: "uint256";
287
+ }];
288
+ readonly name: "available";
289
+ readonly outputs: readonly [{
290
+ readonly name: "";
291
+ readonly internalType: "uint256";
292
+ readonly type: "uint256";
293
+ }];
294
+ readonly stateMutability: "view";
295
+ }, {
296
+ readonly type: "function";
297
+ readonly inputs: readonly [];
298
+ readonly name: "cancelOwnershipHandover";
299
+ readonly outputs: readonly [];
300
+ readonly stateMutability: "payable";
301
+ }, {
302
+ readonly type: "function";
303
+ readonly inputs: readonly [{
304
+ readonly name: "";
305
+ readonly internalType: "bytes";
306
+ readonly type: "bytes";
307
+ }];
308
+ readonly name: "clawback";
309
+ readonly outputs: readonly [{
310
+ readonly name: "";
311
+ readonly internalType: "uint256";
312
+ readonly type: "uint256";
313
+ }];
314
+ readonly stateMutability: "nonpayable";
315
+ }, {
316
+ readonly type: "function";
317
+ readonly inputs: readonly [{
318
+ readonly name: "target";
319
+ readonly internalType: "address";
320
+ readonly type: "address";
321
+ }, {
322
+ readonly name: "data_";
323
+ readonly internalType: "bytes";
324
+ readonly type: "bytes";
325
+ }, {
326
+ readonly name: "boostId";
327
+ readonly internalType: "uint256";
328
+ readonly type: "uint256";
329
+ }, {
330
+ readonly name: "incentiveId";
331
+ readonly internalType: "uint256";
332
+ readonly type: "uint256";
333
+ }];
334
+ readonly name: "clawbackFromTarget";
335
+ readonly outputs: readonly [{
336
+ readonly name: "";
337
+ readonly internalType: "uint256";
338
+ readonly type: "uint256";
339
+ }, {
340
+ readonly name: "";
341
+ readonly internalType: "address";
342
+ readonly type: "address";
343
+ }];
344
+ readonly stateMutability: "nonpayable";
345
+ }, {
346
+ readonly type: "function";
347
+ readonly inputs: readonly [{
348
+ readonly name: "pendingOwner";
349
+ readonly internalType: "address";
350
+ readonly type: "address";
351
+ }];
352
+ readonly name: "completeOwnershipHandover";
353
+ readonly outputs: readonly [];
354
+ readonly stateMutability: "payable";
355
+ }, {
356
+ readonly type: "function";
357
+ readonly inputs: readonly [{
358
+ readonly name: "_allocations";
359
+ readonly internalType: "bytes[]";
360
+ readonly type: "bytes[]";
361
+ }, {
362
+ readonly name: "core";
363
+ readonly internalType: "contract BoostCore";
364
+ readonly type: "address";
365
+ }, {
366
+ readonly name: "_boostPayload";
367
+ readonly internalType: "bytes";
368
+ readonly type: "bytes";
369
+ }];
370
+ readonly name: "createBoost";
371
+ readonly outputs: readonly [];
372
+ readonly stateMutability: "payable";
373
+ }, {
374
+ readonly type: "function";
375
+ readonly inputs: readonly [{
376
+ readonly name: "_allocations";
377
+ readonly internalType: "bytes[]";
378
+ readonly type: "bytes[]";
379
+ }, {
380
+ readonly name: "core";
381
+ readonly internalType: "contract BoostCore";
382
+ readonly type: "address";
383
+ }, {
384
+ readonly name: "_boostPayload";
385
+ readonly internalType: "bytes";
386
+ readonly type: "bytes";
387
+ }, {
388
+ readonly name: "_permit2Signature";
389
+ readonly internalType: "bytes";
390
+ readonly type: "bytes";
391
+ }, {
392
+ readonly name: "nonce";
393
+ readonly internalType: "uint256";
394
+ readonly type: "uint256";
395
+ }, {
396
+ readonly name: "deadline";
397
+ readonly internalType: "uint256";
398
+ readonly type: "uint256";
399
+ }];
400
+ readonly name: "createBoostWithPermit2";
401
+ readonly outputs: readonly [];
402
+ readonly stateMutability: "payable";
403
+ }, {
404
+ readonly type: "function";
405
+ readonly inputs: readonly [{
406
+ readonly name: "data_";
407
+ readonly internalType: "bytes";
408
+ readonly type: "bytes";
409
+ }];
410
+ readonly name: "disburse";
411
+ readonly outputs: readonly [{
412
+ readonly name: "";
413
+ readonly internalType: "bool";
414
+ readonly type: "bool";
415
+ }];
416
+ readonly stateMutability: "nonpayable";
417
+ }, {
418
+ readonly type: "function";
419
+ readonly inputs: readonly [{
420
+ readonly name: "data_";
421
+ readonly internalType: "bytes[]";
422
+ readonly type: "bytes[]";
423
+ }];
424
+ readonly name: "disburseBatch";
425
+ readonly outputs: readonly [{
426
+ readonly name: "";
427
+ readonly internalType: "bool";
428
+ readonly type: "bool";
429
+ }];
430
+ readonly stateMutability: "nonpayable";
431
+ }, {
432
+ readonly type: "function";
433
+ readonly inputs: readonly [{
434
+ readonly name: "asset_";
435
+ readonly internalType: "address";
436
+ readonly type: "address";
437
+ }];
438
+ readonly name: "distributed";
439
+ readonly outputs: readonly [{
440
+ readonly name: "";
441
+ readonly internalType: "uint256";
442
+ readonly type: "uint256";
443
+ }];
444
+ readonly stateMutability: "view";
445
+ }, {
446
+ readonly type: "function";
447
+ readonly inputs: readonly [{
448
+ readonly name: "asset_";
449
+ readonly internalType: "address";
450
+ readonly type: "address";
451
+ }, {
452
+ readonly name: "tokenId_";
453
+ readonly internalType: "uint256";
454
+ readonly type: "uint256";
455
+ }];
456
+ readonly name: "distributed";
457
+ readonly outputs: readonly [{
458
+ readonly name: "";
459
+ readonly internalType: "uint256";
460
+ readonly type: "uint256";
461
+ }];
462
+ readonly stateMutability: "view";
463
+ }, {
464
+ readonly type: "function";
465
+ readonly inputs: readonly [];
466
+ readonly name: "getComponentInterface";
467
+ readonly outputs: readonly [{
468
+ readonly name: "";
469
+ readonly internalType: "bytes4";
470
+ readonly type: "bytes4";
471
+ }];
472
+ readonly stateMutability: "pure";
473
+ }, {
474
+ readonly type: "function";
475
+ readonly inputs: readonly [{
476
+ readonly name: "accounts_";
477
+ readonly internalType: "address[]";
478
+ readonly type: "address[]";
479
+ }, {
480
+ readonly name: "roles_";
481
+ readonly internalType: "uint256[]";
482
+ readonly type: "uint256[]";
483
+ }];
484
+ readonly name: "grantManyRoles";
485
+ readonly outputs: readonly [];
486
+ readonly stateMutability: "nonpayable";
487
+ }, {
488
+ readonly type: "function";
489
+ readonly inputs: readonly [{
490
+ readonly name: "user";
491
+ readonly internalType: "address";
492
+ readonly type: "address";
493
+ }, {
494
+ readonly name: "roles";
495
+ readonly internalType: "uint256";
496
+ readonly type: "uint256";
497
+ }];
498
+ readonly name: "grantRoles";
499
+ readonly outputs: readonly [];
500
+ readonly stateMutability: "payable";
501
+ }, {
502
+ readonly type: "function";
503
+ readonly inputs: readonly [{
504
+ readonly name: "user";
505
+ readonly internalType: "address";
506
+ readonly type: "address";
507
+ }, {
508
+ readonly name: "roles";
509
+ readonly internalType: "uint256";
510
+ readonly type: "uint256";
511
+ }];
512
+ readonly name: "hasAllRoles";
513
+ readonly outputs: readonly [{
514
+ readonly name: "";
515
+ readonly internalType: "bool";
516
+ readonly type: "bool";
517
+ }];
518
+ readonly stateMutability: "view";
519
+ }, {
520
+ readonly type: "function";
521
+ readonly inputs: readonly [{
522
+ readonly name: "user";
523
+ readonly internalType: "address";
524
+ readonly type: "address";
525
+ }, {
526
+ readonly name: "roles";
527
+ readonly internalType: "uint256";
528
+ readonly type: "uint256";
529
+ }];
530
+ readonly name: "hasAnyRole";
531
+ readonly outputs: readonly [{
532
+ readonly name: "";
533
+ readonly internalType: "bool";
534
+ readonly type: "bool";
535
+ }];
536
+ readonly stateMutability: "view";
537
+ }, {
538
+ readonly type: "function";
539
+ readonly inputs: readonly [{
540
+ readonly name: "";
541
+ readonly internalType: "bytes";
542
+ readonly type: "bytes";
543
+ }];
544
+ readonly name: "initialize";
545
+ readonly outputs: readonly [];
546
+ readonly stateMutability: "nonpayable";
547
+ }, {
548
+ readonly type: "function";
549
+ readonly inputs: readonly [{
550
+ readonly name: "account_";
551
+ readonly internalType: "address";
552
+ readonly type: "address";
553
+ }];
554
+ readonly name: "isAuthorized";
555
+ readonly outputs: readonly [{
556
+ readonly name: "";
557
+ readonly internalType: "bool";
558
+ readonly type: "bool";
559
+ }];
560
+ readonly stateMutability: "view";
561
+ }, {
562
+ readonly type: "function";
563
+ readonly inputs: readonly [{
564
+ readonly name: "";
565
+ readonly internalType: "address";
566
+ readonly type: "address";
567
+ }, {
568
+ readonly name: "";
569
+ readonly internalType: "address";
570
+ readonly type: "address";
571
+ }, {
572
+ readonly name: "";
573
+ readonly internalType: "uint256[]";
574
+ readonly type: "uint256[]";
575
+ }, {
576
+ readonly name: "";
577
+ readonly internalType: "uint256[]";
578
+ readonly type: "uint256[]";
579
+ }, {
580
+ readonly name: "";
581
+ readonly internalType: "bytes";
582
+ readonly type: "bytes";
583
+ }];
584
+ readonly name: "onERC1155BatchReceived";
585
+ readonly outputs: readonly [{
586
+ readonly name: "";
587
+ readonly internalType: "bytes4";
588
+ readonly type: "bytes4";
589
+ }];
590
+ readonly stateMutability: "pure";
591
+ }, {
592
+ readonly type: "function";
593
+ readonly inputs: readonly [{
594
+ readonly name: "";
595
+ readonly internalType: "address";
596
+ readonly type: "address";
597
+ }, {
598
+ readonly name: "";
599
+ readonly internalType: "address";
600
+ readonly type: "address";
601
+ }, {
602
+ readonly name: "";
603
+ readonly internalType: "uint256";
604
+ readonly type: "uint256";
605
+ }, {
606
+ readonly name: "";
607
+ readonly internalType: "uint256";
608
+ readonly type: "uint256";
609
+ }, {
610
+ readonly name: "";
611
+ readonly internalType: "bytes";
612
+ readonly type: "bytes";
613
+ }];
614
+ readonly name: "onERC1155Received";
615
+ readonly outputs: readonly [{
616
+ readonly name: "";
617
+ readonly internalType: "bytes4";
618
+ readonly type: "bytes4";
619
+ }];
620
+ readonly stateMutability: "pure";
621
+ }, {
622
+ readonly type: "function";
623
+ readonly inputs: readonly [];
624
+ readonly name: "owner";
625
+ readonly outputs: readonly [{
626
+ readonly name: "result";
627
+ readonly internalType: "address";
628
+ readonly type: "address";
629
+ }];
630
+ readonly stateMutability: "view";
631
+ }, {
632
+ readonly type: "function";
633
+ readonly inputs: readonly [{
634
+ readonly name: "pendingOwner";
635
+ readonly internalType: "address";
636
+ readonly type: "address";
637
+ }];
638
+ readonly name: "ownershipHandoverExpiresAt";
639
+ readonly outputs: readonly [{
640
+ readonly name: "result";
641
+ readonly internalType: "uint256";
642
+ readonly type: "uint256";
643
+ }];
644
+ readonly stateMutability: "view";
645
+ }, {
646
+ readonly type: "function";
647
+ readonly inputs: readonly [{
648
+ readonly name: "";
649
+ readonly internalType: "bytes";
650
+ readonly type: "bytes";
651
+ }];
652
+ readonly name: "reconcile";
653
+ readonly outputs: readonly [{
654
+ readonly name: "";
655
+ readonly internalType: "uint256";
656
+ readonly type: "uint256";
657
+ }];
658
+ readonly stateMutability: "nonpayable";
659
+ }, {
660
+ readonly type: "function";
661
+ readonly inputs: readonly [];
662
+ readonly name: "renounceOwnership";
663
+ readonly outputs: readonly [];
664
+ readonly stateMutability: "payable";
665
+ }, {
666
+ readonly type: "function";
667
+ readonly inputs: readonly [{
668
+ readonly name: "roles";
669
+ readonly internalType: "uint256";
670
+ readonly type: "uint256";
671
+ }];
672
+ readonly name: "renounceRoles";
673
+ readonly outputs: readonly [];
674
+ readonly stateMutability: "payable";
675
+ }, {
676
+ readonly type: "function";
677
+ readonly inputs: readonly [];
678
+ readonly name: "requestOwnershipHandover";
679
+ readonly outputs: readonly [];
680
+ readonly stateMutability: "payable";
681
+ }, {
682
+ readonly type: "function";
683
+ readonly inputs: readonly [{
684
+ readonly name: "accounts_";
685
+ readonly internalType: "address[]";
686
+ readonly type: "address[]";
687
+ }, {
688
+ readonly name: "roles_";
689
+ readonly internalType: "uint256[]";
690
+ readonly type: "uint256[]";
691
+ }];
692
+ readonly name: "revokeManyRoles";
693
+ readonly outputs: readonly [];
694
+ readonly stateMutability: "nonpayable";
695
+ }, {
696
+ readonly type: "function";
697
+ readonly inputs: readonly [{
698
+ readonly name: "user";
699
+ readonly internalType: "address";
700
+ readonly type: "address";
701
+ }, {
702
+ readonly name: "roles";
703
+ readonly internalType: "uint256";
704
+ readonly type: "uint256";
705
+ }];
706
+ readonly name: "revokeRoles";
707
+ readonly outputs: readonly [];
708
+ readonly stateMutability: "payable";
709
+ }, {
710
+ readonly type: "function";
711
+ readonly inputs: readonly [{
712
+ readonly name: "user";
713
+ readonly internalType: "address";
714
+ readonly type: "address";
715
+ }];
716
+ readonly name: "rolesOf";
717
+ readonly outputs: readonly [{
718
+ readonly name: "roles";
719
+ readonly internalType: "uint256";
720
+ readonly type: "uint256";
721
+ }];
722
+ readonly stateMutability: "view";
723
+ }, {
724
+ readonly type: "function";
725
+ readonly inputs: readonly [{
726
+ readonly name: "accounts_";
727
+ readonly internalType: "address[]";
728
+ readonly type: "address[]";
729
+ }, {
730
+ readonly name: "authorized_";
731
+ readonly internalType: "bool[]";
732
+ readonly type: "bool[]";
733
+ }];
734
+ readonly name: "setAuthorized";
735
+ readonly outputs: readonly [];
736
+ readonly stateMutability: "nonpayable";
737
+ }, {
738
+ readonly type: "function";
739
+ readonly inputs: readonly [{
740
+ readonly name: "interfaceId";
741
+ readonly internalType: "bytes4";
742
+ readonly type: "bytes4";
743
+ }];
744
+ readonly name: "supportsInterface";
745
+ readonly outputs: readonly [{
746
+ readonly name: "";
747
+ readonly internalType: "bool";
748
+ readonly type: "bool";
749
+ }];
750
+ readonly stateMutability: "view";
751
+ }, {
752
+ readonly type: "function";
753
+ readonly inputs: readonly [{
754
+ readonly name: "asset_";
755
+ readonly internalType: "address";
756
+ readonly type: "address";
757
+ }];
758
+ readonly name: "total";
759
+ readonly outputs: readonly [{
760
+ readonly name: "";
761
+ readonly internalType: "uint256";
762
+ readonly type: "uint256";
763
+ }];
764
+ readonly stateMutability: "view";
765
+ }, {
766
+ readonly type: "function";
767
+ readonly inputs: readonly [{
768
+ readonly name: "asset_";
769
+ readonly internalType: "address";
770
+ readonly type: "address";
771
+ }, {
772
+ readonly name: "tokenId_";
773
+ readonly internalType: "uint256";
774
+ readonly type: "uint256";
775
+ }];
776
+ readonly name: "total";
777
+ readonly outputs: readonly [{
778
+ readonly name: "";
779
+ readonly internalType: "uint256";
780
+ readonly type: "uint256";
781
+ }];
782
+ readonly stateMutability: "view";
783
+ }, {
784
+ readonly type: "function";
785
+ readonly inputs: readonly [{
786
+ readonly name: "newOwner";
787
+ readonly internalType: "address";
788
+ readonly type: "address";
789
+ }];
790
+ readonly name: "transferOwnership";
791
+ readonly outputs: readonly [];
792
+ readonly stateMutability: "payable";
793
+ }, {
794
+ readonly type: "receive";
795
+ readonly stateMutability: "payable";
796
+ }];
797
+ /**
798
+ * @inheritdoc
799
+ *
800
+ * @public
801
+ * @static
802
+ * @type {Record<number, Address>}
803
+ */
804
+ static bases: Record<number, Address>;
805
+ /**
806
+ * @inheritdoc
807
+ *
808
+ * @public
809
+ * @static
810
+ * @type {RegistryType}
811
+ */
812
+ static registryType: RegistryType;
813
+ /**
814
+ * Clawbacks assets from an incentive associated with the budget via Boost Core.
815
+ * Only the authorized users can clawback assets from an incentive.
816
+ * If the asset transfer fails, the reclamation will revert.
817
+ *
818
+ * @example
819
+ * ```ts
820
+ * const [amount, address] = await budgets.budget.clawbackFromTarget(
821
+ * core.assertValidAddress(),
822
+ * erc20Incentive.buildClawbackData(1n),
823
+ * boost.id,
824
+ * incentiveId,
825
+ * );
826
+ * ```
827
+ * @public
828
+ * @async
829
+ * @param {Address} target - The address of a contract implementing clawback, typically `BoostCore`
830
+ * @param {Hex} data - The encoded data payload for the clawback, can be acquired with `incentive.buildClawbackData`
831
+ * @param {bigint | number} boostId - The ID of the boost
832
+ * @param {bigint | number} incentiveId - The ID of the incentive
833
+ * @param {?WriteParams} [params] - Optional write parameters
834
+ * @returns {Promise<[bigint, Address]>} - Returns a tuple of amount reclaimed and the address reclaimed from
835
+ */
836
+ clawbackFromTarget(target: Address, data: Hex, boostId: bigint | number, incentiveId: bigint | number, params?: WriteParams): Promise<readonly [bigint, `0x${string}`]>;
837
+ /**
838
+ * Clawbacks assets from an incentive associated with the budget via Boost Core.
839
+ * Only the authorized users can clawback assets from an incentive.
840
+ * If the asset transfer fails, the reclamation will revert.
841
+ *
842
+ * @example
843
+ * ```ts
844
+ * const { hash, result: [ amount, address ] } = await budgets.budget.clawbackFromTargetRaw(
845
+ * core.assertValidAddress(),
846
+ * erc20Incentive.buildClawbackData(1n),
847
+ * boost.id,
848
+ * incentiveId,
849
+ * );
850
+ * ```
851
+ * @public
852
+ * @async
853
+ * @param {Address} target - The address of a contract implementing clawback, typically `BoostCore`
854
+ * @param {Hex} data - The encoded data payload for the clawback, can be acquired with `incentive.buildClawbackData`
855
+ * @param {bigint | number} boostId - The ID of the boost
856
+ * @param {bigint | number} incentiveId - The ID of the incentive
857
+ * @param {?WriteParams} [params] - Optional write parameters
858
+ * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - Returns transaction hash and simulated result
859
+ */
860
+ clawbackFromTargetRaw(target: Address, data: Hex, boostId: bigint | number, incentiveId: bigint | number, params?: WriteParams): Promise<{
861
+ hash: `0x${string}`;
862
+ result: readonly [bigint, `0x${string}`];
863
+ }>;
864
+ /**
865
+ * Disburses assets from the budget to a single recipient
866
+ * If the asset transfer fails, the disbursement will revert
867
+ *
868
+ * @public
869
+ * @async
870
+ * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
871
+ * @param {?WriteParams} [params]
872
+ * @returns {Promise<boolean>} - True if the disbursement was successful
873
+ */
874
+ disburse(transfer: FungibleTransferPayload | ERC1155TransferPayload, params?: WriteParams): Promise<boolean>;
875
+ /**
876
+ * Disburses assets from the budget to a single recipient
877
+ * If the asset transfer fails, the disbursement will revert
878
+ *
879
+ * @public
880
+ * @async
881
+ * @param {(FungibleTransferPayload | ERC1155TransferPayload)} transfer
882
+ * @param {?WriteParams} [params]
883
+ * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if the disbursement was successful
884
+ */
885
+ disburseRaw(transfer: FungibleTransferPayload | ERC1155TransferPayload, params?: WriteParams): Promise<{
886
+ hash: `0x${string}`;
887
+ result: boolean;
888
+ }>;
889
+ /**
890
+ * Disburses assets from the budget to multiple recipients
891
+ *
892
+ * @public
893
+ * @async
894
+ * @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers
895
+ * @param {?WriteParams} [params]
896
+ * @returns {Promise<boolean>} - True if all disbursements were successful
897
+ */
898
+ disburseBatch(transfers: Array<FungibleTransferPayload | ERC1155TransferPayload>, params?: WriteParams): Promise<boolean>;
899
+ /**
900
+ * Disburses assets from the budget to multiple recipients
901
+ *
902
+ * @public
903
+ * @async
904
+ * @param {Array<FungibleTransferPayload | ERC1155TransferPayload>} transfers
905
+ * @param {?WriteParams} [params]
906
+ * @returns {Promise<{ hash: `0x${string}`; result: boolean; }>} - True if all disbursements were successful
907
+ */
908
+ disburseBatchRaw(transfers: Array<FungibleTransferPayload | ERC1155TransferPayload>, params?: WriteParams): Promise<{
909
+ hash: `0x${string}`;
910
+ result: boolean;
911
+ }>;
912
+ /**
913
+ * Get the total amount of assets allocated to the budget, including any that have been distributed
914
+ * If a tokenId is provided, get the total amount of ERC1155 assets allocated to the budget, including any that have been distributed
915
+ *
916
+ * @public
917
+ * @param {Address} [asset="0x0000000000000000000000000000000000000000"] - The address of the asset
918
+ * @param {?(bigint | undefined)} [tokenId] - The ID of the token
919
+ * @param {?ReadParams} [params]
920
+ * @returns {Promise<bigint>} - The total amount of assets
921
+ */
922
+ total(asset?: Address, tokenId?: bigint | undefined, params?: ReadParams): Promise<never>;
923
+ /**
924
+ * Get the amount of assets that have been distributed from the budget.
925
+ * If a tokenId is provided, get the amount of ERC1155 assets that have been distributed from the budget
926
+ *
927
+ * @public
928
+ * @param {Address} [asset="0x0000000000000000000000000000000000000000"]
929
+ * @param {?(bigint | undefined)} [tokenId]
930
+ * @param {?ReadParams} [params]
931
+ * @returns {Promise<bigint>} - The amount of assets distributed
932
+ */
933
+ distributed(asset?: Address, tokenId?: bigint | undefined, params?: ReadParams): Promise<never>;
934
+ /**
935
+ * @inheritdoc
936
+ *
937
+ * @public
938
+ * @param {?TransparentBudgetPayload} [_payload]
939
+ * @param {?DeployableOptions} [_options]
940
+ * @returns {GenericDeployableParams}
941
+ */
942
+ buildParameters(_payload?: never, _options?: DeployableOptions): GenericDeployableParams;
943
+ }
944
+ //# sourceMappingURL=TransparentBudget.d.ts.map