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