hedge-web3 0.1.26 → 0.1.27

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.
package/src/idl/vault.ts CHANGED
@@ -3,55 +3,45 @@ export type Vault = {
3
3
  "name": "vault",
4
4
  "instructions": [
5
5
  {
6
- "name": "initHedgeFoundation",
6
+ "name": "addCollateralType",
7
7
  "accounts": [
8
8
  {
9
- "name": "vaultSystemState",
10
- "isMut": true,
11
- "isSigner": false
12
- },
13
- {
14
- "name": "poolState",
15
- "isMut": true,
16
- "isSigner": false
17
- },
18
- {
19
- "name": "poolEra",
9
+ "name": "payer",
20
10
  "isMut": true,
21
11
  "isSigner": true
22
12
  },
23
13
  {
24
- "name": "poolUshAccount",
14
+ "name": "vaultSystemState",
25
15
  "isMut": true,
26
16
  "isSigner": false
27
17
  },
28
18
  {
29
- "name": "founder",
19
+ "name": "oracleInfoAccount",
30
20
  "isMut": true,
31
- "isSigner": true
21
+ "isSigner": false
32
22
  },
33
23
  {
34
- "name": "ushMint",
24
+ "name": "vaultTypeAccount",
35
25
  "isMut": true,
36
26
  "isSigner": false
37
27
  },
38
28
  {
39
- "name": "hedgeMint",
40
- "isMut": true,
29
+ "name": "collateralMint",
30
+ "isMut": false,
41
31
  "isSigner": false
42
32
  },
43
33
  {
44
- "name": "founderAssociatedHedgeTokenAccount",
45
- "isMut": true,
34
+ "name": "oracleChainlink",
35
+ "isMut": false,
46
36
  "isSigner": false
47
37
  },
48
38
  {
49
- "name": "communityAssociatedHedgeTokenAccount",
50
- "isMut": true,
39
+ "name": "oraclePyth",
40
+ "isMut": false,
51
41
  "isSigner": false
52
42
  },
53
43
  {
54
- "name": "associatedTokenProgram",
44
+ "name": "oracleSwitchboard",
55
45
  "isMut": false,
56
46
  "isSigner": false
57
47
  },
@@ -59,41 +49,84 @@ export type Vault = {
59
49
  "name": "systemProgram",
60
50
  "isMut": false,
61
51
  "isSigner": false
52
+ }
53
+ ],
54
+ "args": [
55
+ {
56
+ "name": "collateralType",
57
+ "type": "string"
62
58
  },
63
59
  {
64
- "name": "tokenProgram",
65
- "isMut": false,
66
- "isSigner": false
60
+ "name": "loanInitFee",
61
+ "type": "u64"
67
62
  },
68
63
  {
69
- "name": "rent",
70
- "isMut": false,
71
- "isSigner": false
64
+ "name": "minCollateralRatio",
65
+ "type": "u64"
66
+ },
67
+ {
68
+ "name": "interestRatePerSecond",
69
+ "type": "u128"
70
+ },
71
+ {
72
+ "name": "minDebtPerVault",
73
+ "type": "u64"
74
+ },
75
+ {
76
+ "name": "maxDebtExtended",
77
+ "type": "u64"
78
+ },
79
+ {
80
+ "name": "canBeRedeemed",
81
+ "type": "bool"
82
+ },
83
+ {
84
+ "name": "overrideCurrentTime",
85
+ "type": "i64"
72
86
  }
73
- ],
74
- "args": []
87
+ ]
75
88
  },
76
89
  {
77
- "name": "setHedgeTokenMetadata",
90
+ "name": "claimLiquidationPoolPosition",
78
91
  "accounts": [
79
92
  {
80
- "name": "metadataAccount",
93
+ "name": "vaultSystemState",
81
94
  "isMut": true,
82
95
  "isSigner": false
83
96
  },
84
97
  {
85
- "name": "mint",
98
+ "name": "poolState",
86
99
  "isMut": true,
87
100
  "isSigner": false
88
101
  },
89
102
  {
90
- "name": "payer",
103
+ "name": "poolAssociatedTokenAccount",
104
+ "isMut": true,
105
+ "isSigner": false
106
+ },
107
+ {
108
+ "name": "vaultTypeAccount",
109
+ "isMut": true,
110
+ "isSigner": false
111
+ },
112
+ {
113
+ "name": "collateralMint",
91
114
  "isMut": false,
115
+ "isSigner": false
116
+ },
117
+ {
118
+ "name": "poolPosition",
119
+ "isMut": true,
120
+ "isSigner": false
121
+ },
122
+ {
123
+ "name": "payer",
124
+ "isMut": true,
92
125
  "isSigner": true
93
126
  },
94
127
  {
95
- "name": "tokenMetadataProgram",
96
- "isMut": false,
128
+ "name": "payerAssociatedTokenAccount",
129
+ "isMut": true,
97
130
  "isSigner": false
98
131
  },
99
132
  {
@@ -120,28 +153,53 @@ export type Vault = {
120
153
  "args": []
121
154
  },
122
155
  {
123
- "name": "updateHedgeTokenMetadata",
156
+ "name": "claimStakingPoolPosition",
124
157
  "accounts": [
125
158
  {
126
- "name": "metadataAccount",
159
+ "name": "payer",
160
+ "isMut": true,
161
+ "isSigner": true
162
+ },
163
+ {
164
+ "name": "vaultSystemState",
127
165
  "isMut": true,
128
166
  "isSigner": false
129
167
  },
130
168
  {
131
- "name": "mint",
169
+ "name": "feePool",
132
170
  "isMut": true,
133
171
  "isSigner": false
134
172
  },
135
173
  {
136
- "name": "payer",
137
- "isMut": false,
138
- "isSigner": true
174
+ "name": "stakedTokenMint",
175
+ "isMut": true,
176
+ "isSigner": false
139
177
  },
140
178
  {
141
- "name": "tokenMetadataProgram",
179
+ "name": "feePoolAssociatedTokenAccount",
180
+ "isMut": true,
181
+ "isSigner": false
182
+ },
183
+ {
184
+ "name": "vaultTypeAccount",
185
+ "isMut": true,
186
+ "isSigner": false
187
+ },
188
+ {
189
+ "name": "collateralMint",
142
190
  "isMut": false,
143
191
  "isSigner": false
144
192
  },
193
+ {
194
+ "name": "poolPosition",
195
+ "isMut": true,
196
+ "isSigner": false
197
+ },
198
+ {
199
+ "name": "payerAssociatedTokenAccount",
200
+ "isMut": true,
201
+ "isSigner": false
202
+ },
145
203
  {
146
204
  "name": "associatedTokenProgram",
147
205
  "isMut": false,
@@ -166,72 +224,61 @@ export type Vault = {
166
224
  "args": []
167
225
  },
168
226
  {
169
- "name": "setUshTokenMetadata",
227
+ "name": "closeLiquidationPoolPosition",
170
228
  "accounts": [
171
229
  {
172
- "name": "metadataAccount",
230
+ "name": "vaultSystemState",
173
231
  "isMut": true,
174
232
  "isSigner": false
175
233
  },
176
234
  {
177
- "name": "mint",
235
+ "name": "poolState",
178
236
  "isMut": true,
179
237
  "isSigner": false
180
238
  },
181
239
  {
182
- "name": "payer",
183
- "isMut": false,
184
- "isSigner": true
185
- },
186
- {
187
- "name": "tokenMetadataProgram",
188
- "isMut": false,
240
+ "name": "poolEra",
241
+ "isMut": true,
189
242
  "isSigner": false
190
243
  },
191
244
  {
192
- "name": "associatedTokenProgram",
193
- "isMut": false,
245
+ "name": "poolPosition",
246
+ "isMut": true,
194
247
  "isSigner": false
195
248
  },
196
249
  {
197
- "name": "systemProgram",
198
- "isMut": false,
250
+ "name": "poolUshAccount",
251
+ "isMut": true,
199
252
  "isSigner": false
200
253
  },
201
254
  {
202
- "name": "tokenProgram",
203
- "isMut": false,
204
- "isSigner": false
255
+ "name": "payer",
256
+ "isMut": true,
257
+ "isSigner": true
205
258
  },
206
259
  {
207
- "name": "rent",
208
- "isMut": false,
260
+ "name": "ownerUshAccount",
261
+ "isMut": true,
209
262
  "isSigner": false
210
- }
211
- ],
212
- "args": []
213
- },
214
- {
215
- "name": "updateUshTokenMetadata",
216
- "accounts": [
263
+ },
217
264
  {
218
- "name": "metadataAccount",
265
+ "name": "hedgeMint",
219
266
  "isMut": true,
220
267
  "isSigner": false
221
268
  },
222
269
  {
223
- "name": "mint",
270
+ "name": "ushMint",
224
271
  "isMut": true,
225
272
  "isSigner": false
226
273
  },
227
274
  {
228
- "name": "payer",
229
- "isMut": false,
230
- "isSigner": true
275
+ "name": "payerAssociatedHedgeAccount",
276
+ "isMut": true,
277
+ "isSigner": false
231
278
  },
232
279
  {
233
- "name": "tokenMetadataProgram",
234
- "isMut": false,
280
+ "name": "communityAssociatedHedgeTokenAccount",
281
+ "isMut": true,
235
282
  "isSigner": false
236
283
  },
237
284
  {
@@ -255,7 +302,12 @@ export type Vault = {
255
302
  "isSigner": false
256
303
  }
257
304
  ],
258
- "args": []
305
+ "args": [
306
+ {
307
+ "name": "overrideCurrentTime",
308
+ "type": "i64"
309
+ }
310
+ ]
259
311
  },
260
312
  {
261
313
  "name": "createStakingPool",
@@ -336,120 +388,139 @@ export type Vault = {
336
388
  ]
337
389
  },
338
390
  {
339
- "name": "depositStakingPool",
391
+ "name": "createVault",
340
392
  "accounts": [
341
393
  {
342
- "name": "payer",
394
+ "name": "vaultSystemState",
343
395
  "isMut": true,
344
- "isSigner": true
396
+ "isSigner": false
345
397
  },
346
398
  {
347
- "name": "pool",
399
+ "name": "vaultTypeAccount",
348
400
  "isMut": true,
349
401
  "isSigner": false
350
402
  },
351
403
  {
352
- "name": "poolPosition",
404
+ "name": "vault",
353
405
  "isMut": true,
354
- "isSigner": true
406
+ "isSigner": false
355
407
  },
356
408
  {
357
- "name": "payerAssociatedStakedTokenAccount",
409
+ "name": "vaultAssociatedTokenAccount",
358
410
  "isMut": true,
359
411
  "isSigner": false
360
412
  },
361
413
  {
362
- "name": "poolAssociatedStakedTokenAccount",
414
+ "name": "feePool",
363
415
  "isMut": true,
364
416
  "isSigner": false
365
417
  },
366
418
  {
367
- "name": "systemProgram",
368
- "isMut": false,
419
+ "name": "feePoolAssociatedUshTokenAccount",
420
+ "isMut": true,
369
421
  "isSigner": false
370
422
  },
371
423
  {
372
- "name": "tokenProgram",
373
- "isMut": false,
424
+ "name": "ushMint",
425
+ "isMut": true,
374
426
  "isSigner": false
375
- }
376
- ],
377
- "args": [
378
- {
379
- "name": "stakeAmount",
380
- "type": "u64"
381
427
  },
382
428
  {
383
- "name": "overrideCurrentTime",
384
- "type": "i64"
385
- }
386
- ]
387
- },
388
- {
389
- "name": "withdrawStakingPool",
390
- "accounts": [
429
+ "name": "history",
430
+ "isMut": true,
431
+ "isSigner": true
432
+ },
391
433
  {
392
434
  "name": "payer",
393
435
  "isMut": true,
394
436
  "isSigner": true
395
437
  },
396
438
  {
397
- "name": "vaultSystemState",
439
+ "name": "payerTokenAccount",
398
440
  "isMut": true,
399
441
  "isSigner": false
400
442
  },
401
443
  {
402
- "name": "pool",
444
+ "name": "collateralMint",
403
445
  "isMut": true,
404
446
  "isSigner": false
405
447
  },
406
448
  {
407
- "name": "poolPosition",
408
- "isMut": true,
449
+ "name": "associatedTokenProgram",
450
+ "isMut": false,
409
451
  "isSigner": false
410
452
  },
411
453
  {
412
- "name": "hedgeMint",
413
- "isMut": true,
454
+ "name": "systemProgram",
455
+ "isMut": false,
414
456
  "isSigner": false
415
457
  },
416
458
  {
417
- "name": "stakedTokenMint",
418
- "isMut": true,
459
+ "name": "tokenProgram",
460
+ "isMut": false,
419
461
  "isSigner": false
420
462
  },
421
463
  {
422
- "name": "ushMint",
464
+ "name": "rent",
423
465
  "isMut": false,
424
466
  "isSigner": false
467
+ }
468
+ ],
469
+ "args": [
470
+ {
471
+ "name": "pdaSalt",
472
+ "type": "string"
425
473
  },
426
474
  {
427
- "name": "payerAssociatedStakedTokenAccount",
475
+ "name": "depositAmount",
476
+ "type": "u64"
477
+ },
478
+ {
479
+ "name": "overrideCurrentTime",
480
+ "type": "i64"
481
+ }
482
+ ]
483
+ },
484
+ {
485
+ "name": "depositLiquidationPool",
486
+ "accounts": [
487
+ {
488
+ "name": "vaultSystemState",
428
489
  "isMut": true,
429
490
  "isSigner": false
430
491
  },
431
492
  {
432
- "name": "payerAssociatedHedgeAccount",
493
+ "name": "poolState",
433
494
  "isMut": true,
434
495
  "isSigner": false
435
496
  },
436
497
  {
437
- "name": "payerAssociatedUshAccount",
498
+ "name": "poolUshAccount",
438
499
  "isMut": true,
439
500
  "isSigner": false
440
501
  },
441
502
  {
442
- "name": "poolAssociatedStakedTokenAccount",
503
+ "name": "poolEra",
443
504
  "isMut": true,
444
505
  "isSigner": false
445
506
  },
446
507
  {
447
- "name": "poolAssociatedUshTokenAccount",
508
+ "name": "poolPosition",
509
+ "isMut": true,
510
+ "isSigner": true
511
+ },
512
+ {
513
+ "name": "ushMint",
448
514
  "isMut": true,
449
515
  "isSigner": false
450
516
  },
451
517
  {
452
- "name": "communityAssociatedHedgeTokenAccount",
518
+ "name": "payer",
519
+ "isMut": true,
520
+ "isSigner": true
521
+ },
522
+ {
523
+ "name": "ownerUshAccount",
453
524
  "isMut": true,
454
525
  "isSigner": false
455
526
  },
@@ -465,6 +536,10 @@ export type Vault = {
465
536
  }
466
537
  ],
467
538
  "args": [
539
+ {
540
+ "name": "depositAmount",
541
+ "type": "u64"
542
+ },
468
543
  {
469
544
  "name": "overrideCurrentTime",
470
545
  "type": "i64"
@@ -472,68 +547,43 @@ export type Vault = {
472
547
  ]
473
548
  },
474
549
  {
475
- "name": "createVault",
550
+ "name": "depositStakingPool",
476
551
  "accounts": [
477
552
  {
478
- "name": "vaultSystemState",
479
- "isMut": true,
480
- "isSigner": false
481
- },
482
- {
483
- "name": "vaultTypeAccount",
484
- "isMut": true,
485
- "isSigner": false
486
- },
487
- {
488
- "name": "vault",
489
- "isMut": true,
490
- "isSigner": false
491
- },
492
- {
493
- "name": "vaultAssociatedTokenAccount",
553
+ "name": "payer",
494
554
  "isMut": true,
495
- "isSigner": false
555
+ "isSigner": true
496
556
  },
497
557
  {
498
- "name": "feePool",
558
+ "name": "vaultSystemState",
499
559
  "isMut": true,
500
560
  "isSigner": false
501
561
  },
502
562
  {
503
- "name": "feePoolAssociatedUshTokenAccount",
563
+ "name": "pool",
504
564
  "isMut": true,
505
565
  "isSigner": false
506
566
  },
507
567
  {
508
- "name": "ushMint",
509
- "isMut": true,
568
+ "name": "stakedTokenMintInfo",
569
+ "isMut": false,
510
570
  "isSigner": false
511
571
  },
512
572
  {
513
- "name": "history",
514
- "isMut": true,
515
- "isSigner": true
516
- },
517
- {
518
- "name": "payer",
573
+ "name": "poolPosition",
519
574
  "isMut": true,
520
575
  "isSigner": true
521
576
  },
522
577
  {
523
- "name": "payerTokenAccount",
578
+ "name": "payerAssociatedStakedTokenAccount",
524
579
  "isMut": true,
525
580
  "isSigner": false
526
581
  },
527
582
  {
528
- "name": "collateralMint",
583
+ "name": "poolAssociatedStakedTokenAccount",
529
584
  "isMut": true,
530
585
  "isSigner": false
531
586
  },
532
- {
533
- "name": "associatedTokenProgram",
534
- "isMut": false,
535
- "isSigner": false
536
- },
537
587
  {
538
588
  "name": "systemProgram",
539
589
  "isMut": false,
@@ -543,20 +593,11 @@ export type Vault = {
543
593
  "name": "tokenProgram",
544
594
  "isMut": false,
545
595
  "isSigner": false
546
- },
547
- {
548
- "name": "rent",
549
- "isMut": false,
550
- "isSigner": false
551
596
  }
552
597
  ],
553
598
  "args": [
554
599
  {
555
- "name": "pdaSalt",
556
- "type": "string"
557
- },
558
- {
559
- "name": "depositAmount",
600
+ "name": "stakeAmount",
560
601
  "type": "u64"
561
602
  },
562
603
  {
@@ -651,7 +692,7 @@ export type Vault = {
651
692
  ]
652
693
  },
653
694
  {
654
- "name": "withdrawVault",
695
+ "name": "initHedgeFoundation",
655
696
  "accounts": [
656
697
  {
657
698
  "name": "vaultSystemState",
@@ -659,53 +700,38 @@ export type Vault = {
659
700
  "isSigner": false
660
701
  },
661
702
  {
662
- "name": "vaultTypeAccount",
663
- "isMut": true,
664
- "isSigner": false
665
- },
666
- {
667
- "name": "vaultTypeAssociatedTokenAccount",
668
- "isMut": true,
669
- "isSigner": false
670
- },
671
- {
672
- "name": "vault",
673
- "isMut": true,
674
- "isSigner": false
675
- },
676
- {
677
- "name": "vaultAssociatedTokenAccount",
703
+ "name": "poolState",
678
704
  "isMut": true,
679
705
  "isSigner": false
680
706
  },
681
707
  {
682
- "name": "feePool",
708
+ "name": "poolEra",
683
709
  "isMut": true,
684
- "isSigner": false
710
+ "isSigner": true
685
711
  },
686
712
  {
687
- "name": "feePoolAssociatedUshTokenAccount",
713
+ "name": "poolUshAccount",
688
714
  "isMut": true,
689
715
  "isSigner": false
690
716
  },
691
717
  {
692
- "name": "history",
718
+ "name": "founder",
693
719
  "isMut": true,
694
720
  "isSigner": true
695
721
  },
696
722
  {
697
- "name": "vaultOwner",
723
+ "name": "ushMint",
698
724
  "isMut": true,
699
- "isSigner": true
725
+ "isSigner": false
700
726
  },
701
727
  {
702
- "name": "destinationTokenAccount",
728
+ "name": "hedgeMint",
703
729
  "isMut": true,
704
730
  "isSigner": false
705
731
  },
706
732
  {
707
- "name": "ushMint",
708
- "isMut": true,
733
+ "name": "associatedTokenProgram",
734
+ "isMut": false,
709
735
  "isSigner": false
710
736
  },
711
737
  {
@@ -717,75 +743,46 @@ export type Vault = {
717
743
  "name": "tokenProgram",
718
744
  "isMut": false,
719
745
  "isSigner": false
720
- }
721
- ],
722
- "args": [
723
- {
724
- "name": "withdrawAmount",
725
- "type": "u64"
726
746
  },
727
747
  {
728
- "name": "overrideCurrentTime",
729
- "type": "i64"
748
+ "name": "rent",
749
+ "isMut": false,
750
+ "isSigner": false
730
751
  }
731
- ]
752
+ ],
753
+ "args": []
732
754
  },
733
755
  {
734
- "name": "loanVault",
756
+ "name": "initHedgeFoundationTokens",
735
757
  "accounts": [
736
758
  {
737
759
  "name": "vaultSystemState",
738
- "isMut": true,
739
- "isSigner": false
740
- },
741
- {
742
- "name": "vaultTypeAccount",
743
- "isMut": true,
744
- "isSigner": false
745
- },
746
- {
747
- "name": "vaultTypeAssociatedTokenAccount",
748
- "isMut": true,
749
- "isSigner": false
750
- },
751
- {
752
- "name": "vaultAccount",
753
- "isMut": true,
754
- "isSigner": false
755
- },
756
- {
757
- "name": "vaultAssociatedTokenAccount",
758
- "isMut": true,
760
+ "isMut": false,
759
761
  "isSigner": false
760
762
  },
761
763
  {
762
- "name": "history",
764
+ "name": "founder",
763
765
  "isMut": true,
764
766
  "isSigner": true
765
767
  },
766
768
  {
767
- "name": "feePool",
769
+ "name": "hedgeMint",
768
770
  "isMut": true,
769
771
  "isSigner": false
770
772
  },
771
773
  {
772
- "name": "feePoolAssociatedUshTokenAccount",
774
+ "name": "founderAssociatedHedgeTokenAccount",
773
775
  "isMut": true,
774
776
  "isSigner": false
775
777
  },
776
778
  {
777
- "name": "ushMint",
779
+ "name": "communityAssociatedHedgeTokenAccount",
778
780
  "isMut": true,
779
781
  "isSigner": false
780
782
  },
781
783
  {
782
- "name": "vaultOwner",
783
- "isMut": true,
784
- "isSigner": true
785
- },
786
- {
787
- "name": "ownerUshAccount",
788
- "isMut": true,
784
+ "name": "associatedTokenProgram",
785
+ "isMut": false,
789
786
  "isSigner": false
790
787
  },
791
788
  {
@@ -797,21 +794,17 @@ export type Vault = {
797
794
  "name": "tokenProgram",
798
795
  "isMut": false,
799
796
  "isSigner": false
800
- }
801
- ],
802
- "args": [
803
- {
804
- "name": "normalizedLoanAmount",
805
- "type": "u64"
806
797
  },
807
798
  {
808
- "name": "overrideCurrentTime",
809
- "type": "i64"
799
+ "name": "rent",
800
+ "isMut": false,
801
+ "isSigner": false
810
802
  }
811
- ]
803
+ ],
804
+ "args": []
812
805
  },
813
806
  {
814
- "name": "repayVault",
807
+ "name": "loanVault",
815
808
  "accounts": [
816
809
  {
817
810
  "name": "vaultSystemState",
@@ -839,19 +832,19 @@ export type Vault = {
839
832
  "isSigner": false
840
833
  },
841
834
  {
842
- "name": "feePool",
835
+ "name": "history",
843
836
  "isMut": true,
844
- "isSigner": false
837
+ "isSigner": true
845
838
  },
846
839
  {
847
- "name": "feePoolAssociatedUshTokenAccount",
840
+ "name": "feePool",
848
841
  "isMut": true,
849
842
  "isSigner": false
850
843
  },
851
844
  {
852
- "name": "history",
845
+ "name": "feePoolAssociatedUshTokenAccount",
853
846
  "isMut": true,
854
- "isSigner": true
847
+ "isSigner": false
855
848
  },
856
849
  {
857
850
  "name": "ushMint",
@@ -881,7 +874,7 @@ export type Vault = {
881
874
  ],
882
875
  "args": [
883
876
  {
884
- "name": "repayAmount",
877
+ "name": "normalizedLoanAmount",
885
878
  "type": "u64"
886
879
  },
887
880
  {
@@ -976,113 +969,53 @@ export type Vault = {
976
969
  ]
977
970
  },
978
971
  {
979
- "name": "depositLiquidationPool",
972
+ "name": "liquidateVault",
980
973
  "accounts": [
981
974
  {
982
- "name": "poolState",
975
+ "name": "vaultSystemState",
983
976
  "isMut": true,
984
977
  "isSigner": false
985
978
  },
986
979
  {
987
- "name": "poolUshAccount",
980
+ "name": "vaultTypeAccount",
988
981
  "isMut": true,
989
982
  "isSigner": false
990
983
  },
991
984
  {
992
- "name": "poolEra",
985
+ "name": "vaultTypeAssociatedTokenAccount",
993
986
  "isMut": true,
994
987
  "isSigner": false
995
988
  },
996
989
  {
997
- "name": "poolPosition",
990
+ "name": "collateralMint",
998
991
  "isMut": true,
999
- "isSigner": true
992
+ "isSigner": false
1000
993
  },
1001
994
  {
1002
- "name": "ushMint",
995
+ "name": "vaultAccount",
1003
996
  "isMut": true,
1004
997
  "isSigner": false
1005
998
  },
1006
999
  {
1007
- "name": "payer",
1000
+ "name": "vaultAssociatedTokenAccount",
1008
1001
  "isMut": true,
1009
- "isSigner": true
1002
+ "isSigner": false
1010
1003
  },
1011
1004
  {
1012
- "name": "ownerUshAccount",
1005
+ "name": "poolState",
1013
1006
  "isMut": true,
1014
1007
  "isSigner": false
1015
1008
  },
1016
1009
  {
1017
- "name": "systemProgram",
1018
- "isMut": false,
1010
+ "name": "poolAssociatedTokenAccount",
1011
+ "isMut": true,
1019
1012
  "isSigner": false
1020
1013
  },
1021
1014
  {
1022
- "name": "tokenProgram",
1023
- "isMut": false,
1015
+ "name": "feePool",
1016
+ "isMut": true,
1024
1017
  "isSigner": false
1025
- }
1026
- ],
1027
- "args": [
1028
- {
1029
- "name": "depositAmount",
1030
- "type": "u64"
1031
- },
1032
- {
1033
- "name": "overrideCurrentTime",
1034
- "type": "i64"
1035
- }
1036
- ]
1037
- },
1038
- {
1039
- "name": "liquidateVaultPrepAccounts",
1040
- "accounts": [
1041
- {
1042
- "name": "vaultSystemState",
1043
- "isMut": true,
1044
- "isSigner": false
1045
- },
1046
- {
1047
- "name": "vaultTypeAccount",
1048
- "isMut": true,
1049
- "isSigner": false
1050
- },
1051
- {
1052
- "name": "vaultTypeAssociatedTokenAccount",
1053
- "isMut": true,
1054
- "isSigner": false
1055
- },
1056
- {
1057
- "name": "collateralMint",
1058
- "isMut": true,
1059
- "isSigner": false
1060
- },
1061
- {
1062
- "name": "vaultAccount",
1063
- "isMut": true,
1064
- "isSigner": false
1065
- },
1066
- {
1067
- "name": "vaultAssociatedTokenAccount",
1068
- "isMut": true,
1069
- "isSigner": false
1070
- },
1071
- {
1072
- "name": "poolState",
1073
- "isMut": true,
1074
- "isSigner": false
1075
- },
1076
- {
1077
- "name": "poolAssociatedTokenAccount",
1078
- "isMut": true,
1079
- "isSigner": false
1080
- },
1081
- {
1082
- "name": "feePool",
1083
- "isMut": true,
1084
- "isSigner": false
1085
- },
1018
+ },
1086
1019
  {
1087
1020
  "name": "feePoolAssociatedTokenAccount",
1088
1021
  "isMut": true,
@@ -1149,13 +1082,18 @@ export type Vault = {
1149
1082
  "isSigner": false
1150
1083
  }
1151
1084
  ],
1152
- "args": []
1085
+ "args": [
1086
+ {
1087
+ "name": "overrideCurrentTime",
1088
+ "type": "i64"
1089
+ }
1090
+ ]
1153
1091
  },
1154
1092
  {
1155
- "name": "liquidateVault",
1093
+ "name": "refreshOraclePrice",
1156
1094
  "accounts": [
1157
1095
  {
1158
- "name": "vaultSystemState",
1096
+ "name": "oracleInfoAccount",
1159
1097
  "isMut": true,
1160
1098
  "isSigner": false
1161
1099
  },
@@ -1165,42 +1103,67 @@ export type Vault = {
1165
1103
  "isSigner": false
1166
1104
  },
1167
1105
  {
1168
- "name": "vaultTypeAssociatedTokenAccount",
1169
- "isMut": true,
1106
+ "name": "oracleChainlink",
1107
+ "isMut": false,
1170
1108
  "isSigner": false
1171
1109
  },
1172
1110
  {
1173
- "name": "collateralMint",
1174
- "isMut": true,
1111
+ "name": "oraclePyth",
1112
+ "isMut": false,
1175
1113
  "isSigner": false
1176
1114
  },
1177
1115
  {
1178
- "name": "vaultAccount",
1116
+ "name": "oracleSwitchboard",
1117
+ "isMut": false,
1118
+ "isSigner": false
1119
+ },
1120
+ {
1121
+ "name": "systemProgram",
1122
+ "isMut": false,
1123
+ "isSigner": false
1124
+ }
1125
+ ],
1126
+ "args": [
1127
+ {
1128
+ "name": "overrideResult",
1129
+ "type": "u64"
1130
+ },
1131
+ {
1132
+ "name": "overrideCurrentTime",
1133
+ "type": "i64"
1134
+ }
1135
+ ]
1136
+ },
1137
+ {
1138
+ "name": "repayVault",
1139
+ "accounts": [
1140
+ {
1141
+ "name": "vaultSystemState",
1179
1142
  "isMut": true,
1180
1143
  "isSigner": false
1181
1144
  },
1182
1145
  {
1183
- "name": "vaultAssociatedTokenAccount",
1146
+ "name": "vaultTypeAccount",
1184
1147
  "isMut": true,
1185
1148
  "isSigner": false
1186
1149
  },
1187
1150
  {
1188
- "name": "poolState",
1151
+ "name": "vaultTypeAssociatedTokenAccount",
1189
1152
  "isMut": true,
1190
1153
  "isSigner": false
1191
1154
  },
1192
1155
  {
1193
- "name": "poolAssociatedTokenAccount",
1156
+ "name": "vaultAccount",
1194
1157
  "isMut": true,
1195
1158
  "isSigner": false
1196
1159
  },
1197
1160
  {
1198
- "name": "feePool",
1161
+ "name": "vaultAssociatedTokenAccount",
1199
1162
  "isMut": true,
1200
1163
  "isSigner": false
1201
1164
  },
1202
1165
  {
1203
- "name": "feePoolAssociatedTokenAccount",
1166
+ "name": "feePool",
1204
1167
  "isMut": true,
1205
1168
  "isSigner": false
1206
1169
  },
@@ -1210,9 +1173,9 @@ export type Vault = {
1210
1173
  "isSigner": false
1211
1174
  },
1212
1175
  {
1213
- "name": "liquidationPoolUshAccount",
1176
+ "name": "history",
1214
1177
  "isMut": true,
1215
- "isSigner": false
1178
+ "isSigner": true
1216
1179
  },
1217
1180
  {
1218
1181
  "name": "ushMint",
@@ -1220,19 +1183,49 @@ export type Vault = {
1220
1183
  "isSigner": false
1221
1184
  },
1222
1185
  {
1223
- "name": "poolEra",
1186
+ "name": "vaultOwner",
1187
+ "isMut": true,
1188
+ "isSigner": true
1189
+ },
1190
+ {
1191
+ "name": "ownerUshAccount",
1224
1192
  "isMut": true,
1225
1193
  "isSigner": false
1226
1194
  },
1227
1195
  {
1228
- "name": "newEra",
1196
+ "name": "systemProgram",
1197
+ "isMut": false,
1198
+ "isSigner": false
1199
+ },
1200
+ {
1201
+ "name": "tokenProgram",
1202
+ "isMut": false,
1203
+ "isSigner": false
1204
+ }
1205
+ ],
1206
+ "args": [
1207
+ {
1208
+ "name": "repayAmount",
1209
+ "type": "u64"
1210
+ },
1211
+ {
1212
+ "name": "overrideCurrentTime",
1213
+ "type": "i64"
1214
+ }
1215
+ ]
1216
+ },
1217
+ {
1218
+ "name": "setTokenMetadata",
1219
+ "accounts": [
1220
+ {
1221
+ "name": "metadataAccount",
1229
1222
  "isMut": true,
1230
- "isSigner": true
1223
+ "isSigner": false
1231
1224
  },
1232
1225
  {
1233
- "name": "history",
1226
+ "name": "mint",
1234
1227
  "isMut": true,
1235
- "isSigner": true
1228
+ "isSigner": false
1236
1229
  },
1237
1230
  {
1238
1231
  "name": "payer",
@@ -1240,10 +1233,15 @@ export type Vault = {
1240
1233
  "isSigner": true
1241
1234
  },
1242
1235
  {
1243
- "name": "payerAssociatedTokenAccount",
1236
+ "name": "vaultSystemState",
1244
1237
  "isMut": true,
1245
1238
  "isSigner": false
1246
1239
  },
1240
+ {
1241
+ "name": "tokenMetadataProgram",
1242
+ "isMut": false,
1243
+ "isSigner": false
1244
+ },
1247
1245
  {
1248
1246
  "name": "associatedTokenProgram",
1249
1247
  "isMut": false,
@@ -1267,26 +1265,63 @@ export type Vault = {
1267
1265
  ],
1268
1266
  "args": [
1269
1267
  {
1270
- "name": "overrideCurrentTime",
1271
- "type": "i64"
1268
+ "name": "mintPdaSeed",
1269
+ "type": "string"
1270
+ },
1271
+ {
1272
+ "name": "tokenName",
1273
+ "type": "string"
1274
+ },
1275
+ {
1276
+ "name": "tokenSymbol",
1277
+ "type": "string"
1278
+ },
1279
+ {
1280
+ "name": "tokenUri",
1281
+ "type": "string"
1282
+ },
1283
+ {
1284
+ "name": "firstTime",
1285
+ "type": "bool"
1272
1286
  }
1273
1287
  ]
1274
1288
  },
1275
1289
  {
1276
- "name": "closeLiquidationPoolPosition",
1290
+ "name": "setHalted",
1277
1291
  "accounts": [
1292
+ {
1293
+ "name": "payer",
1294
+ "isMut": true,
1295
+ "isSigner": true
1296
+ },
1278
1297
  {
1279
1298
  "name": "vaultSystemState",
1280
1299
  "isMut": true,
1281
1300
  "isSigner": false
1301
+ }
1302
+ ],
1303
+ "args": [
1304
+ {
1305
+ "name": "halted",
1306
+ "type": "bool"
1307
+ }
1308
+ ]
1309
+ },
1310
+ {
1311
+ "name": "withdrawStakingPool",
1312
+ "accounts": [
1313
+ {
1314
+ "name": "payer",
1315
+ "isMut": true,
1316
+ "isSigner": true
1282
1317
  },
1283
1318
  {
1284
- "name": "poolState",
1319
+ "name": "vaultSystemState",
1285
1320
  "isMut": true,
1286
1321
  "isSigner": false
1287
1322
  },
1288
1323
  {
1289
- "name": "poolEra",
1324
+ "name": "pool",
1290
1325
  "isMut": true,
1291
1326
  "isSigner": false
1292
1327
  },
@@ -1296,22 +1331,22 @@ export type Vault = {
1296
1331
  "isSigner": false
1297
1332
  },
1298
1333
  {
1299
- "name": "poolUshAccount",
1334
+ "name": "hedgeMint",
1300
1335
  "isMut": true,
1301
1336
  "isSigner": false
1302
1337
  },
1303
1338
  {
1304
- "name": "payer",
1339
+ "name": "stakedTokenMint",
1305
1340
  "isMut": true,
1306
- "isSigner": true
1341
+ "isSigner": false
1307
1342
  },
1308
1343
  {
1309
- "name": "ownerUshAccount",
1310
- "isMut": true,
1344
+ "name": "ushMint",
1345
+ "isMut": false,
1311
1346
  "isSigner": false
1312
1347
  },
1313
1348
  {
1314
- "name": "hedgeMint",
1349
+ "name": "payerAssociatedStakedTokenAccount",
1315
1350
  "isMut": true,
1316
1351
  "isSigner": false
1317
1352
  },
@@ -1321,27 +1356,32 @@ export type Vault = {
1321
1356
  "isSigner": false
1322
1357
  },
1323
1358
  {
1324
- "name": "communityAssociatedHedgeTokenAccount",
1359
+ "name": "payerAssociatedUshAccount",
1325
1360
  "isMut": true,
1326
1361
  "isSigner": false
1327
1362
  },
1328
1363
  {
1329
- "name": "associatedTokenProgram",
1330
- "isMut": false,
1364
+ "name": "poolAssociatedStakedTokenAccount",
1365
+ "isMut": true,
1331
1366
  "isSigner": false
1332
1367
  },
1333
1368
  {
1334
- "name": "systemProgram",
1335
- "isMut": false,
1369
+ "name": "poolAssociatedUshTokenAccount",
1370
+ "isMut": true,
1336
1371
  "isSigner": false
1337
1372
  },
1338
1373
  {
1339
- "name": "tokenProgram",
1374
+ "name": "communityAssociatedHedgeTokenAccount",
1375
+ "isMut": true,
1376
+ "isSigner": false
1377
+ },
1378
+ {
1379
+ "name": "systemProgram",
1340
1380
  "isMut": false,
1341
1381
  "isSigner": false
1342
1382
  },
1343
1383
  {
1344
- "name": "rent",
1384
+ "name": "tokenProgram",
1345
1385
  "isMut": false,
1346
1386
  "isSigner": false
1347
1387
  }
@@ -1354,179 +1394,77 @@ export type Vault = {
1354
1394
  ]
1355
1395
  },
1356
1396
  {
1357
- "name": "claimLiquidationPoolPosition",
1397
+ "name": "withdrawVault",
1358
1398
  "accounts": [
1359
1399
  {
1360
- "name": "poolState",
1400
+ "name": "vaultSystemState",
1361
1401
  "isMut": true,
1362
1402
  "isSigner": false
1363
1403
  },
1364
1404
  {
1365
- "name": "poolAssociatedTokenAccount",
1405
+ "name": "vaultTypeAccount",
1366
1406
  "isMut": true,
1367
1407
  "isSigner": false
1368
1408
  },
1369
1409
  {
1370
- "name": "vaultTypeAccount",
1410
+ "name": "vaultTypeAssociatedTokenAccount",
1371
1411
  "isMut": true,
1372
1412
  "isSigner": false
1373
1413
  },
1374
1414
  {
1375
- "name": "collateralMint",
1376
- "isMut": false,
1415
+ "name": "vault",
1416
+ "isMut": true,
1377
1417
  "isSigner": false
1378
1418
  },
1379
1419
  {
1380
- "name": "poolPosition",
1420
+ "name": "vaultAssociatedTokenAccount",
1381
1421
  "isMut": true,
1382
1422
  "isSigner": false
1383
1423
  },
1384
1424
  {
1385
- "name": "payer",
1425
+ "name": "feePool",
1386
1426
  "isMut": true,
1387
- "isSigner": true
1427
+ "isSigner": false
1388
1428
  },
1389
1429
  {
1390
- "name": "payerAssociatedTokenAccount",
1430
+ "name": "feePoolAssociatedUshTokenAccount",
1391
1431
  "isMut": true,
1392
1432
  "isSigner": false
1393
1433
  },
1394
1434
  {
1395
- "name": "associatedTokenProgram",
1396
- "isMut": false,
1397
- "isSigner": false
1398
- },
1399
- {
1400
- "name": "systemProgram",
1401
- "isMut": false,
1402
- "isSigner": false
1403
- },
1404
- {
1405
- "name": "tokenProgram",
1406
- "isMut": false,
1407
- "isSigner": false
1408
- },
1409
- {
1410
- "name": "rent",
1411
- "isMut": false,
1412
- "isSigner": false
1413
- }
1414
- ],
1415
- "args": []
1416
- },
1417
- {
1418
- "name": "addCollateralType",
1419
- "accounts": [
1420
- {
1421
- "name": "payer",
1435
+ "name": "history",
1422
1436
  "isMut": true,
1423
1437
  "isSigner": true
1424
1438
  },
1425
1439
  {
1426
- "name": "vaultSystemState",
1440
+ "name": "vaultOwner",
1427
1441
  "isMut": true,
1428
- "isSigner": false
1442
+ "isSigner": true
1429
1443
  },
1430
1444
  {
1431
- "name": "oracleInfoAccount",
1445
+ "name": "destinationTokenAccount",
1432
1446
  "isMut": true,
1433
1447
  "isSigner": false
1434
1448
  },
1435
1449
  {
1436
- "name": "vaultTypeAccount",
1450
+ "name": "ushMint",
1437
1451
  "isMut": true,
1438
1452
  "isSigner": false
1439
1453
  },
1440
- {
1441
- "name": "collateralMint",
1442
- "isMut": false,
1443
- "isSigner": false
1444
- },
1445
- {
1446
- "name": "oracleChainlink",
1447
- "isMut": false,
1448
- "isSigner": false
1449
- },
1450
- {
1451
- "name": "oraclePyth",
1452
- "isMut": false,
1453
- "isSigner": false
1454
- },
1455
- {
1456
- "name": "oracleSwitchboard",
1457
- "isMut": false,
1458
- "isSigner": false
1459
- },
1460
1454
  {
1461
1455
  "name": "systemProgram",
1462
1456
  "isMut": false,
1463
1457
  "isSigner": false
1464
- }
1465
- ],
1466
- "args": [
1467
- {
1468
- "name": "collateralType",
1469
- "type": "string"
1470
- },
1471
- {
1472
- "name": "loanInitFee",
1473
- "type": "u64"
1474
- },
1475
- {
1476
- "name": "minCollateralRatio",
1477
- "type": "u64"
1478
- },
1479
- {
1480
- "name": "interestRatePerSecond",
1481
- "type": "u128"
1482
- },
1483
- {
1484
- "name": "minDebtPerVault",
1485
- "type": "u64"
1486
- },
1487
- {
1488
- "name": "overrideCurrentTime",
1489
- "type": "i64"
1490
- }
1491
- ]
1492
- },
1493
- {
1494
- "name": "refreshOraclePrice",
1495
- "accounts": [
1496
- {
1497
- "name": "oracleInfoAccount",
1498
- "isMut": true,
1499
- "isSigner": false
1500
- },
1501
- {
1502
- "name": "vaultTypeAccount",
1503
- "isMut": true,
1504
- "isSigner": false
1505
- },
1506
- {
1507
- "name": "oracleChainlink",
1508
- "isMut": false,
1509
- "isSigner": false
1510
1458
  },
1511
1459
  {
1512
- "name": "oraclePyth",
1513
- "isMut": false,
1514
- "isSigner": false
1515
- },
1516
- {
1517
- "name": "oracleSwitchboard",
1518
- "isMut": false,
1519
- "isSigner": false
1520
- },
1521
- {
1522
- "name": "systemProgram",
1460
+ "name": "tokenProgram",
1523
1461
  "isMut": false,
1524
1462
  "isSigner": false
1525
1463
  }
1526
1464
  ],
1527
1465
  "args": [
1528
1466
  {
1529
- "name": "overrideResult",
1467
+ "name": "withdrawAmount",
1530
1468
  "type": "u64"
1531
1469
  },
1532
1470
  {
@@ -1538,479 +1476,509 @@ export type Vault = {
1538
1476
  ],
1539
1477
  "accounts": [
1540
1478
  {
1541
- "name": "stakingPool",
1479
+ "name": "aggregator",
1542
1480
  "type": {
1543
1481
  "kind": "struct",
1544
1482
  "fields": [
1545
1483
  {
1546
- "name": "deposits",
1547
- "type": "u64"
1484
+ "name": "isInitialized",
1485
+ "type": "bool"
1548
1486
  },
1549
1487
  {
1550
- "name": "bump",
1551
- "type": "u8"
1488
+ "name": "version",
1489
+ "type": "u32"
1552
1490
  },
1553
1491
  {
1554
- "name": "seedPhrase",
1555
- "type": "string"
1492
+ "name": "config",
1493
+ "type": {
1494
+ "defined": "Config"
1495
+ }
1556
1496
  },
1557
1497
  {
1558
- "name": "hedgeRewardAccumulator",
1559
- "type": "u128"
1498
+ "name": "updatedAt",
1499
+ "type": "i64"
1560
1500
  },
1561
1501
  {
1562
- "name": "ushFeeAccumulator",
1563
- "type": "u128"
1502
+ "name": "owner",
1503
+ "type": "publicKey"
1564
1504
  },
1565
1505
  {
1566
- "name": "solFeeAccumulator",
1567
- "type": "u128"
1506
+ "name": "submissions",
1507
+ "type": {
1508
+ "array": [
1509
+ {
1510
+ "defined": "Submission"
1511
+ },
1512
+ 8
1513
+ ]
1514
+ }
1568
1515
  },
1569
1516
  {
1570
- "name": "startTime",
1571
- "type": "i64"
1517
+ "name": "answer",
1518
+ "type": {
1519
+ "option": "u128"
1520
+ }
1521
+ }
1522
+ ]
1523
+ }
1524
+ },
1525
+ {
1526
+ "name": "liquidationPoolEra",
1527
+ "type": {
1528
+ "kind": "struct",
1529
+ "fields": [
1530
+ {
1531
+ "name": "totalDeposits",
1532
+ "type": "u64"
1572
1533
  },
1573
1534
  {
1574
- "name": "lastTransactionTime",
1575
- "type": "i64"
1535
+ "name": "productBytes",
1536
+ "type": "u128"
1576
1537
  },
1577
1538
  {
1578
- "name": "halfLifeInDays",
1579
- "type": "u64"
1539
+ "name": "sumBytes",
1540
+ "type": {
1541
+ "array": [
1542
+ "u128",
1543
+ 32
1544
+ ]
1545
+ }
1580
1546
  },
1581
1547
  {
1582
- "name": "totalHedgeReward",
1583
- "type": "u64"
1548
+ "name": "hedgeRewardsAccumulatorBytes",
1549
+ "type": "u128"
1584
1550
  },
1585
1551
  {
1586
- "name": "stakedTokenMint",
1587
- "type": "publicKey"
1552
+ "name": "hedgeRewardsTimestamp",
1553
+ "type": "u64"
1588
1554
  }
1589
1555
  ]
1590
1556
  }
1591
1557
  },
1592
1558
  {
1593
- "name": "stakingPoolPosition",
1559
+ "name": "liquidationPoolState",
1594
1560
  "type": {
1595
1561
  "kind": "struct",
1596
1562
  "fields": [
1597
1563
  {
1598
- "name": "state",
1599
- "type": {
1600
- "defined": "PositionState"
1601
- }
1602
- },
1603
- {
1604
- "name": "owner",
1605
- "type": "publicKey"
1606
- },
1607
- {
1608
- "name": "pool",
1564
+ "name": "currentEra",
1609
1565
  "type": "publicKey"
1610
1566
  },
1611
1567
  {
1612
- "name": "deposited",
1568
+ "name": "lifetimeDeposits",
1613
1569
  "type": "u64"
1614
1570
  },
1615
1571
  {
1616
- "name": "startHedgeRewardAccumulator",
1617
- "type": "u128"
1572
+ "name": "lifetimeOpenedPositions",
1573
+ "type": "u64"
1618
1574
  },
1619
1575
  {
1620
- "name": "startUshFeeAccumulator",
1621
- "type": "u128"
1576
+ "name": "lifetimeClosedPositions",
1577
+ "type": "u64"
1622
1578
  },
1623
1579
  {
1624
- "name": "startSolFeeAccumulator",
1625
- "type": "u128"
1580
+ "name": "lifetimeVaultsLiquidated",
1581
+ "type": "u64"
1626
1582
  },
1627
1583
  {
1628
- "name": "timestampOpened",
1629
- "type": "i64"
1584
+ "name": "lifetimeVaultsRedistributed",
1585
+ "type": "u64"
1630
1586
  },
1631
1587
  {
1632
- "name": "timestampClosed",
1633
- "type": "i64"
1588
+ "name": "lifetimeSolPurchased",
1589
+ "type": "u64"
1634
1590
  },
1635
1591
  {
1636
- "name": "closedRewardedTokens",
1592
+ "name": "hedgeInitRewardsTimestamp",
1637
1593
  "type": "u64"
1638
1594
  }
1639
1595
  ]
1640
1596
  }
1641
1597
  },
1642
1598
  {
1643
- "name": "vaultSystemState",
1599
+ "name": "liquidationPosition",
1644
1600
  "type": {
1645
1601
  "kind": "struct",
1646
1602
  "fields": [
1647
1603
  {
1648
- "name": "lastRedeemFeeBytes",
1649
- "type": "u128"
1604
+ "name": "state",
1605
+ "type": "u64"
1650
1606
  },
1651
1607
  {
1652
- "name": "lastRedeemTimestamp",
1653
- "type": "i64"
1608
+ "name": "era",
1609
+ "type": "publicKey"
1654
1610
  },
1655
1611
  {
1656
- "name": "totalUshSupply",
1657
- "type": "u64"
1612
+ "name": "ownerAccount",
1613
+ "type": "publicKey"
1658
1614
  },
1659
1615
  {
1660
- "name": "totalVaults",
1616
+ "name": "deposit",
1661
1617
  "type": "u64"
1662
1618
  },
1663
1619
  {
1664
- "name": "totalVaultsClosed",
1620
+ "name": "closedUsh",
1665
1621
  "type": "u64"
1666
1622
  },
1667
1623
  {
1668
- "name": "debtRedistributionError",
1669
- "type": "u64"
1624
+ "name": "productSnapshotEntry",
1625
+ "type": "u128"
1670
1626
  },
1671
1627
  {
1672
- "name": "authority",
1673
- "type": "publicKey"
1628
+ "name": "productSnapshotClosed",
1629
+ "type": "u128"
1674
1630
  },
1675
1631
  {
1676
- "name": "hedgeStakingPool",
1677
- "type": "publicKey"
1632
+ "name": "sumSnapshotsEntry",
1633
+ "type": {
1634
+ "array": [
1635
+ "u128",
1636
+ 32
1637
+ ]
1638
+ }
1678
1639
  },
1679
1640
  {
1680
- "name": "collateralTypeCount",
1641
+ "name": "sumSnapshotsClosed",
1642
+ "type": {
1643
+ "array": [
1644
+ "u128",
1645
+ 32
1646
+ ]
1647
+ }
1648
+ },
1649
+ {
1650
+ "name": "hedgeRewardsSnapshotAccum",
1651
+ "type": "u128"
1652
+ },
1653
+ {
1654
+ "name": "timestampOpened",
1655
+ "type": "u64"
1656
+ },
1657
+ {
1658
+ "name": "timestampClosed",
1681
1659
  "type": "u64"
1682
1660
  }
1683
1661
  ]
1684
1662
  }
1685
1663
  },
1686
1664
  {
1687
- "name": "vault",
1665
+ "name": "oracleInfoForCollateralType",
1688
1666
  "type": {
1689
1667
  "kind": "struct",
1690
1668
  "fields": [
1691
1669
  {
1692
- "name": "vaultOwner",
1670
+ "name": "collateralType",
1671
+ "type": "string"
1672
+ },
1673
+ {
1674
+ "name": "oraclePyth",
1693
1675
  "type": "publicKey"
1694
1676
  },
1695
1677
  {
1696
- "name": "pdaSalt",
1697
- "type": "string"
1678
+ "name": "oracleChainlink",
1679
+ "type": "publicKey"
1698
1680
  },
1699
1681
  {
1700
- "name": "bump",
1701
- "type": "u8"
1682
+ "name": "oracleSwitchboard",
1683
+ "type": "publicKey"
1684
+ }
1685
+ ]
1686
+ }
1687
+ },
1688
+ {
1689
+ "name": "stakingPool",
1690
+ "type": {
1691
+ "kind": "struct",
1692
+ "fields": [
1693
+ {
1694
+ "name": "halfLifeInDays",
1695
+ "type": "u64"
1702
1696
  },
1703
1697
  {
1704
- "name": "deposited",
1698
+ "name": "deposits",
1705
1699
  "type": "u64"
1706
1700
  },
1707
1701
  {
1708
- "name": "denormalizedDebt",
1702
+ "name": "startTime",
1709
1703
  "type": "u64"
1710
1704
  },
1711
1705
  {
1712
- "name": "vaultVersion",
1706
+ "name": "lastTransactionTime",
1713
1707
  "type": "u64"
1714
1708
  },
1715
1709
  {
1716
- "name": "debtProductSnapshotBytes",
1710
+ "name": "hedgeRewardAccumulator",
1717
1711
  "type": "u128"
1718
1712
  },
1719
1713
  {
1720
- "name": "collateralAccumulatorSnapshotBytes",
1714
+ "name": "ushFeeAccumulator",
1721
1715
  "type": "u128"
1722
1716
  },
1723
1717
  {
1724
- "name": "collateralType",
1725
- "type": "string"
1718
+ "name": "totalHedgeReward",
1719
+ "type": "u64"
1726
1720
  },
1727
1721
  {
1728
- "name": "debtType",
1722
+ "name": "stakedTokenMint",
1723
+ "type": "publicKey"
1724
+ },
1725
+ {
1726
+ "name": "seedPhrase",
1729
1727
  "type": {
1730
- "defined": "CurrencyType"
1728
+ "array": [
1729
+ "u8",
1730
+ 12
1731
+ ]
1731
1732
  }
1732
1733
  },
1733
1734
  {
1734
- "name": "vaultStatus",
1735
+ "name": "collateralFeeAccumulator",
1735
1736
  "type": {
1736
- "defined": "VaultStatus"
1737
+ "array": [
1738
+ "u128",
1739
+ 32
1740
+ ]
1737
1741
  }
1742
+ },
1743
+ {
1744
+ "name": "bump",
1745
+ "type": "u8"
1738
1746
  }
1739
1747
  ]
1740
1748
  }
1741
1749
  },
1742
1750
  {
1743
- "name": "vaultHistoryEvent",
1751
+ "name": "stakingPoolPosition",
1744
1752
  "type": {
1745
1753
  "kind": "struct",
1746
1754
  "fields": [
1747
1755
  {
1748
- "name": "vaultAccount",
1756
+ "name": "owner",
1749
1757
  "type": "publicKey"
1750
1758
  },
1751
1759
  {
1752
- "name": "actorAccount",
1760
+ "name": "pool",
1753
1761
  "type": "publicKey"
1754
1762
  },
1755
1763
  {
1756
- "name": "usdSolPrice",
1757
- "type": "u128"
1758
- },
1759
- {
1760
- "name": "ushDebtBefore",
1761
- "type": "u64"
1762
- },
1763
- {
1764
- "name": "ushDebtAfter",
1765
- "type": "u64"
1766
- },
1767
- {
1768
- "name": "solBalanceBefore",
1769
- "type": "u64"
1770
- },
1771
- {
1772
- "name": "solBalanceAfter",
1764
+ "name": "deposited",
1773
1765
  "type": "u64"
1774
1766
  },
1775
1767
  {
1776
- "name": "minCollateralRatioBefore",
1768
+ "name": "startHedgeRewardAccumulator",
1777
1769
  "type": "u128"
1778
1770
  },
1779
1771
  {
1780
- "name": "minCollateralRatioAfter",
1772
+ "name": "startUshFeeAccumulator",
1781
1773
  "type": "u128"
1782
1774
  },
1783
1775
  {
1784
- "name": "vaultStateBefore",
1776
+ "name": "startCollateralFeeAccumulator",
1785
1777
  "type": {
1786
- "defined": "VaultStatus"
1778
+ "array": [
1779
+ "u128",
1780
+ 32
1781
+ ]
1787
1782
  }
1788
1783
  },
1789
1784
  {
1790
- "name": "vaultStateAfter",
1785
+ "name": "closedCollateralFeeAccumulator",
1791
1786
  "type": {
1792
- "defined": "VaultStatus"
1787
+ "array": [
1788
+ "u128",
1789
+ 32
1790
+ ]
1793
1791
  }
1794
1792
  },
1795
1793
  {
1796
- "name": "timestamp",
1797
- "type": "i64"
1794
+ "name": "timestampOpened",
1795
+ "type": "u64"
1798
1796
  },
1799
1797
  {
1800
- "name": "action",
1798
+ "name": "timestampClosed",
1799
+ "type": "u64"
1800
+ },
1801
+ {
1802
+ "name": "closedRewardedTokens",
1803
+ "type": "u64"
1804
+ },
1805
+ {
1806
+ "name": "state",
1801
1807
  "type": {
1802
- "defined": "VaultHistoryAction"
1808
+ "defined": "PositionState"
1803
1809
  }
1804
1810
  }
1805
1811
  ]
1806
1812
  }
1807
1813
  },
1808
1814
  {
1809
- "name": "liquidationPoolState",
1815
+ "name": "vault",
1810
1816
  "type": {
1811
1817
  "kind": "struct",
1812
1818
  "fields": [
1813
1819
  {
1814
- "name": "currentEra",
1820
+ "name": "vaultOwner",
1815
1821
  "type": "publicKey"
1816
1822
  },
1817
1823
  {
1818
- "name": "lifetimeDeposits",
1819
- "type": "u64"
1824
+ "name": "pdaSalt",
1825
+ "type": "string"
1820
1826
  },
1821
1827
  {
1822
- "name": "lifetimeOpenedPositions",
1823
- "type": "u64"
1828
+ "name": "bump",
1829
+ "type": "u8"
1824
1830
  },
1825
1831
  {
1826
- "name": "lifetimeClosedPositions",
1832
+ "name": "deposited",
1827
1833
  "type": "u64"
1828
1834
  },
1829
1835
  {
1830
- "name": "lifetimeVaultsLiquidated",
1836
+ "name": "denormalizedDebt",
1831
1837
  "type": "u64"
1832
1838
  },
1833
1839
  {
1834
- "name": "lifetimeVaultsRedistributed",
1840
+ "name": "vaultVersion",
1835
1841
  "type": "u64"
1836
1842
  },
1837
1843
  {
1838
- "name": "lifetimeSolPurchased",
1839
- "type": "u64"
1844
+ "name": "debtProductSnapshotBytes",
1845
+ "type": "u128"
1840
1846
  },
1841
1847
  {
1842
- "name": "hedgeInitRewardsTimestamp",
1843
- "type": "i64"
1844
- }
1845
- ]
1846
- }
1847
- },
1848
- {
1849
- "name": "liquidationPoolEra",
1850
- "type": {
1851
- "kind": "struct",
1852
- "fields": [
1848
+ "name": "collateralAccumulatorSnapshotBytes",
1849
+ "type": "u128"
1850
+ },
1853
1851
  {
1854
- "name": "totalDeposits",
1855
- "type": "u64"
1852
+ "name": "collateralType",
1853
+ "type": "string"
1856
1854
  },
1857
1855
  {
1858
- "name": "productBytes",
1859
- "type": "u128"
1856
+ "name": "debtType",
1857
+ "type": {
1858
+ "defined": "CurrencyType"
1859
+ }
1860
1860
  },
1861
1861
  {
1862
- "name": "sumBytes",
1862
+ "name": "vaultStatus",
1863
1863
  "type": {
1864
- "array": [
1865
- "u128",
1866
- 32
1867
- ]
1864
+ "defined": "VaultStatus"
1868
1865
  }
1869
1866
  },
1870
1867
  {
1871
- "name": "hedgeRewardsAccumulatorBytes",
1872
- "type": "u128"
1868
+ "name": "timeCreated",
1869
+ "type": "u64"
1873
1870
  },
1874
1871
  {
1875
- "name": "hedgeRewardsTimestamp",
1876
- "type": "i64"
1872
+ "name": "timeLastInteraction",
1873
+ "type": "u64"
1877
1874
  }
1878
1875
  ]
1879
1876
  }
1880
1877
  },
1881
1878
  {
1882
- "name": "liquidationPosition",
1879
+ "name": "vaultHistoryEvent",
1883
1880
  "type": {
1884
1881
  "kind": "struct",
1885
1882
  "fields": [
1886
1883
  {
1887
- "name": "state",
1888
- "type": "u64"
1884
+ "name": "vaultAccount",
1885
+ "type": "publicKey"
1889
1886
  },
1890
1887
  {
1891
- "name": "era",
1888
+ "name": "actorAccount",
1892
1889
  "type": "publicKey"
1893
1890
  },
1894
1891
  {
1895
- "name": "ownerAccount",
1896
- "type": "publicKey"
1892
+ "name": "usdCollateralPrice",
1893
+ "type": "u128"
1897
1894
  },
1898
1895
  {
1899
- "name": "deposit",
1896
+ "name": "ushDebtBefore",
1900
1897
  "type": "u64"
1901
1898
  },
1902
1899
  {
1903
- "name": "closedUsh",
1900
+ "name": "ushDebtAfter",
1904
1901
  "type": "u64"
1905
1902
  },
1906
1903
  {
1907
- "name": "productSnapshotEntry",
1908
- "type": "u128"
1904
+ "name": "collateralBalanceBefore",
1905
+ "type": "u64"
1909
1906
  },
1910
1907
  {
1911
- "name": "productSnapshotClosed",
1912
- "type": "u128"
1908
+ "name": "collateralBalanceAfter",
1909
+ "type": "u64"
1913
1910
  },
1914
1911
  {
1915
- "name": "sumSnapshotsEntry",
1912
+ "name": "vaultStateBefore",
1916
1913
  "type": {
1917
- "array": [
1918
- "u128",
1919
- 32
1920
- ]
1914
+ "defined": "VaultStatus"
1921
1915
  }
1922
1916
  },
1923
1917
  {
1924
- "name": "sumSnapshotsClosed",
1918
+ "name": "vaultStateAfter",
1925
1919
  "type": {
1926
- "array": [
1927
- "u128",
1928
- 32
1929
- ]
1920
+ "defined": "VaultStatus"
1930
1921
  }
1931
1922
  },
1932
1923
  {
1933
- "name": "hedgeRewardsSnapshotAccum",
1934
- "type": "u128"
1935
- },
1936
- {
1937
- "name": "timestampOpened",
1938
- "type": "i64"
1924
+ "name": "timestamp",
1925
+ "type": "u64"
1939
1926
  },
1940
1927
  {
1941
- "name": "timestampClosed",
1942
- "type": "i64"
1928
+ "name": "action",
1929
+ "type": {
1930
+ "defined": "VaultHistoryAction"
1931
+ }
1943
1932
  }
1944
1933
  ]
1945
1934
  }
1946
1935
  },
1947
1936
  {
1948
- "name": "aggregator",
1937
+ "name": "vaultSystemState",
1949
1938
  "type": {
1950
1939
  "kind": "struct",
1951
1940
  "fields": [
1952
1941
  {
1953
- "name": "isInitialized",
1954
- "type": "bool"
1942
+ "name": "lastRedeemFeeBytes",
1943
+ "type": "u128"
1955
1944
  },
1956
1945
  {
1957
- "name": "version",
1958
- "type": "u32"
1946
+ "name": "lastRedeemTimestamp",
1947
+ "type": "u64"
1959
1948
  },
1960
1949
  {
1961
- "name": "config",
1962
- "type": {
1963
- "defined": "Config"
1964
- }
1950
+ "name": "totalUshSupply",
1951
+ "type": "u64"
1965
1952
  },
1966
1953
  {
1967
- "name": "updatedAt",
1968
- "type": "i64"
1954
+ "name": "totalVaults",
1955
+ "type": "u64"
1969
1956
  },
1970
1957
  {
1971
- "name": "owner",
1972
- "type": "publicKey"
1958
+ "name": "totalVaultsClosed",
1959
+ "type": "u64"
1973
1960
  },
1974
1961
  {
1975
- "name": "submissions",
1976
- "type": {
1977
- "array": [
1978
- {
1979
- "defined": "Submission"
1980
- },
1981
- 8
1982
- ]
1983
- }
1962
+ "name": "debtRedistributionError",
1963
+ "type": "u64"
1984
1964
  },
1985
1965
  {
1986
- "name": "answer",
1987
- "type": {
1988
- "option": "u128"
1989
- }
1990
- }
1991
- ]
1992
- }
1993
- },
1994
- {
1995
- "name": "oracleInfoForCollateralType",
1996
- "type": {
1997
- "kind": "struct",
1998
- "fields": [
1999
- {
2000
- "name": "collateralType",
2001
- "type": "string"
1966
+ "name": "authority",
1967
+ "type": "publicKey"
2002
1968
  },
2003
1969
  {
2004
- "name": "oraclePyth",
1970
+ "name": "hedgeStakingPool",
2005
1971
  "type": "publicKey"
2006
1972
  },
2007
1973
  {
2008
- "name": "oracleChainlink",
2009
- "type": "publicKey"
1974
+ "name": "collateralTypeCount",
1975
+ "type": "u64"
2010
1976
  },
2011
1977
  {
2012
- "name": "oracleSwitchboard",
2013
- "type": "publicKey"
1978
+ "name": "status",
1979
+ "type": {
1980
+ "defined": "SystemStatus"
1981
+ }
2014
1982
  }
2015
1983
  ]
2016
1984
  }
@@ -2038,7 +2006,7 @@ export type Vault = {
2038
2006
  },
2039
2007
  {
2040
2008
  "name": "priceLastUpdatedTimestamp",
2041
- "type": "i64"
2009
+ "type": "u64"
2042
2010
  },
2043
2011
  {
2044
2012
  "name": "collateralHeld",
@@ -2048,6 +2016,10 @@ export type Vault = {
2048
2016
  "name": "denormalizedDebtExtended",
2049
2017
  "type": "u64"
2050
2018
  },
2019
+ {
2020
+ "name": "collateralDecimals",
2021
+ "type": "u8"
2022
+ },
2051
2023
  {
2052
2024
  "name": "debtRedistributionProduct",
2053
2025
  "type": "u128"
@@ -2068,13 +2040,21 @@ export type Vault = {
2068
2040
  "name": "minDebtPerVault",
2069
2041
  "type": "u64"
2070
2042
  },
2043
+ {
2044
+ "name": "maxDebtExtended",
2045
+ "type": "u64"
2046
+ },
2047
+ {
2048
+ "name": "canBeRedeemed",
2049
+ "type": "bool"
2050
+ },
2071
2051
  {
2072
2052
  "name": "cumulativeRate",
2073
2053
  "type": "u128"
2074
2054
  },
2075
2055
  {
2076
2056
  "name": "cumulativeRateLastUpdated",
2077
- "type": "i64"
2057
+ "type": "u64"
2078
2058
  },
2079
2059
  {
2080
2060
  "name": "interestRatePerSecond",
@@ -2181,6 +2161,20 @@ export type Vault = {
2181
2161
  ]
2182
2162
  }
2183
2163
  },
2164
+ {
2165
+ "name": "SystemStatus",
2166
+ "type": {
2167
+ "kind": "enum",
2168
+ "variants": [
2169
+ {
2170
+ "name": "Halted"
2171
+ },
2172
+ {
2173
+ "name": "Running"
2174
+ }
2175
+ ]
2176
+ }
2177
+ },
2184
2178
  {
2185
2179
  "name": "VaultHistoryAction",
2186
2180
  "type": {
@@ -2221,62 +2215,205 @@ export type Vault = {
2221
2215
  }
2222
2216
  ]
2223
2217
  }
2218
+ }
2219
+ ],
2220
+ "events": [
2221
+ {
2222
+ "name": "NewVaultEvent",
2223
+ "fields": [
2224
+ {
2225
+ "name": "vault",
2226
+ "type": "publicKey",
2227
+ "index": false
2228
+ },
2229
+ {
2230
+ "name": "deposited",
2231
+ "type": "u64",
2232
+ "index": false
2233
+ }
2234
+ ]
2235
+ },
2236
+ {
2237
+ "name": "DepositVaultEvent",
2238
+ "fields": [
2239
+ {
2240
+ "name": "vault",
2241
+ "type": "publicKey",
2242
+ "index": false
2243
+ },
2244
+ {
2245
+ "name": "amount",
2246
+ "type": "u64",
2247
+ "index": false
2248
+ }
2249
+ ]
2250
+ },
2251
+ {
2252
+ "name": "WithdrawVaultEvent",
2253
+ "fields": [
2254
+ {
2255
+ "name": "vault",
2256
+ "type": "publicKey",
2257
+ "index": false
2258
+ },
2259
+ {
2260
+ "name": "amount",
2261
+ "type": "u64",
2262
+ "index": false
2263
+ }
2264
+ ]
2265
+ },
2266
+ {
2267
+ "name": "LoanVaultEvent",
2268
+ "fields": [
2269
+ {
2270
+ "name": "vault",
2271
+ "type": "publicKey",
2272
+ "index": false
2273
+ },
2274
+ {
2275
+ "name": "amount",
2276
+ "type": "u64",
2277
+ "index": false
2278
+ }
2279
+ ]
2280
+ },
2281
+ {
2282
+ "name": "RepayVaultEvent",
2283
+ "fields": [
2284
+ {
2285
+ "name": "vault",
2286
+ "type": "publicKey",
2287
+ "index": false
2288
+ },
2289
+ {
2290
+ "name": "amount",
2291
+ "type": "u64",
2292
+ "index": false
2293
+ }
2294
+ ]
2295
+ },
2296
+ {
2297
+ "name": "RedeemVaultEvent",
2298
+ "fields": [
2299
+ {
2300
+ "name": "vault",
2301
+ "type": "publicKey",
2302
+ "index": false
2303
+ },
2304
+ {
2305
+ "name": "amount",
2306
+ "type": "u64",
2307
+ "index": false
2308
+ }
2309
+ ]
2310
+ },
2311
+ {
2312
+ "name": "LiquidateVaultEvent",
2313
+ "fields": [
2314
+ {
2315
+ "name": "vault",
2316
+ "type": "publicKey",
2317
+ "index": false
2318
+ }
2319
+ ]
2320
+ }
2321
+ ],
2322
+ "errors": [
2323
+ {
2324
+ "code": 6000,
2325
+ "name": "AlreadyInitialized",
2326
+ "msg": "This vault was already initialized"
2327
+ },
2328
+ {
2329
+ "code": 6001,
2330
+ "name": "CollateralRatioTooLow",
2331
+ "msg": "Collateral ratio too low"
2332
+ },
2333
+ {
2334
+ "code": 6002,
2335
+ "name": "NotInitialized",
2336
+ "msg": "This vault was not initialized"
2337
+ },
2338
+ {
2339
+ "code": 6003,
2340
+ "name": "Overdraw",
2341
+ "msg": "Cannot withdraw more than deposited"
2342
+ },
2343
+ {
2344
+ "code": 6004,
2345
+ "name": "Overpaid",
2346
+ "msg": "Cannot repay more than loaned"
2224
2347
  },
2225
2348
  {
2226
- "name": "HedgeErrors",
2227
- "type": {
2228
- "kind": "enum",
2229
- "variants": [
2230
- {
2231
- "name": "AlreadyInitialized"
2232
- },
2233
- {
2234
- "name": "CollateralRatioTooLow"
2235
- },
2236
- {
2237
- "name": "NotInitialized"
2238
- },
2239
- {
2240
- "name": "Overdraw"
2241
- },
2242
- {
2243
- "name": "Overpaid"
2244
- },
2245
- {
2246
- "name": "VaultClosed"
2247
- },
2248
- {
2249
- "name": "VaultNotSubjectToLiquidation"
2250
- },
2251
- {
2252
- "name": "VaultHasNoDebt"
2253
- },
2254
- {
2255
- "name": "NotAuthorizedToCreateStakingPools"
2256
- },
2257
- {
2258
- "name": "NotAuthorized"
2259
- },
2260
- {
2261
- "name": "BadSeed"
2262
- },
2263
- {
2264
- "name": "CollateralPriceOutOfDate"
2265
- },
2266
- {
2267
- "name": "EmergencyMode"
2268
- },
2269
- {
2270
- "name": "MinDebtRequired"
2271
- },
2272
- {
2273
- "name": "PoolPositionAlreadyClosed"
2274
- },
2275
- {
2276
- "name": "PoolPositionNoYetClosed"
2277
- }
2278
- ]
2279
- }
2349
+ "code": 6005,
2350
+ "name": "VaultClosed",
2351
+ "msg": "Vault cannot be liquidated. It is collateralized."
2352
+ },
2353
+ {
2354
+ "code": 6006,
2355
+ "name": "VaultNotSubjectToLiquidation",
2356
+ "msg": "Vault closed"
2357
+ },
2358
+ {
2359
+ "code": 6007,
2360
+ "name": "VaultHasNoDebt",
2361
+ "msg": "Vault does not have any debt"
2362
+ },
2363
+ {
2364
+ "code": 6008,
2365
+ "name": "NotAuthorizedToCreateStakingPools",
2366
+ "msg": "Signer not authorized to create new staking pools"
2367
+ },
2368
+ {
2369
+ "code": 6009,
2370
+ "name": "NotAuthorized",
2371
+ "msg": "Signer not authorized to call this function"
2372
+ },
2373
+ {
2374
+ "code": 6010,
2375
+ "name": "BadSeed",
2376
+ "msg": "Bad Seed"
2377
+ },
2378
+ {
2379
+ "code": 6011,
2380
+ "name": "CollateralPriceOutOfDate",
2381
+ "msg": "Collateral price needs to be refreshed. It is only valid for 60 seconds."
2382
+ },
2383
+ {
2384
+ "code": 6012,
2385
+ "name": "EmergencyMode",
2386
+ "msg": "System is not accepting any tx that would worsen collateral ratio at this time"
2387
+ },
2388
+ {
2389
+ "code": 6013,
2390
+ "name": "MinDebtRequired",
2391
+ "msg": "Vault under the minimum debt limit. Vault must have zero debt or be over the minimum."
2392
+ },
2393
+ {
2394
+ "code": 6014,
2395
+ "name": "PoolPositionAlreadyClosed",
2396
+ "msg": "Pool position already closed"
2397
+ },
2398
+ {
2399
+ "code": 6015,
2400
+ "name": "PoolPositionNoYetClosed",
2401
+ "msg": "Pool position must be closed to claim reward"
2402
+ },
2403
+ {
2404
+ "code": 6016,
2405
+ "name": "MaxDebtAgainstVaultType",
2406
+ "msg": "Max debt extended against vault type reached."
2407
+ },
2408
+ {
2409
+ "code": 6017,
2410
+ "name": "VaultTypeNotRedeemable",
2411
+ "msg": "Vault type cannot be redeemed against."
2412
+ },
2413
+ {
2414
+ "code": 6018,
2415
+ "name": "SystemHalted",
2416
+ "msg": "System is currently halted. No actions may be taken at this time."
2280
2417
  }
2281
2418
  ]
2282
2419
  };
@@ -2286,55 +2423,45 @@ export const IDL: Vault = {
2286
2423
  "name": "vault",
2287
2424
  "instructions": [
2288
2425
  {
2289
- "name": "initHedgeFoundation",
2426
+ "name": "addCollateralType",
2290
2427
  "accounts": [
2291
2428
  {
2292
- "name": "vaultSystemState",
2293
- "isMut": true,
2294
- "isSigner": false
2295
- },
2296
- {
2297
- "name": "poolState",
2298
- "isMut": true,
2299
- "isSigner": false
2300
- },
2301
- {
2302
- "name": "poolEra",
2429
+ "name": "payer",
2303
2430
  "isMut": true,
2304
2431
  "isSigner": true
2305
2432
  },
2306
2433
  {
2307
- "name": "poolUshAccount",
2434
+ "name": "vaultSystemState",
2308
2435
  "isMut": true,
2309
2436
  "isSigner": false
2310
2437
  },
2311
2438
  {
2312
- "name": "founder",
2439
+ "name": "oracleInfoAccount",
2313
2440
  "isMut": true,
2314
- "isSigner": true
2441
+ "isSigner": false
2315
2442
  },
2316
2443
  {
2317
- "name": "ushMint",
2444
+ "name": "vaultTypeAccount",
2318
2445
  "isMut": true,
2319
2446
  "isSigner": false
2320
2447
  },
2321
2448
  {
2322
- "name": "hedgeMint",
2323
- "isMut": true,
2449
+ "name": "collateralMint",
2450
+ "isMut": false,
2324
2451
  "isSigner": false
2325
2452
  },
2326
2453
  {
2327
- "name": "founderAssociatedHedgeTokenAccount",
2328
- "isMut": true,
2454
+ "name": "oracleChainlink",
2455
+ "isMut": false,
2329
2456
  "isSigner": false
2330
2457
  },
2331
2458
  {
2332
- "name": "communityAssociatedHedgeTokenAccount",
2333
- "isMut": true,
2459
+ "name": "oraclePyth",
2460
+ "isMut": false,
2334
2461
  "isSigner": false
2335
2462
  },
2336
2463
  {
2337
- "name": "associatedTokenProgram",
2464
+ "name": "oracleSwitchboard",
2338
2465
  "isMut": false,
2339
2466
  "isSigner": false
2340
2467
  },
@@ -2342,41 +2469,84 @@ export const IDL: Vault = {
2342
2469
  "name": "systemProgram",
2343
2470
  "isMut": false,
2344
2471
  "isSigner": false
2472
+ }
2473
+ ],
2474
+ "args": [
2475
+ {
2476
+ "name": "collateralType",
2477
+ "type": "string"
2345
2478
  },
2346
2479
  {
2347
- "name": "tokenProgram",
2348
- "isMut": false,
2349
- "isSigner": false
2480
+ "name": "loanInitFee",
2481
+ "type": "u64"
2350
2482
  },
2351
2483
  {
2352
- "name": "rent",
2353
- "isMut": false,
2354
- "isSigner": false
2484
+ "name": "minCollateralRatio",
2485
+ "type": "u64"
2486
+ },
2487
+ {
2488
+ "name": "interestRatePerSecond",
2489
+ "type": "u128"
2490
+ },
2491
+ {
2492
+ "name": "minDebtPerVault",
2493
+ "type": "u64"
2494
+ },
2495
+ {
2496
+ "name": "maxDebtExtended",
2497
+ "type": "u64"
2498
+ },
2499
+ {
2500
+ "name": "canBeRedeemed",
2501
+ "type": "bool"
2502
+ },
2503
+ {
2504
+ "name": "overrideCurrentTime",
2505
+ "type": "i64"
2355
2506
  }
2356
- ],
2357
- "args": []
2507
+ ]
2358
2508
  },
2359
2509
  {
2360
- "name": "setHedgeTokenMetadata",
2510
+ "name": "claimLiquidationPoolPosition",
2361
2511
  "accounts": [
2362
2512
  {
2363
- "name": "metadataAccount",
2513
+ "name": "vaultSystemState",
2364
2514
  "isMut": true,
2365
2515
  "isSigner": false
2366
2516
  },
2367
2517
  {
2368
- "name": "mint",
2518
+ "name": "poolState",
2369
2519
  "isMut": true,
2370
2520
  "isSigner": false
2371
2521
  },
2372
2522
  {
2373
- "name": "payer",
2523
+ "name": "poolAssociatedTokenAccount",
2524
+ "isMut": true,
2525
+ "isSigner": false
2526
+ },
2527
+ {
2528
+ "name": "vaultTypeAccount",
2529
+ "isMut": true,
2530
+ "isSigner": false
2531
+ },
2532
+ {
2533
+ "name": "collateralMint",
2374
2534
  "isMut": false,
2535
+ "isSigner": false
2536
+ },
2537
+ {
2538
+ "name": "poolPosition",
2539
+ "isMut": true,
2540
+ "isSigner": false
2541
+ },
2542
+ {
2543
+ "name": "payer",
2544
+ "isMut": true,
2375
2545
  "isSigner": true
2376
2546
  },
2377
2547
  {
2378
- "name": "tokenMetadataProgram",
2379
- "isMut": false,
2548
+ "name": "payerAssociatedTokenAccount",
2549
+ "isMut": true,
2380
2550
  "isSigner": false
2381
2551
  },
2382
2552
  {
@@ -2403,28 +2573,53 @@ export const IDL: Vault = {
2403
2573
  "args": []
2404
2574
  },
2405
2575
  {
2406
- "name": "updateHedgeTokenMetadata",
2576
+ "name": "claimStakingPoolPosition",
2407
2577
  "accounts": [
2408
2578
  {
2409
- "name": "metadataAccount",
2579
+ "name": "payer",
2580
+ "isMut": true,
2581
+ "isSigner": true
2582
+ },
2583
+ {
2584
+ "name": "vaultSystemState",
2410
2585
  "isMut": true,
2411
2586
  "isSigner": false
2412
2587
  },
2413
2588
  {
2414
- "name": "mint",
2589
+ "name": "feePool",
2415
2590
  "isMut": true,
2416
2591
  "isSigner": false
2417
2592
  },
2418
2593
  {
2419
- "name": "payer",
2420
- "isMut": false,
2421
- "isSigner": true
2594
+ "name": "stakedTokenMint",
2595
+ "isMut": true,
2596
+ "isSigner": false
2422
2597
  },
2423
2598
  {
2424
- "name": "tokenMetadataProgram",
2599
+ "name": "feePoolAssociatedTokenAccount",
2600
+ "isMut": true,
2601
+ "isSigner": false
2602
+ },
2603
+ {
2604
+ "name": "vaultTypeAccount",
2605
+ "isMut": true,
2606
+ "isSigner": false
2607
+ },
2608
+ {
2609
+ "name": "collateralMint",
2425
2610
  "isMut": false,
2426
2611
  "isSigner": false
2427
2612
  },
2613
+ {
2614
+ "name": "poolPosition",
2615
+ "isMut": true,
2616
+ "isSigner": false
2617
+ },
2618
+ {
2619
+ "name": "payerAssociatedTokenAccount",
2620
+ "isMut": true,
2621
+ "isSigner": false
2622
+ },
2428
2623
  {
2429
2624
  "name": "associatedTokenProgram",
2430
2625
  "isMut": false,
@@ -2449,72 +2644,61 @@ export const IDL: Vault = {
2449
2644
  "args": []
2450
2645
  },
2451
2646
  {
2452
- "name": "setUshTokenMetadata",
2647
+ "name": "closeLiquidationPoolPosition",
2453
2648
  "accounts": [
2454
2649
  {
2455
- "name": "metadataAccount",
2650
+ "name": "vaultSystemState",
2456
2651
  "isMut": true,
2457
2652
  "isSigner": false
2458
2653
  },
2459
2654
  {
2460
- "name": "mint",
2655
+ "name": "poolState",
2461
2656
  "isMut": true,
2462
2657
  "isSigner": false
2463
2658
  },
2464
2659
  {
2465
- "name": "payer",
2466
- "isMut": false,
2467
- "isSigner": true
2468
- },
2469
- {
2470
- "name": "tokenMetadataProgram",
2471
- "isMut": false,
2660
+ "name": "poolEra",
2661
+ "isMut": true,
2472
2662
  "isSigner": false
2473
2663
  },
2474
2664
  {
2475
- "name": "associatedTokenProgram",
2476
- "isMut": false,
2665
+ "name": "poolPosition",
2666
+ "isMut": true,
2477
2667
  "isSigner": false
2478
2668
  },
2479
2669
  {
2480
- "name": "systemProgram",
2481
- "isMut": false,
2670
+ "name": "poolUshAccount",
2671
+ "isMut": true,
2482
2672
  "isSigner": false
2483
2673
  },
2484
2674
  {
2485
- "name": "tokenProgram",
2486
- "isMut": false,
2487
- "isSigner": false
2675
+ "name": "payer",
2676
+ "isMut": true,
2677
+ "isSigner": true
2488
2678
  },
2489
2679
  {
2490
- "name": "rent",
2491
- "isMut": false,
2680
+ "name": "ownerUshAccount",
2681
+ "isMut": true,
2492
2682
  "isSigner": false
2493
- }
2494
- ],
2495
- "args": []
2496
- },
2497
- {
2498
- "name": "updateUshTokenMetadata",
2499
- "accounts": [
2683
+ },
2500
2684
  {
2501
- "name": "metadataAccount",
2685
+ "name": "hedgeMint",
2502
2686
  "isMut": true,
2503
2687
  "isSigner": false
2504
2688
  },
2505
2689
  {
2506
- "name": "mint",
2690
+ "name": "ushMint",
2507
2691
  "isMut": true,
2508
2692
  "isSigner": false
2509
2693
  },
2510
2694
  {
2511
- "name": "payer",
2512
- "isMut": false,
2513
- "isSigner": true
2695
+ "name": "payerAssociatedHedgeAccount",
2696
+ "isMut": true,
2697
+ "isSigner": false
2514
2698
  },
2515
2699
  {
2516
- "name": "tokenMetadataProgram",
2517
- "isMut": false,
2700
+ "name": "communityAssociatedHedgeTokenAccount",
2701
+ "isMut": true,
2518
2702
  "isSigner": false
2519
2703
  },
2520
2704
  {
@@ -2538,7 +2722,12 @@ export const IDL: Vault = {
2538
2722
  "isSigner": false
2539
2723
  }
2540
2724
  ],
2541
- "args": []
2725
+ "args": [
2726
+ {
2727
+ "name": "overrideCurrentTime",
2728
+ "type": "i64"
2729
+ }
2730
+ ]
2542
2731
  },
2543
2732
  {
2544
2733
  "name": "createStakingPool",
@@ -2619,120 +2808,139 @@ export const IDL: Vault = {
2619
2808
  ]
2620
2809
  },
2621
2810
  {
2622
- "name": "depositStakingPool",
2811
+ "name": "createVault",
2623
2812
  "accounts": [
2624
2813
  {
2625
- "name": "payer",
2814
+ "name": "vaultSystemState",
2626
2815
  "isMut": true,
2627
- "isSigner": true
2816
+ "isSigner": false
2628
2817
  },
2629
2818
  {
2630
- "name": "pool",
2819
+ "name": "vaultTypeAccount",
2631
2820
  "isMut": true,
2632
2821
  "isSigner": false
2633
2822
  },
2634
2823
  {
2635
- "name": "poolPosition",
2824
+ "name": "vault",
2636
2825
  "isMut": true,
2637
- "isSigner": true
2826
+ "isSigner": false
2638
2827
  },
2639
2828
  {
2640
- "name": "payerAssociatedStakedTokenAccount",
2829
+ "name": "vaultAssociatedTokenAccount",
2641
2830
  "isMut": true,
2642
2831
  "isSigner": false
2643
2832
  },
2644
2833
  {
2645
- "name": "poolAssociatedStakedTokenAccount",
2834
+ "name": "feePool",
2646
2835
  "isMut": true,
2647
2836
  "isSigner": false
2648
2837
  },
2649
2838
  {
2650
- "name": "systemProgram",
2651
- "isMut": false,
2839
+ "name": "feePoolAssociatedUshTokenAccount",
2840
+ "isMut": true,
2652
2841
  "isSigner": false
2653
2842
  },
2654
2843
  {
2655
- "name": "tokenProgram",
2656
- "isMut": false,
2844
+ "name": "ushMint",
2845
+ "isMut": true,
2657
2846
  "isSigner": false
2658
- }
2659
- ],
2660
- "args": [
2661
- {
2662
- "name": "stakeAmount",
2663
- "type": "u64"
2664
2847
  },
2665
2848
  {
2666
- "name": "overrideCurrentTime",
2667
- "type": "i64"
2668
- }
2669
- ]
2670
- },
2671
- {
2672
- "name": "withdrawStakingPool",
2673
- "accounts": [
2849
+ "name": "history",
2850
+ "isMut": true,
2851
+ "isSigner": true
2852
+ },
2674
2853
  {
2675
2854
  "name": "payer",
2676
2855
  "isMut": true,
2677
2856
  "isSigner": true
2678
2857
  },
2679
2858
  {
2680
- "name": "vaultSystemState",
2859
+ "name": "payerTokenAccount",
2681
2860
  "isMut": true,
2682
2861
  "isSigner": false
2683
2862
  },
2684
2863
  {
2685
- "name": "pool",
2864
+ "name": "collateralMint",
2686
2865
  "isMut": true,
2687
2866
  "isSigner": false
2688
2867
  },
2689
2868
  {
2690
- "name": "poolPosition",
2691
- "isMut": true,
2869
+ "name": "associatedTokenProgram",
2870
+ "isMut": false,
2692
2871
  "isSigner": false
2693
2872
  },
2694
2873
  {
2695
- "name": "hedgeMint",
2696
- "isMut": true,
2874
+ "name": "systemProgram",
2875
+ "isMut": false,
2697
2876
  "isSigner": false
2698
2877
  },
2699
2878
  {
2700
- "name": "stakedTokenMint",
2701
- "isMut": true,
2879
+ "name": "tokenProgram",
2880
+ "isMut": false,
2702
2881
  "isSigner": false
2703
2882
  },
2704
2883
  {
2705
- "name": "ushMint",
2884
+ "name": "rent",
2706
2885
  "isMut": false,
2707
2886
  "isSigner": false
2887
+ }
2888
+ ],
2889
+ "args": [
2890
+ {
2891
+ "name": "pdaSalt",
2892
+ "type": "string"
2708
2893
  },
2709
2894
  {
2710
- "name": "payerAssociatedStakedTokenAccount",
2895
+ "name": "depositAmount",
2896
+ "type": "u64"
2897
+ },
2898
+ {
2899
+ "name": "overrideCurrentTime",
2900
+ "type": "i64"
2901
+ }
2902
+ ]
2903
+ },
2904
+ {
2905
+ "name": "depositLiquidationPool",
2906
+ "accounts": [
2907
+ {
2908
+ "name": "vaultSystemState",
2711
2909
  "isMut": true,
2712
2910
  "isSigner": false
2713
2911
  },
2714
2912
  {
2715
- "name": "payerAssociatedHedgeAccount",
2913
+ "name": "poolState",
2716
2914
  "isMut": true,
2717
2915
  "isSigner": false
2718
2916
  },
2719
2917
  {
2720
- "name": "payerAssociatedUshAccount",
2918
+ "name": "poolUshAccount",
2721
2919
  "isMut": true,
2722
2920
  "isSigner": false
2723
2921
  },
2724
2922
  {
2725
- "name": "poolAssociatedStakedTokenAccount",
2923
+ "name": "poolEra",
2726
2924
  "isMut": true,
2727
2925
  "isSigner": false
2728
2926
  },
2729
2927
  {
2730
- "name": "poolAssociatedUshTokenAccount",
2928
+ "name": "poolPosition",
2929
+ "isMut": true,
2930
+ "isSigner": true
2931
+ },
2932
+ {
2933
+ "name": "ushMint",
2731
2934
  "isMut": true,
2732
2935
  "isSigner": false
2733
2936
  },
2734
2937
  {
2735
- "name": "communityAssociatedHedgeTokenAccount",
2938
+ "name": "payer",
2939
+ "isMut": true,
2940
+ "isSigner": true
2941
+ },
2942
+ {
2943
+ "name": "ownerUshAccount",
2736
2944
  "isMut": true,
2737
2945
  "isSigner": false
2738
2946
  },
@@ -2748,6 +2956,10 @@ export const IDL: Vault = {
2748
2956
  }
2749
2957
  ],
2750
2958
  "args": [
2959
+ {
2960
+ "name": "depositAmount",
2961
+ "type": "u64"
2962
+ },
2751
2963
  {
2752
2964
  "name": "overrideCurrentTime",
2753
2965
  "type": "i64"
@@ -2755,68 +2967,43 @@ export const IDL: Vault = {
2755
2967
  ]
2756
2968
  },
2757
2969
  {
2758
- "name": "createVault",
2970
+ "name": "depositStakingPool",
2759
2971
  "accounts": [
2760
2972
  {
2761
- "name": "vaultSystemState",
2762
- "isMut": true,
2763
- "isSigner": false
2764
- },
2765
- {
2766
- "name": "vaultTypeAccount",
2767
- "isMut": true,
2768
- "isSigner": false
2769
- },
2770
- {
2771
- "name": "vault",
2772
- "isMut": true,
2773
- "isSigner": false
2774
- },
2775
- {
2776
- "name": "vaultAssociatedTokenAccount",
2973
+ "name": "payer",
2777
2974
  "isMut": true,
2778
- "isSigner": false
2975
+ "isSigner": true
2779
2976
  },
2780
2977
  {
2781
- "name": "feePool",
2978
+ "name": "vaultSystemState",
2782
2979
  "isMut": true,
2783
2980
  "isSigner": false
2784
2981
  },
2785
2982
  {
2786
- "name": "feePoolAssociatedUshTokenAccount",
2983
+ "name": "pool",
2787
2984
  "isMut": true,
2788
2985
  "isSigner": false
2789
2986
  },
2790
2987
  {
2791
- "name": "ushMint",
2792
- "isMut": true,
2988
+ "name": "stakedTokenMintInfo",
2989
+ "isMut": false,
2793
2990
  "isSigner": false
2794
2991
  },
2795
2992
  {
2796
- "name": "history",
2797
- "isMut": true,
2798
- "isSigner": true
2799
- },
2800
- {
2801
- "name": "payer",
2993
+ "name": "poolPosition",
2802
2994
  "isMut": true,
2803
2995
  "isSigner": true
2804
2996
  },
2805
2997
  {
2806
- "name": "payerTokenAccount",
2998
+ "name": "payerAssociatedStakedTokenAccount",
2807
2999
  "isMut": true,
2808
3000
  "isSigner": false
2809
3001
  },
2810
3002
  {
2811
- "name": "collateralMint",
3003
+ "name": "poolAssociatedStakedTokenAccount",
2812
3004
  "isMut": true,
2813
3005
  "isSigner": false
2814
3006
  },
2815
- {
2816
- "name": "associatedTokenProgram",
2817
- "isMut": false,
2818
- "isSigner": false
2819
- },
2820
3007
  {
2821
3008
  "name": "systemProgram",
2822
3009
  "isMut": false,
@@ -2826,20 +3013,11 @@ export const IDL: Vault = {
2826
3013
  "name": "tokenProgram",
2827
3014
  "isMut": false,
2828
3015
  "isSigner": false
2829
- },
2830
- {
2831
- "name": "rent",
2832
- "isMut": false,
2833
- "isSigner": false
2834
3016
  }
2835
3017
  ],
2836
3018
  "args": [
2837
3019
  {
2838
- "name": "pdaSalt",
2839
- "type": "string"
2840
- },
2841
- {
2842
- "name": "depositAmount",
3020
+ "name": "stakeAmount",
2843
3021
  "type": "u64"
2844
3022
  },
2845
3023
  {
@@ -2934,7 +3112,7 @@ export const IDL: Vault = {
2934
3112
  ]
2935
3113
  },
2936
3114
  {
2937
- "name": "withdrawVault",
3115
+ "name": "initHedgeFoundation",
2938
3116
  "accounts": [
2939
3117
  {
2940
3118
  "name": "vaultSystemState",
@@ -2942,53 +3120,38 @@ export const IDL: Vault = {
2942
3120
  "isSigner": false
2943
3121
  },
2944
3122
  {
2945
- "name": "vaultTypeAccount",
2946
- "isMut": true,
2947
- "isSigner": false
2948
- },
2949
- {
2950
- "name": "vaultTypeAssociatedTokenAccount",
2951
- "isMut": true,
2952
- "isSigner": false
2953
- },
2954
- {
2955
- "name": "vault",
2956
- "isMut": true,
2957
- "isSigner": false
2958
- },
2959
- {
2960
- "name": "vaultAssociatedTokenAccount",
3123
+ "name": "poolState",
2961
3124
  "isMut": true,
2962
3125
  "isSigner": false
2963
3126
  },
2964
3127
  {
2965
- "name": "feePool",
3128
+ "name": "poolEra",
2966
3129
  "isMut": true,
2967
- "isSigner": false
3130
+ "isSigner": true
2968
3131
  },
2969
3132
  {
2970
- "name": "feePoolAssociatedUshTokenAccount",
3133
+ "name": "poolUshAccount",
2971
3134
  "isMut": true,
2972
3135
  "isSigner": false
2973
3136
  },
2974
3137
  {
2975
- "name": "history",
3138
+ "name": "founder",
2976
3139
  "isMut": true,
2977
3140
  "isSigner": true
2978
3141
  },
2979
3142
  {
2980
- "name": "vaultOwner",
3143
+ "name": "ushMint",
2981
3144
  "isMut": true,
2982
- "isSigner": true
3145
+ "isSigner": false
2983
3146
  },
2984
3147
  {
2985
- "name": "destinationTokenAccount",
3148
+ "name": "hedgeMint",
2986
3149
  "isMut": true,
2987
3150
  "isSigner": false
2988
3151
  },
2989
3152
  {
2990
- "name": "ushMint",
2991
- "isMut": true,
3153
+ "name": "associatedTokenProgram",
3154
+ "isMut": false,
2992
3155
  "isSigner": false
2993
3156
  },
2994
3157
  {
@@ -3000,75 +3163,46 @@ export const IDL: Vault = {
3000
3163
  "name": "tokenProgram",
3001
3164
  "isMut": false,
3002
3165
  "isSigner": false
3003
- }
3004
- ],
3005
- "args": [
3006
- {
3007
- "name": "withdrawAmount",
3008
- "type": "u64"
3009
3166
  },
3010
3167
  {
3011
- "name": "overrideCurrentTime",
3012
- "type": "i64"
3168
+ "name": "rent",
3169
+ "isMut": false,
3170
+ "isSigner": false
3013
3171
  }
3014
- ]
3172
+ ],
3173
+ "args": []
3015
3174
  },
3016
3175
  {
3017
- "name": "loanVault",
3176
+ "name": "initHedgeFoundationTokens",
3018
3177
  "accounts": [
3019
3178
  {
3020
3179
  "name": "vaultSystemState",
3021
- "isMut": true,
3022
- "isSigner": false
3023
- },
3024
- {
3025
- "name": "vaultTypeAccount",
3026
- "isMut": true,
3027
- "isSigner": false
3028
- },
3029
- {
3030
- "name": "vaultTypeAssociatedTokenAccount",
3031
- "isMut": true,
3032
- "isSigner": false
3033
- },
3034
- {
3035
- "name": "vaultAccount",
3036
- "isMut": true,
3037
- "isSigner": false
3038
- },
3039
- {
3040
- "name": "vaultAssociatedTokenAccount",
3041
- "isMut": true,
3180
+ "isMut": false,
3042
3181
  "isSigner": false
3043
3182
  },
3044
3183
  {
3045
- "name": "history",
3184
+ "name": "founder",
3046
3185
  "isMut": true,
3047
3186
  "isSigner": true
3048
3187
  },
3049
3188
  {
3050
- "name": "feePool",
3051
- "isMut": true,
3052
- "isSigner": false
3053
- },
3054
- {
3055
- "name": "feePoolAssociatedUshTokenAccount",
3189
+ "name": "hedgeMint",
3056
3190
  "isMut": true,
3057
3191
  "isSigner": false
3058
3192
  },
3059
3193
  {
3060
- "name": "ushMint",
3194
+ "name": "founderAssociatedHedgeTokenAccount",
3061
3195
  "isMut": true,
3062
3196
  "isSigner": false
3063
3197
  },
3064
3198
  {
3065
- "name": "vaultOwner",
3199
+ "name": "communityAssociatedHedgeTokenAccount",
3066
3200
  "isMut": true,
3067
- "isSigner": true
3201
+ "isSigner": false
3068
3202
  },
3069
3203
  {
3070
- "name": "ownerUshAccount",
3071
- "isMut": true,
3204
+ "name": "associatedTokenProgram",
3205
+ "isMut": false,
3072
3206
  "isSigner": false
3073
3207
  },
3074
3208
  {
@@ -3080,21 +3214,17 @@ export const IDL: Vault = {
3080
3214
  "name": "tokenProgram",
3081
3215
  "isMut": false,
3082
3216
  "isSigner": false
3083
- }
3084
- ],
3085
- "args": [
3086
- {
3087
- "name": "normalizedLoanAmount",
3088
- "type": "u64"
3089
3217
  },
3090
3218
  {
3091
- "name": "overrideCurrentTime",
3092
- "type": "i64"
3219
+ "name": "rent",
3220
+ "isMut": false,
3221
+ "isSigner": false
3093
3222
  }
3094
- ]
3223
+ ],
3224
+ "args": []
3095
3225
  },
3096
3226
  {
3097
- "name": "repayVault",
3227
+ "name": "loanVault",
3098
3228
  "accounts": [
3099
3229
  {
3100
3230
  "name": "vaultSystemState",
@@ -3122,19 +3252,19 @@ export const IDL: Vault = {
3122
3252
  "isSigner": false
3123
3253
  },
3124
3254
  {
3125
- "name": "feePool",
3255
+ "name": "history",
3126
3256
  "isMut": true,
3127
- "isSigner": false
3257
+ "isSigner": true
3128
3258
  },
3129
3259
  {
3130
- "name": "feePoolAssociatedUshTokenAccount",
3260
+ "name": "feePool",
3131
3261
  "isMut": true,
3132
3262
  "isSigner": false
3133
3263
  },
3134
3264
  {
3135
- "name": "history",
3265
+ "name": "feePoolAssociatedUshTokenAccount",
3136
3266
  "isMut": true,
3137
- "isSigner": true
3267
+ "isSigner": false
3138
3268
  },
3139
3269
  {
3140
3270
  "name": "ushMint",
@@ -3164,7 +3294,7 @@ export const IDL: Vault = {
3164
3294
  ],
3165
3295
  "args": [
3166
3296
  {
3167
- "name": "repayAmount",
3297
+ "name": "normalizedLoanAmount",
3168
3298
  "type": "u64"
3169
3299
  },
3170
3300
  {
@@ -3259,67 +3389,7 @@ export const IDL: Vault = {
3259
3389
  ]
3260
3390
  },
3261
3391
  {
3262
- "name": "depositLiquidationPool",
3263
- "accounts": [
3264
- {
3265
- "name": "poolState",
3266
- "isMut": true,
3267
- "isSigner": false
3268
- },
3269
- {
3270
- "name": "poolUshAccount",
3271
- "isMut": true,
3272
- "isSigner": false
3273
- },
3274
- {
3275
- "name": "poolEra",
3276
- "isMut": true,
3277
- "isSigner": false
3278
- },
3279
- {
3280
- "name": "poolPosition",
3281
- "isMut": true,
3282
- "isSigner": true
3283
- },
3284
- {
3285
- "name": "ushMint",
3286
- "isMut": true,
3287
- "isSigner": false
3288
- },
3289
- {
3290
- "name": "payer",
3291
- "isMut": true,
3292
- "isSigner": true
3293
- },
3294
- {
3295
- "name": "ownerUshAccount",
3296
- "isMut": true,
3297
- "isSigner": false
3298
- },
3299
- {
3300
- "name": "systemProgram",
3301
- "isMut": false,
3302
- "isSigner": false
3303
- },
3304
- {
3305
- "name": "tokenProgram",
3306
- "isMut": false,
3307
- "isSigner": false
3308
- }
3309
- ],
3310
- "args": [
3311
- {
3312
- "name": "depositAmount",
3313
- "type": "u64"
3314
- },
3315
- {
3316
- "name": "overrideCurrentTime",
3317
- "type": "i64"
3318
- }
3319
- ]
3320
- },
3321
- {
3322
- "name": "liquidateVaultPrepAccounts",
3392
+ "name": "liquidateVault",
3323
3393
  "accounts": [
3324
3394
  {
3325
3395
  "name": "vaultSystemState",
@@ -3432,13 +3502,18 @@ export const IDL: Vault = {
3432
3502
  "isSigner": false
3433
3503
  }
3434
3504
  ],
3435
- "args": []
3505
+ "args": [
3506
+ {
3507
+ "name": "overrideCurrentTime",
3508
+ "type": "i64"
3509
+ }
3510
+ ]
3436
3511
  },
3437
3512
  {
3438
- "name": "liquidateVault",
3513
+ "name": "refreshOraclePrice",
3439
3514
  "accounts": [
3440
3515
  {
3441
- "name": "vaultSystemState",
3516
+ "name": "oracleInfoAccount",
3442
3517
  "isMut": true,
3443
3518
  "isSigner": false
3444
3519
  },
@@ -3448,107 +3523,31 @@ export const IDL: Vault = {
3448
3523
  "isSigner": false
3449
3524
  },
3450
3525
  {
3451
- "name": "vaultTypeAssociatedTokenAccount",
3452
- "isMut": true,
3453
- "isSigner": false
3454
- },
3455
- {
3456
- "name": "collateralMint",
3457
- "isMut": true,
3458
- "isSigner": false
3459
- },
3460
- {
3461
- "name": "vaultAccount",
3462
- "isMut": true,
3463
- "isSigner": false
3464
- },
3465
- {
3466
- "name": "vaultAssociatedTokenAccount",
3467
- "isMut": true,
3468
- "isSigner": false
3469
- },
3470
- {
3471
- "name": "poolState",
3472
- "isMut": true,
3473
- "isSigner": false
3474
- },
3475
- {
3476
- "name": "poolAssociatedTokenAccount",
3477
- "isMut": true,
3478
- "isSigner": false
3479
- },
3480
- {
3481
- "name": "feePool",
3482
- "isMut": true,
3483
- "isSigner": false
3484
- },
3485
- {
3486
- "name": "feePoolAssociatedTokenAccount",
3487
- "isMut": true,
3488
- "isSigner": false
3489
- },
3490
- {
3491
- "name": "feePoolAssociatedUshTokenAccount",
3492
- "isMut": true,
3493
- "isSigner": false
3494
- },
3495
- {
3496
- "name": "liquidationPoolUshAccount",
3497
- "isMut": true,
3498
- "isSigner": false
3499
- },
3500
- {
3501
- "name": "ushMint",
3502
- "isMut": true,
3503
- "isSigner": false
3504
- },
3505
- {
3506
- "name": "poolEra",
3507
- "isMut": true,
3508
- "isSigner": false
3509
- },
3510
- {
3511
- "name": "newEra",
3512
- "isMut": true,
3513
- "isSigner": true
3514
- },
3515
- {
3516
- "name": "history",
3517
- "isMut": true,
3518
- "isSigner": true
3519
- },
3520
- {
3521
- "name": "payer",
3522
- "isMut": true,
3523
- "isSigner": true
3524
- },
3525
- {
3526
- "name": "payerAssociatedTokenAccount",
3527
- "isMut": true,
3528
- "isSigner": false
3529
- },
3530
- {
3531
- "name": "associatedTokenProgram",
3526
+ "name": "oracleChainlink",
3532
3527
  "isMut": false,
3533
3528
  "isSigner": false
3534
3529
  },
3535
3530
  {
3536
- "name": "systemProgram",
3531
+ "name": "oraclePyth",
3537
3532
  "isMut": false,
3538
3533
  "isSigner": false
3539
3534
  },
3540
3535
  {
3541
- "name": "tokenProgram",
3536
+ "name": "oracleSwitchboard",
3542
3537
  "isMut": false,
3543
3538
  "isSigner": false
3544
3539
  },
3545
3540
  {
3546
- "name": "rent",
3541
+ "name": "systemProgram",
3547
3542
  "isMut": false,
3548
3543
  "isSigner": false
3549
3544
  }
3550
3545
  ],
3551
3546
  "args": [
3547
+ {
3548
+ "name": "overrideResult",
3549
+ "type": "u64"
3550
+ },
3552
3551
  {
3553
3552
  "name": "overrideCurrentTime",
3554
3553
  "type": "i64"
@@ -3556,7 +3555,7 @@ export const IDL: Vault = {
3556
3555
  ]
3557
3556
  },
3558
3557
  {
3559
- "name": "closeLiquidationPoolPosition",
3558
+ "name": "repayVault",
3560
3559
  "accounts": [
3561
3560
  {
3562
3561
  "name": "vaultSystemState",
@@ -3564,53 +3563,53 @@ export const IDL: Vault = {
3564
3563
  "isSigner": false
3565
3564
  },
3566
3565
  {
3567
- "name": "poolState",
3566
+ "name": "vaultTypeAccount",
3568
3567
  "isMut": true,
3569
3568
  "isSigner": false
3570
3569
  },
3571
3570
  {
3572
- "name": "poolEra",
3571
+ "name": "vaultTypeAssociatedTokenAccount",
3573
3572
  "isMut": true,
3574
3573
  "isSigner": false
3575
3574
  },
3576
3575
  {
3577
- "name": "poolPosition",
3576
+ "name": "vaultAccount",
3578
3577
  "isMut": true,
3579
3578
  "isSigner": false
3580
3579
  },
3581
3580
  {
3582
- "name": "poolUshAccount",
3581
+ "name": "vaultAssociatedTokenAccount",
3583
3582
  "isMut": true,
3584
3583
  "isSigner": false
3585
3584
  },
3586
3585
  {
3587
- "name": "payer",
3586
+ "name": "feePool",
3588
3587
  "isMut": true,
3589
- "isSigner": true
3588
+ "isSigner": false
3590
3589
  },
3591
3590
  {
3592
- "name": "ownerUshAccount",
3591
+ "name": "feePoolAssociatedUshTokenAccount",
3593
3592
  "isMut": true,
3594
3593
  "isSigner": false
3595
3594
  },
3596
3595
  {
3597
- "name": "hedgeMint",
3596
+ "name": "history",
3598
3597
  "isMut": true,
3599
- "isSigner": false
3598
+ "isSigner": true
3600
3599
  },
3601
3600
  {
3602
- "name": "payerAssociatedHedgeAccount",
3601
+ "name": "ushMint",
3603
3602
  "isMut": true,
3604
3603
  "isSigner": false
3605
3604
  },
3606
3605
  {
3607
- "name": "communityAssociatedHedgeTokenAccount",
3606
+ "name": "vaultOwner",
3608
3607
  "isMut": true,
3609
- "isSigner": false
3608
+ "isSigner": true
3610
3609
  },
3611
3610
  {
3612
- "name": "associatedTokenProgram",
3613
- "isMut": false,
3611
+ "name": "ownerUshAccount",
3612
+ "isMut": true,
3614
3613
  "isSigner": false
3615
3614
  },
3616
3615
  {
@@ -3622,14 +3621,13 @@ export const IDL: Vault = {
3622
3621
  "name": "tokenProgram",
3623
3622
  "isMut": false,
3624
3623
  "isSigner": false
3625
- },
3626
- {
3627
- "name": "rent",
3628
- "isMut": false,
3629
- "isSigner": false
3630
3624
  }
3631
3625
  ],
3632
3626
  "args": [
3627
+ {
3628
+ "name": "repayAmount",
3629
+ "type": "u64"
3630
+ },
3633
3631
  {
3634
3632
  "name": "overrideCurrentTime",
3635
3633
  "type": "i64"
@@ -3637,30 +3635,15 @@ export const IDL: Vault = {
3637
3635
  ]
3638
3636
  },
3639
3637
  {
3640
- "name": "claimLiquidationPoolPosition",
3638
+ "name": "setTokenMetadata",
3641
3639
  "accounts": [
3642
- {
3643
- "name": "poolState",
3644
- "isMut": true,
3645
- "isSigner": false
3646
- },
3647
- {
3648
- "name": "poolAssociatedTokenAccount",
3649
- "isMut": true,
3650
- "isSigner": false
3651
- },
3652
- {
3653
- "name": "vaultTypeAccount",
3654
- "isMut": true,
3655
- "isSigner": false
3656
- },
3657
- {
3658
- "name": "collateralMint",
3659
- "isMut": false,
3640
+ {
3641
+ "name": "metadataAccount",
3642
+ "isMut": true,
3660
3643
  "isSigner": false
3661
3644
  },
3662
3645
  {
3663
- "name": "poolPosition",
3646
+ "name": "mint",
3664
3647
  "isMut": true,
3665
3648
  "isSigner": false
3666
3649
  },
@@ -3670,10 +3653,15 @@ export const IDL: Vault = {
3670
3653
  "isSigner": true
3671
3654
  },
3672
3655
  {
3673
- "name": "payerAssociatedTokenAccount",
3656
+ "name": "vaultSystemState",
3674
3657
  "isMut": true,
3675
3658
  "isSigner": false
3676
3659
  },
3660
+ {
3661
+ "name": "tokenMetadataProgram",
3662
+ "isMut": false,
3663
+ "isSigner": false
3664
+ },
3677
3665
  {
3678
3666
  "name": "associatedTokenProgram",
3679
3667
  "isMut": false,
@@ -3695,10 +3683,31 @@ export const IDL: Vault = {
3695
3683
  "isSigner": false
3696
3684
  }
3697
3685
  ],
3698
- "args": []
3686
+ "args": [
3687
+ {
3688
+ "name": "mintPdaSeed",
3689
+ "type": "string"
3690
+ },
3691
+ {
3692
+ "name": "tokenName",
3693
+ "type": "string"
3694
+ },
3695
+ {
3696
+ "name": "tokenSymbol",
3697
+ "type": "string"
3698
+ },
3699
+ {
3700
+ "name": "tokenUri",
3701
+ "type": "string"
3702
+ },
3703
+ {
3704
+ "name": "firstTime",
3705
+ "type": "bool"
3706
+ }
3707
+ ]
3699
3708
  },
3700
3709
  {
3701
- "name": "addCollateralType",
3710
+ "name": "setHalted",
3702
3711
  "accounts": [
3703
3712
  {
3704
3713
  "name": "payer",
@@ -3709,64 +3718,95 @@ export const IDL: Vault = {
3709
3718
  "name": "vaultSystemState",
3710
3719
  "isMut": true,
3711
3720
  "isSigner": false
3721
+ }
3722
+ ],
3723
+ "args": [
3724
+ {
3725
+ "name": "halted",
3726
+ "type": "bool"
3727
+ }
3728
+ ]
3729
+ },
3730
+ {
3731
+ "name": "withdrawStakingPool",
3732
+ "accounts": [
3733
+ {
3734
+ "name": "payer",
3735
+ "isMut": true,
3736
+ "isSigner": true
3712
3737
  },
3713
3738
  {
3714
- "name": "oracleInfoAccount",
3739
+ "name": "vaultSystemState",
3715
3740
  "isMut": true,
3716
3741
  "isSigner": false
3717
3742
  },
3718
3743
  {
3719
- "name": "vaultTypeAccount",
3744
+ "name": "pool",
3720
3745
  "isMut": true,
3721
3746
  "isSigner": false
3722
3747
  },
3723
3748
  {
3724
- "name": "collateralMint",
3725
- "isMut": false,
3749
+ "name": "poolPosition",
3750
+ "isMut": true,
3726
3751
  "isSigner": false
3727
3752
  },
3728
3753
  {
3729
- "name": "oracleChainlink",
3730
- "isMut": false,
3754
+ "name": "hedgeMint",
3755
+ "isMut": true,
3731
3756
  "isSigner": false
3732
3757
  },
3733
3758
  {
3734
- "name": "oraclePyth",
3735
- "isMut": false,
3759
+ "name": "stakedTokenMint",
3760
+ "isMut": true,
3736
3761
  "isSigner": false
3737
3762
  },
3738
3763
  {
3739
- "name": "oracleSwitchboard",
3764
+ "name": "ushMint",
3740
3765
  "isMut": false,
3741
3766
  "isSigner": false
3742
3767
  },
3743
3768
  {
3744
- "name": "systemProgram",
3745
- "isMut": false,
3769
+ "name": "payerAssociatedStakedTokenAccount",
3770
+ "isMut": true,
3746
3771
  "isSigner": false
3747
- }
3748
- ],
3749
- "args": [
3772
+ },
3750
3773
  {
3751
- "name": "collateralType",
3752
- "type": "string"
3774
+ "name": "payerAssociatedHedgeAccount",
3775
+ "isMut": true,
3776
+ "isSigner": false
3753
3777
  },
3754
3778
  {
3755
- "name": "loanInitFee",
3756
- "type": "u64"
3779
+ "name": "payerAssociatedUshAccount",
3780
+ "isMut": true,
3781
+ "isSigner": false
3757
3782
  },
3758
3783
  {
3759
- "name": "minCollateralRatio",
3760
- "type": "u64"
3784
+ "name": "poolAssociatedStakedTokenAccount",
3785
+ "isMut": true,
3786
+ "isSigner": false
3761
3787
  },
3762
3788
  {
3763
- "name": "interestRatePerSecond",
3764
- "type": "u128"
3789
+ "name": "poolAssociatedUshTokenAccount",
3790
+ "isMut": true,
3791
+ "isSigner": false
3765
3792
  },
3766
3793
  {
3767
- "name": "minDebtPerVault",
3768
- "type": "u64"
3794
+ "name": "communityAssociatedHedgeTokenAccount",
3795
+ "isMut": true,
3796
+ "isSigner": false
3797
+ },
3798
+ {
3799
+ "name": "systemProgram",
3800
+ "isMut": false,
3801
+ "isSigner": false
3769
3802
  },
3803
+ {
3804
+ "name": "tokenProgram",
3805
+ "isMut": false,
3806
+ "isSigner": false
3807
+ }
3808
+ ],
3809
+ "args": [
3770
3810
  {
3771
3811
  "name": "overrideCurrentTime",
3772
3812
  "type": "i64"
@@ -3774,10 +3814,10 @@ export const IDL: Vault = {
3774
3814
  ]
3775
3815
  },
3776
3816
  {
3777
- "name": "refreshOraclePrice",
3817
+ "name": "withdrawVault",
3778
3818
  "accounts": [
3779
3819
  {
3780
- "name": "oracleInfoAccount",
3820
+ "name": "vaultSystemState",
3781
3821
  "isMut": true,
3782
3822
  "isSigner": false
3783
3823
  },
@@ -3787,29 +3827,64 @@ export const IDL: Vault = {
3787
3827
  "isSigner": false
3788
3828
  },
3789
3829
  {
3790
- "name": "oracleChainlink",
3791
- "isMut": false,
3830
+ "name": "vaultTypeAssociatedTokenAccount",
3831
+ "isMut": true,
3792
3832
  "isSigner": false
3793
3833
  },
3794
3834
  {
3795
- "name": "oraclePyth",
3796
- "isMut": false,
3835
+ "name": "vault",
3836
+ "isMut": true,
3797
3837
  "isSigner": false
3798
3838
  },
3799
3839
  {
3800
- "name": "oracleSwitchboard",
3801
- "isMut": false,
3840
+ "name": "vaultAssociatedTokenAccount",
3841
+ "isMut": true,
3842
+ "isSigner": false
3843
+ },
3844
+ {
3845
+ "name": "feePool",
3846
+ "isMut": true,
3847
+ "isSigner": false
3848
+ },
3849
+ {
3850
+ "name": "feePoolAssociatedUshTokenAccount",
3851
+ "isMut": true,
3852
+ "isSigner": false
3853
+ },
3854
+ {
3855
+ "name": "history",
3856
+ "isMut": true,
3857
+ "isSigner": true
3858
+ },
3859
+ {
3860
+ "name": "vaultOwner",
3861
+ "isMut": true,
3862
+ "isSigner": true
3863
+ },
3864
+ {
3865
+ "name": "destinationTokenAccount",
3866
+ "isMut": true,
3867
+ "isSigner": false
3868
+ },
3869
+ {
3870
+ "name": "ushMint",
3871
+ "isMut": true,
3802
3872
  "isSigner": false
3803
3873
  },
3804
3874
  {
3805
3875
  "name": "systemProgram",
3806
3876
  "isMut": false,
3807
3877
  "isSigner": false
3878
+ },
3879
+ {
3880
+ "name": "tokenProgram",
3881
+ "isMut": false,
3882
+ "isSigner": false
3808
3883
  }
3809
3884
  ],
3810
3885
  "args": [
3811
3886
  {
3812
- "name": "overrideResult",
3887
+ "name": "withdrawAmount",
3813
3888
  "type": "u64"
3814
3889
  },
3815
3890
  {
@@ -3821,479 +3896,509 @@ export const IDL: Vault = {
3821
3896
  ],
3822
3897
  "accounts": [
3823
3898
  {
3824
- "name": "stakingPool",
3899
+ "name": "aggregator",
3825
3900
  "type": {
3826
3901
  "kind": "struct",
3827
3902
  "fields": [
3828
3903
  {
3829
- "name": "deposits",
3830
- "type": "u64"
3904
+ "name": "isInitialized",
3905
+ "type": "bool"
3831
3906
  },
3832
3907
  {
3833
- "name": "bump",
3834
- "type": "u8"
3908
+ "name": "version",
3909
+ "type": "u32"
3835
3910
  },
3836
3911
  {
3837
- "name": "seedPhrase",
3838
- "type": "string"
3912
+ "name": "config",
3913
+ "type": {
3914
+ "defined": "Config"
3915
+ }
3839
3916
  },
3840
3917
  {
3841
- "name": "hedgeRewardAccumulator",
3842
- "type": "u128"
3918
+ "name": "updatedAt",
3919
+ "type": "i64"
3843
3920
  },
3844
3921
  {
3845
- "name": "ushFeeAccumulator",
3922
+ "name": "owner",
3923
+ "type": "publicKey"
3924
+ },
3925
+ {
3926
+ "name": "submissions",
3927
+ "type": {
3928
+ "array": [
3929
+ {
3930
+ "defined": "Submission"
3931
+ },
3932
+ 8
3933
+ ]
3934
+ }
3935
+ },
3936
+ {
3937
+ "name": "answer",
3938
+ "type": {
3939
+ "option": "u128"
3940
+ }
3941
+ }
3942
+ ]
3943
+ }
3944
+ },
3945
+ {
3946
+ "name": "liquidationPoolEra",
3947
+ "type": {
3948
+ "kind": "struct",
3949
+ "fields": [
3950
+ {
3951
+ "name": "totalDeposits",
3952
+ "type": "u64"
3953
+ },
3954
+ {
3955
+ "name": "productBytes",
3846
3956
  "type": "u128"
3847
3957
  },
3848
3958
  {
3849
- "name": "solFeeAccumulator",
3959
+ "name": "sumBytes",
3960
+ "type": {
3961
+ "array": [
3962
+ "u128",
3963
+ 32
3964
+ ]
3965
+ }
3966
+ },
3967
+ {
3968
+ "name": "hedgeRewardsAccumulatorBytes",
3850
3969
  "type": "u128"
3851
3970
  },
3852
3971
  {
3853
- "name": "startTime",
3854
- "type": "i64"
3972
+ "name": "hedgeRewardsTimestamp",
3973
+ "type": "u64"
3974
+ }
3975
+ ]
3976
+ }
3977
+ },
3978
+ {
3979
+ "name": "liquidationPoolState",
3980
+ "type": {
3981
+ "kind": "struct",
3982
+ "fields": [
3983
+ {
3984
+ "name": "currentEra",
3985
+ "type": "publicKey"
3855
3986
  },
3856
3987
  {
3857
- "name": "lastTransactionTime",
3858
- "type": "i64"
3988
+ "name": "lifetimeDeposits",
3989
+ "type": "u64"
3990
+ },
3991
+ {
3992
+ "name": "lifetimeOpenedPositions",
3993
+ "type": "u64"
3994
+ },
3995
+ {
3996
+ "name": "lifetimeClosedPositions",
3997
+ "type": "u64"
3998
+ },
3999
+ {
4000
+ "name": "lifetimeVaultsLiquidated",
4001
+ "type": "u64"
3859
4002
  },
3860
4003
  {
3861
- "name": "halfLifeInDays",
4004
+ "name": "lifetimeVaultsRedistributed",
3862
4005
  "type": "u64"
3863
4006
  },
3864
4007
  {
3865
- "name": "totalHedgeReward",
4008
+ "name": "lifetimeSolPurchased",
3866
4009
  "type": "u64"
3867
4010
  },
3868
4011
  {
3869
- "name": "stakedTokenMint",
3870
- "type": "publicKey"
4012
+ "name": "hedgeInitRewardsTimestamp",
4013
+ "type": "u64"
3871
4014
  }
3872
4015
  ]
3873
4016
  }
3874
4017
  },
3875
4018
  {
3876
- "name": "stakingPoolPosition",
4019
+ "name": "liquidationPosition",
3877
4020
  "type": {
3878
4021
  "kind": "struct",
3879
4022
  "fields": [
3880
4023
  {
3881
4024
  "name": "state",
3882
- "type": {
3883
- "defined": "PositionState"
3884
- }
4025
+ "type": "u64"
3885
4026
  },
3886
4027
  {
3887
- "name": "owner",
4028
+ "name": "era",
3888
4029
  "type": "publicKey"
3889
4030
  },
3890
4031
  {
3891
- "name": "pool",
4032
+ "name": "ownerAccount",
3892
4033
  "type": "publicKey"
3893
4034
  },
3894
4035
  {
3895
- "name": "deposited",
4036
+ "name": "deposit",
3896
4037
  "type": "u64"
3897
4038
  },
3898
4039
  {
3899
- "name": "startHedgeRewardAccumulator",
4040
+ "name": "closedUsh",
4041
+ "type": "u64"
4042
+ },
4043
+ {
4044
+ "name": "productSnapshotEntry",
3900
4045
  "type": "u128"
3901
4046
  },
3902
4047
  {
3903
- "name": "startUshFeeAccumulator",
4048
+ "name": "productSnapshotClosed",
3904
4049
  "type": "u128"
3905
4050
  },
3906
4051
  {
3907
- "name": "startSolFeeAccumulator",
4052
+ "name": "sumSnapshotsEntry",
4053
+ "type": {
4054
+ "array": [
4055
+ "u128",
4056
+ 32
4057
+ ]
4058
+ }
4059
+ },
4060
+ {
4061
+ "name": "sumSnapshotsClosed",
4062
+ "type": {
4063
+ "array": [
4064
+ "u128",
4065
+ 32
4066
+ ]
4067
+ }
4068
+ },
4069
+ {
4070
+ "name": "hedgeRewardsSnapshotAccum",
3908
4071
  "type": "u128"
3909
4072
  },
3910
4073
  {
3911
4074
  "name": "timestampOpened",
3912
- "type": "i64"
4075
+ "type": "u64"
3913
4076
  },
3914
4077
  {
3915
4078
  "name": "timestampClosed",
3916
- "type": "i64"
3917
- },
3918
- {
3919
- "name": "closedRewardedTokens",
3920
4079
  "type": "u64"
3921
4080
  }
3922
4081
  ]
3923
4082
  }
3924
4083
  },
3925
4084
  {
3926
- "name": "vaultSystemState",
4085
+ "name": "oracleInfoForCollateralType",
3927
4086
  "type": {
3928
4087
  "kind": "struct",
3929
4088
  "fields": [
3930
4089
  {
3931
- "name": "lastRedeemFeeBytes",
3932
- "type": "u128"
3933
- },
3934
- {
3935
- "name": "lastRedeemTimestamp",
3936
- "type": "i64"
3937
- },
3938
- {
3939
- "name": "totalUshSupply",
3940
- "type": "u64"
3941
- },
3942
- {
3943
- "name": "totalVaults",
3944
- "type": "u64"
3945
- },
3946
- {
3947
- "name": "totalVaultsClosed",
3948
- "type": "u64"
3949
- },
3950
- {
3951
- "name": "debtRedistributionError",
3952
- "type": "u64"
4090
+ "name": "collateralType",
4091
+ "type": "string"
3953
4092
  },
3954
4093
  {
3955
- "name": "authority",
4094
+ "name": "oraclePyth",
3956
4095
  "type": "publicKey"
3957
4096
  },
3958
4097
  {
3959
- "name": "hedgeStakingPool",
4098
+ "name": "oracleChainlink",
3960
4099
  "type": "publicKey"
3961
4100
  },
3962
4101
  {
3963
- "name": "collateralTypeCount",
3964
- "type": "u64"
4102
+ "name": "oracleSwitchboard",
4103
+ "type": "publicKey"
3965
4104
  }
3966
4105
  ]
3967
4106
  }
3968
4107
  },
3969
4108
  {
3970
- "name": "vault",
4109
+ "name": "stakingPool",
3971
4110
  "type": {
3972
4111
  "kind": "struct",
3973
4112
  "fields": [
3974
4113
  {
3975
- "name": "vaultOwner",
3976
- "type": "publicKey"
3977
- },
3978
- {
3979
- "name": "pdaSalt",
3980
- "type": "string"
3981
- },
3982
- {
3983
- "name": "bump",
3984
- "type": "u8"
4114
+ "name": "halfLifeInDays",
4115
+ "type": "u64"
3985
4116
  },
3986
4117
  {
3987
- "name": "deposited",
4118
+ "name": "deposits",
3988
4119
  "type": "u64"
3989
4120
  },
3990
4121
  {
3991
- "name": "denormalizedDebt",
4122
+ "name": "startTime",
3992
4123
  "type": "u64"
3993
4124
  },
3994
4125
  {
3995
- "name": "vaultVersion",
4126
+ "name": "lastTransactionTime",
3996
4127
  "type": "u64"
3997
4128
  },
3998
4129
  {
3999
- "name": "debtProductSnapshotBytes",
4130
+ "name": "hedgeRewardAccumulator",
4000
4131
  "type": "u128"
4001
4132
  },
4002
4133
  {
4003
- "name": "collateralAccumulatorSnapshotBytes",
4134
+ "name": "ushFeeAccumulator",
4004
4135
  "type": "u128"
4005
4136
  },
4006
4137
  {
4007
- "name": "collateralType",
4008
- "type": "string"
4138
+ "name": "totalHedgeReward",
4139
+ "type": "u64"
4009
4140
  },
4010
4141
  {
4011
- "name": "debtType",
4142
+ "name": "stakedTokenMint",
4143
+ "type": "publicKey"
4144
+ },
4145
+ {
4146
+ "name": "seedPhrase",
4012
4147
  "type": {
4013
- "defined": "CurrencyType"
4148
+ "array": [
4149
+ "u8",
4150
+ 12
4151
+ ]
4014
4152
  }
4015
4153
  },
4016
4154
  {
4017
- "name": "vaultStatus",
4155
+ "name": "collateralFeeAccumulator",
4018
4156
  "type": {
4019
- "defined": "VaultStatus"
4157
+ "array": [
4158
+ "u128",
4159
+ 32
4160
+ ]
4020
4161
  }
4162
+ },
4163
+ {
4164
+ "name": "bump",
4165
+ "type": "u8"
4021
4166
  }
4022
4167
  ]
4023
4168
  }
4024
4169
  },
4025
4170
  {
4026
- "name": "vaultHistoryEvent",
4171
+ "name": "stakingPoolPosition",
4027
4172
  "type": {
4028
4173
  "kind": "struct",
4029
4174
  "fields": [
4030
4175
  {
4031
- "name": "vaultAccount",
4176
+ "name": "owner",
4032
4177
  "type": "publicKey"
4033
4178
  },
4034
4179
  {
4035
- "name": "actorAccount",
4180
+ "name": "pool",
4036
4181
  "type": "publicKey"
4037
4182
  },
4038
4183
  {
4039
- "name": "usdSolPrice",
4040
- "type": "u128"
4041
- },
4042
- {
4043
- "name": "ushDebtBefore",
4044
- "type": "u64"
4045
- },
4046
- {
4047
- "name": "ushDebtAfter",
4048
- "type": "u64"
4049
- },
4050
- {
4051
- "name": "solBalanceBefore",
4052
- "type": "u64"
4053
- },
4054
- {
4055
- "name": "solBalanceAfter",
4184
+ "name": "deposited",
4056
4185
  "type": "u64"
4057
4186
  },
4058
4187
  {
4059
- "name": "minCollateralRatioBefore",
4188
+ "name": "startHedgeRewardAccumulator",
4060
4189
  "type": "u128"
4061
4190
  },
4062
4191
  {
4063
- "name": "minCollateralRatioAfter",
4192
+ "name": "startUshFeeAccumulator",
4064
4193
  "type": "u128"
4065
4194
  },
4066
4195
  {
4067
- "name": "vaultStateBefore",
4196
+ "name": "startCollateralFeeAccumulator",
4068
4197
  "type": {
4069
- "defined": "VaultStatus"
4198
+ "array": [
4199
+ "u128",
4200
+ 32
4201
+ ]
4070
4202
  }
4071
4203
  },
4072
4204
  {
4073
- "name": "vaultStateAfter",
4205
+ "name": "closedCollateralFeeAccumulator",
4074
4206
  "type": {
4075
- "defined": "VaultStatus"
4207
+ "array": [
4208
+ "u128",
4209
+ 32
4210
+ ]
4076
4211
  }
4077
4212
  },
4078
4213
  {
4079
- "name": "timestamp",
4080
- "type": "i64"
4214
+ "name": "timestampOpened",
4215
+ "type": "u64"
4081
4216
  },
4082
4217
  {
4083
- "name": "action",
4218
+ "name": "timestampClosed",
4219
+ "type": "u64"
4220
+ },
4221
+ {
4222
+ "name": "closedRewardedTokens",
4223
+ "type": "u64"
4224
+ },
4225
+ {
4226
+ "name": "state",
4084
4227
  "type": {
4085
- "defined": "VaultHistoryAction"
4228
+ "defined": "PositionState"
4086
4229
  }
4087
4230
  }
4088
4231
  ]
4089
4232
  }
4090
4233
  },
4091
4234
  {
4092
- "name": "liquidationPoolState",
4235
+ "name": "vault",
4093
4236
  "type": {
4094
4237
  "kind": "struct",
4095
4238
  "fields": [
4096
4239
  {
4097
- "name": "currentEra",
4240
+ "name": "vaultOwner",
4098
4241
  "type": "publicKey"
4099
4242
  },
4100
4243
  {
4101
- "name": "lifetimeDeposits",
4102
- "type": "u64"
4244
+ "name": "pdaSalt",
4245
+ "type": "string"
4103
4246
  },
4104
4247
  {
4105
- "name": "lifetimeOpenedPositions",
4106
- "type": "u64"
4248
+ "name": "bump",
4249
+ "type": "u8"
4107
4250
  },
4108
4251
  {
4109
- "name": "lifetimeClosedPositions",
4252
+ "name": "deposited",
4110
4253
  "type": "u64"
4111
4254
  },
4112
4255
  {
4113
- "name": "lifetimeVaultsLiquidated",
4256
+ "name": "denormalizedDebt",
4114
4257
  "type": "u64"
4115
4258
  },
4116
4259
  {
4117
- "name": "lifetimeVaultsRedistributed",
4260
+ "name": "vaultVersion",
4118
4261
  "type": "u64"
4119
4262
  },
4120
4263
  {
4121
- "name": "lifetimeSolPurchased",
4122
- "type": "u64"
4264
+ "name": "debtProductSnapshotBytes",
4265
+ "type": "u128"
4123
4266
  },
4124
4267
  {
4125
- "name": "hedgeInitRewardsTimestamp",
4126
- "type": "i64"
4127
- }
4128
- ]
4129
- }
4130
- },
4131
- {
4132
- "name": "liquidationPoolEra",
4133
- "type": {
4134
- "kind": "struct",
4135
- "fields": [
4268
+ "name": "collateralAccumulatorSnapshotBytes",
4269
+ "type": "u128"
4270
+ },
4136
4271
  {
4137
- "name": "totalDeposits",
4138
- "type": "u64"
4272
+ "name": "collateralType",
4273
+ "type": "string"
4139
4274
  },
4140
4275
  {
4141
- "name": "productBytes",
4142
- "type": "u128"
4276
+ "name": "debtType",
4277
+ "type": {
4278
+ "defined": "CurrencyType"
4279
+ }
4143
4280
  },
4144
4281
  {
4145
- "name": "sumBytes",
4282
+ "name": "vaultStatus",
4146
4283
  "type": {
4147
- "array": [
4148
- "u128",
4149
- 32
4150
- ]
4284
+ "defined": "VaultStatus"
4151
4285
  }
4152
4286
  },
4153
4287
  {
4154
- "name": "hedgeRewardsAccumulatorBytes",
4155
- "type": "u128"
4288
+ "name": "timeCreated",
4289
+ "type": "u64"
4156
4290
  },
4157
4291
  {
4158
- "name": "hedgeRewardsTimestamp",
4159
- "type": "i64"
4292
+ "name": "timeLastInteraction",
4293
+ "type": "u64"
4160
4294
  }
4161
4295
  ]
4162
4296
  }
4163
4297
  },
4164
4298
  {
4165
- "name": "liquidationPosition",
4299
+ "name": "vaultHistoryEvent",
4166
4300
  "type": {
4167
4301
  "kind": "struct",
4168
4302
  "fields": [
4169
4303
  {
4170
- "name": "state",
4171
- "type": "u64"
4172
- },
4173
- {
4174
- "name": "era",
4304
+ "name": "vaultAccount",
4175
4305
  "type": "publicKey"
4176
4306
  },
4177
4307
  {
4178
- "name": "ownerAccount",
4308
+ "name": "actorAccount",
4179
4309
  "type": "publicKey"
4180
4310
  },
4181
4311
  {
4182
- "name": "deposit",
4312
+ "name": "usdCollateralPrice",
4313
+ "type": "u128"
4314
+ },
4315
+ {
4316
+ "name": "ushDebtBefore",
4183
4317
  "type": "u64"
4184
4318
  },
4185
4319
  {
4186
- "name": "closedUsh",
4320
+ "name": "ushDebtAfter",
4187
4321
  "type": "u64"
4188
4322
  },
4189
4323
  {
4190
- "name": "productSnapshotEntry",
4191
- "type": "u128"
4324
+ "name": "collateralBalanceBefore",
4325
+ "type": "u64"
4192
4326
  },
4193
4327
  {
4194
- "name": "productSnapshotClosed",
4195
- "type": "u128"
4328
+ "name": "collateralBalanceAfter",
4329
+ "type": "u64"
4196
4330
  },
4197
4331
  {
4198
- "name": "sumSnapshotsEntry",
4332
+ "name": "vaultStateBefore",
4199
4333
  "type": {
4200
- "array": [
4201
- "u128",
4202
- 32
4203
- ]
4334
+ "defined": "VaultStatus"
4204
4335
  }
4205
4336
  },
4206
4337
  {
4207
- "name": "sumSnapshotsClosed",
4338
+ "name": "vaultStateAfter",
4208
4339
  "type": {
4209
- "array": [
4210
- "u128",
4211
- 32
4212
- ]
4340
+ "defined": "VaultStatus"
4213
4341
  }
4214
4342
  },
4215
4343
  {
4216
- "name": "hedgeRewardsSnapshotAccum",
4217
- "type": "u128"
4218
- },
4219
- {
4220
- "name": "timestampOpened",
4221
- "type": "i64"
4344
+ "name": "timestamp",
4345
+ "type": "u64"
4222
4346
  },
4223
4347
  {
4224
- "name": "timestampClosed",
4225
- "type": "i64"
4348
+ "name": "action",
4349
+ "type": {
4350
+ "defined": "VaultHistoryAction"
4351
+ }
4226
4352
  }
4227
4353
  ]
4228
4354
  }
4229
4355
  },
4230
4356
  {
4231
- "name": "aggregator",
4357
+ "name": "vaultSystemState",
4232
4358
  "type": {
4233
4359
  "kind": "struct",
4234
4360
  "fields": [
4235
4361
  {
4236
- "name": "isInitialized",
4237
- "type": "bool"
4362
+ "name": "lastRedeemFeeBytes",
4363
+ "type": "u128"
4238
4364
  },
4239
4365
  {
4240
- "name": "version",
4241
- "type": "u32"
4366
+ "name": "lastRedeemTimestamp",
4367
+ "type": "u64"
4242
4368
  },
4243
4369
  {
4244
- "name": "config",
4245
- "type": {
4246
- "defined": "Config"
4247
- }
4370
+ "name": "totalUshSupply",
4371
+ "type": "u64"
4248
4372
  },
4249
4373
  {
4250
- "name": "updatedAt",
4251
- "type": "i64"
4374
+ "name": "totalVaults",
4375
+ "type": "u64"
4252
4376
  },
4253
4377
  {
4254
- "name": "owner",
4255
- "type": "publicKey"
4378
+ "name": "totalVaultsClosed",
4379
+ "type": "u64"
4256
4380
  },
4257
4381
  {
4258
- "name": "submissions",
4259
- "type": {
4260
- "array": [
4261
- {
4262
- "defined": "Submission"
4263
- },
4264
- 8
4265
- ]
4266
- }
4382
+ "name": "debtRedistributionError",
4383
+ "type": "u64"
4267
4384
  },
4268
4385
  {
4269
- "name": "answer",
4270
- "type": {
4271
- "option": "u128"
4272
- }
4273
- }
4274
- ]
4275
- }
4276
- },
4277
- {
4278
- "name": "oracleInfoForCollateralType",
4279
- "type": {
4280
- "kind": "struct",
4281
- "fields": [
4282
- {
4283
- "name": "collateralType",
4284
- "type": "string"
4386
+ "name": "authority",
4387
+ "type": "publicKey"
4285
4388
  },
4286
4389
  {
4287
- "name": "oraclePyth",
4390
+ "name": "hedgeStakingPool",
4288
4391
  "type": "publicKey"
4289
4392
  },
4290
4393
  {
4291
- "name": "oracleChainlink",
4292
- "type": "publicKey"
4394
+ "name": "collateralTypeCount",
4395
+ "type": "u64"
4293
4396
  },
4294
4397
  {
4295
- "name": "oracleSwitchboard",
4296
- "type": "publicKey"
4398
+ "name": "status",
4399
+ "type": {
4400
+ "defined": "SystemStatus"
4401
+ }
4297
4402
  }
4298
4403
  ]
4299
4404
  }
@@ -4321,7 +4426,7 @@ export const IDL: Vault = {
4321
4426
  },
4322
4427
  {
4323
4428
  "name": "priceLastUpdatedTimestamp",
4324
- "type": "i64"
4429
+ "type": "u64"
4325
4430
  },
4326
4431
  {
4327
4432
  "name": "collateralHeld",
@@ -4331,6 +4436,10 @@ export const IDL: Vault = {
4331
4436
  "name": "denormalizedDebtExtended",
4332
4437
  "type": "u64"
4333
4438
  },
4439
+ {
4440
+ "name": "collateralDecimals",
4441
+ "type": "u8"
4442
+ },
4334
4443
  {
4335
4444
  "name": "debtRedistributionProduct",
4336
4445
  "type": "u128"
@@ -4351,13 +4460,21 @@ export const IDL: Vault = {
4351
4460
  "name": "minDebtPerVault",
4352
4461
  "type": "u64"
4353
4462
  },
4463
+ {
4464
+ "name": "maxDebtExtended",
4465
+ "type": "u64"
4466
+ },
4467
+ {
4468
+ "name": "canBeRedeemed",
4469
+ "type": "bool"
4470
+ },
4354
4471
  {
4355
4472
  "name": "cumulativeRate",
4356
4473
  "type": "u128"
4357
4474
  },
4358
4475
  {
4359
4476
  "name": "cumulativeRateLastUpdated",
4360
- "type": "i64"
4477
+ "type": "u64"
4361
4478
  },
4362
4479
  {
4363
4480
  "name": "interestRatePerSecond",
@@ -4464,6 +4581,20 @@ export const IDL: Vault = {
4464
4581
  ]
4465
4582
  }
4466
4583
  },
4584
+ {
4585
+ "name": "SystemStatus",
4586
+ "type": {
4587
+ "kind": "enum",
4588
+ "variants": [
4589
+ {
4590
+ "name": "Halted"
4591
+ },
4592
+ {
4593
+ "name": "Running"
4594
+ }
4595
+ ]
4596
+ }
4597
+ },
4467
4598
  {
4468
4599
  "name": "VaultHistoryAction",
4469
4600
  "type": {
@@ -4504,62 +4635,205 @@ export const IDL: Vault = {
4504
4635
  }
4505
4636
  ]
4506
4637
  }
4638
+ }
4639
+ ],
4640
+ "events": [
4641
+ {
4642
+ "name": "NewVaultEvent",
4643
+ "fields": [
4644
+ {
4645
+ "name": "vault",
4646
+ "type": "publicKey",
4647
+ "index": false
4648
+ },
4649
+ {
4650
+ "name": "deposited",
4651
+ "type": "u64",
4652
+ "index": false
4653
+ }
4654
+ ]
4507
4655
  },
4508
4656
  {
4509
- "name": "HedgeErrors",
4510
- "type": {
4511
- "kind": "enum",
4512
- "variants": [
4513
- {
4514
- "name": "AlreadyInitialized"
4515
- },
4516
- {
4517
- "name": "CollateralRatioTooLow"
4518
- },
4519
- {
4520
- "name": "NotInitialized"
4521
- },
4522
- {
4523
- "name": "Overdraw"
4524
- },
4525
- {
4526
- "name": "Overpaid"
4527
- },
4528
- {
4529
- "name": "VaultClosed"
4530
- },
4531
- {
4532
- "name": "VaultNotSubjectToLiquidation"
4533
- },
4534
- {
4535
- "name": "VaultHasNoDebt"
4536
- },
4537
- {
4538
- "name": "NotAuthorizedToCreateStakingPools"
4539
- },
4540
- {
4541
- "name": "NotAuthorized"
4542
- },
4543
- {
4544
- "name": "BadSeed"
4545
- },
4546
- {
4547
- "name": "CollateralPriceOutOfDate"
4548
- },
4549
- {
4550
- "name": "EmergencyMode"
4551
- },
4552
- {
4553
- "name": "MinDebtRequired"
4554
- },
4555
- {
4556
- "name": "PoolPositionAlreadyClosed"
4557
- },
4558
- {
4559
- "name": "PoolPositionNoYetClosed"
4560
- }
4561
- ]
4562
- }
4657
+ "name": "DepositVaultEvent",
4658
+ "fields": [
4659
+ {
4660
+ "name": "vault",
4661
+ "type": "publicKey",
4662
+ "index": false
4663
+ },
4664
+ {
4665
+ "name": "amount",
4666
+ "type": "u64",
4667
+ "index": false
4668
+ }
4669
+ ]
4670
+ },
4671
+ {
4672
+ "name": "WithdrawVaultEvent",
4673
+ "fields": [
4674
+ {
4675
+ "name": "vault",
4676
+ "type": "publicKey",
4677
+ "index": false
4678
+ },
4679
+ {
4680
+ "name": "amount",
4681
+ "type": "u64",
4682
+ "index": false
4683
+ }
4684
+ ]
4685
+ },
4686
+ {
4687
+ "name": "LoanVaultEvent",
4688
+ "fields": [
4689
+ {
4690
+ "name": "vault",
4691
+ "type": "publicKey",
4692
+ "index": false
4693
+ },
4694
+ {
4695
+ "name": "amount",
4696
+ "type": "u64",
4697
+ "index": false
4698
+ }
4699
+ ]
4700
+ },
4701
+ {
4702
+ "name": "RepayVaultEvent",
4703
+ "fields": [
4704
+ {
4705
+ "name": "vault",
4706
+ "type": "publicKey",
4707
+ "index": false
4708
+ },
4709
+ {
4710
+ "name": "amount",
4711
+ "type": "u64",
4712
+ "index": false
4713
+ }
4714
+ ]
4715
+ },
4716
+ {
4717
+ "name": "RedeemVaultEvent",
4718
+ "fields": [
4719
+ {
4720
+ "name": "vault",
4721
+ "type": "publicKey",
4722
+ "index": false
4723
+ },
4724
+ {
4725
+ "name": "amount",
4726
+ "type": "u64",
4727
+ "index": false
4728
+ }
4729
+ ]
4730
+ },
4731
+ {
4732
+ "name": "LiquidateVaultEvent",
4733
+ "fields": [
4734
+ {
4735
+ "name": "vault",
4736
+ "type": "publicKey",
4737
+ "index": false
4738
+ }
4739
+ ]
4740
+ }
4741
+ ],
4742
+ "errors": [
4743
+ {
4744
+ "code": 6000,
4745
+ "name": "AlreadyInitialized",
4746
+ "msg": "This vault was already initialized"
4747
+ },
4748
+ {
4749
+ "code": 6001,
4750
+ "name": "CollateralRatioTooLow",
4751
+ "msg": "Collateral ratio too low"
4752
+ },
4753
+ {
4754
+ "code": 6002,
4755
+ "name": "NotInitialized",
4756
+ "msg": "This vault was not initialized"
4757
+ },
4758
+ {
4759
+ "code": 6003,
4760
+ "name": "Overdraw",
4761
+ "msg": "Cannot withdraw more than deposited"
4762
+ },
4763
+ {
4764
+ "code": 6004,
4765
+ "name": "Overpaid",
4766
+ "msg": "Cannot repay more than loaned"
4767
+ },
4768
+ {
4769
+ "code": 6005,
4770
+ "name": "VaultClosed",
4771
+ "msg": "Vault cannot be liquidated. It is collateralized."
4772
+ },
4773
+ {
4774
+ "code": 6006,
4775
+ "name": "VaultNotSubjectToLiquidation",
4776
+ "msg": "Vault closed"
4777
+ },
4778
+ {
4779
+ "code": 6007,
4780
+ "name": "VaultHasNoDebt",
4781
+ "msg": "Vault does not have any debt"
4782
+ },
4783
+ {
4784
+ "code": 6008,
4785
+ "name": "NotAuthorizedToCreateStakingPools",
4786
+ "msg": "Signer not authorized to create new staking pools"
4787
+ },
4788
+ {
4789
+ "code": 6009,
4790
+ "name": "NotAuthorized",
4791
+ "msg": "Signer not authorized to call this function"
4792
+ },
4793
+ {
4794
+ "code": 6010,
4795
+ "name": "BadSeed",
4796
+ "msg": "Bad Seed"
4797
+ },
4798
+ {
4799
+ "code": 6011,
4800
+ "name": "CollateralPriceOutOfDate",
4801
+ "msg": "Collateral price needs to be refreshed. It is only valid for 60 seconds."
4802
+ },
4803
+ {
4804
+ "code": 6012,
4805
+ "name": "EmergencyMode",
4806
+ "msg": "System is not accepting any tx that would worsen collateral ratio at this time"
4807
+ },
4808
+ {
4809
+ "code": 6013,
4810
+ "name": "MinDebtRequired",
4811
+ "msg": "Vault under the minimum debt limit. Vault must have zero debt or be over the minimum."
4812
+ },
4813
+ {
4814
+ "code": 6014,
4815
+ "name": "PoolPositionAlreadyClosed",
4816
+ "msg": "Pool position already closed"
4817
+ },
4818
+ {
4819
+ "code": 6015,
4820
+ "name": "PoolPositionNoYetClosed",
4821
+ "msg": "Pool position must be closed to claim reward"
4822
+ },
4823
+ {
4824
+ "code": 6016,
4825
+ "name": "MaxDebtAgainstVaultType",
4826
+ "msg": "Max debt extended against vault type reached."
4827
+ },
4828
+ {
4829
+ "code": 6017,
4830
+ "name": "VaultTypeNotRedeemable",
4831
+ "msg": "Vault type cannot be redeemed against."
4832
+ },
4833
+ {
4834
+ "code": 6018,
4835
+ "name": "SystemHalted",
4836
+ "msg": "System is currently halted. No actions may be taken at this time."
4563
4837
  }
4564
4838
  ]
4565
4839
  };