@meteora-ag/dlmm 1.3.17-rc.2 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,12 +1,11 @@
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, AccountMeta, TransactionInstruction, Connection, Transaction, Cluster } from '@solana/web3.js';
4
+ import { PublicKey, TransactionInstruction, Connection, Transaction, Cluster } from '@solana/web3.js';
5
5
  import Decimal from 'decimal.js';
6
- import { Mint } from '@solana/spl-token';
7
6
 
8
7
  type LbClmm = {
9
- "version": "0.9.0";
8
+ "version": "0.8.6";
10
9
  "name": "lb_clmm";
11
10
  "constants": [
12
11
  {
@@ -28,20 +27,6 @@ type LbClmm = {
28
27
  };
29
28
  "value": "70";
30
29
  },
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
- },
45
30
  {
46
31
  "name": "MIN_BIN_ID";
47
32
  "type": "i32";
@@ -158,20 +143,10 @@ type LbClmm = {
158
143
  "type": "bytes";
159
144
  "value": "[112, 114, 101, 115, 101, 116, 95, 112, 97, 114, 97, 109, 101, 116, 101, 114]";
160
145
  },
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
- },
166
146
  {
167
147
  "name": "POSITION";
168
148
  "type": "bytes";
169
149
  "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]";
175
150
  }
176
151
  ];
177
152
  "instructions": [
@@ -311,24 +286,7 @@ type LbClmm = {
311
286
  "isSigner": true;
312
287
  },
313
288
  {
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";
289
+ "name": "tokenProgram";
332
290
  "isMut": false;
333
291
  "isSigner": false;
334
292
  },
@@ -1587,19 +1545,6 @@ type LbClmm = {
1587
1545
  "isMut": true;
1588
1546
  "isSigner": false;
1589
1547
  },
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
- },
1603
1548
  {
1604
1549
  "name": "tokenXProgram";
1605
1550
  "isMut": false;
@@ -1609,11 +1554,6 @@ type LbClmm = {
1609
1554
  "name": "tokenYProgram";
1610
1555
  "isMut": false;
1611
1556
  "isSigner": false;
1612
- },
1613
- {
1614
- "name": "memoProgram";
1615
- "isMut": false;
1616
- "isSigner": false;
1617
1557
  }
1618
1558
  ];
1619
1559
  "args": [
@@ -1624,12 +1564,6 @@ type LbClmm = {
1624
1564
  {
1625
1565
  "name": "amountY";
1626
1566
  "type": "u64";
1627
- },
1628
- {
1629
- "name": "remainingAccountsInfo";
1630
- "type": {
1631
- "defined": "RemainingAccountsInfo";
1632
- };
1633
1567
  }
1634
1568
  ];
1635
1569
  },
@@ -1651,12 +1585,6 @@ type LbClmm = {
1651
1585
  "isMut": false;
1652
1586
  "isSigner": false;
1653
1587
  },
1654
- {
1655
- "name": "tokenBadge";
1656
- "isMut": false;
1657
- "isSigner": false;
1658
- "isOptional": true;
1659
- },
1660
1588
  {
1661
1589
  "name": "admin";
1662
1590
  "isMut": true;
@@ -1764,12 +1692,6 @@ type LbClmm = {
1764
1692
  {
1765
1693
  "name": "carryForward";
1766
1694
  "type": "bool";
1767
- },
1768
- {
1769
- "name": "remainingAccountsInfo";
1770
- "type": {
1771
- "defined": "RemainingAccountsInfo";
1772
- };
1773
1695
  }
1774
1696
  ];
1775
1697
  },
@@ -2192,27 +2114,6 @@ type LbClmm = {
2192
2114
  ];
2193
2115
  "args": [];
2194
2116
  },
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
- },
2216
2117
  {
2217
2118
  "name": "removeAllLiquidity";
2218
2119
  "accounts": [
@@ -2457,11 +2358,6 @@ type LbClmm = {
2457
2358
  "isMut": false;
2458
2359
  "isSigner": false;
2459
2360
  },
2460
- {
2461
- "name": "memoProgram";
2462
- "isMut": false;
2463
- "isSigner": false;
2464
- },
2465
2361
  {
2466
2362
  "name": "eventAuthority";
2467
2363
  "isMut": false;
@@ -2477,12 +2373,6 @@ type LbClmm = {
2477
2373
  {
2478
2374
  "name": "rewardIndex";
2479
2375
  "type": "u64";
2480
- },
2481
- {
2482
- "name": "remainingAccountsInfo";
2483
- "type": {
2484
- "defined": "RemainingAccountsInfo";
2485
- };
2486
2376
  }
2487
2377
  ];
2488
2378
  },
@@ -2787,1452 +2677,103 @@ type LbClmm = {
2787
2677
  "type": "u8";
2788
2678
  }
2789
2679
  ];
2790
- },
2791
- {
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": [];
2816
- },
2680
+ }
2681
+ ];
2682
+ "accounts": [
2817
2683
  {
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
- }
2840
- ];
2841
- "args": [];
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
+ };
2842
2728
  },
2843
2729
  {
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
- }
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, ..."
2861
2736
  ];
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
- };
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
+ };
4236
2777
  },
