@varla/protocol 0.0.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 (61) hide show
  1. package/dist/abi/full/OpinionCtfExecutionEngineAdapter.d.ts +240 -0
  2. package/dist/abi/full/OpinionCtfExecutionEngineAdapter.d.ts.map +1 -0
  3. package/dist/abi/full/OpinionCtfExecutionEngineAdapter.js +315 -0
  4. package/dist/abi/full/PolymarketCtfAdapter.d.ts +234 -0
  5. package/dist/abi/full/PolymarketCtfAdapter.d.ts.map +1 -0
  6. package/dist/abi/full/PolymarketCtfAdapter.js +307 -0
  7. package/dist/abi/full/VarlaAccessManager.d.ts +896 -0
  8. package/dist/abi/full/VarlaAccessManager.d.ts.map +1 -0
  9. package/dist/abi/full/VarlaAccessManager.js +1166 -0
  10. package/dist/abi/full/VarlaConvertLiquidator.d.ts +603 -0
  11. package/dist/abi/full/VarlaConvertLiquidator.d.ts.map +1 -0
  12. package/dist/abi/full/VarlaConvertLiquidator.js +784 -0
  13. package/dist/abi/full/VarlaCore.d.ts +1671 -0
  14. package/dist/abi/full/VarlaCore.d.ts.map +1 -0
  15. package/dist/abi/full/VarlaCore.js +2176 -0
  16. package/dist/abi/full/VarlaInterestRateStrategy.d.ts +337 -0
  17. package/dist/abi/full/VarlaInterestRateStrategy.d.ts.map +1 -0
  18. package/dist/abi/full/VarlaInterestRateStrategy.js +437 -0
  19. package/dist/abi/full/VarlaLiquidator.d.ts +669 -0
  20. package/dist/abi/full/VarlaLiquidator.d.ts.map +1 -0
  21. package/dist/abi/full/VarlaLiquidator.js +864 -0
  22. package/dist/abi/full/VarlaMergeLiquidator.d.ts +575 -0
  23. package/dist/abi/full/VarlaMergeLiquidator.d.ts.map +1 -0
  24. package/dist/abi/full/VarlaMergeLiquidator.js +747 -0
  25. package/dist/abi/full/VarlaOracle.d.ts +1278 -0
  26. package/dist/abi/full/VarlaOracle.d.ts.map +1 -0
  27. package/dist/abi/full/VarlaOracle.js +1673 -0
  28. package/dist/abi/full/VarlaPool.d.ts +1242 -0
  29. package/dist/abi/full/VarlaPool.d.ts.map +1 -0
  30. package/dist/abi/full/VarlaPool.js +1621 -0
  31. package/dist/abi/full/VarlaProxyAdmin.d.ts +227 -0
  32. package/dist/abi/full/VarlaProxyAdmin.d.ts.map +1 -0
  33. package/dist/abi/full/VarlaProxyAdmin.js +296 -0
  34. package/dist/abi/index.d.ts +13 -0
  35. package/dist/abi/index.d.ts.map +1 -0
  36. package/dist/abi/index.js +14 -0
  37. package/dist/abi/subsets/VarlaOracle.registry.d.ts +532 -0
  38. package/dist/abi/subsets/VarlaOracle.registry.d.ts.map +1 -0
  39. package/dist/abi/subsets/VarlaOracle.registry.js +695 -0
  40. package/dist/abi.d.ts +2 -0
  41. package/dist/abi.d.ts.map +1 -0
  42. package/dist/abi.js +2 -0
  43. package/dist/addresses/bsc.d.ts +3 -0
  44. package/dist/addresses/bsc.d.ts.map +1 -0
  45. package/dist/addresses/bsc.js +10 -0
  46. package/dist/addresses/index.d.ts +3 -0
  47. package/dist/addresses/index.d.ts.map +1 -0
  48. package/dist/addresses/index.js +4 -0
  49. package/dist/addresses/polygon.d.ts +3 -0
  50. package/dist/addresses/polygon.d.ts.map +1 -0
  51. package/dist/addresses/polygon.js +10 -0
  52. package/dist/addresses.d.ts +2 -0
  53. package/dist/addresses.d.ts.map +1 -0
  54. package/dist/addresses.js +2 -0
  55. package/dist/index.d.ts +2 -0
  56. package/dist/index.d.ts.map +1 -0
  57. package/dist/index.js +2 -0
  58. package/dist/types.d.ts +20 -0
  59. package/dist/types.d.ts.map +1 -0
  60. package/dist/types.js +1 -0
  61. package/package.json +42 -0
