@lidofinance/lsv-cli 1.8.0 → 1.9.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 (41) hide show
  1. package/README.md +9 -1
  2. package/dist/abi/defi-wrapper/MellowStrategy.d.ts +429 -0
  3. package/dist/abi/defi-wrapper/MellowStrategy.js +892 -0
  4. package/dist/abi/defi-wrapper/MellowStrategy.js.map +1 -0
  5. package/dist/abi/defi-wrapper/index.d.ts +1 -0
  6. package/dist/abi/defi-wrapper/index.js +1 -0
  7. package/dist/abi/defi-wrapper/index.js.map +1 -1
  8. package/dist/configs/constants.d.ts +7 -1
  9. package/dist/features/defi-wrapper/timelock.d.ts +8928 -2
  10. package/dist/features/defi-wrapper/timelock.js +82 -8
  11. package/dist/features/defi-wrapper/timelock.js.map +1 -1
  12. package/dist/programs/defi-wrapper/use-cases/timelock-governance/common/read.js +22 -4
  13. package/dist/programs/defi-wrapper/use-cases/timelock-governance/common/read.js.map +1 -1
  14. package/dist/programs/defi-wrapper/use-cases/timelock-governance/common/write.js +194 -16
  15. package/dist/programs/defi-wrapper/use-cases/timelock-governance/common/write.js.map +1 -1
  16. package/dist/providers/wallet.d.ts +2905 -8441
  17. package/dist/tests/integration/helpers/test-client.d.ts +2071 -5761
  18. package/dist/tests/utils/ipfs-security.test.js +129 -2
  19. package/dist/tests/utils/ipfs-security.test.js.map +1 -1
  20. package/dist/tests/utils/ipfs.test.js +8 -8
  21. package/dist/tests/utils/ipfs.test.js.map +1 -1
  22. package/dist/tests/utils/parse-abi-arguments.test.d.ts +1 -0
  23. package/dist/tests/utils/parse-abi-arguments.test.js +399 -0
  24. package/dist/tests/utils/parse-abi-arguments.test.js.map +1 -0
  25. package/dist/tests/utils/stream-helpers.d.ts +1 -0
  26. package/dist/tests/utils/stream-helpers.js +11 -0
  27. package/dist/tests/utils/stream-helpers.js.map +1 -0
  28. package/dist/utils/env.d.ts +1 -0
  29. package/dist/utils/env.js +8 -0
  30. package/dist/utils/env.js.map +1 -0
  31. package/dist/utils/ipfs.d.ts +4 -2
  32. package/dist/utils/ipfs.js +75 -10
  33. package/dist/utils/ipfs.js.map +1 -1
  34. package/dist/utils/parse-abi-arguments.d.ts +24 -0
  35. package/dist/utils/parse-abi-arguments.js +159 -0
  36. package/dist/utils/parse-abi-arguments.js.map +1 -0
  37. package/dist/utils/rate-limit.d.ts +9 -0
  38. package/dist/utils/rate-limit.js +1 -6
  39. package/dist/utils/rate-limit.js.map +1 -1
  40. package/dist/version/index.js +1 -1
  41. package/package.json +8 -8
