@paraswap/dex-lib 2.50.6 → 2.50.7-sdai

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 (64) hide show
  1. package/build/abi/maker-psm/pot.json +322 -0
  2. package/build/abi/{wombat/pool.json → sdai/SavingsDai.abi.json} +289 -701
  3. package/build/config.js +5 -2
  4. package/build/config.js.map +1 -1
  5. package/build/dex/dexalot/config.js +7 -0
  6. package/build/dex/dexalot/config.js.map +1 -1
  7. package/build/dex/index.js +2 -0
  8. package/build/dex/index.js.map +1 -1
  9. package/build/dex/sdai/config.d.ts +11 -0
  10. package/build/dex/sdai/config.js +24 -0
  11. package/build/dex/sdai/config.js.map +1 -0
  12. package/build/dex/sdai/constants.d.ts +2 -0
  13. package/build/dex/sdai/constants.js +6 -0
  14. package/build/dex/sdai/constants.js.map +1 -0
  15. package/build/dex/sdai/scripts/validate-state.js +102 -0
  16. package/build/dex/sdai/scripts/validate-state.js.map +1 -0
  17. package/build/dex/sdai/sdai-pool.d.ts +16 -0
  18. package/build/dex/sdai/sdai-pool.js +85 -0
  19. package/build/dex/sdai/sdai-pool.js.map +1 -0
  20. package/build/dex/sdai/sdai.d.ts +51 -0
  21. package/build/dex/sdai/sdai.js +172 -0
  22. package/build/dex/sdai/sdai.js.map +1 -0
  23. package/build/dex/sdai/types.d.ts +21 -0
  24. package/build/dex/sdai/types.js +11 -0
  25. package/build/dex/sdai/types.js.map +1 -0
  26. package/build/dex/sdai/utils.d.ts +4 -0
  27. package/build/dex/sdai/utils.js +39 -0
  28. package/build/dex/sdai/utils.js.map +1 -0
  29. package/package.json +1 -1
  30. package/src/abi/maker-psm/pot.json +322 -0
  31. package/src/abi/sdai/SavingsDai.abi.json +877 -0
  32. package/src/config.ts +5 -2
  33. package/src/dex/dexalot/config.ts +7 -0
  34. package/src/dex/dexalot/dexalot-e2e.test.ts +23 -1
  35. package/src/dex/dexalot/dexalot-integration.test.ts +121 -0
  36. package/src/dex/index.ts +2 -0
  37. package/src/dex/sdai/config.ts +28 -0
  38. package/src/dex/sdai/constants.ts +2 -0
  39. package/src/dex/sdai/scripts/validate-state.ts +144 -0
  40. package/src/dex/sdai/sdai-e2e.test.ts +96 -0
  41. package/src/dex/sdai/sdai-events.test.ts +105 -0
  42. package/src/dex/sdai/sdai-integration.test.ts +148 -0
  43. package/src/dex/sdai/sdai-pool.ts +113 -0
  44. package/src/dex/sdai/sdai.ts +233 -0
  45. package/src/dex/sdai/types.ts +23 -0
  46. package/src/dex/sdai/utils.ts +48 -0
  47. package/tests/constants-e2e.ts +2 -2
  48. package/.vscode/launch.json +0 -53
  49. package/.vscode/settings.json +0 -2
  50. package/.vscode/tasks.json +0 -15
  51. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +0 -52
  52. package/build/dex/aave-v2/tokens-avalanche.json +0 -44
  53. package/build/dex/aave-v2/tokens-mainnet.json +0 -188
  54. package/build/dex/aave-v2/tokens-polygon.json +0 -44
  55. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +0 -53
  56. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +0 -1
  57. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +0 -17
  58. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +0 -64
  59. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +0 -1
  60. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +0 -17
  61. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +0 -79
  62. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +0 -1
  63. package/main-config.ts +0 -4484
  64. /package/build/dex/{solidly-v3/scripts/check-event-pool-event.d.ts → sdai/scripts/validate-state.d.ts} +0 -0
