@meteora-ag/dlmm 1.3.15 → 1.3.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,11 +1,12 @@
1
1
  import * as _coral_xyz_anchor from '@coral-xyz/anchor';
2
2
  import { BN, Program, IdlAccounts, ProgramAccount, IdlTypes, EventParser } from '@coral-xyz/anchor';
3
3
  import * as _solana_web3_js from '@solana/web3.js';
4
- import { PublicKey, TransactionInstruction, Connection, Transaction, Cluster } from '@solana/web3.js';
4
+ import { PublicKey, AccountMeta, TransactionInstruction, Connection, Transaction, Cluster } from '@solana/web3.js';
5
5
  import Decimal from 'decimal.js';
6
+ import { Mint } from '@solana/spl-token';
6
7
 
7
8
  type LbClmm = {
8
- "version": "0.8.6";
9
+ "version": "0.9.0";
9
10
  "name": "lb_clmm";
10
11
  "constants": [
11
12
  {
@@ -27,6 +28,20 @@ type LbClmm = {
27
28
  };
28
29
  "value": "70";
29
30
  },
31
+ {
32
+ "name": "MAX_RESIZE_LENGTH";
33
+ "type": {
34
+ "defined": "usize";
35
+ };
36
+ "value": "70";
37
+ },
38
+ {
39
+ "name": "POSITION_MAX_LENGTH";
40
+ "type": {
41
+ "defined": "usize";
42
+ };
43
+ "value": "1400";
44
+ },
30
45
  {
31
46
  "name": "MIN_BIN_ID";
32
47
  "type": "i32";
@@ -143,10 +158,20 @@ type LbClmm = {
143
158
  "type": "bytes";
144
159
  "value": "[112, 114, 101, 115, 101, 116, 95, 112, 97, 114, 97, 109, 101, 116, 101, 114]";
145
160
  },
161
+ {
162
+ "name": "PRESET_PARAMETER2";
163
+ "type": "bytes";
164
+ "value": "[112, 114, 101, 115, 101, 116, 95, 112, 97, 114, 97, 109, 101, 116, 101, 114, 50]";
165
+ },
146
166
  {
147
167
  "name": "POSITION";
148
168
  "type": "bytes";
149
169
  "value": "[112, 111, 115, 105, 116, 105, 111, 110]";
170
+ },
171
+ {
172
+ "name": "CLAIM_PROTOCOL_FEE_OPERATOR";
173
+ "type": "bytes";
174
+ "value": "[99, 102, 95, 111, 112, 101, 114, 97, 116, 111, 114]";
150
175
  }
151
176
  ];
152
177
  "instructions": [
@@ -286,7 +311,24 @@ type LbClmm = {
286
311
  "isSigner": true;
287
312
  },
288
313
  {
289
- "name": "tokenProgram";
314
+ "name": "tokenBadgeX";
315
+ "isMut": false;
316
+ "isSigner": false;
317
+ "isOptional": true;
318
+ },
319
+ {
320
+ "name": "tokenBadgeY";
321
+ "isMut": false;
322
+ "isSigner": false;
323
+ "isOptional": true;
324
+ },
325
+ {
326
+ "name": "tokenProgramX";
327
+ "isMut": false;
328
+ "isSigner": false;
329
+ },
330
+ {
331
+ "name": "tokenProgramY";
290
332
  "isMut": false;
291
333
  "isSigner": false;
292
334
  },
@@ -1545,6 +1587,19 @@ type LbClmm = {
1545
1587
  "isMut": true;
1546
1588
  "isSigner": false;
1547
1589
  },
1590
+ {
1591
+ "name": "claimFeeOperator";
1592
+ "isMut": false;
1593
+ "isSigner": false;
1594
+ },
1595
+ {
1596
+ "name": "operator";
1597
+ "isMut": false;
1598
+ "isSigner": true;
1599
+ "docs": [
1600
+ "operator"
1601
+ ];
1602
+ },
1548
1603
  {
1549
1604
  "name": "tokenXProgram";
1550
1605
  "isMut": false;
@@ -1554,6 +1609,11 @@ type LbClmm = {
1554
1609
  "name": "tokenYProgram";
1555
1610
  "isMut": false;
1556
1611
  "isSigner": false;
1612
+ },
1613
+ {
1614
+ "name": "memoProgram";
1615
+ "isMut": false;
1616
+ "isSigner": false;
1557
1617
  }
1558
1618
  ];
1559
1619
  "args": [
@@ -1564,6 +1624,12 @@ type LbClmm = {
1564
1624
  {
1565
1625
  "name": "amountY";
1566
1626
  "type": "u64";
1627
+ },
1628
+ {
1629
+ "name": "remainingAccountsInfo";
1630
+ "type": {
1631
+ "defined": "RemainingAccountsInfo";
1632
+ };
1567
1633
  }
1568
1634
  ];
1569
1635
  },
@@ -1585,6 +1651,12 @@ type LbClmm = {
1585
1651
  "isMut": false;
1586
1652
  "isSigner": false;
1587
1653
  },
1654
+ {
1655
+ "name": "tokenBadge";
1656
+ "isMut": false;
1657
+ "isSigner": false;
1658
+ "isOptional": true;
1659
+ },
1588
1660
  {
1589
1661
  "name": "admin";
1590
1662
  "isMut": true;
@@ -1692,6 +1764,12 @@ type LbClmm = {
1692
1764
  {
1693
1765
  "name": "carryForward";
1694
1766
  "type": "bool";
1767
+ },
1768
+ {
1769
+ "name": "remainingAccountsInfo";
1770
+ "type": {
1771
+ "defined": "RemainingAccountsInfo";
1772
+ };
1695
1773
  }
1696
1774
  ];
1697
1775
  },
@@ -2114,6 +2192,27 @@ type LbClmm = {
2114
2192
  ];
2115
2193
  "args": [];
2116
2194
  },
2195
+ {
2196
+ "name": "closePresetParameter2";
2197
+ "accounts": [
2198
+ {
2199
+ "name": "presetParameter";
2200
+ "isMut": true;
2201
+ "isSigner": false;
2202
+ },
2203
+ {
2204
+ "name": "admin";
2205
+ "isMut": true;
2206
+ "isSigner": true;
2207
+ },
2208
+ {
2209
+ "name": "rentReceiver";
2210
+ "isMut": true;
2211
+ "isSigner": false;
2212
+ }
2213
+ ];
2214
+ "args": [];
2215
+ },
2117
2216
  {
2118
2217
  "name": "removeAllLiquidity";
2119
2218
  "accounts": [
@@ -2358,6 +2457,11 @@ type LbClmm = {
2358
2457
  "isMut": false;
2359
2458
  "isSigner": false;
2360
2459
  },
2460
+ {
2461
+ "name": "memoProgram";
2462
+ "isMut": false;
2463
+ "isSigner": false;
2464
+ },
2361
2465
  {
2362
2466
  "name": "eventAuthority";
2363
2467
  "isMut": false;
@@ -2373,6 +2477,12 @@ type LbClmm = {
2373
2477
  {
2374
2478
  "name": "rewardIndex";
2375
2479
  "type": "u64";
2480
+ },
2481
+ {
2482
+ "name": "remainingAccountsInfo";
2483
+ "type": {
2484
+ "defined": "RemainingAccountsInfo";
2485
+ };
2376
2486
  }
2377
2487
  ];
2378
2488
  },
@@ -2677,135 +2787,1484 @@ type LbClmm = {
2677
2787
  "type": "u8";
2678
2788
  }
2679
2789
  ];
2680
- }
2681
- ];
2682
- "accounts": [
2790
+ },
2683
2791
  {
2684
- "name": "binArrayBitmapExtension";
2685
- "type": {
2686
- "kind": "struct";
2687
- "fields": [
2688
- {
2689
- "name": "lbPair";
2690
- "type": "publicKey";
2691
- },
2692
- {
2693
- "name": "positiveBinArrayBitmap";
2694
- "docs": [
2695
- "Packed initialized bin array state for start_bin_index is positive"
2696
- ];
2697
- "type": {
2698
- "array": [
2699
- {
2700
- "array": [
2701
- "u64",
2702
- 8
2703
- ];
2704
- },
2705
- 12
2706
- ];
2707
- };
2708
- },
2709
- {
2710
- "name": "negativeBinArrayBitmap";
2711
- "docs": [
2712
- "Packed initialized bin array state for start_bin_index is negative"
2713
- ];
2714
- "type": {
2715
- "array": [
2716
- {
2717
- "array": [
2718
- "u64",
2719
- 8
2720
- ];
2721
- },
2722
- 12
2723
- ];
2724
- };
2725
- }
2726
- ];
2727
- };
2792
+ "name": "initializeTokenBadge";
2793
+ "accounts": [
2794
+ {
2795
+ "name": "tokenMint";
2796
+ "isMut": false;
2797
+ "isSigner": false;
2798
+ },
2799
+ {
2800
+ "name": "tokenBadge";
2801
+ "isMut": true;
2802
+ "isSigner": false;
2803
+ },
2804
+ {
2805
+ "name": "admin";
2806
+ "isMut": true;
2807
+ "isSigner": true;
2808
+ },
2809
+ {
2810
+ "name": "systemProgram";
2811
+ "isMut": false;
2812
+ "isSigner": false;
2813
+ }
2814
+ ];
2815
+ "args": [];
2728
2816
  },
2729
2817
  {
2730
- "name": "binArray";
2731
- "docs": [
2732
- "An account to contain a range of bin. For example: Bin 100 <-> 200.",
2733
- "For example:",
2734
- "BinArray index: 0 contains bin 0 <-> 599",
2735
- "index: 2 contains bin 600 <-> 1199, ..."
2818
+ "name": "createClaimProtocolFeeOperator";
2819
+ "accounts": [
2820
+ {
2821
+ "name": "claimFeeOperator";
2822
+ "isMut": true;
2823
+ "isSigner": false;
2824
+ },
2825
+ {
2826
+ "name": "operator";
2827
+ "isMut": false;
2828
+ "isSigner": false;
2829
+ },
2830
+ {
2831
+ "name": "admin";
2832
+ "isMut": true;
2833
+ "isSigner": true;
2834
+ },
2835
+ {
2836
+ "name": "systemProgram";
2837
+ "isMut": false;
2838
+ "isSigner": false;
2839
+ }
2736
2840
  ];
2737
- "type": {
2738
- "kind": "struct";
2739
- "fields": [
2740
- {
2741
- "name": "index";
2742
- "type": "i64";
2743
- },
2744
- {
2745
- "name": "version";
2746
- "docs": [
2747
- "Version of binArray"
2748
- ];
2749
- "type": "u8";
2750
- },
2751
- {
2752
- "name": "padding";
2753
- "type": {
2754
- "array": [
2755
- "u8",
2756
- 7
2757
- ];
2758
- };
2759
- },
2760
- {
2761
- "name": "lbPair";
2762
- "type": "publicKey";
2763
- },
2764
- {
2765
- "name": "bins";
2766
- "type": {
2767
- "array": [
2768
- {
2769
- "defined": "Bin";
2770
- },
2771
- 70
2772
- ];
2773
- };
2774
- }
2775
- ];
2776
- };
2841
+ "args": [];
2777
2842
  },
2778
2843
  {
2779
- "name": "lbPair";
2780
- "type": {
2781
- "kind": "struct";
2782
- "fields": [
2783
- {
2784
- "name": "parameters";
2785
- "type": {
2786
- "defined": "StaticParameters";
2787
- };
2788
- },
2789
- {
2790
- "name": "vParameters";
2791
- "type": {
2792
- "defined": "VariableParameters";
2793
- };
2794
- },
2795
- {
2796
- "name": "bumpSeed";
2797
- "type": {
2798
- "array": [
2799
- "u8",
2800
- 1
2801
- ];
2802
- };
2803
- },
2804
- {
2805
- "name": "binStepSeed";
2806
- "docs": [
2807
- "Bin step signer seed"
2808
- ];
2844
+ "name": "closeClaimProtocolFeeOperator";
2845
+ "accounts": [
2846
+ {
2847
+ "name": "claimFeeOperator";
2848
+ "isMut": true;
2849
+ "isSigner": false;
2850
+ },
2851
+ {
2852
+ "name": "rentReceiver";
2853
+ "isMut": true;
2854
+ "isSigner": false;
2855
+ },
2856
+ {
2857
+ "name": "admin";
2858
+ "isMut": false;
2859
+ "isSigner": true;
2860
+ }
2861
+ ];
2862
+ "args": [];
2863
+ },
2864
+ {
2865
+ "name": "initializePresetParameter2";
2866
+ "accounts": [
2867
+ {
2868
+ "name": "presetParameter";
2869
+ "isMut": true;
2870
+ "isSigner": false;
2871
+ },
2872
+ {
2873
+ "name": "admin";
2874
+ "isMut": true;
2875
+ "isSigner": true;
2876
+ },
2877
+ {
2878
+ "name": "systemProgram";
2879
+ "isMut": false;
2880
+ "isSigner": false;
2881
+ }
2882
+ ];
2883
+ "args": [
2884
+ {
2885
+ "name": "ix";
2886
+ "type": {
2887
+ "defined": "InitPresetParameters2Ix";
2888
+ };
2889
+ }
2890
+ ];
2891
+ },
2892
+ {
2893
+ "name": "initializeLbPair2";
2894
+ "accounts": [
2895
+ {
2896
+ "name": "lbPair";
2897
+ "isMut": true;
2898
+ "isSigner": false;
2899
+ },
2900
+ {
2901
+ "name": "binArrayBitmapExtension";
2902
+ "isMut": true;
2903
+ "isSigner": false;
2904
+ "isOptional": true;
2905
+ },
2906
+ {
2907
+ "name": "tokenMintX";
2908
+ "isMut": false;
2909
+ "isSigner": false;
2910
+ },
2911
+ {
2912
+ "name": "tokenMintY";
2913
+ "isMut": false;
2914
+ "isSigner": false;
2915
+ },
2916
+ {
2917
+ "name": "reserveX";
2918
+ "isMut": true;
2919
+ "isSigner": false;
2920
+ },
2921
+ {
2922
+ "name": "reserveY";
2923
+ "isMut": true;
2924
+ "isSigner": false;
2925
+ },
2926
+ {
2927
+ "name": "oracle";
2928
+ "isMut": true;
2929
+ "isSigner": false;
2930
+ },
2931
+ {
2932
+ "name": "presetParameter";
2933
+ "isMut": false;
2934
+ "isSigner": false;
2935
+ },
2936
+ {
2937
+ "name": "funder";
2938
+ "isMut": true;
2939
+ "isSigner": true;
2940
+ },
2941
+ {
2942
+ "name": "tokenBadgeX";
2943
+ "isMut": false;
2944
+ "isSigner": false;
2945
+ "isOptional": true;
2946
+ },
2947
+ {
2948
+ "name": "tokenBadgeY";
2949
+ "isMut": false;
2950
+ "isSigner": false;
2951
+ "isOptional": true;
2952
+ },
2953
+ {
2954
+ "name": "tokenProgramX";
2955
+ "isMut": false;
2956
+ "isSigner": false;
2957
+ },
2958
+ {
2959
+ "name": "tokenProgramY";
2960
+ "isMut": false;
2961
+ "isSigner": false;
2962
+ },
2963
+ {
2964
+ "name": "systemProgram";
2965
+ "isMut": false;
2966
+ "isSigner": false;
2967
+ },
2968
+ {
2969
+ "name": "eventAuthority";
2970
+ "isMut": false;
2971
+ "isSigner": false;
2972
+ },
2973
+ {
2974
+ "name": "program";
2975
+ "isMut": false;
2976
+ "isSigner": false;
2977
+ }
2978
+ ];
2979
+ "args": [
2980
+ {
2981
+ "name": "params";
2982
+ "type": {
2983
+ "defined": "InitializeLbPair2Params";
2984
+ };
2985
+ }
2986
+ ];
2987
+ },
2988
+ {
2989
+ "name": "initializeCustomizablePermissionlessLbPair2";
2990
+ "accounts": [
2991
+ {
2992
+ "name": "lbPair";
2993
+ "isMut": true;
2994
+ "isSigner": false;
2995
+ },
2996
+ {
2997
+ "name": "binArrayBitmapExtension";
2998
+ "isMut": true;
2999
+ "isSigner": false;
3000
+ "isOptional": true;
3001
+ },
3002
+ {
3003
+ "name": "tokenMintX";
3004
+ "isMut": false;
3005
+ "isSigner": false;
3006
+ },
3007
+ {
3008
+ "name": "tokenMintY";
3009
+ "isMut": false;
3010
+ "isSigner": false;
3011
+ },
3012
+ {
3013
+ "name": "reserveX";
3014
+ "isMut": true;
3015
+ "isSigner": false;
3016
+ },
3017
+ {
3018
+ "name": "reserveY";
3019
+ "isMut": true;
3020
+ "isSigner": false;
3021
+ },
3022
+ {
3023
+ "name": "oracle";
3024
+ "isMut": true;
3025
+ "isSigner": false;
3026
+ },
3027
+ {
3028
+ "name": "userTokenX";
3029
+ "isMut": false;
3030
+ "isSigner": false;
3031
+ },
3032
+ {
3033
+ "name": "funder";
3034
+ "isMut": true;
3035
+ "isSigner": true;
3036
+ },
3037
+ {
3038
+ "name": "tokenBadgeX";
3039
+ "isMut": false;
3040
+ "isSigner": false;
3041
+ "isOptional": true;
3042
+ },
3043
+ {
3044
+ "name": "tokenBadgeY";
3045
+ "isMut": false;
3046
+ "isSigner": false;
3047
+ "isOptional": true;
3048
+ },
3049
+ {
3050
+ "name": "tokenProgramX";
3051
+ "isMut": false;
3052
+ "isSigner": false;
3053
+ },
3054
+ {
3055
+ "name": "tokenProgramY";
3056
+ "isMut": false;
3057
+ "isSigner": false;
3058
+ },
3059
+ {
3060
+ "name": "systemProgram";
3061
+ "isMut": false;
3062
+ "isSigner": false;
3063
+ },
3064
+ {
3065
+ "name": "userTokenY";
3066
+ "isMut": false;
3067
+ "isSigner": false;
3068
+ },
3069
+ {
3070
+ "name": "eventAuthority";
3071
+ "isMut": false;
3072
+ "isSigner": false;
3073
+ },
3074
+ {
3075
+ "name": "program";
3076
+ "isMut": false;
3077
+ "isSigner": false;
3078
+ }
3079
+ ];
3080
+ "args": [
3081
+ {
3082
+ "name": "params";
3083
+ "type": {
3084
+ "defined": "CustomizableParams";
3085
+ };
3086
+ }
3087
+ ];
3088
+ },
3089
+ {
3090
+ "name": "claimFee2";
3091
+ "accounts": [
3092
+ {
3093
+ "name": "lbPair";
3094
+ "isMut": true;
3095
+ "isSigner": false;
3096
+ },
3097
+ {
3098
+ "name": "position";
3099
+ "isMut": true;
3100
+ "isSigner": false;
3101
+ },
3102
+ {
3103
+ "name": "sender";
3104
+ "isMut": false;
3105
+ "isSigner": true;
3106
+ },
3107
+ {
3108
+ "name": "reserveX";
3109
+ "isMut": true;
3110
+ "isSigner": false;
3111
+ },
3112
+ {
3113
+ "name": "reserveY";
3114
+ "isMut": true;
3115
+ "isSigner": false;
3116
+ },
3117
+ {
3118
+ "name": "userTokenX";
3119
+ "isMut": true;
3120
+ "isSigner": false;
3121
+ },
3122
+ {
3123
+ "name": "userTokenY";
3124
+ "isMut": true;
3125
+ "isSigner": false;
3126
+ },
3127
+ {
3128
+ "name": "tokenXMint";
3129
+ "isMut": false;
3130
+ "isSigner": false;
3131
+ },
3132
+ {
3133
+ "name": "tokenYMint";
3134
+ "isMut": false;
3135
+ "isSigner": false;
3136
+ },
3137
+ {
3138
+ "name": "tokenProgramX";
3139
+ "isMut": false;
3140
+ "isSigner": false;
3141
+ },
3142
+ {
3143
+ "name": "tokenProgramY";
3144
+ "isMut": false;
3145
+ "isSigner": false;
3146
+ },
3147
+ {
3148
+ "name": "memoProgram";
3149
+ "isMut": false;
3150
+ "isSigner": false;
3151
+ },
3152
+ {
3153
+ "name": "eventAuthority";
3154
+ "isMut": false;
3155
+ "isSigner": false;
3156
+ },
3157
+ {
3158
+ "name": "program";
3159
+ "isMut": false;
3160
+ "isSigner": false;
3161
+ }
3162
+ ];
3163
+ "args": [
3164
+ {
3165
+ "name": "minBinId";
3166
+ "type": "i32";
3167
+ },
3168
+ {
3169
+ "name": "maxBinId";
3170
+ "type": "i32";
3171
+ },
3172
+ {
3173
+ "name": "remainingAccountsInfo";
3174
+ "type": {
3175
+ "defined": "RemainingAccountsInfo";
3176
+ };
3177
+ }
3178
+ ];
3179
+ },
3180
+ {
3181
+ "name": "claimReward2";
3182
+ "accounts": [
3183
+ {
3184
+ "name": "lbPair";
3185
+ "isMut": true;
3186
+ "isSigner": false;
3187
+ },
3188
+ {
3189
+ "name": "position";
3190
+ "isMut": true;
3191
+ "isSigner": false;
3192
+ },
3193
+ {
3194
+ "name": "sender";
3195
+ "isMut": false;
3196
+ "isSigner": true;
3197
+ },
3198
+ {
3199
+ "name": "rewardVault";
3200
+ "isMut": true;
3201
+ "isSigner": false;
3202
+ },
3203
+ {
3204
+ "name": "rewardMint";
3205
+ "isMut": false;
3206
+ "isSigner": false;
3207
+ },
3208
+ {
3209
+ "name": "userTokenAccount";
3210
+ "isMut": true;
3211
+ "isSigner": false;
3212
+ },
3213
+ {
3214
+ "name": "tokenProgram";
3215
+ "isMut": false;
3216
+ "isSigner": false;
3217
+ },
3218
+ {
3219
+ "name": "memoProgram";
3220
+ "isMut": false;
3221
+ "isSigner": false;
3222
+ },
3223
+ {
3224
+ "name": "eventAuthority";
3225
+ "isMut": false;
3226
+ "isSigner": false;
3227
+ },
3228
+ {
3229
+ "name": "program";
3230
+ "isMut": false;
3231
+ "isSigner": false;
3232
+ }
3233
+ ];
3234
+ "args": [
3235
+ {
3236
+ "name": "rewardIndex";
3237
+ "type": "u64";
3238
+ },
3239
+ {
3240
+ "name": "minBinId";
3241
+ "type": "i32";
3242
+ },
3243
+ {
3244
+ "name": "maxBinId";
3245
+ "type": "i32";
3246
+ },
3247
+ {
3248
+ "name": "remainingAccountsInfo";
3249
+ "type": {
3250
+ "defined": "RemainingAccountsInfo";
3251
+ };
3252
+ }
3253
+ ];
3254
+ },
3255
+ {
3256
+ "name": "addLiquidity2";
3257
+ "accounts": [
3258
+ {
3259
+ "name": "position";
3260
+ "isMut": true;
3261
+ "isSigner": false;
3262
+ },
3263
+ {
3264
+ "name": "lbPair";
3265
+ "isMut": true;
3266
+ "isSigner": false;
3267
+ },
3268
+ {
3269
+ "name": "binArrayBitmapExtension";
3270
+ "isMut": true;
3271
+ "isSigner": false;
3272
+ "isOptional": true;
3273
+ },
3274
+ {
3275
+ "name": "userTokenX";
3276
+ "isMut": true;
3277
+ "isSigner": false;
3278
+ },
3279
+ {
3280
+ "name": "userTokenY";
3281
+ "isMut": true;
3282
+ "isSigner": false;
3283
+ },
3284
+ {
3285
+ "name": "reserveX";
3286
+ "isMut": true;
3287
+ "isSigner": false;
3288
+ },
3289
+ {
3290
+ "name": "reserveY";
3291
+ "isMut": true;
3292
+ "isSigner": false;
3293
+ },
3294
+ {
3295
+ "name": "tokenXMint";
3296
+ "isMut": false;
3297
+ "isSigner": false;
3298
+ },
3299
+ {
3300
+ "name": "tokenYMint";
3301
+ "isMut": false;
3302
+ "isSigner": false;
3303
+ },
3304
+ {
3305
+ "name": "sender";
3306
+ "isMut": false;
3307
+ "isSigner": true;
3308
+ },
3309
+ {
3310
+ "name": "tokenXProgram";
3311
+ "isMut": false;
3312
+ "isSigner": false;
3313
+ },
3314
+ {
3315
+ "name": "tokenYProgram";
3316
+ "isMut": false;
3317
+ "isSigner": false;
3318
+ },
3319
+ {
3320
+ "name": "eventAuthority";
3321
+ "isMut": false;
3322
+ "isSigner": false;
3323
+ },
3324
+ {
3325
+ "name": "program";
3326
+ "isMut": false;
3327
+ "isSigner": false;
3328
+ }
3329
+ ];
3330
+ "args": [
3331
+ {
3332
+ "name": "liquidityParameter";
3333
+ "type": {
3334
+ "defined": "LiquidityParameter";
3335
+ };
3336
+ },
3337
+ {
3338
+ "name": "remainingAccountsInfo";
3339
+ "type": {
3340
+ "defined": "RemainingAccountsInfo";
3341
+ };
3342
+ }
3343
+ ];
3344
+ },
3345
+ {
3346
+ "name": "addLiquidityByStrategy2";
3347
+ "accounts": [
3348
+ {
3349
+ "name": "position";
3350
+ "isMut": true;
3351
+ "isSigner": false;
3352
+ },
3353
+ {
3354
+ "name": "lbPair";
3355
+ "isMut": true;
3356
+ "isSigner": false;
3357
+ },
3358
+ {
3359
+ "name": "binArrayBitmapExtension";
3360
+ "isMut": true;
3361
+ "isSigner": false;
3362
+ "isOptional": true;
3363
+ },
3364
+ {
3365
+ "name": "userTokenX";
3366
+ "isMut": true;
3367
+ "isSigner": false;
3368
+ },
3369
+ {
3370
+ "name": "userTokenY";
3371
+ "isMut": true;
3372
+ "isSigner": false;
3373
+ },
3374
+ {
3375
+ "name": "reserveX";
3376
+ "isMut": true;
3377
+ "isSigner": false;
3378
+ },
3379
+ {
3380
+ "name": "reserveY";
3381
+ "isMut": true;
3382
+ "isSigner": false;
3383
+ },
3384
+ {
3385
+ "name": "tokenXMint";
3386
+ "isMut": false;
3387
+ "isSigner": false;
3388
+ },
3389
+ {
3390
+ "name": "tokenYMint";
3391
+ "isMut": false;
3392
+ "isSigner": false;
3393
+ },
3394
+ {
3395
+ "name": "sender";
3396
+ "isMut": false;
3397
+ "isSigner": true;
3398
+ },
3399
+ {
3400
+ "name": "tokenXProgram";
3401
+ "isMut": false;
3402
+ "isSigner": false;
3403
+ },
3404
+ {
3405
+ "name": "tokenYProgram";
3406
+ "isMut": false;
3407
+ "isSigner": false;
3408
+ },
3409
+ {
3410
+ "name": "eventAuthority";
3411
+ "isMut": false;
3412
+ "isSigner": false;
3413
+ },
3414
+ {
3415
+ "name": "program";
3416
+ "isMut": false;
3417
+ "isSigner": false;
3418
+ }
3419
+ ];
3420
+ "args": [
3421
+ {
3422
+ "name": "liquidityParameter";
3423
+ "type": {
3424
+ "defined": "LiquidityParameterByStrategy";
3425
+ };
3426
+ },
3427
+ {
3428
+ "name": "remainingAccountsInfo";
3429
+ "type": {
3430
+ "defined": "RemainingAccountsInfo";
3431
+ };
3432
+ }
3433
+ ];
3434
+ },
3435
+ {
3436
+ "name": "addLiquidityOneSidePrecise2";
3437
+ "accounts": [
3438
+ {
3439
+ "name": "position";
3440
+ "isMut": true;
3441
+ "isSigner": false;
3442
+ },
3443
+ {
3444
+ "name": "lbPair";
3445
+ "isMut": true;
3446
+ "isSigner": false;
3447
+ },
3448
+ {
3449
+ "name": "binArrayBitmapExtension";
3450
+ "isMut": true;
3451
+ "isSigner": false;
3452
+ "isOptional": true;
3453
+ },
3454
+ {
3455
+ "name": "userToken";
3456
+ "isMut": true;
3457
+ "isSigner": false;
3458
+ },
3459
+ {
3460
+ "name": "reserve";
3461
+ "isMut": true;
3462
+ "isSigner": false;
3463
+ },
3464
+ {
3465
+ "name": "tokenMint";
3466
+ "isMut": false;
3467
+ "isSigner": false;
3468
+ },
3469
+ {
3470
+ "name": "sender";
3471
+ "isMut": false;
3472
+ "isSigner": true;
3473
+ },
3474
+ {
3475
+ "name": "tokenProgram";
3476
+ "isMut": false;
3477
+ "isSigner": false;
3478
+ },
3479
+ {
3480
+ "name": "eventAuthority";
3481
+ "isMut": false;
3482
+ "isSigner": false;
3483
+ },
3484
+ {
3485
+ "name": "program";
3486
+ "isMut": false;
3487
+ "isSigner": false;
3488
+ }
3489
+ ];
3490
+ "args": [
3491
+ {
3492
+ "name": "liquidityParameter";
3493
+ "type": {
3494
+ "defined": "AddLiquiditySingleSidePreciseParameter2";
3495
+ };
3496
+ },
3497
+ {
3498
+ "name": "remainingAccountsInfo";
3499
+ "type": {
3500
+ "defined": "RemainingAccountsInfo";
3501
+ };
3502
+ }
3503
+ ];
3504
+ },
3505
+ {
3506
+ "name": "removeLiquidity2";
3507
+ "accounts": [
3508
+ {
3509
+ "name": "position";
3510
+ "isMut": true;
3511
+ "isSigner": false;
3512
+ },
3513
+ {
3514
+ "name": "lbPair";
3515
+ "isMut": true;
3516
+ "isSigner": false;
3517
+ },
3518
+ {
3519
+ "name": "binArrayBitmapExtension";
3520
+ "isMut": true;
3521
+ "isSigner": false;
3522
+ "isOptional": true;
3523
+ },
3524
+ {
3525
+ "name": "userTokenX";
3526
+ "isMut": true;
3527
+ "isSigner": false;
3528
+ },
3529
+ {
3530
+ "name": "userTokenY";
3531
+ "isMut": true;
3532
+ "isSigner": false;
3533
+ },
3534
+ {
3535
+ "name": "reserveX";
3536
+ "isMut": true;
3537
+ "isSigner": false;
3538
+ },
3539
+ {
3540
+ "name": "reserveY";
3541
+ "isMut": true;
3542
+ "isSigner": false;
3543
+ },
3544
+ {
3545
+ "name": "tokenXMint";
3546
+ "isMut": false;
3547
+ "isSigner": false;
3548
+ },
3549
+ {
3550
+ "name": "tokenYMint";
3551
+ "isMut": false;
3552
+ "isSigner": false;
3553
+ },
3554
+ {
3555
+ "name": "sender";
3556
+ "isMut": false;
3557
+ "isSigner": true;
3558
+ },
3559
+ {
3560
+ "name": "tokenXProgram";
3561
+ "isMut": false;
3562
+ "isSigner": false;
3563
+ },
3564
+ {
3565
+ "name": "tokenYProgram";
3566
+ "isMut": false;
3567
+ "isSigner": false;
3568
+ },
3569
+ {
3570
+ "name": "memoProgram";
3571
+ "isMut": false;
3572
+ "isSigner": false;
3573
+ },
3574
+ {
3575
+ "name": "eventAuthority";
3576
+ "isMut": false;
3577
+ "isSigner": false;
3578
+ },
3579
+ {
3580
+ "name": "program";
3581
+ "isMut": false;
3582
+ "isSigner": false;
3583
+ }
3584
+ ];
3585
+ "args": [
3586
+ {
3587
+ "name": "binLiquidityRemoval";
3588
+ "type": {
3589
+ "vec": {
3590
+ "defined": "BinLiquidityReduction";
3591
+ };
3592
+ };
3593
+ },
3594
+ {
3595
+ "name": "remainingAccountsInfo";
3596
+ "type": {
3597
+ "defined": "RemainingAccountsInfo";
3598
+ };
3599
+ }
3600
+ ];
3601
+ },
3602
+ {
3603
+ "name": "removeLiquidityByRange2";
3604
+ "accounts": [
3605
+ {
3606
+ "name": "position";
3607
+ "isMut": true;
3608
+ "isSigner": false;
3609
+ },
3610
+ {
3611
+ "name": "lbPair";
3612
+ "isMut": true;
3613
+ "isSigner": false;
3614
+ },
3615
+ {
3616
+ "name": "binArrayBitmapExtension";
3617
+ "isMut": true;
3618
+ "isSigner": false;
3619
+ "isOptional": true;
3620
+ },
3621
+ {
3622
+ "name": "userTokenX";
3623
+ "isMut": true;
3624
+ "isSigner": false;
3625
+ },
3626
+ {
3627
+ "name": "userTokenY";
3628
+ "isMut": true;
3629
+ "isSigner": false;
3630
+ },
3631
+ {
3632
+ "name": "reserveX";
3633
+ "isMut": true;
3634
+ "isSigner": false;
3635
+ },
3636
+ {
3637
+ "name": "reserveY";
3638
+ "isMut": true;
3639
+ "isSigner": false;
3640
+ },
3641
+ {
3642
+ "name": "tokenXMint";
3643
+ "isMut": false;
3644
+ "isSigner": false;
3645
+ },
3646
+ {
3647
+ "name": "tokenYMint";
3648
+ "isMut": false;
3649
+ "isSigner": false;
3650
+ },
3651
+ {
3652
+ "name": "sender";
3653
+ "isMut": false;
3654
+ "isSigner": true;
3655
+ },
3656
+ {
3657
+ "name": "tokenXProgram";
3658
+ "isMut": false;
3659
+ "isSigner": false;
3660
+ },
3661
+ {
3662
+ "name": "tokenYProgram";
3663
+ "isMut": false;
3664
+ "isSigner": false;
3665
+ },
3666
+ {
3667
+ "name": "memoProgram";
3668
+ "isMut": false;
3669
+ "isSigner": false;
3670
+ },
3671
+ {
3672
+ "name": "eventAuthority";
3673
+ "isMut": false;
3674
+ "isSigner": false;
3675
+ },
3676
+ {
3677
+ "name": "program";
3678
+ "isMut": false;
3679
+ "isSigner": false;
3680
+ }
3681
+ ];
3682
+ "args": [
3683
+ {
3684
+ "name": "fromBinId";
3685
+ "type": "i32";
3686
+ },
3687
+ {
3688
+ "name": "toBinId";
3689
+ "type": "i32";
3690
+ },
3691
+ {
3692
+ "name": "bpsToRemove";
3693
+ "type": "u16";
3694
+ },
3695
+ {
3696
+ "name": "remainingAccountsInfo";
3697
+ "type": {
3698
+ "defined": "RemainingAccountsInfo";
3699
+ };
3700
+ }
3701
+ ];
3702
+ },
3703
+ {
3704
+ "name": "swap2";
3705
+ "accounts": [
3706
+ {
3707
+ "name": "lbPair";
3708
+ "isMut": true;
3709
+ "isSigner": false;
3710
+ },
3711
+ {
3712
+ "name": "binArrayBitmapExtension";
3713
+ "isMut": false;
3714
+ "isSigner": false;
3715
+ "isOptional": true;
3716
+ },
3717
+ {
3718
+ "name": "reserveX";
3719
+ "isMut": true;
3720
+ "isSigner": false;
3721
+ },
3722
+ {
3723
+ "name": "reserveY";
3724
+ "isMut": true;
3725
+ "isSigner": false;
3726
+ },
3727
+ {
3728
+ "name": "userTokenIn";
3729
+ "isMut": true;
3730
+ "isSigner": false;
3731
+ },
3732
+ {
3733
+ "name": "userTokenOut";
3734
+ "isMut": true;
3735
+ "isSigner": false;
3736
+ },
3737
+ {
3738
+ "name": "tokenXMint";
3739
+ "isMut": false;
3740
+ "isSigner": false;
3741
+ },
3742
+ {
3743
+ "name": "tokenYMint";
3744
+ "isMut": false;
3745
+ "isSigner": false;
3746
+ },
3747
+ {
3748
+ "name": "oracle";
3749
+ "isMut": true;
3750
+ "isSigner": false;
3751
+ },
3752
+ {
3753
+ "name": "hostFeeIn";
3754
+ "isMut": true;
3755
+ "isSigner": false;
3756
+ "isOptional": true;
3757
+ },
3758
+ {
3759
+ "name": "user";
3760
+ "isMut": false;
3761
+ "isSigner": true;
3762
+ },
3763
+ {
3764
+ "name": "tokenXProgram";
3765
+ "isMut": false;
3766
+ "isSigner": false;
3767
+ },
3768
+ {
3769
+ "name": "tokenYProgram";
3770
+ "isMut": false;
3771
+ "isSigner": false;
3772
+ },
3773
+ {
3774
+ "name": "memoProgram";
3775
+ "isMut": false;
3776
+ "isSigner": false;
3777
+ },
3778
+ {
3779
+ "name": "eventAuthority";
3780
+ "isMut": false;
3781
+ "isSigner": false;
3782
+ },
3783
+ {
3784
+ "name": "program";
3785
+ "isMut": false;
3786
+ "isSigner": false;
3787
+ }
3788
+ ];
3789
+ "args": [
3790
+ {
3791
+ "name": "amountIn";
3792
+ "type": "u64";
3793
+ },
3794
+ {
3795
+ "name": "minAmountOut";
3796
+ "type": "u64";
3797
+ },
3798
+ {
3799
+ "name": "remainingAccountsInfo";
3800
+ "type": {
3801
+ "defined": "RemainingAccountsInfo";
3802
+ };
3803
+ }
3804
+ ];
3805
+ },
3806
+ {
3807
+ "name": "swapExactOut2";
3808
+ "accounts": [
3809
+ {
3810
+ "name": "lbPair";
3811
+ "isMut": true;
3812
+ "isSigner": false;
3813
+ },
3814
+ {
3815
+ "name": "binArrayBitmapExtension";
3816
+ "isMut": false;
3817
+ "isSigner": false;
3818
+ "isOptional": true;
3819
+ },
3820
+ {
3821
+ "name": "reserveX";
3822
+ "isMut": true;
3823
+ "isSigner": false;
3824
+ },
3825
+ {
3826
+ "name": "reserveY";
3827
+ "isMut": true;
3828
+ "isSigner": false;
3829
+ },
3830
+ {
3831
+ "name": "userTokenIn";
3832
+ "isMut": true;
3833
+ "isSigner": false;
3834
+ },
3835
+ {
3836
+ "name": "userTokenOut";
3837
+ "isMut": true;
3838
+ "isSigner": false;
3839
+ },
3840
+ {
3841
+ "name": "tokenXMint";
3842
+ "isMut": false;
3843
+ "isSigner": false;
3844
+ },
3845
+ {
3846
+ "name": "tokenYMint";
3847
+ "isMut": false;
3848
+ "isSigner": false;
3849
+ },
3850
+ {
3851
+ "name": "oracle";
3852
+ "isMut": true;
3853
+ "isSigner": false;
3854
+ },
3855
+ {
3856
+ "name": "hostFeeIn";
3857
+ "isMut": true;
3858
+ "isSigner": false;
3859
+ "isOptional": true;
3860
+ },
3861
+ {
3862
+ "name": "user";
3863
+ "isMut": false;
3864
+ "isSigner": true;
3865
+ },
3866
+ {
3867
+ "name": "tokenXProgram";
3868
+ "isMut": false;
3869
+ "isSigner": false;
3870
+ },
3871
+ {
3872
+ "name": "tokenYProgram";
3873
+ "isMut": false;
3874
+ "isSigner": false;
3875
+ },
3876
+ {
3877
+ "name": "memoProgram";
3878
+ "isMut": false;
3879
+ "isSigner": false;
3880
+ },
3881
+ {
3882
+ "name": "eventAuthority";
3883
+ "isMut": false;
3884
+ "isSigner": false;
3885
+ },
3886
+ {
3887
+ "name": "program";
3888
+ "isMut": false;
3889
+ "isSigner": false;
3890
+ }
3891
+ ];
3892
+ "args": [
3893
+ {
3894
+ "name": "maxInAmount";
3895
+ "type": "u64";
3896
+ },
3897
+ {
3898
+ "name": "outAmount";
3899
+ "type": "u64";
3900
+ },
3901
+ {
3902
+ "name": "remainingAccountsInfo";
3903
+ "type": {
3904
+ "defined": "RemainingAccountsInfo";
3905
+ };
3906
+ }
3907
+ ];
3908
+ },
3909
+ {
3910
+ "name": "swapWithPriceImpact2";
3911
+ "accounts": [
3912
+ {
3913
+ "name": "lbPair";
3914
+ "isMut": true;
3915
+ "isSigner": false;
3916
+ },
3917
+ {
3918
+ "name": "binArrayBitmapExtension";
3919
+ "isMut": false;
3920
+ "isSigner": false;
3921
+ "isOptional": true;
3922
+ },
3923
+ {
3924
+ "name": "reserveX";
3925
+ "isMut": true;
3926
+ "isSigner": false;
3927
+ },
3928
+ {
3929
+ "name": "reserveY";
3930
+ "isMut": true;
3931
+ "isSigner": false;
3932
+ },
3933
+ {
3934
+ "name": "userTokenIn";
3935
+ "isMut": true;
3936
+ "isSigner": false;
3937
+ },
3938
+ {
3939
+ "name": "userTokenOut";
3940
+ "isMut": true;
3941
+ "isSigner": false;
3942
+ },
3943
+ {
3944
+ "name": "tokenXMint";
3945
+ "isMut": false;
3946
+ "isSigner": false;
3947
+ },
3948
+ {
3949
+ "name": "tokenYMint";
3950
+ "isMut": false;
3951
+ "isSigner": false;
3952
+ },
3953
+ {
3954
+ "name": "oracle";
3955
+ "isMut": true;
3956
+ "isSigner": false;
3957
+ },
3958
+ {
3959
+ "name": "hostFeeIn";
3960
+ "isMut": true;
3961
+ "isSigner": false;
3962
+ "isOptional": true;
3963
+ },
3964
+ {
3965
+ "name": "user";
3966
+ "isMut": false;
3967
+ "isSigner": true;
3968
+ },
3969
+ {
3970
+ "name": "tokenXProgram";
3971
+ "isMut": false;
3972
+ "isSigner": false;
3973
+ },
3974
+ {
3975
+ "name": "tokenYProgram";
3976
+ "isMut": false;
3977
+ "isSigner": false;
3978
+ },
3979
+ {
3980
+ "name": "memoProgram";
3981
+ "isMut": false;
3982
+ "isSigner": false;
3983
+ },
3984
+ {
3985
+ "name": "eventAuthority";
3986
+ "isMut": false;
3987
+ "isSigner": false;
3988
+ },
3989
+ {
3990
+ "name": "program";
3991
+ "isMut": false;
3992
+ "isSigner": false;
3993
+ }
3994
+ ];
3995
+ "args": [
3996
+ {
3997
+ "name": "amountIn";
3998
+ "type": "u64";
3999
+ },
4000
+ {
4001
+ "name": "activeId";
4002
+ "type": {
4003
+ "option": "i32";
4004
+ };
4005
+ },
4006
+ {
4007
+ "name": "maxPriceImpactBps";
4008
+ "type": "u16";
4009
+ },
4010
+ {
4011
+ "name": "remainingAccountsInfo";
4012
+ "type": {
4013
+ "defined": "RemainingAccountsInfo";
4014
+ };
4015
+ }
4016
+ ];
4017
+ },
4018
+ {
4019
+ "name": "closePosition2";
4020
+ "accounts": [
4021
+ {
4022
+ "name": "position";
4023
+ "isMut": true;
4024
+ "isSigner": false;
4025
+ },
4026
+ {
4027
+ "name": "sender";
4028
+ "isMut": false;
4029
+ "isSigner": true;
4030
+ },
4031
+ {
4032
+ "name": "rentReceiver";
4033
+ "isMut": true;
4034
+ "isSigner": false;
4035
+ },
4036
+ {
4037
+ "name": "eventAuthority";
4038
+ "isMut": false;
4039
+ "isSigner": false;
4040
+ },
4041
+ {
4042
+ "name": "program";
4043
+ "isMut": false;
4044
+ "isSigner": false;
4045
+ }
4046
+ ];
4047
+ "args": [];
4048
+ },
4049
+ {
4050
+ "name": "updateFeesAndReward2";
4051
+ "accounts": [
4052
+ {
4053
+ "name": "position";
4054
+ "isMut": true;
4055
+ "isSigner": false;
4056
+ },
4057
+ {
4058
+ "name": "lbPair";
4059
+ "isMut": true;
4060
+ "isSigner": false;
4061
+ },
4062
+ {
4063
+ "name": "owner";
4064
+ "isMut": false;
4065
+ "isSigner": true;
4066
+ }
4067
+ ];
4068
+ "args": [
4069
+ {
4070
+ "name": "minBinId";
4071
+ "type": "i32";
4072
+ },
4073
+ {
4074
+ "name": "maxBinId";
4075
+ "type": "i32";
4076
+ }
4077
+ ];
4078
+ },
4079
+ {
4080
+ "name": "closePositionIfEmpty";
4081
+ "accounts": [
4082
+ {
4083
+ "name": "position";
4084
+ "isMut": true;
4085
+ "isSigner": false;
4086
+ },
4087
+ {
4088
+ "name": "sender";
4089
+ "isMut": false;
4090
+ "isSigner": true;
4091
+ },
4092
+ {
4093
+ "name": "rentReceiver";
4094
+ "isMut": true;
4095
+ "isSigner": false;
4096
+ },
4097
+ {
4098
+ "name": "eventAuthority";
4099
+ "isMut": false;
4100
+ "isSigner": false;
4101
+ },
4102
+ {
4103
+ "name": "program";
4104
+ "isMut": false;
4105
+ "isSigner": false;
4106
+ }
4107
+ ];
4108
+ "args": [];
4109
+ }
4110
+ ];
4111
+ "accounts": [
4112
+ {
4113
+ "name": "binArrayBitmapExtension";
4114
+ "type": {
4115
+ "kind": "struct";
4116
+ "fields": [
4117
+ {
4118
+ "name": "lbPair";
4119
+ "type": "publicKey";
4120
+ },
4121
+ {
4122
+ "name": "positiveBinArrayBitmap";
4123
+ "docs": [
4124
+ "Packed initialized bin array state for start_bin_index is positive"
4125
+ ];
4126
+ "type": {
4127
+ "array": [
4128
+ {
4129
+ "array": [
4130
+ "u64",
4131
+ 8
4132
+ ];
4133
+ },
4134
+ 12
4135
+ ];
4136
+ };
4137
+ },
4138
+ {
4139
+ "name": "negativeBinArrayBitmap";
4140
+ "docs": [
4141
+ "Packed initialized bin array state for start_bin_index is negative"
4142
+ ];
4143
+ "type": {
4144
+ "array": [
4145
+ {
4146
+ "array": [
4147
+ "u64",
4148
+ 8
4149
+ ];
4150
+ },
4151
+ 12
4152
+ ];
4153
+ };
4154
+ }
4155
+ ];
4156
+ };
4157
+ },
4158
+ {
4159
+ "name": "binArray";
4160
+ "docs": [
4161
+ "An account to contain a range of bin. For example: Bin 100 <-> 200.",
4162
+ "For example:",
4163
+ "BinArray index: 0 contains bin 0 <-> 599",
4164
+ "index: 2 contains bin 600 <-> 1199, ..."
4165
+ ];
4166
+ "type": {
4167
+ "kind": "struct";
4168
+ "fields": [
4169
+ {
4170
+ "name": "index";
4171
+ "type": "i64";
4172
+ },
4173
+ {
4174
+ "name": "version";
4175
+ "docs": [
4176
+ "Version of binArray"
4177
+ ];
4178
+ "type": "u8";
4179
+ },
4180
+ {
4181
+ "name": "padding";
4182
+ "type": {
4183
+ "array": [
4184
+ "u8",
4185
+ 7
4186
+ ];
4187
+ };
4188
+ },
4189
+ {
4190
+ "name": "lbPair";
4191
+ "type": "publicKey";
4192
+ },
4193
+ {
4194
+ "name": "bins";
4195
+ "type": {
4196
+ "array": [
4197
+ {
4198
+ "defined": "Bin";
4199
+ },
4200
+ 70
4201
+ ];
4202
+ };
4203
+ }
4204
+ ];
4205
+ };
4206
+ },
4207
+ {
4208
+ "name": "claimFeeOperator";
4209
+ "docs": [
4210
+ "Parameter that set by the protocol"
4211
+ ];
4212
+ "type": {
4213
+ "kind": "struct";
4214
+ "fields": [
4215
+ {
4216
+ "name": "operator";
4217
+ "docs": [
4218
+ "operator"
4219
+ ];
4220
+ "type": "publicKey";
4221
+ },
4222
+ {
4223
+ "name": "padding";
4224
+ "docs": [
4225
+ "Reserve"
4226
+ ];
4227
+ "type": {
4228
+ "array": [
4229
+ "u8",
4230
+ 128
4231
+ ];
4232
+ };
4233
+ }
4234
+ ];
4235
+ };
4236
+ },
4237
+ {
4238
+ "name": "lbPair";
4239
+ "type": {
4240
+ "kind": "struct";
4241
+ "fields": [
4242
+ {
4243
+ "name": "parameters";
4244
+ "type": {
4245
+ "defined": "StaticParameters";
4246
+ };
4247
+ },
4248
+ {
4249
+ "name": "vParameters";
4250
+ "type": {
4251
+ "defined": "VariableParameters";
4252
+ };
4253
+ },
4254
+ {
4255
+ "name": "bumpSeed";
4256
+ "type": {
4257
+ "array": [
4258
+ "u8",
4259
+ 1
4260
+ ];
4261
+ };
4262
+ },
4263
+ {
4264
+ "name": "binStepSeed";
4265
+ "docs": [
4266
+ "Bin step signer seed"
4267
+ ];
2809
4268
  "type": {
2810
4269
  "array": [
2811
4270
  "u8",
@@ -3029,6 +4488,20 @@ type LbClmm = {
3029
4488
  ];
3030
4489
  "type": "publicKey";
3031
4490
  },
4491
+ {
4492
+ "name": "tokenMintXProgramFlag";
4493
+ "docs": [
4494
+ "token_mint_x_program_flag"
4495
+ ];
4496
+ "type": "u8";
4497
+ },
4498
+ {
4499
+ "name": "tokenMintYProgramFlag";
4500
+ "docs": [
4501
+ "token_mint_y_program_flag"
4502
+ ];
4503
+ "type": "u8";
4504
+ },
3032
4505
  {
3033
4506
  "name": "reserved";
3034
4507
  "docs": [
@@ -3037,7 +4510,7 @@ type LbClmm = {
3037
4510
  "type": {
3038
4511
  "array": [
3039
4512
  "u8",
3040
- 24
4513
+ 22
3041
4514
  ];
3042
4515
  };
3043
4516
  }
@@ -3343,6 +4816,103 @@ type LbClmm = {
3343
4816
  ];
3344
4817
  };
3345
4818
  },
4819
+ {
4820
+ "name": "presetParameter2";
4821
+ "type": {
4822
+ "kind": "struct";
4823
+ "fields": [
4824
+ {
4825
+ "name": "binStep";
4826
+ "docs": [
4827
+ "Bin step. Represent the price increment / decrement."
4828
+ ];
4829
+ "type": "u16";
4830
+ },
4831
+ {
4832
+ "name": "baseFactor";
4833
+ "docs": [
4834
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
4835
+ ];
4836
+ "type": "u16";
4837
+ },
4838
+ {
4839
+ "name": "filterPeriod";
4840
+ "docs": [
4841
+ "Filter period determine high frequency trading time window."
4842
+ ];
4843
+ "type": "u16";
4844
+ },
4845
+ {
4846
+ "name": "decayPeriod";
4847
+ "docs": [
4848
+ "Decay period determine when the volatile fee start decay / decrease."
4849
+ ];
4850
+ "type": "u16";
4851
+ },
4852
+ {
4853
+ "name": "variableFeeControl";
4854
+ "docs": [
4855
+ "Used to scale the variable fee component depending on the dynamic of the market"
4856
+ ];
4857
+ "type": "u32";
4858
+ },
4859
+ {
4860
+ "name": "maxVolatilityAccumulator";
4861
+ "docs": [
4862
+ "Maximum number of bin crossed can be accumulated. Used to cap volatile fee rate."
4863
+ ];
4864
+ "type": "u32";
4865
+ },
4866
+ {
4867
+ "name": "reductionFactor";
4868
+ "docs": [
4869
+ "Reduction factor controls the volatile fee rate decrement rate."
4870
+ ];
4871
+ "type": "u16";
4872
+ },
4873
+ {
4874
+ "name": "protocolShare";
4875
+ "docs": [
4876
+ "Portion of swap fees retained by the protocol by controlling protocol_share parameter. protocol_swap_fee = protocol_share * total_swap_fee"
4877
+ ];
4878
+ "type": "u16";
4879
+ },
4880
+ {
4881
+ "name": "index";
4882
+ "docs": [
4883
+ "index"
4884
+ ];
4885
+ "type": "u16";
4886
+ },
4887
+ {
4888
+ "name": "baseFeePowerFactor";
4889
+ "docs": [
4890
+ "Base fee power factor"
4891
+ ];
4892
+ "type": "u8";
4893
+ },
4894
+ {
4895
+ "name": "padding0";
4896
+ "docs": [
4897
+ "Padding 0 for future use"
4898
+ ];
4899
+ "type": "u8";
4900
+ },
4901
+ {
4902
+ "name": "padding1";
4903
+ "docs": [
4904
+ "Padding 1 for future use"
4905
+ ];
4906
+ "type": {
4907
+ "array": [
4908
+ "u64",
4909
+ 20
4910
+ ];
4911
+ };
4912
+ }
4913
+ ];
4914
+ };
4915
+ },
3346
4916
  {
3347
4917
  "name": "presetParameter";
3348
4918
  "type": {
@@ -3358,7 +4928,7 @@ type LbClmm = {
3358
4928
  {
3359
4929
  "name": "baseFactor";
3360
4930
  "docs": [
3361
- "Used for base fee calculation. base_fee_rate = base_factor * bin_step"
4931
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
3362
4932
  ];
3363
4933
  "type": "u16";
3364
4934
  },
@@ -3420,14 +4990,48 @@ type LbClmm = {
3420
4990
  }
3421
4991
  ];
3422
4992
  };
4993
+ },
4994
+ {
4995
+ "name": "tokenBadge";
4996
+ "docs": [
4997
+ "Parameter that set by the protocol"
4998
+ ];
4999
+ "type": {
5000
+ "kind": "struct";
5001
+ "fields": [
5002
+ {
5003
+ "name": "tokenMint";
5004
+ "docs": [
5005
+ "token mint"
5006
+ ];
5007
+ "type": "publicKey";
5008
+ },
5009
+ {
5010
+ "name": "padding";
5011
+ "docs": [
5012
+ "Reserve"
5013
+ ];
5014
+ "type": {
5015
+ "array": [
5016
+ "u8",
5017
+ 128
5018
+ ];
5019
+ };
5020
+ }
5021
+ ];
5022
+ };
3423
5023
  }
3424
5024
  ];
3425
5025
  "types": [
3426
5026
  {
3427
- "name": "InitPresetParametersIx";
5027
+ "name": "InitPresetParameters2Ix";
3428
5028
  "type": {
3429
5029
  "kind": "struct";
3430
5030
  "fields": [
5031
+ {
5032
+ "name": "index";
5033
+ "type": "u16";
5034
+ },
3431
5035
  {
3432
5036
  "name": "binStep";
3433
5037
  "docs": [
@@ -3438,7 +5042,7 @@ type LbClmm = {
3438
5042
  {
3439
5043
  "name": "baseFactor";
3440
5044
  "docs": [
3441
- "Used for base fee calculation. base_fee_rate = base_factor * bin_step"
5045
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
3442
5046
  ];
3443
5047
  "type": "u16";
3444
5048
  },
@@ -3478,18 +5082,75 @@ type LbClmm = {
3478
5082
  "type": "u32";
3479
5083
  },
3480
5084
  {
3481
- "name": "minBinId";
5085
+ "name": "protocolShare";
3482
5086
  "docs": [
3483
- "Min bin id supported by the pool based on the configured bin step."
5087
+ "Portion of swap fees retained by the protocol by controlling protocol_share parameter. protocol_swap_fee = protocol_share * total_swap_fee"
3484
5088
  ];
3485
- "type": "i32";
5089
+ "type": "u16";
3486
5090
  },
3487
5091
  {
3488
- "name": "maxBinId";
5092
+ "name": "baseFeePowerFactor";
3489
5093
  "docs": [
3490
- "Max bin id supported by the pool based on the configured bin step."
5094
+ "Base fee power factor"
3491
5095
  ];
3492
- "type": "i32";
5096
+ "type": "u8";
5097
+ }
5098
+ ];
5099
+ };
5100
+ },
5101
+ {
5102
+ "name": "InitPresetParametersIx";
5103
+ "type": {
5104
+ "kind": "struct";
5105
+ "fields": [
5106
+ {
5107
+ "name": "binStep";
5108
+ "docs": [
5109
+ "Bin step. Represent the price increment / decrement."
5110
+ ];
5111
+ "type": "u16";
5112
+ },
5113
+ {
5114
+ "name": "baseFactor";
5115
+ "docs": [
5116
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
5117
+ ];
5118
+ "type": "u16";
5119
+ },
5120
+ {
5121
+ "name": "filterPeriod";
5122
+ "docs": [
5123
+ "Filter period determine high frequency trading time window."
5124
+ ];
5125
+ "type": "u16";
5126
+ },
5127
+ {
5128
+ "name": "decayPeriod";
5129
+ "docs": [
5130
+ "Decay period determine when the volatile fee start decay / decrease."
5131
+ ];
5132
+ "type": "u16";
5133
+ },
5134
+ {
5135
+ "name": "reductionFactor";
5136
+ "docs": [
5137
+ "Reduction factor controls the volatile fee rate decrement rate."
5138
+ ];
5139
+ "type": "u16";
5140
+ },
5141
+ {
5142
+ "name": "variableFeeControl";
5143
+ "docs": [
5144
+ "Used to scale the variable fee component depending on the dynamic of the market"
5145
+ ];
5146
+ "type": "u32";
5147
+ },
5148
+ {
5149
+ "name": "maxVolatilityAccumulator";
5150
+ "docs": [
5151
+ "Maximum number of bin crossed can be accumulated. Used to cap volatile fee rate."
5152
+ ];
5153
+ "type": "u32";
3493
5154
  },
3494
5155
  {
3495
5156
  "name": "protocolShare";
@@ -3519,6 +5180,13 @@ type LbClmm = {
3519
5180
  "Base factor for base fee rate"
3520
5181
  ];
3521
5182
  "type": "u16";
5183
+ },
5184
+ {
5185
+ "name": "baseFeePowerFactor";
5186
+ "docs": [
5187
+ "Base fee power factor"
5188
+ ];
5189
+ "type": "u8";
3522
5190
  }
3523
5191
  ];
3524
5192
  };
@@ -3955,49 +5623,123 @@ type LbClmm = {
3955
5623
  ];
3956
5624
  "type": "bool";
3957
5625
  },
5626
+ {
5627
+ "name": "baseFeePowerFactor";
5628
+ "docs": [
5629
+ "Base fee power factor"
5630
+ ];
5631
+ "type": "u8";
5632
+ },
3958
5633
  {
3959
5634
  "name": "padding";
3960
5635
  "docs": [
3961
5636
  "Padding, for future use"
3962
5637
  ];
3963
5638
  "type": {
3964
- "array": [
3965
- "u8",
3966
- 63
3967
- ];
5639
+ "array": [
5640
+ "u8",
5641
+ 62
5642
+ ];
5643
+ };
5644
+ }
5645
+ ];
5646
+ };
5647
+ },
5648
+ {
5649
+ "name": "InitPermissionPairIx";
5650
+ "type": {
5651
+ "kind": "struct";
5652
+ "fields": [
5653
+ {
5654
+ "name": "activeId";
5655
+ "type": "i32";
5656
+ },
5657
+ {
5658
+ "name": "binStep";
5659
+ "type": "u16";
5660
+ },
5661
+ {
5662
+ "name": "baseFactor";
5663
+ "type": "u16";
5664
+ },
5665
+ {
5666
+ "name": "baseFeePowerFactor";
5667
+ "type": "u8";
5668
+ },
5669
+ {
5670
+ "name": "activationType";
5671
+ "type": "u8";
5672
+ },
5673
+ {
5674
+ "name": "protocolShare";
5675
+ "type": "u16";
5676
+ }
5677
+ ];
5678
+ };
5679
+ },
5680
+ {
5681
+ "name": "AddLiquiditySingleSidePreciseParameter2";
5682
+ "type": {
5683
+ "kind": "struct";
5684
+ "fields": [
5685
+ {
5686
+ "name": "bins";
5687
+ "type": {
5688
+ "vec": {
5689
+ "defined": "CompressedBinDepositAmount";
5690
+ };
3968
5691
  };
5692
+ },
5693
+ {
5694
+ "name": "decompressMultiplier";
5695
+ "type": "u64";
5696
+ },
5697
+ {
5698
+ "name": "maxAmount";
5699
+ "type": "u64";
3969
5700
  }
3970
5701
  ];
3971
5702
  };
3972
5703
  },
3973
5704
  {
3974
- "name": "InitPermissionPairIx";
5705
+ "name": "CompressedBinDepositAmount2";
3975
5706
  "type": {
3976
5707
  "kind": "struct";
3977
5708
  "fields": [
3978
5709
  {
3979
- "name": "activeId";
5710
+ "name": "binId";
3980
5711
  "type": "i32";
3981
5712
  },
3982
5713
  {
3983
- "name": "binStep";
3984
- "type": "u16";
3985
- },
3986
- {
3987
- "name": "baseFactor";
3988
- "type": "u16";
3989
- },
3990
- {
3991
- "name": "minBinId";
3992
- "type": "i32";
3993
- },
5714
+ "name": "amount";
5715
+ "type": "u32";
5716
+ }
5717
+ ];
5718
+ };
5719
+ },
5720
+ {
5721
+ "name": "InitializeLbPair2Params";
5722
+ "type": {
5723
+ "kind": "struct";
5724
+ "fields": [
3994
5725
  {
3995
- "name": "maxBinId";
5726
+ "name": "activeId";
5727
+ "docs": [
5728
+ "Pool price"
5729
+ ];
3996
5730
  "type": "i32";
3997
5731
  },
3998
5732
  {
3999
- "name": "activationType";
4000
- "type": "u8";
5733
+ "name": "padding";
5734
+ "docs": [
5735
+ "Padding, for future use"
5736
+ ];
5737
+ "type": {
5738
+ "array": [
5739
+ "u8",
5740
+ 96
5741
+ ];
5742
+ };
4001
5743
  }
4002
5744
  ];
4003
5745
  };
@@ -4217,7 +5959,7 @@ type LbClmm = {
4217
5959
  {
4218
5960
  "name": "baseFactor";
4219
5961
  "docs": [
4220
- "Used for base fee calculation. base_fee_rate = base_factor * bin_step"
5962
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
4221
5963
  ];
4222
5964
  "type": "u16";
4223
5965
  },
@@ -4277,6 +6019,13 @@ type LbClmm = {
4277
6019
  ];
4278
6020
  "type": "u16";
4279
6021
  },
6022
+ {
6023
+ "name": "baseFeePowerFactor";
6024
+ "docs": [
6025
+ "Base fee power factor"
6026
+ ];
6027
+ "type": "u8";
6028
+ },
4280
6029
  {
4281
6030
  "name": "padding";
4282
6031
  "docs": [
@@ -4285,7 +6034,7 @@ type LbClmm = {
4285
6034
  "type": {
4286
6035
  "array": [
4287
6036
  "u8",
4288
- 6
6037
+ 5
4289
6038
  ];
4290
6039
  };
4291
6040
  }
@@ -4406,6 +6155,40 @@ type LbClmm = {
4406
6155
  ];
4407
6156
  };
4408
6157
  },
6158
+ {
6159
+ "name": "RemainingAccountsSlice";
6160
+ "type": {
6161
+ "kind": "struct";
6162
+ "fields": [
6163
+ {
6164
+ "name": "accountsType";
6165
+ "type": {
6166
+ "defined": "AccountsType";
6167
+ };
6168
+ },
6169
+ {
6170
+ "name": "length";
6171
+ "type": "u8";
6172
+ }
6173
+ ];
6174
+ };
6175
+ },
6176
+ {
6177
+ "name": "RemainingAccountsInfo";
6178
+ "type": {
6179
+ "kind": "struct";
6180
+ "fields": [
6181
+ {
6182
+ "name": "slices";
6183
+ "type": {
6184
+ "vec": {
6185
+ "defined": "RemainingAccountsSlice";
6186
+ };
6187
+ };
6188
+ }
6189
+ ];
6190
+ };
6191
+ },
4409
6192
  {
4410
6193
  "name": "StrategyType";
4411
6194
  "type": {
@@ -4505,6 +6288,9 @@ type LbClmm = {
4505
6288
  },
4506
6289
  {
4507
6290
  "name": "CustomizablePermissionless";
6291
+ },
6292
+ {
6293
+ "name": "PermissionlessV2";
4508
6294
  }
4509
6295
  ];
4510
6296
  };
@@ -4525,6 +6311,37 @@ type LbClmm = {
4525
6311
  }
4526
6312
  ];
4527
6313
  };
6314
+ },
6315
+ {
6316
+ "name": "TokenProgramFlags";
6317
+ "type": {
6318
+ "kind": "enum";
6319
+ "variants": [
6320
+ {
6321
+ "name": "TokenProgram";
6322
+ },
6323
+ {
6324
+ "name": "TokenProgram2022";
6325
+ }
6326
+ ];
6327
+ };
6328
+ },
6329
+ {
6330
+ "name": "AccountsType";
6331
+ "type": {
6332
+ "kind": "enum";
6333
+ "variants": [
6334
+ {
6335
+ "name": "TransferHookX";
6336
+ },
6337
+ {
6338
+ "name": "TransferHookY";
6339
+ },
6340
+ {
6341
+ "name": "TransferHookReward";
6342
+ }
6343
+ ];
6344
+ };
4528
6345
  }
4529
6346
  ];
4530
6347
  "events": [
@@ -4918,6 +6735,66 @@ type LbClmm = {
4918
6735
  }
4919
6736
  ];
4920
6737
  },
6738
+ {
6739
+ "name": "IncreasePositionLength";
6740
+ "fields": [
6741
+ {
6742
+ "name": "lbPair";
6743
+ "type": "publicKey";
6744
+ "index": false;
6745
+ },
6746
+ {
6747
+ "name": "position";
6748
+ "type": "publicKey";
6749
+ "index": false;
6750
+ },
6751
+ {
6752
+ "name": "owner";
6753
+ "type": "publicKey";
6754
+ "index": false;
6755
+ },
6756
+ {
6757
+ "name": "lengthToAdd";
6758
+ "type": "u16";
6759
+ "index": false;
6760
+ },
6761
+ {
6762
+ "name": "side";
6763
+ "type": "u8";
6764
+ "index": false;
6765
+ }
6766
+ ];
6767
+ },
6768
+ {
6769
+ "name": "DecreasePositionLength";
6770
+ "fields": [
6771
+ {
6772
+ "name": "lbPair";
6773
+ "type": "publicKey";
6774
+ "index": false;
6775
+ },
6776
+ {
6777
+ "name": "position";
6778
+ "type": "publicKey";
6779
+ "index": false;
6780
+ },
6781
+ {
6782
+ "name": "owner";
6783
+ "type": "publicKey";
6784
+ "index": false;
6785
+ },
6786
+ {
6787
+ "name": "lengthToRemove";
6788
+ "type": "u16";
6789
+ "index": false;
6790
+ },
6791
+ {
6792
+ "name": "side";
6793
+ "type": "u8";
6794
+ "index": false;
6795
+ }
6796
+ ];
6797
+ },
4921
6798
  {
4922
6799
  "name": "FeeParameterUpdate";
4923
6800
  "fields": [
@@ -5424,6 +7301,76 @@ type LbClmm = {
5424
7301
  "code": 6068;
5425
7302
  "name": "InvalidMinimumLiquidity";
5426
7303
  "msg": "Invalid minimum liquidity";
7304
+ },
7305
+ {
7306
+ "code": 6069;
7307
+ "name": "NotSupportMint";
7308
+ "msg": "Not support token_2022 mint extension";
7309
+ },
7310
+ {
7311
+ "code": 6070;
7312
+ "name": "UnsupportedMintExtension";
7313
+ "msg": "Unsupported mint extension";
7314
+ },
7315
+ {
7316
+ "code": 6071;
7317
+ "name": "UnsupportNativeMintToken2022";
7318
+ "msg": "Unsupported native mint token2022";
7319
+ },
7320
+ {
7321
+ "code": 6072;
7322
+ "name": "UnmatchTokenMint";
7323
+ "msg": "Unmatch token mint";
7324
+ },
7325
+ {
7326
+ "code": 6073;
7327
+ "name": "UnsupportedTokenMint";
7328
+ "msg": "Unsupported token mint";
7329
+ },
7330
+ {
7331
+ "code": 6074;
7332
+ "name": "InsufficientRemainingAccounts";
7333
+ "msg": "Insufficient remaining accounts";
7334
+ },
7335
+ {
7336
+ "code": 6075;
7337
+ "name": "InvalidRemainingAccountSlice";
7338
+ "msg": "Invalid remaining account slice";
7339
+ },
7340
+ {
7341
+ "code": 6076;
7342
+ "name": "DuplicatedRemainingAccountTypes";
7343
+ "msg": "Duplicated remaining account types";
7344
+ },
7345
+ {
7346
+ "code": 6077;
7347
+ "name": "MissingRemainingAccountForTransferHook";
7348
+ "msg": "Missing remaining account for transfer hook";
7349
+ },
7350
+ {
7351
+ "code": 6078;
7352
+ "name": "NoTransferHookProgram";
7353
+ "msg": "Remaining account was passed for transfer hook but there's no hook program";
7354
+ },
7355
+ {
7356
+ "code": 6079;
7357
+ "name": "ZeroFundedAmount";
7358
+ "msg": "Zero funded amount";
7359
+ },
7360
+ {
7361
+ "code": 6080;
7362
+ "name": "InvalidSide";
7363
+ "msg": "Invalid side";
7364
+ },
7365
+ {
7366
+ "code": 6081;
7367
+ "name": "InvalidResizeLength";
7368
+ "msg": "Invalid resize length";
7369
+ },
7370
+ {
7371
+ "code": 6082;
7372
+ "name": "NotSupportAtTheMoment";
7373
+ "msg": "Not support at the moment";
5427
7374
  }
5428
7375
  ];
5429
7376
  };
@@ -5437,8 +7384,10 @@ interface BinAndAmount {
5437
7384
  interface TokenReserve {
5438
7385
  publicKey: PublicKey;
5439
7386
  reserve: PublicKey;
7387
+ mint: Mint;
5440
7388
  amount: bigint;
5441
- decimal: number;
7389
+ owner: PublicKey;
7390
+ transferHookAccountMetas: AccountMeta[];
5442
7391
  }
5443
7392
  type ClmmProgram = Program<LbClmm>;
5444
7393
  type LbPair = IdlAccounts<LbClmm>["lbPair"];
@@ -5448,8 +7397,12 @@ type BinArray = IdlAccounts<LbClmm>["binArray"];
5448
7397
  type BinArrayAccount = ProgramAccount<IdlAccounts<LbClmm>["binArray"]>;
5449
7398
  type Position = IdlAccounts<LbClmm>["position"];
5450
7399
  type PositionV2 = IdlAccounts<LbClmm>["positionV2"];
7400
+ type PresetParameter = IdlAccounts<LbClmm>["presetParameter"];
7401
+ type PresetParameter2 = IdlAccounts<LbClmm>["presetParameter2"];
5451
7402
  type vParameters = IdlAccounts<LbClmm>["lbPair"]["vParameters"];
5452
7403
  type sParameters = IdlAccounts<LbClmm>["lbPair"]["parameters"];
7404
+ type UserRewardInfo = IdlTypes<LbClmm>["UserRewardInfo"];
7405
+ type UserFeeInfo = IdlTypes<LbClmm>["FeeInfo"];
5453
7406
  type InitPermissionPairIx = IdlTypes<LbClmm>["InitPermissionPairIx"];
5454
7407
  type InitCustomizablePermissionlessPairIx = IdlTypes<LbClmm>["CustomizableParams"];
5455
7408
  type BinLiquidityDistribution = IdlTypes<LbClmm>["BinLiquidityDistribution"];
@@ -5463,8 +7416,11 @@ type LiquidityParameterByStrategyOneSide = IdlTypes<LbClmm>["LiquidityParameterB
5463
7416
  type LiquidityParameter = IdlTypes<LbClmm>["LiquidityParameter"];
5464
7417
  type ProgramStrategyParameter = IdlTypes<LbClmm>["StrategyParameters"];
5465
7418
  type ProgramStrategyType = IdlTypes<LbClmm>["StrategyType"];
7419
+ type RemainingAccountInfo = IdlTypes<LbClmm>["RemainingAccountsInfo"];
7420
+ type RemainingAccountsInfoSlice = IdlTypes<LbClmm>["RemainingAccountsSlice"];
5466
7421
  type CompressedBinDepositAmount = IdlTypes<LbClmm>["CompressedBinDepositAmount"];
5467
7422
  type CompressedBinDepositAmounts = CompressedBinDepositAmount[];
7423
+ declare const POSITION_V2_DISC: Buffer;
5468
7424
  interface LbPosition {
5469
7425
  publicKey: PublicKey;
5470
7426
  positionData: PositionData;
@@ -5501,7 +7457,8 @@ interface LMRewards {
5501
7457
  }
5502
7458
  declare enum PositionVersion {
5503
7459
  V1 = 0,
5504
- V2 = 1
7460
+ V2 = 1,
7461
+ V3 = 2
5505
7462
  }
5506
7463
  declare enum PairType {
5507
7464
  Permissionless = 0,
@@ -5572,6 +7529,9 @@ interface BinLiquidity {
5572
7529
  version: number;
5573
7530
  price: string;
5574
7531
  pricePerToken: string;
7532
+ feeAmountXPerTokenStored: BN;
7533
+ feeAmountYPerTokenStored: BN;
7534
+ rewardPerTokenStored: BN[];
5575
7535
  }
5576
7536
  declare namespace BinLiquidity {
5577
7537
  function fromBin(bin: Bin, binId: number, binStep: number, baseTokenDecimal: number, quoteTokenDecimal: number, version: number): BinLiquidity;
@@ -5610,6 +7570,9 @@ interface PositionBinData {
5610
7570
  positionLiquidity: string;
5611
7571
  positionXAmount: string;
5612
7572
  positionYAmount: string;
7573
+ positionFeeXAmount: string;
7574
+ positionFeeYAmount: string;
7575
+ positionRewardAmount: string[];
5613
7576
  }
5614
7577
  interface PositionData {
5615
7578
  totalXAmount: string;
@@ -5625,6 +7588,13 @@ interface PositionData {
5625
7588
  feeOwner: PublicKey;
5626
7589
  totalClaimedFeeXAmount: BN;
5627
7590
  totalClaimedFeeYAmount: BN;
7591
+ feeXExcludeTransferFee: BN;
7592
+ feeYExcludeTransferFee: BN;
7593
+ rewardOneExcludeTransferFee: BN;
7594
+ rewardTwoExcludeTransferFee: BN;
7595
+ totalXAmountExcludeTransferFee: BN;
7596
+ totalYAmountExcludeTransferFee: BN;
7597
+ owner: PublicKey;
5628
7598
  }
5629
7599
  interface SwapWithPriceImpactParams {
5630
7600
  /**
@@ -5716,6 +7686,7 @@ declare enum BitmapType {
5716
7686
  U512 = 1
5717
7687
  }
5718
7688
  interface SeedLiquidityResponse {
7689
+ sendPositionOwnerTokenProveIxs: TransactionInstruction[];
5719
7690
  initializeBinArraysAndPositionIxs: TransactionInstruction[][];
5720
7691
  addLiquidityIxs: TransactionInstruction[][];
5721
7692
  }
@@ -5741,6 +7712,11 @@ interface PositionLockInfo {
5741
7712
  tokenYAmount: string;
5742
7713
  lockReleasePoint: number;
5743
7714
  }
7715
+ declare enum ActionType {
7716
+ Liquidity = 0,
7717
+ Reward = 1
7718
+ }
7719
+ declare const MEMO_PROGRAM_ID: PublicKey;
5744
7720
 
5745
7721
  type Opt = {
5746
7722
  cluster?: Cluster | "localhost";
@@ -5753,9 +7729,10 @@ declare class DLMM {
5753
7729
  binArrayBitmapExtension: BinArrayBitmapExtensionAccount | null;
5754
7730
  tokenX: TokenReserve;
5755
7731
  tokenY: TokenReserve;
7732
+ rewards: Array<TokenReserve | null>;
5756
7733
  clock: Clock;
5757
7734
  private opt?;
5758
- constructor(pubkey: PublicKey, program: ClmmProgram, lbPair: LbPair, binArrayBitmapExtension: BinArrayBitmapExtensionAccount | null, tokenX: TokenReserve, tokenY: TokenReserve, clock: Clock, opt?: Opt);
7735
+ constructor(pubkey: PublicKey, program: ClmmProgram, lbPair: LbPair, binArrayBitmapExtension: BinArrayBitmapExtensionAccount | null, tokenX: TokenReserve, tokenY: TokenReserve, rewards: Array<TokenReserve | null>, clock: Clock, opt?: Opt);
5759
7736
  /** Static public method */
5760
7737
  /**
5761
7738
  * The function `getLbPairs` retrieves a list of LB pair accounts using a connection and optional
@@ -5768,7 +7745,18 @@ declare class DLMM {
5768
7745
  * `LbPairAccount` objects.
5769
7746
  */
5770
7747
  static getLbPairs(connection: Connection, opt?: Opt): Promise<LbPairAccount[]>;
5771
- static getPairPubkeyIfExists(connection: Connection, tokenX: PublicKey, tokenY: PublicKey, binStep: BN, baseFactor: BN, opt?: Opt): Promise<PublicKey | null>;
7748
+ /**
7749
+ * Retrieves the public key of a LB pair if it exists.
7750
+ * @param connection The connection to the Solana cluster.
7751
+ * @param tokenX The mint address of token X.
7752
+ * @param tokenY The mint address of token Y.
7753
+ * @param binStep The bin step of the LB pair.
7754
+ * @param baseFactor The base factor of the LB pair.
7755
+ * @param baseFeePowerFactor The base fee power factor of the LB pair. It allow small bin step to have bigger fee rate.
7756
+ * @param opt Optional parameters.
7757
+ * @returns The public key of the LB pair if it exists, or null.
7758
+ */
7759
+ static getPairPubkeyIfExists(connection: Connection, tokenX: PublicKey, tokenY: PublicKey, binStep: BN, baseFactor: BN, baseFeePowerFactor: BN, opt?: Opt): Promise<PublicKey | null>;
5772
7760
  /**
5773
7761
  * The `create` function is a static method that creates a new instance of the `DLMM` class
5774
7762
  * @param {Connection} connection - The `connection` parameter is an instance of the `Connection`
@@ -5789,18 +7777,46 @@ declare class DLMM {
5789
7777
  * objects.
5790
7778
  */
5791
7779
  static createMultiple(connection: Connection, dlmmList: Array<PublicKey>, opt?: Opt): Promise<DLMM[]>;
5792
- static getAllPresetParameters(connection: Connection, opt?: Opt): Promise<_coral_xyz_anchor.ProgramAccount<{
5793
- binStep: number;
5794
- baseFactor: number;
5795
- filterPeriod: number;
5796
- decayPeriod: number;
5797
- reductionFactor: number;
5798
- variableFeeControl: number;
5799
- maxVolatilityAccumulator: number;
5800
- minBinId: number;
5801
- maxBinId: number;
5802
- protocolShare: number;
5803
- }>[]>;
7780
+ /**
7781
+ * The `getAllPresetParameters` function retrieves all preset parameter accounts
7782
+ * for the given DLMM program.
7783
+ *
7784
+ * @param {Connection} connection - The connection to the Solana cluster.
7785
+ * @param {Opt} [opt] - The optional parameters for the function.
7786
+ *
7787
+ * @returns A promise that resolves to an object containing the preset parameter
7788
+ * accounts, with the following properties:
7789
+ * - `presetParameter`: The preset parameter accounts for the original `PresetParameter` struct.
7790
+ * - `presetParameter2`: The preset parameter accounts for the `PresetParameter2` struct.
7791
+ */
7792
+ static getAllPresetParameters(connection: Connection, opt?: Opt): Promise<{
7793
+ presetParameter: _coral_xyz_anchor.ProgramAccount<{
7794
+ binStep: number;
7795
+ baseFactor: number;
7796
+ filterPeriod: number;
7797
+ decayPeriod: number;
7798
+ reductionFactor: number;
7799
+ variableFeeControl: number;
7800
+ maxVolatilityAccumulator: number;
7801
+ minBinId: number;
7802
+ maxBinId: number;
7803
+ protocolShare: number;
7804
+ }>[];
7805
+ presetParameter2: _coral_xyz_anchor.ProgramAccount<{
7806
+ binStep: number;
7807
+ baseFactor: number;
7808
+ filterPeriod: number;
7809
+ decayPeriod: number;
7810
+ variableFeeControl: number;
7811
+ maxVolatilityAccumulator: number;
7812
+ reductionFactor: number;
7813
+ protocolShare: number;
7814
+ index: number;
7815
+ baseFeePowerFactor: number;
7816
+ padding0: number;
7817
+ padding1: BN[];
7818
+ }>[];
7819
+ }>;
5804
7820
  /**
5805
7821
  * The function `getAllLbPairPositionsByUser` retrieves all liquidity pool pair positions for a given
5806
7822
  * user.
@@ -5816,17 +7832,74 @@ declare class DLMM {
5816
7832
  static getPricePerLamport(tokenXDecimal: number, tokenYDecimal: number, price: number): string;
5817
7833
  static getBinIdFromPrice(price: string | number | Decimal, binStep: number, min: boolean): number;
5818
7834
  /**
5819
- * The function `getLbPairLockInfo` retrieves all pair positions that has locked liquidity.
5820
- * @param {number} [lockDurationOpt] - An optional value indicating the minimum position lock duration that the function should return.
5821
- * Depending on the lbPair activationType, the param should be a number of seconds or a number of slots.
5822
- * @returns The function `getLbPairLockInfo` returns a `Promise` that resolves to a `PairLockInfo`
5823
- * object. The `PairLockInfo` object contains an array of `PositionLockInfo` objects.
5824
- */
7835
+ * The function `getLbPairLockInfo` retrieves all pair positions that has locked liquidity.
7836
+ * @param {number} [lockDurationOpt] - An optional value indicating the minimum position lock duration that the function should return.
7837
+ * Depending on the lbPair activationType, the param should be a number of seconds or a number of slots.
7838
+ * @returns The function `getLbPairLockInfo` returns a `Promise` that resolves to a `PairLockInfo`
7839
+ * object. The `PairLockInfo` object contains an array of `PositionLockInfo` objects.
7840
+ */
5825
7841
  getLbPairLockInfo(lockDurationOpt?: number): Promise<PairLockInfo>;
5826
7842
  /** Public methods */
5827
- static createPermissionLbPair(connection: Connection, binStep: BN, tokenX: PublicKey, tokenY: PublicKey, activeId: BN, baseKey: PublicKey, creatorKey: PublicKey, feeBps: BN, activationType: ActivationType, opt?: Opt): Promise<Transaction>;
7843
+ /**
7844
+ * Create a new customizable permissionless pair. Support both token and token 2022.
7845
+ * @param connection A connection to the Solana cluster.
7846
+ * @param binStep The bin step for the pair.
7847
+ * @param tokenX The mint of the first token.
7848
+ * @param tokenY The mint of the second token.
7849
+ * @param activeId The ID of the initial active bin. Represent the starting price.
7850
+ * @param feeBps The fee rate for swaps in the pair, in basis points.
7851
+ * @param activationType The type of activation for the pair.
7852
+ * @param hasAlphaVault Whether the pair has an alpha vault.
7853
+ * @param creatorKey The public key of the creator of the pair.
7854
+ * @param activationPoint The timestamp at which the pair will be activated.
7855
+ * @param opt An options object.
7856
+ * @returns A transaction that creates the pair.
7857
+ */
7858
+ static createCustomizablePermissionlessLbPair2(connection: Connection, binStep: BN, tokenX: PublicKey, tokenY: PublicKey, activeId: BN, feeBps: BN, activationType: ActivationType, hasAlphaVault: boolean, creatorKey: PublicKey, activationPoint?: BN, creatorPoolOnOffControl?: boolean, opt?: Opt): Promise<Transaction>;
7859
+ /**
7860
+ * Create a new customizable permissionless pair. Support only token program.
7861
+ * @param connection A connection to the Solana cluster.
7862
+ * @param binStep The bin step for the pair.
7863
+ * @param tokenX The mint of the first token.
7864
+ * @param tokenY The mint of the second token.
7865
+ * @param activeId The ID of the initial active bin. Represent the starting price.
7866
+ * @param feeBps The fee rate for swaps in the pair, in basis points.
7867
+ * @param activationType The type of activation for the pair.
7868
+ * @param hasAlphaVault Whether the pair has an alpha vault.
7869
+ * @param creatorKey The public key of the creator of the pair.
7870
+ * @param activationPoint The timestamp at which the pair will be activated.
7871
+ * @param opt An options object.
7872
+ * @returns A transaction that creates the pair.
7873
+ */
5828
7874
  static createCustomizablePermissionlessLbPair(connection: Connection, binStep: BN, tokenX: PublicKey, tokenY: PublicKey, activeId: BN, feeBps: BN, activationType: ActivationType, hasAlphaVault: boolean, creatorKey: PublicKey, activationPoint?: BN, creatorPoolOnOffControl?: boolean, opt?: Opt): Promise<Transaction>;
7875
+ /**
7876
+ * Create a new liquidity pair. Support only token program.
7877
+ * @param connection A connection to the Solana cluster.
7878
+ * @param funder The public key of the funder of the pair.
7879
+ * @param tokenX The mint of the first token.
7880
+ * @param tokenY The mint of the second token.
7881
+ * @param binStep The bin step for the pair.
7882
+ * @param baseFactor The base factor for the pair.
7883
+ * @param presetParameter The public key of the preset parameter account.
7884
+ * @param activeId The ID of the initial active bin. Represent the starting price.
7885
+ * @param opt An options object.
7886
+ * @returns A transaction that creates the pair.
7887
+ * @throws If the pair already exists.
7888
+ */
5829
7889
  static createLbPair(connection: Connection, funder: PublicKey, tokenX: PublicKey, tokenY: PublicKey, binStep: BN, baseFactor: BN, presetParameter: PublicKey, activeId: BN, opt?: Opt): Promise<Transaction>;
7890
+ /**
7891
+ * Create a new liquidity pair. Support both token and token2022 program.
7892
+ * @param connection A connection to the Solana cluster.
7893
+ * @param funder The public key of the funder of the pair.
7894
+ * @param tokenX The mint of the first token.
7895
+ * @param tokenY The mint of the second token.
7896
+ * @param presetParameter The public key of the preset parameter account.
7897
+ * @param activeId The ID of the initial active bin. Represent the starting price.
7898
+ * @param opt An options object.
7899
+ * @returns A transaction that creates the pair.
7900
+ * @throws If the pair already exists.
7901
+ */
7902
+ static createLbPair2(connection: Connection, funder: PublicKey, tokenX: PublicKey, tokenY: PublicKey, presetParameter: PublicKey, activeId: BN, opt?: Opt): Promise<Transaction>;
5830
7903
  /**
5831
7904
  * The function `refetchStates` retrieves and updates various states and data related to bin arrays
5832
7905
  * and lb pairs.
@@ -5855,7 +7928,15 @@ declare class DLMM {
5855
7928
  * @returns an array of `BinArrayAccount` objects.
5856
7929
  */
5857
7930
  getBinArrayForSwap(swapForY: any, count?: number): Promise<BinArrayAccount[]>;
5858
- static calculateFeeInfo(baseFactor: number | string, binStep: number | string): Omit<FeeInfo, "protocolFeePercentage">;
7931
+ /**
7932
+ * The function `calculateFeeInfo` calculates the base fee rate percentage and maximum fee rate percentage
7933
+ * given the base factor, bin step, and optional base fee power factor.
7934
+ * @param baseFactor - The base factor of the pair.
7935
+ * @param binStep - The bin step of the pair.
7936
+ * @param baseFeePowerFactor - Optional parameter to allow small bin step to have bigger fee rate. Default to 0.
7937
+ * @returns an object of type `Omit<FeeInfo, "protocolFeePercentage">` with the following properties: baseFeeRatePercentage and maxFeeRatePercentage.
7938
+ */
7939
+ static calculateFeeInfo(baseFactor: number | string, binStep: number | string, baseFeePowerFactor?: number | string): Omit<FeeInfo, "protocolFeePercentage">;
5859
7940
  /**
5860
7941
  * The function `getFeeInfo` calculates and returns the base fee rate percentage, maximum fee rate
5861
7942
  * percentage, and protocol fee percentage.
@@ -6005,11 +8086,12 @@ declare class DLMM {
6005
8086
  * - `strategy`: The strategy parameters to be used for the liquidity pool (Can use `calculateStrategyParameter` to calculate).
6006
8087
  * - `user`: The public key of the user account.
6007
8088
  * - `slippage`: The slippage percentage to be used for the liquidity pool.
6008
- * @returns {Promise<Transaction>} The function `initializePositionAndAddLiquidityByWeight` returns a `Promise` that
8089
+ * @returns {Promise<Transaction>} The function `initializePositionAndAddLiquidityByStrategy` returns a `Promise` that
6009
8090
  * resolves to either a single `Transaction` object.
6010
8091
  */
6011
8092
  initializePositionAndAddLiquidityByStrategy({ positionPubKey, totalXAmount, totalYAmount, strategy, user, slippage, }: TInitializePositionAndAddLiquidityParamsByStrategy): Promise<Transaction>;
6012
8093
  /**
8094
+ * @deprecated Use `initializePositionAndAddLiquidityByStrategy` instead which support both token and token2022.
6013
8095
  * The function `initializePositionAndAddLiquidityByWeight` function is used to initializes a position and adds liquidity
6014
8096
  * @param {TInitializePositionAndAddLiquidityParams}
6015
8097
  * - `positionPubKey`: The public key of the position account. (usually use `new Keypair()`)
@@ -6036,6 +8118,7 @@ declare class DLMM {
6036
8118
  */
6037
8119
  addLiquidityByStrategy({ positionPubKey, totalXAmount, totalYAmount, strategy, user, slippage, }: TInitializePositionAndAddLiquidityParamsByStrategy): Promise<Transaction>;
6038
8120
  /**
8121
+ * @deprecated Use `addLiquidityByStrategy` instead which support both token and token2022.
6039
8122
  * The `addLiquidityByWeight` function is used to add liquidity to existing position
6040
8123
  * @param {TInitializePositionAndAddLiquidityParams}
6041
8124
  * - `positionPubKey`: The public key of the position account. (usually use `new Keypair()`)
@@ -6054,18 +8137,27 @@ declare class DLMM {
6054
8137
  * @param
6055
8138
  * - `user`: The public key of the user account.
6056
8139
  * - `position`: The public key of the position account.
6057
- * - `binIds`: An array of numbers that represent the bin IDs to remove liquidity from.
8140
+ * - `fromBinId`: The ID of the starting bin to remove liquidity from. Must within position range.
8141
+ * - `toBinId`: The ID of the ending bin to remove liquidity from. Must within position range.
6058
8142
  * - `liquiditiesBpsToRemove`: An array of numbers (percentage) that represent the liquidity to remove from each bin.
6059
8143
  * - `shouldClaimAndClose`: A boolean flag that indicates whether to claim rewards and close the position.
6060
- * @returns {Promise<Transaction|Transaction[]>}
8144
+ * @returns {Promise<Transaction | Transaction[]>}
6061
8145
  */
6062
- removeLiquidity({ user, position, binIds, bps, shouldClaimAndClose, }: {
8146
+ removeLiquidity({ user, position, fromBinId, toBinId, bps, shouldClaimAndClose, }: {
6063
8147
  user: PublicKey;
6064
8148
  position: PublicKey;
6065
- binIds: number[];
8149
+ fromBinId: number;
8150
+ toBinId: number;
6066
8151
  bps: BN;
6067
8152
  shouldClaimAndClose?: boolean;
6068
8153
  }): Promise<Transaction | Transaction[]>;
8154
+ /**
8155
+ * The `closePositionIfEmpty` function closes a position if it is empty. Else, it does nothing.
8156
+ */
8157
+ closePositionIfEmpty({ owner, position, }: {
8158
+ owner: PublicKey;
8159
+ position: LbPosition;
8160
+ }): Promise<Transaction>;
6069
8161
  /**
6070
8162
  * The `closePosition` function closes a position
6071
8163
  * @param
@@ -6147,7 +8239,7 @@ declare class DLMM {
6147
8239
  * @param
6148
8240
  * - `owner`: The public key of the owner of the position.
6149
8241
  * - `position`: The public key of the position account.
6150
- * @returns {Promise<Transaction>}
8242
+ * @returns {Promise<Transaction>} Claim LM reward transactions.
6151
8243
  */
6152
8244
  claimLMReward({ owner, position, }: {
6153
8245
  owner: PublicKey;
@@ -6159,7 +8251,7 @@ declare class DLMM {
6159
8251
  * @param
6160
8252
  * - `owner`: The public key of the owner of the positions.
6161
8253
  * - `positions`: An array of objects of type `PositionData` that represents the positions to claim rewards from.
6162
- * @returns {Promise<Transaction[]>}
8254
+ * @returns {Promise<Transaction[]>} Array of claim LM reward and fees transactions.
6163
8255
  */
6164
8256
  claimAllLMRewards({ owner, positions, }: {
6165
8257
  owner: PublicKey;
@@ -6172,7 +8264,8 @@ declare class DLMM {
6172
8264
  * @param
6173
8265
  * - `owner`: The public key of the owner of the position.
6174
8266
  * - `position`: The public key of the position account.
6175
- * @returns {Promise<Transaction>}
8267
+ * - `binRange`: The bin range to claim swap fees for. If not provided, the function claim swap fees for full range.
8268
+ * @returns {Promise<Transaction>} Claim swap fee transactions.
6176
8269
  */
6177
8270
  claimSwapFee({ owner, position, }: {
6178
8271
  owner: PublicKey;
@@ -6183,7 +8276,7 @@ declare class DLMM {
6183
8276
  * @param
6184
8277
  * - `owner`: The public key of the owner of the positions.
6185
8278
  * - `positions`: An array of objects of type `PositionData` that represents the positions to claim swap fees from.
6186
- * @returns {Promise<Transaction[]>}
8279
+ * @returns {Promise<Transaction[]>} Array of claim swap fee transactions.
6187
8280
  */
6188
8281
  claimAllSwapFee({ owner, positions, }: {
6189
8282
  owner: PublicKey;
@@ -6195,40 +8288,45 @@ declare class DLMM {
6195
8288
  * @param
6196
8289
  * - `owner`: The public key of the owner of the position.
6197
8290
  * - `position`: The public key of the position account.
6198
- * @returns {Promise<Transaction[]>}
8291
+ * @returns {Promise<Transaction[]>} Array of claim reward transactions.
6199
8292
  */
6200
8293
  claimAllRewardsByPosition({ owner, position, }: {
6201
8294
  owner: PublicKey;
6202
8295
  position: LbPosition;
6203
8296
  }): Promise<Transaction[]>;
6204
8297
  /**
6205
- * The `seedLiquidity` function create multiple grouped instructions. The grouped instructions will be either [initialize bin array + initialize position instructions] or [deposit instruction] combination.
8298
+ * The `seedLiquidity` function create multiple grouped instructions. The grouped instructions will be [init ata + send lamport for token provde], [initialize bin array + initialize position instructions] and [deposit instruction]. Each grouped instructions can be executed parallelly.
6206
8299
  * @param
6207
8300
  * - `owner`: The public key of the positions owner.
6208
8301
  * - `seedAmount`: Lamport amount to be seeded to the pool.
6209
8302
  * - `minPrice`: Start price in UI format
6210
8303
  * - `maxPrice`: End price in UI format
6211
8304
  * - `base`: Base key
8305
+ * - `txPayer`: Account rental fee payer
8306
+ * - `feeOwner`: Fee owner key. Default to position owner
8307
+ * - `operator`: Operator key
8308
+ * - `lockReleasePoint`: Timelock. Point (slot/timestamp) the position can withdraw the liquidity,
8309
+ * - `shouldSeedPositionOwner` (optional): Whether to send 1 lamport amount of token X to the position owner to prove ownership.
6212
8310
  * @returns {Promise<SeedLiquidityResponse>}
6213
8311
  */
6214
- seedLiquidity(owner: PublicKey, seedAmount: BN, curvature: number, minPrice: number, maxPrice: number, base: PublicKey): Promise<SeedLiquidityResponse>;
8312
+ seedLiquidity(owner: PublicKey, seedAmount: BN, curvature: number, minPrice: number, maxPrice: number, base: PublicKey, payer: PublicKey, feeOwner: PublicKey, operator: PublicKey, lockReleasePoint: BN, shouldSeedPositionOwner?: boolean): Promise<SeedLiquidityResponse>;
6215
8313
  /**
6216
- * The `seedLiquidity` function create multiple grouped instructions. The grouped instructions will be either [initialize bin array + initialize position instructions] or [deposit instruction] combination.
6217
- * @param
6218
- * - `payer`: The public key of the tx payer.
6219
- * - `base`: Base key
6220
- * - `seedAmount`: Token X lamport amount to be seeded to the pool.
6221
- * - `price`: TokenX/TokenY Price in UI format
6222
- * - `roundingUp`: Whether to round up the price
6223
- * - `positionOwner`: The owner of the position
6224
- * - `feeOwner`: Position fee owner
6225
- * - `operator`: Operator of the position. Operator able to manage the position on behalf of the position owner. However, liquidity withdrawal issue by the operator can only send to the position owner.
6226
- * - `lockReleasePoint`: The lock release point of the position.
6227
- * - `shouldSeedPositionOwner` (optional): Whether to send 1 lamport amount of token X to the position owner to prove ownership.
6228
- *
6229
- * The returned instructions need to be executed sequentially if it was separated into multiple transactions.
6230
- * @returns {Promise<TransactionInstruction[]>}
6231
- */
8314
+ * The `seedLiquiditySingleBin` function seed liquidity into a single bin.
8315
+ * @param
8316
+ * - `payer`: The public key of the tx payer.
8317
+ * - `base`: Base key
8318
+ * - `seedAmount`: Token X lamport amount to be seeded to the pool.
8319
+ * - `price`: TokenX/TokenY Price in UI format
8320
+ * - `roundingUp`: Whether to round up the price
8321
+ * - `positionOwner`: The owner of the position
8322
+ * - `feeOwner`: Position fee owner
8323
+ * - `operator`: Operator of the position. Operator able to manage the position on behalf of the position owner. However, liquidity withdrawal issue by the operator can only send to the position owner.
8324
+ * - `lockReleasePoint`: The lock release point of the position.
8325
+ * - `shouldSeedPositionOwner` (optional): Whether to send 1 lamport amount of token X to the position owner to prove ownership.
8326
+ *
8327
+ * The returned instructions need to be executed sequentially if it was separated into multiple transactions.
8328
+ * @returns {Promise<TransactionInstruction[]>}
8329
+ */
6232
8330
  seedLiquiditySingleBin(payer: PublicKey, base: PublicKey, seedAmount: BN, price: number, roundingUp: boolean, positionOwner: PublicKey, feeOwner: PublicKey, operator: PublicKey, lockReleasePoint: BN, shouldSeedPositionOwner?: boolean): Promise<TransactionInstruction[]>;
6233
8331
  /**
6234
8332
  * Initializes bin arrays for the given bin array indexes if it wasn't initialized.
@@ -6266,7 +8364,7 @@ declare class DLMM {
6266
8364
  * @param
6267
8365
  * - `owner`: The public key of the owner of the positions.
6268
8366
  * - `positions`: An array of objects of type `PositionData` that represents the positions to claim swap fees and LM rewards from.
6269
- * @returns {Promise<Transaction[]>}
8367
+ * @returns {Promise<Transaction[]>} Array of claim swap fee and LM reward transactions.
6270
8368
  */
6271
8369
  claimAllRewards({ owner, positions, }: {
6272
8370
  owner: PublicKey;
@@ -6282,10 +8380,6 @@ declare class DLMM {
6282
8380
  */
6283
8381
  syncWithMarketPrice(marketPrice: number, owner: PublicKey): Promise<Transaction>;
6284
8382
  getMaxPriceInBinArrays(binArrayAccounts: BinArrayAccount[]): Promise<string>;
6285
- getAmountOutWithdrawSingleSide(maxLiquidityShare: BN, price: BN, bin: Bin, isWithdrawForY: boolean): {
6286
- withdrawAmount: BN;
6287
- };
6288
- getWithdrawSingleSideAmount(positionPubkey: PublicKey, isWithdrawForY: boolean): Promise<BN>;
6289
8383
  /**
6290
8384
  *
6291
8385
  * @param swapInitiator Address of the swap initiator
@@ -6294,8 +8388,6 @@ declare class DLMM {
6294
8388
  isSwapDisabled(swapInitiator: PublicKey): boolean;
6295
8389
  /** Private static method */
6296
8390
  private static getBinArrays;
6297
- private static getClaimableLMReward;
6298
- private static getClaimableSwapFee;
6299
8391
  private static processPosition;
6300
8392
  private static getBinsBetweenLowerAndUpperBound;
6301
8393
  /** Private method */
@@ -6307,9 +8399,12 @@ declare class DLMM {
6307
8399
  private updateReference;
6308
8400
  private createClaimBuildMethod;
6309
8401
  private createClaimSwapFeeMethod;
8402
+ private getPotentialToken2022IxDataAndAccounts;
6310
8403
  }
6311
8404
 
6312
8405
  /** private */
8406
+ declare function derivePresetParameterWithIndex(index: BN, programId: PublicKey): [PublicKey, number];
8407
+ declare function deriveLbPairWithPresetParamWithIndexKey(presetParameterKey: PublicKey, tokenX: PublicKey, tokenY: PublicKey, programId: PublicKey): [PublicKey, number];
6313
8408
  /**
6314
8409
  *
6315
8410
  * @deprecated Use derivePresetParameter2
@@ -6328,6 +8423,9 @@ declare function deriveOracle(lbPair: PublicKey, programId: PublicKey): [PublicK
6328
8423
  declare function derivePosition(lbPair: PublicKey, base: PublicKey, lowerBinId: BN, width: BN, programId: PublicKey): [PublicKey, number];
6329
8424
  declare function deriveBinArray(lbPair: PublicKey, index: BN, programId: PublicKey): [PublicKey, number];
6330
8425
  declare function deriveReserve(token: PublicKey, lbPair: PublicKey, programId: PublicKey): [PublicKey, number];
8426
+ declare function deriveTokenBadge(mint: PublicKey, programId: PublicKey): [PublicKey, number];
8427
+ declare function deriveEventAuthority(programId: PublicKey): [PublicKey, number];
8428
+ declare function deriveRewardVault(lbPair: PublicKey, rewardIndex: BN, programId: PublicKey): [PublicKey, number];
6331
8429
 
6332
8430
  /** private */
6333
8431
  declare function isOverflowDefaultBinArrayBitmap(binArrayIndex: BN): boolean;
@@ -6377,17 +8475,44 @@ declare function calculateNormalDistribution(activeBin: number, binIds: number[]
6377
8475
  xAmountBpsOfTotal: BN;
6378
8476
  yAmountBpsOfTotal: BN;
6379
8477
  }[];
8478
+ /**
8479
+ * Converts a weight distribution into token amounts for one side (either bid or ask).
8480
+ *
8481
+ * @param amount - The total amount of liquidity to distribute.
8482
+ * @param distributions - The array of weight distributions for each bin.
8483
+ * @param binStep - The step interval between bin ids.
8484
+ * @param activeId - The id of the active bin.
8485
+ * @param depositForY - Flag indicating if the deposit is for token Y (bid side).
8486
+ * @param mint - Mint information for the token. Mint Y if depositForY is true, else Mint X. Get from DLMM instance.
8487
+ * @param clock - Clock instance for the current epoch. Get from DLMM instance.
8488
+ * @returns An array of objects containing binId and amount for each bin.
8489
+ */
6380
8490
  declare function fromWeightDistributionToAmountOneSide(amount: BN, distributions: {
6381
8491
  binId: number;
6382
8492
  weight: number;
6383
- }[], binStep: number, activeId: number, depositForY: boolean): {
8493
+ }[], binStep: number, activeId: number, depositForY: boolean, mint: Mint, clock: Clock): {
6384
8494
  binId: number;
6385
8495
  amount: BN;
6386
8496
  }[];
8497
+ /**
8498
+ * Converts a weight distribution into token amounts for both bid and ask sides.
8499
+ *
8500
+ * @param amountX - The total amount of token X to distribute.
8501
+ * @param amountY - The total amount of token Y to distribute.
8502
+ * @param distributions - The array of weight distributions for each bin.
8503
+ * @param binStep - The step interval between bin ids.
8504
+ * @param activeId - The id of the active bin.
8505
+ * @param amountXInActiveBin - The amount of token X in the active bin.
8506
+ * @param amountYInActiveBin - The amount of token Y in the active bin.
8507
+ * @param mintX - Mint information for token X. Get from DLMM instance.
8508
+ * @param mintY - Mint information for token Y. Get from DLMM instance.
8509
+ * @param clock - Clock instance for the current epoch. Get from DLMM instance.
8510
+ * @returns An array of objects containing binId, amountX, and amountY for each bin.
8511
+ */
6387
8512
  declare function fromWeightDistributionToAmount(amountX: BN, amountY: BN, distributions: {
6388
8513
  binId: number;
6389
8514
  weight: number;
6390
- }[], binStep: number, activeId: number, amountXInActiveBin: BN, amountYInActiveBin: BN): {
8515
+ }[], binStep: number, activeId: number, amountXInActiveBin: BN, amountYInActiveBin: BN, mintX: Mint, mintY: Mint, clock: Clock): {
6391
8516
  binId: number;
6392
8517
  amountX: BN;
6393
8518
  amountY: BN;
@@ -6412,24 +8537,58 @@ declare function swapExactInQuoteAtBin(bin: Bin, binStep: number, sParameter: sP
6412
8537
  protocolFee: BN;
6413
8538
  };
6414
8539
 
8540
+ /**
8541
+ * Distribute totalAmount to all bid side bins according to given distributions.
8542
+ * @param activeId active bin id
8543
+ * @param totalAmount total amount of token Y to be distributed
8544
+ * @param distributions weight distribution of each bin
8545
+ * @param mintY mint of token Y, get from DLMM instance
8546
+ * @param clock clock of the program, for calculating transfer fee, get from DLMM instance
8547
+ * @returns array of {binId, amount} where amount is the amount of token Y in each bin
8548
+ */
6415
8549
  declare function toAmountBidSide(activeId: number, totalAmount: BN, distributions: {
6416
8550
  binId: number;
6417
8551
  weight: number;
6418
- }[]): {
8552
+ }[], mintY: Mint, clock: Clock): {
6419
8553
  binId: number;
6420
8554
  amount: BN;
6421
8555
  }[];
8556
+ /**
8557
+ * Distribute totalAmount to all ask side bins according to given distributions.
8558
+ * @param activeId active bin id
8559
+ * @param totalAmount total amount of token Y to be distributed
8560
+ * @param distributions weight distribution of each bin
8561
+ * @param mintX mint of token X, get from DLMM instance
8562
+ * @param clock clock of the program, for calculating transfer fee, get from DLMM instance
8563
+ * @returns array of {binId, amount} where amount is the amount of token X in each bin
8564
+ */
6422
8565
  declare function toAmountAskSide(activeId: number, binStep: number, totalAmount: BN, distributions: {
6423
8566
  binId: number;
6424
8567
  weight: number;
6425
- }[]): {
8568
+ }[], mintX: Mint, clock: Clock): {
6426
8569
  binId: number;
6427
8570
  amount: BN;
6428
8571
  }[];
8572
+ /**
8573
+ * Distributes the given amounts of tokens X and Y to both bid and ask side bins
8574
+ * based on the provided weight distributions.
8575
+ *
8576
+ * @param activeId - The id of the active bin.
8577
+ * @param binStep - The step interval between bin ids.
8578
+ * @param amountX - Total amount of token X to distribute.
8579
+ * @param amountY - Total amount of token Y to distribute.
8580
+ * @param amountXInActiveBin - Amount of token X already in the active bin.
8581
+ * @param amountYInActiveBin - Amount of token Y already in the active bin.
8582
+ * @param distributions - Array of bins with their respective weight distributions.
8583
+ * @param mintX - Mint information for token X. Get from DLMM instance.
8584
+ * @param mintY - Mint information for token Y. Get from DLMM instance.
8585
+ * @param clock - Clock instance. Get from DLMM instance.
8586
+ * @returns An array of objects containing binId, amountX, and amountY for each bin.
8587
+ */
6429
8588
  declare function toAmountBothSide(activeId: number, binStep: number, amountX: BN, amountY: BN, amountXInActiveBin: BN, amountYInActiveBin: BN, distributions: {
6430
8589
  binId: number;
6431
8590
  weight: number;
6432
- }[]): {
8591
+ }[], mintX: Mint, mintY: Mint, clock: Clock): {
6433
8592
  binId: number;
6434
8593
  amountX: BN;
6435
8594
  amountY: BN;
@@ -6443,7 +8602,23 @@ declare function autoFillXByWeight(activeId: number, binStep: number, amountY: B
6443
8602
  weight: number;
6444
8603
  }[]): BN;
6445
8604
 
6446
- declare function toAmountsBothSideByStrategy(activeId: number, binStep: number, minBinId: number, maxBinId: number, amountX: BN, amountY: BN, amountXInActiveBin: BN, amountYInActiveBin: BN, strategyType: StrategyType): {
8605
+ /**
8606
+ * Given a strategy type and amounts of X and Y, returns the distribution of liquidity.
8607
+ * @param activeId The bin id of the active bin.
8608
+ * @param binStep The step size of each bin.
8609
+ * @param minBinId The min bin id.
8610
+ * @param maxBinId The max bin id.
8611
+ * @param amountX The amount of X token to deposit.
8612
+ * @param amountY The amount of Y token to deposit.
8613
+ * @param amountXInActiveBin The amount of X token in the active bin.
8614
+ * @param amountYInActiveBin The amount of Y token in the active bin.
8615
+ * @param strategyType The strategy type.
8616
+ * @param mintX The mint info of X token. Get from DLMM instance.
8617
+ * @param mintY The mint info of Y token. Get from DLMM instance.
8618
+ * @param clock The clock info. Get from DLMM instance.
8619
+ * @returns The distribution of liquidity.
8620
+ */
8621
+ declare function toAmountsBothSideByStrategy(activeId: number, binStep: number, minBinId: number, maxBinId: number, amountX: BN, amountY: BN, amountXInActiveBin: BN, amountYInActiveBin: BN, strategyType: StrategyType, mintX: Mint, mintY: Mint, clock: Clock): {
6447
8622
  binId: number;
6448
8623
  amountX: BN;
6449
8624
  amountY: BN;
@@ -6532,10 +8707,15 @@ declare function toStrategyParameters({ maxBinId, minBinId, strategyType, single
6532
8707
  */
6533
8708
  declare function getTokensMintFromPoolAddress(connection: Connection, poolAddress: string, opt?: {
6534
8709
  cluster?: Cluster;
8710
+ programId?: PublicKey;
6535
8711
  }): Promise<{
6536
8712
  tokenXMint: PublicKey;
6537
8713
  tokenYMint: PublicKey;
6538
8714
  }>;
8715
+ declare function getTokenProgramId(lbPairState: LbPair): {
8716
+ tokenXProgram: PublicKey;
8717
+ tokenYProgram: PublicKey;
8718
+ };
6539
8719
 
6540
8720
  declare function chunks<T>(array: T[], size: number): T[][];
6541
8721
  declare function range<T>(min: number, max: number, mapfn: (i: number) => T): T[];
@@ -6550,6 +8730,7 @@ declare function chunkedFetchMultiplePoolAccount(program: ClmmProgram, pks: Publ
6550
8730
  minBinId: number;
6551
8731
  maxBinId: number;
6552
8732
  protocolShare: number;
8733
+ baseFeePowerFactor: number;
6553
8734
  padding: number[];
6554
8735
  };
6555
8736
  vParameters: {
@@ -6600,6 +8781,8 @@ declare function chunkedFetchMultiplePoolAccount(program: ClmmProgram, pks: Publ
6600
8781
  padding3: number[];
6601
8782
  padding4: BN;
6602
8783
  creator: PublicKey;
8784
+ tokenMintXProgramFlag: number;
8785
+ tokenMintYProgramFlag: number;
6603
8786
  reserved: number[];
6604
8787
  }[]>;
6605
8788
  declare function chunkedFetchMultipleBinArrayBitmapExtensionAccount(program: ClmmProgram, pks: PublicKey[], chunkSize?: number): Promise<{
@@ -6609,7 +8792,7 @@ declare function chunkedFetchMultipleBinArrayBitmapExtensionAccount(program: Clm
6609
8792
  }[]>;
6610
8793
  declare function getOutAmount(bin: Bin, inAmount: BN, swapForY: boolean): BN;
6611
8794
  declare function getTokenDecimals(conn: Connection, mint: PublicKey): Promise<number>;
6612
- declare const getOrCreateATAInstruction: (connection: Connection, tokenMint: PublicKey, owner: PublicKey, payer?: PublicKey, allowOwnerOffCurve?: boolean) => Promise<GetOrCreateATAResponse>;
8795
+ declare const getOrCreateATAInstruction: (connection: Connection, tokenMint: PublicKey, owner: PublicKey, programId?: PublicKey, payer?: PublicKey, allowOwnerOffCurve?: boolean) => Promise<GetOrCreateATAResponse>;
6613
8796
  declare function getTokenBalance(conn: Connection, tokenAccount: PublicKey): Promise<bigint>;
6614
8797
  declare const parseLogs: <T>(eventParser: EventParser, logs: string[]) => T;
6615
8798
  declare const wrapSOLInstruction: (from: PublicKey, to: PublicKey, amount: bigint) => TransactionInstruction[];
@@ -6683,5 +8866,6 @@ declare const MAX_BIN_PER_TX = 69;
6683
8866
  declare const MAX_ACTIVE_BIN_SLIPPAGE = 3;
6684
8867
  declare const ILM_BASE: PublicKey;
6685
8868
  declare const MAX_EXTRA_BIN_ARRAYS = 3;
8869
+ declare const U64_MAX: BN;
6686
8870
 
6687
- export { ADMIN, ActivationType, BASIS_POINT_MAX, BIN_ARRAY_BITMAP_SIZE, BIN_ARRAY_FEE, Bin, BinAndAmount, BinArray, BinArrayAccount, BinArrayBitmapExtension, BinArrayBitmapExtensionAccount, BinLiquidity, BinLiquidityDistribution, BinLiquidityReduction, BitmapType, ClmmProgram, Clock, ClockLayout, CompressedBinDepositAmount, CompressedBinDepositAmounts, DLMMError, DlmmSdkError, EXTENSION_BINARRAY_BITMAP_SIZE, EmissionRate, FEE_PRECISION, FeeInfo, GetOrCreateATAResponse, IAccountsCache, IDL, ILM_BASE, InitCustomizablePermissionlessPairIx, InitPermissionPairIx, LBCLMM_PROGRAM_IDS, LMRewards, LbClmm, LbPair, LbPairAccount, LbPosition, LiquidityOneSideParameter, LiquidityParameter, LiquidityParameterByStrategy, LiquidityParameterByStrategyOneSide, LiquidityParameterByWeight, MAX_ACTIVE_BIN_SLIPPAGE, MAX_BIN_ARRAY_SIZE, MAX_BIN_LENGTH_ALLOWED_IN_ONE_TX, MAX_BIN_PER_POSITION, MAX_BIN_PER_TX, MAX_CLAIM_ALL_ALLOWED, MAX_EXTRA_BIN_ARRAYS, MAX_FEE_RATE, Network, POSITION_FEE, PRECISION, PairLockInfo, PairStatus, PairType, Position, PositionBinData, PositionData, PositionInfo, PositionLockInfo, PositionV2, PositionVersion, ProgramStrategyParameter, ProgramStrategyType, SCALE, SCALE_OFFSET, SIMULATION_USER, SeedLiquidityResponse, Strategy, StrategyParameters, StrategyType, SwapExactOutParams, SwapFee, SwapParams, SwapQuote, SwapQuoteExactOut, SwapWithPriceImpactParams, TInitializePositionAndAddLiquidityParams, TInitializePositionAndAddLiquidityParamsByStrategy, TQuoteCreatePositionParams, TokenReserve, autoFillXByStrategy, autoFillXByWeight, autoFillYByStrategy, autoFillYByWeight, binIdToBinArrayIndex, calculateBidAskDistribution, calculateNormalDistribution, calculateSpotDistribution, chunkedFetchMultipleBinArrayBitmapExtensionAccount, chunkedFetchMultiplePoolAccount, chunkedGetMultipleAccountInfos, chunks, computeFee, computeFeeFromAmount, computeProtocolFee, DLMM as default, deriveBinArray, deriveBinArrayBitmapExtension, deriveCustomizablePermissionlessLbPair, deriveLbPair, deriveLbPair2, deriveOracle, derivePermissionLbPair, derivePosition, derivePresetParameter, derivePresetParameter2, deriveReserve, enumerateBins, findNextBinArrayIndexWithLiquidity, findNextBinArrayWithLiquidity, fromWeightDistributionToAmount, fromWeightDistributionToAmountOneSide, getBaseFee, getBinArrayLowerUpperBinId, getBinArraysRequiredByPositionRange, getBinFromBinArray, getEstimatedComputeUnitIxWithBuffer, getEstimatedComputeUnitUsageWithBuffer, getOrCreateATAInstruction, getOutAmount, getPriceOfBinByBinId, getTokenBalance, getTokenDecimals, getTokensMintFromPoolAddress, getTotalFee, getVariableFee, isBinIdWithinBinArray, isOverflowDefaultBinArrayBitmap, parseLogs, range, sParameters, swapExactInQuoteAtBin, swapExactOutQuoteAtBin, toAmountAskSide, toAmountBidSide, toAmountBothSide, toAmountsBothSideByStrategy, toStrategyParameters, toWeightDistribution, unwrapSOLInstruction, vParameters, wrapSOLInstruction };
8871
+ export { ADMIN, ActionType, ActivationType, BASIS_POINT_MAX, BIN_ARRAY_BITMAP_SIZE, BIN_ARRAY_FEE, Bin, BinAndAmount, BinArray, BinArrayAccount, BinArrayBitmapExtension, BinArrayBitmapExtensionAccount, BinLiquidity, BinLiquidityDistribution, BinLiquidityReduction, BitmapType, ClmmProgram, Clock, ClockLayout, CompressedBinDepositAmount, CompressedBinDepositAmounts, DLMMError, DlmmSdkError, EXTENSION_BINARRAY_BITMAP_SIZE, EmissionRate, FEE_PRECISION, FeeInfo, GetOrCreateATAResponse, IAccountsCache, IDL, ILM_BASE, InitCustomizablePermissionlessPairIx, InitPermissionPairIx, LBCLMM_PROGRAM_IDS, LMRewards, LbClmm, LbPair, LbPairAccount, LbPosition, LiquidityOneSideParameter, LiquidityParameter, LiquidityParameterByStrategy, LiquidityParameterByStrategyOneSide, LiquidityParameterByWeight, MAX_ACTIVE_BIN_SLIPPAGE, MAX_BIN_ARRAY_SIZE, MAX_BIN_LENGTH_ALLOWED_IN_ONE_TX, MAX_BIN_PER_POSITION, MAX_BIN_PER_TX, MAX_CLAIM_ALL_ALLOWED, MAX_EXTRA_BIN_ARRAYS, MAX_FEE_RATE, MEMO_PROGRAM_ID, Network, POSITION_FEE, POSITION_V2_DISC, PRECISION, PairLockInfo, PairStatus, PairType, Position, PositionBinData, PositionData, PositionInfo, PositionLockInfo, PositionV2, PositionVersion, PresetParameter, PresetParameter2, ProgramStrategyParameter, ProgramStrategyType, RemainingAccountInfo, RemainingAccountsInfoSlice, SCALE, SCALE_OFFSET, SIMULATION_USER, SeedLiquidityResponse, Strategy, StrategyParameters, StrategyType, SwapExactOutParams, SwapFee, SwapParams, SwapQuote, SwapQuoteExactOut, SwapWithPriceImpactParams, TInitializePositionAndAddLiquidityParams, TInitializePositionAndAddLiquidityParamsByStrategy, TQuoteCreatePositionParams, TokenReserve, U64_MAX, UserFeeInfo, UserRewardInfo, autoFillXByStrategy, autoFillXByWeight, autoFillYByStrategy, autoFillYByWeight, binIdToBinArrayIndex, calculateBidAskDistribution, calculateNormalDistribution, calculateSpotDistribution, chunkedFetchMultipleBinArrayBitmapExtensionAccount, chunkedFetchMultiplePoolAccount, chunkedGetMultipleAccountInfos, chunks, computeFee, computeFeeFromAmount, computeProtocolFee, DLMM as default, deriveBinArray, deriveBinArrayBitmapExtension, deriveCustomizablePermissionlessLbPair, deriveEventAuthority, deriveLbPair, deriveLbPair2, deriveLbPairWithPresetParamWithIndexKey, deriveOracle, derivePermissionLbPair, derivePosition, derivePresetParameter, derivePresetParameter2, derivePresetParameterWithIndex, deriveReserve, deriveRewardVault, deriveTokenBadge, enumerateBins, findNextBinArrayIndexWithLiquidity, findNextBinArrayWithLiquidity, fromWeightDistributionToAmount, fromWeightDistributionToAmountOneSide, getBaseFee, getBinArrayLowerUpperBinId, getBinArraysRequiredByPositionRange, getBinFromBinArray, getEstimatedComputeUnitIxWithBuffer, getEstimatedComputeUnitUsageWithBuffer, getOrCreateATAInstruction, getOutAmount, getPriceOfBinByBinId, getTokenBalance, getTokenDecimals, getTokenProgramId, getTokensMintFromPoolAddress, getTotalFee, getVariableFee, isBinIdWithinBinArray, isOverflowDefaultBinArrayBitmap, parseLogs, range, sParameters, swapExactInQuoteAtBin, swapExactOutQuoteAtBin, toAmountAskSide, toAmountBidSide, toAmountBothSide, toAmountsBothSideByStrategy, toStrategyParameters, toWeightDistribution, unwrapSOLInstruction, vParameters, wrapSOLInstruction };