@drift-labs/sdk 2.31.1-beta.8 → 2.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/VERSION +1 -1
  2. package/lib/constants/perpMarkets.js +20 -0
  3. package/lib/dlob/orderBookLevels.js +2 -2
  4. package/lib/driftClient.d.ts +53 -5
  5. package/lib/driftClient.js +203 -196
  6. package/lib/idl/drift.json +31 -1
  7. package/lib/index.d.ts +3 -0
  8. package/lib/index.js +3 -0
  9. package/lib/marinade/index.d.ts +11 -0
  10. package/lib/marinade/index.js +36 -0
  11. package/lib/marinade/types.d.ts +1963 -0
  12. package/lib/marinade/types.js +1965 -0
  13. package/lib/math/spotBalance.d.ts +9 -2
  14. package/lib/math/spotBalance.js +54 -6
  15. package/lib/math/superStake.d.ts +22 -0
  16. package/lib/math/superStake.js +108 -0
  17. package/lib/math/utils.d.ts +1 -0
  18. package/lib/math/utils.js +5 -1
  19. package/lib/orderParams.d.ts +18 -5
  20. package/lib/orderParams.js +17 -1
  21. package/lib/user.d.ts +45 -1
  22. package/lib/user.js +227 -9
  23. package/package.json +1 -1
  24. package/src/assert/assert.js +9 -0
  25. package/src/constants/perpMarkets.ts +20 -0
  26. package/src/dlob/orderBookLevels.ts +3 -2
  27. package/src/driftClient.ts +383 -225
  28. package/src/idl/drift.json +31 -1
  29. package/src/index.ts +3 -0
  30. package/src/marinade/idl/idl.json +1962 -0
  31. package/src/marinade/index.ts +64 -0
  32. package/src/marinade/types.ts +3925 -0
  33. package/src/math/spotBalance.ts +83 -5
  34. package/src/math/superStake.ts +148 -0
  35. package/src/math/utils.ts +4 -0
  36. package/src/orderParams.ts +35 -5
  37. package/src/token/index.js +38 -0
  38. package/src/user.ts +453 -15
  39. package/src/util/computeUnits.js +27 -0
  40. package/src/util/promiseTimeout.js +14 -0
  41. package/src/util/tps.js +27 -0
  42. package/tests/spot/test.ts +156 -0
