@strkfarm/sdk 1.1.14 → 1.1.16

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.
@@ -0,0 +1,1852 @@
1
+ [
2
+ {
3
+ "type": "impl",
4
+ "name": "PoolImpl",
5
+ "interface_name": "vesu::pool::IPool"
6
+ },
7
+ {
8
+ "type": "struct",
9
+ "name": "core::integer::u256",
10
+ "members": [
11
+ {
12
+ "name": "low",
13
+ "type": "core::integer::u128"
14
+ },
15
+ {
16
+ "name": "high",
17
+ "type": "core::integer::u128"
18
+ }
19
+ ]
20
+ },
21
+ {
22
+ "type": "enum",
23
+ "name": "core::bool",
24
+ "variants": [
25
+ {
26
+ "name": "False",
27
+ "type": "()"
28
+ },
29
+ {
30
+ "name": "True",
31
+ "type": "()"
32
+ }
33
+ ]
34
+ },
35
+ {
36
+ "type": "struct",
37
+ "name": "vesu::data_model::AssetConfig",
38
+ "members": [
39
+ {
40
+ "name": "total_collateral_shares",
41
+ "type": "core::integer::u256"
42
+ },
43
+ {
44
+ "name": "total_nominal_debt",
45
+ "type": "core::integer::u256"
46
+ },
47
+ {
48
+ "name": "reserve",
49
+ "type": "core::integer::u256"
50
+ },
51
+ {
52
+ "name": "max_utilization",
53
+ "type": "core::integer::u256"
54
+ },
55
+ {
56
+ "name": "floor",
57
+ "type": "core::integer::u256"
58
+ },
59
+ {
60
+ "name": "scale",
61
+ "type": "core::integer::u256"
62
+ },
63
+ {
64
+ "name": "is_legacy",
65
+ "type": "core::bool"
66
+ },
67
+ {
68
+ "name": "last_updated",
69
+ "type": "core::integer::u64"
70
+ },
71
+ {
72
+ "name": "last_rate_accumulator",
73
+ "type": "core::integer::u256"
74
+ },
75
+ {
76
+ "name": "last_full_utilization_rate",
77
+ "type": "core::integer::u256"
78
+ },
79
+ {
80
+ "name": "fee_rate",
81
+ "type": "core::integer::u256"
82
+ },
83
+ {
84
+ "name": "fee_shares",
85
+ "type": "core::integer::u256"
86
+ }
87
+ ]
88
+ },
89
+ {
90
+ "type": "struct",
91
+ "name": "vesu::data_model::AssetPrice",
92
+ "members": [
93
+ {
94
+ "name": "value",
95
+ "type": "core::integer::u256"
96
+ },
97
+ {
98
+ "name": "is_valid",
99
+ "type": "core::bool"
100
+ }
101
+ ]
102
+ },
103
+ {
104
+ "type": "struct",
105
+ "name": "vesu::data_model::Position",
106
+ "members": [
107
+ {
108
+ "name": "collateral_shares",
109
+ "type": "core::integer::u256"
110
+ },
111
+ {
112
+ "name": "nominal_debt",
113
+ "type": "core::integer::u256"
114
+ }
115
+ ]
116
+ },
117
+ {
118
+ "type": "struct",
119
+ "name": "vesu::data_model::Context",
120
+ "members": [
121
+ {
122
+ "name": "collateral_asset",
123
+ "type": "core::starknet::contract_address::ContractAddress"
124
+ },
125
+ {
126
+ "name": "debt_asset",
127
+ "type": "core::starknet::contract_address::ContractAddress"
128
+ },
129
+ {
130
+ "name": "collateral_asset_config",
131
+ "type": "vesu::data_model::AssetConfig"
132
+ },
133
+ {
134
+ "name": "debt_asset_config",
135
+ "type": "vesu::data_model::AssetConfig"
136
+ },
137
+ {
138
+ "name": "collateral_asset_price",
139
+ "type": "vesu::data_model::AssetPrice"
140
+ },
141
+ {
142
+ "name": "debt_asset_price",
143
+ "type": "vesu::data_model::AssetPrice"
144
+ },
145
+ {
146
+ "name": "max_ltv",
147
+ "type": "core::integer::u64"
148
+ },
149
+ {
150
+ "name": "user",
151
+ "type": "core::starknet::contract_address::ContractAddress"
152
+ },
153
+ {
154
+ "name": "position",
155
+ "type": "vesu::data_model::Position"
156
+ }
157
+ ]
158
+ },
159
+ {
160
+ "type": "struct",
161
+ "name": "alexandria_math::i257::i257",
162
+ "members": [
163
+ {
164
+ "name": "abs",
165
+ "type": "core::integer::u256"
166
+ },
167
+ {
168
+ "name": "is_negative",
169
+ "type": "core::bool"
170
+ }
171
+ ]
172
+ },
173
+ {
174
+ "type": "enum",
175
+ "name": "vesu::data_model::AmountDenomination",
176
+ "variants": [
177
+ {
178
+ "name": "Native",
179
+ "type": "()"
180
+ },
181
+ {
182
+ "name": "Assets",
183
+ "type": "()"
184
+ }
185
+ ]
186
+ },
187
+ {
188
+ "type": "struct",
189
+ "name": "vesu::data_model::Amount",
190
+ "members": [
191
+ {
192
+ "name": "denomination",
193
+ "type": "vesu::data_model::AmountDenomination"
194
+ },
195
+ {
196
+ "name": "value",
197
+ "type": "alexandria_math::i257::i257"
198
+ }
199
+ ]
200
+ },
201
+ {
202
+ "type": "struct",
203
+ "name": "vesu::data_model::ModifyPositionParams",
204
+ "members": [
205
+ {
206
+ "name": "collateral_asset",
207
+ "type": "core::starknet::contract_address::ContractAddress"
208
+ },
209
+ {
210
+ "name": "debt_asset",
211
+ "type": "core::starknet::contract_address::ContractAddress"
212
+ },
213
+ {
214
+ "name": "user",
215
+ "type": "core::starknet::contract_address::ContractAddress"
216
+ },
217
+ {
218
+ "name": "collateral",
219
+ "type": "vesu::data_model::Amount"
220
+ },
221
+ {
222
+ "name": "debt",
223
+ "type": "vesu::data_model::Amount"
224
+ }
225
+ ]
226
+ },
227
+ {
228
+ "type": "struct",
229
+ "name": "vesu::data_model::UpdatePositionResponse",
230
+ "members": [
231
+ {
232
+ "name": "collateral_delta",
233
+ "type": "alexandria_math::i257::i257"
234
+ },
235
+ {
236
+ "name": "collateral_shares_delta",
237
+ "type": "alexandria_math::i257::i257"
238
+ },
239
+ {
240
+ "name": "debt_delta",
241
+ "type": "alexandria_math::i257::i257"
242
+ },
243
+ {
244
+ "name": "nominal_debt_delta",
245
+ "type": "alexandria_math::i257::i257"
246
+ },
247
+ {
248
+ "name": "bad_debt",
249
+ "type": "core::integer::u256"
250
+ }
251
+ ]
252
+ },
253
+ {
254
+ "type": "struct",
255
+ "name": "vesu::data_model::LiquidatePositionParams",
256
+ "members": [
257
+ {
258
+ "name": "collateral_asset",
259
+ "type": "core::starknet::contract_address::ContractAddress"
260
+ },
261
+ {
262
+ "name": "debt_asset",
263
+ "type": "core::starknet::contract_address::ContractAddress"
264
+ },
265
+ {
266
+ "name": "user",
267
+ "type": "core::starknet::contract_address::ContractAddress"
268
+ },
269
+ {
270
+ "name": "min_collateral_to_receive",
271
+ "type": "core::integer::u256"
272
+ },
273
+ {
274
+ "name": "debt_to_repay",
275
+ "type": "core::integer::u256"
276
+ }
277
+ ]
278
+ },
279
+ {
280
+ "type": "struct",
281
+ "name": "core::array::Span::<core::felt252>",
282
+ "members": [
283
+ {
284
+ "name": "snapshot",
285
+ "type": "@core::array::Array::<core::felt252>"
286
+ }
287
+ ]
288
+ },
289
+ {
290
+ "type": "struct",
291
+ "name": "vesu::data_model::AssetParams",
292
+ "members": [
293
+ {
294
+ "name": "asset",
295
+ "type": "core::starknet::contract_address::ContractAddress"
296
+ },
297
+ {
298
+ "name": "floor",
299
+ "type": "core::integer::u256"
300
+ },
301
+ {
302
+ "name": "initial_full_utilization_rate",
303
+ "type": "core::integer::u256"
304
+ },
305
+ {
306
+ "name": "max_utilization",
307
+ "type": "core::integer::u256"
308
+ },
309
+ {
310
+ "name": "is_legacy",
311
+ "type": "core::bool"
312
+ },
313
+ {
314
+ "name": "fee_rate",
315
+ "type": "core::integer::u256"
316
+ }
317
+ ]
318
+ },
319
+ {
320
+ "type": "struct",
321
+ "name": "vesu::interest_rate_model::InterestRateConfig",
322
+ "members": [
323
+ {
324
+ "name": "min_target_utilization",
325
+ "type": "core::integer::u256"
326
+ },
327
+ {
328
+ "name": "max_target_utilization",
329
+ "type": "core::integer::u256"
330
+ },
331
+ {
332
+ "name": "target_utilization",
333
+ "type": "core::integer::u256"
334
+ },
335
+ {
336
+ "name": "min_full_utilization_rate",
337
+ "type": "core::integer::u256"
338
+ },
339
+ {
340
+ "name": "max_full_utilization_rate",
341
+ "type": "core::integer::u256"
342
+ },
343
+ {
344
+ "name": "zero_utilization_rate",
345
+ "type": "core::integer::u256"
346
+ },
347
+ {
348
+ "name": "rate_half_life",
349
+ "type": "core::integer::u256"
350
+ },
351
+ {
352
+ "name": "target_rate_percent",
353
+ "type": "core::integer::u256"
354
+ }
355
+ ]
356
+ },
357
+ {
358
+ "type": "struct",
359
+ "name": "vesu::data_model::Pair",
360
+ "members": [
361
+ {
362
+ "name": "total_collateral_shares",
363
+ "type": "core::integer::u256"
364
+ },
365
+ {
366
+ "name": "total_nominal_debt",
367
+ "type": "core::integer::u256"
368
+ }
369
+ ]
370
+ },
371
+ {
372
+ "type": "struct",
373
+ "name": "vesu::data_model::PairConfig",
374
+ "members": [
375
+ {
376
+ "name": "max_ltv",
377
+ "type": "core::integer::u64"
378
+ },
379
+ {
380
+ "name": "liquidation_factor",
381
+ "type": "core::integer::u64"
382
+ },
383
+ {
384
+ "name": "debt_cap",
385
+ "type": "core::integer::u128"
386
+ }
387
+ ]
388
+ },
389
+ {
390
+ "type": "enum",
391
+ "name": "core::option::Option::<(core::starknet::class_hash::ClassHash, core::array::Span::<core::felt252>)>",
392
+ "variants": [
393
+ {
394
+ "name": "Some",
395
+ "type": "(core::starknet::class_hash::ClassHash, core::array::Span::<core::felt252>)"
396
+ },
397
+ {
398
+ "name": "None",
399
+ "type": "()"
400
+ }
401
+ ]
402
+ },
403
+ {
404
+ "type": "interface",
405
+ "name": "vesu::pool::IPool",
406
+ "items": [
407
+ {
408
+ "type": "function",
409
+ "name": "pool_name",
410
+ "inputs": [],
411
+ "outputs": [
412
+ {
413
+ "type": "core::felt252"
414
+ }
415
+ ],
416
+ "state_mutability": "view"
417
+ },
418
+ {
419
+ "type": "function",
420
+ "name": "context",
421
+ "inputs": [
422
+ {
423
+ "name": "collateral_asset",
424
+ "type": "core::starknet::contract_address::ContractAddress"
425
+ },
426
+ {
427
+ "name": "debt_asset",
428
+ "type": "core::starknet::contract_address::ContractAddress"
429
+ },
430
+ {
431
+ "name": "user",
432
+ "type": "core::starknet::contract_address::ContractAddress"
433
+ }
434
+ ],
435
+ "outputs": [
436
+ {
437
+ "type": "vesu::data_model::Context"
438
+ }
439
+ ],
440
+ "state_mutability": "view"
441
+ },
442
+ {
443
+ "type": "function",
444
+ "name": "position",
445
+ "inputs": [
446
+ {
447
+ "name": "collateral_asset",
448
+ "type": "core::starknet::contract_address::ContractAddress"
449
+ },
450
+ {
451
+ "name": "debt_asset",
452
+ "type": "core::starknet::contract_address::ContractAddress"
453
+ },
454
+ {
455
+ "name": "user",
456
+ "type": "core::starknet::contract_address::ContractAddress"
457
+ }
458
+ ],
459
+ "outputs": [
460
+ {
461
+ "type": "(vesu::data_model::Position, core::integer::u256, core::integer::u256)"
462
+ }
463
+ ],
464
+ "state_mutability": "view"
465
+ },
466
+ {
467
+ "type": "function",
468
+ "name": "check_collateralization",
469
+ "inputs": [
470
+ {
471
+ "name": "collateral_asset",
472
+ "type": "core::starknet::contract_address::ContractAddress"
473
+ },
474
+ {
475
+ "name": "debt_asset",
476
+ "type": "core::starknet::contract_address::ContractAddress"
477
+ },
478
+ {
479
+ "name": "user",
480
+ "type": "core::starknet::contract_address::ContractAddress"
481
+ }
482
+ ],
483
+ "outputs": [
484
+ {
485
+ "type": "(core::bool, core::integer::u256, core::integer::u256)"
486
+ }
487
+ ],
488
+ "state_mutability": "view"
489
+ },
490
+ {
491
+ "type": "function",
492
+ "name": "check_invariants",
493
+ "inputs": [
494
+ {
495
+ "name": "collateral_asset",
496
+ "type": "core::starknet::contract_address::ContractAddress"
497
+ },
498
+ {
499
+ "name": "debt_asset",
500
+ "type": "core::starknet::contract_address::ContractAddress"
501
+ },
502
+ {
503
+ "name": "user",
504
+ "type": "core::starknet::contract_address::ContractAddress"
505
+ },
506
+ {
507
+ "name": "collateral_delta",
508
+ "type": "alexandria_math::i257::i257"
509
+ },
510
+ {
511
+ "name": "collateral_shares_delta",
512
+ "type": "alexandria_math::i257::i257"
513
+ },
514
+ {
515
+ "name": "debt_delta",
516
+ "type": "alexandria_math::i257::i257"
517
+ },
518
+ {
519
+ "name": "nominal_debt_delta",
520
+ "type": "alexandria_math::i257::i257"
521
+ },
522
+ {
523
+ "name": "is_liquidation",
524
+ "type": "core::bool"
525
+ }
526
+ ],
527
+ "outputs": [],
528
+ "state_mutability": "view"
529
+ },
530
+ {
531
+ "type": "function",
532
+ "name": "modify_position",
533
+ "inputs": [
534
+ {
535
+ "name": "params",
536
+ "type": "vesu::data_model::ModifyPositionParams"
537
+ }
538
+ ],
539
+ "outputs": [
540
+ {
541
+ "type": "vesu::data_model::UpdatePositionResponse"
542
+ }
543
+ ],
544
+ "state_mutability": "external"
545
+ },
546
+ {
547
+ "type": "function",
548
+ "name": "liquidate_position",
549
+ "inputs": [
550
+ {
551
+ "name": "params",
552
+ "type": "vesu::data_model::LiquidatePositionParams"
553
+ }
554
+ ],
555
+ "outputs": [
556
+ {
557
+ "type": "vesu::data_model::UpdatePositionResponse"
558
+ }
559
+ ],
560
+ "state_mutability": "external"
561
+ },
562
+ {
563
+ "type": "function",
564
+ "name": "flash_loan",
565
+ "inputs": [
566
+ {
567
+ "name": "receiver",
568
+ "type": "core::starknet::contract_address::ContractAddress"
569
+ },
570
+ {
571
+ "name": "asset",
572
+ "type": "core::starknet::contract_address::ContractAddress"
573
+ },
574
+ {
575
+ "name": "amount",
576
+ "type": "core::integer::u256"
577
+ },
578
+ {
579
+ "name": "is_legacy",
580
+ "type": "core::bool"
581
+ },
582
+ {
583
+ "name": "data",
584
+ "type": "core::array::Span::<core::felt252>"
585
+ }
586
+ ],
587
+ "outputs": [],
588
+ "state_mutability": "external"
589
+ },
590
+ {
591
+ "type": "function",
592
+ "name": "modify_delegation",
593
+ "inputs": [
594
+ {
595
+ "name": "delegatee",
596
+ "type": "core::starknet::contract_address::ContractAddress"
597
+ },
598
+ {
599
+ "name": "delegation",
600
+ "type": "core::bool"
601
+ }
602
+ ],
603
+ "outputs": [],
604
+ "state_mutability": "external"
605
+ },
606
+ {
607
+ "type": "function",
608
+ "name": "delegation",
609
+ "inputs": [
610
+ {
611
+ "name": "delegator",
612
+ "type": "core::starknet::contract_address::ContractAddress"
613
+ },
614
+ {
615
+ "name": "delegatee",
616
+ "type": "core::starknet::contract_address::ContractAddress"
617
+ }
618
+ ],
619
+ "outputs": [
620
+ {
621
+ "type": "core::bool"
622
+ }
623
+ ],
624
+ "state_mutability": "view"
625
+ },
626
+ {
627
+ "type": "function",
628
+ "name": "donate_to_reserve",
629
+ "inputs": [
630
+ {
631
+ "name": "asset",
632
+ "type": "core::starknet::contract_address::ContractAddress"
633
+ },
634
+ {
635
+ "name": "amount",
636
+ "type": "core::integer::u256"
637
+ }
638
+ ],
639
+ "outputs": [],
640
+ "state_mutability": "external"
641
+ },
642
+ {
643
+ "type": "function",
644
+ "name": "add_asset",
645
+ "inputs": [
646
+ {
647
+ "name": "params",
648
+ "type": "vesu::data_model::AssetParams"
649
+ },
650
+ {
651
+ "name": "interest_rate_config",
652
+ "type": "vesu::interest_rate_model::InterestRateConfig"
653
+ }
654
+ ],
655
+ "outputs": [],
656
+ "state_mutability": "external"
657
+ },
658
+ {
659
+ "type": "function",
660
+ "name": "set_asset_parameter",
661
+ "inputs": [
662
+ {
663
+ "name": "asset",
664
+ "type": "core::starknet::contract_address::ContractAddress"
665
+ },
666
+ {
667
+ "name": "parameter",
668
+ "type": "core::felt252"
669
+ },
670
+ {
671
+ "name": "value",
672
+ "type": "core::integer::u256"
673
+ }
674
+ ],
675
+ "outputs": [],
676
+ "state_mutability": "external"
677
+ },
678
+ {
679
+ "type": "function",
680
+ "name": "asset_config",
681
+ "inputs": [
682
+ {
683
+ "name": "asset",
684
+ "type": "core::starknet::contract_address::ContractAddress"
685
+ }
686
+ ],
687
+ "outputs": [
688
+ {
689
+ "type": "vesu::data_model::AssetConfig"
690
+ }
691
+ ],
692
+ "state_mutability": "view"
693
+ },
694
+ {
695
+ "type": "function",
696
+ "name": "set_oracle",
697
+ "inputs": [
698
+ {
699
+ "name": "oracle",
700
+ "type": "core::starknet::contract_address::ContractAddress"
701
+ }
702
+ ],
703
+ "outputs": [],
704
+ "state_mutability": "external"
705
+ },
706
+ {
707
+ "type": "function",
708
+ "name": "oracle",
709
+ "inputs": [],
710
+ "outputs": [
711
+ {
712
+ "type": "core::starknet::contract_address::ContractAddress"
713
+ }
714
+ ],
715
+ "state_mutability": "view"
716
+ },
717
+ {
718
+ "type": "function",
719
+ "name": "price",
720
+ "inputs": [
721
+ {
722
+ "name": "asset",
723
+ "type": "core::starknet::contract_address::ContractAddress"
724
+ }
725
+ ],
726
+ "outputs": [
727
+ {
728
+ "type": "vesu::data_model::AssetPrice"
729
+ }
730
+ ],
731
+ "state_mutability": "view"
732
+ },
733
+ {
734
+ "type": "function",
735
+ "name": "set_fee_recipient",
736
+ "inputs": [
737
+ {
738
+ "name": "fee_recipient",
739
+ "type": "core::starknet::contract_address::ContractAddress"
740
+ }
741
+ ],
742
+ "outputs": [],
743
+ "state_mutability": "external"
744
+ },
745
+ {
746
+ "type": "function",
747
+ "name": "fee_recipient",
748
+ "inputs": [],
749
+ "outputs": [
750
+ {
751
+ "type": "core::starknet::contract_address::ContractAddress"
752
+ }
753
+ ],
754
+ "state_mutability": "view"
755
+ },
756
+ {
757
+ "type": "function",
758
+ "name": "claim_fees",
759
+ "inputs": [
760
+ {
761
+ "name": "asset",
762
+ "type": "core::starknet::contract_address::ContractAddress"
763
+ },
764
+ {
765
+ "name": "fee_shares",
766
+ "type": "core::integer::u256"
767
+ }
768
+ ],
769
+ "outputs": [],
770
+ "state_mutability": "external"
771
+ },
772
+ {
773
+ "type": "function",
774
+ "name": "get_fees",
775
+ "inputs": [
776
+ {
777
+ "name": "asset",
778
+ "type": "core::starknet::contract_address::ContractAddress"
779
+ }
780
+ ],
781
+ "outputs": [
782
+ {
783
+ "type": "(core::integer::u256, core::integer::u256)"
784
+ }
785
+ ],
786
+ "state_mutability": "view"
787
+ },
788
+ {
789
+ "type": "function",
790
+ "name": "rate_accumulator",
791
+ "inputs": [
792
+ {
793
+ "name": "asset",
794
+ "type": "core::starknet::contract_address::ContractAddress"
795
+ }
796
+ ],
797
+ "outputs": [
798
+ {
799
+ "type": "core::integer::u256"
800
+ }
801
+ ],
802
+ "state_mutability": "view"
803
+ },
804
+ {
805
+ "type": "function",
806
+ "name": "utilization",
807
+ "inputs": [
808
+ {
809
+ "name": "asset",
810
+ "type": "core::starknet::contract_address::ContractAddress"
811
+ }
812
+ ],
813
+ "outputs": [
814
+ {
815
+ "type": "core::integer::u256"
816
+ }
817
+ ],
818
+ "state_mutability": "view"
819
+ },
820
+ {
821
+ "type": "function",
822
+ "name": "interest_rate",
823
+ "inputs": [
824
+ {
825
+ "name": "asset",
826
+ "type": "core::starknet::contract_address::ContractAddress"
827
+ },
828
+ {
829
+ "name": "utilization",
830
+ "type": "core::integer::u256"
831
+ },
832
+ {
833
+ "name": "last_updated",
834
+ "type": "core::integer::u64"
835
+ },
836
+ {
837
+ "name": "last_full_utilization_rate",
838
+ "type": "core::integer::u256"
839
+ }
840
+ ],
841
+ "outputs": [
842
+ {
843
+ "type": "core::integer::u256"
844
+ }
845
+ ],
846
+ "state_mutability": "view"
847
+ },
848
+ {
849
+ "type": "function",
850
+ "name": "set_interest_rate_parameter",
851
+ "inputs": [
852
+ {
853
+ "name": "asset",
854
+ "type": "core::starknet::contract_address::ContractAddress"
855
+ },
856
+ {
857
+ "name": "parameter",
858
+ "type": "core::felt252"
859
+ },
860
+ {
861
+ "name": "value",
862
+ "type": "core::integer::u256"
863
+ }
864
+ ],
865
+ "outputs": [],
866
+ "state_mutability": "external"
867
+ },
868
+ {
869
+ "type": "function",
870
+ "name": "interest_rate_config",
871
+ "inputs": [
872
+ {
873
+ "name": "asset",
874
+ "type": "core::starknet::contract_address::ContractAddress"
875
+ }
876
+ ],
877
+ "outputs": [
878
+ {
879
+ "type": "vesu::interest_rate_model::InterestRateConfig"
880
+ }
881
+ ],
882
+ "state_mutability": "view"
883
+ },
884
+ {
885
+ "type": "function",
886
+ "name": "pairs",
887
+ "inputs": [
888
+ {
889
+ "name": "collateral_asset",
890
+ "type": "core::starknet::contract_address::ContractAddress"
891
+ },
892
+ {
893
+ "name": "debt_asset",
894
+ "type": "core::starknet::contract_address::ContractAddress"
895
+ }
896
+ ],
897
+ "outputs": [
898
+ {
899
+ "type": "vesu::data_model::Pair"
900
+ }
901
+ ],
902
+ "state_mutability": "view"
903
+ },
904
+ {
905
+ "type": "function",
906
+ "name": "set_pair_config",
907
+ "inputs": [
908
+ {
909
+ "name": "collateral_asset",
910
+ "type": "core::starknet::contract_address::ContractAddress"
911
+ },
912
+ {
913
+ "name": "debt_asset",
914
+ "type": "core::starknet::contract_address::ContractAddress"
915
+ },
916
+ {
917
+ "name": "pair_config",
918
+ "type": "vesu::data_model::PairConfig"
919
+ }
920
+ ],
921
+ "outputs": [],
922
+ "state_mutability": "external"
923
+ },
924
+ {
925
+ "type": "function",
926
+ "name": "set_pair_parameter",
927
+ "inputs": [
928
+ {
929
+ "name": "collateral_asset",
930
+ "type": "core::starknet::contract_address::ContractAddress"
931
+ },
932
+ {
933
+ "name": "debt_asset",
934
+ "type": "core::starknet::contract_address::ContractAddress"
935
+ },
936
+ {
937
+ "name": "parameter",
938
+ "type": "core::felt252"
939
+ },
940
+ {
941
+ "name": "value",
942
+ "type": "core::integer::u128"
943
+ }
944
+ ],
945
+ "outputs": [],
946
+ "state_mutability": "external"
947
+ },
948
+ {
949
+ "type": "function",
950
+ "name": "pair_config",
951
+ "inputs": [
952
+ {
953
+ "name": "collateral_asset",
954
+ "type": "core::starknet::contract_address::ContractAddress"
955
+ },
956
+ {
957
+ "name": "debt_asset",
958
+ "type": "core::starknet::contract_address::ContractAddress"
959
+ }
960
+ ],
961
+ "outputs": [
962
+ {
963
+ "type": "vesu::data_model::PairConfig"
964
+ }
965
+ ],
966
+ "state_mutability": "view"
967
+ },
968
+ {
969
+ "type": "function",
970
+ "name": "calculate_debt",
971
+ "inputs": [
972
+ {
973
+ "name": "nominal_debt",
974
+ "type": "alexandria_math::i257::i257"
975
+ },
976
+ {
977
+ "name": "rate_accumulator",
978
+ "type": "core::integer::u256"
979
+ },
980
+ {
981
+ "name": "asset_scale",
982
+ "type": "core::integer::u256"
983
+ }
984
+ ],
985
+ "outputs": [
986
+ {
987
+ "type": "core::integer::u256"
988
+ }
989
+ ],
990
+ "state_mutability": "view"
991
+ },
992
+ {
993
+ "type": "function",
994
+ "name": "calculate_nominal_debt",
995
+ "inputs": [
996
+ {
997
+ "name": "debt",
998
+ "type": "alexandria_math::i257::i257"
999
+ },
1000
+ {
1001
+ "name": "rate_accumulator",
1002
+ "type": "core::integer::u256"
1003
+ },
1004
+ {
1005
+ "name": "asset_scale",
1006
+ "type": "core::integer::u256"
1007
+ }
1008
+ ],
1009
+ "outputs": [
1010
+ {
1011
+ "type": "core::integer::u256"
1012
+ }
1013
+ ],
1014
+ "state_mutability": "view"
1015
+ },
1016
+ {
1017
+ "type": "function",
1018
+ "name": "calculate_collateral_shares",
1019
+ "inputs": [
1020
+ {
1021
+ "name": "asset",
1022
+ "type": "core::starknet::contract_address::ContractAddress"
1023
+ },
1024
+ {
1025
+ "name": "collateral",
1026
+ "type": "alexandria_math::i257::i257"
1027
+ }
1028
+ ],
1029
+ "outputs": [
1030
+ {
1031
+ "type": "core::integer::u256"
1032
+ }
1033
+ ],
1034
+ "state_mutability": "view"
1035
+ },
1036
+ {
1037
+ "type": "function",
1038
+ "name": "calculate_collateral",
1039
+ "inputs": [
1040
+ {
1041
+ "name": "asset",
1042
+ "type": "core::starknet::contract_address::ContractAddress"
1043
+ },
1044
+ {
1045
+ "name": "collateral_shares",
1046
+ "type": "alexandria_math::i257::i257"
1047
+ }
1048
+ ],
1049
+ "outputs": [
1050
+ {
1051
+ "type": "core::integer::u256"
1052
+ }
1053
+ ],
1054
+ "state_mutability": "view"
1055
+ },
1056
+ {
1057
+ "type": "function",
1058
+ "name": "deconstruct_collateral_amount",
1059
+ "inputs": [
1060
+ {
1061
+ "name": "collateral_asset",
1062
+ "type": "core::starknet::contract_address::ContractAddress"
1063
+ },
1064
+ {
1065
+ "name": "debt_asset",
1066
+ "type": "core::starknet::contract_address::ContractAddress"
1067
+ },
1068
+ {
1069
+ "name": "user",
1070
+ "type": "core::starknet::contract_address::ContractAddress"
1071
+ },
1072
+ {
1073
+ "name": "collateral",
1074
+ "type": "vesu::data_model::Amount"
1075
+ }
1076
+ ],
1077
+ "outputs": [
1078
+ {
1079
+ "type": "(alexandria_math::i257::i257, alexandria_math::i257::i257)"
1080
+ }
1081
+ ],
1082
+ "state_mutability": "view"
1083
+ },
1084
+ {
1085
+ "type": "function",
1086
+ "name": "deconstruct_debt_amount",
1087
+ "inputs": [
1088
+ {
1089
+ "name": "collateral_asset",
1090
+ "type": "core::starknet::contract_address::ContractAddress"
1091
+ },
1092
+ {
1093
+ "name": "debt_asset",
1094
+ "type": "core::starknet::contract_address::ContractAddress"
1095
+ },
1096
+ {
1097
+ "name": "user",
1098
+ "type": "core::starknet::contract_address::ContractAddress"
1099
+ },
1100
+ {
1101
+ "name": "debt",
1102
+ "type": "vesu::data_model::Amount"
1103
+ }
1104
+ ],
1105
+ "outputs": [
1106
+ {
1107
+ "type": "(alexandria_math::i257::i257, alexandria_math::i257::i257)"
1108
+ }
1109
+ ],
1110
+ "state_mutability": "view"
1111
+ },
1112
+ {
1113
+ "type": "function",
1114
+ "name": "curator",
1115
+ "inputs": [],
1116
+ "outputs": [
1117
+ {
1118
+ "type": "core::starknet::contract_address::ContractAddress"
1119
+ }
1120
+ ],
1121
+ "state_mutability": "view"
1122
+ },
1123
+ {
1124
+ "type": "function",
1125
+ "name": "pending_curator",
1126
+ "inputs": [],
1127
+ "outputs": [
1128
+ {
1129
+ "type": "core::starknet::contract_address::ContractAddress"
1130
+ }
1131
+ ],
1132
+ "state_mutability": "view"
1133
+ },
1134
+ {
1135
+ "type": "function",
1136
+ "name": "nominate_curator",
1137
+ "inputs": [
1138
+ {
1139
+ "name": "pending_curator",
1140
+ "type": "core::starknet::contract_address::ContractAddress"
1141
+ }
1142
+ ],
1143
+ "outputs": [],
1144
+ "state_mutability": "external"
1145
+ },
1146
+ {
1147
+ "type": "function",
1148
+ "name": "accept_curator_ownership",
1149
+ "inputs": [],
1150
+ "outputs": [],
1151
+ "state_mutability": "external"
1152
+ },
1153
+ {
1154
+ "type": "function",
1155
+ "name": "set_pausing_agent",
1156
+ "inputs": [
1157
+ {
1158
+ "name": "pausing_agent",
1159
+ "type": "core::starknet::contract_address::ContractAddress"
1160
+ }
1161
+ ],
1162
+ "outputs": [],
1163
+ "state_mutability": "external"
1164
+ },
1165
+ {
1166
+ "type": "function",
1167
+ "name": "pausing_agent",
1168
+ "inputs": [],
1169
+ "outputs": [
1170
+ {
1171
+ "type": "core::starknet::contract_address::ContractAddress"
1172
+ }
1173
+ ],
1174
+ "state_mutability": "view"
1175
+ },
1176
+ {
1177
+ "type": "function",
1178
+ "name": "pause",
1179
+ "inputs": [],
1180
+ "outputs": [],
1181
+ "state_mutability": "external"
1182
+ },
1183
+ {
1184
+ "type": "function",
1185
+ "name": "unpause",
1186
+ "inputs": [],
1187
+ "outputs": [],
1188
+ "state_mutability": "external"
1189
+ },
1190
+ {
1191
+ "type": "function",
1192
+ "name": "is_paused",
1193
+ "inputs": [],
1194
+ "outputs": [
1195
+ {
1196
+ "type": "core::bool"
1197
+ }
1198
+ ],
1199
+ "state_mutability": "view"
1200
+ },
1201
+ {
1202
+ "type": "function",
1203
+ "name": "upgrade_name",
1204
+ "inputs": [],
1205
+ "outputs": [
1206
+ {
1207
+ "type": "core::felt252"
1208
+ }
1209
+ ],
1210
+ "state_mutability": "view"
1211
+ },
1212
+ {
1213
+ "type": "function",
1214
+ "name": "upgrade",
1215
+ "inputs": [
1216
+ {
1217
+ "name": "new_implementation",
1218
+ "type": "core::starknet::class_hash::ClassHash"
1219
+ },
1220
+ {
1221
+ "name": "eic_implementation_data",
1222
+ "type": "core::option::Option::<(core::starknet::class_hash::ClassHash, core::array::Span::<core::felt252>)>"
1223
+ }
1224
+ ],
1225
+ "outputs": [],
1226
+ "state_mutability": "external"
1227
+ }
1228
+ ]
1229
+ },
1230
+ {
1231
+ "type": "impl",
1232
+ "name": "OwnableTwoStepImpl",
1233
+ "interface_name": "openzeppelin_access::ownable::interface::IOwnableTwoStep"
1234
+ },
1235
+ {
1236
+ "type": "interface",
1237
+ "name": "openzeppelin_access::ownable::interface::IOwnableTwoStep",
1238
+ "items": [
1239
+ {
1240
+ "type": "function",
1241
+ "name": "owner",
1242
+ "inputs": [],
1243
+ "outputs": [
1244
+ {
1245
+ "type": "core::starknet::contract_address::ContractAddress"
1246
+ }
1247
+ ],
1248
+ "state_mutability": "view"
1249
+ },
1250
+ {
1251
+ "type": "function",
1252
+ "name": "pending_owner",
1253
+ "inputs": [],
1254
+ "outputs": [
1255
+ {
1256
+ "type": "core::starknet::contract_address::ContractAddress"
1257
+ }
1258
+ ],
1259
+ "state_mutability": "view"
1260
+ },
1261
+ {
1262
+ "type": "function",
1263
+ "name": "accept_ownership",
1264
+ "inputs": [],
1265
+ "outputs": [],
1266
+ "state_mutability": "external"
1267
+ },
1268
+ {
1269
+ "type": "function",
1270
+ "name": "transfer_ownership",
1271
+ "inputs": [
1272
+ {
1273
+ "name": "new_owner",
1274
+ "type": "core::starknet::contract_address::ContractAddress"
1275
+ }
1276
+ ],
1277
+ "outputs": [],
1278
+ "state_mutability": "external"
1279
+ },
1280
+ {
1281
+ "type": "function",
1282
+ "name": "renounce_ownership",
1283
+ "inputs": [],
1284
+ "outputs": [],
1285
+ "state_mutability": "external"
1286
+ }
1287
+ ]
1288
+ },
1289
+ {
1290
+ "type": "constructor",
1291
+ "name": "constructor",
1292
+ "inputs": [
1293
+ {
1294
+ "name": "name",
1295
+ "type": "core::felt252"
1296
+ },
1297
+ {
1298
+ "name": "owner",
1299
+ "type": "core::starknet::contract_address::ContractAddress"
1300
+ },
1301
+ {
1302
+ "name": "curator",
1303
+ "type": "core::starknet::contract_address::ContractAddress"
1304
+ },
1305
+ {
1306
+ "name": "oracle",
1307
+ "type": "core::starknet::contract_address::ContractAddress"
1308
+ }
1309
+ ]
1310
+ },
1311
+ {
1312
+ "type": "event",
1313
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferred",
1314
+ "kind": "struct",
1315
+ "members": [
1316
+ {
1317
+ "name": "previous_owner",
1318
+ "type": "core::starknet::contract_address::ContractAddress",
1319
+ "kind": "key"
1320
+ },
1321
+ {
1322
+ "name": "new_owner",
1323
+ "type": "core::starknet::contract_address::ContractAddress",
1324
+ "kind": "key"
1325
+ }
1326
+ ]
1327
+ },
1328
+ {
1329
+ "type": "event",
1330
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferStarted",
1331
+ "kind": "struct",
1332
+ "members": [
1333
+ {
1334
+ "name": "previous_owner",
1335
+ "type": "core::starknet::contract_address::ContractAddress",
1336
+ "kind": "key"
1337
+ },
1338
+ {
1339
+ "name": "new_owner",
1340
+ "type": "core::starknet::contract_address::ContractAddress",
1341
+ "kind": "key"
1342
+ }
1343
+ ]
1344
+ },
1345
+ {
1346
+ "type": "event",
1347
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::Event",
1348
+ "kind": "enum",
1349
+ "variants": [
1350
+ {
1351
+ "name": "OwnershipTransferred",
1352
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferred",
1353
+ "kind": "nested"
1354
+ },
1355
+ {
1356
+ "name": "OwnershipTransferStarted",
1357
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferStarted",
1358
+ "kind": "nested"
1359
+ }
1360
+ ]
1361
+ },
1362
+ {
1363
+ "type": "event",
1364
+ "name": "vesu::interest_rate_model::interest_rate_model_component::SetInterestRateConfig",
1365
+ "kind": "struct",
1366
+ "members": [
1367
+ {
1368
+ "name": "asset",
1369
+ "type": "core::starknet::contract_address::ContractAddress",
1370
+ "kind": "data"
1371
+ },
1372
+ {
1373
+ "name": "interest_rate_config",
1374
+ "type": "vesu::interest_rate_model::InterestRateConfig",
1375
+ "kind": "data"
1376
+ }
1377
+ ]
1378
+ },
1379
+ {
1380
+ "type": "event",
1381
+ "name": "vesu::interest_rate_model::interest_rate_model_component::Event",
1382
+ "kind": "enum",
1383
+ "variants": [
1384
+ {
1385
+ "name": "SetInterestRateConfig",
1386
+ "type": "vesu::interest_rate_model::interest_rate_model_component::SetInterestRateConfig",
1387
+ "kind": "nested"
1388
+ }
1389
+ ]
1390
+ },
1391
+ {
1392
+ "type": "event",
1393
+ "name": "vesu::pool::Pool::UpdateContext",
1394
+ "kind": "struct",
1395
+ "members": [
1396
+ {
1397
+ "name": "collateral_asset",
1398
+ "type": "core::starknet::contract_address::ContractAddress",
1399
+ "kind": "key"
1400
+ },
1401
+ {
1402
+ "name": "debt_asset",
1403
+ "type": "core::starknet::contract_address::ContractAddress",
1404
+ "kind": "key"
1405
+ },
1406
+ {
1407
+ "name": "collateral_asset_config",
1408
+ "type": "vesu::data_model::AssetConfig",
1409
+ "kind": "data"
1410
+ },
1411
+ {
1412
+ "name": "debt_asset_config",
1413
+ "type": "vesu::data_model::AssetConfig",
1414
+ "kind": "data"
1415
+ },
1416
+ {
1417
+ "name": "collateral_asset_price",
1418
+ "type": "vesu::data_model::AssetPrice",
1419
+ "kind": "data"
1420
+ },
1421
+ {
1422
+ "name": "debt_asset_price",
1423
+ "type": "vesu::data_model::AssetPrice",
1424
+ "kind": "data"
1425
+ }
1426
+ ]
1427
+ },
1428
+ {
1429
+ "type": "event",
1430
+ "name": "vesu::pool::Pool::ModifyPosition",
1431
+ "kind": "struct",
1432
+ "members": [
1433
+ {
1434
+ "name": "collateral_asset",
1435
+ "type": "core::starknet::contract_address::ContractAddress",
1436
+ "kind": "key"
1437
+ },
1438
+ {
1439
+ "name": "debt_asset",
1440
+ "type": "core::starknet::contract_address::ContractAddress",
1441
+ "kind": "key"
1442
+ },
1443
+ {
1444
+ "name": "user",
1445
+ "type": "core::starknet::contract_address::ContractAddress",
1446
+ "kind": "key"
1447
+ },
1448
+ {
1449
+ "name": "collateral_delta",
1450
+ "type": "alexandria_math::i257::i257",
1451
+ "kind": "data"
1452
+ },
1453
+ {
1454
+ "name": "collateral_shares_delta",
1455
+ "type": "alexandria_math::i257::i257",
1456
+ "kind": "data"
1457
+ },
1458
+ {
1459
+ "name": "debt_delta",
1460
+ "type": "alexandria_math::i257::i257",
1461
+ "kind": "data"
1462
+ },
1463
+ {
1464
+ "name": "nominal_debt_delta",
1465
+ "type": "alexandria_math::i257::i257",
1466
+ "kind": "data"
1467
+ }
1468
+ ]
1469
+ },
1470
+ {
1471
+ "type": "event",
1472
+ "name": "vesu::pool::Pool::LiquidatePosition",
1473
+ "kind": "struct",
1474
+ "members": [
1475
+ {
1476
+ "name": "collateral_asset",
1477
+ "type": "core::starknet::contract_address::ContractAddress",
1478
+ "kind": "key"
1479
+ },
1480
+ {
1481
+ "name": "debt_asset",
1482
+ "type": "core::starknet::contract_address::ContractAddress",
1483
+ "kind": "key"
1484
+ },
1485
+ {
1486
+ "name": "user",
1487
+ "type": "core::starknet::contract_address::ContractAddress",
1488
+ "kind": "key"
1489
+ },
1490
+ {
1491
+ "name": "liquidator",
1492
+ "type": "core::starknet::contract_address::ContractAddress",
1493
+ "kind": "key"
1494
+ },
1495
+ {
1496
+ "name": "collateral_delta",
1497
+ "type": "alexandria_math::i257::i257",
1498
+ "kind": "data"
1499
+ },
1500
+ {
1501
+ "name": "collateral_shares_delta",
1502
+ "type": "alexandria_math::i257::i257",
1503
+ "kind": "data"
1504
+ },
1505
+ {
1506
+ "name": "debt_delta",
1507
+ "type": "alexandria_math::i257::i257",
1508
+ "kind": "data"
1509
+ },
1510
+ {
1511
+ "name": "nominal_debt_delta",
1512
+ "type": "alexandria_math::i257::i257",
1513
+ "kind": "data"
1514
+ },
1515
+ {
1516
+ "name": "bad_debt",
1517
+ "type": "core::integer::u256",
1518
+ "kind": "data"
1519
+ }
1520
+ ]
1521
+ },
1522
+ {
1523
+ "type": "event",
1524
+ "name": "vesu::pool::Pool::Flashloan",
1525
+ "kind": "struct",
1526
+ "members": [
1527
+ {
1528
+ "name": "sender",
1529
+ "type": "core::starknet::contract_address::ContractAddress",
1530
+ "kind": "key"
1531
+ },
1532
+ {
1533
+ "name": "receiver",
1534
+ "type": "core::starknet::contract_address::ContractAddress",
1535
+ "kind": "key"
1536
+ },
1537
+ {
1538
+ "name": "asset",
1539
+ "type": "core::starknet::contract_address::ContractAddress",
1540
+ "kind": "key"
1541
+ },
1542
+ {
1543
+ "name": "amount",
1544
+ "type": "core::integer::u256",
1545
+ "kind": "data"
1546
+ }
1547
+ ]
1548
+ },
1549
+ {
1550
+ "type": "event",
1551
+ "name": "vesu::pool::Pool::ModifyDelegation",
1552
+ "kind": "struct",
1553
+ "members": [
1554
+ {
1555
+ "name": "delegator",
1556
+ "type": "core::starknet::contract_address::ContractAddress",
1557
+ "kind": "key"
1558
+ },
1559
+ {
1560
+ "name": "delegatee",
1561
+ "type": "core::starknet::contract_address::ContractAddress",
1562
+ "kind": "key"
1563
+ },
1564
+ {
1565
+ "name": "delegation",
1566
+ "type": "core::bool",
1567
+ "kind": "data"
1568
+ }
1569
+ ]
1570
+ },
1571
+ {
1572
+ "type": "event",
1573
+ "name": "vesu::pool::Pool::Donate",
1574
+ "kind": "struct",
1575
+ "members": [
1576
+ {
1577
+ "name": "asset",
1578
+ "type": "core::starknet::contract_address::ContractAddress",
1579
+ "kind": "key"
1580
+ },
1581
+ {
1582
+ "name": "amount",
1583
+ "type": "core::integer::u256",
1584
+ "kind": "data"
1585
+ }
1586
+ ]
1587
+ },
1588
+ {
1589
+ "type": "event",
1590
+ "name": "vesu::pool::Pool::SetAssetConfig",
1591
+ "kind": "struct",
1592
+ "members": [
1593
+ {
1594
+ "name": "asset",
1595
+ "type": "core::starknet::contract_address::ContractAddress",
1596
+ "kind": "key"
1597
+ },
1598
+ {
1599
+ "name": "asset_config",
1600
+ "type": "vesu::data_model::AssetConfig",
1601
+ "kind": "data"
1602
+ }
1603
+ ]
1604
+ },
1605
+ {
1606
+ "type": "event",
1607
+ "name": "vesu::pool::Pool::SetOracle",
1608
+ "kind": "struct",
1609
+ "members": [
1610
+ {
1611
+ "name": "oracle",
1612
+ "type": "core::starknet::contract_address::ContractAddress",
1613
+ "kind": "data"
1614
+ }
1615
+ ]
1616
+ },
1617
+ {
1618
+ "type": "event",
1619
+ "name": "vesu::pool::Pool::SetPairConfig",
1620
+ "kind": "struct",
1621
+ "members": [
1622
+ {
1623
+ "name": "collateral_asset",
1624
+ "type": "core::starknet::contract_address::ContractAddress",
1625
+ "kind": "key"
1626
+ },
1627
+ {
1628
+ "name": "debt_asset",
1629
+ "type": "core::starknet::contract_address::ContractAddress",
1630
+ "kind": "key"
1631
+ },
1632
+ {
1633
+ "name": "pair_config",
1634
+ "type": "vesu::data_model::PairConfig",
1635
+ "kind": "data"
1636
+ }
1637
+ ]
1638
+ },
1639
+ {
1640
+ "type": "event",
1641
+ "name": "vesu::pool::Pool::ClaimFees",
1642
+ "kind": "struct",
1643
+ "members": [
1644
+ {
1645
+ "name": "asset",
1646
+ "type": "core::starknet::contract_address::ContractAddress",
1647
+ "kind": "key"
1648
+ },
1649
+ {
1650
+ "name": "recipient",
1651
+ "type": "core::starknet::contract_address::ContractAddress",
1652
+ "kind": "data"
1653
+ },
1654
+ {
1655
+ "name": "fee_shares",
1656
+ "type": "core::integer::u256",
1657
+ "kind": "data"
1658
+ },
1659
+ {
1660
+ "name": "fee_amount",
1661
+ "type": "core::integer::u256",
1662
+ "kind": "data"
1663
+ }
1664
+ ]
1665
+ },
1666
+ {
1667
+ "type": "event",
1668
+ "name": "vesu::pool::Pool::SetFeeRecipient",
1669
+ "kind": "struct",
1670
+ "members": [
1671
+ {
1672
+ "name": "fee_recipient",
1673
+ "type": "core::starknet::contract_address::ContractAddress",
1674
+ "kind": "key"
1675
+ }
1676
+ ]
1677
+ },
1678
+ {
1679
+ "type": "event",
1680
+ "name": "vesu::pool::Pool::SetPausingAgent",
1681
+ "kind": "struct",
1682
+ "members": [
1683
+ {
1684
+ "name": "agent",
1685
+ "type": "core::starknet::contract_address::ContractAddress",
1686
+ "kind": "key"
1687
+ }
1688
+ ]
1689
+ },
1690
+ {
1691
+ "type": "event",
1692
+ "name": "vesu::pool::Pool::SetCurator",
1693
+ "kind": "struct",
1694
+ "members": [
1695
+ {
1696
+ "name": "curator",
1697
+ "type": "core::starknet::contract_address::ContractAddress",
1698
+ "kind": "key"
1699
+ }
1700
+ ]
1701
+ },
1702
+ {
1703
+ "type": "event",
1704
+ "name": "vesu::pool::Pool::NominateCurator",
1705
+ "kind": "struct",
1706
+ "members": [
1707
+ {
1708
+ "name": "pending_curator",
1709
+ "type": "core::starknet::contract_address::ContractAddress",
1710
+ "kind": "key"
1711
+ }
1712
+ ]
1713
+ },
1714
+ {
1715
+ "type": "event",
1716
+ "name": "vesu::pool::Pool::ContractPaused",
1717
+ "kind": "struct",
1718
+ "members": [
1719
+ {
1720
+ "name": "account",
1721
+ "type": "core::starknet::contract_address::ContractAddress",
1722
+ "kind": "data"
1723
+ }
1724
+ ]
1725
+ },
1726
+ {
1727
+ "type": "event",
1728
+ "name": "vesu::pool::Pool::ContractUnpaused",
1729
+ "kind": "struct",
1730
+ "members": [
1731
+ {
1732
+ "name": "account",
1733
+ "type": "core::starknet::contract_address::ContractAddress",
1734
+ "kind": "data"
1735
+ }
1736
+ ]
1737
+ },
1738
+ {
1739
+ "type": "event",
1740
+ "name": "vesu::pool::Pool::ContractUpgraded",
1741
+ "kind": "struct",
1742
+ "members": [
1743
+ {
1744
+ "name": "new_implementation",
1745
+ "type": "core::starknet::class_hash::ClassHash",
1746
+ "kind": "data"
1747
+ }
1748
+ ]
1749
+ },
1750
+ {
1751
+ "type": "event",
1752
+ "name": "vesu::pool::Pool::Event",
1753
+ "kind": "enum",
1754
+ "variants": [
1755
+ {
1756
+ "name": "OwnableEvent",
1757
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::Event",
1758
+ "kind": "flat"
1759
+ },
1760
+ {
1761
+ "name": "InterestRateModelEvents",
1762
+ "type": "vesu::interest_rate_model::interest_rate_model_component::Event",
1763
+ "kind": "nested"
1764
+ },
1765
+ {
1766
+ "name": "UpdateContext",
1767
+ "type": "vesu::pool::Pool::UpdateContext",
1768
+ "kind": "nested"
1769
+ },
1770
+ {
1771
+ "name": "ModifyPosition",
1772
+ "type": "vesu::pool::Pool::ModifyPosition",
1773
+ "kind": "nested"
1774
+ },
1775
+ {
1776
+ "name": "LiquidatePosition",
1777
+ "type": "vesu::pool::Pool::LiquidatePosition",
1778
+ "kind": "nested"
1779
+ },
1780
+ {
1781
+ "name": "Flashloan",
1782
+ "type": "vesu::pool::Pool::Flashloan",
1783
+ "kind": "nested"
1784
+ },
1785
+ {
1786
+ "name": "ModifyDelegation",
1787
+ "type": "vesu::pool::Pool::ModifyDelegation",
1788
+ "kind": "nested"
1789
+ },
1790
+ {
1791
+ "name": "Donate",
1792
+ "type": "vesu::pool::Pool::Donate",
1793
+ "kind": "nested"
1794
+ },
1795
+ {
1796
+ "name": "SetAssetConfig",
1797
+ "type": "vesu::pool::Pool::SetAssetConfig",
1798
+ "kind": "nested"
1799
+ },
1800
+ {
1801
+ "name": "SetOracle",
1802
+ "type": "vesu::pool::Pool::SetOracle",
1803
+ "kind": "nested"
1804
+ },
1805
+ {
1806
+ "name": "SetPairConfig",
1807
+ "type": "vesu::pool::Pool::SetPairConfig",
1808
+ "kind": "nested"
1809
+ },
1810
+ {
1811
+ "name": "ClaimFees",
1812
+ "type": "vesu::pool::Pool::ClaimFees",
1813
+ "kind": "nested"
1814
+ },
1815
+ {
1816
+ "name": "SetFeeRecipient",
1817
+ "type": "vesu::pool::Pool::SetFeeRecipient",
1818
+ "kind": "nested"
1819
+ },
1820
+ {
1821
+ "name": "SetPausingAgent",
1822
+ "type": "vesu::pool::Pool::SetPausingAgent",
1823
+ "kind": "nested"
1824
+ },
1825
+ {
1826
+ "name": "SetCurator",
1827
+ "type": "vesu::pool::Pool::SetCurator",
1828
+ "kind": "nested"
1829
+ },
1830
+ {
1831
+ "name": "NominateCurator",
1832
+ "type": "vesu::pool::Pool::NominateCurator",
1833
+ "kind": "nested"
1834
+ },
1835
+ {
1836
+ "name": "ContractPaused",
1837
+ "type": "vesu::pool::Pool::ContractPaused",
1838
+ "kind": "nested"
1839
+ },
1840
+ {
1841
+ "name": "ContractUnpaused",
1842
+ "type": "vesu::pool::Pool::ContractUnpaused",
1843
+ "kind": "nested"
1844
+ },
1845
+ {
1846
+ "name": "ContractUpgraded",
1847
+ "type": "vesu::pool::Pool::ContractUpgraded",
1848
+ "kind": "nested"
1849
+ }
1850
+ ]
1851
+ }
1852
+ ]