@@ -0,0 +1,2176 @@
1
+ export const VARLACORE_ABI = [
2
+ {
3
+ "inputs": [
4
+ {
5
+ "internalType": "address",
6
+ "name": "_positionsToken",
7
+ "type": "address"
8
+ },
9
+ {
10
+ "internalType": "address",
11
+ "name": "_collateralToken",
12
+ "type": "address"
13
+ },
14
+ {
15
+ "internalType": "address",
16
+ "name": "_pool",
17
+ "type": "address"
18
+ },
19
+ {
20
+ "internalType": "address",
21
+ "name": "_oracle",
22
+ "type": "address"
23
+ },
24
+ {
25
+ "internalType": "address",
26
+ "name": "_authority",
27
+ "type": "address"
28
+ }
29
+ ],
30
+ "stateMutability": "nonpayable",
31
+ "type": "constructor"
32
+ },
33
+ {
34
+ "inputs": [
35
+ {
36
+ "internalType": "address",
37
+ "name": "authority",
38
+ "type": "address"
39
+ }
40
+ ],
41
+ "name": "AccessManagedInvalidAuthority",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "address",
48
+ "name": "caller",
49
+ "type": "address"
50
+ },
51
+ {
52
+ "internalType": "uint32",
53
+ "name": "delay",
54
+ "type": "uint32"
55
+ }
56
+ ],
57
+ "name": "AccessManagedRequiredDelay",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [
62
+ {
63
+ "internalType": "address",
64
+ "name": "caller",
65
+ "type": "address"
66
+ }
67
+ ],
68
+ "name": "AccessManagedUnauthorized",
69
+ "type": "error"
70
+ },
71
+ {
72
+ "inputs": [
73
+ {
74
+ "internalType": "uint256",
75
+ "name": "amount",
76
+ "type": "uint256"
77
+ },
78
+ {
79
+ "internalType": "uint256",
80
+ "name": "debt",
81
+ "type": "uint256"
82
+ }
83
+ ],
84
+ "name": "AmountExceedsDebt",
85
+ "type": "error"
86
+ },
87
+ {
88
+ "inputs": [],
89
+ "name": "ArrayLengthMismatch",
90
+ "type": "error"
91
+ },
92
+ {
93
+ "inputs": [
94
+ {
95
+ "internalType": "uint256",
96
+ "name": "amount",
97
+ "type": "uint256"
98
+ }
99
+ ],
100
+ "name": "BelowMinBorrow",
101
+ "type": "error"
102
+ },
103
+ {
104
+ "inputs": [
105
+ {
106
+ "internalType": "uint256",
107
+ "name": "expected",
108
+ "type": "uint256"
109
+ },
110
+ {
111
+ "internalType": "uint256",
112
+ "name": "actual",
113
+ "type": "uint256"
114
+ }
115
+ ],
116
+ "name": "DebtChanged",
117
+ "type": "error"
118
+ },
119
+ {
120
+ "inputs": [
121
+ {
122
+ "internalType": "uint256",
123
+ "name": "positionId",
124
+ "type": "uint256"
125
+ }
126
+ ],
127
+ "name": "DepositNotAllowed",
128
+ "type": "error"
129
+ },
130
+ {
131
+ "inputs": [],
132
+ "name": "EmptyDeposit",
133
+ "type": "error"
134
+ },
135
+ {
136
+ "inputs": [
137
+ {
138
+ "internalType": "uint256",
139
+ "name": "requested",
140
+ "type": "uint256"
141
+ },
142
+ {
143
+ "internalType": "uint256",
144
+ "name": "maxBorrow",
145
+ "type": "uint256"
146
+ }
147
+ ],
148
+ "name": "ExceedsMaxBorrow",
149
+ "type": "error"
150
+ },
151
+ {
152
+ "inputs": [
153
+ {
154
+ "internalType": "uint256",
155
+ "name": "positionId",
156
+ "type": "uint256"
157
+ },
158
+ {
159
+ "internalType": "uint256",
160
+ "name": "requested",
161
+ "type": "uint256"
162
+ },
163
+ {
164
+ "internalType": "uint256",
165
+ "name": "available",
166
+ "type": "uint256"
167
+ }
168
+ ],
169
+ "name": "InsufficientBalance",
170
+ "type": "error"
171
+ },
172
+ {
173
+ "inputs": [],
174
+ "name": "InvalidAddress",
175
+ "type": "error"
176
+ },
177
+ {
178
+ "inputs": [
179
+ {
180
+ "internalType": "uint256",
181
+ "name": "positionId",
182
+ "type": "uint256"
183
+ }
184
+ ],
185
+ "name": "InvalidCollateral",
186
+ "type": "error"
187
+ },
188
+ {
189
+ "inputs": [
190
+ {
191
+ "internalType": "uint8",
192
+ "name": "tier",
193
+ "type": "uint8"
194
+ },
195
+ {
196
+ "internalType": "uint256",
197
+ "name": "ltvWad",
198
+ "type": "uint256"
199
+ },
200
+ {
201
+ "internalType": "uint256",
202
+ "name": "maxBonusBps",
203
+ "type": "uint256"
204
+ }
205
+ ],
206
+ "name": "InvalidCollateralFactorAndMaxLiquidationBonus",
207
+ "type": "error"
208
+ },
209
+ {
210
+ "inputs": [],
211
+ "name": "InvalidLiquidationConfig",
212
+ "type": "error"
213
+ },
214
+ {
215
+ "inputs": [
216
+ {
217
+ "internalType": "uint256",
218
+ "name": "feeBps",
219
+ "type": "uint256"
220
+ }
221
+ ],
222
+ "name": "InvalidLiquidationFee",
223
+ "type": "error"
224
+ },
225
+ {
226
+ "inputs": [
227
+ {
228
+ "internalType": "uint256",
229
+ "name": "ltv",
230
+ "type": "uint256"
231
+ }
232
+ ],
233
+ "name": "InvalidLtv",
234
+ "type": "error"
235
+ },
236
+ {
237
+ "inputs": [
238
+ {
239
+ "internalType": "uint256",
240
+ "name": "conservative",
241
+ "type": "uint256"
242
+ },
243
+ {
244
+ "internalType": "uint256",
245
+ "name": "moderate",
246
+ "type": "uint256"
247
+ },
248
+ {
249
+ "internalType": "uint256",
250
+ "name": "risk",
251
+ "type": "uint256"
252
+ }
253
+ ],
254
+ "name": "InvalidLtvConfig",
255
+ "type": "error"
256
+ },
257
+ {
258
+ "inputs": [
259
+ {
260
+ "internalType": "uint256",
261
+ "name": "value",
262
+ "type": "uint256"
263
+ },
264
+ {
265
+ "internalType": "uint256",
266
+ "name": "min",
267
+ "type": "uint256"
268
+ },
269
+ {
270
+ "internalType": "uint256",
271
+ "name": "max",
272
+ "type": "uint256"
273
+ }
274
+ ],
275
+ "name": "InvalidMaxPositions",
276
+ "type": "error"
277
+ },
278
+ {
279
+ "inputs": [
280
+ {
281
+ "internalType": "uint256",
282
+ "name": "min",
283
+ "type": "uint256"
284
+ },
285
+ {
286
+ "internalType": "uint256",
287
+ "name": "max",
288
+ "type": "uint256"
289
+ }
290
+ ],
291
+ "name": "InvalidMaxPositionsBounds",
292
+ "type": "error"
293
+ },
294
+ {
295
+ "inputs": [
296
+ {
297
+ "internalType": "uint8",
298
+ "name": "tier",
299
+ "type": "uint8"
300
+ }
301
+ ],
302
+ "name": "InvalidTier",
303
+ "type": "error"
304
+ },
305
+ {
306
+ "inputs": [],
307
+ "name": "LiquidationBlockedByOracleGuards",
308
+ "type": "error"
309
+ },
310
+ {
311
+ "inputs": [
312
+ {
313
+ "internalType": "uint256",
314
+ "name": "positionId",
315
+ "type": "uint256"
316
+ },
317
+ {
318
+ "internalType": "uint256",
319
+ "name": "provided",
320
+ "type": "uint256"
321
+ },
322
+ {
323
+ "internalType": "uint256",
324
+ "name": "maxAllowed",
325
+ "type": "uint256"
326
+ }
327
+ ],
328
+ "name": "LiquidationOverrideMustOnlyLowerBonus",
329
+ "type": "error"
330
+ },
331
+ {
332
+ "inputs": [
333
+ {
334
+ "internalType": "uint256",
335
+ "name": "positionId",
336
+ "type": "uint256"
337
+ },
338
+ {
339
+ "internalType": "uint256",
340
+ "name": "provided",
341
+ "type": "uint256"
342
+ },
343
+ {
344
+ "internalType": "uint256",
345
+ "name": "maxAllowed",
346
+ "type": "uint256"
347
+ }
348
+ ],
349
+ "name": "LtvOverrideMustOnlyLower",
350
+ "type": "error"
351
+ },
352
+ {
353
+ "inputs": [],
354
+ "name": "NoDebt",
355
+ "type": "error"
356
+ },
357
+ {
358
+ "inputs": [
359
+ {
360
+ "internalType": "uint256",
361
+ "name": "healthFactor",
362
+ "type": "uint256"
363
+ }
364
+ ],
365
+ "name": "NotLiquidatable",
366
+ "type": "error"
367
+ },
368
+ {
369
+ "inputs": [
370
+ {
371
+ "internalType": "uint256",
372
+ "name": "positionId",
373
+ "type": "uint256"
374
+ },
375
+ {
376
+ "internalType": "uint256",
377
+ "name": "until",
378
+ "type": "uint256"
379
+ }
380
+ ],
381
+ "name": "OracleGracePeriodActive",
382
+ "type": "error"
383
+ },
384
+ {
385
+ "inputs": [
386
+ {
387
+ "internalType": "uint256",
388
+ "name": "positionId",
389
+ "type": "uint256"
390
+ }
391
+ ],
392
+ "name": "OraclePriceUnavailableForLiquidation",
393
+ "type": "error"
394
+ },
395
+ {
396
+ "inputs": [],
397
+ "name": "ReentrancyGuardReentrantCall",
398
+ "type": "error"
399
+ },
400
+ {
401
+ "inputs": [
402
+ {
403
+ "internalType": "uint256",
404
+ "name": "remainingDebt",
405
+ "type": "uint256"
406
+ }
407
+ ],
408
+ "name": "RemainingDebtBelowMinBorrow",
409
+ "type": "error"
410
+ },
411
+ {
412
+ "inputs": [
413
+ {
414
+ "internalType": "uint256",
415
+ "name": "amount",
416
+ "type": "uint256"
417
+ },
418
+ {
419
+ "internalType": "uint256",
420
+ "name": "currentIndex",
421
+ "type": "uint256"
422
+ }
423
+ ],
424
+ "name": "RepayAmountTooSmall",
425
+ "type": "error"
426
+ },
427
+ {
428
+ "inputs": [
429
+ {
430
+ "internalType": "uint256",
431
+ "name": "amount",
432
+ "type": "uint256"
433
+ },
434
+ {
435
+ "internalType": "uint256",
436
+ "name": "totalOwed",
437
+ "type": "uint256"
438
+ }
439
+ ],
440
+ "name": "RepayingTooMuch",
441
+ "type": "error"
442
+ },
443
+ {
444
+ "inputs": [
445
+ {
446
+ "internalType": "address",
447
+ "name": "token",
448
+ "type": "address"
449
+ }
450
+ ],
451
+ "name": "SafeERC20FailedOperation",
452
+ "type": "error"
453
+ },
454
+ {
455
+ "inputs": [
456
+ {
457
+ "internalType": "uint256",
458
+ "name": "borrowedAt",
459
+ "type": "uint256"
460
+ },
461
+ {
462
+ "internalType": "uint256",
463
+ "name": "canRepayAt",
464
+ "type": "uint256"
465
+ }
466
+ ],
467
+ "name": "TooEarlyToRepay",
468
+ "type": "error"
469
+ },
470
+ {
471
+ "inputs": [
472
+ {
473
+ "internalType": "uint256",
474
+ "name": "current",
475
+ "type": "uint256"
476
+ },
477
+ {
478
+ "internalType": "uint256",
479
+ "name": "max",
480
+ "type": "uint256"
481
+ }
482
+ ],
483
+ "name": "TooManyPositions",
484
+ "type": "error"
485
+ },
486
+ {
487
+ "inputs": [],
488
+ "name": "WouldBeUndercollateralized",
489
+ "type": "error"
490
+ },
491
+ {
492
+ "inputs": [],
493
+ "name": "ZeroAmount",
494
+ "type": "error"
495
+ },
496
+ {
497
+ "anonymous": false,
498
+ "inputs": [
499
+ {
500
+ "indexed": false,
501
+ "internalType": "address",
502
+ "name": "authority",
503
+ "type": "address"
504
+ }
505
+ ],
506
+ "name": "AuthorityUpdated",
507
+ "type": "event"
508
+ },
509
+ {
510
+ "anonymous": false,
511
+ "inputs": [
512
+ {
513
+ "indexed": true,
514
+ "internalType": "address",
515
+ "name": "user",
516
+ "type": "address"
517
+ },
518
+ {
519
+ "indexed": false,
520
+ "internalType": "uint256",
521
+ "name": "amount",
522
+ "type": "uint256"
523
+ },
524
+ {
525
+ "indexed": false,
526
+ "internalType": "uint256",
527
+ "name": "scaledAmount",
528
+ "type": "uint256"
529
+ }
530
+ ],
531
+ "name": "Borrow",
532
+ "type": "event"
533
+ },
534
+ {
535
+ "anonymous": false,
536
+ "inputs": [
537
+ {
538
+ "indexed": false,
539
+ "internalType": "uint256",
540
+ "name": "oldConservative",
541
+ "type": "uint256"
542
+ },
543
+ {
544
+ "indexed": false,
545
+ "internalType": "uint256",
546
+ "name": "oldModerate",
547
+ "type": "uint256"
548
+ },
549
+ {
550
+ "indexed": false,
551
+ "internalType": "uint256",
552
+ "name": "oldRisk",
553
+ "type": "uint256"
554
+ },
555
+ {
556
+ "indexed": false,
557
+ "internalType": "uint256",
558
+ "name": "newConservative",
559
+ "type": "uint256"
560
+ },
561
+ {
562
+ "indexed": false,
563
+ "internalType": "uint256",
564
+ "name": "newModerate",
565
+ "type": "uint256"
566
+ },
567
+ {
568
+ "indexed": false,
569
+ "internalType": "uint256",
570
+ "name": "newRisk",
571
+ "type": "uint256"
572
+ }
573
+ ],
574
+ "name": "DefaultLtvUpdated",
575
+ "type": "event"
576
+ },
577
+ {
578
+ "anonymous": false,
579
+ "inputs": [
580
+ {
581
+ "indexed": true,
582
+ "internalType": "address",
583
+ "name": "user",
584
+ "type": "address"
585
+ },
586
+ {
587
+ "indexed": false,
588
+ "internalType": "uint256[]",
589
+ "name": "positionIds",
590
+ "type": "uint256[]"
591
+ },
592
+ {
593
+ "indexed": false,
594
+ "internalType": "uint256[]",
595
+ "name": "amounts",
596
+ "type": "uint256[]"
597
+ }
598
+ ],
599
+ "name": "Deposit",
600
+ "type": "event"
601
+ },
602
+ {
603
+ "anonymous": false,
604
+ "inputs": [
605
+ {
606
+ "indexed": true,
607
+ "internalType": "address",
608
+ "name": "user",
609
+ "type": "address"
610
+ },
611
+ {
612
+ "indexed": true,
613
+ "internalType": "address",
614
+ "name": "liquidator",
615
+ "type": "address"
616
+ },
617
+ {
618
+ "indexed": false,
619
+ "internalType": "uint256[]",
620
+ "name": "positionIds",
621
+ "type": "uint256[]"
622
+ },
623
+ {
624
+ "indexed": false,
625
+ "internalType": "uint256[]",
626
+ "name": "amounts",
627
+ "type": "uint256[]"
628
+ },
629
+ {
630
+ "indexed": false,
631
+ "internalType": "uint256",
632
+ "name": "debtRepaid",
633
+ "type": "uint256"
634
+ }
635
+ ],
636
+ "name": "Liquidate",
637
+ "type": "event"
638
+ },
639
+ {
640
+ "anonymous": false,
641
+ "inputs": [
642
+ {
643
+ "indexed": false,
644
+ "internalType": "uint256",
645
+ "name": "targetHealthFactor",
646
+ "type": "uint256"
647
+ },
648
+ {
649
+ "indexed": false,
650
+ "internalType": "uint256",
651
+ "name": "healthFactorForMaxBonus",
652
+ "type": "uint256"
653
+ },
654
+ {
655
+ "indexed": false,
656
+ "internalType": "uint256",
657
+ "name": "liquidationBonusFactorBps",
658
+ "type": "uint256"
659
+ },
660
+ {
661
+ "indexed": false,
662
+ "internalType": "uint256",
663
+ "name": "dustThreshold",
664
+ "type": "uint256"
665
+ },
666
+ {
667
+ "indexed": false,
668
+ "internalType": "uint256",
669
+ "name": "collateralDustThreshold",
670
+ "type": "uint256"
671
+ }
672
+ ],
673
+ "name": "LiquidationConfigUpdated",
674
+ "type": "event"
675
+ },
676
+ {
677
+ "anonymous": false,
678
+ "inputs": [
679
+ {
680
+ "indexed": true,
681
+ "internalType": "address",
682
+ "name": "user",
683
+ "type": "address"
684
+ },
685
+ {
686
+ "indexed": true,
687
+ "internalType": "address",
688
+ "name": "liquidator",
689
+ "type": "address"
690
+ },
691
+ {
692
+ "indexed": false,
693
+ "internalType": "uint256",
694
+ "name": "amount",
695
+ "type": "uint256"
696
+ },
697
+ {
698
+ "indexed": false,
699
+ "internalType": "uint256",
700
+ "name": "scaledAmount",
701
+ "type": "uint256"
702
+ }
703
+ ],
704
+ "name": "LiquidationDebtRepaid",
705
+ "type": "event"
706
+ },
707
+ {
708
+ "anonymous": false,
709
+ "inputs": [
710
+ {
711
+ "indexed": false,
712
+ "internalType": "uint256",
713
+ "name": "oldMin",
714
+ "type": "uint256"
715
+ },
716
+ {
717
+ "indexed": false,
718
+ "internalType": "uint256",
719
+ "name": "oldMax",
720
+ "type": "uint256"
721
+ },
722
+ {
723
+ "indexed": false,
724
+ "internalType": "uint256",
725
+ "name": "newMin",
726
+ "type": "uint256"
727
+ },
728
+ {
729
+ "indexed": false,
730
+ "internalType": "uint256",
731
+ "name": "newMax",
732
+ "type": "uint256"
733
+ }
734
+ ],
735
+ "name": "MaxPositionsBoundsUpdated",
736
+ "type": "event"
737
+ },
738
+ {
739
+ "anonymous": false,
740
+ "inputs": [
741
+ {
742
+ "indexed": false,
743
+ "internalType": "uint256",
744
+ "name": "oldMax",
745
+ "type": "uint256"
746
+ },
747
+ {
748
+ "indexed": false,
749
+ "internalType": "uint256",
750
+ "name": "newMax",
751
+ "type": "uint256"
752
+ }
753
+ ],
754
+ "name": "MaxPositionsUpdated",
755
+ "type": "event"
756
+ },
757
+ {
758
+ "anonymous": false,
759
+ "inputs": [
760
+ {
761
+ "indexed": true,
762
+ "internalType": "address",
763
+ "name": "oldOracle",
764
+ "type": "address"
765
+ },
766
+ {
767
+ "indexed": true,
768
+ "internalType": "address",
769
+ "name": "newOracle",
770
+ "type": "address"
771
+ }
772
+ ],
773
+ "name": "OracleUpdated",
774
+ "type": "event"
775
+ },
776
+ {
777
+ "anonymous": false,
778
+ "inputs": [
779
+ {
780
+ "indexed": true,
781
+ "internalType": "uint256",
782
+ "name": "positionId",
783
+ "type": "uint256"
784
+ },
785
+ {
786
+ "indexed": false,
787
+ "internalType": "bool",
788
+ "name": "isSet",
789
+ "type": "bool"
790
+ },
791
+ {
792
+ "indexed": false,
793
+ "internalType": "uint256",
794
+ "name": "maxLiquidationBonusBps",
795
+ "type": "uint256"
796
+ },
797
+ {
798
+ "indexed": false,
799
+ "internalType": "uint256",
800
+ "name": "liquidationFeeBps",
801
+ "type": "uint256"
802
+ }
803
+ ],
804
+ "name": "PositionLiquidationConfigUpdated",
805
+ "type": "event"
806
+ },
807
+ {
808
+ "anonymous": false,
809
+ "inputs": [
810
+ {
811
+ "indexed": true,
812
+ "internalType": "uint256",
813
+ "name": "positionId",
814
+ "type": "uint256"
815
+ },
816
+ {
817
+ "indexed": false,
818
+ "internalType": "bool",
819
+ "name": "isSet",
820
+ "type": "bool"
821
+ },
822
+ {
823
+ "indexed": false,
824
+ "internalType": "uint256",
825
+ "name": "ltv",
826
+ "type": "uint256"
827
+ }
828
+ ],
829
+ "name": "PositionLtvOverrideUpdated",
830
+ "type": "event"
831
+ },
832
+ {
833
+ "anonymous": false,
834
+ "inputs": [
835
+ {
836
+ "indexed": true,
837
+ "internalType": "address",
838
+ "name": "user",
839
+ "type": "address"
840
+ },
841
+ {
842
+ "indexed": false,
843
+ "internalType": "uint256",
844
+ "name": "amount",
845
+ "type": "uint256"
846
+ },
847
+ {
848
+ "indexed": false,
849
+ "internalType": "uint256",
850
+ "name": "scaledAmount",
851
+ "type": "uint256"
852
+ }
853
+ ],
854
+ "name": "Repay",
855
+ "type": "event"
856
+ },
857
+ {
858
+ "anonymous": false,
859
+ "inputs": [
860
+ {
861
+ "indexed": true,
862
+ "internalType": "uint8",
863
+ "name": "tier",
864
+ "type": "uint8"
865
+ },
866
+ {
867
+ "indexed": false,
868
+ "internalType": "uint256",
869
+ "name": "maxLiquidationBonusBps",
870
+ "type": "uint256"
871
+ },
872
+ {
873
+ "indexed": false,
874
+ "internalType": "uint256",
875
+ "name": "liquidationFeeBps",
876
+ "type": "uint256"
877
+ }
878
+ ],
879
+ "name": "TierLiquidationConfigUpdated",
880
+ "type": "event"
881
+ },
882
+ {
883
+ "anonymous": false,
884
+ "inputs": [
885
+ {
886
+ "indexed": true,
887
+ "internalType": "address",
888
+ "name": "user",
889
+ "type": "address"
890
+ },
891
+ {
892
+ "indexed": false,
893
+ "internalType": "uint256[]",
894
+ "name": "positionIds",
895
+ "type": "uint256[]"
896
+ },
897
+ {
898
+ "indexed": false,
899
+ "internalType": "uint256[]",
900
+ "name": "amounts",
901
+ "type": "uint256[]"
902
+ }
903
+ ],
904
+ "name": "Withdraw",
905
+ "type": "event"
906
+ },
907
+ {
908
+ "inputs": [],
909
+ "name": "BPS",
910
+ "outputs": [
911
+ {
912
+ "internalType": "uint256",
913
+ "name": "",
914
+ "type": "uint256"
915
+ }
916
+ ],
917
+ "stateMutability": "view",
918
+ "type": "function"
919
+ },
920
+ {
921
+ "inputs": [],
922
+ "name": "DEFAULT_MAX_POSITIONS",
923
+ "outputs": [
924
+ {
925
+ "internalType": "uint256",
926
+ "name": "",
927
+ "type": "uint256"
928
+ }
929
+ ],
930
+ "stateMutability": "view",
931
+ "type": "function"
932
+ },
933
+ {
934
+ "inputs": [],
935
+ "name": "LIQUIDATION_THRESHOLD",
936
+ "outputs": [
937
+ {
938
+ "internalType": "uint256",
939
+ "name": "",
940
+ "type": "uint256"
941
+ }
942
+ ],
943
+ "stateMutability": "view",
944
+ "type": "function"
945
+ },
946
+ {
947
+ "inputs": [],
948
+ "name": "MAX_MAX_POSITIONS_DEFAULT",
949
+ "outputs": [
950
+ {
951
+ "internalType": "uint256",
952
+ "name": "",
953
+ "type": "uint256"
954
+ }
955
+ ],
956
+ "stateMutability": "view",
957
+ "type": "function"
958
+ },
959
+ {
960
+ "inputs": [],
961
+ "name": "MIN_BORROW",
962
+ "outputs": [
963
+ {
964
+ "internalType": "uint256",
965
+ "name": "",
966
+ "type": "uint256"
967
+ }
968
+ ],
969
+ "stateMutability": "view",
970
+ "type": "function"
971
+ },
972
+ {
973
+ "inputs": [],
974
+ "name": "MIN_BORROW_DURATION",
975
+ "outputs": [
976
+ {
977
+ "internalType": "uint256",
978
+ "name": "",
979
+ "type": "uint256"
980
+ }
981
+ ],
982
+ "stateMutability": "view",
983
+ "type": "function"
984
+ },
985
+ {
986
+ "inputs": [],
987
+ "name": "MIN_MAX_POSITIONS_DEFAULT",
988
+ "outputs": [
989
+ {
990
+ "internalType": "uint256",
991
+ "name": "",
992
+ "type": "uint256"
993
+ }
994
+ ],
995
+ "stateMutability": "view",
996
+ "type": "function"
997
+ },
998
+ {
999
+ "inputs": [],
1000
+ "name": "PRECISION",
1001
+ "outputs": [
1002
+ {
1003
+ "internalType": "uint256",
1004
+ "name": "",
1005
+ "type": "uint256"
1006
+ }
1007
+ ],
1008
+ "stateMutability": "view",
1009
+ "type": "function"
1010
+ },
1011
+ {
1012
+ "inputs": [],
1013
+ "name": "PRICE_PRECISION",
1014
+ "outputs": [
1015
+ {
1016
+ "internalType": "uint256",
1017
+ "name": "",
1018
+ "type": "uint256"
1019
+ }
1020
+ ],
1021
+ "stateMutability": "view",
1022
+ "type": "function"
1023
+ },
1024
+ {
1025
+ "inputs": [],
1026
+ "name": "authority",
1027
+ "outputs": [
1028
+ {
1029
+ "internalType": "address",
1030
+ "name": "",
1031
+ "type": "address"
1032
+ }
1033
+ ],
1034
+ "stateMutability": "view",
1035
+ "type": "function"
1036
+ },
1037
+ {
1038
+ "inputs": [
1039
+ {
1040
+ "internalType": "uint256",
1041
+ "name": "amount",
1042
+ "type": "uint256"
1043
+ }
1044
+ ],
1045
+ "name": "borrow",
1046
+ "outputs": [],
1047
+ "stateMutability": "nonpayable",
1048
+ "type": "function"
1049
+ },
1050
+ {
1051
+ "inputs": [
1052
+ {
1053
+ "internalType": "uint256",
1054
+ "name": "positionId",
1055
+ "type": "uint256"
1056
+ }
1057
+ ],
1058
+ "name": "clearPositionLiquidationConfigOverride",
1059
+ "outputs": [],
1060
+ "stateMutability": "nonpayable",
1061
+ "type": "function"
1062
+ },
1063
+ {
1064
+ "inputs": [
1065
+ {
1066
+ "internalType": "uint256",
1067
+ "name": "positionId",
1068
+ "type": "uint256"
1069
+ }
1070
+ ],
1071
+ "name": "clearPositionLtvOverride",
1072
+ "outputs": [],
1073
+ "stateMutability": "nonpayable",
1074
+ "type": "function"
1075
+ },
1076
+ {
1077
+ "inputs": [],
1078
+ "name": "collateralDecimals",
1079
+ "outputs": [
1080
+ {
1081
+ "internalType": "uint8",
1082
+ "name": "",
1083
+ "type": "uint8"
1084
+ }
1085
+ ],
1086
+ "stateMutability": "view",
1087
+ "type": "function"
1088
+ },
1089
+ {
1090
+ "inputs": [],
1091
+ "name": "collateralToken",
1092
+ "outputs": [
1093
+ {
1094
+ "internalType": "contract IERC20",
1095
+ "name": "",
1096
+ "type": "address"
1097
+ }
1098
+ ],
1099
+ "stateMutability": "view",
1100
+ "type": "function"
1101
+ },
1102
+ {
1103
+ "inputs": [
1104
+ {
1105
+ "internalType": "uint256[]",
1106
+ "name": "positionIds",
1107
+ "type": "uint256[]"
1108
+ },
1109
+ {
1110
+ "internalType": "uint256[]",
1111
+ "name": "amounts",
1112
+ "type": "uint256[]"
1113
+ }
1114
+ ],
1115
+ "name": "deposit",
1116
+ "outputs": [],
1117
+ "stateMutability": "nonpayable",
1118
+ "type": "function"
1119
+ },
1120
+ {
1121
+ "inputs": [
1122
+ {
1123
+ "internalType": "address",
1124
+ "name": "user",
1125
+ "type": "address"
1126
+ }
1127
+ ],
1128
+ "name": "getAccountSummary",
1129
+ "outputs": [
1130
+ {
1131
+ "internalType": "uint256",
1132
+ "name": "portfolioValue",
1133
+ "type": "uint256"
1134
+ },
1135
+ {
1136
+ "internalType": "uint256",
1137
+ "name": "collateralValue",
1138
+ "type": "uint256"
1139
+ },
1140
+ {
1141
+ "internalType": "uint256",
1142
+ "name": "debt",
1143
+ "type": "uint256"
1144
+ },
1145
+ {
1146
+ "internalType": "uint256",
1147
+ "name": "healthFactor",
1148
+ "type": "uint256"
1149
+ },
1150
+ {
1151
+ "internalType": "uint256",
1152
+ "name": "maxBorrow",
1153
+ "type": "uint256"
1154
+ }
1155
+ ],
1156
+ "stateMutability": "view",
1157
+ "type": "function"
1158
+ },
1159
+ {
1160
+ "inputs": [
1161
+ {
1162
+ "internalType": "uint256",
1163
+ "name": "index",
1164
+ "type": "uint256"
1165
+ }
1166
+ ],
1167
+ "name": "getBorrowerAt",
1168
+ "outputs": [
1169
+ {
1170
+ "internalType": "address",
1171
+ "name": "",
1172
+ "type": "address"
1173
+ }
1174
+ ],
1175
+ "stateMutability": "view",
1176
+ "type": "function"
1177
+ },
1178
+ {
1179
+ "inputs": [],
1180
+ "name": "getBorrowers",
1181
+ "outputs": [
1182
+ {
1183
+ "internalType": "address[]",
1184
+ "name": "",
1185
+ "type": "address[]"
1186
+ }
1187
+ ],
1188
+ "stateMutability": "view",
1189
+ "type": "function"
1190
+ },
1191
+ {
1192
+ "inputs": [],
1193
+ "name": "getBorrowersCount",
1194
+ "outputs": [
1195
+ {
1196
+ "internalType": "uint256",
1197
+ "name": "",
1198
+ "type": "uint256"
1199
+ }
1200
+ ],
1201
+ "stateMutability": "view",
1202
+ "type": "function"
1203
+ },
1204
+ {
1205
+ "inputs": [
1206
+ {
1207
+ "internalType": "address",
1208
+ "name": "user",
1209
+ "type": "address"
1210
+ }
1211
+ ],
1212
+ "name": "getCollateralValue",
1213
+ "outputs": [
1214
+ {
1215
+ "internalType": "uint256",
1216
+ "name": "",
1217
+ "type": "uint256"
1218
+ }
1219
+ ],
1220
+ "stateMutability": "view",
1221
+ "type": "function"
1222
+ },
1223
+ {
1224
+ "inputs": [
1225
+ {
1226
+ "internalType": "address",
1227
+ "name": "user",
1228
+ "type": "address"
1229
+ }
1230
+ ],
1231
+ "name": "getDebt",
1232
+ "outputs": [
1233
+ {
1234
+ "internalType": "uint256",
1235
+ "name": "",
1236
+ "type": "uint256"
1237
+ }
1238
+ ],
1239
+ "stateMutability": "view",
1240
+ "type": "function"
1241
+ },
1242
+ {
1243
+ "inputs": [],
1244
+ "name": "getDefaultLtvConfig",
1245
+ "outputs": [
1246
+ {
1247
+ "components": [
1248
+ {
1249
+ "internalType": "uint256",
1250
+ "name": "conservative",
1251
+ "type": "uint256"
1252
+ },
1253
+ {
1254
+ "internalType": "uint256",
1255
+ "name": "moderate",
1256
+ "type": "uint256"
1257
+ },
1258
+ {
1259
+ "internalType": "uint256",
1260
+ "name": "risk",
1261
+ "type": "uint256"
1262
+ }
1263
+ ],
1264
+ "internalType": "struct VarlaCore.LtvConfig",
1265
+ "name": "",
1266
+ "type": "tuple"
1267
+ }
1268
+ ],
1269
+ "stateMutability": "view",
1270
+ "type": "function"
1271
+ },
1272
+ {
1273
+ "inputs": [
1274
+ {
1275
+ "internalType": "address",
1276
+ "name": "user",
1277
+ "type": "address"
1278
+ }
1279
+ ],
1280
+ "name": "getHealthFactor",
1281
+ "outputs": [
1282
+ {
1283
+ "internalType": "uint256",
1284
+ "name": "healthFactor",
1285
+ "type": "uint256"
1286
+ },
1287
+ {
1288
+ "internalType": "bool",
1289
+ "name": "canBeLiquidated",
1290
+ "type": "bool"
1291
+ }
1292
+ ],
1293
+ "stateMutability": "view",
1294
+ "type": "function"
1295
+ },
1296
+ {
1297
+ "inputs": [
1298
+ {
1299
+ "internalType": "uint256",
1300
+ "name": "positionId",
1301
+ "type": "uint256"
1302
+ },
1303
+ {
1304
+ "internalType": "uint256",
1305
+ "name": "healthFactor",
1306
+ "type": "uint256"
1307
+ }
1308
+ ],
1309
+ "name": "getLiquidationBonusBps",
1310
+ "outputs": [
1311
+ {
1312
+ "internalType": "uint256",
1313
+ "name": "bonusBps",
1314
+ "type": "uint256"
1315
+ }
1316
+ ],
1317
+ "stateMutability": "view",
1318
+ "type": "function"
1319
+ },
1320
+ {
1321
+ "inputs": [],
1322
+ "name": "getLiquidationConfig",
1323
+ "outputs": [
1324
+ {
1325
+ "components": [
1326
+ {
1327
+ "internalType": "uint256",
1328
+ "name": "targetHealthFactor",
1329
+ "type": "uint256"
1330
+ },
1331
+ {
1332
+ "internalType": "uint256",
1333
+ "name": "healthFactorForMaxBonus",
1334
+ "type": "uint256"
1335
+ },
1336
+ {
1337
+ "internalType": "uint256",
1338
+ "name": "liquidationBonusFactorBps",
1339
+ "type": "uint256"
1340
+ },
1341
+ {
1342
+ "internalType": "uint256",
1343
+ "name": "dustThreshold",
1344
+ "type": "uint256"
1345
+ },
1346
+ {
1347
+ "internalType": "uint256",
1348
+ "name": "collateralDustThreshold",
1349
+ "type": "uint256"
1350
+ }
1351
+ ],
1352
+ "internalType": "struct VarlaCore.LiquidationConfig",
1353
+ "name": "",
1354
+ "type": "tuple"
1355
+ }
1356
+ ],
1357
+ "stateMutability": "view",
1358
+ "type": "function"
1359
+ },
1360
+ {
1361
+ "inputs": [
1362
+ {
1363
+ "internalType": "uint256",
1364
+ "name": "positionId",
1365
+ "type": "uint256"
1366
+ }
1367
+ ],
1368
+ "name": "getLiquidationParamsForPosition",
1369
+ "outputs": [
1370
+ {
1371
+ "internalType": "uint256",
1372
+ "name": "maxLiquidationBonusBps",
1373
+ "type": "uint256"
1374
+ },
1375
+ {
1376
+ "internalType": "uint256",
1377
+ "name": "liquidationFeeBps",
1378
+ "type": "uint256"
1379
+ }
1380
+ ],
1381
+ "stateMutability": "view",
1382
+ "type": "function"
1383
+ },
1384
+ {
1385
+ "inputs": [
1386
+ {
1387
+ "internalType": "uint256",
1388
+ "name": "positionId",
1389
+ "type": "uint256"
1390
+ }
1391
+ ],
1392
+ "name": "getLtvForPosition",
1393
+ "outputs": [
1394
+ {
1395
+ "internalType": "uint256",
1396
+ "name": "",
1397
+ "type": "uint256"
1398
+ }
1399
+ ],
1400
+ "stateMutability": "view",
1401
+ "type": "function"
1402
+ },
1403
+ {
1404
+ "inputs": [
1405
+ {
1406
+ "internalType": "address",
1407
+ "name": "user",
1408
+ "type": "address"
1409
+ }
1410
+ ],
1411
+ "name": "getMaxBorrow",
1412
+ "outputs": [
1413
+ {
1414
+ "internalType": "uint256",
1415
+ "name": "",
1416
+ "type": "uint256"
1417
+ }
1418
+ ],
1419
+ "stateMutability": "view",
1420
+ "type": "function"
1421
+ },
1422
+ {
1423
+ "inputs": [
1424
+ {
1425
+ "internalType": "address",
1426
+ "name": "user",
1427
+ "type": "address"
1428
+ }
1429
+ ],
1430
+ "name": "getPortfolioValue",
1431
+ "outputs": [
1432
+ {
1433
+ "internalType": "uint256",
1434
+ "name": "",
1435
+ "type": "uint256"
1436
+ }
1437
+ ],
1438
+ "stateMutability": "view",
1439
+ "type": "function"
1440
+ },
1441
+ {
1442
+ "inputs": [
1443
+ {
1444
+ "internalType": "address",
1445
+ "name": "user",
1446
+ "type": "address"
1447
+ },
1448
+ {
1449
+ "internalType": "uint256",
1450
+ "name": "positionId",
1451
+ "type": "uint256"
1452
+ }
1453
+ ],
1454
+ "name": "getPositionBalance",
1455
+ "outputs": [
1456
+ {
1457
+ "internalType": "uint256",
1458
+ "name": "",
1459
+ "type": "uint256"
1460
+ }
1461
+ ],
1462
+ "stateMutability": "view",
1463
+ "type": "function"
1464
+ },
1465
+ {
1466
+ "inputs": [
1467
+ {
1468
+ "internalType": "address",
1469
+ "name": "user",
1470
+ "type": "address"
1471
+ },
1472
+ {
1473
+ "internalType": "uint256[]",
1474
+ "name": "positionIds",
1475
+ "type": "uint256[]"
1476
+ }
1477
+ ],
1478
+ "name": "getPositionBalances",
1479
+ "outputs": [
1480
+ {
1481
+ "internalType": "uint256[]",
1482
+ "name": "balances",
1483
+ "type": "uint256[]"
1484
+ }
1485
+ ],
1486
+ "stateMutability": "view",
1487
+ "type": "function"
1488
+ },
1489
+ {
1490
+ "inputs": [
1491
+ {
1492
+ "internalType": "address",
1493
+ "name": "user",
1494
+ "type": "address"
1495
+ }
1496
+ ],
1497
+ "name": "getPositionIds",
1498
+ "outputs": [
1499
+ {
1500
+ "internalType": "uint256[]",
1501
+ "name": "positionIds",
1502
+ "type": "uint256[]"
1503
+ }
1504
+ ],
1505
+ "stateMutability": "view",
1506
+ "type": "function"
1507
+ },
1508
+ {
1509
+ "inputs": [
1510
+ {
1511
+ "internalType": "uint256",
1512
+ "name": "positionId",
1513
+ "type": "uint256"
1514
+ }
1515
+ ],
1516
+ "name": "getPositionLiquidationConfigOverride",
1517
+ "outputs": [
1518
+ {
1519
+ "internalType": "bool",
1520
+ "name": "isSet",
1521
+ "type": "bool"
1522
+ },
1523
+ {
1524
+ "internalType": "uint256",
1525
+ "name": "maxLiquidationBonusBps",
1526
+ "type": "uint256"
1527
+ },
1528
+ {
1529
+ "internalType": "uint256",
1530
+ "name": "liquidationFeeBps",
1531
+ "type": "uint256"
1532
+ }
1533
+ ],
1534
+ "stateMutability": "view",
1535
+ "type": "function"
1536
+ },
1537
+ {
1538
+ "inputs": [
1539
+ {
1540
+ "internalType": "uint256",
1541
+ "name": "positionId",
1542
+ "type": "uint256"
1543
+ }
1544
+ ],
1545
+ "name": "getPositionLtvOverride",
1546
+ "outputs": [
1547
+ {
1548
+ "internalType": "bool",
1549
+ "name": "isSet",
1550
+ "type": "bool"
1551
+ },
1552
+ {
1553
+ "internalType": "uint256",
1554
+ "name": "ltv",
1555
+ "type": "uint256"
1556
+ }
1557
+ ],
1558
+ "stateMutability": "view",
1559
+ "type": "function"
1560
+ },
1561
+ {
1562
+ "inputs": [
1563
+ {
1564
+ "internalType": "address",
1565
+ "name": "user",
1566
+ "type": "address"
1567
+ }
1568
+ ],
1569
+ "name": "getPositions",
1570
+ "outputs": [
1571
+ {
1572
+ "internalType": "uint256[]",
1573
+ "name": "positionIds",
1574
+ "type": "uint256[]"
1575
+ },
1576
+ {
1577
+ "internalType": "uint256[]",
1578
+ "name": "balances",
1579
+ "type": "uint256[]"
1580
+ }
1581
+ ],
1582
+ "stateMutability": "view",
1583
+ "type": "function"
1584
+ },
1585
+ {
1586
+ "inputs": [
1587
+ {
1588
+ "internalType": "address",
1589
+ "name": "user",
1590
+ "type": "address"
1591
+ }
1592
+ ],
1593
+ "name": "getScaledDebt",
1594
+ "outputs": [
1595
+ {
1596
+ "internalType": "uint256",
1597
+ "name": "",
1598
+ "type": "uint256"
1599
+ }
1600
+ ],
1601
+ "stateMutability": "view",
1602
+ "type": "function"
1603
+ },
1604
+ {
1605
+ "inputs": [
1606
+ {
1607
+ "internalType": "uint8",
1608
+ "name": "tier",
1609
+ "type": "uint8"
1610
+ }
1611
+ ],
1612
+ "name": "getTierLiquidationConfig",
1613
+ "outputs": [
1614
+ {
1615
+ "components": [
1616
+ {
1617
+ "internalType": "uint256",
1618
+ "name": "maxLiquidationBonusBps",
1619
+ "type": "uint256"
1620
+ },
1621
+ {
1622
+ "internalType": "uint256",
1623
+ "name": "liquidationFeeBps",
1624
+ "type": "uint256"
1625
+ }
1626
+ ],
1627
+ "internalType": "struct VarlaCore.TierLiquidationConfig",
1628
+ "name": "",
1629
+ "type": "tuple"
1630
+ }
1631
+ ],
1632
+ "stateMutability": "view",
1633
+ "type": "function"
1634
+ },
1635
+ {
1636
+ "inputs": [
1637
+ {
1638
+ "internalType": "address",
1639
+ "name": "user",
1640
+ "type": "address"
1641
+ },
1642
+ {
1643
+ "internalType": "uint256",
1644
+ "name": "expectedScaledDebt",
1645
+ "type": "uint256"
1646
+ }
1647
+ ],
1648
+ "name": "handleBadDebt",
1649
+ "outputs": [],
1650
+ "stateMutability": "nonpayable",
1651
+ "type": "function"
1652
+ },
1653
+ {
1654
+ "inputs": [
1655
+ {
1656
+ "internalType": "address",
1657
+ "name": "user",
1658
+ "type": "address"
1659
+ }
1660
+ ],
1661
+ "name": "isBorrower",
1662
+ "outputs": [
1663
+ {
1664
+ "internalType": "bool",
1665
+ "name": "",
1666
+ "type": "bool"
1667
+ }
1668
+ ],
1669
+ "stateMutability": "view",
1670
+ "type": "function"
1671
+ },
1672
+ {
1673
+ "inputs": [],
1674
+ "name": "isConsumingScheduledOp",
1675
+ "outputs": [
1676
+ {
1677
+ "internalType": "bytes4",
1678
+ "name": "",
1679
+ "type": "bytes4"
1680
+ }
1681
+ ],
1682
+ "stateMutability": "view",
1683
+ "type": "function"
1684
+ },
1685
+ {
1686
+ "inputs": [
1687
+ {
1688
+ "internalType": "address",
1689
+ "name": "user",
1690
+ "type": "address"
1691
+ }
1692
+ ],
1693
+ "name": "isLiquidatable",
1694
+ "outputs": [
1695
+ {
1696
+ "internalType": "bool",
1697
+ "name": "",
1698
+ "type": "bool"
1699
+ }
1700
+ ],
1701
+ "stateMutability": "view",
1702
+ "type": "function"
1703
+ },
1704
+ {
1705
+ "inputs": [],
1706
+ "name": "maxMaxPositions",
1707
+ "outputs": [
1708
+ {
1709
+ "internalType": "uint256",
1710
+ "name": "",
1711
+ "type": "uint256"
1712
+ }
1713
+ ],
1714
+ "stateMutability": "view",
1715
+ "type": "function"
1716
+ },
1717
+ {
1718
+ "inputs": [],
1719
+ "name": "maxPositions",
1720
+ "outputs": [
1721
+ {
1722
+ "internalType": "uint256",
1723
+ "name": "",
1724
+ "type": "uint256"
1725
+ }
1726
+ ],
1727
+ "stateMutability": "view",
1728
+ "type": "function"
1729
+ },
1730
+ {
1731
+ "inputs": [],
1732
+ "name": "minMaxPositions",
1733
+ "outputs": [
1734
+ {
1735
+ "internalType": "uint256",
1736
+ "name": "",
1737
+ "type": "uint256"
1738
+ }
1739
+ ],
1740
+ "stateMutability": "view",
1741
+ "type": "function"
1742
+ },
1743
+ {
1744
+ "inputs": [
1745
+ {
1746
+ "internalType": "address",
1747
+ "name": "",
1748
+ "type": "address"
1749
+ },
1750
+ {
1751
+ "internalType": "address",
1752
+ "name": "",
1753
+ "type": "address"
1754
+ },
1755
+ {
1756
+ "internalType": "uint256[]",
1757
+ "name": "",
1758
+ "type": "uint256[]"
1759
+ },
1760
+ {
1761
+ "internalType": "uint256[]",
1762
+ "name": "",
1763
+ "type": "uint256[]"
1764
+ },
1765
+ {
1766
+ "internalType": "bytes",
1767
+ "name": "",
1768
+ "type": "bytes"
1769
+ }
1770
+ ],
1771
+ "name": "onERC1155BatchReceived",
1772
+ "outputs": [
1773
+ {
1774
+ "internalType": "bytes4",
1775
+ "name": "",
1776
+ "type": "bytes4"
1777
+ }
1778
+ ],
1779
+ "stateMutability": "nonpayable",
1780
+ "type": "function"
1781
+ },
1782
+ {
1783
+ "inputs": [
1784
+ {
1785
+ "internalType": "address",
1786
+ "name": "",
1787
+ "type": "address"
1788
+ },
1789
+ {
1790
+ "internalType": "address",
1791
+ "name": "",
1792
+ "type": "address"
1793
+ },
1794
+ {
1795
+ "internalType": "uint256",
1796
+ "name": "",
1797
+ "type": "uint256"
1798
+ },
1799
+ {
1800
+ "internalType": "uint256",
1801
+ "name": "",
1802
+ "type": "uint256"
1803
+ },
1804
+ {
1805
+ "internalType": "bytes",
1806
+ "name": "",
1807
+ "type": "bytes"
1808
+ }
1809
+ ],
1810
+ "name": "onERC1155Received",
1811
+ "outputs": [
1812
+ {
1813
+ "internalType": "bytes4",
1814
+ "name": "",
1815
+ "type": "bytes4"
1816
+ }
1817
+ ],
1818
+ "stateMutability": "nonpayable",
1819
+ "type": "function"
1820
+ },
1821
+ {
1822
+ "inputs": [],
1823
+ "name": "oracle",
1824
+ "outputs": [
1825
+ {
1826
+ "internalType": "contract IVarlaOracle",
1827
+ "name": "",
1828
+ "type": "address"
1829
+ }
1830
+ ],
1831
+ "stateMutability": "view",
1832
+ "type": "function"
1833
+ },
1834
+ {
1835
+ "inputs": [],
1836
+ "name": "pool",
1837
+ "outputs": [
1838
+ {
1839
+ "internalType": "contract IVarlaPool",
1840
+ "name": "",
1841
+ "type": "address"
1842
+ }
1843
+ ],
1844
+ "stateMutability": "view",
1845
+ "type": "function"
1846
+ },
1847
+ {
1848
+ "inputs": [
1849
+ {
1850
+ "internalType": "address",
1851
+ "name": "",
1852
+ "type": "address"
1853
+ },
1854
+ {
1855
+ "internalType": "uint256",
1856
+ "name": "",
1857
+ "type": "uint256"
1858
+ }
1859
+ ],
1860
+ "name": "positionBalances",
1861
+ "outputs": [
1862
+ {
1863
+ "internalType": "uint256",
1864
+ "name": "",
1865
+ "type": "uint256"
1866
+ }
1867
+ ],
1868
+ "stateMutability": "view",
1869
+ "type": "function"
1870
+ },
1871
+ {
1872
+ "inputs": [],
1873
+ "name": "positionsToken",
1874
+ "outputs": [
1875
+ {
1876
+ "internalType": "contract IERC1155",
1877
+ "name": "",
1878
+ "type": "address"
1879
+ }
1880
+ ],
1881
+ "stateMutability": "view",
1882
+ "type": "function"
1883
+ },
1884
+ {
1885
+ "inputs": [
1886
+ {
1887
+ "internalType": "uint256",
1888
+ "name": "amount",
1889
+ "type": "uint256"
1890
+ }
1891
+ ],
1892
+ "name": "repay",
1893
+ "outputs": [],
1894
+ "stateMutability": "nonpayable",
1895
+ "type": "function"
1896
+ },
1897
+ {
1898
+ "inputs": [
1899
+ {
1900
+ "internalType": "address",
1901
+ "name": "user",
1902
+ "type": "address"
1903
+ },
1904
+ {
1905
+ "internalType": "uint256",
1906
+ "name": "amount",
1907
+ "type": "uint256"
1908
+ }
1909
+ ],
1910
+ "name": "repayOnBehalfFromLiquidation",
1911
+ "outputs": [
1912
+ {
1913
+ "internalType": "uint256",
1914
+ "name": "scaledRepayAmount",
1915
+ "type": "uint256"
1916
+ }
1917
+ ],
1918
+ "stateMutability": "nonpayable",
1919
+ "type": "function"
1920
+ },
1921
+ {
1922
+ "inputs": [
1923
+ {
1924
+ "internalType": "address",
1925
+ "name": "user",
1926
+ "type": "address"
1927
+ },
1928
+ {
1929
+ "internalType": "uint256[]",
1930
+ "name": "positionIds",
1931
+ "type": "uint256[]"
1932
+ },
1933
+ {
1934
+ "internalType": "uint256[]",
1935
+ "name": "amounts",
1936
+ "type": "uint256[]"
1937
+ },
1938
+ {
1939
+ "internalType": "address",
1940
+ "name": "recipient",
1941
+ "type": "address"
1942
+ }
1943
+ ],
1944
+ "name": "seizeCollateral",
1945
+ "outputs": [],
1946
+ "stateMutability": "nonpayable",
1947
+ "type": "function"
1948
+ },
1949
+ {
1950
+ "inputs": [
1951
+ {
1952
+ "internalType": "address",
1953
+ "name": "newAuthority",
1954
+ "type": "address"
1955
+ }
1956
+ ],
1957
+ "name": "setAuthority",
1958
+ "outputs": [],
1959
+ "stateMutability": "nonpayable",
1960
+ "type": "function"
1961
+ },
1962
+ {
1963
+ "inputs": [
1964
+ {
1965
+ "internalType": "uint256",
1966
+ "name": "conservative",
1967
+ "type": "uint256"
1968
+ },
1969
+ {
1970
+ "internalType": "uint256",
1971
+ "name": "moderate",
1972
+ "type": "uint256"
1973
+ },
1974
+ {
1975
+ "internalType": "uint256",
1976
+ "name": "risk",
1977
+ "type": "uint256"
1978
+ }
1979
+ ],
1980
+ "name": "setDefaultLtvConfig",
1981
+ "outputs": [],
1982
+ "stateMutability": "nonpayable",
1983
+ "type": "function"
1984
+ },
1985
+ {
1986
+ "inputs": [
1987
+ {
1988
+ "internalType": "uint256",
1989
+ "name": "targetHealthFactor",
1990
+ "type": "uint256"
1991
+ },
1992
+ {
1993
+ "internalType": "uint256",
1994
+ "name": "healthFactorForMaxBonus",
1995
+ "type": "uint256"
1996
+ },
1997
+ {
1998
+ "internalType": "uint256",
1999
+ "name": "liquidationBonusFactorBps",
2000
+ "type": "uint256"
2001
+ },
2002
+ {
2003
+ "internalType": "uint256",
2004
+ "name": "dustThreshold",
2005
+ "type": "uint256"
2006
+ },
2007
+ {
2008
+ "internalType": "uint256",
2009
+ "name": "collateralDustThreshold",
2010
+ "type": "uint256"
2011
+ }
2012
+ ],
2013
+ "name": "setLiquidationConfig",
2014
+ "outputs": [],
2015
+ "stateMutability": "nonpayable",
2016
+ "type": "function"
2017
+ },
2018
+ {
2019
+ "inputs": [
2020
+ {
2021
+ "internalType": "uint256",
2022
+ "name": "_maxPositions",
2023
+ "type": "uint256"
2024
+ }
2025
+ ],
2026
+ "name": "setMaxPositions",
2027
+ "outputs": [],
2028
+ "stateMutability": "nonpayable",
2029
+ "type": "function"
2030
+ },
2031
+ {
2032
+ "inputs": [
2033
+ {
2034
+ "internalType": "uint256",
2035
+ "name": "newMin",
2036
+ "type": "uint256"
2037
+ },
2038
+ {
2039
+ "internalType": "uint256",
2040
+ "name": "newMax",
2041
+ "type": "uint256"
2042
+ }
2043
+ ],
2044
+ "name": "setMaxPositionsBounds",
2045
+ "outputs": [],
2046
+ "stateMutability": "nonpayable",
2047
+ "type": "function"
2048
+ },
2049
+ {
2050
+ "inputs": [
2051
+ {
2052
+ "internalType": "address",
2053
+ "name": "_oracle",
2054
+ "type": "address"
2055
+ }
2056
+ ],
2057
+ "name": "setOracle",
2058
+ "outputs": [],
2059
+ "stateMutability": "nonpayable",
2060
+ "type": "function"
2061
+ },
2062
+ {
2063
+ "inputs": [
2064
+ {
2065
+ "internalType": "uint256",
2066
+ "name": "positionId",
2067
+ "type": "uint256"
2068
+ },
2069
+ {
2070
+ "internalType": "uint256",
2071
+ "name": "maxLiquidationBonusBps",
2072
+ "type": "uint256"
2073
+ },
2074
+ {
2075
+ "internalType": "uint256",
2076
+ "name": "liquidationFeeBps",
2077
+ "type": "uint256"
2078
+ }
2079
+ ],
2080
+ "name": "setPositionLiquidationConfigOverride",
2081
+ "outputs": [],
2082
+ "stateMutability": "nonpayable",
2083
+ "type": "function"
2084
+ },
2085
+ {
2086
+ "inputs": [
2087
+ {
2088
+ "internalType": "uint256",
2089
+ "name": "positionId",
2090
+ "type": "uint256"
2091
+ },
2092
+ {
2093
+ "internalType": "uint256",
2094
+ "name": "ltv",
2095
+ "type": "uint256"
2096
+ }
2097
+ ],
2098
+ "name": "setPositionLtvOverride",
2099
+ "outputs": [],
2100
+ "stateMutability": "nonpayable",
2101
+ "type": "function"
2102
+ },
2103
+ {
2104
+ "inputs": [
2105
+ {
2106
+ "internalType": "uint8",
2107
+ "name": "tier",
2108
+ "type": "uint8"
2109
+ },
2110
+ {
2111
+ "internalType": "uint256",
2112
+ "name": "maxLiquidationBonusBps",
2113
+ "type": "uint256"
2114
+ },
2115
+ {
2116
+ "internalType": "uint256",
2117
+ "name": "liquidationFeeBps",
2118
+ "type": "uint256"
2119
+ }
2120
+ ],
2121
+ "name": "setTierLiquidationConfig",
2122
+ "outputs": [],
2123
+ "stateMutability": "nonpayable",
2124
+ "type": "function"
2125
+ },
2126
+ {
2127
+ "inputs": [
2128
+ {
2129
+ "internalType": "bytes4",
2130
+ "name": "interfaceId",
2131
+ "type": "bytes4"
2132
+ }
2133
+ ],
2134
+ "name": "supportsInterface",
2135
+ "outputs": [
2136
+ {
2137
+ "internalType": "bool",
2138
+ "name": "",
2139
+ "type": "bool"
2140
+ }
2141
+ ],
2142
+ "stateMutability": "view",
2143
+ "type": "function"
2144
+ },
2145
+ {
2146
+ "inputs": [],
2147
+ "name": "totalScaledDebt",
2148
+ "outputs": [
2149
+ {
2150
+ "internalType": "uint256",
2151
+ "name": "",
2152
+ "type": "uint256"
2153
+ }
2154
+ ],
2155
+ "stateMutability": "view",
2156
+ "type": "function"
2157
+ },
2158
+ {
2159
+ "inputs": [
2160
+ {
2161
+ "internalType": "uint256[]",
2162
+ "name": "positionIds",
2163
+ "type": "uint256[]"
2164
+ },
2165
+ {
2166
+ "internalType": "uint256[]",
2167
+ "name": "amounts",
2168
+ "type": "uint256[]"
2169
+ }
2170
+ ],
2171
+ "name": "withdraw",
2172
+ "outputs": [],
2173
+ "stateMutability": "nonpayable",
2174
+ "type": "function"
2175
+ }
2176
+ ];