@@ -0,0 +1,1965 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IDL = void 0;
4
+ exports.IDL = {
5
+ version: '0.1.0',
6
+ name: 'marinade_finance',
7
+ instructions: [
8
+ {
9
+ name: 'initialize',
10
+ accounts: [
11
+ {
12
+ name: 'creatorAuthority',
13
+ isMut: false,
14
+ isSigner: true,
15
+ },
16
+ {
17
+ name: 'state',
18
+ isMut: true,
19
+ isSigner: false,
20
+ },
21
+ {
22
+ name: 'reservePda',
23
+ isMut: false,
24
+ isSigner: false,
25
+ },
26
+ {
27
+ name: 'stakeList',
28
+ isMut: true,
29
+ isSigner: false,
30
+ },
31
+ {
32
+ name: 'validatorList',
33
+ isMut: true,
34
+ isSigner: false,
35
+ },
36
+ {
37
+ name: 'msolMint',
38
+ isMut: false,
39
+ isSigner: false,
40
+ },
41
+ {
42
+ name: 'operationalSolAccount',
43
+ isMut: false,
44
+ isSigner: false,
45
+ },
46
+ {
47
+ name: 'liqPool',
48
+ accounts: [
49
+ {
50
+ name: 'lpMint',
51
+ isMut: false,
52
+ isSigner: false,
53
+ },
54
+ {
55
+ name: 'solLegPda',
56
+ isMut: false,
57
+ isSigner: false,
58
+ },
59
+ {
60
+ name: 'msolLeg',
61
+ isMut: false,
62
+ isSigner: false,
63
+ },
64
+ ],
65
+ },
66
+ {
67
+ name: 'treasuryMsolAccount',
68
+ isMut: false,
69
+ isSigner: false,
70
+ },
71
+ {
72
+ name: 'clock',
73
+ isMut: false,
74
+ isSigner: false,
75
+ },
76
+ {
77
+ name: 'rent',
78
+ isMut: false,
79
+ isSigner: false,
80
+ },
81
+ ],
82
+ args: [
83
+ {
84
+ name: 'data',
85
+ type: {
86
+ defined: 'InitializeData',
87
+ },
88
+ },
89
+ ],
90
+ },
91
+ {
92
+ name: 'changeAuthority',
93
+ accounts: [
94
+ {
95
+ name: 'state',
96
+ isMut: true,
97
+ isSigner: false,
98
+ },
99
+ {
100
+ name: 'adminAuthority',
101
+ isMut: false,
102
+ isSigner: true,
103
+ },
104
+ ],
105
+ args: [
106
+ {
107
+ name: 'data',
108
+ type: {
109
+ defined: 'ChangeAuthorityData',
110
+ },
111
+ },
112
+ ],
113
+ },
114
+ {
115
+ name: 'addValidator',
116
+ accounts: [
117
+ {
118
+ name: 'state',
119
+ isMut: true,
120
+ isSigner: false,
121
+ },
122
+ {
123
+ name: 'managerAuthority',
124
+ isMut: false,
125
+ isSigner: true,
126
+ },
127
+ {
128
+ name: 'validatorList',
129
+ isMut: true,
130
+ isSigner: false,
131
+ },
132
+ {
133
+ name: 'validatorVote',
134
+ isMut: false,
135
+ isSigner: false,
136
+ },
137
+ {
138
+ name: 'duplicationFlag',
139
+ isMut: true,
140
+ isSigner: false,
141
+ },
142
+ {
143
+ name: 'rentPayer',
144
+ isMut: true,
145
+ isSigner: true,
146
+ },
147
+ {
148
+ name: 'clock',
149
+ isMut: false,
150
+ isSigner: false,
151
+ },
152
+ {
153
+ name: 'rent',
154
+ isMut: false,
155
+ isSigner: false,
156
+ },
157
+ {
158
+ name: 'systemProgram',
159
+ isMut: false,
160
+ isSigner: false,
161
+ },
162
+ ],
163
+ args: [
164
+ {
165
+ name: 'score',
166
+ type: 'u32',
167
+ },
168
+ ],
169
+ },
170
+ {
171
+ name: 'removeValidator',
172
+ accounts: [
173
+ {
174
+ name: 'state',
175
+ isMut: true,
176
+ isSigner: false,
177
+ },
178
+ {
179
+ name: 'managerAuthority',
180
+ isMut: false,
181
+ isSigner: true,
182
+ },
183
+ {
184
+ name: 'validatorList',
185
+ isMut: true,
186
+ isSigner: false,
187
+ },
188
+ {
189
+ name: 'duplicationFlag',
190
+ isMut: true,
191
+ isSigner: false,
192
+ },
193
+ {
194
+ name: 'operationalSolAccount',
195
+ isMut: true,
196
+ isSigner: false,
197
+ },
198
+ ],
199
+ args: [
200
+ {
201
+ name: 'index',
202
+ type: 'u32',
203
+ },
204
+ {
205
+ name: 'validatorVote',
206
+ type: 'publicKey',
207
+ },
208
+ ],
209
+ },
210
+ {
211
+ name: 'setValidatorScore',
212
+ accounts: [
213
+ {
214
+ name: 'state',
215
+ isMut: true,
216
+ isSigner: false,
217
+ },
218
+ {
219
+ name: 'managerAuthority',
220
+ isMut: false,
221
+ isSigner: true,
222
+ },
223
+ {
224
+ name: 'validatorList',
225
+ isMut: true,
226
+ isSigner: false,
227
+ },
228
+ ],
229
+ args: [
230
+ {
231
+ name: 'index',
232
+ type: 'u32',
233
+ },
234
+ {
235
+ name: 'validatorVote',
236
+ type: 'publicKey',
237
+ },
238
+ {
239
+ name: 'score',
240
+ type: 'u32',
241
+ },
242
+ ],
243
+ },
244
+ {
245
+ name: 'configValidatorSystem',
246
+ accounts: [
247
+ {
248
+ name: 'state',
249
+ isMut: true,
250
+ isSigner: false,
251
+ },
252
+ {
253
+ name: 'managerAuthority',
254
+ isMut: false,
255
+ isSigner: true,
256
+ },
257
+ ],
258
+ args: [
259
+ {
260
+ name: 'extraRuns',
261
+ type: 'u32',
262
+ },
263
+ ],
264
+ },
265
+ {
266
+ name: 'deposit',
267
+ accounts: [
268
+ {
269
+ name: 'state',
270
+ isMut: true,
271
+ isSigner: false,
272
+ },
273
+ {
274
+ name: 'msolMint',
275
+ isMut: true,
276
+ isSigner: false,
277
+ },
278
+ {
279
+ name: 'liqPoolSolLegPda',
280
+ isMut: true,
281
+ isSigner: false,
282
+ },
283
+ {
284
+ name: 'liqPoolMsolLeg',
285
+ isMut: true,
286
+ isSigner: false,
287
+ },
288
+ {
289
+ name: 'liqPoolMsolLegAuthority',
290
+ isMut: false,
291
+ isSigner: false,
292
+ },
293
+ {
294
+ name: 'reservePda',
295
+ isMut: true,
296
+ isSigner: false,
297
+ },
298
+ {
299
+ name: 'transferFrom',
300
+ isMut: true,
301
+ isSigner: true,
302
+ },
303
+ {
304
+ name: 'mintTo',
305
+ isMut: true,
306
+ isSigner: false,
307
+ },
308
+ {
309
+ name: 'msolMintAuthority',
310
+ isMut: false,
311
+ isSigner: false,
312
+ },
313
+ {
314
+ name: 'systemProgram',
315
+ isMut: false,
316
+ isSigner: false,
317
+ },
318
+ {
319
+ name: 'tokenProgram',
320
+ isMut: false,
321
+ isSigner: false,
322
+ },
323
+ ],
324
+ args: [
325
+ {
326
+ name: 'lamports',
327
+ type: 'u64',
328
+ },
329
+ ],
330
+ },
331
+ {
332
+ name: 'depositStakeAccount',
333
+ accounts: [
334
+ {
335
+ name: 'state',
336
+ isMut: true,
337
+ isSigner: false,
338
+ },
339
+ {
340
+ name: 'validatorList',
341
+ isMut: true,
342
+ isSigner: false,
343
+ },
344
+ {
345
+ name: 'stakeList',
346
+ isMut: true,
347
+ isSigner: false,
348
+ },
349
+ {
350
+ name: 'stakeAccount',
351
+ isMut: true,
352
+ isSigner: false,
353
+ },
354
+ {
355
+ name: 'stakeAuthority',
356
+ isMut: false,
357
+ isSigner: true,
358
+ },
359
+ {
360
+ name: 'duplicationFlag',
361
+ isMut: true,
362
+ isSigner: false,
363
+ },
364
+ {
365
+ name: 'rentPayer',
366
+ isMut: true,
367
+ isSigner: true,
368
+ },
369
+ {
370
+ name: 'msolMint',
371
+ isMut: true,
372
+ isSigner: false,
373
+ },
374
+ {
375
+ name: 'mintTo',
376
+ isMut: true,
377
+ isSigner: false,
378
+ },
379
+ {
380
+ name: 'msolMintAuthority',
381
+ isMut: false,
382
+ isSigner: false,
383
+ },
384
+ {
385
+ name: 'clock',
386
+ isMut: false,
387
+ isSigner: false,
388
+ },
389
+ {
390
+ name: 'rent',
391
+ isMut: false,
392
+ isSigner: false,
393
+ },
394
+ {
395
+ name: 'systemProgram',
396
+ isMut: false,
397
+ isSigner: false,
398
+ },
399
+ {
400
+ name: 'tokenProgram',
401
+ isMut: false,
402
+ isSigner: false,
403
+ },
404
+ {
405
+ name: 'stakeProgram',
406
+ isMut: false,
407
+ isSigner: false,
408
+ },
409
+ ],
410
+ args: [
411
+ {
412
+ name: 'validatorIndex',
413
+ type: 'u32',
414
+ },
415
+ ],
416
+ },
417
+ {
418
+ name: 'liquidUnstake',
419
+ accounts: [
420
+ {
421
+ name: 'state',
422
+ isMut: true,
423
+ isSigner: false,
424
+ },
425
+ {
426
+ name: 'msolMint',
427
+ isMut: true,
428
+ isSigner: false,
429
+ },
430
+ {
431
+ name: 'liqPoolSolLegPda',
432
+ isMut: true,
433
+ isSigner: false,
434
+ },
435
+ {
436
+ name: 'liqPoolMsolLeg',
437
+ isMut: true,
438
+ isSigner: false,
439
+ },
440
+ {
441
+ name: 'treasuryMsolAccount',
442
+ isMut: true,
443
+ isSigner: false,
444
+ },
445
+ {
446
+ name: 'getMsolFrom',
447
+ isMut: true,
448
+ isSigner: false,
449
+ },
450
+ {
451
+ name: 'getMsolFromAuthority',
452
+ isMut: false,
453
+ isSigner: true,
454
+ },
455
+ {
456
+ name: 'transferSolTo',
457
+ isMut: true,
458
+ isSigner: false,
459
+ },
460
+ {
461
+ name: 'systemProgram',
462
+ isMut: false,
463
+ isSigner: false,
464
+ },
465
+ {
466
+ name: 'tokenProgram',
467
+ isMut: false,
468
+ isSigner: false,
469
+ },
470
+ ],
471
+ args: [
472
+ {
473
+ name: 'msolAmount',
474
+ type: 'u64',
475
+ },
476
+ ],
477
+ },
478
+ {
479
+ name: 'addLiquidity',
480
+ accounts: [
481
+ {
482
+ name: 'state',
483
+ isMut: true,
484
+ isSigner: false,
485
+ },
486
+ {
487
+ name: 'lpMint',
488
+ isMut: true,
489
+ isSigner: false,
490
+ },
491
+ {
492
+ name: 'lpMintAuthority',
493
+ isMut: false,
494
+ isSigner: false,
495
+ },
496
+ {
497
+ name: 'liqPoolMsolLeg',
498
+ isMut: false,
499
+ isSigner: false,
500
+ },
501
+ {
502
+ name: 'liqPoolSolLegPda',
503
+ isMut: true,
504
+ isSigner: false,
505
+ },
506
+ {
507
+ name: 'transferFrom',
508
+ isMut: true,
509
+ isSigner: true,
510
+ },
511
+ {
512
+ name: 'mintTo',
513
+ isMut: true,
514
+ isSigner: false,
515
+ },
516
+ {
517
+ name: 'systemProgram',
518
+ isMut: false,
519
+ isSigner: false,
520
+ },
521
+ {
522
+ name: 'tokenProgram',
523
+ isMut: false,
524
+ isSigner: false,
525
+ },
526
+ ],
527
+ args: [
528
+ {
529
+ name: 'lamports',
530
+ type: 'u64',
531
+ },
532
+ ],
533
+ },
534
+ {
535
+ name: 'removeLiquidity',
536
+ accounts: [
537
+ {
538
+ name: 'state',
539
+ isMut: true,
540
+ isSigner: false,
541
+ },
542
+ {
543
+ name: 'lpMint',
544
+ isMut: true,
545
+ isSigner: false,
546
+ },
547
+ {
548
+ name: 'burnFrom',
549
+ isMut: true,
550
+ isSigner: false,
551
+ },
552
+ {
553
+ name: 'burnFromAuthority',
554
+ isMut: false,
555
+ isSigner: true,
556
+ },
557
+ {
558
+ name: 'transferSolTo',
559
+ isMut: true,
560
+ isSigner: false,
561
+ },
562
+ {
563
+ name: 'transferMsolTo',
564
+ isMut: true,
565
+ isSigner: false,
566
+ },
567
+ {
568
+ name: 'liqPoolSolLegPda',
569
+ isMut: true,
570
+ isSigner: false,
571
+ },
572
+ {
573
+ name: 'liqPoolMsolLeg',
574
+ isMut: true,
575
+ isSigner: false,
576
+ },
577
+ {
578
+ name: 'liqPoolMsolLegAuthority',
579
+ isMut: false,
580
+ isSigner: false,
581
+ },
582
+ {
583
+ name: 'systemProgram',
584
+ isMut: false,
585
+ isSigner: false,
586
+ },
587
+ {
588
+ name: 'tokenProgram',
589
+ isMut: false,
590
+ isSigner: false,
591
+ },
592
+ ],
593
+ args: [
594
+ {
595
+ name: 'tokens',
596
+ type: 'u64',
597
+ },
598
+ ],
599
+ },
600
+ {
601
+ name: 'configLp',
602
+ accounts: [
603
+ {
604
+ name: 'state',
605
+ isMut: true,
606
+ isSigner: false,
607
+ },
608
+ {
609
+ name: 'adminAuthority',
610
+ isMut: false,
611
+ isSigner: true,
612
+ },
613
+ ],
614
+ args: [
615
+ {
616
+ name: 'params',
617
+ type: {
618
+ defined: 'ConfigLpParams',
619
+ },
620
+ },
621
+ ],
622
+ },
623
+ {
624
+ name: 'configMarinade',
625
+ accounts: [
626
+ {
627
+ name: 'state',
628
+ isMut: true,
629
+ isSigner: false,
630
+ },
631
+ {
632
+ name: 'adminAuthority',
633
+ isMut: false,
634
+ isSigner: true,
635
+ },
636
+ ],
637
+ args: [
638
+ {
639
+ name: 'params',
640
+ type: {
641
+ defined: 'ConfigMarinadeParams',
642
+ },
643
+ },
644
+ ],
645
+ },
646
+ {
647
+ name: 'orderUnstake',
648
+ accounts: [
649
+ {
650
+ name: 'state',
651
+ isMut: true,
652
+ isSigner: false,
653
+ },
654
+ {
655
+ name: 'msolMint',
656
+ isMut: true,
657
+ isSigner: false,
658
+ },
659
+ {
660
+ name: 'burnMsolFrom',
661
+ isMut: true,
662
+ isSigner: false,
663
+ },
664
+ {
665
+ name: 'burnMsolAuthority',
666
+ isMut: false,
667
+ isSigner: true,
668
+ },
669
+ {
670
+ name: 'newTicketAccount',
671
+ isMut: true,
672
+ isSigner: false,
673
+ },
674
+ {
675
+ name: 'clock',
676
+ isMut: false,
677
+ isSigner: false,
678
+ },
679
+ {
680
+ name: 'rent',
681
+ isMut: false,
682
+ isSigner: false,
683
+ },
684
+ {
685
+ name: 'tokenProgram',
686
+ isMut: false,
687
+ isSigner: false,
688
+ },
689
+ ],
690
+ args: [
691
+ {
692
+ name: 'msolAmount',
693
+ type: 'u64',
694
+ },
695
+ ],
696
+ },
697
+ {
698
+ name: 'claim',
699
+ accounts: [
700
+ {
701
+ name: 'state',
702
+ isMut: true,
703
+ isSigner: false,
704
+ },
705
+ {
706
+ name: 'reservePda',
707
+ isMut: true,
708
+ isSigner: false,
709
+ },
710
+ {
711
+ name: 'ticketAccount',
712
+ isMut: true,
713
+ isSigner: false,
714
+ },
715
+ {
716
+ name: 'transferSolTo',
717
+ isMut: true,
718
+ isSigner: false,
719
+ },
720
+ {
721
+ name: 'clock',
722
+ isMut: false,
723
+ isSigner: false,
724
+ },
725
+ {
726
+ name: 'systemProgram',
727
+ isMut: false,
728
+ isSigner: false,
729
+ },
730
+ ],
731
+ args: [],
732
+ },
733
+ {
734
+ name: 'stakeReserve',
735
+ accounts: [
736
+ {
737
+ name: 'state',
738
+ isMut: true,
739
+ isSigner: false,
740
+ },
741
+ {
742
+ name: 'validatorList',
743
+ isMut: true,
744
+ isSigner: false,
745
+ },
746
+ {
747
+ name: 'stakeList',
748
+ isMut: true,
749
+ isSigner: false,
750
+ },
751
+ {
752
+ name: 'validatorVote',
753
+ isMut: true,
754
+ isSigner: false,
755
+ },
756
+ {
757
+ name: 'reservePda',
758
+ isMut: true,
759
+ isSigner: false,
760
+ },
761
+ {
762
+ name: 'stakeAccount',
763
+ isMut: true,
764
+ isSigner: false,
765
+ },
766
+ {
767
+ name: 'stakeDepositAuthority',
768
+ isMut: false,
769
+ isSigner: false,
770
+ },
771
+ {
772
+ name: 'clock',
773
+ isMut: false,
774
+ isSigner: false,
775
+ },
776
+ {
777
+ name: 'epochSchedule',
778
+ isMut: false,
779
+ isSigner: false,
780
+ },
781
+ {
782
+ name: 'rent',
783
+ isMut: false,
784
+ isSigner: false,
785
+ },
786
+ {
787
+ name: 'stakeHistory',
788
+ isMut: false,
789
+ isSigner: false,
790
+ },
791
+ {
792
+ name: 'stakeConfig',
793
+ isMut: false,
794
+ isSigner: false,
795
+ },
796
+ {
797
+ name: 'systemProgram',
798
+ isMut: false,
799
+ isSigner: false,
800
+ },
801
+ {
802
+ name: 'stakeProgram',
803
+ isMut: false,
804
+ isSigner: false,
805
+ },
806
+ ],
807
+ args: [
808
+ {
809
+ name: 'validatorIndex',
810
+ type: 'u32',
811
+ },
812
+ ],
813
+ },
814
+ {
815
+ name: 'updateActive',
816
+ accounts: [
817
+ {
818
+ name: 'common',
819
+ accounts: [
820
+ {
821
+ name: 'state',
822
+ isMut: true,
823
+ isSigner: false,
824
+ },
825
+ {
826
+ name: 'stakeList',
827
+ isMut: true,
828
+ isSigner: false,
829
+ },
830
+ {
831
+ name: 'stakeAccount',
832
+ isMut: true,
833
+ isSigner: false,
834
+ },
835
+ {
836
+ name: 'stakeWithdrawAuthority',
837
+ isMut: false,
838
+ isSigner: false,
839
+ },
840
+ {
841
+ name: 'reservePda',
842
+ isMut: true,
843
+ isSigner: false,
844
+ },
845
+ {
846
+ name: 'msolMint',
847
+ isMut: true,
848
+ isSigner: false,
849
+ },
850
+ {
851
+ name: 'msolMintAuthority',
852
+ isMut: false,
853
+ isSigner: false,
854
+ },
855
+ {
856
+ name: 'treasuryMsolAccount',
857
+ isMut: true,
858
+ isSigner: false,
859
+ },
860
+ {
861
+ name: 'clock',
862
+ isMut: false,
863
+ isSigner: false,
864
+ },
865
+ {
866
+ name: 'stakeHistory',
867
+ isMut: false,
868
+ isSigner: false,
869
+ },
870
+ {
871
+ name: 'stakeProgram',
872
+ isMut: false,
873
+ isSigner: false,
874
+ },
875
+ {
876
+ name: 'tokenProgram',
877
+ isMut: false,
878
+ isSigner: false,
879
+ },
880
+ ],
881
+ },
882
+ {
883
+ name: 'validatorList',
884
+ isMut: true,
885
+ isSigner: false,
886
+ },
887
+ ],
888
+ args: [
889
+ {
890
+ name: 'stakeIndex',
891
+ type: 'u32',
892
+ },
893
+ {
894
+ name: 'validatorIndex',
895
+ type: 'u32',
896
+ },
897
+ ],
898
+ },
899
+ {
900
+ name: 'updateDeactivated',
901
+ accounts: [
902
+ {
903
+ name: 'common',
904
+ accounts: [
905
+ {
906
+ name: 'state',
907
+ isMut: true,
908
+ isSigner: false,
909
+ },
910
+ {
911
+ name: 'stakeList',
912
+ isMut: true,
913
+ isSigner: false,
914
+ },
915
+ {
916
+ name: 'stakeAccount',
917
+ isMut: true,
918
+ isSigner: false,
919
+ },
920
+ {
921
+ name: 'stakeWithdrawAuthority',
922
+ isMut: false,
923
+ isSigner: false,
924
+ },
925
+ {
926
+ name: 'reservePda',
927
+ isMut: true,
928
+ isSigner: false,
929
+ },
930
+ {
931
+ name: 'msolMint',
932
+ isMut: true,
933
+ isSigner: false,
934
+ },
935
+ {
936
+ name: 'msolMintAuthority',
937
+ isMut: false,
938
+ isSigner: false,
939
+ },
940
+ {
941
+ name: 'treasuryMsolAccount',
942
+ isMut: true,
943
+ isSigner: false,
944
+ },
945
+ {
946
+ name: 'clock',
947
+ isMut: false,
948
+ isSigner: false,
949
+ },
950
+ {
951
+ name: 'stakeHistory',
952
+ isMut: false,
953
+ isSigner: false,
954
+ },
955
+ {
956
+ name: 'stakeProgram',
957
+ isMut: false,
958
+ isSigner: false,
959
+ },
960
+ {
961
+ name: 'tokenProgram',
962
+ isMut: false,
963
+ isSigner: false,
964
+ },
965
+ ],
966
+ },
967
+ {
968
+ name: 'operationalSolAccount',
969
+ isMut: true,
970
+ isSigner: false,
971
+ },
972
+ {
973
+ name: 'systemProgram',
974
+ isMut: false,
975
+ isSigner: false,
976
+ },
977
+ ],
978
+ args: [
979
+ {
980
+ name: 'stakeIndex',
981
+ type: 'u32',
982
+ },
983
+ ],
984
+ },
985
+ {
986
+ name: 'deactivateStake',
987
+ accounts: [
988
+ {
989
+ name: 'state',
990
+ isMut: true,
991
+ isSigner: false,
992
+ },
993
+ {
994
+ name: 'reservePda',
995
+ isMut: false,
996
+ isSigner: false,
997
+ },
998
+ {
999
+ name: 'validatorList',
1000
+ isMut: true,
1001
+ isSigner: false,
1002
+ },
1003
+ {
1004
+ name: 'stakeList',
1005
+ isMut: true,
1006
+ isSigner: false,
1007
+ },
1008
+ {
1009
+ name: 'stakeAccount',
1010
+ isMut: true,
1011
+ isSigner: false,
1012
+ },
1013
+ {
1014
+ name: 'stakeDepositAuthority',
1015
+ isMut: false,
1016
+ isSigner: false,
1017
+ },
1018
+ {
1019
+ name: 'splitStakeAccount',
1020
+ isMut: true,
1021
+ isSigner: true,
1022
+ },
1023
+ {
1024
+ name: 'splitStakeRentPayer',
1025
+ isMut: true,
1026
+ isSigner: true,
1027
+ },
1028
+ {
1029
+ name: 'clock',
1030
+ isMut: false,
1031
+ isSigner: false,
1032
+ },
1033
+ {
1034
+ name: 'rent',
1035
+ isMut: false,
1036
+ isSigner: false,
1037
+ },
1038
+ {
1039
+ name: 'epochSchedule',
1040
+ isMut: false,
1041
+ isSigner: false,
1042
+ },
1043
+ {
1044
+ name: 'stakeHistory',
1045
+ isMut: false,
1046
+ isSigner: false,
1047
+ },
1048
+ {
1049
+ name: 'systemProgram',
1050
+ isMut: false,
1051
+ isSigner: false,
1052
+ },
1053
+ {
1054
+ name: 'stakeProgram',
1055
+ isMut: false,
1056
+ isSigner: false,
1057
+ },
1058
+ ],
1059
+ args: [
1060
+ {
1061
+ name: 'stakeIndex',
1062
+ type: 'u32',
1063
+ },
1064
+ {
1065
+ name: 'validatorIndex',
1066
+ type: 'u32',
1067
+ },
1068
+ ],
1069
+ },
1070
+ {
1071
+ name: 'emergencyUnstake',
1072
+ accounts: [
1073
+ {
1074
+ name: 'state',
1075
+ isMut: true,
1076
+ isSigner: false,
1077
+ },
1078
+ {
1079
+ name: 'validatorManagerAuthority',
1080
+ isMut: false,
1081
+ isSigner: true,
1082
+ },
1083
+ {
1084
+ name: 'validatorList',
1085
+ isMut: true,
1086
+ isSigner: false,
1087
+ },
1088
+ {
1089
+ name: 'stakeList',
1090
+ isMut: true,
1091
+ isSigner: false,
1092
+ },
1093
+ {
1094
+ name: 'stakeAccount',
1095
+ isMut: true,
1096
+ isSigner: false,
1097
+ },
1098
+ {
1099
+ name: 'stakeDepositAuthority',
1100
+ isMut: false,
1101
+ isSigner: false,
1102
+ },
1103
+ {
1104
+ name: 'clock',
1105
+ isMut: false,
1106
+ isSigner: false,
1107
+ },
1108
+ {
1109
+ name: 'stakeProgram',
1110
+ isMut: false,
1111
+ isSigner: false,
1112
+ },
1113
+ ],
1114
+ args: [
1115
+ {
1116
+ name: 'stakeIndex',
1117
+ type: 'u32',
1118
+ },
1119
+ {
1120
+ name: 'validatorIndex',
1121
+ type: 'u32',
1122
+ },
1123
+ ],
1124
+ },
1125
+ {
1126
+ name: 'partialUnstake',
1127
+ accounts: [
1128
+ {
1129
+ name: 'state',
1130
+ isMut: true,
1131
+ isSigner: false,
1132
+ },
1133
+ {
1134
+ name: 'validatorManagerAuthority',
1135
+ isMut: false,
1136
+ isSigner: true,
1137
+ },
1138
+ {
1139
+ name: 'validatorList',
1140
+ isMut: true,
1141
+ isSigner: false,
1142
+ },
1143
+ {
1144
+ name: 'stakeList',
1145
+ isMut: true,
1146
+ isSigner: false,
1147
+ },
1148
+ {
1149
+ name: 'stakeAccount',
1150
+ isMut: true,
1151
+ isSigner: false,
1152
+ },
1153
+ {
1154
+ name: 'stakeDepositAuthority',
1155
+ isMut: false,
1156
+ isSigner: false,
1157
+ },
1158
+ {
1159
+ name: 'reservePda',
1160
+ isMut: false,
1161
+ isSigner: false,
1162
+ },
1163
+ {
1164
+ name: 'splitStakeAccount',
1165
+ isMut: true,
1166
+ isSigner: true,
1167
+ },
1168
+ {
1169
+ name: 'splitStakeRentPayer',
1170
+ isMut: true,
1171
+ isSigner: true,
1172
+ },
1173
+ {
1174
+ name: 'clock',
1175
+ isMut: false,
1176
+ isSigner: false,
1177
+ },
1178
+ {
1179
+ name: 'rent',
1180
+ isMut: false,
1181
+ isSigner: false,
1182
+ },
1183
+ {
1184
+ name: 'stakeHistory',
1185
+ isMut: false,
1186
+ isSigner: false,
1187
+ },
1188
+ {
1189
+ name: 'systemProgram',
1190
+ isMut: false,
1191
+ isSigner: false,
1192
+ },
1193
+ {
1194
+ name: 'stakeProgram',
1195
+ isMut: false,
1196
+ isSigner: false,
1197
+ },
1198
+ ],
1199
+ args: [
1200
+ {
1201
+ name: 'stakeIndex',
1202
+ type: 'u32',
1203
+ },
1204
+ {
1205
+ name: 'validatorIndex',
1206
+ type: 'u32',
1207
+ },
1208
+ {
1209
+ name: 'desiredUnstakeAmount',
1210
+ type: 'u64',
1211
+ },
1212
+ ],
1213
+ },
1214
+ {
1215
+ name: 'mergeStakes',
1216
+ accounts: [
1217
+ {
1218
+ name: 'state',
1219
+ isMut: true,
1220
+ isSigner: false,
1221
+ },
1222
+ {
1223
+ name: 'stakeList',
1224
+ isMut: true,
1225
+ isSigner: false,
1226
+ },
1227
+ {
1228
+ name: 'validatorList',
1229
+ isMut: true,
1230
+ isSigner: false,
1231
+ },
1232
+ {
1233
+ name: 'destinationStake',
1234
+ isMut: true,
1235
+ isSigner: false,
1236
+ },
1237
+ {
1238
+ name: 'sourceStake',
1239
+ isMut: true,
1240
+ isSigner: false,
1241
+ },
1242
+ {
1243
+ name: 'stakeDepositAuthority',
1244
+ isMut: false,
1245
+ isSigner: false,
1246
+ },
1247
+ {
1248
+ name: 'stakeWithdrawAuthority',
1249
+ isMut: false,
1250
+ isSigner: false,
1251
+ },
1252
+ {
1253
+ name: 'operationalSolAccount',
1254
+ isMut: true,
1255
+ isSigner: false,
1256
+ },
1257
+ {
1258
+ name: 'clock',
1259
+ isMut: false,
1260
+ isSigner: false,
1261
+ },
1262
+ {
1263
+ name: 'stakeHistory',
1264
+ isMut: false,
1265
+ isSigner: false,
1266
+ },
1267
+ {
1268
+ name: 'stakeProgram',
1269
+ isMut: false,
1270
+ isSigner: false,
1271
+ },
1272
+ ],
1273
+ args: [
1274
+ {
1275
+ name: 'destinationStakeIndex',
1276
+ type: 'u32',
1277
+ },
1278
+ {
1279
+ name: 'sourceStakeIndex',
1280
+ type: 'u32',
1281
+ },
1282
+ {
1283
+ name: 'validatorIndex',
1284
+ type: 'u32',
1285
+ },
1286
+ ],
1287
+ },
1288
+ ],
1289
+ accounts: [
1290
+ {
1291
+ name: 'state',
1292
+ type: {
1293
+ kind: 'struct',
1294
+ fields: [
1295
+ {
1296
+ name: 'msolMint',
1297
+ type: 'publicKey',
1298
+ },
1299
+ {
1300
+ name: 'adminAuthority',
1301
+ type: 'publicKey',
1302
+ },
1303
+ {
1304
+ name: 'operationalSolAccount',
1305
+ type: 'publicKey',
1306
+ },
1307
+ {
1308
+ name: 'treasuryMsolAccount',
1309
+ type: 'publicKey',
1310
+ },
1311
+ {
1312
+ name: 'reserveBumpSeed',
1313
+ type: 'u8',
1314
+ },
1315
+ {
1316
+ name: 'msolMintAuthorityBumpSeed',
1317
+ type: 'u8',
1318
+ },
1319
+ {
1320
+ name: 'rentExemptForTokenAcc',
1321
+ type: 'u64',
1322
+ },
1323
+ {
1324
+ name: 'rewardFee',
1325
+ type: {
1326
+ defined: 'Fee',
1327
+ },
1328
+ },
1329
+ {
1330
+ name: 'stakeSystem',
1331
+ type: {
1332
+ defined: 'StakeSystem',
1333
+ },
1334
+ },
1335
+ {
1336
+ name: 'validatorSystem',
1337
+ type: {
1338
+ defined: 'ValidatorSystem',
1339
+ },
1340
+ },
1341
+ {
1342
+ name: 'liqPool',
1343
+ type: {
1344
+ defined: 'LiqPool',
1345
+ },
1346
+ },
1347
+ {
1348
+ name: 'availableReserveBalance',
1349
+ type: 'u64',
1350
+ },
1351
+ {
1352
+ name: 'msolSupply',
1353
+ type: 'u64',
1354
+ },
1355
+ {
1356
+ name: 'msolPrice',
1357
+ type: 'u64',
1358
+ },
1359
+ {
1360
+ name: 'circulatingTicketCount',
1361
+ docs: ['count tickets for delayed-unstake'],
1362
+ type: 'u64',
1363
+ },
1364
+ {
1365
+ name: 'circulatingTicketBalance',
1366
+ docs: [
1367
+ 'total lamports amount of generated and not claimed yet tickets',
1368
+ ],
1369
+ type: 'u64',
1370
+ },
1371
+ {
1372
+ name: 'lentFromReserve',
1373
+ type: 'u64',
1374
+ },
1375
+ {
1376
+ name: 'minDeposit',
1377
+ type: 'u64',
1378
+ },
1379
+ {
1380
+ name: 'minWithdraw',
1381
+ type: 'u64',
1382
+ },
1383
+ {
1384
+ name: 'stakingSolCap',
1385
+ type: 'u64',
1386
+ },
1387
+ {
1388
+ name: 'emergencyCoolingDown',
1389
+ type: 'u64',
1390
+ },
1391
+ ],
1392
+ },
1393
+ },
1394
+ {
1395
+ name: 'ticketAccountData',
1396
+ type: {
1397
+ kind: 'struct',
1398
+ fields: [
1399
+ {
1400
+ name: 'stateAddress',
1401
+ type: 'publicKey',
1402
+ },
1403
+ {
1404
+ name: 'beneficiary',
1405
+ type: 'publicKey',
1406
+ },
1407
+ {
1408
+ name: 'lamportsAmount',
1409
+ type: 'u64',
1410
+ },
1411
+ {
1412
+ name: 'createdEpoch',
1413
+ type: 'u64',
1414
+ },
1415
+ ],
1416
+ },
1417
+ },
1418
+ ],
1419
+ types: [
1420
+ {
1421
+ name: 'LiqPool',
1422
+ type: {
1423
+ kind: 'struct',
1424
+ fields: [
1425
+ {
1426
+ name: 'lpMint',
1427
+ type: 'publicKey',
1428
+ },
1429
+ {
1430
+ name: 'lpMintAuthorityBumpSeed',
1431
+ type: 'u8',
1432
+ },
1433
+ {
1434
+ name: 'solLegBumpSeed',
1435
+ type: 'u8',
1436
+ },
1437
+ {
1438
+ name: 'msolLegAuthorityBumpSeed',
1439
+ type: 'u8',
1440
+ },
1441
+ {
1442
+ name: 'msolLeg',
1443
+ type: 'publicKey',
1444
+ },
1445
+ {
1446
+ name: 'lpLiquidityTarget',
1447
+ docs: [
1448
+ 'Liquidity target. If the Liquidity reach this amount, the fee reaches lp_min_discount_fee',
1449
+ ],
1450
+ type: 'u64',
1451
+ },
1452
+ {
1453
+ name: 'lpMaxFee',
1454
+ docs: ['Liquidity pool max fee'],
1455
+ type: {
1456
+ defined: 'Fee',
1457
+ },
1458
+ },
1459
+ {
1460
+ name: 'lpMinFee',
1461
+ docs: ['SOL/mSOL Liquidity pool min fee'],
1462
+ type: {
1463
+ defined: 'Fee',
1464
+ },
1465
+ },
1466
+ {
1467
+ name: 'treasuryCut',
1468
+ docs: ['Treasury cut'],
1469
+ type: {
1470
+ defined: 'Fee',
1471
+ },
1472
+ },
1473
+ {
1474
+ name: 'lpSupply',
1475
+ type: 'u64',
1476
+ },
1477
+ {
1478
+ name: 'lentFromSolLeg',
1479
+ type: 'u64',
1480
+ },
1481
+ {
1482
+ name: 'liquiditySolCap',
1483
+ type: 'u64',
1484
+ },
1485
+ ],
1486
+ },
1487
+ },
1488
+ {
1489
+ name: 'List',
1490
+ type: {
1491
+ kind: 'struct',
1492
+ fields: [
1493
+ {
1494
+ name: 'account',
1495
+ type: 'publicKey',
1496
+ },
1497
+ {
1498
+ name: 'itemSize',
1499
+ type: 'u32',
1500
+ },
1501
+ {
1502
+ name: 'count',
1503
+ type: 'u32',
1504
+ },
1505
+ {
1506
+ name: 'newAccount',
1507
+ type: 'publicKey',
1508
+ },
1509
+ {
1510
+ name: 'copiedCount',
1511
+ type: 'u32',
1512
+ },
1513
+ ],
1514
+ },
1515
+ },
1516
+ {
1517
+ name: 'StakeRecord',
1518
+ type: {
1519
+ kind: 'struct',
1520
+ fields: [
1521
+ {
1522
+ name: 'stakeAccount',
1523
+ type: 'publicKey',
1524
+ },
1525
+ {
1526
+ name: 'lastUpdateDelegatedLamports',
1527
+ type: 'u64',
1528
+ },
1529
+ {
1530
+ name: 'lastUpdateEpoch',
1531
+ type: 'u64',
1532
+ },
1533
+ {
1534
+ name: 'isEmergencyUnstaking',
1535
+ type: 'u8',
1536
+ },
1537
+ ],
1538
+ },
1539
+ },
1540
+ {
1541
+ name: 'StakeSystem',
1542
+ type: {
1543
+ kind: 'struct',
1544
+ fields: [
1545
+ {
1546
+ name: 'stakeList',
1547
+ type: {
1548
+ defined: 'List',
1549
+ },
1550
+ },
1551
+ {
1552
+ name: 'delayedUnstakeCoolingDown',
1553
+ type: 'u64',
1554
+ },
1555
+ {
1556
+ name: 'stakeDepositBumpSeed',
1557
+ type: 'u8',
1558
+ },
1559
+ {
1560
+ name: 'stakeWithdrawBumpSeed',
1561
+ type: 'u8',
1562
+ },
1563
+ {
1564
+ name: 'slotsForStakeDelta',
1565
+ docs: [
1566
+ 'set by admin, how much slots before the end of the epoch, stake-delta can start',
1567
+ ],
1568
+ type: 'u64',
1569
+ },
1570
+ {
1571
+ name: 'lastStakeDeltaEpoch',
1572
+ docs: [
1573
+ 'Marks the start of stake-delta operations, meaning that if somebody starts a delayed-unstake ticket',
1574
+ 'after this var is set with epoch_num the ticket will have epoch_created = current_epoch+1',
1575
+ '(the user must wait one more epoch, because their unstake-delta will be execute in this epoch)',
1576
+ ],
1577
+ type: 'u64',
1578
+ },
1579
+ {
1580
+ name: 'minStake',
1581
+ type: 'u64',
1582
+ },
1583
+ {
1584
+ name: 'extraStakeDeltaRuns',
1585
+ docs: [
1586
+ 'can be set by validator-manager-auth to allow a second run of stake-delta to stake late stakers in the last minute of the epoch',
1587
+ "so we maximize user's rewards",
1588
+ ],
1589
+ type: 'u32',
1590
+ },
1591
+ ],
1592
+ },
1593
+ },
1594
+ {
1595
+ name: 'ValidatorRecord',
1596
+ type: {
1597
+ kind: 'struct',
1598
+ fields: [
1599
+ {
1600
+ name: 'validatorAccount',
1601
+ docs: ['Validator vote pubkey'],
1602
+ type: 'publicKey',
1603
+ },
1604
+ {
1605
+ name: 'activeBalance',
1606
+ docs: ['Validator total balance in lamports'],
1607
+ type: 'u64',
1608
+ },
1609
+ {
1610
+ name: 'score',
1611
+ type: 'u32',
1612
+ },
1613
+ {
1614
+ name: 'lastStakeDeltaEpoch',
1615
+ type: 'u64',
1616
+ },
1617
+ {
1618
+ name: 'duplicationFlagBumpSeed',
1619
+ type: 'u8',
1620
+ },
1621
+ ],
1622
+ },
1623
+ },
1624
+ {
1625
+ name: 'ValidatorSystem',
1626
+ type: {
1627
+ kind: 'struct',
1628
+ fields: [
1629
+ {
1630
+ name: 'validatorList',
1631
+ type: {
1632
+ defined: 'List',
1633
+ },
1634
+ },
1635
+ {
1636
+ name: 'managerAuthority',
1637
+ type: 'publicKey',
1638
+ },
1639
+ {
1640
+ name: 'totalValidatorScore',
1641
+ type: 'u32',
1642
+ },
1643
+ {
1644
+ name: 'totalActiveBalance',
1645
+ docs: ['sum of all active lamports staked'],
1646
+ type: 'u64',
1647
+ },
1648
+ {
1649
+ name: 'autoAddValidatorEnabled',
1650
+ docs: [
1651
+ 'allow & auto-add validator when a user deposits a stake-account of a non-listed validator',
1652
+ ],
1653
+ type: 'u8',
1654
+ },
1655
+ ],
1656
+ },
1657
+ },
1658
+ {
1659
+ name: 'Fee',
1660
+ type: {
1661
+ kind: 'struct',
1662
+ fields: [
1663
+ {
1664
+ name: 'basisPoints',
1665
+ type: 'u32',
1666
+ },
1667
+ ],
1668
+ },
1669
+ },
1670
+ {
1671
+ name: 'InitializeData',
1672
+ type: {
1673
+ kind: 'struct',
1674
+ fields: [
1675
+ {
1676
+ name: 'adminAuthority',
1677
+ type: 'publicKey',
1678
+ },
1679
+ {
1680
+ name: 'validatorManagerAuthority',
1681
+ type: 'publicKey',
1682
+ },
1683
+ {
1684
+ name: 'minStake',
1685
+ type: 'u64',
1686
+ },
1687
+ {
1688
+ name: 'rewardFee',
1689
+ type: {
1690
+ defined: 'Fee',
1691
+ },
1692
+ },
1693
+ {
1694
+ name: 'liqPool',
1695
+ type: {
1696
+ defined: 'LiqPoolInitializeData',
1697
+ },
1698
+ },
1699
+ {
1700
+ name: 'additionalStakeRecordSpace',
1701
+ type: 'u32',
1702
+ },
1703
+ {
1704
+ name: 'additionalValidatorRecordSpace',
1705
+ type: 'u32',
1706
+ },
1707
+ {
1708
+ name: 'slotsForStakeDelta',
1709
+ type: 'u64',
1710
+ },
1711
+ ],
1712
+ },
1713
+ },
1714
+ {
1715
+ name: 'LiqPoolInitializeData',
1716
+ type: {
1717
+ kind: 'struct',
1718
+ fields: [
1719
+ {
1720
+ name: 'lpLiquidityTarget',
1721
+ type: 'u64',
1722
+ },
1723
+ {
1724
+ name: 'lpMaxFee',
1725
+ type: {
1726
+ defined: 'Fee',
1727
+ },
1728
+ },
1729
+ {
1730
+ name: 'lpMinFee',
1731
+ type: {
1732
+ defined: 'Fee',
1733
+ },
1734
+ },
1735
+ {
1736
+ name: 'lpTreasuryCut',
1737
+ type: {
1738
+ defined: 'Fee',
1739
+ },
1740
+ },
1741
+ ],
1742
+ },
1743
+ },
1744
+ {
1745
+ name: 'ChangeAuthorityData',
1746
+ type: {
1747
+ kind: 'struct',
1748
+ fields: [
1749
+ {
1750
+ name: 'admin',
1751
+ type: {
1752
+ option: 'publicKey',
1753
+ },
1754
+ },
1755
+ {
1756
+ name: 'validatorManager',
1757
+ type: {
1758
+ option: 'publicKey',
1759
+ },
1760
+ },
1761
+ {
1762
+ name: 'operationalSolAccount',
1763
+ type: {
1764
+ option: 'publicKey',
1765
+ },
1766
+ },
1767
+ {
1768
+ name: 'treasuryMsolAccount',
1769
+ type: {
1770
+ option: 'publicKey',
1771
+ },
1772
+ },
1773
+ ],
1774
+ },
1775
+ },
1776
+ {
1777
+ name: 'ConfigLpParams',
1778
+ type: {
1779
+ kind: 'struct',
1780
+ fields: [
1781
+ {
1782
+ name: 'minFee',
1783
+ type: {
1784
+ option: {
1785
+ defined: 'Fee',
1786
+ },
1787
+ },
1788
+ },
1789
+ {
1790
+ name: 'maxFee',
1791
+ type: {
1792
+ option: {
1793
+ defined: 'Fee',
1794
+ },
1795
+ },
1796
+ },
1797
+ {
1798
+ name: 'liquidityTarget',
1799
+ type: {
1800
+ option: 'u64',
1801
+ },
1802
+ },
1803
+ {
1804
+ name: 'treasuryCut',
1805
+ type: {
1806
+ option: {
1807
+ defined: 'Fee',
1808
+ },
1809
+ },
1810
+ },
1811
+ ],
1812
+ },
1813
+ },
1814
+ {
1815
+ name: 'ConfigMarinadeParams',
1816
+ type: {
1817
+ kind: 'struct',
1818
+ fields: [
1819
+ {
1820
+ name: 'rewardsFee',
1821
+ type: {
1822
+ option: {
1823
+ defined: 'Fee',
1824
+ },
1825
+ },
1826
+ },
1827
+ {
1828
+ name: 'slotsForStakeDelta',
1829
+ type: {
1830
+ option: 'u64',
1831
+ },
1832
+ },
1833
+ {
1834
+ name: 'minStake',
1835
+ type: {
1836
+ option: 'u64',
1837
+ },
1838
+ },
1839
+ {
1840
+ name: 'minDeposit',
1841
+ type: {
1842
+ option: 'u64',
1843
+ },
1844
+ },
1845
+ {
1846
+ name: 'minWithdraw',
1847
+ type: {
1848
+ option: 'u64',
1849
+ },
1850
+ },
1851
+ {
1852
+ name: 'stakingSolCap',
1853
+ type: {
1854
+ option: 'u64',
1855
+ },
1856
+ },
1857
+ {
1858
+ name: 'liquiditySolCap',
1859
+ type: {
1860
+ option: 'u64',
1861
+ },
1862
+ },
1863
+ {
1864
+ name: 'autoAddValidatorEnabled',
1865
+ type: {
1866
+ option: 'bool',
1867
+ },
1868
+ },
1869
+ ],
1870
+ },
1871
+ },
1872
+ {
1873
+ name: 'CommonError',
1874
+ type: {
1875
+ kind: 'enum',
1876
+ variants: [
1877
+ {
1878
+ name: 'WrongReserveOwner',
1879
+ },
1880
+ {
1881
+ name: 'NonEmptyReserveData',
1882
+ },
1883
+ {
1884
+ name: 'InvalidInitialReserveLamports',
1885
+ },
1886
+ {
1887
+ name: 'ZeroValidatorChunkSize',
1888
+ },
1889
+ {
1890
+ name: 'TooBigValidatorChunkSize',
1891
+ },
1892
+ {
1893
+ name: 'ZeroCreditChunkSize',
1894
+ },
1895
+ {
1896
+ name: 'TooBigCreditChunkSize',
1897
+ },
1898
+ {
1899
+ name: 'TooLowCreditFee',
1900
+ },
1901
+ {
1902
+ name: 'InvalidMintAuthority',
1903
+ },
1904
+ {
1905
+ name: 'MintHasInitialSupply',
1906
+ },
1907
+ {
1908
+ name: 'InvalidOwnerFeeState',
1909
+ },
1910
+ {
1911
+ name: 'InvalidProgramId',
1912
+ },
1913
+ {
1914
+ name: 'UnexpectedAccount',
1915
+ },
1916
+ {
1917
+ name: 'CalculationFailure',
1918
+ },
1919
+ {
1920
+ name: 'AccountWithLockup',
1921
+ },
1922
+ {
1923
+ name: 'NumberTooLow',
1924
+ },
1925
+ {
1926
+ name: 'NumberTooHigh',
1927
+ },
1928
+ {
1929
+ name: 'FeeTooHigh',
1930
+ },
1931
+ {
1932
+ name: 'FeesWrongWayRound',
1933
+ },
1934
+ {
1935
+ name: 'LiquidityTargetTooLow',
1936
+ },
1937
+ {
1938
+ name: 'TicketNotDue',
1939
+ },
1940
+ {
1941
+ name: 'TicketNotReady',
1942
+ },
1943
+ {
1944
+ name: 'WrongBeneficiary',
1945
+ },
1946
+ {
1947
+ name: 'StakeAccountNotUpdatedYet',
1948
+ },
1949
+ {
1950
+ name: 'StakeNotDelegated',
1951
+ },
1952
+ {
1953
+ name: 'StakeAccountIsEmergencyUnstaking',
1954
+ },
1955
+ {
1956
+ name: 'InsufficientLiquidity',
1957
+ },
1958
+ {
1959
+ name: 'InvalidValidator',
1960
+ },
1961
+ ],
1962
+ },
1963
+ },
1964
+ ],
1965
+ };