@exponent-labs/meteora-idl 0.0.3

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.
@@ -0,0 +1,3744 @@
1
+ export type Amm = {
2
+ version: "0.5.2"
3
+ name: "amm"
4
+ docs: ["Program for AMM"]
5
+ instructions: [
6
+ {
7
+ name: "initializePermissionedPool"
8
+ docs: ["Initialize a new permissioned pool."]
9
+ accounts: [
10
+ {
11
+ name: "pool"
12
+ isMut: true
13
+ isSigner: true
14
+ docs: ["Pool account (arbitrary address)"]
15
+ },
16
+ {
17
+ name: "lpMint"
18
+ isMut: true
19
+ isSigner: false
20
+ docs: ["LP token mint of the pool"]
21
+ },
22
+ {
23
+ name: "tokenAMint"
24
+ isMut: false
25
+ isSigner: false
26
+ docs: ["Token A mint of the pool. Eg: USDT"]
27
+ },
28
+ {
29
+ name: "tokenBMint"
30
+ isMut: false
31
+ isSigner: false
32
+ docs: ["Token B mint of the pool. Eg: USDC"]
33
+ },
34
+ {
35
+ name: "aVault"
36
+ isMut: true
37
+ isSigner: false
38
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
39
+ },
40
+ {
41
+ name: "bVault"
42
+ isMut: true
43
+ isSigner: false
44
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
45
+ },
46
+ {
47
+ name: "aVaultLpMint"
48
+ isMut: true
49
+ isSigner: false
50
+ docs: ["LP token mint of vault A"]
51
+ },
52
+ {
53
+ name: "bVaultLpMint"
54
+ isMut: true
55
+ isSigner: false
56
+ docs: ["LP token mint of vault B"]
57
+ },
58
+ {
59
+ name: "aVaultLp"
60
+ isMut: true
61
+ isSigner: false
62
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
63
+ },
64
+ {
65
+ name: "bVaultLp"
66
+ isMut: true
67
+ isSigner: false
68
+ docs: ["LP token account of vault B. Used to receive/burn vault LP upon deposit/withdraw from the vault."]
69
+ },
70
+ {
71
+ name: "adminTokenA"
72
+ isMut: true
73
+ isSigner: false
74
+ docs: ["Admin token account for pool token A mint. Used to bootstrap the pool with initial liquidity."]
75
+ },
76
+ {
77
+ name: "adminTokenB"
78
+ isMut: true
79
+ isSigner: false
80
+ docs: ["Admin token account for pool token B mint. Used to bootstrap the pool with initial liquidity."]
81
+ },
82
+ {
83
+ name: "adminPoolLp"
84
+ isMut: true
85
+ isSigner: false
86
+ docs: [
87
+ "Admin pool LP token account. Used to receive LP during first deposit (initialize pool)",
88
+ "Admin pool LP token account. Used to receive LP during first deposit (initialize pool)",
89
+ ]
90
+ },
91
+ {
92
+ name: "protocolTokenAFee"
93
+ isMut: true
94
+ isSigner: false
95
+ docs: ["Protocol fee token account for token A. Used to receive trading fee."]
96
+ },
97
+ {
98
+ name: "protocolTokenBFee"
99
+ isMut: true
100
+ isSigner: false
101
+ docs: ["Protocol fee token account for token B. Used to receive trading fee."]
102
+ },
103
+ {
104
+ name: "admin"
105
+ isMut: true
106
+ isSigner: true
107
+ docs: [
108
+ "Admin account. This account will be the admin of the pool, and the payer for PDA during initialize pool.",
109
+ ]
110
+ },
111
+ {
112
+ name: "feeOwner"
113
+ isMut: false
114
+ isSigner: false
115
+ },
116
+ {
117
+ name: "rent"
118
+ isMut: false
119
+ isSigner: false
120
+ docs: ["Rent account."]
121
+ },
122
+ {
123
+ name: "mintMetadata"
124
+ isMut: true
125
+ isSigner: false
126
+ },
127
+ {
128
+ name: "metadataProgram"
129
+ isMut: false
130
+ isSigner: false
131
+ },
132
+ {
133
+ name: "vaultProgram"
134
+ isMut: false
135
+ isSigner: false
136
+ docs: ["Vault program. The pool will deposit/withdraw liquidity from the vault."]
137
+ },
138
+ {
139
+ name: "tokenProgram"
140
+ isMut: false
141
+ isSigner: false
142
+ docs: ["Token program."]
143
+ },
144
+ {
145
+ name: "associatedTokenProgram"
146
+ isMut: false
147
+ isSigner: false
148
+ docs: ["Associated token program."]
149
+ },
150
+ {
151
+ name: "systemProgram"
152
+ isMut: false
153
+ isSigner: false
154
+ docs: ["System program."]
155
+ },
156
+ ]
157
+ args: [
158
+ {
159
+ name: "curveType"
160
+ type: {
161
+ defined: "CurveType"
162
+ }
163
+ },
164
+ ]
165
+ },
166
+ {
167
+ name: "initializePermissionlessPool"
168
+ docs: ["Initialize a new permissionless pool."]
169
+ accounts: [
170
+ {
171
+ name: "pool"
172
+ isMut: true
173
+ isSigner: false
174
+ docs: ["Pool account (PDA address)"]
175
+ },
176
+ {
177
+ name: "lpMint"
178
+ isMut: true
179
+ isSigner: false
180
+ docs: ["LP token mint of the pool"]
181
+ },
182
+ {
183
+ name: "tokenAMint"
184
+ isMut: false
185
+ isSigner: false
186
+ docs: ["Token A mint of the pool. Eg: USDT"]
187
+ },
188
+ {
189
+ name: "tokenBMint"
190
+ isMut: false
191
+ isSigner: false
192
+ docs: ["Token B mint of the pool. Eg: USDC"]
193
+ },
194
+ {
195
+ name: "aVault"
196
+ isMut: true
197
+ isSigner: false
198
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
199
+ },
200
+ {
201
+ name: "bVault"
202
+ isMut: true
203
+ isSigner: false
204
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
205
+ },
206
+ {
207
+ name: "aTokenVault"
208
+ isMut: true
209
+ isSigner: false
210
+ docs: ["Token vault account of vault A"]
211
+ },
212
+ {
213
+ name: "bTokenVault"
214
+ isMut: true
215
+ isSigner: false
216
+ docs: ["Token vault account of vault B"]
217
+ },
218
+ {
219
+ name: "aVaultLpMint"
220
+ isMut: true
221
+ isSigner: false
222
+ docs: ["LP token mint of vault A"]
223
+ },
224
+ {
225
+ name: "bVaultLpMint"
226
+ isMut: true
227
+ isSigner: false
228
+ docs: ["LP token mint of vault B"]
229
+ },
230
+ {
231
+ name: "aVaultLp"
232
+ isMut: true
233
+ isSigner: false
234
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
235
+ },
236
+ {
237
+ name: "bVaultLp"
238
+ isMut: true
239
+ isSigner: false
240
+ docs: ["LP token account of vault B. Used to receive/burn vault LP upon deposit/withdraw from the vault."]
241
+ },
242
+ {
243
+ name: "payerTokenA"
244
+ isMut: true
245
+ isSigner: false
246
+ docs: ["Payer token account for pool token A mint. Used to bootstrap the pool with initial liquidity."]
247
+ },
248
+ {
249
+ name: "payerTokenB"
250
+ isMut: true
251
+ isSigner: false
252
+ docs: ["Admin token account for pool token B mint. Used to bootstrap the pool with initial liquidity."]
253
+ },
254
+ {
255
+ name: "payerPoolLp"
256
+ isMut: true
257
+ isSigner: false
258
+ },
259
+ {
260
+ name: "protocolTokenAFee"
261
+ isMut: true
262
+ isSigner: false
263
+ docs: ["Protocol fee token account for token A. Used to receive trading fee."]
264
+ },
265
+ {
266
+ name: "protocolTokenBFee"
267
+ isMut: true
268
+ isSigner: false
269
+ docs: ["Protocol fee token account for token B. Used to receive trading fee."]
270
+ },
271
+ {
272
+ name: "payer"
273
+ isMut: true
274
+ isSigner: true
275
+ docs: [
276
+ "Admin account. This account will be the admin of the pool, and the payer for PDA during initialize pool.",
277
+ ]
278
+ },
279
+ {
280
+ name: "feeOwner"
281
+ isMut: false
282
+ isSigner: false
283
+ },
284
+ {
285
+ name: "rent"
286
+ isMut: false
287
+ isSigner: false
288
+ docs: ["Rent account."]
289
+ },
290
+ {
291
+ name: "mintMetadata"
292
+ isMut: true
293
+ isSigner: false
294
+ },
295
+ {
296
+ name: "metadataProgram"
297
+ isMut: false
298
+ isSigner: false
299
+ },
300
+ {
301
+ name: "vaultProgram"
302
+ isMut: false
303
+ isSigner: false
304
+ docs: ["Vault program. The pool will deposit/withdraw liquidity from the vault."]
305
+ },
306
+ {
307
+ name: "tokenProgram"
308
+ isMut: false
309
+ isSigner: false
310
+ docs: ["Token program."]
311
+ },
312
+ {
313
+ name: "associatedTokenProgram"
314
+ isMut: false
315
+ isSigner: false
316
+ docs: ["Associated token program."]
317
+ },
318
+ {
319
+ name: "systemProgram"
320
+ isMut: false
321
+ isSigner: false
322
+ docs: ["System program."]
323
+ },
324
+ ]
325
+ args: [
326
+ {
327
+ name: "curveType"
328
+ type: {
329
+ defined: "CurveType"
330
+ }
331
+ },
332
+ {
333
+ name: "tokenAAmount"
334
+ type: "u64"
335
+ },
336
+ {
337
+ name: "tokenBAmount"
338
+ type: "u64"
339
+ },
340
+ ]
341
+ },
342
+ {
343
+ name: "initializePermissionlessPoolWithFeeTier"
344
+ docs: ["Initialize a new permissionless pool with customized fee tier"]
345
+ accounts: [
346
+ {
347
+ name: "pool"
348
+ isMut: true
349
+ isSigner: false
350
+ docs: ["Pool account (PDA address)"]
351
+ },
352
+ {
353
+ name: "lpMint"
354
+ isMut: true
355
+ isSigner: false
356
+ docs: ["LP token mint of the pool"]
357
+ },
358
+ {
359
+ name: "tokenAMint"
360
+ isMut: false
361
+ isSigner: false
362
+ docs: ["Token A mint of the pool. Eg: USDT"]
363
+ },
364
+ {
365
+ name: "tokenBMint"
366
+ isMut: false
367
+ isSigner: false
368
+ docs: ["Token B mint of the pool. Eg: USDC"]
369
+ },
370
+ {
371
+ name: "aVault"
372
+ isMut: true
373
+ isSigner: false
374
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
375
+ },
376
+ {
377
+ name: "bVault"
378
+ isMut: true
379
+ isSigner: false
380
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
381
+ },
382
+ {
383
+ name: "aTokenVault"
384
+ isMut: true
385
+ isSigner: false
386
+ docs: ["Token vault account of vault A"]
387
+ },
388
+ {
389
+ name: "bTokenVault"
390
+ isMut: true
391
+ isSigner: false
392
+ docs: ["Token vault account of vault B"]
393
+ },
394
+ {
395
+ name: "aVaultLpMint"
396
+ isMut: true
397
+ isSigner: false
398
+ docs: ["LP token mint of vault A"]
399
+ },
400
+ {
401
+ name: "bVaultLpMint"
402
+ isMut: true
403
+ isSigner: false
404
+ docs: ["LP token mint of vault B"]
405
+ },
406
+ {
407
+ name: "aVaultLp"
408
+ isMut: true
409
+ isSigner: false
410
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
411
+ },
412
+ {
413
+ name: "bVaultLp"
414
+ isMut: true
415
+ isSigner: false
416
+ docs: ["LP token account of vault B. Used to receive/burn vault LP upon deposit/withdraw from the vault."]
417
+ },
418
+ {
419
+ name: "payerTokenA"
420
+ isMut: true
421
+ isSigner: false
422
+ docs: ["Payer token account for pool token A mint. Used to bootstrap the pool with initial liquidity."]
423
+ },
424
+ {
425
+ name: "payerTokenB"
426
+ isMut: true
427
+ isSigner: false
428
+ docs: ["Admin token account for pool token B mint. Used to bootstrap the pool with initial liquidity."]
429
+ },
430
+ {
431
+ name: "payerPoolLp"
432
+ isMut: true
433
+ isSigner: false
434
+ },
435
+ {
436
+ name: "protocolTokenAFee"
437
+ isMut: true
438
+ isSigner: false
439
+ docs: ["Protocol fee token account for token A. Used to receive trading fee."]
440
+ },
441
+ {
442
+ name: "protocolTokenBFee"
443
+ isMut: true
444
+ isSigner: false
445
+ docs: ["Protocol fee token account for token B. Used to receive trading fee."]
446
+ },
447
+ {
448
+ name: "payer"
449
+ isMut: true
450
+ isSigner: true
451
+ docs: [
452
+ "Admin account. This account will be the admin of the pool, and the payer for PDA during initialize pool.",
453
+ ]
454
+ },
455
+ {
456
+ name: "feeOwner"
457
+ isMut: false
458
+ isSigner: false
459
+ },
460
+ {
461
+ name: "rent"
462
+ isMut: false
463
+ isSigner: false
464
+ docs: ["Rent account."]
465
+ },
466
+ {
467
+ name: "mintMetadata"
468
+ isMut: true
469
+ isSigner: false
470
+ },
471
+ {
472
+ name: "metadataProgram"
473
+ isMut: false
474
+ isSigner: false
475
+ },
476
+ {
477
+ name: "vaultProgram"
478
+ isMut: false
479
+ isSigner: false
480
+ docs: ["Vault program. The pool will deposit/withdraw liquidity from the vault."]
481
+ },
482
+ {
483
+ name: "tokenProgram"
484
+ isMut: false
485
+ isSigner: false
486
+ docs: ["Token program."]
487
+ },
488
+ {
489
+ name: "associatedTokenProgram"
490
+ isMut: false
491
+ isSigner: false
492
+ docs: ["Associated token program."]
493
+ },
494
+ {
495
+ name: "systemProgram"
496
+ isMut: false
497
+ isSigner: false
498
+ docs: ["System program."]
499
+ },
500
+ ]
501
+ args: [
502
+ {
503
+ name: "curveType"
504
+ type: {
505
+ defined: "CurveType"
506
+ }
507
+ },
508
+ {
509
+ name: "tradeFeeBps"
510
+ type: "u64"
511
+ },
512
+ {
513
+ name: "tokenAAmount"
514
+ type: "u64"
515
+ },
516
+ {
517
+ name: "tokenBAmount"
518
+ type: "u64"
519
+ },
520
+ ]
521
+ },
522
+ {
523
+ name: "enableOrDisablePool"
524
+ docs: ["Enable or disable a pool. A disabled pool allow only remove balanced liquidity operation."]
525
+ accounts: [
526
+ {
527
+ name: "pool"
528
+ isMut: true
529
+ isSigner: false
530
+ docs: ["Pool account (PDA)"]
531
+ },
532
+ {
533
+ name: "admin"
534
+ isMut: false
535
+ isSigner: true
536
+ docs: ["Admin account. Must be owner of the pool."]
537
+ },
538
+ ]
539
+ args: [
540
+ {
541
+ name: "enable"
542
+ type: "bool"
543
+ },
544
+ ]
545
+ },
546
+ {
547
+ name: "swap"
548
+ docs: [
549
+ "Swap token A to B, or vice versa. An amount of trading fee will be charged for liquidity provider, and the admin of the pool.",
550
+ ]
551
+ accounts: [
552
+ {
553
+ name: "pool"
554
+ isMut: true
555
+ isSigner: false
556
+ docs: ["Pool account (PDA)"]
557
+ },
558
+ {
559
+ name: "userSourceToken"
560
+ isMut: true
561
+ isSigner: false
562
+ docs: [
563
+ "User token account. Token from this account will be transfer into the vault by the pool in exchange for another token of the pool.",
564
+ ]
565
+ },
566
+ {
567
+ name: "userDestinationToken"
568
+ isMut: true
569
+ isSigner: false
570
+ docs: ["User token account. The exchanged token will be transfer into this account from the pool."]
571
+ },
572
+ {
573
+ name: "aVault"
574
+ isMut: true
575
+ isSigner: false
576
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
577
+ },
578
+ {
579
+ name: "bVault"
580
+ isMut: true
581
+ isSigner: false
582
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
583
+ },
584
+ {
585
+ name: "aTokenVault"
586
+ isMut: true
587
+ isSigner: false
588
+ docs: ["Token vault account of vault A"]
589
+ },
590
+ {
591
+ name: "bTokenVault"
592
+ isMut: true
593
+ isSigner: false
594
+ docs: ["Token vault account of vault B"]
595
+ },
596
+ {
597
+ name: "aVaultLpMint"
598
+ isMut: true
599
+ isSigner: false
600
+ docs: ["Lp token mint of vault a"]
601
+ },
602
+ {
603
+ name: "bVaultLpMint"
604
+ isMut: true
605
+ isSigner: false
606
+ docs: ["Lp token mint of vault b"]
607
+ },
608
+ {
609
+ name: "aVaultLp"
610
+ isMut: true
611
+ isSigner: false
612
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
613
+ },
614
+ {
615
+ name: "bVaultLp"
616
+ isMut: true
617
+ isSigner: false
618
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
619
+ },
620
+ {
621
+ name: "protocolTokenFee"
622
+ isMut: true
623
+ isSigner: false
624
+ docs: [
625
+ "Protocol fee token account. Used to receive trading fee. It's mint field must matched with user_source_token mint field.",
626
+ ]
627
+ },
628
+ {
629
+ name: "user"
630
+ isMut: false
631
+ isSigner: true
632
+ docs: ["User account. Must be owner of user_source_token."]
633
+ },
634
+ {
635
+ name: "vaultProgram"
636
+ isMut: false
637
+ isSigner: false
638
+ docs: ["Vault program. the pool will deposit/withdraw liquidity from the vault."]
639
+ },
640
+ {
641
+ name: "tokenProgram"
642
+ isMut: false
643
+ isSigner: false
644
+ docs: ["Token program."]
645
+ },
646
+ ]
647
+ args: [
648
+ {
649
+ name: "inAmount"
650
+ type: "u64"
651
+ },
652
+ {
653
+ name: "minimumOutAmount"
654
+ type: "u64"
655
+ },
656
+ ]
657
+ },
658
+ {
659
+ name: "removeLiquiditySingleSide"
660
+ docs: ["Withdraw only single token from the pool. Only supported by pool with stable swap curve."]
661
+ accounts: [
662
+ {
663
+ name: "pool"
664
+ isMut: true
665
+ isSigner: false
666
+ docs: ["Pool account (PDA)"]
667
+ },
668
+ {
669
+ name: "lpMint"
670
+ isMut: true
671
+ isSigner: false
672
+ docs: ["LP token mint of the pool"]
673
+ },
674
+ {
675
+ name: "userPoolLp"
676
+ isMut: true
677
+ isSigner: false
678
+ docs: ["User pool lp token account. LP will be burned from this account upon success liquidity removal."]
679
+ },
680
+ {
681
+ name: "aVaultLp"
682
+ isMut: true
683
+ isSigner: false
684
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
685
+ },
686
+ {
687
+ name: "bVaultLp"
688
+ isMut: true
689
+ isSigner: false
690
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
691
+ },
692
+ {
693
+ name: "aVault"
694
+ isMut: true
695
+ isSigner: false
696
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
697
+ },
698
+ {
699
+ name: "bVault"
700
+ isMut: true
701
+ isSigner: false
702
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
703
+ },
704
+ {
705
+ name: "aVaultLpMint"
706
+ isMut: true
707
+ isSigner: false
708
+ docs: ["LP token mint of vault A"]
709
+ },
710
+ {
711
+ name: "bVaultLpMint"
712
+ isMut: true
713
+ isSigner: false
714
+ docs: ["LP token mint of vault B"]
715
+ },
716
+ {
717
+ name: "aTokenVault"
718
+ isMut: true
719
+ isSigner: false
720
+ docs: ["Token vault account of vault A"]
721
+ },
722
+ {
723
+ name: "bTokenVault"
724
+ isMut: true
725
+ isSigner: false
726
+ docs: ["Token vault account of vault B"]
727
+ },
728
+ {
729
+ name: "userDestinationToken"
730
+ isMut: true
731
+ isSigner: false
732
+ docs: ["User token account to receive token upon success liquidity removal."]
733
+ },
734
+ {
735
+ name: "user"
736
+ isMut: false
737
+ isSigner: true
738
+ docs: ["User account. Must be owner of the user_pool_lp account."]
739
+ },
740
+ {
741
+ name: "vaultProgram"
742
+ isMut: false
743
+ isSigner: false
744
+ docs: ["Vault program. The pool will deposit/withdraw liquidity from the vault."]
745
+ },
746
+ {
747
+ name: "tokenProgram"
748
+ isMut: false
749
+ isSigner: false
750
+ docs: ["Token program."]
751
+ },
752
+ ]
753
+ args: [
754
+ {
755
+ name: "poolTokenAmount"
756
+ type: "u64"
757
+ },
758
+ {
759
+ name: "minimumOutAmount"
760
+ type: "u64"
761
+ },
762
+ ]
763
+ },
764
+ {
765
+ name: "addImbalanceLiquidity"
766
+ docs: ["Deposit tokens to the pool in an imbalance ratio. Only supported by pool with stable swap curve."]
767
+ accounts: [
768
+ {
769
+ name: "pool"
770
+ isMut: true
771
+ isSigner: false
772
+ docs: ["Pool account (PDA)"]
773
+ },
774
+ {
775
+ name: "lpMint"
776
+ isMut: true
777
+ isSigner: false
778
+ docs: ["LP token mint of the pool"]
779
+ },
780
+ {
781
+ name: "userPoolLp"
782
+ isMut: true
783
+ isSigner: false
784
+ docs: ["user pool lp token account. lp will be burned from this account upon success liquidity removal."]
785
+ },
786
+ {
787
+ name: "aVaultLp"
788
+ isMut: true
789
+ isSigner: false
790
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
791
+ },
792
+ {
793
+ name: "bVaultLp"
794
+ isMut: true
795
+ isSigner: false
796
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
797
+ },
798
+ {
799
+ name: "aVault"
800
+ isMut: true
801
+ isSigner: false
802
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
803
+ },
804
+ {
805
+ name: "bVault"
806
+ isMut: true
807
+ isSigner: false
808
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
809
+ },
810
+ {
811
+ name: "aVaultLpMint"
812
+ isMut: true
813
+ isSigner: false
814
+ docs: ["LP token mint of vault a"]
815
+ },
816
+ {
817
+ name: "bVaultLpMint"
818
+ isMut: true
819
+ isSigner: false
820
+ docs: ["LP token mint of vault b"]
821
+ },
822
+ {
823
+ name: "aTokenVault"
824
+ isMut: true
825
+ isSigner: false
826
+ docs: ["Token vault account of vault A"]
827
+ },
828
+ {
829
+ name: "bTokenVault"
830
+ isMut: true
831
+ isSigner: false
832
+ docs: ["Token vault account of vault B"]
833
+ },
834
+ {
835
+ name: "userAToken"
836
+ isMut: true
837
+ isSigner: false
838
+ docs: [
839
+ "User token A account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
840
+ ]
841
+ },
842
+ {
843
+ name: "userBToken"
844
+ isMut: true
845
+ isSigner: false
846
+ docs: [
847
+ "User token B account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
848
+ ]
849
+ },
850
+ {
851
+ name: "user"
852
+ isMut: false
853
+ isSigner: true
854
+ docs: ["User account. Must be owner of user_a_token, and user_b_token."]
855
+ },
856
+ {
857
+ name: "vaultProgram"
858
+ isMut: false
859
+ isSigner: false
860
+ docs: ["Vault program. the pool will deposit/withdraw liquidity from the vault."]
861
+ },
862
+ {
863
+ name: "tokenProgram"
864
+ isMut: false
865
+ isSigner: false
866
+ docs: ["Token program."]
867
+ },
868
+ ]
869
+ args: [
870
+ {
871
+ name: "minimumPoolTokenAmount"
872
+ type: "u64"
873
+ },
874
+ {
875
+ name: "tokenAAmount"
876
+ type: "u64"
877
+ },
878
+ {
879
+ name: "tokenBAmount"
880
+ type: "u64"
881
+ },
882
+ ]
883
+ },
884
+ {
885
+ name: "removeBalanceLiquidity"
886
+ docs: [
887
+ "Withdraw tokens from the pool in a balanced ratio. User will still able to withdraw from pool even the pool is disabled. This allow user to exit their liquidity when there's some unforeseen event happen.",
888
+ ]
889
+ accounts: [
890
+ {
891
+ name: "pool"
892
+ isMut: true
893
+ isSigner: false
894
+ docs: ["Pool account (PDA)"]
895
+ },
896
+ {
897
+ name: "lpMint"
898
+ isMut: true
899
+ isSigner: false
900
+ docs: ["LP token mint of the pool"]
901
+ },
902
+ {
903
+ name: "userPoolLp"
904
+ isMut: true
905
+ isSigner: false
906
+ docs: ["user pool lp token account. lp will be burned from this account upon success liquidity removal."]
907
+ },
908
+ {
909
+ name: "aVaultLp"
910
+ isMut: true
911
+ isSigner: false
912
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
913
+ },
914
+ {
915
+ name: "bVaultLp"
916
+ isMut: true
917
+ isSigner: false
918
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
919
+ },
920
+ {
921
+ name: "aVault"
922
+ isMut: true
923
+ isSigner: false
924
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
925
+ },
926
+ {
927
+ name: "bVault"
928
+ isMut: true
929
+ isSigner: false
930
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
931
+ },
932
+ {
933
+ name: "aVaultLpMint"
934
+ isMut: true
935
+ isSigner: false
936
+ docs: ["LP token mint of vault a"]
937
+ },
938
+ {
939
+ name: "bVaultLpMint"
940
+ isMut: true
941
+ isSigner: false
942
+ docs: ["LP token mint of vault b"]
943
+ },
944
+ {
945
+ name: "aTokenVault"
946
+ isMut: true
947
+ isSigner: false
948
+ docs: ["Token vault account of vault A"]
949
+ },
950
+ {
951
+ name: "bTokenVault"
952
+ isMut: true
953
+ isSigner: false
954
+ docs: ["Token vault account of vault B"]
955
+ },
956
+ {
957
+ name: "userAToken"
958
+ isMut: true
959
+ isSigner: false
960
+ docs: [
961
+ "User token A account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
962
+ ]
963
+ },
964
+ {
965
+ name: "userBToken"
966
+ isMut: true
967
+ isSigner: false
968
+ docs: [
969
+ "User token B account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
970
+ ]
971
+ },
972
+ {
973
+ name: "user"
974
+ isMut: false
975
+ isSigner: true
976
+ docs: ["User account. Must be owner of user_a_token, and user_b_token."]
977
+ },
978
+ {
979
+ name: "vaultProgram"
980
+ isMut: false
981
+ isSigner: false
982
+ docs: ["Vault program. the pool will deposit/withdraw liquidity from the vault."]
983
+ },
984
+ {
985
+ name: "tokenProgram"
986
+ isMut: false
987
+ isSigner: false
988
+ docs: ["Token program."]
989
+ },
990
+ ]
991
+ args: [
992
+ {
993
+ name: "poolTokenAmount"
994
+ type: "u64"
995
+ },
996
+ {
997
+ name: "minimumATokenOut"
998
+ type: "u64"
999
+ },
1000
+ {
1001
+ name: "minimumBTokenOut"
1002
+ type: "u64"
1003
+ },
1004
+ ]
1005
+ },
1006
+ {
1007
+ name: "addBalanceLiquidity"
1008
+ docs: ["Deposit tokens to the pool in a balanced ratio."]
1009
+ accounts: [
1010
+ {
1011
+ name: "pool"
1012
+ isMut: true
1013
+ isSigner: false
1014
+ docs: ["Pool account (PDA)"]
1015
+ },
1016
+ {
1017
+ name: "lpMint"
1018
+ isMut: true
1019
+ isSigner: false
1020
+ docs: ["LP token mint of the pool"]
1021
+ },
1022
+ {
1023
+ name: "userPoolLp"
1024
+ isMut: true
1025
+ isSigner: false
1026
+ docs: ["user pool lp token account. lp will be burned from this account upon success liquidity removal."]
1027
+ },
1028
+ {
1029
+ name: "aVaultLp"
1030
+ isMut: true
1031
+ isSigner: false
1032
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1033
+ },
1034
+ {
1035
+ name: "bVaultLp"
1036
+ isMut: true
1037
+ isSigner: false
1038
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1039
+ },
1040
+ {
1041
+ name: "aVault"
1042
+ isMut: true
1043
+ isSigner: false
1044
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
1045
+ },
1046
+ {
1047
+ name: "bVault"
1048
+ isMut: true
1049
+ isSigner: false
1050
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
1051
+ },
1052
+ {
1053
+ name: "aVaultLpMint"
1054
+ isMut: true
1055
+ isSigner: false
1056
+ docs: ["LP token mint of vault a"]
1057
+ },
1058
+ {
1059
+ name: "bVaultLpMint"
1060
+ isMut: true
1061
+ isSigner: false
1062
+ docs: ["LP token mint of vault b"]
1063
+ },
1064
+ {
1065
+ name: "aTokenVault"
1066
+ isMut: true
1067
+ isSigner: false
1068
+ docs: ["Token vault account of vault A"]
1069
+ },
1070
+ {
1071
+ name: "bTokenVault"
1072
+ isMut: true
1073
+ isSigner: false
1074
+ docs: ["Token vault account of vault B"]
1075
+ },
1076
+ {
1077
+ name: "userAToken"
1078
+ isMut: true
1079
+ isSigner: false
1080
+ docs: [
1081
+ "User token A account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
1082
+ ]
1083
+ },
1084
+ {
1085
+ name: "userBToken"
1086
+ isMut: true
1087
+ isSigner: false
1088
+ docs: [
1089
+ "User token B account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
1090
+ ]
1091
+ },
1092
+ {
1093
+ name: "user"
1094
+ isMut: false
1095
+ isSigner: true
1096
+ docs: ["User account. Must be owner of user_a_token, and user_b_token."]
1097
+ },
1098
+ {
1099
+ name: "vaultProgram"
1100
+ isMut: false
1101
+ isSigner: false
1102
+ docs: ["Vault program. the pool will deposit/withdraw liquidity from the vault."]
1103
+ },
1104
+ {
1105
+ name: "tokenProgram"
1106
+ isMut: false
1107
+ isSigner: false
1108
+ docs: ["Token program."]
1109
+ },
1110
+ ]
1111
+ args: [
1112
+ {
1113
+ name: "poolTokenAmount"
1114
+ type: "u64"
1115
+ },
1116
+ {
1117
+ name: "maximumTokenAAmount"
1118
+ type: "u64"
1119
+ },
1120
+ {
1121
+ name: "maximumTokenBAmount"
1122
+ type: "u64"
1123
+ },
1124
+ ]
1125
+ },
1126
+ {
1127
+ name: "setPoolFees"
1128
+ docs: ["Update trading fee charged for liquidity provider, and admin."]
1129
+ accounts: [
1130
+ {
1131
+ name: "pool"
1132
+ isMut: true
1133
+ isSigner: false
1134
+ docs: ["Pool account (PDA)"]
1135
+ },
1136
+ {
1137
+ name: "feeOperator"
1138
+ isMut: false
1139
+ isSigner: true
1140
+ docs: ["Fee operator account"]
1141
+ },
1142
+ ]
1143
+ args: [
1144
+ {
1145
+ name: "fees"
1146
+ type: {
1147
+ defined: "PoolFees"
1148
+ }
1149
+ },
1150
+ {
1151
+ name: "newPartnerFeeNumerator"
1152
+ type: "u64"
1153
+ },
1154
+ ]
1155
+ },
1156
+ {
1157
+ name: "overrideCurveParam"
1158
+ docs: [
1159
+ "Update swap curve parameters. This function do not allow update of curve type. For example: stable swap curve to constant product curve. Only supported by pool with stable swap curve.",
1160
+ "Only amp is allowed to be override. The other attributes of stable swap curve will be ignored.",
1161
+ ]
1162
+ accounts: [
1163
+ {
1164
+ name: "pool"
1165
+ isMut: true
1166
+ isSigner: false
1167
+ docs: ["Pool account (PDA)"]
1168
+ },
1169
+ {
1170
+ name: "admin"
1171
+ isMut: false
1172
+ isSigner: true
1173
+ docs: ["Admin account."]
1174
+ },
1175
+ ]
1176
+ args: [
1177
+ {
1178
+ name: "curveType"
1179
+ type: {
1180
+ defined: "CurveType"
1181
+ }
1182
+ },
1183
+ ]
1184
+ },
1185
+ {
1186
+ name: "getPoolInfo"
1187
+ docs: ["Get the general information of the pool."]
1188
+ accounts: [
1189
+ {
1190
+ name: "pool"
1191
+ isMut: false
1192
+ isSigner: false
1193
+ docs: ["Pool account (PDA)"]
1194
+ },
1195
+ {
1196
+ name: "lpMint"
1197
+ isMut: false
1198
+ isSigner: false
1199
+ docs: ["LP token mint of the pool"]
1200
+ },
1201
+ {
1202
+ name: "aVaultLp"
1203
+ isMut: false
1204
+ isSigner: false
1205
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1206
+ },
1207
+ {
1208
+ name: "bVaultLp"
1209
+ isMut: false
1210
+ isSigner: false
1211
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1212
+ },
1213
+ {
1214
+ name: "aVault"
1215
+ isMut: false
1216
+ isSigner: false
1217
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
1218
+ },
1219
+ {
1220
+ name: "bVault"
1221
+ isMut: false
1222
+ isSigner: false
1223
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
1224
+ },
1225
+ {
1226
+ name: "aVaultLpMint"
1227
+ isMut: false
1228
+ isSigner: false
1229
+ docs: ["LP token mint of vault a"]
1230
+ },
1231
+ {
1232
+ name: "bVaultLpMint"
1233
+ isMut: false
1234
+ isSigner: false
1235
+ docs: ["LP token mint of vault b"]
1236
+ },
1237
+ ]
1238
+ args: []
1239
+ },
1240
+ {
1241
+ name: "bootstrapLiquidity"
1242
+ docs: ["Bootstrap the pool when liquidity is depleted."]
1243
+ accounts: [
1244
+ {
1245
+ name: "pool"
1246
+ isMut: true
1247
+ isSigner: false
1248
+ docs: ["Pool account (PDA)"]
1249
+ },
1250
+ {
1251
+ name: "lpMint"
1252
+ isMut: true
1253
+ isSigner: false
1254
+ docs: ["LP token mint of the pool"]
1255
+ },
1256
+ {
1257
+ name: "userPoolLp"
1258
+ isMut: true
1259
+ isSigner: false
1260
+ docs: ["user pool lp token account. lp will be burned from this account upon success liquidity removal."]
1261
+ },
1262
+ {
1263
+ name: "aVaultLp"
1264
+ isMut: true
1265
+ isSigner: false
1266
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1267
+ },
1268
+ {
1269
+ name: "bVaultLp"
1270
+ isMut: true
1271
+ isSigner: false
1272
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1273
+ },
1274
+ {
1275
+ name: "aVault"
1276
+ isMut: true
1277
+ isSigner: false
1278
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
1279
+ },
1280
+ {
1281
+ name: "bVault"
1282
+ isMut: true
1283
+ isSigner: false
1284
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
1285
+ },
1286
+ {
1287
+ name: "aVaultLpMint"
1288
+ isMut: true
1289
+ isSigner: false
1290
+ docs: ["LP token mint of vault a"]
1291
+ },
1292
+ {
1293
+ name: "bVaultLpMint"
1294
+ isMut: true
1295
+ isSigner: false
1296
+ docs: ["LP token mint of vault b"]
1297
+ },
1298
+ {
1299
+ name: "aTokenVault"
1300
+ isMut: true
1301
+ isSigner: false
1302
+ docs: ["Token vault account of vault A"]
1303
+ },
1304
+ {
1305
+ name: "bTokenVault"
1306
+ isMut: true
1307
+ isSigner: false
1308
+ docs: ["Token vault account of vault B"]
1309
+ },
1310
+ {
1311
+ name: "userAToken"
1312
+ isMut: true
1313
+ isSigner: false
1314
+ docs: [
1315
+ "User token A account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
1316
+ ]
1317
+ },
1318
+ {
1319
+ name: "userBToken"
1320
+ isMut: true
1321
+ isSigner: false
1322
+ docs: [
1323
+ "User token B account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
1324
+ ]
1325
+ },
1326
+ {
1327
+ name: "user"
1328
+ isMut: false
1329
+ isSigner: true
1330
+ docs: ["User account. Must be owner of user_a_token, and user_b_token."]
1331
+ },
1332
+ {
1333
+ name: "vaultProgram"
1334
+ isMut: false
1335
+ isSigner: false
1336
+ docs: ["Vault program. the pool will deposit/withdraw liquidity from the vault."]
1337
+ },
1338
+ {
1339
+ name: "tokenProgram"
1340
+ isMut: false
1341
+ isSigner: false
1342
+ docs: ["Token program."]
1343
+ },
1344
+ ]
1345
+ args: [
1346
+ {
1347
+ name: "tokenAAmount"
1348
+ type: "u64"
1349
+ },
1350
+ {
1351
+ name: "tokenBAmount"
1352
+ type: "u64"
1353
+ },
1354
+ ]
1355
+ },
1356
+ {
1357
+ name: "createMintMetadata"
1358
+ docs: ["Create mint metadata account for old pools"]
1359
+ accounts: [
1360
+ {
1361
+ name: "pool"
1362
+ isMut: false
1363
+ isSigner: false
1364
+ docs: ["Pool account"]
1365
+ },
1366
+ {
1367
+ name: "lpMint"
1368
+ isMut: false
1369
+ isSigner: false
1370
+ docs: ["LP mint account of the pool"]
1371
+ },
1372
+ {
1373
+ name: "aVaultLp"
1374
+ isMut: false
1375
+ isSigner: false
1376
+ docs: ["Vault A LP account of the pool"]
1377
+ },
1378
+ {
1379
+ name: "mintMetadata"
1380
+ isMut: true
1381
+ isSigner: false
1382
+ },
1383
+ {
1384
+ name: "metadataProgram"
1385
+ isMut: false
1386
+ isSigner: false
1387
+ },
1388
+ {
1389
+ name: "systemProgram"
1390
+ isMut: false
1391
+ isSigner: false
1392
+ docs: ["System program."]
1393
+ },
1394
+ {
1395
+ name: "payer"
1396
+ isMut: true
1397
+ isSigner: true
1398
+ docs: ["Payer"]
1399
+ },
1400
+ ]
1401
+ args: []
1402
+ },
1403
+ {
1404
+ name: "createLockEscrow"
1405
+ docs: ["Create lock account"]
1406
+ accounts: [
1407
+ {
1408
+ name: "pool"
1409
+ isMut: false
1410
+ isSigner: false
1411
+ docs: ["Pool account"]
1412
+ },
1413
+ {
1414
+ name: "lockEscrow"
1415
+ isMut: true
1416
+ isSigner: false
1417
+ docs: ["Lock account"]
1418
+ },
1419
+ {
1420
+ name: "owner"
1421
+ isMut: false
1422
+ isSigner: false
1423
+ },
1424
+ {
1425
+ name: "lpMint"
1426
+ isMut: false
1427
+ isSigner: false
1428
+ docs: ["LP token mint of the pool"]
1429
+ },
1430
+ {
1431
+ name: "payer"
1432
+ isMut: true
1433
+ isSigner: true
1434
+ docs: ["Payer account"]
1435
+ },
1436
+ {
1437
+ name: "systemProgram"
1438
+ isMut: false
1439
+ isSigner: false
1440
+ docs: ["System program."]
1441
+ },
1442
+ ]
1443
+ args: []
1444
+ },
1445
+ {
1446
+ name: "lock"
1447
+ docs: ["Lock Lp token"]
1448
+ accounts: [
1449
+ {
1450
+ name: "pool"
1451
+ isMut: true
1452
+ isSigner: false
1453
+ docs: ["Pool account"]
1454
+ },
1455
+ {
1456
+ name: "lpMint"
1457
+ isMut: false
1458
+ isSigner: false
1459
+ docs: ["LP token mint of the pool"]
1460
+ },
1461
+ {
1462
+ name: "lockEscrow"
1463
+ isMut: true
1464
+ isSigner: false
1465
+ docs: ["Lock account"]
1466
+ },
1467
+ {
1468
+ name: "owner"
1469
+ isMut: true
1470
+ isSigner: true
1471
+ docs: ["Can be anyone"]
1472
+ },
1473
+ {
1474
+ name: "sourceTokens"
1475
+ isMut: true
1476
+ isSigner: false
1477
+ docs: ["owner lp token account"]
1478
+ },
1479
+ {
1480
+ name: "escrowVault"
1481
+ isMut: true
1482
+ isSigner: false
1483
+ docs: ["Escrow vault"]
1484
+ },
1485
+ {
1486
+ name: "tokenProgram"
1487
+ isMut: false
1488
+ isSigner: false
1489
+ docs: ["Token program."]
1490
+ },
1491
+ {
1492
+ name: "aVault"
1493
+ isMut: false
1494
+ isSigner: false
1495
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
1496
+ },
1497
+ {
1498
+ name: "bVault"
1499
+ isMut: false
1500
+ isSigner: false
1501
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
1502
+ },
1503
+ {
1504
+ name: "aVaultLp"
1505
+ isMut: false
1506
+ isSigner: false
1507
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1508
+ },
1509
+ {
1510
+ name: "bVaultLp"
1511
+ isMut: false
1512
+ isSigner: false
1513
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1514
+ },
1515
+ {
1516
+ name: "aVaultLpMint"
1517
+ isMut: false
1518
+ isSigner: false
1519
+ docs: ["LP token mint of vault a"]
1520
+ },
1521
+ {
1522
+ name: "bVaultLpMint"
1523
+ isMut: false
1524
+ isSigner: false
1525
+ docs: ["LP token mint of vault b"]
1526
+ },
1527
+ ]
1528
+ args: [
1529
+ {
1530
+ name: "maxAmount"
1531
+ type: "u64"
1532
+ },
1533
+ ]
1534
+ },
1535
+ {
1536
+ name: "claimFee"
1537
+ docs: ["Claim fee"]
1538
+ accounts: [
1539
+ {
1540
+ name: "pool"
1541
+ isMut: true
1542
+ isSigner: false
1543
+ docs: ["Pool account"]
1544
+ },
1545
+ {
1546
+ name: "lpMint"
1547
+ isMut: true
1548
+ isSigner: false
1549
+ docs: ["LP token mint of the pool"]
1550
+ },
1551
+ {
1552
+ name: "lockEscrow"
1553
+ isMut: true
1554
+ isSigner: false
1555
+ docs: ["Lock account"]
1556
+ },
1557
+ {
1558
+ name: "owner"
1559
+ isMut: true
1560
+ isSigner: true
1561
+ docs: ["Owner of lock account"]
1562
+ },
1563
+ {
1564
+ name: "sourceTokens"
1565
+ isMut: true
1566
+ isSigner: false
1567
+ docs: ["owner lp token account"]
1568
+ },
1569
+ {
1570
+ name: "escrowVault"
1571
+ isMut: true
1572
+ isSigner: false
1573
+ docs: ["Escrow vault"]
1574
+ },
1575
+ {
1576
+ name: "tokenProgram"
1577
+ isMut: false
1578
+ isSigner: false
1579
+ docs: ["Token program."]
1580
+ },
1581
+ {
1582
+ name: "aTokenVault"
1583
+ isMut: true
1584
+ isSigner: false
1585
+ docs: ["Token vault account of vault A"]
1586
+ },
1587
+ {
1588
+ name: "bTokenVault"
1589
+ isMut: true
1590
+ isSigner: false
1591
+ docs: ["Token vault account of vault B"]
1592
+ },
1593
+ {
1594
+ name: "aVault"
1595
+ isMut: true
1596
+ isSigner: false
1597
+ docs: ["Vault account for token a. token a of the pool will be deposit / withdraw from this vault account."]
1598
+ },
1599
+ {
1600
+ name: "bVault"
1601
+ isMut: true
1602
+ isSigner: false
1603
+ docs: ["Vault account for token b. token b of the pool will be deposit / withdraw from this vault account."]
1604
+ },
1605
+ {
1606
+ name: "aVaultLp"
1607
+ isMut: true
1608
+ isSigner: false
1609
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1610
+ },
1611
+ {
1612
+ name: "bVaultLp"
1613
+ isMut: true
1614
+ isSigner: false
1615
+ docs: ["LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1616
+ },
1617
+ {
1618
+ name: "aVaultLpMint"
1619
+ isMut: true
1620
+ isSigner: false
1621
+ docs: ["LP token mint of vault a"]
1622
+ },
1623
+ {
1624
+ name: "bVaultLpMint"
1625
+ isMut: true
1626
+ isSigner: false
1627
+ docs: ["LP token mint of vault b"]
1628
+ },
1629
+ {
1630
+ name: "userAToken"
1631
+ isMut: true
1632
+ isSigner: false
1633
+ docs: [
1634
+ "User token A account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
1635
+ ]
1636
+ },
1637
+ {
1638
+ name: "userBToken"
1639
+ isMut: true
1640
+ isSigner: false
1641
+ docs: [
1642
+ "User token B account. Token will be transfer from this account if it is add liquidity operation. Else, token will be transfer into this account.",
1643
+ ]
1644
+ },
1645
+ {
1646
+ name: "vaultProgram"
1647
+ isMut: false
1648
+ isSigner: false
1649
+ docs: ["Vault program. the pool will deposit/withdraw liquidity from the vault."]
1650
+ },
1651
+ ]
1652
+ args: [
1653
+ {
1654
+ name: "maxAmount"
1655
+ type: "u64"
1656
+ },
1657
+ ]
1658
+ },
1659
+ {
1660
+ name: "createConfig"
1661
+ docs: ["Create config"]
1662
+ accounts: [
1663
+ {
1664
+ name: "config"
1665
+ isMut: true
1666
+ isSigner: false
1667
+ },
1668
+ {
1669
+ name: "admin"
1670
+ isMut: true
1671
+ isSigner: true
1672
+ },
1673
+ {
1674
+ name: "systemProgram"
1675
+ isMut: false
1676
+ isSigner: false
1677
+ },
1678
+ ]
1679
+ args: [
1680
+ {
1681
+ name: "configParameters"
1682
+ type: {
1683
+ defined: "ConfigParameters"
1684
+ }
1685
+ },
1686
+ ]
1687
+ },
1688
+ {
1689
+ name: "closeConfig"
1690
+ docs: ["Close config"]
1691
+ accounts: [
1692
+ {
1693
+ name: "config"
1694
+ isMut: true
1695
+ isSigner: false
1696
+ },
1697
+ {
1698
+ name: "admin"
1699
+ isMut: true
1700
+ isSigner: true
1701
+ },
1702
+ {
1703
+ name: "rentReceiver"
1704
+ isMut: true
1705
+ isSigner: false
1706
+ },
1707
+ ]
1708
+ args: []
1709
+ },
1710
+ {
1711
+ name: "initializePermissionlessConstantProductPoolWithConfig"
1712
+ docs: ["Initialize permissionless pool with config"]
1713
+ accounts: [
1714
+ {
1715
+ name: "pool"
1716
+ isMut: true
1717
+ isSigner: false
1718
+ docs: ["Pool account (PDA address)"]
1719
+ },
1720
+ {
1721
+ name: "config"
1722
+ isMut: false
1723
+ isSigner: false
1724
+ },
1725
+ {
1726
+ name: "lpMint"
1727
+ isMut: true
1728
+ isSigner: false
1729
+ docs: ["LP token mint of the pool"]
1730
+ },
1731
+ {
1732
+ name: "tokenAMint"
1733
+ isMut: false
1734
+ isSigner: false
1735
+ docs: ["Token A mint of the pool. Eg: USDT"]
1736
+ },
1737
+ {
1738
+ name: "tokenBMint"
1739
+ isMut: false
1740
+ isSigner: false
1741
+ docs: ["Token B mint of the pool. Eg: USDC"]
1742
+ },
1743
+ {
1744
+ name: "aVault"
1745
+ isMut: true
1746
+ isSigner: false
1747
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
1748
+ },
1749
+ {
1750
+ name: "bVault"
1751
+ isMut: true
1752
+ isSigner: false
1753
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
1754
+ },
1755
+ {
1756
+ name: "aTokenVault"
1757
+ isMut: true
1758
+ isSigner: false
1759
+ docs: ["Token vault account of vault A"]
1760
+ },
1761
+ {
1762
+ name: "bTokenVault"
1763
+ isMut: true
1764
+ isSigner: false
1765
+ docs: ["Token vault account of vault B"]
1766
+ },
1767
+ {
1768
+ name: "aVaultLpMint"
1769
+ isMut: true
1770
+ isSigner: false
1771
+ docs: ["LP token mint of vault A"]
1772
+ },
1773
+ {
1774
+ name: "bVaultLpMint"
1775
+ isMut: true
1776
+ isSigner: false
1777
+ docs: ["LP token mint of vault B"]
1778
+ },
1779
+ {
1780
+ name: "aVaultLp"
1781
+ isMut: true
1782
+ isSigner: false
1783
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1784
+ },
1785
+ {
1786
+ name: "bVaultLp"
1787
+ isMut: true
1788
+ isSigner: false
1789
+ docs: ["LP token account of vault B. Used to receive/burn vault LP upon deposit/withdraw from the vault."]
1790
+ },
1791
+ {
1792
+ name: "payerTokenA"
1793
+ isMut: true
1794
+ isSigner: false
1795
+ docs: ["Payer token account for pool token A mint. Used to bootstrap the pool with initial liquidity."]
1796
+ },
1797
+ {
1798
+ name: "payerTokenB"
1799
+ isMut: true
1800
+ isSigner: false
1801
+ docs: ["Admin token account for pool token B mint. Used to bootstrap the pool with initial liquidity."]
1802
+ },
1803
+ {
1804
+ name: "payerPoolLp"
1805
+ isMut: true
1806
+ isSigner: false
1807
+ },
1808
+ {
1809
+ name: "protocolTokenAFee"
1810
+ isMut: true
1811
+ isSigner: false
1812
+ docs: ["Protocol fee token account for token A. Used to receive trading fee."]
1813
+ },
1814
+ {
1815
+ name: "protocolTokenBFee"
1816
+ isMut: true
1817
+ isSigner: false
1818
+ docs: ["Protocol fee token account for token B. Used to receive trading fee."]
1819
+ },
1820
+ {
1821
+ name: "payer"
1822
+ isMut: true
1823
+ isSigner: true
1824
+ docs: [
1825
+ "Admin account. This account will be the admin of the pool, and the payer for PDA during initialize pool.",
1826
+ ]
1827
+ },
1828
+ {
1829
+ name: "rent"
1830
+ isMut: false
1831
+ isSigner: false
1832
+ docs: ["Rent account."]
1833
+ },
1834
+ {
1835
+ name: "mintMetadata"
1836
+ isMut: true
1837
+ isSigner: false
1838
+ },
1839
+ {
1840
+ name: "metadataProgram"
1841
+ isMut: false
1842
+ isSigner: false
1843
+ },
1844
+ {
1845
+ name: "vaultProgram"
1846
+ isMut: false
1847
+ isSigner: false
1848
+ docs: ["Vault program. The pool will deposit/withdraw liquidity from the vault."]
1849
+ },
1850
+ {
1851
+ name: "tokenProgram"
1852
+ isMut: false
1853
+ isSigner: false
1854
+ docs: ["Token program."]
1855
+ },
1856
+ {
1857
+ name: "associatedTokenProgram"
1858
+ isMut: false
1859
+ isSigner: false
1860
+ docs: ["Associated token program."]
1861
+ },
1862
+ {
1863
+ name: "systemProgram"
1864
+ isMut: false
1865
+ isSigner: false
1866
+ docs: ["System program."]
1867
+ },
1868
+ ]
1869
+ args: [
1870
+ {
1871
+ name: "tokenAAmount"
1872
+ type: "u64"
1873
+ },
1874
+ {
1875
+ name: "tokenBAmount"
1876
+ type: "u64"
1877
+ },
1878
+ ]
1879
+ },
1880
+ {
1881
+ name: "initializePermissionlessConstantProductPoolWithConfig2"
1882
+ docs: ["Initialize permissionless pool with config 2"]
1883
+ accounts: [
1884
+ {
1885
+ name: "pool"
1886
+ isMut: true
1887
+ isSigner: false
1888
+ docs: ["Pool account (PDA address)"]
1889
+ },
1890
+ {
1891
+ name: "config"
1892
+ isMut: false
1893
+ isSigner: false
1894
+ },
1895
+ {
1896
+ name: "lpMint"
1897
+ isMut: true
1898
+ isSigner: false
1899
+ docs: ["LP token mint of the pool"]
1900
+ },
1901
+ {
1902
+ name: "tokenAMint"
1903
+ isMut: false
1904
+ isSigner: false
1905
+ docs: ["Token A mint of the pool. Eg: USDT"]
1906
+ },
1907
+ {
1908
+ name: "tokenBMint"
1909
+ isMut: false
1910
+ isSigner: false
1911
+ docs: ["Token B mint of the pool. Eg: USDC"]
1912
+ },
1913
+ {
1914
+ name: "aVault"
1915
+ isMut: true
1916
+ isSigner: false
1917
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
1918
+ },
1919
+ {
1920
+ name: "bVault"
1921
+ isMut: true
1922
+ isSigner: false
1923
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
1924
+ },
1925
+ {
1926
+ name: "aTokenVault"
1927
+ isMut: true
1928
+ isSigner: false
1929
+ docs: ["Token vault account of vault A"]
1930
+ },
1931
+ {
1932
+ name: "bTokenVault"
1933
+ isMut: true
1934
+ isSigner: false
1935
+ docs: ["Token vault account of vault B"]
1936
+ },
1937
+ {
1938
+ name: "aVaultLpMint"
1939
+ isMut: true
1940
+ isSigner: false
1941
+ docs: ["LP token mint of vault A"]
1942
+ },
1943
+ {
1944
+ name: "bVaultLpMint"
1945
+ isMut: true
1946
+ isSigner: false
1947
+ docs: ["LP token mint of vault B"]
1948
+ },
1949
+ {
1950
+ name: "aVaultLp"
1951
+ isMut: true
1952
+ isSigner: false
1953
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
1954
+ },
1955
+ {
1956
+ name: "bVaultLp"
1957
+ isMut: true
1958
+ isSigner: false
1959
+ docs: ["LP token account of vault B. Used to receive/burn vault LP upon deposit/withdraw from the vault."]
1960
+ },
1961
+ {
1962
+ name: "payerTokenA"
1963
+ isMut: true
1964
+ isSigner: false
1965
+ docs: ["Payer token account for pool token A mint. Used to bootstrap the pool with initial liquidity."]
1966
+ },
1967
+ {
1968
+ name: "payerTokenB"
1969
+ isMut: true
1970
+ isSigner: false
1971
+ docs: ["Admin token account for pool token B mint. Used to bootstrap the pool with initial liquidity."]
1972
+ },
1973
+ {
1974
+ name: "payerPoolLp"
1975
+ isMut: true
1976
+ isSigner: false
1977
+ },
1978
+ {
1979
+ name: "protocolTokenAFee"
1980
+ isMut: true
1981
+ isSigner: false
1982
+ docs: ["Protocol fee token account for token A. Used to receive trading fee."]
1983
+ },
1984
+ {
1985
+ name: "protocolTokenBFee"
1986
+ isMut: true
1987
+ isSigner: false
1988
+ docs: ["Protocol fee token account for token B. Used to receive trading fee."]
1989
+ },
1990
+ {
1991
+ name: "payer"
1992
+ isMut: true
1993
+ isSigner: true
1994
+ docs: [
1995
+ "Admin account. This account will be the admin of the pool, and the payer for PDA during initialize pool.",
1996
+ ]
1997
+ },
1998
+ {
1999
+ name: "rent"
2000
+ isMut: false
2001
+ isSigner: false
2002
+ docs: ["Rent account."]
2003
+ },
2004
+ {
2005
+ name: "mintMetadata"
2006
+ isMut: true
2007
+ isSigner: false
2008
+ },
2009
+ {
2010
+ name: "metadataProgram"
2011
+ isMut: false
2012
+ isSigner: false
2013
+ },
2014
+ {
2015
+ name: "vaultProgram"
2016
+ isMut: false
2017
+ isSigner: false
2018
+ docs: ["Vault program. The pool will deposit/withdraw liquidity from the vault."]
2019
+ },
2020
+ {
2021
+ name: "tokenProgram"
2022
+ isMut: false
2023
+ isSigner: false
2024
+ docs: ["Token program."]
2025
+ },
2026
+ {
2027
+ name: "associatedTokenProgram"
2028
+ isMut: false
2029
+ isSigner: false
2030
+ docs: ["Associated token program."]
2031
+ },
2032
+ {
2033
+ name: "systemProgram"
2034
+ isMut: false
2035
+ isSigner: false
2036
+ docs: ["System program."]
2037
+ },
2038
+ ]
2039
+ args: [
2040
+ {
2041
+ name: "tokenAAmount"
2042
+ type: "u64"
2043
+ },
2044
+ {
2045
+ name: "tokenBAmount"
2046
+ type: "u64"
2047
+ },
2048
+ {
2049
+ name: "activationPoint"
2050
+ type: {
2051
+ option: "u64"
2052
+ }
2053
+ },
2054
+ ]
2055
+ },
2056
+ {
2057
+ name: "initializeCustomizablePermissionlessConstantProductPool"
2058
+ docs: ["Initialize permissionless pool with customizable params"]
2059
+ accounts: [
2060
+ {
2061
+ name: "pool"
2062
+ isMut: true
2063
+ isSigner: false
2064
+ docs: ["Pool account (PDA address)"]
2065
+ },
2066
+ {
2067
+ name: "lpMint"
2068
+ isMut: true
2069
+ isSigner: false
2070
+ docs: ["LP token mint of the pool"]
2071
+ },
2072
+ {
2073
+ name: "tokenAMint"
2074
+ isMut: false
2075
+ isSigner: false
2076
+ docs: ["Token A mint of the pool. Eg: USDT"]
2077
+ },
2078
+ {
2079
+ name: "tokenBMint"
2080
+ isMut: false
2081
+ isSigner: false
2082
+ docs: ["Token B mint of the pool. Eg: USDC"]
2083
+ },
2084
+ {
2085
+ name: "aVault"
2086
+ isMut: true
2087
+ isSigner: false
2088
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
2089
+ },
2090
+ {
2091
+ name: "bVault"
2092
+ isMut: true
2093
+ isSigner: false
2094
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
2095
+ },
2096
+ {
2097
+ name: "aTokenVault"
2098
+ isMut: true
2099
+ isSigner: false
2100
+ docs: ["Token vault account of vault A"]
2101
+ },
2102
+ {
2103
+ name: "bTokenVault"
2104
+ isMut: true
2105
+ isSigner: false
2106
+ docs: ["Token vault account of vault B"]
2107
+ },
2108
+ {
2109
+ name: "aVaultLpMint"
2110
+ isMut: true
2111
+ isSigner: false
2112
+ docs: ["LP token mint of vault A"]
2113
+ },
2114
+ {
2115
+ name: "bVaultLpMint"
2116
+ isMut: true
2117
+ isSigner: false
2118
+ docs: ["LP token mint of vault B"]
2119
+ },
2120
+ {
2121
+ name: "aVaultLp"
2122
+ isMut: true
2123
+ isSigner: false
2124
+ docs: ["LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault."]
2125
+ },
2126
+ {
2127
+ name: "bVaultLp"
2128
+ isMut: true
2129
+ isSigner: false
2130
+ docs: ["LP token account of vault B. Used to receive/burn vault LP upon deposit/withdraw from the vault."]
2131
+ },
2132
+ {
2133
+ name: "payerTokenA"
2134
+ isMut: true
2135
+ isSigner: false
2136
+ docs: ["Payer token account for pool token A mint. Used to bootstrap the pool with initial liquidity."]
2137
+ },
2138
+ {
2139
+ name: "payerTokenB"
2140
+ isMut: true
2141
+ isSigner: false
2142
+ docs: ["Admin token account for pool token B mint. Used to bootstrap the pool with initial liquidity."]
2143
+ },
2144
+ {
2145
+ name: "payerPoolLp"
2146
+ isMut: true
2147
+ isSigner: false
2148
+ },
2149
+ {
2150
+ name: "protocolTokenAFee"
2151
+ isMut: true
2152
+ isSigner: false
2153
+ docs: ["Protocol fee token account for token A. Used to receive trading fee."]
2154
+ },
2155
+ {
2156
+ name: "protocolTokenBFee"
2157
+ isMut: true
2158
+ isSigner: false
2159
+ docs: ["Protocol fee token account for token B. Used to receive trading fee."]
2160
+ },
2161
+ {
2162
+ name: "payer"
2163
+ isMut: true
2164
+ isSigner: true
2165
+ docs: [
2166
+ "Admin account. This account will be the admin of the pool, and the payer for PDA during initialize pool.",
2167
+ ]
2168
+ },
2169
+ {
2170
+ name: "rent"
2171
+ isMut: false
2172
+ isSigner: false
2173
+ docs: ["Rent account."]
2174
+ },
2175
+ {
2176
+ name: "mintMetadata"
2177
+ isMut: true
2178
+ isSigner: false
2179
+ },
2180
+ {
2181
+ name: "metadataProgram"
2182
+ isMut: false
2183
+ isSigner: false
2184
+ },
2185
+ {
2186
+ name: "vaultProgram"
2187
+ isMut: false
2188
+ isSigner: false
2189
+ docs: ["Vault program. The pool will deposit/withdraw liquidity from the vault."]
2190
+ },
2191
+ {
2192
+ name: "tokenProgram"
2193
+ isMut: false
2194
+ isSigner: false
2195
+ docs: ["Token program."]
2196
+ },
2197
+ {
2198
+ name: "associatedTokenProgram"
2199
+ isMut: false
2200
+ isSigner: false
2201
+ docs: ["Associated token program."]
2202
+ },
2203
+ {
2204
+ name: "systemProgram"
2205
+ isMut: false
2206
+ isSigner: false
2207
+ docs: ["System program."]
2208
+ },
2209
+ ]
2210
+ args: [
2211
+ {
2212
+ name: "tokenAAmount"
2213
+ type: "u64"
2214
+ },
2215
+ {
2216
+ name: "tokenBAmount"
2217
+ type: "u64"
2218
+ },
2219
+ {
2220
+ name: "params"
2221
+ type: {
2222
+ defined: "CustomizableParams"
2223
+ }
2224
+ },
2225
+ ]
2226
+ },
2227
+ {
2228
+ name: "updateActivationPoint"
2229
+ docs: ["Update activation slot"]
2230
+ accounts: [
2231
+ {
2232
+ name: "pool"
2233
+ isMut: true
2234
+ isSigner: false
2235
+ docs: ["Pool account (PDA)"]
2236
+ },
2237
+ {
2238
+ name: "admin"
2239
+ isMut: false
2240
+ isSigner: true
2241
+ docs: ["Admin account."]
2242
+ },
2243
+ ]
2244
+ args: [
2245
+ {
2246
+ name: "newActivationPoint"
2247
+ type: "u64"
2248
+ },
2249
+ ]
2250
+ },
2251
+ {
2252
+ name: "withdrawProtocolFees"
2253
+ docs: ["Withdraw protocol fee"]
2254
+ accounts: [
2255
+ {
2256
+ name: "pool"
2257
+ isMut: false
2258
+ isSigner: false
2259
+ docs: ["Pool account (PDA)"]
2260
+ },
2261
+ {
2262
+ name: "aVaultLp"
2263
+ isMut: false
2264
+ isSigner: false
2265
+ },
2266
+ {
2267
+ name: "protocolTokenAFee"
2268
+ isMut: true
2269
+ isSigner: false
2270
+ },
2271
+ {
2272
+ name: "protocolTokenBFee"
2273
+ isMut: true
2274
+ isSigner: false
2275
+ },
2276
+ {
2277
+ name: "treasuryTokenA"
2278
+ isMut: true
2279
+ isSigner: false
2280
+ },
2281
+ {
2282
+ name: "treasuryTokenB"
2283
+ isMut: true
2284
+ isSigner: false
2285
+ },
2286
+ {
2287
+ name: "tokenProgram"
2288
+ isMut: false
2289
+ isSigner: false
2290
+ },
2291
+ ]
2292
+ args: []
2293
+ },
2294
+ {
2295
+ name: "setWhitelistedVault"
2296
+ docs: ["Set whitelisted vault"]
2297
+ accounts: [
2298
+ {
2299
+ name: "pool"
2300
+ isMut: true
2301
+ isSigner: false
2302
+ },
2303
+ {
2304
+ name: "admin"
2305
+ isMut: false
2306
+ isSigner: true
2307
+ },
2308
+ ]
2309
+ args: [
2310
+ {
2311
+ name: "whitelistedVault"
2312
+ type: "publicKey"
2313
+ },
2314
+ ]
2315
+ },
2316
+ {
2317
+ name: "partnerClaimFee"
2318
+ docs: ["Partner claim fee"]
2319
+ accounts: [
2320
+ {
2321
+ name: "pool"
2322
+ isMut: true
2323
+ isSigner: false
2324
+ docs: ["Pool account (PDA)"]
2325
+ },
2326
+ {
2327
+ name: "aVaultLp"
2328
+ isMut: false
2329
+ isSigner: false
2330
+ },
2331
+ {
2332
+ name: "protocolTokenAFee"
2333
+ isMut: true
2334
+ isSigner: false
2335
+ },
2336
+ {
2337
+ name: "protocolTokenBFee"
2338
+ isMut: true
2339
+ isSigner: false
2340
+ },
2341
+ {
2342
+ name: "partnerTokenA"
2343
+ isMut: true
2344
+ isSigner: false
2345
+ },
2346
+ {
2347
+ name: "partnerTokenB"
2348
+ isMut: true
2349
+ isSigner: false
2350
+ },
2351
+ {
2352
+ name: "tokenProgram"
2353
+ isMut: false
2354
+ isSigner: false
2355
+ },
2356
+ {
2357
+ name: "partnerAuthority"
2358
+ isMut: false
2359
+ isSigner: true
2360
+ },
2361
+ ]
2362
+ args: [
2363
+ {
2364
+ name: "maxAmountA"
2365
+ type: "u64"
2366
+ },
2367
+ {
2368
+ name: "maxAmountB"
2369
+ type: "u64"
2370
+ },
2371
+ ]
2372
+ },
2373
+ ]
2374
+ accounts: [
2375
+ {
2376
+ name: "config"
2377
+ type: {
2378
+ kind: "struct"
2379
+ fields: [
2380
+ {
2381
+ name: "poolFees"
2382
+ type: {
2383
+ defined: "PoolFees"
2384
+ }
2385
+ },
2386
+ {
2387
+ name: "activationDuration"
2388
+ type: "u64"
2389
+ },
2390
+ {
2391
+ name: "vaultConfigKey"
2392
+ type: "publicKey"
2393
+ },
2394
+ {
2395
+ name: "poolCreatorAuthority"
2396
+ docs: [
2397
+ "Only pool_creator_authority can use the current config to initialize new pool. When it's Pubkey::default, it's a public config.",
2398
+ ]
2399
+ type: "publicKey"
2400
+ },
2401
+ {
2402
+ name: "activationType"
2403
+ docs: ["Activation type"]
2404
+ type: "u8"
2405
+ },
2406
+ {
2407
+ name: "partnerFeeNumerator"
2408
+ type: "u64"
2409
+ },
2410
+ {
2411
+ name: "padding"
2412
+ type: {
2413
+ array: ["u8", 219]
2414
+ }
2415
+ },
2416
+ ]
2417
+ }
2418
+ },
2419
+ {
2420
+ name: "lockEscrow"
2421
+ docs: ["State of lock escrow account"]
2422
+ type: {
2423
+ kind: "struct"
2424
+ fields: [
2425
+ {
2426
+ name: "pool"
2427
+ docs: ["Pool address"]
2428
+ type: "publicKey"
2429
+ },
2430
+ {
2431
+ name: "owner"
2432
+ docs: ["Owner address"]
2433
+ type: "publicKey"
2434
+ },
2435
+ {
2436
+ name: "escrowVault"
2437
+ docs: ["Vault address, store the lock user lock"]
2438
+ type: "publicKey"
2439
+ },
2440
+ {
2441
+ name: "bump"
2442
+ docs: ["bump, used to sign"]
2443
+ type: "u8"
2444
+ },
2445
+ {
2446
+ name: "totalLockedAmount"
2447
+ docs: ["Total locked amount"]
2448
+ type: "u64"
2449
+ },
2450
+ {
2451
+ name: "lpPerToken"
2452
+ docs: ["Lp per token, virtual price of lp token"]
2453
+ type: "u128"
2454
+ },
2455
+ {
2456
+ name: "unclaimedFeePending"
2457
+ docs: ["Unclaimed fee pending"]
2458
+ type: "u64"
2459
+ },
2460
+ {
2461
+ name: "aFee"
2462
+ docs: ["Total a fee claimed so far"]
2463
+ type: "u64"
2464
+ },
2465
+ {
2466
+ name: "bFee"
2467
+ docs: ["Total b fee claimed so far"]
2468
+ type: "u64"
2469
+ },
2470
+ ]
2471
+ }
2472
+ },
2473
+ {
2474
+ name: "pool"
2475
+ docs: ["State of pool account"]
2476
+ type: {
2477
+ kind: "struct"
2478
+ fields: [
2479
+ {
2480
+ name: "lpMint"
2481
+ docs: ["LP token mint of the pool"]
2482
+ type: "publicKey"
2483
+ },
2484
+ {
2485
+ name: "tokenAMint"
2486
+ docs: ["Token A mint of the pool. Eg: USDT"]
2487
+ type: "publicKey"
2488
+ },
2489
+ {
2490
+ name: "tokenBMint"
2491
+ docs: ["Token B mint of the pool. Eg: USDC"]
2492
+ type: "publicKey"
2493
+ },
2494
+ {
2495
+ name: "aVault"
2496
+ docs: ["Vault account for token A. Token A of the pool will be deposit / withdraw from this vault account."]
2497
+ type: "publicKey"
2498
+ },
2499
+ {
2500
+ name: "bVault"
2501
+ docs: ["Vault account for token B. Token B of the pool will be deposit / withdraw from this vault account."]
2502
+ type: "publicKey"
2503
+ },
2504
+ {
2505
+ name: "aVaultLp"
2506
+ docs: [
2507
+ "LP token account of vault A. Used to receive/burn the vault LP upon deposit/withdraw from the vault.",
2508
+ ]
2509
+ type: "publicKey"
2510
+ },
2511
+ {
2512
+ name: "bVaultLp"
2513
+ docs: [
2514
+ "LP token account of vault B. Used to receive/burn the vault LP upon deposit/withdraw from the vault.",
2515
+ ]
2516
+ type: "publicKey"
2517
+ },
2518
+ {
2519
+ name: "aVaultLpBump"
2520
+ docs: ['"A" vault lp bump. Used to create signer seeds.']
2521
+ type: "u8"
2522
+ },
2523
+ {
2524
+ name: "enabled"
2525
+ docs: ["Flag to determine whether the pool is enabled, or disabled."]
2526
+ type: "bool"
2527
+ },
2528
+ {
2529
+ name: "protocolTokenAFee"
2530
+ docs: ["Protocol fee token account for token A. Used to receive trading fee."]
2531
+ type: "publicKey"
2532
+ },
2533
+ {
2534
+ name: "protocolTokenBFee"
2535
+ docs: ["Protocol fee token account for token B. Used to receive trading fee."]
2536
+ type: "publicKey"
2537
+ },
2538
+ {
2539
+ name: "feeLastUpdatedAt"
2540
+ docs: ["Fee last updated timestamp"]
2541
+ type: "u64"
2542
+ },
2543
+ {
2544
+ name: "padding0"
2545
+ type: {
2546
+ array: ["u8", 24]
2547
+ }
2548
+ },
2549
+ {
2550
+ name: "fees"
2551
+ docs: ["Store the fee charges setting."]
2552
+ type: {
2553
+ defined: "PoolFees"
2554
+ }
2555
+ },
2556
+ {
2557
+ name: "poolType"
2558
+ docs: ["Pool type"]
2559
+ type: {
2560
+ defined: "PoolType"
2561
+ }
2562
+ },
2563
+ {
2564
+ name: "stake"
2565
+ docs: ["Stake pubkey of SPL stake pool"]
2566
+ type: "publicKey"
2567
+ },
2568
+ {
2569
+ name: "totalLockedLp"
2570
+ docs: ["Total locked lp token"]
2571
+ type: "u64"
2572
+ },
2573
+ {
2574
+ name: "bootstrapping"
2575
+ docs: ["bootstrapping config"]
2576
+ type: {
2577
+ defined: "Bootstrapping"
2578
+ }
2579
+ },
2580
+ {
2581
+ name: "partnerInfo"
2582
+ type: {
2583
+ defined: "PartnerInfo"
2584
+ }
2585
+ },
2586
+ {
2587
+ name: "padding"
2588
+ docs: ["Padding for future pool field"]
2589
+ type: {
2590
+ defined: "Padding"
2591
+ }
2592
+ },
2593
+ {
2594
+ name: "curveType"
2595
+ docs: ["The type of the swap curve supported by the pool."]
2596
+ type: {
2597
+ defined: "CurveType"
2598
+ }
2599
+ },
2600
+ ]
2601
+ }
2602
+ },
2603
+ ]
2604
+ types: [
2605
+ {
2606
+ name: "TokenMultiplier"
2607
+ docs: ["Multiplier for the pool token. Used to normalized token with different decimal into the same precision."]
2608
+ type: {
2609
+ kind: "struct"
2610
+ fields: [
2611
+ {
2612
+ name: "tokenAMultiplier"
2613
+ docs: ["Multiplier for token A of the pool."]
2614
+ type: "u64"
2615
+ },
2616
+ {
2617
+ name: "tokenBMultiplier"
2618
+ docs: ["Multiplier for token B of the pool."]
2619
+ type: "u64"
2620
+ },
2621
+ {
2622
+ name: "precisionFactor"
2623
+ docs: [
2624
+ "Record the highest token decimal in the pool. For example, Token A is 6 decimal, token B is 9 decimal. This will save value of 9.",
2625
+ ]
2626
+ type: "u8"
2627
+ },
2628
+ ]
2629
+ }
2630
+ },
2631
+ {
2632
+ name: "PoolFees"
2633
+ docs: ["Information regarding fee charges"]
2634
+ type: {
2635
+ kind: "struct"
2636
+ fields: [
2637
+ {
2638
+ name: "tradeFeeNumerator"
2639
+ docs: [
2640
+ "Trade fees are extra token amounts that are held inside the token",
2641
+ "accounts during a trade, making the value of liquidity tokens rise.",
2642
+ "Trade fee numerator",
2643
+ ]
2644
+ type: "u64"
2645
+ },
2646
+ {
2647
+ name: "tradeFeeDenominator"
2648
+ docs: ["Trade fee denominator"]
2649
+ type: "u64"
2650
+ },
2651
+ {
2652
+ name: "protocolTradeFeeNumerator"
2653
+ docs: [
2654
+ "Protocol trading fees are extra token amounts that are held inside the token",
2655
+ "accounts during a trade, with the equivalent in pool tokens minted to",
2656
+ "the protocol of the program.",
2657
+ "Protocol trade fee numerator",
2658
+ ]
2659
+ type: "u64"
2660
+ },
2661
+ {
2662
+ name: "protocolTradeFeeDenominator"
2663
+ docs: ["Protocol trade fee denominator"]
2664
+ type: "u64"
2665
+ },
2666
+ ]
2667
+ }
2668
+ },
2669
+ {
2670
+ name: "Depeg"
2671
+ docs: ["Contains information for depeg pool"]
2672
+ type: {
2673
+ kind: "struct"
2674
+ fields: [
2675
+ {
2676
+ name: "baseVirtualPrice"
2677
+ docs: ["The virtual price of staking / interest bearing token"]
2678
+ type: "u64"
2679
+ },
2680
+ {
2681
+ name: "baseCacheUpdated"
2682
+ docs: ["The last time base_virtual_price is updated"]
2683
+ type: "u64"
2684
+ },
2685
+ {
2686
+ name: "depegType"
2687
+ docs: ["Type of the depeg pool"]
2688
+ type: {
2689
+ defined: "DepegType"
2690
+ }
2691
+ },
2692
+ ]
2693
+ }
2694
+ },
2695
+ {
2696
+ name: "ConfigParameters"
2697
+ type: {
2698
+ kind: "struct"
2699
+ fields: [
2700
+ {
2701
+ name: "tradeFeeNumerator"
2702
+ type: "u64"
2703
+ },
2704
+ {
2705
+ name: "protocolTradeFeeNumerator"
2706
+ type: "u64"
2707
+ },
2708
+ {
2709
+ name: "activationDuration"
2710
+ type: "u64"
2711
+ },
2712
+ {
2713
+ name: "vaultConfigKey"
2714
+ type: "publicKey"
2715
+ },
2716
+ {
2717
+ name: "poolCreatorAuthority"
2718
+ type: "publicKey"
2719
+ },
2720
+ {
2721
+ name: "activationType"
2722
+ type: "u8"
2723
+ },
2724
+ {
2725
+ name: "index"
2726
+ type: "u64"
2727
+ },
2728
+ {
2729
+ name: "partnerFeeNumerator"
2730
+ type: "u64"
2731
+ },
2732
+ ]
2733
+ }
2734
+ },
2735
+ {
2736
+ name: "CustomizableParams"
2737
+ type: {
2738
+ kind: "struct"
2739
+ fields: [
2740
+ {
2741
+ name: "tradeFeeNumerator"
2742
+ docs: ["Trading fee."]
2743
+ type: "u32"
2744
+ },
2745
+ {
2746
+ name: "activationPoint"
2747
+ docs: ["The pool start trading."]
2748
+ type: {
2749
+ option: "u64"
2750
+ }
2751
+ },
2752
+ {
2753
+ name: "hasAlphaVault"
2754
+ docs: ["Whether the pool support alpha vault"]
2755
+ type: "bool"
2756
+ },
2757
+ {
2758
+ name: "activationType"
2759
+ docs: ["Activation type"]
2760
+ type: "u8"
2761
+ },
2762
+ {
2763
+ name: "padding"
2764
+ docs: ["Padding"]
2765
+ type: {
2766
+ array: ["u8", 90]
2767
+ }
2768
+ },
2769
+ ]
2770
+ }
2771
+ },
2772
+ {
2773
+ name: "Padding"
2774
+ docs: ["Padding for future pool fields"]
2775
+ type: {
2776
+ kind: "struct"
2777
+ fields: [
2778
+ {
2779
+ name: "padding0"
2780
+ docs: ["Padding 0"]
2781
+ type: {
2782
+ array: ["u8", 6]
2783
+ }
2784
+ },
2785
+ {
2786
+ name: "padding1"
2787
+ docs: ["Padding 1"]
2788
+ type: {
2789
+ array: ["u64", 21]
2790
+ }
2791
+ },
2792
+ {
2793
+ name: "padding2"
2794
+ docs: ["Padding 2"]
2795
+ type: {
2796
+ array: ["u64", 21]
2797
+ }
2798
+ },
2799
+ ]
2800
+ }
2801
+ },
2802
+ {
2803
+ name: "PartnerInfo"
2804
+ type: {
2805
+ kind: "struct"
2806
+ fields: [
2807
+ {
2808
+ name: "feeNumerator"
2809
+ type: "u64"
2810
+ },
2811
+ {
2812
+ name: "partnerAuthority"
2813
+ type: "publicKey"
2814
+ },
2815
+ {
2816
+ name: "pendingFeeA"
2817
+ type: "u64"
2818
+ },
2819
+ {
2820
+ name: "pendingFeeB"
2821
+ type: "u64"
2822
+ },
2823
+ ]
2824
+ }
2825
+ },
2826
+ {
2827
+ name: "Bootstrapping"
2828
+ type: {
2829
+ kind: "struct"
2830
+ fields: [
2831
+ {
2832
+ name: "activationPoint"
2833
+ docs: ["Activation point, can be slot or timestamp"]
2834
+ type: "u64"
2835
+ },
2836
+ {
2837
+ name: "whitelistedVault"
2838
+ docs: ["Whitelisted vault to be able to buy pool before activation_point"]
2839
+ type: "publicKey"
2840
+ },
2841
+ {
2842
+ name: "poolCreator"
2843
+ docs: ["Need to store pool creator in lauch pool, so they can modify liquidity before activation_point"]
2844
+ type: "publicKey"
2845
+ },
2846
+ {
2847
+ name: "activationType"
2848
+ docs: ["Activation type, 0 means by slot, 1 means by timestamp"]
2849
+ type: "u8"
2850
+ },
2851
+ ]
2852
+ }
2853
+ },
2854
+ {
2855
+ name: "ActivationType"
2856
+ docs: ["Type of the activation"]
2857
+ type: {
2858
+ kind: "enum"
2859
+ variants: [
2860
+ {
2861
+ name: "Slot"
2862
+ },
2863
+ {
2864
+ name: "Timestamp"
2865
+ },
2866
+ ]
2867
+ }
2868
+ },
2869
+ {
2870
+ name: "RoundDirection"
2871
+ docs: ["Rounding direction"]
2872
+ type: {
2873
+ kind: "enum"
2874
+ variants: [
2875
+ {
2876
+ name: "Floor"
2877
+ },
2878
+ {
2879
+ name: "Ceiling"
2880
+ },
2881
+ ]
2882
+ }
2883
+ },
2884
+ {
2885
+ name: "TradeDirection"
2886
+ docs: ["Trade (swap) direction"]
2887
+ type: {
2888
+ kind: "enum"
2889
+ variants: [
2890
+ {
2891
+ name: "AtoB"
2892
+ },
2893
+ {
2894
+ name: "BtoA"
2895
+ },
2896
+ ]
2897
+ }
2898
+ },
2899
+ {
2900
+ name: "NewCurveType"
2901
+ docs: ["Type of the swap curve"]
2902
+ type: {
2903
+ kind: "enum"
2904
+ variants: [
2905
+ {
2906
+ name: "ConstantProduct"
2907
+ },
2908
+ {
2909
+ name: "Stable"
2910
+ fields: [
2911
+ {
2912
+ name: "amp"
2913
+ docs: ["Amplification coefficient"]
2914
+ type: "u64"
2915
+ },
2916
+ {
2917
+ name: "token_multiplier"
2918
+ docs: [
2919
+ "Multiplier for the pool token. Used to normalized token with different decimal into the same precision.",
2920
+ ]
2921
+ type: {
2922
+ defined: "TokenMultiplier"
2923
+ }
2924
+ },
2925
+ {
2926
+ name: "depeg"
2927
+ docs: [
2928
+ "Depeg pool information. Contains functions to allow token amount to be repeg using stake / interest bearing token virtual price",
2929
+ ]
2930
+ type: {
2931
+ defined: "Depeg"
2932
+ }
2933
+ },
2934
+ {
2935
+ name: "last_amp_updated_timestamp"
2936
+ docs: [
2937
+ "The last amp updated timestamp. Used to prevent update_curve_info called infinitely many times within a short period",
2938
+ ]
2939
+ type: "u64"
2940
+ },
2941
+ ]
2942
+ },
2943
+ {
2944
+ name: "NewCurve"
2945
+ fields: [
2946
+ {
2947
+ name: "field_one"
2948
+ type: "u64"
2949
+ },
2950
+ {
2951
+ name: "field_two"
2952
+ type: "u64"
2953
+ },
2954
+ ]
2955
+ },
2956
+ ]
2957
+ }
2958
+ },
2959
+ {
2960
+ name: "CurveType"
2961
+ docs: ["Type of the swap curve"]
2962
+ type: {
2963
+ kind: "enum"
2964
+ variants: [
2965
+ {
2966
+ name: "ConstantProduct"
2967
+ },
2968
+ {
2969
+ name: "Stable"
2970
+ fields: [
2971
+ {
2972
+ name: "amp"
2973
+ docs: ["Amplification coefficient"]
2974
+ type: "u64"
2975
+ },
2976
+ {
2977
+ name: "token_multiplier"
2978
+ docs: [
2979
+ "Multiplier for the pool token. Used to normalized token with different decimal into the same precision.",
2980
+ ]
2981
+ type: {
2982
+ defined: "TokenMultiplier"
2983
+ }
2984
+ },
2985
+ {
2986
+ name: "depeg"
2987
+ docs: [
2988
+ "Depeg pool information. Contains functions to allow token amount to be repeg using stake / interest bearing token virtual price",
2989
+ ]
2990
+ type: {
2991
+ defined: "Depeg"
2992
+ }
2993
+ },
2994
+ {
2995
+ name: "last_amp_updated_timestamp"
2996
+ docs: [
2997
+ "The last amp updated timestamp. Used to prevent update_curve_info called infinitely many times within a short period",
2998
+ ]
2999
+ type: "u64"
3000
+ },
3001
+ ]
3002
+ },
3003
+ ]
3004
+ }
3005
+ },
3006
+ {
3007
+ name: "DepegType"
3008
+ docs: ["Type of depeg pool"]
3009
+ type: {
3010
+ kind: "enum"
3011
+ variants: [
3012
+ {
3013
+ name: "None"
3014
+ },
3015
+ {
3016
+ name: "Marinade"
3017
+ },
3018
+ {
3019
+ name: "Lido"
3020
+ },
3021
+ {
3022
+ name: "SplStake"
3023
+ },
3024
+ ]
3025
+ }
3026
+ },
3027
+ {
3028
+ name: "Rounding"
3029
+ docs: ["Round up, down"]
3030
+ type: {
3031
+ kind: "enum"
3032
+ variants: [
3033
+ {
3034
+ name: "Up"
3035
+ },
3036
+ {
3037
+ name: "Down"
3038
+ },
3039
+ ]
3040
+ }
3041
+ },
3042
+ {
3043
+ name: "PoolType"
3044
+ docs: ["Pool type"]
3045
+ type: {
3046
+ kind: "enum"
3047
+ variants: [
3048
+ {
3049
+ name: "Permissioned"
3050
+ },
3051
+ {
3052
+ name: "Permissionless"
3053
+ },
3054
+ ]
3055
+ }
3056
+ },
3057
+ ]
3058
+ events: [
3059
+ {
3060
+ name: "AddLiquidity"
3061
+ fields: [
3062
+ {
3063
+ name: "lpMintAmount"
3064
+ type: "u64"
3065
+ index: false
3066
+ },
3067
+ {
3068
+ name: "tokenAAmount"
3069
+ type: "u64"
3070
+ index: false
3071
+ },
3072
+ {
3073
+ name: "tokenBAmount"
3074
+ type: "u64"
3075
+ index: false
3076
+ },
3077
+ ]
3078
+ },
3079
+ {
3080
+ name: "RemoveLiquidity"
3081
+ fields: [
3082
+ {
3083
+ name: "lpUnmintAmount"
3084
+ type: "u64"
3085
+ index: false
3086
+ },
3087
+ {
3088
+ name: "tokenAOutAmount"
3089
+ type: "u64"
3090
+ index: false
3091
+ },
3092
+ {
3093
+ name: "tokenBOutAmount"
3094
+ type: "u64"
3095
+ index: false
3096
+ },
3097
+ ]
3098
+ },
3099
+ {
3100
+ name: "BootstrapLiquidity"
3101
+ fields: [
3102
+ {
3103
+ name: "lpMintAmount"
3104
+ type: "u64"
3105
+ index: false
3106
+ },
3107
+ {
3108
+ name: "tokenAAmount"
3109
+ type: "u64"
3110
+ index: false
3111
+ },
3112
+ {
3113
+ name: "tokenBAmount"
3114
+ type: "u64"
3115
+ index: false
3116
+ },
3117
+ {
3118
+ name: "pool"
3119
+ type: "publicKey"
3120
+ index: false
3121
+ },
3122
+ ]
3123
+ },
3124
+ {
3125
+ name: "Swap"
3126
+ fields: [
3127
+ {
3128
+ name: "inAmount"
3129
+ type: "u64"
3130
+ index: false
3131
+ },
3132
+ {
3133
+ name: "outAmount"
3134
+ type: "u64"
3135
+ index: false
3136
+ },
3137
+ {
3138
+ name: "tradeFee"
3139
+ type: "u64"
3140
+ index: false
3141
+ },
3142
+ {
3143
+ name: "protocolFee"
3144
+ type: "u64"
3145
+ index: false
3146
+ },
3147
+ {
3148
+ name: "hostFee"
3149
+ type: "u64"
3150
+ index: false
3151
+ },
3152
+ ]
3153
+ },
3154
+ {
3155
+ name: "SetPoolFees"
3156
+ fields: [
3157
+ {
3158
+ name: "tradeFeeNumerator"
3159
+ type: "u64"
3160
+ index: false
3161
+ },
3162
+ {
3163
+ name: "tradeFeeDenominator"
3164
+ type: "u64"
3165
+ index: false
3166
+ },
3167
+ {
3168
+ name: "protocolTradeFeeNumerator"
3169
+ type: "u64"
3170
+ index: false
3171
+ },
3172
+ {
3173
+ name: "protocolTradeFeeDenominator"
3174
+ type: "u64"
3175
+ index: false
3176
+ },
3177
+ {
3178
+ name: "pool"
3179
+ type: "publicKey"
3180
+ index: false
3181
+ },
3182
+ ]
3183
+ },
3184
+ {
3185
+ name: "PoolInfo"
3186
+ fields: [
3187
+ {
3188
+ name: "tokenAAmount"
3189
+ type: "u64"
3190
+ index: false
3191
+ },
3192
+ {
3193
+ name: "tokenBAmount"
3194
+ type: "u64"
3195
+ index: false
3196
+ },
3197
+ {
3198
+ name: "virtualPrice"
3199
+ type: "f64"
3200
+ index: false
3201
+ },
3202
+ {
3203
+ name: "currentTimestamp"
3204
+ type: "u64"
3205
+ index: false
3206
+ },
3207
+ ]
3208
+ },
3209
+ {
3210
+ name: "TransferAdmin"
3211
+ fields: [
3212
+ {
3213
+ name: "admin"
3214
+ type: "publicKey"
3215
+ index: false
3216
+ },
3217
+ {
3218
+ name: "newAdmin"
3219
+ type: "publicKey"
3220
+ index: false
3221
+ },
3222
+ {
3223
+ name: "pool"
3224
+ type: "publicKey"
3225
+ index: false
3226
+ },
3227
+ ]
3228
+ },
3229
+ {
3230
+ name: "OverrideCurveParam"
3231
+ fields: [
3232
+ {
3233
+ name: "newAmp"
3234
+ type: "u64"
3235
+ index: false
3236
+ },
3237
+ {
3238
+ name: "updatedTimestamp"
3239
+ type: "u64"
3240
+ index: false
3241
+ },
3242
+ {
3243
+ name: "pool"
3244
+ type: "publicKey"
3245
+ index: false
3246
+ },
3247
+ ]
3248
+ },
3249
+ {
3250
+ name: "PoolCreated"
3251
+ fields: [
3252
+ {
3253
+ name: "lpMint"
3254
+ type: "publicKey"
3255
+ index: false
3256
+ },
3257
+ {
3258
+ name: "tokenAMint"
3259
+ type: "publicKey"
3260
+ index: false
3261
+ },
3262
+ {
3263
+ name: "tokenBMint"
3264
+ type: "publicKey"
3265
+ index: false
3266
+ },
3267
+ {
3268
+ name: "poolType"
3269
+ type: {
3270
+ defined: "PoolType"
3271
+ }
3272
+ index: false
3273
+ },
3274
+ {
3275
+ name: "pool"
3276
+ type: "publicKey"
3277
+ index: false
3278
+ },
3279
+ ]
3280
+ },
3281
+ {
3282
+ name: "PoolEnabled"
3283
+ fields: [
3284
+ {
3285
+ name: "pool"
3286
+ type: "publicKey"
3287
+ index: false
3288
+ },
3289
+ {
3290
+ name: "enabled"
3291
+ type: "bool"
3292
+ index: false
3293
+ },
3294
+ ]
3295
+ },
3296
+ {
3297
+ name: "MigrateFeeAccount"
3298
+ fields: [
3299
+ {
3300
+ name: "pool"
3301
+ type: "publicKey"
3302
+ index: false
3303
+ },
3304
+ {
3305
+ name: "newAdminTokenAFee"
3306
+ type: "publicKey"
3307
+ index: false
3308
+ },
3309
+ {
3310
+ name: "newAdminTokenBFee"
3311
+ type: "publicKey"
3312
+ index: false
3313
+ },
3314
+ {
3315
+ name: "tokenAAmount"
3316
+ type: "u64"
3317
+ index: false
3318
+ },
3319
+ {
3320
+ name: "tokenBAmount"
3321
+ type: "u64"
3322
+ index: false
3323
+ },
3324
+ ]
3325
+ },
3326
+ {
3327
+ name: "CreateLockEscrow"
3328
+ fields: [
3329
+ {
3330
+ name: "pool"
3331
+ type: "publicKey"
3332
+ index: false
3333
+ },
3334
+ {
3335
+ name: "owner"
3336
+ type: "publicKey"
3337
+ index: false
3338
+ },
3339
+ ]
3340
+ },
3341
+ {
3342
+ name: "Lock"
3343
+ fields: [
3344
+ {
3345
+ name: "pool"
3346
+ type: "publicKey"
3347
+ index: false
3348
+ },
3349
+ {
3350
+ name: "owner"
3351
+ type: "publicKey"
3352
+ index: false
3353
+ },
3354
+ {
3355
+ name: "amount"
3356
+ type: "u64"
3357
+ index: false
3358
+ },
3359
+ ]
3360
+ },
3361
+ {
3362
+ name: "ClaimFee"
3363
+ fields: [
3364
+ {
3365
+ name: "pool"
3366
+ type: "publicKey"
3367
+ index: false
3368
+ },
3369
+ {
3370
+ name: "owner"
3371
+ type: "publicKey"
3372
+ index: false
3373
+ },
3374
+ {
3375
+ name: "amount"
3376
+ type: "u64"
3377
+ index: false
3378
+ },
3379
+ {
3380
+ name: "aFee"
3381
+ type: "u64"
3382
+ index: false
3383
+ },
3384
+ {
3385
+ name: "bFee"
3386
+ type: "u64"
3387
+ index: false
3388
+ },
3389
+ ]
3390
+ },
3391
+ {
3392
+ name: "CreateConfig"
3393
+ fields: [
3394
+ {
3395
+ name: "tradeFeeNumerator"
3396
+ type: "u64"
3397
+ index: false
3398
+ },
3399
+ {
3400
+ name: "protocolTradeFeeNumerator"
3401
+ type: "u64"
3402
+ index: false
3403
+ },
3404
+ {
3405
+ name: "config"
3406
+ type: "publicKey"
3407
+ index: false
3408
+ },
3409
+ ]
3410
+ },
3411
+ {
3412
+ name: "CloseConfig"
3413
+ fields: [
3414
+ {
3415
+ name: "config"
3416
+ type: "publicKey"
3417
+ index: false
3418
+ },
3419
+ ]
3420
+ },
3421
+ {
3422
+ name: "WithdrawProtocolFees"
3423
+ fields: [
3424
+ {
3425
+ name: "pool"
3426
+ type: "publicKey"
3427
+ index: false
3428
+ },
3429
+ {
3430
+ name: "protocolAFee"
3431
+ type: "u64"
3432
+ index: false
3433
+ },
3434
+ {
3435
+ name: "protocolBFee"
3436
+ type: "u64"
3437
+ index: false
3438
+ },
3439
+ {
3440
+ name: "protocolAFeeOwner"
3441
+ type: "publicKey"
3442
+ index: false
3443
+ },
3444
+ {
3445
+ name: "protocolBFeeOwner"
3446
+ type: "publicKey"
3447
+ index: false
3448
+ },
3449
+ ]
3450
+ },
3451
+ {
3452
+ name: "PartnerClaimFees"
3453
+ fields: [
3454
+ {
3455
+ name: "pool"
3456
+ type: "publicKey"
3457
+ index: false
3458
+ },
3459
+ {
3460
+ name: "feeA"
3461
+ type: "u64"
3462
+ index: false
3463
+ },
3464
+ {
3465
+ name: "feeB"
3466
+ type: "u64"
3467
+ index: false
3468
+ },
3469
+ {
3470
+ name: "partner"
3471
+ type: "publicKey"
3472
+ index: false
3473
+ },
3474
+ ]
3475
+ },
3476
+ ]
3477
+ errors: [
3478
+ {
3479
+ code: 6000
3480
+ name: "MathOverflow"
3481
+ msg: "Math operation overflow"
3482
+ },
3483
+ {
3484
+ code: 6001
3485
+ name: "InvalidFee"
3486
+ msg: "Invalid fee setup"
3487
+ },
3488
+ {
3489
+ code: 6002
3490
+ name: "InvalidInvariant"
3491
+ msg: "Invalid invariant d"
3492
+ },
3493
+ {
3494
+ code: 6003
3495
+ name: "FeeCalculationFailure"
3496
+ msg: "Fee calculation failure"
3497
+ },
3498
+ {
3499
+ code: 6004
3500
+ name: "ExceededSlippage"
3501
+ msg: "Exceeded slippage tolerance"
3502
+ },
3503
+ {
3504
+ code: 6005
3505
+ name: "InvalidCalculation"
3506
+ msg: "Invalid curve calculation"
3507
+ },
3508
+ {
3509
+ code: 6006
3510
+ name: "ZeroTradingTokens"
3511
+ msg: "Given pool token amount results in zero trading tokens"
3512
+ },
3513
+ {
3514
+ code: 6007
3515
+ name: "ConversionError"
3516
+ msg: "Math conversion overflow"
3517
+ },
3518
+ {
3519
+ code: 6008
3520
+ name: "FaultyLpMint"
3521
+ msg: "LP mint authority must be 'A' vault lp, without freeze authority, and 0 supply"
3522
+ },
3523
+ {
3524
+ code: 6009
3525
+ name: "MismatchedTokenMint"
3526
+ msg: "Token mint mismatched"
3527
+ },
3528
+ {
3529
+ code: 6010
3530
+ name: "MismatchedLpMint"
3531
+ msg: "LP mint mismatched"
3532
+ },
3533
+ {
3534
+ code: 6011
3535
+ name: "MismatchedOwner"
3536
+ msg: "Invalid lp token owner"
3537
+ },
3538
+ {
3539
+ code: 6012
3540
+ name: "InvalidVaultAccount"
3541
+ msg: "Invalid vault account"
3542
+ },
3543
+ {
3544
+ code: 6013
3545
+ name: "InvalidVaultLpAccount"
3546
+ msg: "Invalid vault lp account"
3547
+ },
3548
+ {
3549
+ code: 6014
3550
+ name: "InvalidPoolLpMintAccount"
3551
+ msg: "Invalid pool lp mint account"
3552
+ },
3553
+ {
3554
+ code: 6015
3555
+ name: "PoolDisabled"
3556
+ msg: "Pool disabled"
3557
+ },
3558
+ {
3559
+ code: 6016
3560
+ name: "InvalidAdminAccount"
3561
+ msg: "Invalid admin account"
3562
+ },
3563
+ {
3564
+ code: 6017
3565
+ name: "InvalidProtocolFeeAccount"
3566
+ msg: "Invalid protocol fee account"
3567
+ },
3568
+ {
3569
+ code: 6018
3570
+ name: "SameAdminAccount"
3571
+ msg: "Same admin account"
3572
+ },
3573
+ {
3574
+ code: 6019
3575
+ name: "IdenticalSourceDestination"
3576
+ msg: "Identical user source and destination token account"
3577
+ },
3578
+ {
3579
+ code: 6020
3580
+ name: "ApyCalculationError"
3581
+ msg: "Apy calculation error"
3582
+ },
3583
+ {
3584
+ code: 6021
3585
+ name: "InsufficientSnapshot"
3586
+ msg: "Insufficient virtual price snapshot"
3587
+ },
3588
+ {
3589
+ code: 6022
3590
+ name: "NonUpdatableCurve"
3591
+ msg: "Current curve is non-updatable"
3592
+ },
3593
+ {
3594
+ code: 6023
3595
+ name: "MisMatchedCurve"
3596
+ msg: "New curve is mismatched with old curve"
3597
+ },
3598
+ {
3599
+ code: 6024
3600
+ name: "InvalidAmplification"
3601
+ msg: "Amplification is invalid"
3602
+ },
3603
+ {
3604
+ code: 6025
3605
+ name: "UnsupportedOperation"
3606
+ msg: "Operation is not supported"
3607
+ },
3608
+ {
3609
+ code: 6026
3610
+ name: "ExceedMaxAChanges"
3611
+ msg: "Exceed max amplification changes"
3612
+ },
3613
+ {
3614
+ code: 6027
3615
+ name: "InvalidRemainingAccountsLen"
3616
+ msg: "Invalid remaining accounts length"
3617
+ },
3618
+ {
3619
+ code: 6028
3620
+ name: "InvalidRemainingAccounts"
3621
+ msg: "Invalid remaining account"
3622
+ },
3623
+ {
3624
+ code: 6029
3625
+ name: "MismatchedDepegMint"
3626
+ msg: "Token mint B doesn't matches depeg type token mint"
3627
+ },
3628
+ {
3629
+ code: 6030
3630
+ name: "InvalidApyAccount"
3631
+ msg: "Invalid APY account"
3632
+ },
3633
+ {
3634
+ code: 6031
3635
+ name: "InvalidTokenMultiplier"
3636
+ msg: "Invalid token multiplier"
3637
+ },
3638
+ {
3639
+ code: 6032
3640
+ name: "InvalidDepegInformation"
3641
+ msg: "Invalid depeg information"
3642
+ },
3643
+ {
3644
+ code: 6033
3645
+ name: "UpdateTimeConstraint"
3646
+ msg: "Update time constraint violated"
3647
+ },
3648
+ {
3649
+ code: 6034
3650
+ name: "ExceedMaxFeeBps"
3651
+ msg: "Exceeded max fee bps"
3652
+ },
3653
+ {
3654
+ code: 6035
3655
+ name: "InvalidAdmin"
3656
+ msg: "Invalid admin"
3657
+ },
3658
+ {
3659
+ code: 6036
3660
+ name: "PoolIsNotPermissioned"
3661
+ msg: "Pool is not permissioned"
3662
+ },
3663
+ {
3664
+ code: 6037
3665
+ name: "InvalidDepositAmount"
3666
+ msg: "Invalid deposit amount"
3667
+ },
3668
+ {
3669
+ code: 6038
3670
+ name: "InvalidFeeOwner"
3671
+ msg: "Invalid fee owner"
3672
+ },
3673
+ {
3674
+ code: 6039
3675
+ name: "NonDepletedPool"
3676
+ msg: "Pool is not depleted"
3677
+ },
3678
+ {
3679
+ code: 6040
3680
+ name: "AmountNotPeg"
3681
+ msg: "Token amount is not 1:1"
3682
+ },
3683
+ {
3684
+ code: 6041
3685
+ name: "AmountIsZero"
3686
+ msg: "Amount is zero"
3687
+ },
3688
+ {
3689
+ code: 6042
3690
+ name: "TypeCastFailed"
3691
+ msg: "Type cast error"
3692
+ },
3693
+ {
3694
+ code: 6043
3695
+ name: "AmountIsNotEnough"
3696
+ msg: "Amount is not enough"
3697
+ },
3698
+ {
3699
+ code: 6044
3700
+ name: "InvalidActivationDuration"
3701
+ msg: "Invalid activation duration"
3702
+ },
3703
+ {
3704
+ code: 6045
3705
+ name: "PoolIsNotLaunchPool"
3706
+ msg: "Pool is not launch pool"
3707
+ },
3708
+ {
3709
+ code: 6046
3710
+ name: "UnableToModifyActivationPoint"
3711
+ msg: "Unable to modify activation point"
3712
+ },
3713
+ {
3714
+ code: 6047
3715
+ name: "InvalidAuthorityToCreateThePool"
3716
+ msg: "Invalid authority to create the pool"
3717
+ },
3718
+ {
3719
+ code: 6048
3720
+ name: "InvalidActivationType"
3721
+ msg: "Invalid activation type"
3722
+ },
3723
+ {
3724
+ code: 6049
3725
+ name: "InvalidActivationPoint"
3726
+ msg: "Invalid activation point"
3727
+ },
3728
+ {
3729
+ code: 6050
3730
+ name: "PreActivationSwapStarted"
3731
+ msg: "Pre activation swap window started"
3732
+ },
3733
+ {
3734
+ code: 6051
3735
+ name: "InvalidPoolType"
3736
+ msg: "Invalid pool type"
3737
+ },
3738
+ {
3739
+ code: 6052
3740
+ name: "InvalidQuoteMint"
3741
+ msg: "Quote token must be SOL,USDC"
3742
+ },
3743
+ ]
3744
+ }