4237
2778
  {
4238
2779
  "name": "lbPair";
@@ -4482,25 +3023,11 @@ type LbClmm = {
4482
3023
  "type": "u64";
4483
3024
  },
4484
3025
  {
4485
- "name": "creator";
4486
- "docs": [
4487
- "Pool creator"
4488
- ];
4489
- "type": "publicKey";
4490
- },
4491
- {
4492
- "name": "tokenMintXProgramFlag";
4493
- "docs": [
4494
- "token_mint_x_program_flag"
4495
- ];
4496
- "type": "u8";
4497
- },
4498
- {
4499
- "name": "tokenMintYProgramFlag";
3026
+ "name": "creator";
4500
3027
  "docs": [
4501
- "token_mint_y_program_flag"
3028
+ "Pool creator"
4502
3029
  ];
4503
- "type": "u8";
3030
+ "type": "publicKey";
4504
3031
  },
4505
3032
  {
4506
3033
  "name": "reserved";
@@ -4510,7 +3037,7 @@ type LbClmm = {
4510
3037
  "type": {
4511
3038
  "array": [
4512
3039
  "u8",
4513
- 22
3040
+ 24
4514
3041
  ];
4515
3042
  };
4516
3043
  }
@@ -4816,103 +3343,6 @@ type LbClmm = {
4816
3343
  ];
4817
3344
  };
4818
3345
  },
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
- },
4916
3346
  {
4917
3347
  "name": "presetParameter";
4918
3348
  "type": {
@@ -4928,7 +3358,7 @@ type LbClmm = {
4928
3358
  {
4929
3359
  "name": "baseFactor";
4930
3360
  "docs": [
4931
- "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
3361
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step"
4932
3362
  ];
4933
3363
  "type": "u16";
4934
3364
  },
@@ -4990,48 +3420,14 @@ type LbClmm = {
4990
3420
  }
4991
3421
  ];
4992
3422
  };
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
- };
5023
3423
  }
5024
3424
  ];
5025
3425
  "types": [
5026
3426
  {
5027
- "name": "InitPresetParameters2Ix";
3427
+ "name": "InitPresetParametersIx";
5028
3428
  "type": {
5029
3429
  "kind": "struct";
5030
3430
  "fields": [
5031
- {
5032
- "name": "index";
5033
- "type": "u16";
5034
- },
5035
3431
  {
5036
3432
  "name": "binStep";
5037
3433
  "docs": [
@@ -5042,7 +3438,7 @@ type LbClmm = {
5042
3438
  {
5043
3439
  "name": "baseFactor";
5044
3440
  "docs": [
5045
- "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
3441
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step"
5046
3442
  ];
5047
3443
  "type": "u16";
5048
3444
  },
@@ -5082,75 +3478,18 @@ type LbClmm = {
5082
3478
  "type": "u32";
5083
3479
  },
5084
3480
  {
5085
- "name": "protocolShare";
5086
- "docs": [
5087
- "Portion of swap fees retained by the protocol by controlling protocol_share parameter. protocol_swap_fee = protocol_share * total_swap_fee"
5088
- ];
5089
- "type": "u16";
5090
- },
5091
- {
5092
- "name": "baseFeePowerFactor";
5093
- "docs": [
5094
- "Base fee power factor"
5095
- ];
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";
3481
+ "name": "minBinId";
5143
3482
  "docs": [
5144
- "Used to scale the variable fee component depending on the dynamic of the market"
3483
+ "Min bin id supported by the pool based on the configured bin step."
5145
3484
  ];
5146
- "type": "u32";
3485
+ "type": "i32";
5147
3486
  },
5148
3487
  {
5149
- "name": "maxVolatilityAccumulator";
3488
+ "name": "maxBinId";
5150
3489
  "docs": [
5151
- "Maximum number of bin crossed can be accumulated. Used to cap volatile fee rate."
3490
+ "Max bin id supported by the pool based on the configured bin step."
5152
3491
  ];
5153
- "type": "u32";
3492
+ "type": "i32";
5154
3493
  },
5155
3494
  {
5156
3495
  "name": "protocolShare";
@@ -5180,13 +3519,6 @@ type LbClmm = {
5180
3519
  "Base factor for base fee rate"
5181
3520
  ];
5182
3521
  "type": "u16";
5183
- },
5184
- {
5185
- "name": "baseFeePowerFactor";
5186
- "docs": [
5187
- "Base fee power factor"
5188
- ];
5189
- "type": "u8";
5190
3522
  }
5191
3523
  ];
5192
3524
  };
@@ -5623,13 +3955,6 @@ type LbClmm = {
5623
3955
  ];
5624
3956
  "type": "bool";
5625
3957
  },
5626
- {
5627
- "name": "baseFeePowerFactor";
5628
- "docs": [
5629
- "Base fee power factor"
5630
- ];
5631
- "type": "u8";
5632
- },
5633
3958
  {
5634
3959
  "name": "padding";
5635
3960
  "docs": [
@@ -5638,7 +3963,7 @@ type LbClmm = {
5638
3963
  "type": {
5639
3964
  "array": [
5640
3965
  "u8",
5641
- 62
3966
+ 63
5642
3967
  ];
5643
3968
  };
5644
3969
  }
@@ -5660,86 +3985,19 @@ type LbClmm = {
5660
3985
  },
5661
3986
  {
5662
3987
  "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
- };
5691
- };
5692
- },
5693
- {
5694
- "name": "decompressMultiplier";
5695
- "type": "u64";
5696
- },
5697
- {
5698
- "name": "maxAmount";
5699
- "type": "u64";
5700
- }
5701
- ];
5702
- };
5703
- },
5704
- {
5705
- "name": "CompressedBinDepositAmount2";
5706
- "type": {
5707
- "kind": "struct";
5708
- "fields": [
5709
- {
5710
- "name": "binId";
5711
- "type": "i32";
5712
- },
5713
- {
5714
- "name": "amount";
5715
- "type": "u32";
5716
- }
5717
- ];
5718
- };
5719
- },
5720
- {
5721
- "name": "InitializeLbPair2Params";
5722
- "type": {
5723
- "kind": "struct";
5724
- "fields": [
3988
+ "type": "u16";
3989
+ },
5725
3990
  {
5726
- "name": "activeId";
5727
- "docs": [
5728
- "Pool price"
5729
- ];
3991
+ "name": "minBinId";
5730
3992
  "type": "i32";
5731
3993
  },
5732
3994
  {
5733
- "name": "padding";
5734
- "docs": [
5735
- "Padding, for future use"
5736
- ];
5737
- "type": {
5738
- "array": [
5739
- "u8",
5740
- 96
5741
- ];
5742
- };
3995
+ "name": "maxBinId";
3996
+ "type": "i32";
3997
+ },
3998
+ {
3999
+ "name": "activationType";
4000
+ "type": "u8";
5743
4001
  }
5744
4002
  ];
5745
4003
  };
@@ -5959,7 +4217,7 @@ type LbClmm = {
5959
4217
  {
5960
4218
  "name": "baseFactor";
5961
4219
  "docs": [
5962
- "Used for base fee calculation. base_fee_rate = base_factor * bin_step * 10 * 10^base_fee_power_factor"
4220
+ "Used for base fee calculation. base_fee_rate = base_factor * bin_step"
5963
4221
  ];
5964
4222
  "type": "u16";
5965
4223
  },
@@ -6019,13 +4277,6 @@ type LbClmm = {
6019
4277
  ];
6020
4278
  "type": "u16";
6021
4279
  },
6022
- {
6023
- "name": "baseFeePowerFactor";
6024
- "docs": [
6025
- "Base fee power factor"
6026
- ];
6027
- "type": "u8";
6028
- },
6029
4280
  {
6030
4281
  "name": "padding";
6031
4282
  "docs": [
@@ -6034,7 +4285,7 @@ type LbClmm = {
6034
4285
  "type": {
6035
4286
  "array": [
6036
4287
  "u8",
6037
- 5
4288
+ 6
6038
4289
  ];
6039
4290
  };
6040
4291
  }
@@ -6155,40 +4406,6 @@ type LbClmm = {
6155
4406
  ];
6156
4407
  };
6157
4408
  },
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
- },
6192
4409
  {
6193
4410
  "name": "StrategyType";
6194
4411
  "type": {
@@ -6288,9 +4505,6 @@ type LbClmm = {
6288
4505
  },
6289
4506
  {
6290
4507
  "name": "CustomizablePermissionless";
6291
- },
6292
- {
6293
- "name": "PermissionlessV2";
6294
4508
  }
6295
4509
  ];
6296
4510
  };