@@ -0,0 +1,877 @@
1
+ [
2
+ {
3
+ "inputs": [
4
+ {
5
+ "internalType": "address",
6
+ "name": "_daiJoin",
7
+ "type": "address"
8
+ },
9
+ {
10
+ "internalType": "address",
11
+ "name": "_pot",
12
+ "type": "address"
13
+ }
14
+ ],
15
+ "stateMutability": "nonpayable",
16
+ "type": "constructor"
17
+ },
18
+ {
19
+ "anonymous": false,
20
+ "inputs": [
21
+ {
22
+ "indexed": true,
23
+ "internalType": "address",
24
+ "name": "owner",
25
+ "type": "address"
26
+ },
27
+ {
28
+ "indexed": true,
29
+ "internalType": "address",
30
+ "name": "spender",
31
+ "type": "address"
32
+ },
33
+ {
34
+ "indexed": false,
35
+ "internalType": "uint256",
36
+ "name": "value",
37
+ "type": "uint256"
38
+ }
39
+ ],
40
+ "name": "Approval",
41
+ "type": "event"
42
+ },
43
+ {
44
+ "anonymous": false,
45
+ "inputs": [
46
+ {
47
+ "indexed": true,
48
+ "internalType": "address",
49
+ "name": "sender",
50
+ "type": "address"
51
+ },
52
+ {
53
+ "indexed": true,
54
+ "internalType": "address",
55
+ "name": "owner",
56
+ "type": "address"
57
+ },
58
+ {
59
+ "indexed": false,
60
+ "internalType": "uint256",
61
+ "name": "assets",
62
+ "type": "uint256"
63
+ },
64
+ {
65
+ "indexed": false,
66
+ "internalType": "uint256",
67
+ "name": "shares",
68
+ "type": "uint256"
69
+ }
70
+ ],
71
+ "name": "Deposit",
72
+ "type": "event"
73
+ },
74
+ {
75
+ "anonymous": false,
76
+ "inputs": [
77
+ {
78
+ "indexed": true,
79
+ "internalType": "address",
80
+ "name": "from",
81
+ "type": "address"
82
+ },
83
+ {
84
+ "indexed": true,
85
+ "internalType": "address",
86
+ "name": "to",
87
+ "type": "address"
88
+ },
89
+ {
90
+ "indexed": false,
91
+ "internalType": "uint256",
92
+ "name": "value",
93
+ "type": "uint256"
94
+ }
95
+ ],
96
+ "name": "Transfer",
97
+ "type": "event"
98
+ },
99
+ {
100
+ "anonymous": false,
101
+ "inputs": [
102
+ {
103
+ "indexed": true,
104
+ "internalType": "address",
105
+ "name": "sender",
106
+ "type": "address"
107
+ },
108
+ {
109
+ "indexed": true,
110
+ "internalType": "address",
111
+ "name": "receiver",
112
+ "type": "address"
113
+ },
114
+ {
115
+ "indexed": true,
116
+ "internalType": "address",
117
+ "name": "owner",
118
+ "type": "address"
119
+ },
120
+ {
121
+ "indexed": false,
122
+ "internalType": "uint256",
123
+ "name": "assets",
124
+ "type": "uint256"
125
+ },
126
+ {
127
+ "indexed": false,
128
+ "internalType": "uint256",
129
+ "name": "shares",
130
+ "type": "uint256"
131
+ }
132
+ ],
133
+ "name": "Withdraw",
134
+ "type": "event"
135
+ },
136
+ {
137
+ "inputs": [],
138
+ "name": "DOMAIN_SEPARATOR",
139
+ "outputs": [
140
+ {
141
+ "internalType": "bytes32",
142
+ "name": "",
143
+ "type": "bytes32"
144
+ }
145
+ ],
146
+ "stateMutability": "view",
147
+ "type": "function"
148
+ },
149
+ {
150
+ "inputs": [],
151
+ "name": "PERMIT_TYPEHASH",
152
+ "outputs": [
153
+ {
154
+ "internalType": "bytes32",
155
+ "name": "",
156
+ "type": "bytes32"
157
+ }
158
+ ],
159
+ "stateMutability": "view",
160
+ "type": "function"
161
+ },
162
+ {
163
+ "inputs": [
164
+ {
165
+ "internalType": "address",
166
+ "name": "",
167
+ "type": "address"
168
+ },
169
+ {
170
+ "internalType": "address",
171
+ "name": "",
172
+ "type": "address"
173
+ }
174
+ ],
175
+ "name": "allowance",
176
+ "outputs": [
177
+ {
178
+ "internalType": "uint256",
179
+ "name": "",
180
+ "type": "uint256"
181
+ }
182
+ ],
183
+ "stateMutability": "view",
184
+ "type": "function"
185
+ },
186
+ {
187
+ "inputs": [
188
+ {
189
+ "internalType": "address",
190
+ "name": "spender",
191
+ "type": "address"
192
+ },
193
+ {
194
+ "internalType": "uint256",
195
+ "name": "value",
196
+ "type": "uint256"
197
+ }
198
+ ],
199
+ "name": "approve",
200
+ "outputs": [
201
+ {
202
+ "internalType": "bool",
203
+ "name": "",
204
+ "type": "bool"
205
+ }
206
+ ],
207
+ "stateMutability": "nonpayable",
208
+ "type": "function"
209
+ },
210
+ {
211
+ "inputs": [],
212
+ "name": "asset",
213
+ "outputs": [
214
+ {
215
+ "internalType": "address",
216
+ "name": "",
217
+ "type": "address"
218
+ }
219
+ ],
220
+ "stateMutability": "view",
221
+ "type": "function"
222
+ },
223
+ {
224
+ "inputs": [
225
+ {
226
+ "internalType": "address",
227
+ "name": "",
228
+ "type": "address"
229
+ }
230
+ ],
231
+ "name": "balanceOf",
232
+ "outputs": [
233
+ {
234
+ "internalType": "uint256",
235
+ "name": "",
236
+ "type": "uint256"
237
+ }
238
+ ],
239
+ "stateMutability": "view",
240
+ "type": "function"
241
+ },
242
+ {
243
+ "inputs": [
244
+ {
245
+ "internalType": "uint256",
246
+ "name": "shares",
247
+ "type": "uint256"
248
+ }
249
+ ],
250
+ "name": "convertToAssets",
251
+ "outputs": [
252
+ {
253
+ "internalType": "uint256",
254
+ "name": "",
255
+ "type": "uint256"
256
+ }
257
+ ],
258
+ "stateMutability": "view",
259
+ "type": "function"
260
+ },
261
+ {
262
+ "inputs": [
263
+ {
264
+ "internalType": "uint256",
265
+ "name": "assets",
266
+ "type": "uint256"
267
+ }
268
+ ],
269
+ "name": "convertToShares",
270
+ "outputs": [
271
+ {
272
+ "internalType": "uint256",
273
+ "name": "",
274
+ "type": "uint256"
275
+ }
276
+ ],
277
+ "stateMutability": "view",
278
+ "type": "function"
279
+ },
280
+ {
281
+ "inputs": [],
282
+ "name": "dai",
283
+ "outputs": [
284
+ {
285
+ "internalType": "contract DaiLike",
286
+ "name": "",
287
+ "type": "address"
288
+ }
289
+ ],
290
+ "stateMutability": "view",
291
+ "type": "function"
292
+ },
293
+ {
294
+ "inputs": [],
295
+ "name": "daiJoin",
296
+ "outputs": [
297
+ {
298
+ "internalType": "contract DaiJoinLike",
299
+ "name": "",
300
+ "type": "address"
301
+ }
302
+ ],
303
+ "stateMutability": "view",
304
+ "type": "function"
305
+ },
306
+ {
307
+ "inputs": [],
308
+ "name": "decimals",
309
+ "outputs": [
310
+ {
311
+ "internalType": "uint8",
312
+ "name": "",
313
+ "type": "uint8"
314
+ }
315
+ ],
316
+ "stateMutability": "view",
317
+ "type": "function"
318
+ },
319
+ {
320
+ "inputs": [
321
+ {
322
+ "internalType": "address",
323
+ "name": "spender",
324
+ "type": "address"
325
+ },
326
+ {
327
+ "internalType": "uint256",
328
+ "name": "subtractedValue",
329
+ "type": "uint256"
330
+ }
331
+ ],
332
+ "name": "decreaseAllowance",
333
+ "outputs": [
334
+ {
335
+ "internalType": "bool",
336
+ "name": "",
337
+ "type": "bool"
338
+ }
339
+ ],
340
+ "stateMutability": "nonpayable",
341
+ "type": "function"
342
+ },
343
+ {
344
+ "inputs": [],
345
+ "name": "deploymentChainId",
346
+ "outputs": [
347
+ {
348
+ "internalType": "uint256",
349
+ "name": "",
350
+ "type": "uint256"
351
+ }
352
+ ],
353
+ "stateMutability": "view",
354
+ "type": "function"
355
+ },
356
+ {
357
+ "inputs": [
358
+ {
359
+ "internalType": "uint256",
360
+ "name": "assets",
361
+ "type": "uint256"
362
+ },
363
+ {
364
+ "internalType": "address",
365
+ "name": "receiver",
366
+ "type": "address"
367
+ }
368
+ ],
369
+ "name": "deposit",
370
+ "outputs": [
371
+ {
372
+ "internalType": "uint256",
373
+ "name": "shares",
374
+ "type": "uint256"
375
+ }
376
+ ],
377
+ "stateMutability": "nonpayable",
378
+ "type": "function"
379
+ },
380
+ {
381
+ "inputs": [
382
+ {
383
+ "internalType": "address",
384
+ "name": "spender",
385
+ "type": "address"
386
+ },
387
+ {
388
+ "internalType": "uint256",
389
+ "name": "addedValue",
390
+ "type": "uint256"
391
+ }
392
+ ],
393
+ "name": "increaseAllowance",
394
+ "outputs": [
395
+ {
396
+ "internalType": "bool",
397
+ "name": "",
398
+ "type": "bool"
399
+ }
400
+ ],
401
+ "stateMutability": "nonpayable",
402
+ "type": "function"
403
+ },
404
+ {
405
+ "inputs": [
406
+ {
407
+ "internalType": "address",
408
+ "name": "",
409
+ "type": "address"
410
+ }
411
+ ],
412
+ "name": "maxDeposit",
413
+ "outputs": [
414
+ {
415
+ "internalType": "uint256",
416
+ "name": "",
417
+ "type": "uint256"
418
+ }
419
+ ],
420
+ "stateMutability": "pure",
421
+ "type": "function"
422
+ },
423
+ {
424
+ "inputs": [
425
+ {
426
+ "internalType": "address",
427
+ "name": "",
428
+ "type": "address"
429
+ }
430
+ ],
431
+ "name": "maxMint",
432
+ "outputs": [
433
+ {
434
+ "internalType": "uint256",
435
+ "name": "",
436
+ "type": "uint256"
437
+ }
438
+ ],
439
+ "stateMutability": "pure",
440
+ "type": "function"
441
+ },
442
+ {
443
+ "inputs": [
444
+ {
445
+ "internalType": "address",
446
+ "name": "owner",
447
+ "type": "address"
448
+ }
449
+ ],
450
+ "name": "maxRedeem",
451
+ "outputs": [
452
+ {
453
+ "internalType": "uint256",
454
+ "name": "",
455
+ "type": "uint256"
456
+ }
457
+ ],
458
+ "stateMutability": "view",
459
+ "type": "function"
460
+ },
461
+ {
462
+ "inputs": [
463
+ {
464
+ "internalType": "address",
465
+ "name": "owner",
466
+ "type": "address"
467
+ }
468
+ ],
469
+ "name": "maxWithdraw",
470
+ "outputs": [
471
+ {
472
+ "internalType": "uint256",
473
+ "name": "",
474
+ "type": "uint256"
475
+ }
476
+ ],
477
+ "stateMutability": "view",
478
+ "type": "function"
479
+ },
480
+ {
481
+ "inputs": [
482
+ {
483
+ "internalType": "uint256",
484
+ "name": "shares",
485
+ "type": "uint256"
486
+ },
487
+ {
488
+ "internalType": "address",
489
+ "name": "receiver",
490
+ "type": "address"
491
+ }
492
+ ],
493
+ "name": "mint",
494
+ "outputs": [
495
+ {
496
+ "internalType": "uint256",
497
+ "name": "assets",
498
+ "type": "uint256"
499
+ }
500
+ ],
501
+ "stateMutability": "nonpayable",
502
+ "type": "function"
503
+ },
504
+ {
505
+ "inputs": [],
506
+ "name": "name",
507
+ "outputs": [
508
+ {
509
+ "internalType": "string",
510
+ "name": "",
511
+ "type": "string"
512
+ }
513
+ ],
514
+ "stateMutability": "view",
515
+ "type": "function"
516
+ },
517
+ {
518
+ "inputs": [
519
+ {
520
+ "internalType": "address",
521
+ "name": "",
522
+ "type": "address"
523
+ }
524
+ ],
525
+ "name": "nonces",
526
+ "outputs": [
527
+ {
528
+ "internalType": "uint256",
529
+ "name": "",
530
+ "type": "uint256"
531
+ }
532
+ ],
533
+ "stateMutability": "view",
534
+ "type": "function"
535
+ },
536
+ {
537
+ "inputs": [
538
+ {
539
+ "internalType": "address",
540
+ "name": "owner",
541
+ "type": "address"
542
+ },
543
+ {
544
+ "internalType": "address",
545
+ "name": "spender",
546
+ "type": "address"
547
+ },
548
+ {
549
+ "internalType": "uint256",
550
+ "name": "value",
551
+ "type": "uint256"
552
+ },
553
+ {
554
+ "internalType": "uint256",
555
+ "name": "deadline",
556
+ "type": "uint256"
557
+ },
558
+ {
559
+ "internalType": "bytes",
560
+ "name": "signature",
561
+ "type": "bytes"
562
+ }
563
+ ],
564
+ "name": "permit",
565
+ "outputs": [],
566
+ "stateMutability": "nonpayable",
567
+ "type": "function"
568
+ },
569
+ {
570
+ "inputs": [
571
+ {
572
+ "internalType": "address",
573
+ "name": "owner",
574
+ "type": "address"
575
+ },
576
+ {
577
+ "internalType": "address",
578
+ "name": "spender",
579
+ "type": "address"
580
+ },
581
+ {
582
+ "internalType": "uint256",
583
+ "name": "value",
584
+ "type": "uint256"
585
+ },
586
+ {
587
+ "internalType": "uint256",
588
+ "name": "deadline",
589
+ "type": "uint256"
590
+ },
591
+ {
592
+ "internalType": "uint8",
593
+ "name": "v",
594
+ "type": "uint8"
595
+ },
596
+ {
597
+ "internalType": "bytes32",
598
+ "name": "r",
599
+ "type": "bytes32"
600
+ },
601
+ {
602
+ "internalType": "bytes32",
603
+ "name": "s",
604
+ "type": "bytes32"
605
+ }
606
+ ],
607
+ "name": "permit",
608
+ "outputs": [],
609
+ "stateMutability": "nonpayable",
610
+ "type": "function"
611
+ },
612
+ {
613
+ "inputs": [],
614
+ "name": "pot",
615
+ "outputs": [
616
+ {
617
+ "internalType": "contract PotLike",
618
+ "name": "",
619
+ "type": "address"
620
+ }
621
+ ],
622
+ "stateMutability": "view",
623
+ "type": "function"
624
+ },
625
+ {
626
+ "inputs": [
627
+ {
628
+ "internalType": "uint256",
629
+ "name": "assets",
630
+ "type": "uint256"
631
+ }
632
+ ],
633
+ "name": "previewDeposit",
634
+ "outputs": [
635
+ {
636
+ "internalType": "uint256",
637
+ "name": "",
638
+ "type": "uint256"
639
+ }
640
+ ],
641
+ "stateMutability": "view",
642
+ "type": "function"
643
+ },
644
+ {
645
+ "inputs": [
646
+ {
647
+ "internalType": "uint256",
648
+ "name": "shares",
649
+ "type": "uint256"
650
+ }
651
+ ],
652
+ "name": "previewMint",
653
+ "outputs": [
654
+ {
655
+ "internalType": "uint256",
656
+ "name": "",
657
+ "type": "uint256"
658
+ }
659
+ ],
660
+ "stateMutability": "view",
661
+ "type": "function"
662
+ },
663
+ {
664
+ "inputs": [
665
+ {
666
+ "internalType": "uint256",
667
+ "name": "shares",
668
+ "type": "uint256"
669
+ }
670
+ ],
671
+ "name": "previewRedeem",
672
+ "outputs": [
673
+ {
674
+ "internalType": "uint256",
675
+ "name": "",
676
+ "type": "uint256"
677
+ }
678
+ ],
679
+ "stateMutability": "view",
680
+ "type": "function"
681
+ },
682
+ {
683
+ "inputs": [
684
+ {
685
+ "internalType": "uint256",
686
+ "name": "assets",
687
+ "type": "uint256"
688
+ }
689
+ ],
690
+ "name": "previewWithdraw",
691
+ "outputs": [
692
+ {
693
+ "internalType": "uint256",
694
+ "name": "",
695
+ "type": "uint256"
696
+ }
697
+ ],
698
+ "stateMutability": "view",
699
+ "type": "function"
700
+ },
701
+ {
702
+ "inputs": [
703
+ {
704
+ "internalType": "uint256",
705
+ "name": "shares",
706
+ "type": "uint256"
707
+ },
708
+ {
709
+ "internalType": "address",
710
+ "name": "receiver",
711
+ "type": "address"
712
+ },
713
+ {
714
+ "internalType": "address",
715
+ "name": "owner",
716
+ "type": "address"
717
+ }
718
+ ],
719
+ "name": "redeem",
720
+ "outputs": [
721
+ {
722
+ "internalType": "uint256",
723
+ "name": "assets",
724
+ "type": "uint256"
725
+ }
726
+ ],
727
+ "stateMutability": "nonpayable",
728
+ "type": "function"
729
+ },
730
+ {
731
+ "inputs": [],
732
+ "name": "symbol",
733
+ "outputs": [
734
+ {
735
+ "internalType": "string",
736
+ "name": "",
737
+ "type": "string"
738
+ }
739
+ ],
740
+ "stateMutability": "view",
741
+ "type": "function"
742
+ },
743
+ {
744
+ "inputs": [],
745
+ "name": "totalAssets",
746
+ "outputs": [
747
+ {
748
+ "internalType": "uint256",
749
+ "name": "",
750
+ "type": "uint256"
751
+ }
752
+ ],
753
+ "stateMutability": "view",
754
+ "type": "function"
755
+ },
756
+ {
757
+ "inputs": [],
758
+ "name": "totalSupply",
759
+ "outputs": [
760
+ {
761
+ "internalType": "uint256",
762
+ "name": "",
763
+ "type": "uint256"
764
+ }
765
+ ],
766
+ "stateMutability": "view",
767
+ "type": "function"
768
+ },
769
+ {
770
+ "inputs": [
771
+ {
772
+ "internalType": "address",
773
+ "name": "to",
774
+ "type": "address"
775
+ },
776
+ {
777
+ "internalType": "uint256",
778
+ "name": "value",
779
+ "type": "uint256"
780
+ }
781
+ ],
782
+ "name": "transfer",
783
+ "outputs": [
784
+ {
785
+ "internalType": "bool",
786
+ "name": "",
787
+ "type": "bool"
788
+ }
789
+ ],
790
+ "stateMutability": "nonpayable",
791
+ "type": "function"
792
+ },
793
+ {
794
+ "inputs": [
795
+ {
796
+ "internalType": "address",
797
+ "name": "from",
798
+ "type": "address"
799
+ },
800
+ {
801
+ "internalType": "address",
802
+ "name": "to",
803
+ "type": "address"
804
+ },
805
+ {
806
+ "internalType": "uint256",
807
+ "name": "value",
808
+ "type": "uint256"
809
+ }
810
+ ],
811
+ "name": "transferFrom",
812
+ "outputs": [
813
+ {
814
+ "internalType": "bool",
815
+ "name": "",
816
+ "type": "bool"
817
+ }
818
+ ],
819
+ "stateMutability": "nonpayable",
820
+ "type": "function"
821
+ },
822
+ {
823
+ "inputs": [],
824
+ "name": "vat",
825
+ "outputs": [
826
+ {
827
+ "internalType": "contract VatLike",
828
+ "name": "",
829
+ "type": "address"
830
+ }
831
+ ],
832
+ "stateMutability": "view",
833
+ "type": "function"
834
+ },
835
+ {
836
+ "inputs": [],
837
+ "name": "version",
838
+ "outputs": [
839
+ {
840
+ "internalType": "string",
841
+ "name": "",
842
+ "type": "string"
843
+ }
844
+ ],
845
+ "stateMutability": "view",
846
+ "type": "function"
847
+ },
848
+ {
849
+ "inputs": [
850
+ {
851
+ "internalType": "uint256",
852
+ "name": "assets",
853
+ "type": "uint256"
854
+ },
855
+ {
856
+ "internalType": "address",
857
+ "name": "receiver",
858
+ "type": "address"
859
+ },
860
+ {
861
+ "internalType": "address",
862
+ "name": "owner",
863
+ "type": "address"
864
+ }
865
+ ],
866
+ "name": "withdraw",
867
+ "outputs": [
868
+ {
869
+ "internalType": "uint256",
870
+ "name": "shares",
871
+ "type": "uint256"
872
+ }
873
+ ],
874
+ "stateMutability": "nonpayable",
875
+ "type": "function"
876
+ }
877
+ ]