@jup-ag/lend 0.0.105 → 0.0.107-beta.0

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