@jup-ag/lend 0.0.106 → 0.0.107-beta.1

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.
@@ -1,4211 +1,9 @@
1
- import * as _solana_web3_js from '@solana/web3.js';
2
- import { Connection, PublicKey, TransactionInstruction } from '@solana/web3.js';
3
- import BN from 'bn.js';
1
+ import { V as Vaults, L as LiquidateParams } from '../shared/lend.DNFQlLzM.mjs';
2
+ export { C as ConnectionParams, I as InitPositionIxParams, e as LiquidateContextParams, O as OperateContextParams, a as OperateParams, c as getInitPositionContext, b as getInitPositionIx, f as getLiquidateContext, h as getLiquidateIx, g as getOperateContext, d as getOperateIx } from '../shared/lend.DNFQlLzM.mjs';
4
3
  import { Program } from '@coral-xyz/anchor';
5
-
6
- /**
7
- * Program IDL in camelCase format in order to be used in JS/TS.
8
- *
9
- * Note that this is only a type helper and is not the actual IDL. The original
10
- * IDL can be found at `target/idl/vaults.json`.
11
- */
12
- type Vaults = {
13
- address: "jupr81YtYssSyPt8jbnGuiWon5f6x9TcDEFxYe3Bdzi";
14
- metadata: {
15
- name: "vaults";
16
- version: "0.1.0";
17
- spec: "0.1.0";
18
- description: "Created with Anchor";
19
- };
20
- instructions: [
21
- {
22
- name: "getExchangePrices";
23
- discriminator: [237, 128, 83, 152, 52, 21, 231, 86];
24
- accounts: [
25
- {
26
- name: "vaultState";
27
- },
28
- {
29
- name: "vaultConfig";
30
- },
31
- {
32
- name: "supplyTokenReserves";
33
- },
34
- {
35
- name: "borrowTokenReserves";
36
- }
37
- ];
38
- args: [];
39
- },
40
- {
41
- name: "initBranch";
42
- discriminator: [162, 91, 57, 23, 228, 93, 111, 21];
43
- accounts: [
44
- {
45
- name: "signer";
46
- writable: true;
47
- signer: true;
48
- },
49
- {
50
- name: "vaultConfig";
51
- docs: ["@dev Verification inside instruction logic"];
52
- },
53
- {
54
- name: "branch";
55
- writable: true;
56
- pda: {
57
- seeds: [
58
- {
59
- kind: "const";
60
- value: [98, 114, 97, 110, 99, 104];
61
- },
62
- {
63
- kind: "arg";
64
- path: "vaultId";
65
- },
66
- {
67
- kind: "arg";
68
- path: "branchId";
69
- }
70
- ];
71
- };
72
- },
73
- {
74
- name: "systemProgram";
75
- address: "11111111111111111111111111111111";
76
- }
77
- ];
78
- args: [
79
- {
80
- name: "vaultId";
81
- type: "u16";
82
- },
83
- {
84
- name: "branchId";
85
- type: "u32";
86
- }
87
- ];
88
- },
89
- {
90
- name: "initPosition";
91
- discriminator: [197, 20, 10, 1, 97, 160, 177, 91];
92
- accounts: [
93
- {
94
- name: "signer";
95
- writable: true;
96
- signer: true;
97
- },
98
- {
99
- name: "vaultAdmin";
100
- },
101
- {
102
- name: "vaultState";
103
- docs: ["@dev Verification inside instruction logic"];
104
- writable: true;
105
- },
106
- {
107
- name: "position";
108
- writable: true;
109
- pda: {
110
- seeds: [
111
- {
112
- kind: "const";
113
- value: [112, 111, 115, 105, 116, 105, 111, 110];
114
- },
115
- {
116
- kind: "arg";
117
- path: "vaultId";
118
- },
119
- {
120
- kind: "arg";
121
- path: "nextPositionId";
122
- }
123
- ];
124
- };
125
- },
126
- {
127
- name: "positionMint";
128
- writable: true;
129
- pda: {
130
- seeds: [
131
- {
132
- kind: "const";
133
- value: [
134
- 112,
135
- 111,
136
- 115,
137
- 105,
138
- 116,
139
- 105,
140
- 111,
141
- 110,
142
- 95,
143
- 109,
144
- 105,
145
- 110,
146
- 116
147
- ];
148
- },
149
- {
150
- kind: "arg";
151
- path: "vaultId";
152
- },
153
- {
154
- kind: "arg";
155
- path: "nextPositionId";
156
- }
157
- ];
158
- };
159
- },
160
- {
161
- name: "positionTokenAccount";
162
- writable: true;
163
- pda: {
164
- seeds: [
165
- {
166
- kind: "account";
167
- path: "signer";
168
- },
169
- {
170
- kind: "const";
171
- value: [
172
- 6,
173
- 221,
174
- 246,
175
- 225,
176
- 215,
177
- 101,
178
- 161,
179
- 147,
180
- 217,
181
- 203,
182
- 225,
183
- 70,
184
- 206,
185
- 235,
186
- 121,
187
- 172,
188
- 28,
189
- 180,
190
- 133,
191
- 237,
192
- 95,
193
- 91,
194
- 55,
195
- 145,
196
- 58,
197
- 140,
198
- 245,
199
- 133,
200
- 126,
201
- 255,
202
- 0,
203
- 169
204
- ];
205
- },
206
- {
207
- kind: "account";
208
- path: "positionMint";
209
- }
210
- ];
211
- program: {
212
- kind: "const";
213
- value: [
214
- 140,
215
- 151,
216
- 37,
217
- 143,
218
- 78,
219
- 36,
220
- 137,
221
- 241,
222
- 187,
223
- 61,
224
- 16,
225
- 41,
226
- 20,
227
- 142,
228
- 13,
229
- 131,
230
- 11,
231
- 90,
232
- 19,
233
- 153,
234
- 218,
235
- 255,
236
- 16,
237
- 132,
238
- 4,
239
- 142,
240
- 123,
241
- 216,
242
- 219,
243
- 233,
244
- 248,
245
- 89
246
- ];
247
- };
248
- };
249
- },
250
- {
251
- name: "metadataAccount";
252
- writable: true;
253
- pda: {
254
- seeds: [
255
- {
256
- kind: "const";
257
- value: [109, 101, 116, 97, 100, 97, 116, 97];
258
- },
259
- {
260
- kind: "const";
261
- value: [
262
- 11,
263
- 112,
264
- 101,
265
- 177,
266
- 227,
267
- 209,
268
- 124,
269
- 69,
270
- 56,
271
- 157,
272
- 82,
273
- 127,
274
- 107,
275
- 4,
276
- 195,
277
- 205,
278
- 88,
279
- 184,
280
- 108,
281
- 115,
282
- 26,
283
- 160,
284
- 253,
285
- 181,
286
- 73,
287
- 182,
288
- 209,
289
- 188,
290
- 3,
291
- 248,
292
- 41,
293
- 70
294
- ];
295
- },
296
- {
297
- kind: "account";
298
- path: "positionMint";
299
- }
300
- ];
301
- program: {
302
- kind: "const";
303
- value: [
304
- 11,
305
- 112,
306
- 101,
307
- 177,
308
- 227,
309
- 209,
310
- 124,
311
- 69,
312
- 56,
313
- 157,
314
- 82,
315
- 127,
316
- 107,
317
- 4,
318
- 195,
319
- 205,
320
- 88,
321
- 184,
322
- 108,
323
- 115,
324
- 26,
325
- 160,
326
- 253,
327
- 181,
328
- 73,
329
- 182,
330
- 209,
331
- 188,
332
- 3,
333
- 248,
334
- 41,
335
- 70
336
- ];
337
- };
338
- };
339
- },
340
- {
341
- name: "tokenProgram";
342
- },
343
- {
344
- name: "associatedTokenProgram";
345
- address: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
346
- },
347
- {
348
- name: "systemProgram";
349
- address: "11111111111111111111111111111111";
350
- },
351
- {
352
- name: "sysvarInstruction";
353
- address: "Sysvar1nstructions1111111111111111111111111";
354
- },
355
- {
356
- name: "metadataProgram";
357
- address: "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s";
358
- },
359
- {
360
- name: "rent";
361
- address: "SysvarRent111111111111111111111111111111111";
362
- }
363
- ];
364
- args: [
365
- {
366
- name: "vaultId";
367
- type: "u16";
368
- },
369
- {
370
- name: "nextPositionId";
371
- type: "u32";
372
- }
373
- ];
374
- },
375
- {
376
- name: "initTick";
377
- discriminator: [22, 13, 62, 141, 73, 89, 178, 29];
378
- accounts: [
379
- {
380
- name: "signer";
381
- writable: true;
382
- signer: true;
383
- },
384
- {
385
- name: "vaultConfig";
386
- docs: ["@dev Verification inside instruction logic"];
387
- },
388
- {
389
- name: "tickData";
390
- writable: true;
391
- },
392
- {
393
- name: "systemProgram";
394
- address: "11111111111111111111111111111111";
395
- }
396
- ];
397
- args: [
398
- {
399
- name: "vaultId";
400
- type: "u16";
401
- },
402
- {
403
- name: "tick";
404
- type: "i32";
405
- }
406
- ];
407
- },
408
- {
409
- name: "initTickHasDebtArray";
410
- discriminator: [206, 108, 146, 245, 20, 0, 141, 208];
411
- accounts: [
412
- {
413
- name: "signer";
414
- writable: true;
415
- signer: true;
416
- },
417
- {
418
- name: "vaultConfig";
419
- docs: ["@dev Verification inside instruction logic"];
420
- },
421
- {
422
- name: "tickHasDebtArray";
423
- writable: true;
424
- pda: {
425
- seeds: [
426
- {
427
- kind: "const";
428
- value: [
429
- 116,
430
- 105,
431
- 99,
432
- 107,
433
- 95,
434
- 104,
435
- 97,
436
- 115,
437
- 95,
438
- 100,
439
- 101,
440
- 98,
441
- 116
442
- ];
443
- },
444
- {
445
- kind: "arg";
446
- path: "vaultId";
447
- },
448
- {
449
- kind: "arg";
450
- path: "index";
451
- }
452
- ];
453
- };
454
- },
455
- {
456
- name: "systemProgram";
457
- address: "11111111111111111111111111111111";
458
- }
459
- ];
460
- args: [
461
- {
462
- name: "vaultId";
463
- type: "u16";
464
- },
465
- {
466
- name: "index";
467
- type: "u8";
468
- }
469
- ];
470
- },
471
- {
472
- name: "initTickIdLiquidation";
473
- discriminator: [56, 110, 121, 169, 152, 241, 86, 183];
474
- accounts: [
475
- {
476
- name: "signer";
477
- writable: true;
478
- signer: true;
479
- },
480
- {
481
- name: "tickData";
482
- docs: ["@dev Verification inside instruction logic"];
483
- },
484
- {
485
- name: "tickIdLiquidation";
486
- writable: true;
487
- },
488
- {
489
- name: "systemProgram";
490
- address: "11111111111111111111111111111111";
491
- }
492
- ];
493
- args: [
494
- {
495
- name: "vaultId";
496
- type: "u16";
497
- },
498
- {
499
- name: "tick";
500
- type: "i32";
501
- },
502
- {
503
- name: "totalIds";
504
- type: "u32";
505
- }
506
- ];
507
- },
508
- {
509
- name: "initVaultAdmin";
510
- discriminator: [22, 133, 2, 244, 123, 100, 249, 230];
511
- accounts: [
512
- {
513
- name: "signer";
514
- writable: true;
515
- signer: true;
516
- },
517
- {
518
- name: "vaultAdmin";
519
- writable: true;
520
- pda: {
521
- seeds: [
522
- {
523
- kind: "const";
524
- value: [118, 97, 117, 108, 116, 95, 97, 100, 109, 105, 110];
525
- }
526
- ];
527
- };
528
- },
529
- {
530
- name: "systemProgram";
531
- address: "11111111111111111111111111111111";
532
- }
533
- ];
534
- args: [
535
- {
536
- name: "liquidity";
537
- type: "pubkey";
538
- },
539
- {
540
- name: "authority";
541
- type: "pubkey";
542
- }
543
- ];
544
- },
545
- {
546
- name: "initVaultConfig";
547
- discriminator: [41, 194, 69, 254, 196, 246, 226, 195];
548
- accounts: [
549
- {
550
- name: "authority";
551
- writable: true;
552
- signer: true;
553
- },
554
- {
555
- name: "vaultAdmin";
556
- writable: true;
557
- },
558
- {
559
- name: "vaultConfig";
560
- writable: true;
561
- pda: {
562
- seeds: [
563
- {
564
- kind: "const";
565
- value: [
566
- 118,
567
- 97,
568
- 117,
569
- 108,
570
- 116,
571
- 95,
572
- 99,
573
- 111,
574
- 110,
575
- 102,
576
- 105,
577
- 103
578
- ];
579
- },
580
- {
581
- kind: "arg";
582
- path: "vaultId";
583
- }
584
- ];
585
- };
586
- },
587
- {
588
- name: "vaultMetadata";
589
- writable: true;
590
- pda: {
591
- seeds: [
592
- {
593
- kind: "const";
594
- value: [
595
- 118,
596
- 97,
597
- 117,
598
- 108,
599
- 116,
600
- 95,
601
- 109,
602
- 101,
603
- 116,
604
- 97,
605
- 100,
606
- 97,
607
- 116,
608
- 97
609
- ];
610
- },
611
- {
612
- kind: "arg";
613
- path: "vaultId";
614
- }
615
- ];
616
- };
617
- },
618
- {
619
- name: "oracle";
620
- },
621
- {
622
- name: "supplyToken";
623
- },
624
- {
625
- name: "borrowToken";
626
- },
627
- {
628
- name: "systemProgram";
629
- address: "11111111111111111111111111111111";
630
- }
631
- ];
632
- args: [
633
- {
634
- name: "vaultId";
635
- type: "u16";
636
- },
637
- {
638
- name: "params";
639
- type: {
640
- defined: {
641
- name: "initVaultConfigParams";
642
- };
643
- };
644
- }
645
- ];
646
- },
647
- {
648
- name: "initVaultState";
649
- discriminator: [96, 120, 23, 100, 153, 11, 13, 165];
650
- accounts: [
651
- {
652
- name: "authority";
653
- writable: true;
654
- signer: true;
655
- },
656
- {
657
- name: "vaultAdmin";
658
- writable: true;
659
- },
660
- {
661
- name: "vaultConfig";
662
- docs: ["@dev Verification inside instruction logic"];
663
- },
664
- {
665
- name: "vaultState";
666
- writable: true;
667
- pda: {
668
- seeds: [
669
- {
670
- kind: "const";
671
- value: [118, 97, 117, 108, 116, 95, 115, 116, 97, 116, 101];
672
- },
673
- {
674
- kind: "arg";
675
- path: "vaultId";
676
- }
677
- ];
678
- };
679
- },
680
- {
681
- name: "supplyTokenReservesLiquidity";
682
- docs: ["@dev Verification inside instruction logic"];
683
- },
684
- {
685
- name: "borrowTokenReservesLiquidity";
686
- docs: ["@dev Verification inside instruction logic"];
687
- },
688
- {
689
- name: "systemProgram";
690
- address: "11111111111111111111111111111111";
691
- }
692
- ];
693
- args: [
694
- {
695
- name: "vaultId";
696
- type: "u16";
697
- }
698
- ];
699
- },
700
- {
701
- name: "liquidate";
702
- discriminator: [223, 179, 226, 125, 48, 46, 39, 74];
703
- accounts: [
704
- {
705
- name: "signer";
706
- writable: true;
707
- signer: true;
708
- },
709
- {
710
- name: "signerTokenAccount";
711
- writable: true;
712
- pda: {
713
- seeds: [
714
- {
715
- kind: "account";
716
- path: "signer";
717
- },
718
- {
719
- kind: "account";
720
- path: "borrowTokenProgram";
721
- },
722
- {
723
- kind: "account";
724
- path: "borrowToken";
725
- }
726
- ];
727
- program: {
728
- kind: "const";
729
- value: [
730
- 140,
731
- 151,
732
- 37,
733
- 143,
734
- 78,
735
- 36,
736
- 137,
737
- 241,
738
- 187,
739
- 61,
740
- 16,
741
- 41,
742
- 20,
743
- 142,
744
- 13,
745
- 131,
746
- 11,
747
- 90,
748
- 19,
749
- 153,
750
- 218,
751
- 255,
752
- 16,
753
- 132,
754
- 4,
755
- 142,
756
- 123,
757
- 216,
758
- 219,
759
- 233,
760
- 248,
761
- 89
762
- ];
763
- };
764
- };
765
- },
766
- {
767
- name: "to";
768
- },
769
- {
770
- name: "toTokenAccount";
771
- writable: true;
772
- pda: {
773
- seeds: [
774
- {
775
- kind: "account";
776
- path: "to";
777
- },
778
- {
779
- kind: "account";
780
- path: "supplyTokenProgram";
781
- },
782
- {
783
- kind: "account";
784
- path: "supplyToken";
785
- }
786
- ];
787
- program: {
788
- kind: "const";
789
- value: [
790
- 140,
791
- 151,
792
- 37,
793
- 143,
794
- 78,
795
- 36,
796
- 137,
797
- 241,
798
- 187,
799
- 61,
800
- 16,
801
- 41,
802
- 20,
803
- 142,
804
- 13,
805
- 131,
806
- 11,
807
- 90,
808
- 19,
809
- 153,
810
- 218,
811
- 255,
812
- 16,
813
- 132,
814
- 4,
815
- 142,
816
- 123,
817
- 216,
818
- 219,
819
- 233,
820
- 248,
821
- 89
822
- ];
823
- };
824
- };
825
- },
826
- {
827
- name: "vaultConfig";
828
- docs: [
829
- "@dev mut because this PDA signs the CPI to liquidity program",
830
- "@dev verification inside instruction logic"
831
- ];
832
- },
833
- {
834
- name: "vaultState";
835
- writable: true;
836
- },
837
- {
838
- name: "supplyToken";
839
- },
840
- {
841
- name: "borrowToken";
842
- },
843
- {
844
- name: "oracle";
845
- },
846
- {
847
- name: "newBranch";
848
- writable: true;
849
- },
850
- {
851
- name: "supplyTokenReservesLiquidity";
852
- writable: true;
853
- },
854
- {
855
- name: "borrowTokenReservesLiquidity";
856
- writable: true;
857
- },
858
- {
859
- name: "vaultSupplyPositionOnLiquidity";
860
- writable: true;
861
- },
862
- {
863
- name: "vaultBorrowPositionOnLiquidity";
864
- writable: true;
865
- },
866
- {
867
- name: "supplyRateModel";
868
- },
869
- {
870
- name: "borrowRateModel";
871
- },
872
- {
873
- name: "supplyTokenClaimAccount";
874
- writable: true;
875
- optional: true;
876
- },
877
- {
878
- name: "liquidity";
879
- },
880
- {
881
- name: "liquidityProgram";
882
- },
883
- {
884
- name: "vaultSupplyTokenAccount";
885
- writable: true;
886
- },
887
- {
888
- name: "vaultBorrowTokenAccount";
889
- writable: true;
890
- },
891
- {
892
- name: "supplyTokenProgram";
893
- },
894
- {
895
- name: "borrowTokenProgram";
896
- },
897
- {
898
- name: "systemProgram";
899
- address: "11111111111111111111111111111111";
900
- },
901
- {
902
- name: "associatedTokenProgram";
903
- address: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
904
- },
905
- {
906
- name: "oracleProgram";
907
- }
908
- ];
909
- args: [
910
- {
911
- name: "debtAmt";
912
- type: "u64";
913
- },
914
- {
915
- name: "colPerUnitDebt";
916
- type: "u128";
917
- },
918
- {
919
- name: "absorb";
920
- type: "bool";
921
- },
922
- {
923
- name: "transferType";
924
- type: {
925
- option: {
926
- defined: {
927
- name: "transferType";
928
- };
929
- };
930
- };
931
- },
932
- {
933
- name: "remainingAccountsIndices";
934
- type: "bytes";
935
- }
936
- ];
937
- },
938
- {
939
- name: "operate";
940
- discriminator: [217, 106, 208, 99, 116, 151, 42, 135];
941
- accounts: [
942
- {
943
- name: "signer";
944
- writable: true;
945
- signer: true;
946
- },
947
- {
948
- name: "signerSupplyTokenAccount";
949
- writable: true;
950
- pda: {
951
- seeds: [
952
- {
953
- kind: "account";
954
- path: "signer";
955
- },
956
- {
957
- kind: "account";
958
- path: "supplyTokenProgram";
959
- },
960
- {
961
- kind: "account";
962
- path: "supplyToken";
963
- }
964
- ];
965
- program: {
966
- kind: "const";
967
- value: [
968
- 140,
969
- 151,
970
- 37,
971
- 143,
972
- 78,
973
- 36,
974
- 137,
975
- 241,
976
- 187,
977
- 61,
978
- 16,
979
- 41,
980
- 20,
981
- 142,
982
- 13,
983
- 131,
984
- 11,
985
- 90,
986
- 19,
987
- 153,
988
- 218,
989
- 255,
990
- 16,
991
- 132,
992
- 4,
993
- 142,
994
- 123,
995
- 216,
996
- 219,
997
- 233,
998
- 248,
999
- 89
1000
- ];
1001
- };
1002
- };
1003
- },
1004
- {
1005
- name: "signerBorrowTokenAccount";
1006
- writable: true;
1007
- pda: {
1008
- seeds: [
1009
- {
1010
- kind: "account";
1011
- path: "signer";
1012
- },
1013
- {
1014
- kind: "account";
1015
- path: "borrowTokenProgram";
1016
- },
1017
- {
1018
- kind: "account";
1019
- path: "borrowToken";
1020
- }
1021
- ];
1022
- program: {
1023
- kind: "const";
1024
- value: [
1025
- 140,
1026
- 151,
1027
- 37,
1028
- 143,
1029
- 78,
1030
- 36,
1031
- 137,
1032
- 241,
1033
- 187,
1034
- 61,
1035
- 16,
1036
- 41,
1037
- 20,
1038
- 142,
1039
- 13,
1040
- 131,
1041
- 11,
1042
- 90,
1043
- 19,
1044
- 153,
1045
- 218,
1046
- 255,
1047
- 16,
1048
- 132,
1049
- 4,
1050
- 142,
1051
- 123,
1052
- 216,
1053
- 219,
1054
- 233,
1055
- 248,
1056
- 89
1057
- ];
1058
- };
1059
- };
1060
- },
1061
- {
1062
- name: "recipient";
1063
- optional: true;
1064
- },
1065
- {
1066
- name: "recipientBorrowTokenAccount";
1067
- writable: true;
1068
- optional: true;
1069
- pda: {
1070
- seeds: [
1071
- {
1072
- kind: "account";
1073
- path: "recipient";
1074
- },
1075
- {
1076
- kind: "account";
1077
- path: "borrowTokenProgram";
1078
- },
1079
- {
1080
- kind: "account";
1081
- path: "borrowToken";
1082
- }
1083
- ];
1084
- program: {
1085
- kind: "const";
1086
- value: [
1087
- 140,
1088
- 151,
1089
- 37,
1090
- 143,
1091
- 78,
1092
- 36,
1093
- 137,
1094
- 241,
1095
- 187,
1096
- 61,
1097
- 16,
1098
- 41,
1099
- 20,
1100
- 142,
1101
- 13,
1102
- 131,
1103
- 11,
1104
- 90,
1105
- 19,
1106
- 153,
1107
- 218,
1108
- 255,
1109
- 16,
1110
- 132,
1111
- 4,
1112
- 142,
1113
- 123,
1114
- 216,
1115
- 219,
1116
- 233,
1117
- 248,
1118
- 89
1119
- ];
1120
- };
1121
- };
1122
- },
1123
- {
1124
- name: "recipientSupplyTokenAccount";
1125
- writable: true;
1126
- optional: true;
1127
- pda: {
1128
- seeds: [
1129
- {
1130
- kind: "account";
1131
- path: "recipient";
1132
- },
1133
- {
1134
- kind: "account";
1135
- path: "supplyTokenProgram";
1136
- },
1137
- {
1138
- kind: "account";
1139
- path: "supplyToken";
1140
- }
1141
- ];
1142
- program: {
1143
- kind: "const";
1144
- value: [
1145
- 140,
1146
- 151,
1147
- 37,
1148
- 143,
1149
- 78,
1150
- 36,
1151
- 137,
1152
- 241,
1153
- 187,
1154
- 61,
1155
- 16,
1156
- 41,
1157
- 20,
1158
- 142,
1159
- 13,
1160
- 131,
1161
- 11,
1162
- 90,
1163
- 19,
1164
- 153,
1165
- 218,
1166
- 255,
1167
- 16,
1168
- 132,
1169
- 4,
1170
- 142,
1171
- 123,
1172
- 216,
1173
- 219,
1174
- 233,
1175
- 248,
1176
- 89
1177
- ];
1178
- };
1179
- };
1180
- },
1181
- {
1182
- name: "vaultConfig";
1183
- docs: [
1184
- "@dev mut because this PDA signs the CPI to liquidity program",
1185
- "@dev verification inside instruction logic"
1186
- ];
1187
- },
1188
- {
1189
- name: "vaultState";
1190
- docs: ["@dev verification inside instruction logic"];
1191
- writable: true;
1192
- },
1193
- {
1194
- name: "supplyToken";
1195
- },
1196
- {
1197
- name: "borrowToken";
1198
- },
1199
- {
1200
- name: "oracle";
1201
- },
1202
- {
1203
- name: "position";
1204
- writable: true;
1205
- },
1206
- {
1207
- name: "positionTokenAccount";
1208
- docs: ["@dev verification inside instruction logic"];
1209
- },
1210
- {
1211
- name: "currentPositionTick";
1212
- writable: true;
1213
- },
1214
- {
1215
- name: "finalPositionTick";
1216
- writable: true;
1217
- },
1218
- {
1219
- name: "currentPositionTickId";
1220
- },
1221
- {
1222
- name: "finalPositionTickId";
1223
- writable: true;
1224
- },
1225
- {
1226
- name: "newBranch";
1227
- writable: true;
1228
- },
1229
- {
1230
- name: "supplyTokenReservesLiquidity";
1231
- writable: true;
1232
- },
1233
- {
1234
- name: "borrowTokenReservesLiquidity";
1235
- writable: true;
1236
- },
1237
- {
1238
- name: "vaultSupplyPositionOnLiquidity";
1239
- writable: true;
1240
- },
1241
- {
1242
- name: "vaultBorrowPositionOnLiquidity";
1243
- writable: true;
1244
- },
1245
- {
1246
- name: "supplyRateModel";
1247
- },
1248
- {
1249
- name: "borrowRateModel";
1250
- },
1251
- {
1252
- name: "vaultSupplyTokenAccount";
1253
- writable: true;
1254
- },
1255
- {
1256
- name: "vaultBorrowTokenAccount";
1257
- writable: true;
1258
- },
1259
- {
1260
- name: "supplyTokenClaimAccount";
1261
- writable: true;
1262
- optional: true;
1263
- },
1264
- {
1265
- name: "borrowTokenClaimAccount";
1266
- writable: true;
1267
- optional: true;
1268
- },
1269
- {
1270
- name: "liquidity";
1271
- },
1272
- {
1273
- name: "liquidityProgram";
1274
- },
1275
- {
1276
- name: "oracleProgram";
1277
- },
1278
- {
1279
- name: "supplyTokenProgram";
1280
- },
1281
- {
1282
- name: "borrowTokenProgram";
1283
- },
1284
- {
1285
- name: "associatedTokenProgram";
1286
- address: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
1287
- },
1288
- {
1289
- name: "systemProgram";
1290
- address: "11111111111111111111111111111111";
1291
- }
1292
- ];
1293
- args: [
1294
- {
1295
- name: "newCol";
1296
- type: "i128";
1297
- },
1298
- {
1299
- name: "newDebt";
1300
- type: "i128";
1301
- },
1302
- {
1303
- name: "transferType";
1304
- type: {
1305
- option: {
1306
- defined: {
1307
- name: "transferType";
1308
- };
1309
- };
1310
- };
1311
- },
1312
- {
1313
- name: "remainingAccountsIndices";
1314
- type: "bytes";
1315
- }
1316
- ];
1317
- },
1318
- {
1319
- name: "rebalance";
1320
- discriminator: [108, 158, 77, 9, 210, 52, 88, 62];
1321
- accounts: [
1322
- {
1323
- name: "rebalancer";
1324
- writable: true;
1325
- signer: true;
1326
- relations: ["vaultConfig"];
1327
- },
1328
- {
1329
- name: "rebalancerSupplyTokenAccount";
1330
- writable: true;
1331
- pda: {
1332
- seeds: [
1333
- {
1334
- kind: "account";
1335
- path: "rebalancer";
1336
- },
1337
- {
1338
- kind: "account";
1339
- path: "supplyTokenProgram";
1340
- },
1341
- {
1342
- kind: "account";
1343
- path: "supplyToken";
1344
- }
1345
- ];
1346
- program: {
1347
- kind: "const";
1348
- value: [
1349
- 140,
1350
- 151,
1351
- 37,
1352
- 143,
1353
- 78,
1354
- 36,
1355
- 137,
1356
- 241,
1357
- 187,
1358
- 61,
1359
- 16,
1360
- 41,
1361
- 20,
1362
- 142,
1363
- 13,
1364
- 131,
1365
- 11,
1366
- 90,
1367
- 19,
1368
- 153,
1369
- 218,
1370
- 255,
1371
- 16,
1372
- 132,
1373
- 4,
1374
- 142,
1375
- 123,
1376
- 216,
1377
- 219,
1378
- 233,
1379
- 248,
1380
- 89
1381
- ];
1382
- };
1383
- };
1384
- },
1385
- {
1386
- name: "rebalancerBorrowTokenAccount";
1387
- writable: true;
1388
- pda: {
1389
- seeds: [
1390
- {
1391
- kind: "account";
1392
- path: "rebalancer";
1393
- },
1394
- {
1395
- kind: "account";
1396
- path: "borrowTokenProgram";
1397
- },
1398
- {
1399
- kind: "account";
1400
- path: "borrowToken";
1401
- }
1402
- ];
1403
- program: {
1404
- kind: "const";
1405
- value: [
1406
- 140,
1407
- 151,
1408
- 37,
1409
- 143,
1410
- 78,
1411
- 36,
1412
- 137,
1413
- 241,
1414
- 187,
1415
- 61,
1416
- 16,
1417
- 41,
1418
- 20,
1419
- 142,
1420
- 13,
1421
- 131,
1422
- 11,
1423
- 90,
1424
- 19,
1425
- 153,
1426
- 218,
1427
- 255,
1428
- 16,
1429
- 132,
1430
- 4,
1431
- 142,
1432
- 123,
1433
- 216,
1434
- 219,
1435
- 233,
1436
- 248,
1437
- 89
1438
- ];
1439
- };
1440
- };
1441
- },
1442
- {
1443
- name: "vaultConfig";
1444
- docs: [
1445
- "@dev mut because this PDA signs the CPI to liquidity program",
1446
- "@dev verification inside instruction logic"
1447
- ];
1448
- writable: true;
1449
- },
1450
- {
1451
- name: "vaultState";
1452
- docs: ["@dev verification inside instruction logic"];
1453
- writable: true;
1454
- },
1455
- {
1456
- name: "supplyToken";
1457
- relations: ["vaultConfig"];
1458
- },
1459
- {
1460
- name: "borrowToken";
1461
- relations: ["vaultConfig"];
1462
- },
1463
- {
1464
- name: "supplyTokenReservesLiquidity";
1465
- writable: true;
1466
- },
1467
- {
1468
- name: "borrowTokenReservesLiquidity";
1469
- writable: true;
1470
- },
1471
- {
1472
- name: "vaultSupplyPositionOnLiquidity";
1473
- writable: true;
1474
- },
1475
- {
1476
- name: "vaultBorrowPositionOnLiquidity";
1477
- writable: true;
1478
- },
1479
- {
1480
- name: "supplyRateModel";
1481
- },
1482
- {
1483
- name: "borrowRateModel";
1484
- },
1485
- {
1486
- name: "liquidity";
1487
- },
1488
- {
1489
- name: "liquidityProgram";
1490
- },
1491
- {
1492
- name: "vaultSupplyTokenAccount";
1493
- writable: true;
1494
- },
1495
- {
1496
- name: "vaultBorrowTokenAccount";
1497
- writable: true;
1498
- },
1499
- {
1500
- name: "systemProgram";
1501
- address: "11111111111111111111111111111111";
1502
- },
1503
- {
1504
- name: "supplyTokenProgram";
1505
- },
1506
- {
1507
- name: "borrowTokenProgram";
1508
- },
1509
- {
1510
- name: "associatedTokenProgram";
1511
- address: "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
1512
- }
1513
- ];
1514
- args: [];
1515
- },
1516
- {
1517
- name: "updateAuthority";
1518
- discriminator: [32, 46, 64, 28, 149, 75, 243, 88];
1519
- accounts: [
1520
- {
1521
- name: "signer";
1522
- signer: true;
1523
- },
1524
- {
1525
- name: "vaultAdmin";
1526
- writable: true;
1527
- }
1528
- ];
1529
- args: [
1530
- {
1531
- name: "newAuthority";
1532
- type: "pubkey";
1533
- }
1534
- ];
1535
- },
1536
- {
1537
- name: "updateAuths";
1538
- discriminator: [93, 96, 178, 156, 57, 117, 253, 209];
1539
- accounts: [
1540
- {
1541
- name: "signer";
1542
- signer: true;
1543
- },
1544
- {
1545
- name: "vaultAdmin";
1546
- writable: true;
1547
- }
1548
- ];
1549
- args: [
1550
- {
1551
- name: "authStatus";
1552
- type: {
1553
- vec: {
1554
- defined: {
1555
- name: "addressBool";
1556
- };
1557
- };
1558
- };
1559
- }
1560
- ];
1561
- },
1562
- {
1563
- name: "updateBorrowFee";
1564
- discriminator: [251, 124, 35, 148, 202, 167, 157, 65];
1565
- accounts: [
1566
- {
1567
- name: "authority";
1568
- signer: true;
1569
- },
1570
- {
1571
- name: "vaultAdmin";
1572
- },
1573
- {
1574
- name: "vaultState";
1575
- docs: ["@dev Verification inside instruction logic"];
1576
- writable: true;
1577
- },
1578
- {
1579
- name: "vaultConfig";
1580
- docs: ["@dev Verification inside instruction logic"];
1581
- writable: true;
1582
- },
1583
- {
1584
- name: "supplyTokenReservesLiquidity";
1585
- docs: ["@dev Verification inside instruction logic"];
1586
- },
1587
- {
1588
- name: "borrowTokenReservesLiquidity";
1589
- docs: ["@dev Verification inside instruction logic"];
1590
- }
1591
- ];
1592
- args: [
1593
- {
1594
- name: "vaultId";
1595
- type: "u16";
1596
- },
1597
- {
1598
- name: "borrowFee";
1599
- type: "u16";
1600
- }
1601
- ];
1602
- },
1603
- {
1604
- name: "updateBorrowRateMagnifier";
1605
- discriminator: [75, 250, 27, 176, 156, 53, 26, 112];
1606
- accounts: [
1607
- {
1608
- name: "authority";
1609
- signer: true;
1610
- },
1611
- {
1612
- name: "vaultAdmin";
1613
- },
1614
- {
1615
- name: "vaultState";
1616
- docs: ["@dev Verification inside instruction logic"];
1617
- writable: true;
1618
- },
1619
- {
1620
- name: "vaultConfig";
1621
- docs: ["@dev Verification inside instruction logic"];
1622
- writable: true;
1623
- },
1624
- {
1625
- name: "supplyTokenReservesLiquidity";
1626
- docs: ["@dev Verification inside instruction logic"];
1627
- },
1628
- {
1629
- name: "borrowTokenReservesLiquidity";
1630
- docs: ["@dev Verification inside instruction logic"];
1631
- }
1632
- ];
1633
- args: [
1634
- {
1635
- name: "vaultId";
1636
- type: "u16";
1637
- },
1638
- {
1639
- name: "borrowRateMagnifier";
1640
- type: "i16";
1641
- }
1642
- ];
1643
- },
1644
- {
1645
- name: "updateCollateralFactor";
1646
- discriminator: [244, 83, 227, 215, 220, 82, 201, 221];
1647
- accounts: [
1648
- {
1649
- name: "authority";
1650
- signer: true;
1651
- },
1652
- {
1653
- name: "vaultAdmin";
1654
- },
1655
- {
1656
- name: "vaultState";
1657
- docs: ["@dev Verification inside instruction logic"];
1658
- writable: true;
1659
- },
1660
- {
1661
- name: "vaultConfig";
1662
- docs: ["@dev Verification inside instruction logic"];
1663
- writable: true;
1664
- },
1665
- {
1666
- name: "supplyTokenReservesLiquidity";
1667
- docs: ["@dev Verification inside instruction logic"];
1668
- },
1669
- {
1670
- name: "borrowTokenReservesLiquidity";
1671
- docs: ["@dev Verification inside instruction logic"];
1672
- }
1673
- ];
1674
- args: [
1675
- {
1676
- name: "vaultId";
1677
- type: "u16";
1678
- },
1679
- {
1680
- name: "collateralFactor";
1681
- type: "u16";
1682
- }
1683
- ];
1684
- },
1685
- {
1686
- name: "updateCoreSettings";
1687
- discriminator: [101, 84, 9, 11, 60, 104, 149, 234];
1688
- accounts: [
1689
- {
1690
- name: "authority";
1691
- signer: true;
1692
- },
1693
- {
1694
- name: "vaultAdmin";
1695
- },
1696
- {
1697
- name: "vaultState";
1698
- docs: ["@dev Verification inside instruction logic"];
1699
- writable: true;
1700
- },
1701
- {
1702
- name: "vaultConfig";
1703
- docs: ["@dev Verification inside instruction logic"];
1704
- writable: true;
1705
- },
1706
- {
1707
- name: "supplyTokenReservesLiquidity";
1708
- docs: ["@dev Verification inside instruction logic"];
1709
- },
1710
- {
1711
- name: "borrowTokenReservesLiquidity";
1712
- docs: ["@dev Verification inside instruction logic"];
1713
- }
1714
- ];
1715
- args: [
1716
- {
1717
- name: "vaultId";
1718
- type: "u16";
1719
- },
1720
- {
1721
- name: "params";
1722
- type: {
1723
- defined: {
1724
- name: "updateCoreSettingsParams";
1725
- };
1726
- };
1727
- }
1728
- ];
1729
- },
1730
- {
1731
- name: "updateExchangePrices";
1732
- discriminator: [209, 14, 188, 95, 242, 20, 119, 196];
1733
- accounts: [
1734
- {
1735
- name: "vaultState";
1736
- docs: ["@dev Verification inside instruction logic"];
1737
- writable: true;
1738
- },
1739
- {
1740
- name: "vaultConfig";
1741
- docs: ["@dev Verification inside instruction logic"];
1742
- },
1743
- {
1744
- name: "supplyTokenReservesLiquidity";
1745
- docs: ["@dev Verification inside instruction logic"];
1746
- },
1747
- {
1748
- name: "borrowTokenReservesLiquidity";
1749
- docs: ["@dev Verification inside instruction logic"];
1750
- }
1751
- ];
1752
- args: [
1753
- {
1754
- name: "vaultId";
1755
- type: "u16";
1756
- }
1757
- ];
1758
- },
1759
- {
1760
- name: "updateLiquidationMaxLimit";
1761
- discriminator: [183, 242, 152, 150, 176, 40, 65, 161];
1762
- accounts: [
1763
- {
1764
- name: "authority";
1765
- signer: true;
1766
- },
1767
- {
1768
- name: "vaultAdmin";
1769
- },
1770
- {
1771
- name: "vaultState";
1772
- docs: ["@dev Verification inside instruction logic"];
1773
- writable: true;
1774
- },
1775
- {
1776
- name: "vaultConfig";
1777
- docs: ["@dev Verification inside instruction logic"];
1778
- writable: true;
1779
- },
1780
- {
1781
- name: "supplyTokenReservesLiquidity";
1782
- docs: ["@dev Verification inside instruction logic"];
1783
- },
1784
- {
1785
- name: "borrowTokenReservesLiquidity";
1786
- docs: ["@dev Verification inside instruction logic"];
1787
- }
1788
- ];
1789
- args: [
1790
- {
1791
- name: "vaultId";
1792
- type: "u16";
1793
- },
1794
- {
1795
- name: "liquidationMaxLimit";
1796
- type: "u16";
1797
- }
1798
- ];
1799
- },
1800
- {
1801
- name: "updateLiquidationPenalty";
1802
- discriminator: [21, 168, 167, 206, 98, 206, 69, 32];
1803
- accounts: [
1804
- {
1805
- name: "authority";
1806
- signer: true;
1807
- },
1808
- {
1809
- name: "vaultAdmin";
1810
- },
1811
- {
1812
- name: "vaultState";
1813
- docs: ["@dev Verification inside instruction logic"];
1814
- writable: true;
1815
- },
1816
- {
1817
- name: "vaultConfig";
1818
- docs: ["@dev Verification inside instruction logic"];
1819
- writable: true;
1820
- },
1821
- {
1822
- name: "supplyTokenReservesLiquidity";
1823
- docs: ["@dev Verification inside instruction logic"];
1824
- },
1825
- {
1826
- name: "borrowTokenReservesLiquidity";
1827
- docs: ["@dev Verification inside instruction logic"];
1828
- }
1829
- ];
1830
- args: [
1831
- {
1832
- name: "vaultId";
1833
- type: "u16";
1834
- },
1835
- {
1836
- name: "liquidationPenalty";
1837
- type: "u16";
1838
- }
1839
- ];
1840
- },
1841
- {
1842
- name: "updateLiquidationThreshold";
1843
- discriminator: [53, 185, 87, 243, 138, 11, 79, 28];
1844
- accounts: [
1845
- {
1846
- name: "authority";
1847
- signer: true;
1848
- },
1849
- {
1850
- name: "vaultAdmin";
1851
- },
1852
- {
1853
- name: "vaultState";
1854
- docs: ["@dev Verification inside instruction logic"];
1855
- writable: true;
1856
- },
1857
- {
1858
- name: "vaultConfig";
1859
- docs: ["@dev Verification inside instruction logic"];
1860
- writable: true;
1861
- },
1862
- {
1863
- name: "supplyTokenReservesLiquidity";
1864
- docs: ["@dev Verification inside instruction logic"];
1865
- },
1866
- {
1867
- name: "borrowTokenReservesLiquidity";
1868
- docs: ["@dev Verification inside instruction logic"];
1869
- }
1870
- ];
1871
- args: [
1872
- {
1873
- name: "vaultId";
1874
- type: "u16";
1875
- },
1876
- {
1877
- name: "liquidationThreshold";
1878
- type: "u16";
1879
- }
1880
- ];
1881
- },
1882
- {
1883
- name: "updateLookupTable";
1884
- discriminator: [221, 59, 30, 246, 106, 223, 137, 55];
1885
- accounts: [
1886
- {
1887
- name: "authority";
1888
- signer: true;
1889
- },
1890
- {
1891
- name: "vaultAdmin";
1892
- },
1893
- {
1894
- name: "vaultMetadata";
1895
- docs: ["@dev Verification inside instruction logic"];
1896
- writable: true;
1897
- }
1898
- ];
1899
- args: [
1900
- {
1901
- name: "vaultId";
1902
- type: "u16";
1903
- },
1904
- {
1905
- name: "lookupTable";
1906
- type: "pubkey";
1907
- }
1908
- ];
1909
- },
1910
- {
1911
- name: "updateOracle";
1912
- discriminator: [112, 41, 209, 18, 248, 226, 252, 188];
1913
- accounts: [
1914
- {
1915
- name: "authority";
1916
- signer: true;
1917
- },
1918
- {
1919
- name: "vaultAdmin";
1920
- },
1921
- {
1922
- name: "vaultState";
1923
- docs: ["@dev Verification inside instruction logic"];
1924
- writable: true;
1925
- },
1926
- {
1927
- name: "vaultConfig";
1928
- docs: ["@dev Verification inside instruction logic"];
1929
- writable: true;
1930
- },
1931
- {
1932
- name: "newOracle";
1933
- writable: true;
1934
- },
1935
- {
1936
- name: "supplyTokenReservesLiquidity";
1937
- docs: ["@dev Verification inside instruction logic"];
1938
- },
1939
- {
1940
- name: "borrowTokenReservesLiquidity";
1941
- docs: ["@dev Verification inside instruction logic"];
1942
- }
1943
- ];
1944
- args: [
1945
- {
1946
- name: "vaultId";
1947
- type: "u16";
1948
- }
1949
- ];
1950
- },
1951
- {
1952
- name: "updateRebalancer";
1953
- discriminator: [206, 187, 54, 228, 145, 8, 203, 111];
1954
- accounts: [
1955
- {
1956
- name: "authority";
1957
- signer: true;
1958
- },
1959
- {
1960
- name: "vaultAdmin";
1961
- },
1962
- {
1963
- name: "vaultState";
1964
- docs: ["@dev Verification inside instruction logic"];
1965
- writable: true;
1966
- },
1967
- {
1968
- name: "vaultConfig";
1969
- docs: ["@dev Verification inside instruction logic"];
1970
- writable: true;
1971
- },
1972
- {
1973
- name: "supplyTokenReservesLiquidity";
1974
- docs: ["@dev Verification inside instruction logic"];
1975
- },
1976
- {
1977
- name: "borrowTokenReservesLiquidity";
1978
- docs: ["@dev Verification inside instruction logic"];
1979
- }
1980
- ];
1981
- args: [
1982
- {
1983
- name: "vaultId";
1984
- type: "u16";
1985
- },
1986
- {
1987
- name: "newRebalancer";
1988
- type: "pubkey";
1989
- }
1990
- ];
1991
- },
1992
- {
1993
- name: "updateSupplyRateMagnifier";
1994
- discriminator: [175, 59, 117, 196, 211, 170, 22, 12];
1995
- accounts: [
1996
- {
1997
- name: "authority";
1998
- signer: true;
1999
- },
2000
- {
2001
- name: "vaultAdmin";
2002
- },
2003
- {
2004
- name: "vaultState";
2005
- docs: ["@dev Verification inside instruction logic"];
2006
- writable: true;
2007
- },
2008
- {
2009
- name: "vaultConfig";
2010
- docs: ["@dev Verification inside instruction logic"];
2011
- writable: true;
2012
- },
2013
- {
2014
- name: "supplyTokenReservesLiquidity";
2015
- docs: ["@dev Verification inside instruction logic"];
2016
- },
2017
- {
2018
- name: "borrowTokenReservesLiquidity";
2019
- docs: ["@dev Verification inside instruction logic"];
2020
- }
2021
- ];
2022
- args: [
2023
- {
2024
- name: "vaultId";
2025
- type: "u16";
2026
- },
2027
- {
2028
- name: "supplyRateMagnifier";
2029
- type: "i16";
2030
- }
2031
- ];
2032
- },
2033
- {
2034
- name: "updateWithdrawGap";
2035
- discriminator: [229, 163, 76, 21, 82, 215, 25, 233];
2036
- accounts: [
2037
- {
2038
- name: "authority";
2039
- signer: true;
2040
- },
2041
- {
2042
- name: "vaultAdmin";
2043
- },
2044
- {
2045
- name: "vaultState";
2046
- docs: ["@dev Verification inside instruction logic"];
2047
- writable: true;
2048
- },
2049
- {
2050
- name: "vaultConfig";
2051
- docs: ["@dev Verification inside instruction logic"];
2052
- writable: true;
2053
- },
2054
- {
2055
- name: "supplyTokenReservesLiquidity";
2056
- docs: ["@dev Verification inside instruction logic"];
2057
- },
2058
- {
2059
- name: "borrowTokenReservesLiquidity";
2060
- docs: ["@dev Verification inside instruction logic"];
2061
- }
2062
- ];
2063
- args: [
2064
- {
2065
- name: "vaultId";
2066
- type: "u16";
2067
- },
2068
- {
2069
- name: "withdrawGap";
2070
- type: "u16";
2071
- }
2072
- ];
2073
- }
2074
- ];
2075
- accounts: [
2076
- {
2077
- name: "branch";
2078
- discriminator: [14, 63, 100, 50, 25, 8, 29, 5];
2079
- },
2080
- {
2081
- name: "oracle";
2082
- discriminator: [139, 194, 131, 179, 140, 179, 229, 244];
2083
- },
2084
- {
2085
- name: "position";
2086
- discriminator: [170, 188, 143, 228, 122, 64, 247, 208];
2087
- },
2088
- {
2089
- name: "tick";
2090
- discriminator: [176, 94, 67, 247, 133, 173, 7, 115];
2091
- },
2092
- {
2093
- name: "tickHasDebtArray";
2094
- discriminator: [91, 232, 60, 29, 124, 103, 49, 252];
2095
- },
2096
- {
2097
- name: "tickIdLiquidation";
2098
- discriminator: [41, 28, 190, 197, 68, 213, 31, 181];
2099
- },
2100
- {
2101
- name: "tokenReserve";
2102
- discriminator: [21, 18, 59, 135, 120, 20, 31, 12];
2103
- },
2104
- {
2105
- name: "userBorrowPosition";
2106
- discriminator: [73, 126, 65, 123, 220, 126, 197, 24];
2107
- },
2108
- {
2109
- name: "userSupplyPosition";
2110
- discriminator: [202, 219, 136, 118, 61, 177, 21, 146];
2111
- },
2112
- {
2113
- name: "vaultAdmin";
2114
- discriminator: [88, 97, 160, 117, 102, 39, 103, 44];
2115
- },
2116
- {
2117
- name: "vaultConfig";
2118
- discriminator: [99, 86, 43, 216, 184, 102, 119, 77];
2119
- },
2120
- {
2121
- name: "vaultMetadata";
2122
- discriminator: [248, 177, 244, 93, 67, 19, 117, 57];
2123
- },
2124
- {
2125
- name: "vaultState";
2126
- discriminator: [228, 196, 82, 165, 98, 210, 235, 152];
2127
- }
2128
- ];
2129
- events: [
2130
- {
2131
- name: "logAbsorb";
2132
- discriminator: [177, 119, 143, 137, 184, 63, 197, 215];
2133
- },
2134
- {
2135
- name: "logClosePosition";
2136
- discriminator: [225, 156, 13, 36, 189, 95, 170, 92];
2137
- },
2138
- {
2139
- name: "logInitBranch";
2140
- discriminator: [127, 182, 211, 219, 140, 189, 193, 101];
2141
- },
2142
- {
2143
- name: "logInitTick";
2144
- discriminator: [56, 182, 35, 79, 249, 114, 9, 175];
2145
- },
2146
- {
2147
- name: "logInitTickHasDebtArray";
2148
- discriminator: [15, 134, 113, 2, 251, 206, 30, 129];
2149
- },
2150
- {
2151
- name: "logInitTickIdLiquidation";
2152
- discriminator: [172, 64, 170, 238, 39, 153, 185, 225];
2153
- },
2154
- {
2155
- name: "logInitVaultConfig";
2156
- discriminator: [194, 158, 35, 55, 179, 48, 174, 46];
2157
- },
2158
- {
2159
- name: "logInitVaultState";
2160
- discriminator: [140, 108, 65, 38, 128, 26, 194, 28];
2161
- },
2162
- {
2163
- name: "logLiquidate";
2164
- discriminator: [154, 128, 202, 147, 65, 233, 195, 73];
2165
- },
2166
- {
2167
- name: "logLiquidateInfo";
2168
- discriminator: [169, 150, 46, 42, 178, 89, 98, 83];
2169
- },
2170
- {
2171
- name: "logOperate";
2172
- discriminator: [180, 8, 81, 71, 19, 132, 173, 8];
2173
- },
2174
- {
2175
- name: "logRebalance";
2176
- discriminator: [90, 67, 219, 41, 181, 118, 132, 9];
2177
- },
2178
- {
2179
- name: "logUpdateAuthority";
2180
- discriminator: [150, 152, 157, 143, 6, 135, 193, 101];
2181
- },
2182
- {
2183
- name: "logUpdateAuths";
2184
- discriminator: [88, 80, 109, 48, 111, 203, 76, 251];
2185
- },
2186
- {
2187
- name: "logUpdateBorrowFee";
2188
- discriminator: [33, 134, 42, 66, 16, 167, 119, 196];
2189
- },
2190
- {
2191
- name: "logUpdateBorrowRateMagnifier";
2192
- discriminator: [186, 23, 46, 117, 57, 111, 107, 51];
2193
- },
2194
- {
2195
- name: "logUpdateCollateralFactor";
2196
- discriminator: [142, 89, 0, 231, 164, 164, 230, 82];
2197
- },
2198
- {
2199
- name: "logUpdateCoreSettings";
2200
- discriminator: [233, 65, 32, 7, 230, 115, 122, 197];
2201
- },
2202
- {
2203
- name: "logUpdateExchangePrices";
2204
- discriminator: [190, 194, 69, 204, 30, 86, 181, 163];
2205
- },
2206
- {
2207
- name: "logUpdateLiquidationMaxLimit";
2208
- discriminator: [73, 32, 49, 0, 234, 86, 150, 94];
2209
- },
2210
- {
2211
- name: "logUpdateLiquidationPenalty";
2212
- discriminator: [42, 132, 67, 48, 209, 133, 77, 83];
2213
- },
2214
- {
2215
- name: "logUpdateLiquidationThreshold";
2216
- discriminator: [211, 71, 215, 239, 159, 238, 71, 219];
2217
- },
2218
- {
2219
- name: "logUpdateLookupTable";
2220
- discriminator: [45, 248, 126, 111, 185, 41, 103, 5];
2221
- },
2222
- {
2223
- name: "logUpdateOracle";
2224
- discriminator: [251, 163, 219, 57, 30, 152, 177, 10];
2225
- },
2226
- {
2227
- name: "logUpdateRebalancer";
2228
- discriminator: [66, 79, 144, 204, 26, 217, 153, 225];
2229
- },
2230
- {
2231
- name: "logUpdateSupplyRateMagnifier";
2232
- discriminator: [198, 113, 184, 213, 239, 18, 253, 56];
2233
- },
2234
- {
2235
- name: "logUpdateWithdrawGap";
2236
- discriminator: [182, 248, 48, 47, 8, 159, 21, 35];
2237
- },
2238
- {
2239
- name: "logUserPosition";
2240
- discriminator: [46, 44, 213, 42, 55, 59, 190, 133];
2241
- }
2242
- ];
2243
- errors: [
2244
- {
2245
- code: 6000;
2246
- name: "vaultNextTickNotFound";
2247
- msg: "vaultNextTickNotFound";
2248
- },
2249
- {
2250
- code: 6001;
2251
- name: "vaultInvalidPositionMint";
2252
- msg: "vaultInvalidPositionMint";
2253
- },
2254
- {
2255
- code: 6002;
2256
- name: "vaultTickIdLiquidationMismatch";
2257
- msg: "vaultTickIdLiquidationMismatch";
2258
- },
2259
- {
2260
- code: 6003;
2261
- name: "vaultInvalidPositionTokenAmount";
2262
- msg: "vaultInvalidPositionTokenAmount";
2263
- },
2264
- {
2265
- code: 6004;
2266
- name: "vaultInvalidRemainingAccountsIndices";
2267
- msg: "vaultInvalidRemainingAccountsIndices";
2268
- },
2269
- {
2270
- code: 6005;
2271
- name: "vaultTickHasDebtVaultIdMismatch";
2272
- msg: "vaultTickHasDebtVaultIdMismatch";
2273
- },
2274
- {
2275
- code: 6006;
2276
- name: "vaultBranchVaultIdMismatch";
2277
- msg: "vaultBranchVaultIdMismatch";
2278
- },
2279
- {
2280
- code: 6007;
2281
- name: "vaultTickVaultIdMismatch";
2282
- msg: "vaultTickVaultIdMismatch";
2283
- },
2284
- {
2285
- code: 6008;
2286
- name: "vaultInvalidDecimals";
2287
- msg: "vaultInvalidDecimals";
2288
- },
2289
- {
2290
- code: 6009;
2291
- name: "vaultInvalidOperateAmount";
2292
- msg: "vaultInvalidOperateAmount";
2293
- },
2294
- {
2295
- code: 6010;
2296
- name: "vaultTickIsEmpty";
2297
- msg: "vaultTickIsEmpty";
2298
- },
2299
- {
2300
- code: 6011;
2301
- name: "vaultPositionAboveCf";
2302
- msg: "vaultPositionAboveCf";
2303
- },
2304
- {
2305
- code: 6012;
2306
- name: "vaultTopTickDoesNotExist";
2307
- msg: "vaultTopTickDoesNotExist";
2308
- },
2309
- {
2310
- code: 6013;
2311
- name: "vaultExcessSlippageLiquidation";
2312
- msg: "vaultExcessSlippageLiquidation";
2313
- },
2314
- {
2315
- code: 6014;
2316
- name: "vaultNotRebalancer";
2317
- msg: "vaultNotRebalancer";
2318
- },
2319
- {
2320
- code: 6015;
2321
- name: "vaultTokenNotInitialized";
2322
- msg: "vaultTokenNotInitialized";
2323
- },
2324
- {
2325
- code: 6016;
2326
- name: "vaultUserCollateralDebtExceed";
2327
- msg: "vaultUserCollateralDebtExceed";
2328
- },
2329
- {
2330
- code: 6017;
2331
- name: "vaultExcessCollateralWithdrawal";
2332
- msg: "vaultExcessCollateralWithdrawal";
2333
- },
2334
- {
2335
- code: 6018;
2336
- name: "vaultExcessDebtPayback";
2337
- msg: "vaultExcessDebtPayback";
2338
- },
2339
- {
2340
- code: 6019;
2341
- name: "vaultWithdrawMoreThanOperateLimit";
2342
- msg: "vaultWithdrawMoreThanOperateLimit";
2343
- },
2344
- {
2345
- code: 6020;
2346
- name: "vaultInvalidLiquidationAmt";
2347
- msg: "vaultInvalidLiquidationAmt";
2348
- },
2349
- {
2350
- code: 6021;
2351
- name: "vaultLiquidationResult";
2352
- msg: "vaultLiquidationResult";
2353
- },
2354
- {
2355
- code: 6022;
2356
- name: "vaultBranchDebtTooLow";
2357
- msg: "vaultBranchDebtTooLow";
2358
- },
2359
- {
2360
- code: 6023;
2361
- name: "vaultTickDebtTooLow";
2362
- msg: "vaultTickDebtTooLow";
2363
- },
2364
- {
2365
- code: 6024;
2366
- name: "vaultLiquidityExchangePriceUnexpected";
2367
- msg: "vaultLiquidityExchangePriceUnexpected";
2368
- },
2369
- {
2370
- code: 6025;
2371
- name: "vaultUserDebtTooLow";
2372
- msg: "vaultUserDebtTooLow";
2373
- },
2374
- {
2375
- code: 6026;
2376
- name: "vaultInvalidPaybackOrDeposit";
2377
- msg: "vaultInvalidPaybackOrDeposit";
2378
- },
2379
- {
2380
- code: 6027;
2381
- name: "vaultInvalidLiquidation";
2382
- msg: "vaultInvalidLiquidation";
2383
- },
2384
- {
2385
- code: 6028;
2386
- name: "vaultNothingToRebalance";
2387
- msg: "vaultNothingToRebalance";
2388
- },
2389
- {
2390
- code: 6029;
2391
- name: "vaultLiquidationReverts";
2392
- msg: "vaultLiquidationReverts";
2393
- },
2394
- {
2395
- code: 6030;
2396
- name: "vaultInvalidOraclePrice";
2397
- msg: "vaultInvalidOraclePrice";
2398
- },
2399
- {
2400
- code: 6031;
2401
- name: "vaultBranchNotFound";
2402
- msg: "vaultBranchNotFound";
2403
- },
2404
- {
2405
- code: 6032;
2406
- name: "vaultTickNotFound";
2407
- msg: "vaultTickNotFound";
2408
- },
2409
- {
2410
- code: 6033;
2411
- name: "vaultTickHasDebtNotFound";
2412
- msg: "vaultTickHasDebtNotFound";
2413
- },
2414
- {
2415
- code: 6034;
2416
- name: "vaultTickMismatch";
2417
- msg: "vaultTickMismatch";
2418
- },
2419
- {
2420
- code: 6035;
2421
- name: "vaultInvalidVaultId";
2422
- msg: "vaultInvalidVaultId";
2423
- },
2424
- {
2425
- code: 6036;
2426
- name: "vaultInvalidNextPositionId";
2427
- msg: "vaultInvalidNextPositionId";
2428
- },
2429
- {
2430
- code: 6037;
2431
- name: "vaultInvalidPositionId";
2432
- msg: "vaultInvalidPositionId";
2433
- },
2434
- {
2435
- code: 6038;
2436
- name: "vaultPositionNotEmpty";
2437
- msg: "vaultPositionNotEmpty";
2438
- },
2439
- {
2440
- code: 6039;
2441
- name: "vaultInvalidSupplyMint";
2442
- msg: "vaultInvalidSupplyMint";
2443
- },
2444
- {
2445
- code: 6040;
2446
- name: "vaultInvalidBorrowMint";
2447
- msg: "vaultInvalidBorrowMint";
2448
- },
2449
- {
2450
- code: 6041;
2451
- name: "vaultInvalidOracle";
2452
- msg: "vaultInvalidOracle";
2453
- },
2454
- {
2455
- code: 6042;
2456
- name: "vaultInvalidTick";
2457
- msg: "vaultInvalidTick";
2458
- },
2459
- {
2460
- code: 6043;
2461
- name: "vaultInvalidLiquidityProgram";
2462
- msg: "vaultInvalidLiquidityProgram";
2463
- },
2464
- {
2465
- code: 6044;
2466
- name: "vaultInvalidPositionAuthority";
2467
- msg: "vaultInvalidPositionAuthority";
2468
- },
2469
- {
2470
- code: 6045;
2471
- name: "vaultOracleNotValid";
2472
- msg: "vaultOracleNotValid";
2473
- },
2474
- {
2475
- code: 6046;
2476
- name: "vaultBranchOwnerNotValid";
2477
- msg: "vaultBranchOwnerNotValid";
2478
- },
2479
- {
2480
- code: 6047;
2481
- name: "vaultTickHasDebtOwnerNotValid";
2482
- msg: "vaultTickHasDebtOwnerNotValid";
2483
- },
2484
- {
2485
- code: 6048;
2486
- name: "vaultTickOwnerNotValid";
2487
- msg: "vaultTickDataOwnerNotValid";
2488
- },
2489
- {
2490
- code: 6049;
2491
- name: "vaultLiquidateRemainingAccountsTooShort";
2492
- msg: "vaultLiquidateRemainingAccountsTooShort";
2493
- },
2494
- {
2495
- code: 6050;
2496
- name: "vaultOperateRemainingAccountsTooShort";
2497
- msg: "vaultOperateRemainingAccountsTooShort";
2498
- },
2499
- {
2500
- code: 6051;
2501
- name: "vaultInvalidZerothBranch";
2502
- msg: "vaultInvalidZerothBranch";
2503
- },
2504
- {
2505
- code: 6052;
2506
- name: "vaultCpiToLiquidityFailed";
2507
- msg: "vaultCpiToLiquidityFailed";
2508
- },
2509
- {
2510
- code: 6053;
2511
- name: "vaultCpiToOracleFailed";
2512
- msg: "vaultCpiToOracleFailed";
2513
- },
2514
- {
2515
- code: 6054;
2516
- name: "vaultOnlyAuthority";
2517
- msg: "vaultOnlyAuthority";
2518
- },
2519
- {
2520
- code: 6055;
2521
- name: "vaultNewBranchInvalid";
2522
- msg: "vaultNewBranchInvalid";
2523
- },
2524
- {
2525
- code: 6056;
2526
- name: "vaultTickHasDebtIndexMismatch";
2527
- msg: "vaultTickHasDebtIndexMismatch";
2528
- },
2529
- {
2530
- code: 6057;
2531
- name: "vaultTickHasDebtOutOfRange";
2532
- msg: "vaultTickHasDebtOutOfRange";
2533
- },
2534
- {
2535
- code: 6058;
2536
- name: "vaultUserSupplyPositionRequired";
2537
- msg: "vaultUserSupplyPositionRequired";
2538
- },
2539
- {
2540
- code: 6059;
2541
- name: "vaultClaimAccountRequired";
2542
- msg: "vaultClaimAccountRequired";
2543
- },
2544
- {
2545
- code: 6060;
2546
- name: "vaultRecipientWithdrawAccountRequired";
2547
- msg: "vaultRecipientWithdrawAccountRequired";
2548
- },
2549
- {
2550
- code: 6061;
2551
- name: "vaultRecipientBorrowAccountRequired";
2552
- msg: "vaultRecipientBorrowAccountRequired";
2553
- },
2554
- {
2555
- code: 6062;
2556
- name: "vaultPositionAboveLiquidationThreshold";
2557
- msg: "vaultPositionAboveLiquidationThreshold";
2558
- },
2559
- {
2560
- code: 6063;
2561
- name: "vaultAdminValueAboveLimit";
2562
- msg: "vaultAdminValueAboveLimit";
2563
- },
2564
- {
2565
- code: 6064;
2566
- name: "vaultAdminOnlyAuths";
2567
- msg: "vaultAdminOnlyAuthAccounts";
2568
- },
2569
- {
2570
- code: 6065;
2571
- name: "vaultAdminAddressZeroNotAllowed";
2572
- msg: "vaultAdminAddressZeroNotAllowed";
2573
- },
2574
- {
2575
- code: 6066;
2576
- name: "vaultAdminVaultIdMismatch";
2577
- msg: "vaultAdminVaultIdMismatch";
2578
- },
2579
- {
2580
- code: 6067;
2581
- name: "vaultAdminTotalIdsMismatch";
2582
- msg: "vaultAdminTotalIdsMismatch";
2583
- },
2584
- {
2585
- code: 6068;
2586
- name: "vaultAdminTickMismatch";
2587
- msg: "vaultAdminTickMismatch";
2588
- },
2589
- {
2590
- code: 6069;
2591
- name: "vaultAdminLiquidityProgramMismatch";
2592
- msg: "vaultAdminLiquidityProgramMismatch";
2593
- },
2594
- {
2595
- code: 6070;
2596
- name: "vaultAdminMaxAuthCountReached";
2597
- msg: "vaultAdminMaxAuthCountReached";
2598
- },
2599
- {
2600
- code: 6071;
2601
- name: "vaultAdminInvalidParams";
2602
- msg: "vaultAdminInvalidParams";
2603
- },
2604
- {
2605
- code: 6072;
2606
- name: "vaultAdminOnlyAuthority";
2607
- msg: "vaultAdminOnlyAuthority";
2608
- },
2609
- {
2610
- code: 6073;
2611
- name: "vaultAdminOracleProgramMismatch";
2612
- msg: "vaultAdminOracleProgramMismatch";
2613
- }
2614
- ];
2615
- types: [
2616
- {
2617
- name: "addressBool";
2618
- type: {
2619
- kind: "struct";
2620
- fields: [
2621
- {
2622
- name: "addr";
2623
- type: "pubkey";
2624
- },
2625
- {
2626
- name: "value";
2627
- type: "bool";
2628
- }
2629
- ];
2630
- };
2631
- },
2632
- {
2633
- name: "branch";
2634
- docs: ["Branch data structure"];
2635
- serialization: "bytemuck";
2636
- repr: {
2637
- kind: "c";
2638
- packed: true;
2639
- };
2640
- type: {
2641
- kind: "struct";
2642
- fields: [
2643
- {
2644
- name: "vaultId";
2645
- type: "u16";
2646
- },
2647
- {
2648
- name: "branchId";
2649
- type: "u32";
2650
- },
2651
- {
2652
- name: "status";
2653
- type: "u8";
2654
- },
2655
- {
2656
- name: "minimaTick";
2657
- type: "i32";
2658
- },
2659
- {
2660
- name: "minimaTickPartials";
2661
- type: "u32";
2662
- },
2663
- {
2664
- name: "debtLiquidity";
2665
- type: "u64";
2666
- },
2667
- {
2668
- name: "debtFactor";
2669
- type: "u64";
2670
- },
2671
- {
2672
- name: "connectedBranchId";
2673
- type: "u32";
2674
- },
2675
- {
2676
- name: "connectedMinimaTick";
2677
- type: "i32";
2678
- }
2679
- ];
2680
- };
2681
- },
2682
- {
2683
- name: "initVaultConfigParams";
2684
- type: {
2685
- kind: "struct";
2686
- fields: [
2687
- {
2688
- name: "supplyRateMagnifier";
2689
- type: "i16";
2690
- },
2691
- {
2692
- name: "borrowRateMagnifier";
2693
- type: "i16";
2694
- },
2695
- {
2696
- name: "collateralFactor";
2697
- type: "u16";
2698
- },
2699
- {
2700
- name: "liquidationThreshold";
2701
- type: "u16";
2702
- },
2703
- {
2704
- name: "liquidationMaxLimit";
2705
- type: "u16";
2706
- },
2707
- {
2708
- name: "withdrawGap";
2709
- type: "u16";
2710
- },
2711
- {
2712
- name: "liquidationPenalty";
2713
- type: "u16";
2714
- },
2715
- {
2716
- name: "borrowFee";
2717
- type: "u16";
2718
- },
2719
- {
2720
- name: "rebalancer";
2721
- type: "pubkey";
2722
- },
2723
- {
2724
- name: "liquidityProgram";
2725
- type: "pubkey";
2726
- },
2727
- {
2728
- name: "oracleProgram";
2729
- type: "pubkey";
2730
- }
2731
- ];
2732
- };
2733
- },
2734
- {
2735
- name: "logAbsorb";
2736
- type: {
2737
- kind: "struct";
2738
- fields: [
2739
- {
2740
- name: "colAmount";
2741
- type: "u64";
2742
- },
2743
- {
2744
- name: "debtAmount";
2745
- type: "u64";
2746
- }
2747
- ];
2748
- };
2749
- },
2750
- {
2751
- name: "logClosePosition";
2752
- type: {
2753
- kind: "struct";
2754
- fields: [
2755
- {
2756
- name: "signer";
2757
- type: "pubkey";
2758
- },
2759
- {
2760
- name: "positionId";
2761
- type: "u32";
2762
- },
2763
- {
2764
- name: "vaultId";
2765
- type: "u16";
2766
- },
2767
- {
2768
- name: "positionMint";
2769
- type: "pubkey";
2770
- }
2771
- ];
2772
- };
2773
- },
2774
- {
2775
- name: "logInitBranch";
2776
- type: {
2777
- kind: "struct";
2778
- fields: [
2779
- {
2780
- name: "branch";
2781
- type: "pubkey";
2782
- },
2783
- {
2784
- name: "branchId";
2785
- type: "u32";
2786
- }
2787
- ];
2788
- };
2789
- },
2790
- {
2791
- name: "logInitTick";
2792
- type: {
2793
- kind: "struct";
2794
- fields: [
2795
- {
2796
- name: "tick";
2797
- type: "pubkey";
2798
- }
2799
- ];
2800
- };
2801
- },
2802
- {
2803
- name: "logInitTickHasDebtArray";
2804
- type: {
2805
- kind: "struct";
2806
- fields: [
2807
- {
2808
- name: "tickHasDebtArray";
2809
- type: "pubkey";
2810
- }
2811
- ];
2812
- };
2813
- },
2814
- {
2815
- name: "logInitTickIdLiquidation";
2816
- type: {
2817
- kind: "struct";
2818
- fields: [
2819
- {
2820
- name: "tickIdLiquidation";
2821
- type: "pubkey";
2822
- },
2823
- {
2824
- name: "tick";
2825
- type: "i32";
2826
- }
2827
- ];
2828
- };
2829
- },
2830
- {
2831
- name: "logInitVaultConfig";
2832
- type: {
2833
- kind: "struct";
2834
- fields: [
2835
- {
2836
- name: "vaultConfig";
2837
- type: "pubkey";
2838
- }
2839
- ];
2840
- };
2841
- },
2842
- {
2843
- name: "logInitVaultState";
2844
- type: {
2845
- kind: "struct";
2846
- fields: [
2847
- {
2848
- name: "vaultState";
2849
- type: "pubkey";
2850
- }
2851
- ];
2852
- };
2853
- },
2854
- {
2855
- name: "logLiquidate";
2856
- type: {
2857
- kind: "struct";
2858
- fields: [
2859
- {
2860
- name: "signer";
2861
- type: "pubkey";
2862
- },
2863
- {
2864
- name: "colAmount";
2865
- type: "u64";
2866
- },
2867
- {
2868
- name: "debtAmount";
2869
- type: "u64";
2870
- },
2871
- {
2872
- name: "to";
2873
- type: "pubkey";
2874
- }
2875
- ];
2876
- };
2877
- },
2878
- {
2879
- name: "logLiquidateInfo";
2880
- type: {
2881
- kind: "struct";
2882
- fields: [
2883
- {
2884
- name: "vaultId";
2885
- type: "u16";
2886
- },
2887
- {
2888
- name: "startTick";
2889
- type: "i32";
2890
- },
2891
- {
2892
- name: "endTick";
2893
- type: "i32";
2894
- }
2895
- ];
2896
- };
2897
- },
2898
- {
2899
- name: "logOperate";
2900
- type: {
2901
- kind: "struct";
2902
- fields: [
2903
- {
2904
- name: "signer";
2905
- type: "pubkey";
2906
- },
2907
- {
2908
- name: "nftId";
2909
- type: "u32";
2910
- },
2911
- {
2912
- name: "newCol";
2913
- type: "i128";
2914
- },
2915
- {
2916
- name: "newDebt";
2917
- type: "i128";
2918
- },
2919
- {
2920
- name: "to";
2921
- type: "pubkey";
2922
- }
2923
- ];
2924
- };
2925
- },
2926
- {
2927
- name: "logRebalance";
2928
- type: {
2929
- kind: "struct";
2930
- fields: [
2931
- {
2932
- name: "supplyAmt";
2933
- type: "i128";
2934
- },
2935
- {
2936
- name: "borrowAmt";
2937
- type: "i128";
2938
- }
2939
- ];
2940
- };
2941
- },
2942
- {
2943
- name: "logUpdateAuthority";
2944
- type: {
2945
- kind: "struct";
2946
- fields: [
2947
- {
2948
- name: "newAuthority";
2949
- type: "pubkey";
2950
- }
2951
- ];
2952
- };
2953
- },
2954
- {
2955
- name: "logUpdateAuths";
2956
- type: {
2957
- kind: "struct";
2958
- fields: [
2959
- {
2960
- name: "authStatus";
2961
- type: {
2962
- vec: {
2963
- defined: {
2964
- name: "addressBool";
2965
- };
2966
- };
2967
- };
2968
- }
2969
- ];
2970
- };
2971
- },
2972
- {
2973
- name: "logUpdateBorrowFee";
2974
- type: {
2975
- kind: "struct";
2976
- fields: [
2977
- {
2978
- name: "borrowFee";
2979
- type: "u16";
2980
- }
2981
- ];
2982
- };
2983
- },
2984
- {
2985
- name: "logUpdateBorrowRateMagnifier";
2986
- type: {
2987
- kind: "struct";
2988
- fields: [
2989
- {
2990
- name: "borrowRateMagnifier";
2991
- type: "i16";
2992
- }
2993
- ];
2994
- };
2995
- },
2996
- {
2997
- name: "logUpdateCollateralFactor";
2998
- type: {
2999
- kind: "struct";
3000
- fields: [
3001
- {
3002
- name: "collateralFactor";
3003
- type: "u16";
3004
- }
3005
- ];
3006
- };
3007
- },
3008
- {
3009
- name: "logUpdateCoreSettings";
3010
- type: {
3011
- kind: "struct";
3012
- fields: [
3013
- {
3014
- name: "supplyRateMagnifier";
3015
- type: "i16";
3016
- },
3017
- {
3018
- name: "borrowRateMagnifier";
3019
- type: "i16";
3020
- },
3021
- {
3022
- name: "collateralFactor";
3023
- type: "u16";
3024
- },
3025
- {
3026
- name: "liquidationThreshold";
3027
- type: "u16";
3028
- },
3029
- {
3030
- name: "liquidationMaxLimit";
3031
- type: "u16";
3032
- },
3033
- {
3034
- name: "withdrawGap";
3035
- type: "u16";
3036
- },
3037
- {
3038
- name: "liquidationPenalty";
3039
- type: "u16";
3040
- },
3041
- {
3042
- name: "borrowFee";
3043
- type: "u16";
3044
- }
3045
- ];
3046
- };
3047
- },
3048
- {
3049
- name: "logUpdateExchangePrices";
3050
- type: {
3051
- kind: "struct";
3052
- fields: [
3053
- {
3054
- name: "vaultSupplyExchangePrice";
3055
- type: "u64";
3056
- },
3057
- {
3058
- name: "vaultBorrowExchangePrice";
3059
- type: "u64";
3060
- },
3061
- {
3062
- name: "liquiditySupplyExchangePrice";
3063
- type: "u64";
3064
- },
3065
- {
3066
- name: "liquidityBorrowExchangePrice";
3067
- type: "u64";
3068
- }
3069
- ];
3070
- };
3071
- },
3072
- {
3073
- name: "logUpdateLiquidationMaxLimit";
3074
- type: {
3075
- kind: "struct";
3076
- fields: [
3077
- {
3078
- name: "liquidationMaxLimit";
3079
- type: "u16";
3080
- }
3081
- ];
3082
- };
3083
- },
3084
- {
3085
- name: "logUpdateLiquidationPenalty";
3086
- type: {
3087
- kind: "struct";
3088
- fields: [
3089
- {
3090
- name: "liquidationPenalty";
3091
- type: "u16";
3092
- }
3093
- ];
3094
- };
3095
- },
3096
- {
3097
- name: "logUpdateLiquidationThreshold";
3098
- type: {
3099
- kind: "struct";
3100
- fields: [
3101
- {
3102
- name: "liquidationThreshold";
3103
- type: "u16";
3104
- }
3105
- ];
3106
- };
3107
- },
3108
- {
3109
- name: "logUpdateLookupTable";
3110
- type: {
3111
- kind: "struct";
3112
- fields: [
3113
- {
3114
- name: "lookupTable";
3115
- type: "pubkey";
3116
- }
3117
- ];
3118
- };
3119
- },
3120
- {
3121
- name: "logUpdateOracle";
3122
- type: {
3123
- kind: "struct";
3124
- fields: [
3125
- {
3126
- name: "newOracle";
3127
- type: "pubkey";
3128
- }
3129
- ];
3130
- };
3131
- },
3132
- {
3133
- name: "logUpdateRebalancer";
3134
- type: {
3135
- kind: "struct";
3136
- fields: [
3137
- {
3138
- name: "newRebalancer";
3139
- type: "pubkey";
3140
- }
3141
- ];
3142
- };
3143
- },
3144
- {
3145
- name: "logUpdateSupplyRateMagnifier";
3146
- type: {
3147
- kind: "struct";
3148
- fields: [
3149
- {
3150
- name: "supplyRateMagnifier";
3151
- type: "i16";
3152
- }
3153
- ];
3154
- };
3155
- },
3156
- {
3157
- name: "logUpdateWithdrawGap";
3158
- type: {
3159
- kind: "struct";
3160
- fields: [
3161
- {
3162
- name: "withdrawGap";
3163
- type: "u16";
3164
- }
3165
- ];
3166
- };
3167
- },
3168
- {
3169
- name: "logUserPosition";
3170
- type: {
3171
- kind: "struct";
3172
- fields: [
3173
- {
3174
- name: "user";
3175
- type: "pubkey";
3176
- },
3177
- {
3178
- name: "nftId";
3179
- type: "u32";
3180
- },
3181
- {
3182
- name: "vaultId";
3183
- type: "u16";
3184
- },
3185
- {
3186
- name: "positionMint";
3187
- type: "pubkey";
3188
- },
3189
- {
3190
- name: "tick";
3191
- type: "i32";
3192
- },
3193
- {
3194
- name: "col";
3195
- type: "u64";
3196
- },
3197
- {
3198
- name: "borrow";
3199
- type: "u64";
3200
- }
3201
- ];
3202
- };
3203
- },
3204
- {
3205
- name: "oracle";
3206
- type: {
3207
- kind: "struct";
3208
- fields: [
3209
- {
3210
- name: "nonce";
3211
- type: "u16";
3212
- },
3213
- {
3214
- name: "sources";
3215
- type: {
3216
- vec: {
3217
- defined: {
3218
- name: "sources";
3219
- };
3220
- };
3221
- };
3222
- },
3223
- {
3224
- name: "bump";
3225
- type: "u8";
3226
- }
3227
- ];
3228
- };
3229
- },
3230
- {
3231
- name: "position";
3232
- docs: ["Position data structure"];
3233
- serialization: "bytemuck";
3234
- repr: {
3235
- kind: "c";
3236
- packed: true;
3237
- };
3238
- type: {
3239
- kind: "struct";
3240
- fields: [
3241
- {
3242
- name: "vaultId";
3243
- type: "u16";
3244
- },
3245
- {
3246
- name: "nftId";
3247
- type: "u32";
3248
- },
3249
- {
3250
- name: "positionMint";
3251
- type: "pubkey";
3252
- },
3253
- {
3254
- name: "isSupplyOnlyPosition";
3255
- type: "u8";
3256
- },
3257
- {
3258
- name: "tick";
3259
- type: "i32";
3260
- },
3261
- {
3262
- name: "tickId";
3263
- type: "u32";
3264
- },
3265
- {
3266
- name: "supplyAmount";
3267
- type: "u64";
3268
- },
3269
- {
3270
- name: "dustDebtAmount";
3271
- type: "u64";
3272
- }
3273
- ];
3274
- };
3275
- },
3276
- {
3277
- name: "sourceType";
3278
- type: {
3279
- kind: "enum";
3280
- variants: [
3281
- {
3282
- name: "pyth";
3283
- },
3284
- {
3285
- name: "stakePool";
3286
- },
3287
- {
3288
- name: "msolPool";
3289
- },
3290
- {
3291
- name: "redstone";
3292
- },
3293
- {
3294
- name: "chainlink";
3295
- },
3296
- {
3297
- name: "singlePool";
3298
- }
3299
- ];
3300
- };
3301
- },
3302
- {
3303
- name: "sources";
3304
- type: {
3305
- kind: "struct";
3306
- fields: [
3307
- {
3308
- name: "source";
3309
- type: "pubkey";
3310
- },
3311
- {
3312
- name: "invert";
3313
- type: "bool";
3314
- },
3315
- {
3316
- name: "multiplier";
3317
- type: "u128";
3318
- },
3319
- {
3320
- name: "divisor";
3321
- type: "u128";
3322
- },
3323
- {
3324
- name: "sourceType";
3325
- type: {
3326
- defined: {
3327
- name: "sourceType";
3328
- };
3329
- };
3330
- }
3331
- ];
3332
- };
3333
- },
3334
- {
3335
- name: "tick";
3336
- docs: ["Tick data structure"];
3337
- serialization: "bytemuck";
3338
- repr: {
3339
- kind: "c";
3340
- packed: true;
3341
- };
3342
- type: {
3343
- kind: "struct";
3344
- fields: [
3345
- {
3346
- name: "vaultId";
3347
- type: "u16";
3348
- },
3349
- {
3350
- name: "tick";
3351
- type: "i32";
3352
- },
3353
- {
3354
- name: "isLiquidated";
3355
- type: "u8";
3356
- },
3357
- {
3358
- name: "totalIds";
3359
- type: "u32";
3360
- },
3361
- {
3362
- name: "rawDebt";
3363
- type: "u64";
3364
- },
3365
- {
3366
- name: "isFullyLiquidated";
3367
- type: "u8";
3368
- },
3369
- {
3370
- name: "liquidationBranchId";
3371
- type: "u32";
3372
- },
3373
- {
3374
- name: "debtFactor";
3375
- type: "u64";
3376
- }
3377
- ];
3378
- };
3379
- },
3380
- {
3381
- name: "tickHasDebt";
3382
- docs: [
3383
- "Tick has debt structure",
3384
- "Each TickHasDebt can track 8 * 256 = 2048 ticks",
3385
- "children_bits has 32 bytes = 256 bits total",
3386
- "Each map within the array covers 256 ticks"
3387
- ];
3388
- repr: {
3389
- kind: "c";
3390
- packed: true;
3391
- };
3392
- type: {
3393
- kind: "struct";
3394
- fields: [
3395
- {
3396
- name: "childrenBits";
3397
- type: {
3398
- array: ["u8", 32];
3399
- };
3400
- }
3401
- ];
3402
- };
3403
- },
3404
- {
3405
- name: "tickHasDebtArray";
3406
- serialization: "bytemuck";
3407
- repr: {
3408
- kind: "c";
3409
- packed: true;
3410
- };
3411
- type: {
3412
- kind: "struct";
3413
- fields: [
3414
- {
3415
- name: "vaultId";
3416
- type: "u16";
3417
- },
3418
- {
3419
- name: "index";
3420
- type: "u8";
3421
- },
3422
- {
3423
- name: "tickHasDebt";
3424
- docs: [
3425
- "Each array contains 8 TickHasDebt structs",
3426
- "Each TickHasDebt covers 256 ticks",
3427
- "Total: 8 * 256 = 2048 ticks per TickHasDebtArray"
3428
- ];
3429
- type: {
3430
- array: [
3431
- {
3432
- defined: {
3433
- name: "tickHasDebt";
3434
- };
3435
- },
3436
- 8
3437
- ];
3438
- };
3439
- }
3440
- ];
3441
- };
3442
- },
3443
- {
3444
- name: "tickIdLiquidation";
3445
- docs: ["Tick ID liquidation data"];
3446
- serialization: "bytemuck";
3447
- repr: {
3448
- kind: "c";
3449
- packed: true;
3450
- };
3451
- type: {
3452
- kind: "struct";
3453
- fields: [
3454
- {
3455
- name: "vaultId";
3456
- type: "u16";
3457
- },
3458
- {
3459
- name: "tick";
3460
- type: "i32";
3461
- },
3462
- {
3463
- name: "tickMap";
3464
- type: "u32";
3465
- },
3466
- {
3467
- name: "isFullyLiquidated1";
3468
- type: "u8";
3469
- },
3470
- {
3471
- name: "liquidationBranchId1";
3472
- type: "u32";
3473
- },
3474
- {
3475
- name: "debtFactor1";
3476
- type: "u64";
3477
- },
3478
- {
3479
- name: "isFullyLiquidated2";
3480
- type: "u8";
3481
- },
3482
- {
3483
- name: "liquidationBranchId2";
3484
- type: "u32";
3485
- },
3486
- {
3487
- name: "debtFactor2";
3488
- type: "u64";
3489
- },
3490
- {
3491
- name: "isFullyLiquidated3";
3492
- type: "u8";
3493
- },
3494
- {
3495
- name: "liquidationBranchId3";
3496
- type: "u32";
3497
- },
3498
- {
3499
- name: "debtFactor3";
3500
- type: "u64";
3501
- }
3502
- ];
3503
- };
3504
- },
3505
- {
3506
- name: "tokenReserve";
3507
- docs: ["Token configuration and exchange prices"];
3508
- serialization: "bytemuck";
3509
- repr: {
3510
- kind: "c";
3511
- packed: true;
3512
- };
3513
- type: {
3514
- kind: "struct";
3515
- fields: [
3516
- {
3517
- name: "mint";
3518
- type: "pubkey";
3519
- },
3520
- {
3521
- name: "vault";
3522
- type: "pubkey";
3523
- },
3524
- {
3525
- name: "borrowRate";
3526
- type: "u16";
3527
- },
3528
- {
3529
- name: "feeOnInterest";
3530
- type: "u16";
3531
- },
3532
- {
3533
- name: "lastUtilization";
3534
- type: "u16";
3535
- },
3536
- {
3537
- name: "lastUpdateTimestamp";
3538
- type: "u64";
3539
- },
3540
- {
3541
- name: "supplyExchangePrice";
3542
- type: "u64";
3543
- },
3544
- {
3545
- name: "borrowExchangePrice";
3546
- type: "u64";
3547
- },
3548
- {
3549
- name: "maxUtilization";
3550
- type: "u16";
3551
- },
3552
- {
3553
- name: "totalSupplyWithInterest";
3554
- type: "u64";
3555
- },
3556
- {
3557
- name: "totalSupplyInterestFree";
3558
- type: "u64";
3559
- },
3560
- {
3561
- name: "totalBorrowWithInterest";
3562
- type: "u64";
3563
- },
3564
- {
3565
- name: "totalBorrowInterestFree";
3566
- type: "u64";
3567
- },
3568
- {
3569
- name: "totalClaimAmount";
3570
- type: "u64";
3571
- },
3572
- {
3573
- name: "interactingProtocol";
3574
- type: "pubkey";
3575
- },
3576
- {
3577
- name: "interactingTimestamp";
3578
- type: "u64";
3579
- },
3580
- {
3581
- name: "interactingBalance";
3582
- type: "u64";
3583
- }
3584
- ];
3585
- };
3586
- },
3587
- {
3588
- name: "transferType";
3589
- type: {
3590
- kind: "enum";
3591
- variants: [
3592
- {
3593
- name: "skip";
3594
- },
3595
- {
3596
- name: "direct";
3597
- },
3598
- {
3599
- name: "claim";
3600
- }
3601
- ];
3602
- };
3603
- },
3604
- {
3605
- name: "updateCoreSettingsParams";
3606
- type: {
3607
- kind: "struct";
3608
- fields: [
3609
- {
3610
- name: "supplyRateMagnifier";
3611
- type: "i16";
3612
- },
3613
- {
3614
- name: "borrowRateMagnifier";
3615
- type: "i16";
3616
- },
3617
- {
3618
- name: "collateralFactor";
3619
- type: "u16";
3620
- },
3621
- {
3622
- name: "liquidationThreshold";
3623
- type: "u16";
3624
- },
3625
- {
3626
- name: "liquidationMaxLimit";
3627
- type: "u16";
3628
- },
3629
- {
3630
- name: "withdrawGap";
3631
- type: "u16";
3632
- },
3633
- {
3634
- name: "liquidationPenalty";
3635
- type: "u16";
3636
- },
3637
- {
3638
- name: "borrowFee";
3639
- type: "u16";
3640
- }
3641
- ];
3642
- };
3643
- },
3644
- {
3645
- name: "userBorrowPosition";
3646
- docs: ["User borrow position"];
3647
- serialization: "bytemuck";
3648
- repr: {
3649
- kind: "c";
3650
- packed: true;
3651
- };
3652
- type: {
3653
- kind: "struct";
3654
- fields: [
3655
- {
3656
- name: "protocol";
3657
- type: "pubkey";
3658
- },
3659
- {
3660
- name: "mint";
3661
- type: "pubkey";
3662
- },
3663
- {
3664
- name: "withInterest";
3665
- type: "u8";
3666
- },
3667
- {
3668
- name: "amount";
3669
- type: "u64";
3670
- },
3671
- {
3672
- name: "debtCeiling";
3673
- type: "u64";
3674
- },
3675
- {
3676
- name: "lastUpdate";
3677
- type: "u64";
3678
- },
3679
- {
3680
- name: "expandPct";
3681
- type: "u16";
3682
- },
3683
- {
3684
- name: "expandDuration";
3685
- type: "u32";
3686
- },
3687
- {
3688
- name: "baseDebtCeiling";
3689
- type: "u64";
3690
- },
3691
- {
3692
- name: "maxDebtCeiling";
3693
- type: "u64";
3694
- },
3695
- {
3696
- name: "status";
3697
- type: "u8";
3698
- }
3699
- ];
3700
- };
3701
- },
3702
- {
3703
- name: "userSupplyPosition";
3704
- docs: ["User supply position"];
3705
- serialization: "bytemuck";
3706
- repr: {
3707
- kind: "c";
3708
- packed: true;
3709
- };
3710
- type: {
3711
- kind: "struct";
3712
- fields: [
3713
- {
3714
- name: "protocol";
3715
- type: "pubkey";
3716
- },
3717
- {
3718
- name: "mint";
3719
- type: "pubkey";
3720
- },
3721
- {
3722
- name: "withInterest";
3723
- type: "u8";
3724
- },
3725
- {
3726
- name: "amount";
3727
- type: "u64";
3728
- },
3729
- {
3730
- name: "withdrawalLimit";
3731
- type: "u128";
3732
- },
3733
- {
3734
- name: "lastUpdate";
3735
- type: "u64";
3736
- },
3737
- {
3738
- name: "expandPct";
3739
- type: "u16";
3740
- },
3741
- {
3742
- name: "expandDuration";
3743
- type: "u64";
3744
- },
3745
- {
3746
- name: "baseWithdrawalLimit";
3747
- type: "u64";
3748
- },
3749
- {
3750
- name: "status";
3751
- type: "u8";
3752
- }
3753
- ];
3754
- };
3755
- },
3756
- {
3757
- name: "vaultAdmin";
3758
- type: {
3759
- kind: "struct";
3760
- fields: [
3761
- {
3762
- name: "authority";
3763
- type: "pubkey";
3764
- },
3765
- {
3766
- name: "liquidityProgram";
3767
- type: "pubkey";
3768
- },
3769
- {
3770
- name: "nextVaultId";
3771
- type: "u16";
3772
- },
3773
- {
3774
- name: "auths";
3775
- type: {
3776
- vec: "pubkey";
3777
- };
3778
- },
3779
- {
3780
- name: "bump";
3781
- type: "u8";
3782
- }
3783
- ];
3784
- };
3785
- },
3786
- {
3787
- name: "vaultConfig";
3788
- serialization: "bytemuck";
3789
- repr: {
3790
- kind: "c";
3791
- packed: true;
3792
- };
3793
- type: {
3794
- kind: "struct";
3795
- fields: [
3796
- {
3797
- name: "vaultId";
3798
- type: "u16";
3799
- },
3800
- {
3801
- name: "supplyRateMagnifier";
3802
- type: "i16";
3803
- },
3804
- {
3805
- name: "borrowRateMagnifier";
3806
- type: "i16";
3807
- },
3808
- {
3809
- name: "collateralFactor";
3810
- type: "u16";
3811
- },
3812
- {
3813
- name: "liquidationThreshold";
3814
- type: "u16";
3815
- },
3816
- {
3817
- name: "liquidationMaxLimit";
3818
- type: "u16";
3819
- },
3820
- {
3821
- name: "withdrawGap";
3822
- type: "u16";
3823
- },
3824
- {
3825
- name: "liquidationPenalty";
3826
- type: "u16";
3827
- },
3828
- {
3829
- name: "borrowFee";
3830
- type: "u16";
3831
- },
3832
- {
3833
- name: "oracle";
3834
- type: "pubkey";
3835
- },
3836
- {
3837
- name: "rebalancer";
3838
- type: "pubkey";
3839
- },
3840
- {
3841
- name: "liquidityProgram";
3842
- type: "pubkey";
3843
- },
3844
- {
3845
- name: "oracleProgram";
3846
- type: "pubkey";
3847
- },
3848
- {
3849
- name: "supplyToken";
3850
- type: "pubkey";
3851
- },
3852
- {
3853
- name: "borrowToken";
3854
- type: "pubkey";
3855
- },
3856
- {
3857
- name: "bump";
3858
- type: "u8";
3859
- }
3860
- ];
3861
- };
3862
- },
3863
- {
3864
- name: "vaultMetadata";
3865
- type: {
3866
- kind: "struct";
3867
- fields: [
3868
- {
3869
- name: "vaultId";
3870
- type: "u16";
3871
- },
3872
- {
3873
- name: "lookupTable";
3874
- type: "pubkey";
3875
- },
3876
- {
3877
- name: "supplyMintDecimals";
3878
- type: "u8";
3879
- },
3880
- {
3881
- name: "borrowMintDecimals";
3882
- type: "u8";
3883
- }
3884
- ];
3885
- };
3886
- },
3887
- {
3888
- name: "vaultState";
3889
- serialization: "bytemuck";
3890
- repr: {
3891
- kind: "c";
3892
- packed: true;
3893
- };
3894
- type: {
3895
- kind: "struct";
3896
- fields: [
3897
- {
3898
- name: "vaultId";
3899
- type: "u16";
3900
- },
3901
- {
3902
- name: "branchLiquidated";
3903
- type: "u8";
3904
- },
3905
- {
3906
- name: "topmostTick";
3907
- type: "i32";
3908
- },
3909
- {
3910
- name: "currentBranchId";
3911
- type: "u32";
3912
- },
3913
- {
3914
- name: "totalBranchId";
3915
- type: "u32";
3916
- },
3917
- {
3918
- name: "totalSupply";
3919
- type: "u64";
3920
- },
3921
- {
3922
- name: "totalBorrow";
3923
- type: "u64";
3924
- },
3925
- {
3926
- name: "totalPositions";
3927
- type: "u32";
3928
- },
3929
- {
3930
- name: "absorbedDebtAmount";
3931
- type: "u128";
3932
- },
3933
- {
3934
- name: "absorbedColAmount";
3935
- type: "u128";
3936
- },
3937
- {
3938
- name: "absorbedDustDebt";
3939
- type: "u64";
3940
- },
3941
- {
3942
- name: "liquiditySupplyExchangePrice";
3943
- type: "u64";
3944
- },
3945
- {
3946
- name: "liquidityBorrowExchangePrice";
3947
- type: "u64";
3948
- },
3949
- {
3950
- name: "vaultSupplyExchangePrice";
3951
- type: "u64";
3952
- },
3953
- {
3954
- name: "vaultBorrowExchangePrice";
3955
- type: "u64";
3956
- },
3957
- {
3958
- name: "nextPositionId";
3959
- type: "u32";
3960
- },
3961
- {
3962
- name: "lastUpdateTimestamp";
3963
- type: "u64";
3964
- }
3965
- ];
3966
- };
3967
- }
3968
- ];
3969
- };
3970
-
3971
- type ConnectionParams = {
3972
- connection: Connection;
3973
- signer: PublicKey;
3974
- };
3975
- type OperateContextParams = {
3976
- vaultId: number;
3977
- positionId: number;
3978
- colAmount: BN;
3979
- debtAmount: BN;
3980
- recipient?: PublicKey;
3981
- positionOwner?: PublicKey;
3982
- program?: Program<Vaults>;
3983
- } & ConnectionParams;
3984
- type OperateParams = {
3985
- vaultId: number;
3986
- positionId: number;
3987
- colAmount: BN;
3988
- debtAmount: BN;
3989
- recipient?: PublicKey;
3990
- positionOwner?: PublicKey;
3991
- } & ConnectionParams;
3992
- declare function getOperateContext({ vaultId, positionId, program, connection, signer, positionOwner, colAmount: newCol, debtAmount: newDebt, recipient, }: OperateContextParams): Promise<{
3993
- nftId: number;
3994
- accounts: {
3995
- signer: PublicKey;
3996
- signerSupplyTokenAccount: PublicKey;
3997
- signerBorrowTokenAccount: PublicKey;
3998
- recipient: PublicKey | null;
3999
- recipientSupplyTokenAccount: PublicKey | null;
4000
- recipientBorrowTokenAccount: PublicKey | null;
4001
- vaultConfig: PublicKey;
4002
- vaultState: PublicKey;
4003
- supplyToken: PublicKey;
4004
- borrowToken: PublicKey;
4005
- oracle: PublicKey;
4006
- position: PublicKey;
4007
- positionTokenAccount: PublicKey;
4008
- currentPositionTick: PublicKey;
4009
- finalPositionTick: PublicKey;
4010
- currentPositionTickId: PublicKey;
4011
- finalPositionTickId: PublicKey;
4012
- newBranch: PublicKey;
4013
- supplyTokenReservesLiquidity: PublicKey;
4014
- borrowTokenReservesLiquidity: PublicKey;
4015
- vaultSupplyPositionOnLiquidity: PublicKey;
4016
- vaultBorrowPositionOnLiquidity: PublicKey;
4017
- supplyRateModel: PublicKey;
4018
- borrowRateModel: PublicKey;
4019
- supplyTokenClaimAccount: null;
4020
- borrowTokenClaimAccount: null;
4021
- liquidity: PublicKey;
4022
- liquidityProgram: PublicKey;
4023
- vaultSupplyTokenAccount: PublicKey;
4024
- vaultBorrowTokenAccount: PublicKey;
4025
- oracleProgram: PublicKey;
4026
- supplyTokenProgram: PublicKey;
4027
- borrowTokenProgram: PublicKey;
4028
- associatedTokenProgram: PublicKey;
4029
- systemProgram: PublicKey;
4030
- };
4031
- remainingAccounts: {
4032
- pubkey: PublicKey;
4033
- isWritable: boolean;
4034
- isSigner: boolean;
4035
- }[];
4036
- initPositionIx: TransactionInstruction | null;
4037
- otherIxs: TransactionInstruction[];
4038
- remainingAccountsIndices: number[];
4039
- lookupTable: PublicKey;
4040
- }>;
4041
- type InitPositionIxParams = {
4042
- vaultId: number;
4043
- connection: Connection;
4044
- signer: PublicKey;
4045
- };
4046
- declare function getInitPositionIx({ vaultId, connection, signer, }: InitPositionIxParams): Promise<{
4047
- ix: TransactionInstruction;
4048
- nftId: number;
4049
- }>;
4050
- declare function getInitPositionContext(vaultId: number, positionId: number, signer: PublicKey): {
4051
- signer: PublicKey;
4052
- vaultAdmin: PublicKey;
4053
- vaultState: PublicKey;
4054
- position: PublicKey;
4055
- positionMint: PublicKey;
4056
- positionTokenAccount: PublicKey;
4057
- tokenProgram: PublicKey;
4058
- metadataAccount: PublicKey;
4059
- associatedTokenProgram: PublicKey;
4060
- systemProgram: PublicKey;
4061
- sysvarInstruction: PublicKey;
4062
- metadataProgram: PublicKey;
4063
- rent: PublicKey;
4064
- };
4065
- declare const getOperateIx: ({ vaultId, positionId, colAmount, debtAmount, connection, signer, recipient, positionOwner, }: OperateParams) => Promise<{
4066
- nftId: number;
4067
- accounts: {
4068
- signer: PublicKey;
4069
- signerSupplyTokenAccount: PublicKey;
4070
- signerBorrowTokenAccount: PublicKey;
4071
- recipient: PublicKey | null;
4072
- recipientSupplyTokenAccount: PublicKey | null;
4073
- recipientBorrowTokenAccount: PublicKey | null;
4074
- vaultConfig: PublicKey;
4075
- vaultState: PublicKey;
4076
- supplyToken: PublicKey;
4077
- borrowToken: PublicKey;
4078
- oracle: PublicKey;
4079
- position: PublicKey;
4080
- positionTokenAccount: PublicKey;
4081
- currentPositionTick: PublicKey;
4082
- finalPositionTick: PublicKey;
4083
- currentPositionTickId: PublicKey;
4084
- finalPositionTickId: PublicKey;
4085
- newBranch: PublicKey;
4086
- supplyTokenReservesLiquidity: PublicKey;
4087
- borrowTokenReservesLiquidity: PublicKey;
4088
- vaultSupplyPositionOnLiquidity: PublicKey;
4089
- vaultBorrowPositionOnLiquidity: PublicKey;
4090
- supplyRateModel: PublicKey;
4091
- borrowRateModel: PublicKey;
4092
- supplyTokenClaimAccount: null;
4093
- borrowTokenClaimAccount: null;
4094
- liquidity: PublicKey;
4095
- liquidityProgram: PublicKey;
4096
- vaultSupplyTokenAccount: PublicKey;
4097
- vaultBorrowTokenAccount: PublicKey;
4098
- oracleProgram: PublicKey;
4099
- supplyTokenProgram: PublicKey;
4100
- borrowTokenProgram: PublicKey;
4101
- associatedTokenProgram: PublicKey;
4102
- systemProgram: PublicKey;
4103
- };
4104
- remainingAccounts: {
4105
- pubkey: PublicKey;
4106
- isWritable: boolean;
4107
- isSigner: boolean;
4108
- }[];
4109
- remainingAccountsIndices: number[];
4110
- addressLookupTableAddresses: PublicKey[];
4111
- addressLookupTableAccounts: _solana_web3_js.AddressLookupTableAccount[];
4112
- ixs: TransactionInstruction[];
4113
- }>;
4114
- type LiquidateParams = {
4115
- vaultId: number;
4116
- debtAmount: BN;
4117
- colPerUnitDebt?: BN;
4118
- absorb?: boolean;
4119
- to?: PublicKey;
4120
- } & ConnectionParams;
4121
- type LiquidateContextParams = {
4122
- vaultId: number;
4123
- to: PublicKey;
4124
- program: Program<Vaults>;
4125
- } & ConnectionParams;
4126
- declare function getLiquidateContext({ vaultId, to, program, connection, signer, }: LiquidateContextParams): Promise<{
4127
- accounts: {
4128
- signer: PublicKey;
4129
- signerTokenAccount: PublicKey;
4130
- to: PublicKey;
4131
- toTokenAccount: PublicKey;
4132
- vaultAdmin: PublicKey;
4133
- vaultConfig: PublicKey;
4134
- vaultState: PublicKey;
4135
- supplyToken: PublicKey;
4136
- borrowToken: PublicKey;
4137
- oracle: PublicKey;
4138
- tickHasDebt: PublicKey;
4139
- newBranch: PublicKey;
4140
- supplyTokenReservesLiquidity: PublicKey;
4141
- borrowTokenReservesLiquidity: PublicKey;
4142
- vaultSupplyPositionOnLiquidity: PublicKey;
4143
- vaultBorrowPositionOnLiquidity: PublicKey;
4144
- supplyRateModel: PublicKey;
4145
- borrowRateModel: PublicKey;
4146
- supplyTokenClaimAccount: PublicKey;
4147
- borrowTokenClaimAccount: PublicKey;
4148
- liquidity: PublicKey;
4149
- liquidityProgram: PublicKey;
4150
- vaultSupplyTokenAccount: PublicKey;
4151
- vaultBorrowTokenAccount: PublicKey;
4152
- oracleProgram: PublicKey;
4153
- supplyTokenProgram: PublicKey;
4154
- borrowTokenProgram: PublicKey;
4155
- systemProgram: PublicKey;
4156
- associatedTokenProgram: PublicKey;
4157
- };
4158
- remainingAccounts: {
4159
- pubkey: PublicKey;
4160
- isWritable: boolean;
4161
- isSigner: boolean;
4162
- }[];
4163
- otherIxs: TransactionInstruction[];
4164
- remainingAccountsIndices: number[];
4165
- lookupTable: PublicKey;
4166
- }>;
4167
- declare const getLiquidateIx: ({ vaultId, debtAmount, colPerUnitDebt, absorb, signer, to, connection, }: LiquidateParams) => Promise<{
4168
- accounts: {
4169
- signer: PublicKey;
4170
- signerTokenAccount: PublicKey;
4171
- to: PublicKey;
4172
- toTokenAccount: PublicKey;
4173
- vaultAdmin: PublicKey;
4174
- vaultConfig: PublicKey;
4175
- vaultState: PublicKey;
4176
- supplyToken: PublicKey;
4177
- borrowToken: PublicKey;
4178
- oracle: PublicKey;
4179
- tickHasDebt: PublicKey;
4180
- newBranch: PublicKey;
4181
- supplyTokenReservesLiquidity: PublicKey;
4182
- borrowTokenReservesLiquidity: PublicKey;
4183
- vaultSupplyPositionOnLiquidity: PublicKey;
4184
- vaultBorrowPositionOnLiquidity: PublicKey;
4185
- supplyRateModel: PublicKey;
4186
- borrowRateModel: PublicKey;
4187
- supplyTokenClaimAccount: PublicKey;
4188
- borrowTokenClaimAccount: PublicKey;
4189
- liquidity: PublicKey;
4190
- liquidityProgram: PublicKey;
4191
- vaultSupplyTokenAccount: PublicKey;
4192
- vaultBorrowTokenAccount: PublicKey;
4193
- oracleProgram: PublicKey;
4194
- supplyTokenProgram: PublicKey;
4195
- borrowTokenProgram: PublicKey;
4196
- systemProgram: PublicKey;
4197
- associatedTokenProgram: PublicKey;
4198
- };
4199
- remainingAccounts: {
4200
- pubkey: PublicKey;
4201
- isWritable: boolean;
4202
- isSigner: boolean;
4203
- }[];
4204
- remainingAccountsIndices: number[];
4205
- ixs: TransactionInstruction[];
4206
- addressLookupTableAddresses: PublicKey[];
4207
- addressLookupTableAccounts: _solana_web3_js.AddressLookupTableAccount[];
4208
- }>;
4
+ import BN from 'bn.js';
5
+ import * as _solana_web3_js from '@solana/web3.js';
6
+ import { Connection, PublicKey } from '@solana/web3.js';
4209
7
 