@@ -0,0 +1,892 @@
1
+ export const MellowStrategyAbi = [
2
+ {
3
+ inputs: [
4
+ { internalType: 'bytes32', name: 'strategyId_', type: 'bytes32' },
5
+ {
6
+ internalType: 'address',
7
+ name: 'strategyCallForwarderImpl_',
8
+ type: 'address',
9
+ },
10
+ { internalType: 'address', name: 'pool_', type: 'address' },
11
+ { internalType: 'contract IVault', name: 'vault_', type: 'address' },
12
+ { internalType: 'address', name: 'syncDepositQueue_', type: 'address' },
13
+ { internalType: 'address', name: 'asyncDepositQueue_', type: 'address' },
14
+ { internalType: 'address', name: 'asyncRedeemQueue_', type: 'address' },
15
+ { internalType: 'bool', name: 'allowListEnabled_', type: 'bool' },
16
+ ],
17
+ stateMutability: 'nonpayable',
18
+ type: 'constructor',
19
+ },
20
+ { inputs: [], name: 'AccessControlBadConfirmation', type: 'error' },
21
+ {
22
+ inputs: [
23
+ { internalType: 'address', name: 'account', type: 'address' },
24
+ { internalType: 'bytes32', name: 'neededRole', type: 'bytes32' },
25
+ ],
26
+ name: 'AccessControlUnauthorizedAccount',
27
+ type: 'error',
28
+ },
29
+ {
30
+ inputs: [{ internalType: 'address', name: 'user', type: 'address' }],
31
+ name: 'AlreadyAllowListed',
32
+ type: 'error',
33
+ },
34
+ {
35
+ inputs: [{ internalType: 'string', name: 'name', type: 'string' }],
36
+ name: 'CallForwarderZeroArgument',
37
+ type: 'error',
38
+ },
39
+ { inputs: [], name: 'FailedDeployment', type: 'error' },
40
+ {
41
+ inputs: [{ internalType: 'bytes32', name: 'featureId', type: 'bytes32' }],
42
+ name: 'FeaturePauseEnforced',
43
+ type: 'error',
44
+ },
45
+ {
46
+ inputs: [{ internalType: 'bytes32', name: 'featureId', type: 'bytes32' }],
47
+ name: 'FeaturePauseExpected',
48
+ type: 'error',
49
+ },
50
+ {
51
+ inputs: [
52
+ { internalType: 'uint256', name: 'balance', type: 'uint256' },
53
+ { internalType: 'uint256', name: 'needed', type: 'uint256' },
54
+ ],
55
+ name: 'InsufficientBalance',
56
+ type: 'error',
57
+ },
58
+ { inputs: [], name: 'InsufficientMellowShares', type: 'error' },
59
+ { inputs: [], name: 'InvalidInitialization', type: 'error' },
60
+ {
61
+ inputs: [{ internalType: 'string', name: 'name', type: 'string' }],
62
+ name: 'InvalidQueue',
63
+ type: 'error',
64
+ },
65
+ { inputs: [], name: 'NoAsyncDepositQueue', type: 'error' },
66
+ {
67
+ inputs: [{ internalType: 'address', name: 'user', type: 'address' }],
68
+ name: 'NotAllowListed',
69
+ type: 'error',
70
+ },
71
+ {
72
+ inputs: [{ internalType: 'address', name: 'user', type: 'address' }],
73
+ name: 'NotInAllowList',
74
+ type: 'error',
75
+ },
76
+ { inputs: [], name: 'NotInitializing', type: 'error' },
77
+ { inputs: [], name: 'RedeemFailed', type: 'error' },
78
+ {
79
+ inputs: [
80
+ { internalType: 'uint8', name: 'bits', type: 'uint8' },
81
+ { internalType: 'uint256', name: 'value', type: 'uint256' },
82
+ ],
83
+ name: 'SafeCastOverflowedUintDowncast',
84
+ type: 'error',
85
+ },
86
+ { inputs: [], name: 'SupplyFailed', type: 'error' },
87
+ { inputs: [], name: 'WithdrawalFailed', type: 'error' },
88
+ {
89
+ inputs: [{ internalType: 'string', name: 'name', type: 'string' }],
90
+ name: 'ZeroArgument',
91
+ type: 'error',
92
+ },
93
+ {
94
+ anonymous: false,
95
+ inputs: [
96
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
97
+ ],
98
+ name: 'AllowListAdded',
99
+ type: 'event',
100
+ },
101
+ {
102
+ anonymous: false,
103
+ inputs: [
104
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
105
+ ],
106
+ name: 'AllowListRemoved',
107
+ type: 'event',
108
+ },
109
+ {
110
+ anonymous: false,
111
+ inputs: [
112
+ {
113
+ indexed: true,
114
+ internalType: 'bytes32',
115
+ name: 'featureId',
116
+ type: 'bytes32',
117
+ },
118
+ {
119
+ indexed: true,
120
+ internalType: 'address',
121
+ name: 'account',
122
+ type: 'address',
123
+ },
124
+ ],
125
+ name: 'FeaturePaused',
126
+ type: 'event',
127
+ },
128
+ {
129
+ anonymous: false,
130
+ inputs: [
131
+ {
132
+ indexed: true,
133
+ internalType: 'bytes32',
134
+ name: 'featureId',
135
+ type: 'bytes32',
136
+ },
137
+ {
138
+ indexed: true,
139
+ internalType: 'address',
140
+ name: 'account',
141
+ type: 'address',
142
+ },
143
+ ],
144
+ name: 'FeatureUnpaused',
145
+ type: 'event',
146
+ },
147
+ {
148
+ anonymous: false,
149
+ inputs: [
150
+ {
151
+ indexed: false,
152
+ internalType: 'uint64',
153
+ name: 'version',
154
+ type: 'uint64',
155
+ },
156
+ ],
157
+ name: 'Initialized',
158
+ type: 'event',
159
+ },
160
+ {
161
+ anonymous: false,
162
+ inputs: [
163
+ {
164
+ indexed: true,
165
+ internalType: 'address',
166
+ name: 'recipient',
167
+ type: 'address',
168
+ },
169
+ {
170
+ indexed: true,
171
+ internalType: 'address',
172
+ name: 'referralAddress',
173
+ type: 'address',
174
+ },
175
+ {
176
+ indexed: false,
177
+ internalType: 'uint256',
178
+ name: 'wstethAmount',
179
+ type: 'uint256',
180
+ },
181
+ { indexed: false, internalType: 'bool', name: 'isSync', type: 'bool' },
182
+ {
183
+ indexed: false,
184
+ internalType: 'uint256',
185
+ name: 'shares',
186
+ type: 'uint256',
187
+ },
188
+ { indexed: false, internalType: 'bytes', name: 'params', type: 'bytes' },
189
+ ],
190
+ name: 'MellowDeposited',
191
+ type: 'event',
192
+ },
193
+ {
194
+ anonymous: false,
195
+ inputs: [
196
+ {
197
+ indexed: true,
198
+ internalType: 'address',
199
+ name: 'msgSender',
200
+ type: 'address',
201
+ },
202
+ ],
203
+ name: 'MellowSharesClaimed',
204
+ type: 'event',
205
+ },
206
+ {
207
+ anonymous: false,
208
+ inputs: [
209
+ {
210
+ indexed: true,
211
+ internalType: 'address',
212
+ name: 'recipient',
213
+ type: 'address',
214
+ },
215
+ {
216
+ indexed: false,
217
+ internalType: 'bytes32',
218
+ name: 'requestId',
219
+ type: 'bytes32',
220
+ },
221
+ {
222
+ indexed: false,
223
+ internalType: 'uint256',
224
+ name: 'shares',
225
+ type: 'uint256',
226
+ },
227
+ ],
228
+ name: 'MellowWithdrawalRequested',
229
+ type: 'event',
230
+ },
231
+ {
232
+ anonymous: false,
233
+ inputs: [
234
+ { indexed: true, internalType: 'bytes32', name: 'role', type: 'bytes32' },
235
+ {
236
+ indexed: true,
237
+ internalType: 'bytes32',
238
+ name: 'previousAdminRole',
239
+ type: 'bytes32',
240
+ },
241
+ {
242
+ indexed: true,
243
+ internalType: 'bytes32',
244
+ name: 'newAdminRole',
245
+ type: 'bytes32',
246
+ },
247
+ ],
248
+ name: 'RoleAdminChanged',
249
+ type: 'event',
250
+ },
251
+ {
252
+ anonymous: false,
253
+ inputs: [
254
+ { indexed: true, internalType: 'bytes32', name: 'role', type: 'bytes32' },
255
+ {
256
+ indexed: true,
257
+ internalType: 'address',
258
+ name: 'account',
259
+ type: 'address',
260
+ },
261
+ {
262
+ indexed: true,
263
+ internalType: 'address',
264
+ name: 'sender',
265
+ type: 'address',
266
+ },
267
+ ],
268
+ name: 'RoleGranted',
269
+ type: 'event',
270
+ },
271
+ {
272
+ anonymous: false,
273
+ inputs: [
274
+ { indexed: true, internalType: 'bytes32', name: 'role', type: 'bytes32' },
275
+ {
276
+ indexed: true,
277
+ internalType: 'address',
278
+ name: 'account',
279
+ type: 'address',
280
+ },
281
+ {
282
+ indexed: true,
283
+ internalType: 'address',
284
+ name: 'sender',
285
+ type: 'address',
286
+ },
287
+ ],
288
+ name: 'RoleRevoked',
289
+ type: 'event',
290
+ },
291
+ {
292
+ anonymous: false,
293
+ inputs: [
294
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
295
+ {
296
+ indexed: false,
297
+ internalType: 'bytes32',
298
+ name: 'requestId',
299
+ type: 'bytes32',
300
+ },
301
+ {
302
+ indexed: false,
303
+ internalType: 'uint256',
304
+ name: 'wsteth',
305
+ type: 'uint256',
306
+ },
307
+ ],
308
+ name: 'StrategyExitFinalized',
309
+ type: 'event',
310
+ },
311
+ {
312
+ anonymous: false,
313
+ inputs: [
314
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
315
+ {
316
+ indexed: false,
317
+ internalType: 'bytes32',
318
+ name: 'requestId',
319
+ type: 'bytes32',
320
+ },
321
+ {
322
+ indexed: false,
323
+ internalType: 'uint256',
324
+ name: 'wsteth',
325
+ type: 'uint256',
326
+ },
327
+ { indexed: false, internalType: 'bytes', name: 'data', type: 'bytes' },
328
+ ],
329
+ name: 'StrategyExitRequested',
330
+ type: 'event',
331
+ },
332
+ {
333
+ anonymous: false,
334
+ inputs: [
335
+ { indexed: true, internalType: 'address', name: 'user', type: 'address' },
336
+ {
337
+ indexed: true,
338
+ internalType: 'address',
339
+ name: 'referral',
340
+ type: 'address',
341
+ },
342
+ {
343
+ indexed: false,
344
+ internalType: 'uint256',
345
+ name: 'ethAmount',
346
+ type: 'uint256',
347
+ },
348
+ { indexed: false, internalType: 'uint256', name: 'stv', type: 'uint256' },
349
+ {
350
+ indexed: false,
351
+ internalType: 'uint256',
352
+ name: 'wstethToMint',
353
+ type: 'uint256',
354
+ },
355
+ { indexed: false, internalType: 'bytes', name: 'data', type: 'bytes' },
356
+ ],
357
+ name: 'StrategySupplied',
358
+ type: 'event',
359
+ },
360
+ {
361
+ inputs: [],
362
+ name: 'ALLOW_LIST_ENABLED',
363
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
364
+ stateMutability: 'view',
365
+ type: 'function',
366
+ },
367
+ {
368
+ inputs: [],
369
+ name: 'ALLOW_LIST_MANAGER_ROLE',
370
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
371
+ stateMutability: 'view',
372
+ type: 'function',
373
+ },
374
+ {
375
+ inputs: [],
376
+ name: 'DEFAULT_ADMIN_ROLE',
377
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
378
+ stateMutability: 'view',
379
+ type: 'function',
380
+ },
381
+ {
382
+ inputs: [],
383
+ name: 'DEPOSIT_ROLE',
384
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
385
+ stateMutability: 'view',
386
+ type: 'function',
387
+ },
388
+ {
389
+ inputs: [],
390
+ name: 'MELLOW_ASYNC_DEPOSIT_QUEUE',
391
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
392
+ stateMutability: 'view',
393
+ type: 'function',
394
+ },
395
+ {
396
+ inputs: [],
397
+ name: 'MELLOW_ASYNC_REDEEM_QUEUE',
398
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
399
+ stateMutability: 'view',
400
+ type: 'function',
401
+ },
402
+ {
403
+ inputs: [],
404
+ name: 'MELLOW_SYNC_DEPOSIT_QUEUE',
405
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
406
+ stateMutability: 'view',
407
+ type: 'function',
408
+ },
409
+ {
410
+ inputs: [],
411
+ name: 'MELLOW_VAULT',
412
+ outputs: [{ internalType: 'contract IVault', name: '', type: 'address' }],
413
+ stateMutability: 'view',
414
+ type: 'function',
415
+ },
416
+ {
417
+ inputs: [],
418
+ name: 'POOL',
419
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
420
+ stateMutability: 'view',
421
+ type: 'function',
422
+ },
423
+ {
424
+ inputs: [],
425
+ name: 'REDEEM_FEATURE',
426
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
427
+ stateMutability: 'view',
428
+ type: 'function',
429
+ },
430
+ {
431
+ inputs: [],
432
+ name: 'REDEEM_PAUSE_ROLE',
433
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
434
+ stateMutability: 'view',
435
+ type: 'function',
436
+ },
437
+ {
438
+ inputs: [],
439
+ name: 'REDEEM_RESUME_ROLE',
440
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
441
+ stateMutability: 'view',
442
+ type: 'function',
443
+ },
444
+ {
445
+ inputs: [],
446
+ name: 'STRATEGY_CALL_FORWARDER_IMPL',
447
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
448
+ stateMutability: 'view',
449
+ type: 'function',
450
+ },
451
+ {
452
+ inputs: [],
453
+ name: 'STRATEGY_ID',
454
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
455
+ stateMutability: 'view',
456
+ type: 'function',
457
+ },
458
+ {
459
+ inputs: [],
460
+ name: 'SUPPLY_FEATURE',
461
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
462
+ stateMutability: 'view',
463
+ type: 'function',
464
+ },
465
+ {
466
+ inputs: [],
467
+ name: 'SUPPLY_PAUSE_ROLE',
468
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
469
+ stateMutability: 'view',
470
+ type: 'function',
471
+ },
472
+ {
473
+ inputs: [],
474
+ name: 'SUPPLY_RESUME_ROLE',
475
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
476
+ stateMutability: 'view',
477
+ type: 'function',
478
+ },
479
+ {
480
+ inputs: [],
481
+ name: 'WSTETH',
482
+ outputs: [{ internalType: 'contract IWstETH', name: '', type: 'address' }],
483
+ stateMutability: 'view',
484
+ type: 'function',
485
+ },
486
+ {
487
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
488
+ name: 'activeSharesOf',
489
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
490
+ stateMutability: 'view',
491
+ type: 'function',
492
+ },
493
+ {
494
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
495
+ name: 'addToAllowList',
496
+ outputs: [],
497
+ stateMutability: 'nonpayable',
498
+ type: 'function',
499
+ },
500
+ {
501
+ inputs: [
502
+ { internalType: 'uint256', name: '_wstethToBurn', type: 'uint256' },
503
+ ],
504
+ name: 'burnWsteth',
505
+ outputs: [],
506
+ stateMutability: 'nonpayable',
507
+ type: 'function',
508
+ },
509
+ {
510
+ inputs: [],
511
+ name: 'claimShares',
512
+ outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],
513
+ stateMutability: 'nonpayable',
514
+ type: 'function',
515
+ },
516
+ {
517
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
518
+ name: 'claimableSharesOf',
519
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
520
+ stateMutability: 'view',
521
+ type: 'function',
522
+ },
523
+ {
524
+ inputs: [{ internalType: 'bytes32', name: 'requestId', type: 'bytes32' }],
525
+ name: 'finalizeRequestExit',
526
+ outputs: [],
527
+ stateMutability: 'nonpayable',
528
+ type: 'function',
529
+ },
530
+ {
531
+ inputs: [],
532
+ name: 'getAllowListAddresses',
533
+ outputs: [{ internalType: 'address[]', name: '', type: 'address[]' }],
534
+ stateMutability: 'view',
535
+ type: 'function',
536
+ },
537
+ {
538
+ inputs: [],
539
+ name: 'getAllowListSize',
540
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
541
+ stateMutability: 'view',
542
+ type: 'function',
543
+ },
544
+ {
545
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
546
+ name: 'getDepositRequestOf',
547
+ outputs: [
548
+ { internalType: 'uint256', name: 'assets', type: 'uint256' },
549
+ { internalType: 'uint256', name: 'timestamp', type: 'uint256' },
550
+ { internalType: 'bool', name: 'isClaimable', type: 'bool' },
551
+ ],
552
+ stateMutability: 'view',
553
+ type: 'function',
554
+ },
555
+ {
556
+ inputs: [
557
+ { internalType: 'address', name: 'account', type: 'address' },
558
+ { internalType: 'uint256', name: 'offset', type: 'uint256' },
559
+ { internalType: 'uint256', name: 'limit', type: 'uint256' },
560
+ ],
561
+ name: 'getRedeemQueueRequests',
562
+ outputs: [
563
+ {
564
+ components: [
565
+ { internalType: 'uint256', name: 'timestamp', type: 'uint256' },
566
+ { internalType: 'uint256', name: 'shares', type: 'uint256' },
567
+ { internalType: 'bool', name: 'isClaimable', type: 'bool' },
568
+ { internalType: 'uint256', name: 'assets', type: 'uint256' },
569
+ ],
570
+ internalType: 'struct IRedeemQueue.Request[]',
571
+ name: '',
572
+ type: 'tuple[]',
573
+ },
574
+ ],
575
+ stateMutability: 'view',
576
+ type: 'function',
577
+ },
578
+ {
579
+ inputs: [{ internalType: 'bytes32', name: 'role', type: 'bytes32' }],
580
+ name: 'getRoleAdmin',
581
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
582
+ stateMutability: 'view',
583
+ type: 'function',
584
+ },
585
+ {
586
+ inputs: [
587
+ { internalType: 'bytes32', name: 'role', type: 'bytes32' },
588
+ { internalType: 'uint256', name: 'index', type: 'uint256' },
589
+ ],
590
+ name: 'getRoleMember',
591
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
592
+ stateMutability: 'view',
593
+ type: 'function',
594
+ },
595
+ {
596
+ inputs: [{ internalType: 'bytes32', name: 'role', type: 'bytes32' }],
597
+ name: 'getRoleMemberCount',
598
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
599
+ stateMutability: 'view',
600
+ type: 'function',
601
+ },
602
+ {
603
+ inputs: [{ internalType: 'bytes32', name: 'role', type: 'bytes32' }],
604
+ name: 'getRoleMembers',
605
+ outputs: [{ internalType: 'address[]', name: '', type: 'address[]' }],
606
+ stateMutability: 'view',
607
+ type: 'function',
608
+ },
609
+ {
610
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
611
+ name: 'getStrategyCallForwarderAddress',
612
+ outputs: [
613
+ {
614
+ internalType: 'contract IStrategyCallForwarder',
615
+ name: 'callForwarder',
616
+ type: 'address',
617
+ },
618
+ ],
619
+ stateMutability: 'view',
620
+ type: 'function',
621
+ },
622
+ {
623
+ inputs: [],
624
+ name: 'getUncheckedWstETHReport',
625
+ outputs: [
626
+ { internalType: 'bool', name: 'isSuspicious', type: 'bool' },
627
+ { internalType: 'uint256', name: 'priceD18', type: 'uint256' },
628
+ { internalType: 'uint32', name: 'timestamp', type: 'uint32' },
629
+ ],
630
+ stateMutability: 'view',
631
+ type: 'function',
632
+ },
633
+ {
634
+ inputs: [
635
+ { internalType: 'bytes32', name: 'role', type: 'bytes32' },
636
+ { internalType: 'address', name: 'account', type: 'address' },
637
+ ],
638
+ name: 'grantRole',
639
+ outputs: [],
640
+ stateMutability: 'nonpayable',
641
+ type: 'function',
642
+ },
643
+ {
644
+ inputs: [
645
+ { internalType: 'bytes32', name: 'role', type: 'bytes32' },
646
+ { internalType: 'address', name: 'account', type: 'address' },
647
+ ],
648
+ name: 'hasRole',
649
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
650
+ stateMutability: 'view',
651
+ type: 'function',
652
+ },
653
+ {
654
+ inputs: [
655
+ { internalType: 'address', name: 'admin_', type: 'address' },
656
+ { internalType: 'address', name: 'supplyPauser_', type: 'address' },
657
+ ],
658
+ name: 'initialize',
659
+ outputs: [],
660
+ stateMutability: 'nonpayable',
661
+ type: 'function',
662
+ },
663
+ {
664
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
665
+ name: 'isAllowListed',
666
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
667
+ stateMutability: 'view',
668
+ type: 'function',
669
+ },
670
+ {
671
+ inputs: [{ internalType: 'bytes32', name: '_featureId', type: 'bytes32' }],
672
+ name: 'isFeaturePaused',
673
+ outputs: [{ internalType: 'bool', name: 'isPaused', type: 'bool' }],
674
+ stateMutability: 'view',
675
+ type: 'function',
676
+ },
677
+ {
678
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
679
+ name: 'mintedStethSharesOf',
680
+ outputs: [
681
+ { internalType: 'uint256', name: 'mintedStethShares', type: 'uint256' },
682
+ ],
683
+ stateMutability: 'view',
684
+ type: 'function',
685
+ },
686
+ {
687
+ inputs: [],
688
+ name: 'pauseRedeem',
689
+ outputs: [],
690
+ stateMutability: 'nonpayable',
691
+ type: 'function',
692
+ },
693
+ {
694
+ inputs: [],
695
+ name: 'pauseSupply',
696
+ outputs: [],
697
+ stateMutability: 'nonpayable',
698
+ type: 'function',
699
+ },
700
+ {
701
+ inputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
702
+ name: 'previewRedeem',
703
+ outputs: [
704
+ { internalType: 'bool', name: 'success', type: 'bool' },
705
+ { internalType: 'uint256', name: 'assets', type: 'uint256' },
706
+ ],
707
+ stateMutability: 'view',
708
+ type: 'function',
709
+ },
710
+ {
711
+ inputs: [
712
+ { internalType: 'uint256', name: 'assets', type: 'uint256' },
713
+ { internalType: 'address', name: 'msgSender', type: 'address' },
714
+ { internalType: 'address', name: 'callForwarder', type: 'address' },
715
+ {
716
+ components: [
717
+ { internalType: 'bool', name: 'isSync', type: 'bool' },
718
+ { internalType: 'bytes32[]', name: 'merkleProof', type: 'bytes32[]' },
719
+ ],
720
+ internalType: 'struct MellowStrategy.MellowSupplyParams',
721
+ name: 'supplyParams',
722
+ type: 'tuple',
723
+ },
724
+ ],
725
+ name: 'previewSupply',
726
+ outputs: [
727
+ { internalType: 'bool', name: 'success', type: 'bool' },
728
+ { internalType: 'uint256', name: 'shares', type: 'uint256' },
729
+ ],
730
+ stateMutability: 'view',
731
+ type: 'function',
732
+ },
733
+ {
734
+ inputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
735
+ name: 'previewWithdraw',
736
+ outputs: [
737
+ { internalType: 'bool', name: 'success', type: 'bool' },
738
+ { internalType: 'uint256', name: 'shares', type: 'uint256' },
739
+ ],
740
+ stateMutability: 'view',
741
+ type: 'function',
742
+ },
743
+ {
744
+ inputs: [
745
+ { internalType: 'address', name: '_user', type: 'address' },
746
+ { internalType: 'uint256', name: '_ethToFund', type: 'uint256' },
747
+ ],
748
+ name: 'remainingMintingCapacitySharesOf',
749
+ outputs: [
750
+ { internalType: 'uint256', name: 'stethShares', type: 'uint256' },
751
+ ],
752
+ stateMutability: 'view',
753
+ type: 'function',
754
+ },
755
+ {
756
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
757
+ name: 'removeFromAllowList',
758
+ outputs: [],
759
+ stateMutability: 'nonpayable',
760
+ type: 'function',
761
+ },
762
+ {
763
+ inputs: [
764
+ { internalType: 'bytes32', name: 'role', type: 'bytes32' },
765
+ { internalType: 'address', name: 'callerConfirmation', type: 'address' },
766
+ ],
767
+ name: 'renounceRole',
768
+ outputs: [],
769
+ stateMutability: 'nonpayable',
770
+ type: 'function',
771
+ },
772
+ {
773
+ inputs: [
774
+ { internalType: 'uint256', name: 'shares', type: 'uint256' },
775
+ { internalType: 'bytes', name: '', type: 'bytes' },
776
+ ],
777
+ name: 'requestExitByShares',
778
+ outputs: [{ internalType: 'bytes32', name: 'requestId', type: 'bytes32' }],
779
+ stateMutability: 'nonpayable',
780
+ type: 'function',
781
+ },
782
+ {
783
+ inputs: [
784
+ { internalType: 'uint256', name: 'assets', type: 'uint256' },
785
+ { internalType: 'bytes', name: '', type: 'bytes' },
786
+ ],
787
+ name: 'requestExitByWsteth',
788
+ outputs: [{ internalType: 'bytes32', name: 'requestId', type: 'bytes32' }],
789
+ stateMutability: 'nonpayable',
790
+ type: 'function',
791
+ },
792
+ {
793
+ inputs: [
794
+ { internalType: 'address', name: '_recipient', type: 'address' },
795
+ { internalType: 'uint256', name: '_stvToWithdraw', type: 'uint256' },
796
+ {
797
+ internalType: 'uint256',
798
+ name: '_stethSharesToRebalance',
799
+ type: 'uint256',
800
+ },
801
+ ],
802
+ name: 'requestWithdrawalFromPool',
803
+ outputs: [{ internalType: 'uint256', name: 'requestId', type: 'uint256' }],
804
+ stateMutability: 'nonpayable',
805
+ type: 'function',
806
+ },
807
+ {
808
+ inputs: [],
809
+ name: 'resumeRedeem',
810
+ outputs: [],
811
+ stateMutability: 'nonpayable',
812
+ type: 'function',
813
+ },
814
+ {
815
+ inputs: [],
816
+ name: 'resumeSupply',
817
+ outputs: [],
818
+ stateMutability: 'nonpayable',
819
+ type: 'function',
820
+ },
821
+ {
822
+ inputs: [
823
+ { internalType: 'bytes32', name: 'role', type: 'bytes32' },
824
+ { internalType: 'address', name: 'account', type: 'address' },
825
+ ],
826
+ name: 'revokeRole',
827
+ outputs: [],
828
+ stateMutability: 'nonpayable',
829
+ type: 'function',
830
+ },
831
+ {
832
+ inputs: [
833
+ { internalType: 'address', name: '_token', type: 'address' },
834
+ { internalType: 'address', name: '_recipient', type: 'address' },
835
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
836
+ ],
837
+ name: 'safeTransferERC20',
838
+ outputs: [],
839
+ stateMutability: 'nonpayable',
840
+ type: 'function',
841
+ },
842
+ {
843
+ inputs: [
844
+ { internalType: 'address', name: '_recipient', type: 'address' },
845
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
846
+ ],
847
+ name: 'safeTransferETH',
848
+ outputs: [],
849
+ stateMutability: 'nonpayable',
850
+ type: 'function',
851
+ },
852
+ {
853
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
854
+ name: 'sharesOf',
855
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
856
+ stateMutability: 'view',
857
+ type: 'function',
858
+ },
859
+ {
860
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
861
+ name: 'stvOf',
862
+ outputs: [{ internalType: 'uint256', name: 'stv', type: 'uint256' }],
863
+ stateMutability: 'view',
864
+ type: 'function',
865
+ },
866
+ {
867
+ inputs: [
868
+ { internalType: 'address', name: 'referral', type: 'address' },
869
+ { internalType: 'uint256', name: 'assets', type: 'uint256' },
870
+ { internalType: 'bytes', name: 'params', type: 'bytes' },
871
+ ],
872
+ name: 'supply',
873
+ outputs: [{ internalType: 'uint256', name: 'stv', type: 'uint256' }],
874
+ stateMutability: 'payable',
875
+ type: 'function',
876
+ },
877
+ {
878
+ inputs: [{ internalType: 'bytes4', name: 'interfaceId', type: 'bytes4' }],
879
+ name: 'supportsInterface',
880
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
881
+ stateMutability: 'view',
882
+ type: 'function',
883
+ },
884
+ {
885
+ inputs: [{ internalType: 'address', name: '_user', type: 'address' }],
886
+ name: 'wstethOf',
887
+ outputs: [{ internalType: 'uint256', name: 'wsteth', type: 'uint256' }],
888
+ stateMutability: 'view',
889
+ type: 'function',
890
+ },
891
+ ];
892
+ //# sourceMappingURL=MellowStrategy.js.map