@@ -6311,37 +4525,6 @@ type LbClmm = {
6311
4525
  }
6312
4526
  ];
6313
4527
  };
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
- };
6345
4528
  }
6346
4529
  ];
6347
4530
  "events": [
@@ -6735,66 +4918,6 @@ type LbClmm = {
6735
4918
  }
6736
4919
  ];
6737
4920
  },
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
- },
6798
4921
  {
6799
4922
  "name": "FeeParameterUpdate";
6800
4923
  "fields": [
@@ -7301,76 +5424,6 @@ type LbClmm = {
7301
5424
  "code": 6068;
7302
5425
  "name": "InvalidMinimumLiquidity";
7303
5426
  "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";
7374
5427
  }
7375
5428
  ];
7376
5429
  };
@@ -7384,10 +5437,8 @@ interface BinAndAmount {
7384
5437
  interface TokenReserve {
7385
5438
  publicKey: PublicKey;
7386
5439
  reserve: PublicKey;
7387
- mint: Mint;
7388
5440
  amount: bigint;
7389
- owner: PublicKey;
7390
- transferHookAccountMetas: AccountMeta[];
5441
+ decimal: number;
7391
5442
  }
7392
5443
  type ClmmProgram = Program<LbClmm>;
7393
5444
  type LbPair = IdlAccounts<LbClmm>["lbPair"];
@@ -7397,12 +5448,8 @@ type BinArray = IdlAccounts<LbClmm>["binArray"];
7397
5448
  type BinArrayAccount = ProgramAccount<IdlAccounts<LbClmm>["binArray"]>;
7398
5449
  type Position = IdlAccounts<LbClmm>["position"];
7399
5450
  type PositionV2 = IdlAccounts<LbClmm>["positionV2"];
7400
- type PresetParameter = IdlAccounts<LbClmm>["presetParameter"];
7401
- type PresetParameter2 = IdlAccounts<LbClmm>["presetParameter2"];
7402
5451
  type vParameters = IdlAccounts<LbClmm>["lbPair"]["vParameters"];
7403
5452
  type sParameters = IdlAccounts<LbClmm>["lbPair"]["parameters"];
7404
- type UserRewardInfo = IdlTypes<LbClmm>["UserRewardInfo"];
7405
- type UserFeeInfo = IdlTypes<LbClmm>["FeeInfo"];
7406
5453
  type InitPermissionPairIx = IdlTypes<LbClmm>["InitPermissionPairIx"];
7407
5454
  type InitCustomizablePermissionlessPairIx = IdlTypes<LbClmm>["CustomizableParams"];
7408
5455
  type BinLiquidityDistribution = IdlTypes<LbClmm>["BinLiquidityDistribution"];
@@ -7416,11 +5463,8 @@ type LiquidityParameterByStrategyOneSide = IdlTypes<LbClmm>["LiquidityParameterB
7416
5463
  type LiquidityParameter = IdlTypes<LbClmm>["LiquidityParameter"];
7417
5464
  type ProgramStrategyParameter = IdlTypes<LbClmm>["StrategyParameters"];
7418
5465
  type ProgramStrategyType = IdlTypes<LbClmm>["StrategyType"];
7419
- type RemainingAccountInfo = IdlTypes<LbClmm>["RemainingAccountsInfo"];
7420
- type RemainingAccountsInfoSlice = IdlTypes<LbClmm>["RemainingAccountsSlice"];
7421
5466
  type CompressedBinDepositAmount = IdlTypes<LbClmm>["CompressedBinDepositAmount"];
7422
5467
  type CompressedBinDepositAmounts = CompressedBinDepositAmount[];
7423
- declare const POSITION_V2_DISC: Buffer;
7424
5468
  interface LbPosition {
7425
5469
  publicKey: PublicKey;
7426
5470
  positionData: PositionData;
@@ -7457,8 +5501,7 @@ interface LMRewards {
7457
5501
  }
7458
5502
  declare enum PositionVersion {
7459
5503
  V1 = 0,
7460
- V2 = 1,
7461
- V3 = 2
5504
+ V2 = 1
7462
5505
  }
7463
5506
  declare enum PairType {
7464
5507
  Permissionless = 0,
@@ -7485,12 +5528,9 @@ declare const Strategy: {
7485
5528
  };
7486
5529
  };
7487
5530
  declare enum StrategyType {
7488
- SpotImBalanced = 0,
7489
- CurveImBalanced = 1,
7490
- BidAskImBalanced = 2,
7491
- SpotBalanced = 3,
7492
- CurveBalanced = 4,
7493
- BidAskBalanced = 5
5531
+ Spot = 0,
5532
+ Curve = 1,
5533
+ BidAsk = 2
7494
5534
  }
7495
5535
  declare enum ActivationType {
7496
5536
  Slot = 0,
@@ -7529,9 +5569,6 @@ interface BinLiquidity {
7529
5569
  version: number;
7530
5570
  price: string;
7531
5571
  pricePerToken: string;
7532
- feeAmountXPerTokenStored: BN;
7533
- feeAmountYPerTokenStored: BN;
7534
- rewardPerTokenStored: BN[];
7535
5572
  }
7536
5573
  declare namespace BinLiquidity {
7537
5574
  function fromBin(bin: Bin, binId: number, binStep: number, baseTokenDecimal: number, quoteTokenDecimal: number, version: number): BinLiquidity;
@@ -7570,9 +5607,6 @@ interface PositionBinData {
7570
5607
  positionLiquidity: string;
7571
5608
  positionXAmount: string;
7572
5609
  positionYAmount: string;
7573
- positionFeeXAmount: string;
7574
- positionFeeYAmount: string;
7575
- positionRewardAmount: string[];
7576
5610
  }
7577
5611
  interface PositionData {
7578
5612
  totalXAmount: string;
@@ -7588,13 +5622,6 @@ interface PositionData {
7588
5622
  feeOwner: PublicKey;
7589
5623
  totalClaimedFeeXAmount: BN;
7590
5624
  totalClaimedFeeYAmount: BN;
7591
- feeXExcludeTransferFee: BN;
7592
- feeYExcludeTransferFee: BN;
7593
- rewardOneExcludeTransferFee: BN;
7594
- rewardTwoExcludeTransferFee: BN;
7595
- totalXAmountExcludeTransferFee: BN;
7596
- totalYAmountExcludeTransferFee: BN;
7597
- owner: PublicKey;
7598
5625
  }
7599
5626
  interface SwapWithPriceImpactParams {
7600
5627
  /**
@@ -7712,11 +5739,6 @@ interface PositionLockInfo {
7712
5739
  tokenYAmount: string;
7713
5740
  lockReleasePoint: number;
7714
5741
  }
7715
- declare enum ActionType {
7716
- Liquidity = 0,
7717
- Reward = 1
7718
- }
7719
- declare const MEMO_PROGRAM_ID: PublicKey;
7720
5742
 
7721
5743
  type Opt = {
7722
5744
  cluster?: Cluster | "localhost";
@@ -7729,10 +5751,9 @@ declare class DLMM {
7729
5751
  binArrayBitmapExtension: BinArrayBitmapExtensionAccount | null;
7730
5752
  tokenX: TokenReserve;
7731
5753
  tokenY: TokenReserve;
7732
- rewards: Array<TokenReserve | null>;
7733
5754
  clock: Clock;
7734
5755
  private opt?;
7735
- constructor(pubkey: PublicKey, program: ClmmProgram, lbPair: LbPair, binArrayBitmapExtension: BinArrayBitmapExtensionAccount | null, tokenX: TokenReserve, tokenY: TokenReserve, rewards: Array<TokenReserve | null>, clock: Clock, opt?: Opt);
5756
+ constructor(pubkey: PublicKey, program: ClmmProgram, lbPair: LbPair, binArrayBitmapExtension: BinArrayBitmapExtensionAccount | null, tokenX: TokenReserve, tokenY: TokenReserve, clock: Clock, opt?: Opt);
7736
5757
  /** Static public method */
7737
5758
  /**
7738
5759
  * The function `getLbPairs` retrieves a list of LB pair accounts using a connection and optional
@@ -7745,18 +5766,7 @@ declare class DLMM {
7745
5766
  * `LbPairAccount` objects.
7746
5767
  */
7747
5768
  static getLbPairs(connection: Connection, opt?: Opt): Promise<LbPairAccount[]>;
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>;
5769
+ static getPairPubkeyIfExists(connection: Connection, tokenX: PublicKey, tokenY: PublicKey, binStep: BN, baseFactor: BN, opt?: Opt): Promise<PublicKey | null>;
7760
5770
  /**
7761
5771
  * The `create` function is a static method that creates a new instance of the `DLMM` class
7762
5772
  * @param {Connection} connection - The `connection` parameter is an instance of the `Connection`
@@ -7777,46 +5787,18 @@ declare class DLMM {
7777
5787
  * objects.
7778
5788
  */
7779
5789
  static createMultiple(connection: Connection, dlmmList: Array<PublicKey>, opt?: Opt): Promise<DLMM[]>;
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
- }>;
5790
+ static getAllPresetParameters(connection: Connection, opt?: Opt): Promise<_coral_xyz_anchor.ProgramAccount<{
5791
+ binStep: number;
5792
+ baseFactor: number;
5793
+ filterPeriod: number;
5794
+ decayPeriod: number;
5795
+ reductionFactor: number;
5796
+ variableFeeControl: number;
5797
+ maxVolatilityAccumulator: number;
5798
+ minBinId: number;
5799
+ maxBinId: number;
5800
+ protocolShare: number;
5801
+ }>[]>;
7820
5802
  /**
7821
5803
  * The function `getAllLbPairPositionsByUser` retrieves all liquidity pool pair positions for a given
7822
5804
  * user.
@@ -7832,74 +5814,17 @@ declare class DLMM {
7832
5814
  static getPricePerLamport(tokenXDecimal: number, tokenYDecimal: number, price: number): string;
7833
5815
  static getBinIdFromPrice(price: string | number | Decimal, binStep: number, min: boolean): number;
7834
5816
  /**
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
- */
5817
+ * The function `getLbPairLockInfo` retrieves all pair positions that has locked liquidity.
5818
+ * @param {number} [lockDurationOpt] - An optional value indicating the minimum position lock duration that the function should return.
5819
+ * Depending on the lbPair activationType, the param should be a number of seconds or a number of slots.
5820
+ * @returns The function `getLbPairLockInfo` returns a `Promise` that resolves to a `PairLockInfo`
5821
+ * object. The `PairLockInfo` object contains an array of `PositionLockInfo` objects.
5822
+ */
7841
5823
  getLbPairLockInfo(lockDurationOpt?: number): Promise<PairLockInfo>;
7842
5824
  /** Public methods */
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
- */
5825
+ static createPermissionLbPair(connection: Connection, binStep: BN, tokenX: PublicKey, tokenY: PublicKey, activeId: BN, baseKey: PublicKey, creatorKey: PublicKey, feeBps: BN, activationType: ActivationType, opt?: Opt): Promise<Transaction>;
7874
5826
  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
- */
7889
5827
  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>;
7903
5828
  /**
7904
5829
  * The function `refetchStates` retrieves and updates various states and data related to bin arrays
7905
5830
  * and lb pairs.
@@ -7928,15 +5853,7 @@ declare class DLMM {
7928
5853
  * @returns an array of `BinArrayAccount` objects.
7929
5854
  */
7930
5855
  getBinArrayForSwap(swapForY: any, count?: number): Promise<BinArrayAccount[]>;
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">;
5856
+ static calculateFeeInfo(baseFactor: number | string, binStep: number | string): Omit<FeeInfo, "protocolFeePercentage">;
7940
5857
  /**
7941
5858
  * The function `getFeeInfo` calculates and returns the base fee rate percentage, maximum fee rate
7942
5859
  * percentage, and protocol fee percentage.
@@ -8086,12 +6003,11 @@ declare class DLMM {
8086
6003
  * - `strategy`: The strategy parameters to be used for the liquidity pool (Can use `calculateStrategyParameter` to calculate).
8087
6004
  * - `user`: The public key of the user account.
8088
6005
  * - `slippage`: The slippage percentage to be used for the liquidity pool.
8089
- * @returns {Promise<Transaction>} The function `initializePositionAndAddLiquidityByStrategy` returns a `Promise` that
6006
+ * @returns {Promise<Transaction>} The function `initializePositionAndAddLiquidityByWeight` returns a `Promise` that
8090
6007
  * resolves to either a single `Transaction` object.
8091
6008
  */
8092
6009
  initializePositionAndAddLiquidityByStrategy({ positionPubKey, totalXAmount, totalYAmount, strategy, user, slippage, }: TInitializePositionAndAddLiquidityParamsByStrategy): Promise<Transaction>;
8093
6010
  /**
8094
- * @deprecated Use `initializePositionAndAddLiquidityByStrategy` instead which support both token and token2022.
8095
6011
  * The function `initializePositionAndAddLiquidityByWeight` function is used to initializes a position and adds liquidity
8096
6012
  * @param {TInitializePositionAndAddLiquidityParams}
8097
6013
  * - `positionPubKey`: The public key of the position account. (usually use `new Keypair()`)
@@ -8118,7 +6034,6 @@ declare class DLMM {
8118
6034
  */
8119
6035
  addLiquidityByStrategy({ positionPubKey, totalXAmount, totalYAmount, strategy, user, slippage, }: TInitializePositionAndAddLiquidityParamsByStrategy): Promise<Transaction>;
8120
6036
  /**
8121
- * @deprecated Use `addLiquidityByStrategy` instead which support both token and token2022.
8122
6037
  * The `addLiquidityByWeight` function is used to add liquidity to existing position
8123
6038
  * @param {TInitializePositionAndAddLiquidityParams}
8124
6039
  * - `positionPubKey`: The public key of the position account. (usually use `new Keypair()`)
@@ -8137,27 +6052,18 @@ declare class DLMM {
8137
6052
  * @param
8138
6053
  * - `user`: The public key of the user account.
8139
6054
  * - `position`: The public key of the position account.
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.
6055
+ * - `binIds`: An array of numbers that represent the bin IDs to remove liquidity from.
8142
6056
  * - `liquiditiesBpsToRemove`: An array of numbers (percentage) that represent the liquidity to remove from each bin.
8143
6057
  * - `shouldClaimAndClose`: A boolean flag that indicates whether to claim rewards and close the position.
8144
- * @returns {Promise<Transaction | Transaction[]>}
6058
+ * @returns {Promise<Transaction|Transaction[]>}
8145
6059
  */
8146
- removeLiquidity({ user, position, fromBinId, toBinId, bps, shouldClaimAndClose, }: {
6060
+ removeLiquidity({ user, position, binIds, bps, shouldClaimAndClose, }: {
8147
6061
  user: PublicKey;
8148
6062
  position: PublicKey;
8149
- fromBinId: number;
8150
- toBinId: number;
6063
+ binIds: number[];
8151
6064
  bps: BN;
8152
6065
  shouldClaimAndClose?: boolean;
8153
6066
  }): 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>;
8161
6067
  /**
8162
6068
  * The `closePosition` function closes a position
8163
6069
  * @param
@@ -8239,7 +6145,7 @@ declare class DLMM {
8239
6145
  * @param
8240
6146
  * - `owner`: The public key of the owner of the position.
8241
6147
  * - `position`: The public key of the position account.
8242
- * @returns {Promise<Transaction>} Claim LM reward transactions.
6148
+ * @returns {Promise<Transaction>}
8243
6149
  */
8244
6150
  claimLMReward({ owner, position, }: {
8245
6151
  owner: PublicKey;
@@ -8251,7 +6157,7 @@ declare class DLMM {
8251
6157
  * @param
8252
6158
  * - `owner`: The public key of the owner of the positions.
8253
6159
  * - `positions`: An array of objects of type `PositionData` that represents the positions to claim rewards from.
8254
- * @returns {Promise<Transaction[]>} Array of claim LM reward and fees transactions.
6160
+ * @returns {Promise<Transaction[]>}
8255
6161
  */
8256
6162
  claimAllLMRewards({ owner, positions, }: {
8257
6163
  owner: PublicKey;
@@ -8264,8 +6170,7 @@ declare class DLMM {
8264
6170
  * @param
8265
6171
  * - `owner`: The public key of the owner of the position.
8266
6172
  * - `position`: The public key of the position account.
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.
6173
+ * @returns {Promise<Transaction>}
8269
6174
  */
8270
6175
  claimSwapFee({ owner, position, }: {
8271
6176
  owner: PublicKey;
@@ -8276,7 +6181,7 @@ declare class DLMM {
8276
6181
  * @param
8277
6182
  * - `owner`: The public key of the owner of the positions.
8278
6183
  * - `positions`: An array of objects of type `PositionData` that represents the positions to claim swap fees from.
8279
- * @returns {Promise<Transaction[]>} Array of claim swap fee transactions.
6184
+ * @returns {Promise<Transaction[]>}
8280
6185
  */
8281
6186
  claimAllSwapFee({ owner, positions, }: {
8282
6187
  owner: PublicKey;
@@ -8288,14 +6193,14 @@ declare class DLMM {
8288
6193
  * @param
8289
6194
  * - `owner`: The public key of the owner of the position.
8290
6195
  * - `position`: The public key of the position account.
8291
- * @returns {Promise<Transaction[]>} Array of claim reward transactions.
6196
+ * @returns {Promise<Transaction[]>}
8292
6197
  */
8293
6198
  claimAllRewardsByPosition({ owner, position, }: {
8294
6199
  owner: PublicKey;
8295
6200
  position: LbPosition;
8296
6201
  }): Promise<Transaction[]>;
8297
6202
  /**
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.
6203
+ * The `seedLiquidity` function create multiple grouped instructions. The grouped instructions will be either [initialize bin array + initialize position instructions] or [deposit instruction] combination.
8299
6204
  * @param
8300
6205
  * - `owner`: The public key of the positions owner.
8301
6206
  * - `seedAmount`: Lamport amount to be seeded to the pool.
@@ -8311,22 +6216,22 @@ declare class DLMM {
8311
6216
  */
8312
6217
  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>;
8313
6218
  /**
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
- */
6219
+ * The `seedLiquidity` function create multiple grouped instructions. The grouped instructions will be either [initialize bin array + initialize position instructions] or [deposit instruction] combination.
6220
+ * @param
6221
+ * - `payer`: The public key of the tx payer.
6222
+ * - `base`: Base key
6223
+ * - `seedAmount`: Token X lamport amount to be seeded to the pool.
6224
+ * - `price`: TokenX/TokenY Price in UI format
6225
+ * - `roundingUp`: Whether to round up the price
6226
+ * - `positionOwner`: The owner of the position
6227
+ * - `feeOwner`: Position fee owner
6228
+ * - `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.
6229
+ * - `lockReleasePoint`: The lock release point of the position.
6230
+ * - `shouldSeedPositionOwner` (optional): Whether to send 1 lamport amount of token X to the position owner to prove ownership.
6231
+ *
6232
+ * The returned instructions need to be executed sequentially if it was separated into multiple transactions.
6233
+ * @returns {Promise<TransactionInstruction[]>}
6234
+ */
8330
6235
  seedLiquiditySingleBin(payer: PublicKey, base: PublicKey, seedAmount: BN, price: number, roundingUp: boolean, positionOwner: PublicKey, feeOwner: PublicKey, operator: PublicKey, lockReleasePoint: BN, shouldSeedPositionOwner?: boolean): Promise<TransactionInstruction[]>;
8331
6236
  /**
8332
6237
  * Initializes bin arrays for the given bin array indexes if it wasn't initialized.
@@ -8364,7 +6269,7 @@ declare class DLMM {
8364
6269
  * @param
8365
6270
  * - `owner`: The public key of the owner of the positions.
8366
6271
  * - `positions`: An array of objects of type `PositionData` that represents the positions to claim swap fees and LM rewards from.
8367
- * @returns {Promise<Transaction[]>} Array of claim swap fee and LM reward transactions.
6272
+ * @returns {Promise<Transaction[]>}
8368
6273
  */
8369
6274
  claimAllRewards({ owner, positions, }: {
8370
6275
  owner: PublicKey;
@@ -8380,6 +6285,10 @@ declare class DLMM {
8380
6285
  */
8381
6286
  syncWithMarketPrice(marketPrice: number, owner: PublicKey): Promise<Transaction>;
8382
6287
  getMaxPriceInBinArrays(binArrayAccounts: BinArrayAccount[]): Promise<string>;
6288
+ getAmountOutWithdrawSingleSide(maxLiquidityShare: BN, price: BN, bin: Bin, isWithdrawForY: boolean): {
6289
+ withdrawAmount: BN;
6290
+ };
6291
+ getWithdrawSingleSideAmount(positionPubkey: PublicKey, isWithdrawForY: boolean): Promise<BN>;
8383
6292
  /**
8384
6293
  *
8385
6294
  * @param swapInitiator Address of the swap initiator
@@ -8388,6 +6297,8 @@ declare class DLMM {
8388
6297
  isSwapDisabled(swapInitiator: PublicKey): boolean;
8389
6298
  /** Private static method */
8390
6299
  private static getBinArrays;
6300
+ private static getClaimableLMReward;
6301
+ private static getClaimableSwapFee;
8391
6302
  private static processPosition;
8392
6303
  private static getBinsBetweenLowerAndUpperBound;
8393
6304
  /** Private method */
@@ -8399,12 +6310,9 @@ declare class DLMM {
8399
6310
  private updateReference;
8400
6311
  private createClaimBuildMethod;
8401
6312
  private createClaimSwapFeeMethod;
8402
- private getPotentialToken2022IxDataAndAccounts;
8403
6313
  }
8404
6314
 
8405
6315
  /** 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];
8408
6316
  /**
8409
6317
  *
8410
6318
  * @deprecated Use derivePresetParameter2
@@ -8423,9 +6331,6 @@ declare function deriveOracle(lbPair: PublicKey, programId: PublicKey): [PublicK
8423
6331
  declare function derivePosition(lbPair: PublicKey, base: PublicKey, lowerBinId: BN, width: BN, programId: PublicKey): [PublicKey, number];
8424
6332
  declare function deriveBinArray(lbPair: PublicKey, index: BN, programId: PublicKey): [PublicKey, number];
8425
6333
  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];
8429
6334
 
8430
6335
  /** private */
8431
6336
  declare function isOverflowDefaultBinArrayBitmap(binArrayIndex: BN): boolean;
@@ -8475,44 +6380,17 @@ declare function calculateNormalDistribution(activeBin: number, binIds: number[]
8475
6380
  xAmountBpsOfTotal: BN;
8476
6381
  yAmountBpsOfTotal: BN;
8477
6382
  }[];
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
- */
8490
6383
  declare function fromWeightDistributionToAmountOneSide(amount: BN, distributions: {
8491
6384
  binId: number;
8492
6385
  weight: number;
8493
- }[], binStep: number, activeId: number, depositForY: boolean, mint: Mint, clock: Clock): {
6386
+ }[], binStep: number, activeId: number, depositForY: boolean): {
8494
6387
  binId: number;
8495
6388
  amount: BN;
8496
6389
  }[];
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
- */
8512
6390
  declare function fromWeightDistributionToAmount(amountX: BN, amountY: BN, distributions: {
8513
6391
  binId: number;
8514
6392
  weight: number;
8515
- }[], binStep: number, activeId: number, amountXInActiveBin: BN, amountYInActiveBin: BN, mintX: Mint, mintY: Mint, clock: Clock): {
6393
+ }[], binStep: number, activeId: number, amountXInActiveBin: BN, amountYInActiveBin: BN): {
8516
6394
  binId: number;
8517
6395
  amountX: BN;
8518
6396
  amountY: BN;
@@ -8537,58 +6415,24 @@ declare function swapExactInQuoteAtBin(bin: Bin, binStep: number, sParameter: sP
8537
6415
  protocolFee: BN;
8538
6416
  };
8539
6417
 
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
- */
8549
6418
  declare function toAmountBidSide(activeId: number, totalAmount: BN, distributions: {
8550
6419
  binId: number;
8551
6420
  weight: number;
8552
- }[], mintY: Mint, clock: Clock): {
6421
+ }[]): {
8553
6422
  binId: number;
8554
6423
  amount: BN;
8555
6424
  }[];
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
- */
8565
6425
  declare function toAmountAskSide(activeId: number, binStep: number, totalAmount: BN, distributions: {
8566
6426
  binId: number;
8567
6427
  weight: number;
8568
- }[], mintX: Mint, clock: Clock): {
6428
+ }[]): {
8569
6429
  binId: number;
8570
6430
  amount: BN;
8571
6431
  }[];
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
- */
8588
6432
  declare function toAmountBothSide(activeId: number, binStep: number, amountX: BN, amountY: BN, amountXInActiveBin: BN, amountYInActiveBin: BN, distributions: {
8589
6433
  binId: number;
8590
6434
  weight: number;
8591
- }[], mintX: Mint, mintY: Mint, clock: Clock): {
6435
+ }[]): {
8592
6436
  binId: number;
8593
6437
  amountX: BN;
8594
6438
  amountY: BN;
@@ -8602,23 +6446,7 @@ declare function autoFillXByWeight(activeId: number, binStep: number, amountY: B
8602
6446
  weight: number;
8603
6447
  }[]): BN;
8604
6448
 
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): {
6449
+ declare function toAmountsBothSideByStrategy(activeId: number, binStep: number, minBinId: number, maxBinId: number, amountX: BN, amountY: BN, amountXInActiveBin: BN, amountYInActiveBin: BN, strategyType: StrategyType): {
8622
6450
  binId: number;
8623
6451
  amountX: BN;
8624
6452
  amountY: BN;
@@ -8626,49 +6454,10 @@ declare function toAmountsBothSideByStrategy(activeId: number, binStep: number,
8626
6454
  declare function autoFillYByStrategy(activeId: number, binStep: number, amountX: BN, amountXInActiveBin: BN, amountYInActiveBin: BN, minBinId: number, maxBinId: number, strategyType: StrategyType): BN;
8627
6455
  declare function autoFillXByStrategy(activeId: number, binStep: number, amountY: BN, amountXInActiveBin: BN, amountYInActiveBin: BN, minBinId: number, maxBinId: number, strategyType: StrategyType): BN;
8628
6456
  declare function toStrategyParameters({ maxBinId, minBinId, strategyType, singleSidedX, }: StrategyParameters): {
8629
- minBinId: number;
8630
- maxBinId: number;
8631
- strategyType: {
8632
- spotBalanced: {};
8633
- curveBalanced?: undefined;
8634
- bidAskBalanced?: undefined;
8635
- spotImBalanced?: undefined;
8636
- curveImBalanced?: undefined;
8637
- bidAskImBalanced?: undefined;
8638
- };
8639
- parameteres: number[];
8640
- } | {
8641
- minBinId: number;
8642
- maxBinId: number;
8643
- strategyType: {
8644
- curveBalanced: {};
8645
- spotBalanced?: undefined;
8646
- bidAskBalanced?: undefined;
8647
- spotImBalanced?: undefined;
8648
- curveImBalanced?: undefined;
8649
- bidAskImBalanced?: undefined;
8650
- };
8651
- parameteres: number[];
8652
- } | {
8653
- minBinId: number;
8654
- maxBinId: number;
8655
- strategyType: {
8656
- bidAskBalanced: {};
8657
- spotBalanced?: undefined;
8658
- curveBalanced?: undefined;
8659
- spotImBalanced?: undefined;
8660
- curveImBalanced?: undefined;
8661
- bidAskImBalanced?: undefined;
8662
- };
8663
- parameteres: number[];
8664
- } | {
8665
6457
  minBinId: number;
8666
6458
  maxBinId: number;
8667
6459
  strategyType: {
8668
6460
  spotImBalanced: {};
8669
- spotBalanced?: undefined;
8670
- curveBalanced?: undefined;
8671
- bidAskBalanced?: undefined;
8672
6461
  curveImBalanced?: undefined;
8673
6462
  bidAskImBalanced?: undefined;
8674
6463
  };
@@ -8678,9 +6467,6 @@ declare function toStrategyParameters({ maxBinId, minBinId, strategyType, single
8678
6467
  maxBinId: number;
8679
6468
  strategyType: {
8680
6469
  curveImBalanced: {};
8681
- spotBalanced?: undefined;
8682
- curveBalanced?: undefined;
8683
- bidAskBalanced?: undefined;
8684
6470
  spotImBalanced?: undefined;
8685
6471
  bidAskImBalanced?: undefined;
8686
6472
  };
@@ -8690,9 +6476,6 @@ declare function toStrategyParameters({ maxBinId, minBinId, strategyType, single
8690
6476
  maxBinId: number;
8691
6477
  strategyType: {
8692
6478
  bidAskImBalanced: {};
8693
- spotBalanced?: undefined;
8694
- curveBalanced?: undefined;
8695
- bidAskBalanced?: undefined;
8696
6479
  spotImBalanced?: undefined;
8697
6480
  curveImBalanced?: undefined;
8698
6481
  };
@@ -8707,15 +6490,10 @@ declare function toStrategyParameters({ maxBinId, minBinId, strategyType, single
8707
6490
  */
8708
6491
  declare function getTokensMintFromPoolAddress(connection: Connection, poolAddress: string, opt?: {
8709
6492
  cluster?: Cluster;
8710
- programId?: PublicKey;
8711
6493
  }): Promise<{
8712
6494
  tokenXMint: PublicKey;
8713
6495
  tokenYMint: PublicKey;
8714
6496
  }>;
8715
- declare function getTokenProgramId(lbPairState: LbPair): {
8716
- tokenXProgram: PublicKey;
8717
- tokenYProgram: PublicKey;
8718
- };
8719
6497
 
8720
6498
  declare function chunks<T>(array: T[], size: number): T[][];
8721
6499
  declare function range<T>(min: number, max: number, mapfn: (i: number) => T): T[];
@@ -8730,7 +6508,6 @@ declare function chunkedFetchMultiplePoolAccount(program: ClmmProgram, pks: Publ
8730
6508
  minBinId: number;
8731
6509
  maxBinId: number;
8732
6510
  protocolShare: number;
8733
- baseFeePowerFactor: number;
8734
6511
  padding: number[];
8735
6512
  };
8736
6513
  vParameters: {
@@ -8781,8 +6558,6 @@ declare function chunkedFetchMultiplePoolAccount(program: ClmmProgram, pks: Publ
8781
6558
  padding3: number[];
8782
6559
  padding4: BN;
8783
6560
  creator: PublicKey;
8784
- tokenMintXProgramFlag: number;
8785
- tokenMintYProgramFlag: number;
8786
6561
  reserved: number[];
8787
6562
  }[]>;
8788
6563
  declare function chunkedFetchMultipleBinArrayBitmapExtensionAccount(program: ClmmProgram, pks: PublicKey[], chunkSize?: number): Promise<{
@@ -8792,7 +6567,7 @@ declare function chunkedFetchMultipleBinArrayBitmapExtensionAccount(program: Clm
8792
6567
  }[]>;
8793
6568
  declare function getOutAmount(bin: Bin, inAmount: BN, swapForY: boolean): BN;
8794
6569
  declare function getTokenDecimals(conn: Connection, mint: PublicKey): Promise<number>;
8795
- declare const getOrCreateATAInstruction: (connection: Connection, tokenMint: PublicKey, owner: PublicKey, programId?: PublicKey, payer?: PublicKey, allowOwnerOffCurve?: boolean) => Promise<GetOrCreateATAResponse>;
6570
+ declare const getOrCreateATAInstruction: (connection: Connection, tokenMint: PublicKey, owner: PublicKey, payer?: PublicKey, allowOwnerOffCurve?: boolean) => Promise<GetOrCreateATAResponse>;
8796
6571
  declare function getTokenBalance(conn: Connection, tokenAccount: PublicKey): Promise<bigint>;
8797
6572
  declare const parseLogs: <T>(eventParser: EventParser, logs: string[]) => T;
8798
6573
  declare const wrapSOLInstruction: (from: PublicKey, to: PublicKey, amount: bigint) => TransactionInstruction[];
@@ -8866,6 +6641,5 @@ declare const MAX_BIN_PER_TX = 69;
8866
6641
  declare const MAX_ACTIVE_BIN_SLIPPAGE = 3;
8867
6642
  declare const ILM_BASE: PublicKey;
8868
6643
  declare const MAX_EXTRA_BIN_ARRAYS = 3;
8869
- declare const U64_MAX: BN;
8870
6644
 
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 };
6645
+ 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 };