4210
8
  type PositionData = Awaited<ReturnType<Program<Vaults>["account"]["position"]["fetch"]>>;
4211
9
  type VaultState = Awaited<ReturnType<Program<Vaults>["account"]["vaultState"]["fetch"]>>;
@@ -4383,5 +181,4 @@ declare const getAllLiquidations: (params: Omit<LiquidateParams, "debtAmount" |
4383
181
  }[];
4384
182
  }[]>;
4385
183
 
4386
- export { INIT_TICK, MAX_TICK, MIN_TICK, TICKS_PER_TICK_HAS_DEBT, TICK_HAS_DEBT_ARRAY_SIZE, TICK_HAS_DEBT_CHILDREN_SIZE, TICK_HAS_DEBT_CHILDREN_SIZE_IN_BITS, TOTAL_INDICES_NEEDED, ZERO_TICK_SCALED_RATIO, findNextTickWithDebt, getAccountOwner, getAllLiquidations, getCurrentPosition, getCurrentPositionState, getFinalPosition, getFirstTickForIndex, getInitPositionContext, getInitPositionIx, getLiquidateContext, getLiquidateIx, getLiquidations, getOperateContext, getOperateIx, getRatioAtTick, getTickAtRatio, getTickIndices, getVaultsProgram, loadRelevantBranches, loadRelevantBranchesForLiquidate, loadRelevantTicksHasDebtArrays, loadRelevantTicksHasDebtArraysLiquidate, readOraclePrice, readTickHasDebtArray, simulateLiquidate };
4387
- export type { ConnectionParams, InitPositionIxParams, LiquidateContextParams, LiquidateParams, OperateContextParams, OperateParams };
184
+ export { INIT_TICK, LiquidateParams, MAX_TICK, MIN_TICK, TICKS_PER_TICK_HAS_DEBT, TICK_HAS_DEBT_ARRAY_SIZE, TICK_HAS_DEBT_CHILDREN_SIZE, TICK_HAS_DEBT_CHILDREN_SIZE_IN_BITS, TOTAL_INDICES_NEEDED, ZERO_TICK_SCALED_RATIO, findNextTickWithDebt, getAccountOwner, getAllLiquidations, getCurrentPosition, getCurrentPositionState, getFinalPosition, getFirstTickForIndex, getLiquidations, getRatioAtTick, getTickAtRatio, getTickIndices, getVaultsProgram, loadRelevantBranches, loadRelevantBranchesForLiquidate, loadRelevantTicksHasDebtArrays, loadRelevantTicksHasDebtArraysLiquidate, readOraclePrice, readTickHasDebtArray, simulateLiquidate };