@meteora-ag/cp-amm-sdk 1.2.6 → 1.2.8-rc.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.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { PublicKey, Transaction, Connection, TransactionInstruction, AddressLookupTableAccount, Commitment, GetProgramAccountsFilter } from '@solana/web3.js';
2
- import { Program, IdlAccounts, BN, IdlTypes } from '@coral-xyz/anchor';
2
+ import { Program, IdlAccounts, IdlTypes, BN, BorshCoder } from '@coral-xyz/anchor';
3
3
  import { Mint } from '@solana/spl-token';
4
4
  import Decimal from 'decimal.js';
5
5
  import BN$1 from 'bn.js';
@@ -14,7 +14,7 @@ type CpAmm$1 = {
14
14
  address: "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG";
15
15
  metadata: {
16
16
  name: "cpAmm";
17
- version: "0.1.5";
17
+ version: "0.1.6";
18
18
  spec: "0.1.0";
19
19
  description: "Created with Anchor";
20
20
  };
@@ -543,14 +543,14 @@ type CpAmm$1 = {
543
543
  };
544
544
  },
545
545
  {
546
- name: "claimFeeOperator";
546
+ name: "operator";
547
547
  docs: ["Claim fee operator"];
548
548
  },
549
549
  {
550
- name: "operator";
551
- docs: ["Operator"];
550
+ name: "whitelistedAddress";
551
+ docs: ["operator"];
552
552
  signer: true;
553
- relations: ["claimFeeOperator"];
553
+ relations: ["operator"];
554
554
  },
555
555
  {
556
556
  name: "tokenAProgram";
@@ -690,20 +690,24 @@ type CpAmm$1 = {
690
690
  ];
691
691
  },
692
692
  {
693
- name: "closeClaimFeeOperator";
694
- discriminator: [38, 134, 82, 216, 95, 124, 17, 99];
693
+ name: "closeConfig";
694
+ discriminator: [145, 9, 72, 157, 95, 125, 61, 85];
695
695
  accounts: [
696
696
  {
697
- name: "claimFeeOperator";
697
+ name: "config";
698
698
  writable: true;
699
699
  },
700
700
  {
701
- name: "rentReceiver";
702
- writable: true;
701
+ name: "operator";
703
702
  },
704
703
  {
705
- name: "admin";
704
+ name: "whitelistedAddress";
706
705
  signer: true;
706
+ relations: ["operator"];
707
+ },
708
+ {
709
+ name: "rentReceiver";
710
+ writable: true;
707
711
  },
708
712
  {
709
713
  name: "eventAuthority";
@@ -741,16 +745,15 @@ type CpAmm$1 = {
741
745
  args: [];
742
746
  },
743
747
  {
744
- name: "closeConfig";
745
- discriminator: [145, 9, 72, 157, 95, 125, 61, 85];
748
+ name: "closeOperatorAccount";
749
+ discriminator: [171, 9, 213, 74, 120, 23, 3, 29];
746
750
  accounts: [
747
751
  {
748
- name: "config";
752
+ name: "operator";
749
753
  writable: true;
750
754
  },
751
755
  {
752
756
  name: "admin";
753
- writable: true;
754
757
  signer: true;
755
758
  },
756
759
  {
@@ -879,9 +882,12 @@ type CpAmm$1 = {
879
882
  writable: true;
880
883
  },
881
884
  {
882
- name: "admin";
883
- writable: true;
885
+ name: "operator";
886
+ },
887
+ {
888
+ name: "whitelistedAddress";
884
889
  signer: true;
890
+ relations: ["operator"];
885
891
  },
886
892
  {
887
893
  name: "rentReceiver";
@@ -923,21 +929,22 @@ type CpAmm$1 = {
923
929
  args: [];
924
930
  },
925
931
  {
926
- name: "createClaimFeeOperator";
927
- discriminator: [169, 62, 207, 107, 58, 187, 162, 109];
932
+ name: "createConfig";
933
+ docs: ["OPERATOR FUNCTIONS /////"];
934
+ discriminator: [201, 207, 243, 114, 75, 111, 47, 189];
928
935
  accounts: [
929
936
  {
930
- name: "claimFeeOperator";
937
+ name: "config";
931
938
  writable: true;
932
939
  pda: {
933
940
  seeds: [
934
941
  {
935
942
  kind: "const";
936
- value: [99, 102, 95, 111, 112, 101, 114, 97, 116, 111, 114];
943
+ value: [99, 111, 110, 102, 105, 103];
937
944
  },
938
945
  {
939
- kind: "account";
940
- path: "operator";
946
+ kind: "arg";
947
+ path: "index";
941
948
  }
942
949
  ];
943
950
  };
@@ -946,7 +953,12 @@ type CpAmm$1 = {
946
953
  name: "operator";
947
954
  },
948
955
  {
949
- name: "admin";
956
+ name: "whitelistedAddress";
957
+ signer: true;
958
+ relations: ["operator"];
959
+ },
960
+ {
961
+ name: "payer";
950
962
  writable: true;
951
963
  signer: true;
952
964
  },
@@ -987,12 +999,24 @@ type CpAmm$1 = {
987
999
  name: "program";
988
1000
  }
989
1001
  ];
990
- args: [];
1002
+ args: [
1003
+ {
1004
+ name: "index";
1005
+ type: "u64";
1006
+ },
1007
+ {
1008
+ name: "configParameters";
1009
+ type: {
1010
+ defined: {
1011
+ name: "staticConfigParameters";
1012
+ };
1013
+ };
1014
+ }
1015
+ ];
991
1016
  },
992
1017
  {
993
- name: "createConfig";
994
- docs: ["ADMIN FUNCTIONS /////"];
995
- discriminator: [201, 207, 243, 114, 75, 111, 47, 189];
1018
+ name: "createDynamicConfig";
1019
+ discriminator: [81, 251, 122, 78, 66, 57, 208, 82];
996
1020
  accounts: [
997
1021
  {
998
1022
  name: "config";
@@ -1011,7 +1035,15 @@ type CpAmm$1 = {
1011
1035
  };
1012
1036
  },
1013
1037
  {
1014
- name: "admin";
1038
+ name: "operator";
1039
+ },
1040
+ {
1041
+ name: "whitelistedAddress";
1042
+ signer: true;
1043
+ relations: ["operator"];
1044
+ },
1045
+ {
1046
+ name: "payer";
1015
1047
  writable: true;
1016
1048
  signer: true;
1017
1049
  },
@@ -1061,34 +1093,42 @@ type CpAmm$1 = {
1061
1093
  name: "configParameters";
1062
1094
  type: {
1063
1095
  defined: {
1064
- name: "staticConfigParameters";
1096
+ name: "dynamicConfigParameters";
1065
1097
  };
1066
1098
  };
1067
1099
  }
1068
1100
  ];
1069
1101
  },
1070
1102
  {
1071
- name: "createDynamicConfig";
1072
- discriminator: [81, 251, 122, 78, 66, 57, 208, 82];
1103
+ name: "createOperatorAccount";
1104
+ docs: ["ADMIN FUNCTIONS /////"];
1105
+ discriminator: [221, 64, 246, 149, 240, 153, 229, 163];
1073
1106
  accounts: [
1074
1107
  {
1075
- name: "config";
1108
+ name: "operator";
1076
1109
  writable: true;
1077
1110
  pda: {
1078
1111
  seeds: [
1079
1112
  {
1080
1113
  kind: "const";
1081
- value: [99, 111, 110, 102, 105, 103];
1114
+ value: [111, 112, 101, 114, 97, 116, 111, 114];
1082
1115
  },
1083
1116
  {
1084
- kind: "arg";
1085
- path: "index";
1117
+ kind: "account";
1118
+ path: "whitelistedAddress";
1086
1119
  }
1087
1120
  ];
1088
1121
  };
1089
1122
  },
1123
+ {
1124
+ name: "whitelistedAddress";
1125
+ },
1090
1126
  {
1091
1127
  name: "admin";
1128
+ signer: true;
1129
+ },
1130
+ {
1131
+ name: "payer";
1092
1132
  writable: true;
1093
1133
  signer: true;
1094
1134
  },
@@ -1131,16 +1171,8 @@ type CpAmm$1 = {
1131
1171
  ];
1132
1172
  args: [
1133
1173
  {
1134
- name: "index";
1135
- type: "u64";
1136
- },
1137
- {
1138
- name: "configParameters";
1139
- type: {
1140
- defined: {
1141
- name: "dynamicConfigParameters";
1142
- };
1143
- };
1174
+ name: "permission";
1175
+ type: "u128";
1144
1176
  }
1145
1177
  ];
1146
1178
  },
@@ -1295,7 +1327,15 @@ type CpAmm$1 = {
1295
1327
  name: "tokenMint";
1296
1328
  },
1297
1329
  {
1298
- name: "admin";
1330
+ name: "operator";
1331
+ },
1332
+ {
1333
+ name: "whitelistedAddress";
1334
+ signer: true;
1335
+ relations: ["operator"];
1336
+ },
1337
+ {
1338
+ name: "payer";
1299
1339
  writable: true;
1300
1340
  signer: true;
1301
1341
  },
@@ -1338,6 +1378,31 @@ type CpAmm$1 = {
1338
1378
  ];
1339
1379
  args: [];
1340
1380
  },
1381
+ {
1382
+ name: "dummyIx";
1383
+ discriminator: [234, 95, 176, 185, 7, 42, 35, 159];
1384
+ accounts: [
1385
+ {
1386
+ name: "podAlignedFeeTimeScheduler";
1387
+ },
1388
+ {
1389
+ name: "podAlignedFeeRateLimiter";
1390
+ },
1391
+ {
1392
+ name: "podAlignedFeeMarketCapScheduler";
1393
+ }
1394
+ ];
1395
+ args: [
1396
+ {
1397
+ name: "ixs";
1398
+ type: {
1399
+ defined: {
1400
+ name: "dummyParams";
1401
+ };
1402
+ };
1403
+ }
1404
+ ];
1405
+ },
1341
1406
  {
1342
1407
  name: "fundReward";
1343
1408
  discriminator: [188, 50, 249, 165, 93, 151, 38, 63];
@@ -2545,8 +2610,12 @@ type CpAmm$1 = {
2545
2610
  writable: true;
2546
2611
  },
2547
2612
  {
2548
- name: "admin";
2613
+ name: "operator";
2614
+ },
2615
+ {
2616
+ name: "whitelistedAddress";
2549
2617
  signer: true;
2618
+ relations: ["operator"];
2550
2619
  },
2551
2620
  {
2552
2621
  name: "eventAuthority";
@@ -2958,6 +3027,66 @@ type CpAmm$1 = {
2958
3027
  }
2959
3028
  ];
2960
3029
  },
3030
+ {
3031
+ name: "updatePoolFees";
3032
+ discriminator: [118, 217, 203, 179, 60, 8, 70, 89];
3033
+ accounts: [
3034
+ {
3035
+ name: "pool";
3036
+ writable: true;
3037
+ },
3038
+ {
3039
+ name: "operator";
3040
+ },
3041
+ {
3042
+ name: "whitelistedAddress";
3043
+ signer: true;
3044
+ relations: ["operator"];
3045
+ },
3046
+ {
3047
+ name: "eventAuthority";
3048
+ pda: {
3049
+ seeds: [
3050
+ {
3051
+ kind: "const";
3052
+ value: [
3053
+ 95,
3054
+ 95,
3055
+ 101,
3056
+ 118,
3057
+ 101,
3058
+ 110,
3059
+ 116,
3060
+ 95,
3061
+ 97,
3062
+ 117,
3063
+ 116,
3064
+ 104,
3065
+ 111,
3066
+ 114,
3067
+ 105,
3068
+ 116,
3069
+ 121
3070
+ ];
3071
+ }
3072
+ ];
3073
+ };
3074
+ },
3075
+ {
3076
+ name: "program";
3077
+ }
3078
+ ];
3079
+ args: [
3080
+ {
3081
+ name: "params";
3082
+ type: {
3083
+ defined: {
3084
+ name: "updatePoolFeesParameters";
3085
+ };
3086
+ };
3087
+ }
3088
+ ];
3089
+ },
2961
3090
  {
2962
3091
  name: "updateRewardDuration";
2963
3092
  discriminator: [138, 174, 196, 169, 213, 235, 254, 107];
@@ -3142,14 +3271,26 @@ type CpAmm$1 = {
3142
3271
  }
3143
3272
  ];
3144
3273
  accounts: [
3145
- {
3146
- name: "claimFeeOperator";
3147
- discriminator: [166, 48, 134, 86, 34, 200, 188, 150];
3148
- },
3149
3274
  {
3150
3275
  name: "config";
3151
3276
  discriminator: [155, 12, 170, 224, 30, 250, 204, 130];
3152
3277
  },
3278
+ {
3279
+ name: "operator";
3280
+ discriminator: [219, 31, 188, 145, 69, 139, 204, 117];
3281
+ },
3282
+ {
3283
+ name: "podAlignedFeeMarketCapScheduler";
3284
+ discriminator: [251, 130, 208, 253, 245, 27, 145, 203];
3285
+ },
3286
+ {
3287
+ name: "podAlignedFeeRateLimiter";
3288
+ discriminator: [160, 219, 8, 251, 179, 7, 16, 117];
3289
+ },
3290
+ {
3291
+ name: "podAlignedFeeTimeScheduler";
3292
+ discriminator: [239, 132, 138, 213, 67, 154, 130, 70];
3293
+ },
3153
3294
  {
3154
3295
  name: "pool";
3155
3296
  discriminator: [241, 154, 109, 4, 17, 177, 109, 188];
@@ -3168,10 +3309,6 @@ type CpAmm$1 = {
3168
3309
  }
3169
3310
  ];
3170
3311
  events: [
3171
- {
3172
- name: "evtAddLiquidity";
3173
- discriminator: [175, 242, 8, 157, 30, 247, 185, 169];
3174
- },
3175
3312
  {
3176
3313
  name: "evtClaimPartnerFee";
3177
3314
  discriminator: [118, 99, 77, 10, 226, 1, 1, 87];
@@ -3188,10 +3325,6 @@ type CpAmm$1 = {
3188
3325
  name: "evtClaimReward";
3189
3326
  discriminator: [218, 86, 147, 200, 235, 188, 215, 231];
3190
3327
  },
3191
- {
3192
- name: "evtCloseClaimFeeOperator";
3193
- discriminator: [111, 39, 37, 55, 110, 216, 194, 23];
3194
- },
3195
3328
  {
3196
3329
  name: "evtCloseConfig";
3197
3330
  discriminator: [36, 30, 239, 45, 58, 132, 14, 5];
@@ -3200,10 +3333,6 @@ type CpAmm$1 = {
3200
3333
  name: "evtClosePosition";
3201
3334
  discriminator: [20, 145, 144, 68, 143, 142, 214, 178];
3202
3335
  },
3203
- {
3204
- name: "evtCreateClaimFeeOperator";
3205
- discriminator: [21, 6, 153, 120, 68, 116, 28, 177];
3206
- },
3207
3336
  {
3208
3337
  name: "evtCreateConfig";
3209
3338
  discriminator: [131, 207, 180, 174, 180, 73, 165, 54];
@@ -3244,10 +3373,6 @@ type CpAmm$1 = {
3244
3373
  name: "evtPermanentLockPosition";
3245
3374
  discriminator: [145, 143, 162, 218, 218, 80, 67, 11];
3246
3375
  },
3247
- {
3248
- name: "evtRemoveLiquidity";
3249
- discriminator: [87, 46, 88, 98, 175, 96, 34, 91];
3250
- },
3251
3376
  {
3252
3377
  name: "evtSetPoolStatus";
3253
3378
  discriminator: [100, 213, 74, 3, 95, 91, 228, 146];
@@ -3256,14 +3381,14 @@ type CpAmm$1 = {
3256
3381
  name: "evtSplitPosition2";
3257
3382
  discriminator: [165, 32, 203, 174, 72, 100, 233, 103];
3258
3383
  },
3259
- {
3260
- name: "evtSwap";
3261
- discriminator: [27, 60, 21, 213, 138, 170, 187, 147];
3262
- },
3263
3384
  {
3264
3385
  name: "evtSwap2";
3265
3386
  discriminator: [189, 66, 51, 168, 38, 80, 117, 153];
3266
3387
  },
3388
+ {
3389
+ name: "evtUpdatePoolFees";
3390
+ discriminator: [76, 165, 246, 102, 102, 217, 156, 44];
3391
+ },
3267
3392
  {
3268
3393
  name: "evtUpdateRewardDuration";
3269
3394
  discriminator: [149, 135, 65, 231, 129, 153, 65, 57];
@@ -3530,7 +3655,7 @@ type CpAmm$1 = {
3530
3655
  },
3531
3656
  {
3532
3657
  code: 6050;
3533
- name: "invalidFeeScheduler";
3658
+ name: "invalidFeeTimeScheduler";
3534
3659
  msg: "Invalid fee scheduler";
3535
3660
  },
3536
3661
  {
@@ -3542,6 +3667,41 @@ type CpAmm$1 = {
3542
3667
  code: 6052;
3543
3668
  name: "invalidPoolVersion";
3544
3669
  msg: "Invalid pool version";
3670
+ },
3671
+ {
3672
+ code: 6053;
3673
+ name: "invalidAuthority";
3674
+ msg: "Invalid authority to do that action";
3675
+ },
3676
+ {
3677
+ code: 6054;
3678
+ name: "invalidPermission";
3679
+ msg: "Invalid permission";
3680
+ },
3681
+ {
3682
+ code: 6055;
3683
+ name: "invalidFeeMarketCapScheduler";
3684
+ msg: "Invalid fee market cap scheduler";
3685
+ },
3686
+ {
3687
+ code: 6056;
3688
+ name: "cannotUpdateBaseFee";
3689
+ msg: "Cannot update base fee";
3690
+ },
3691
+ {
3692
+ code: 6057;
3693
+ name: "invalidDynamicFeeParameters";
3694
+ msg: "Invalid dynamic fee parameters";
3695
+ },
3696
+ {
3697
+ code: 6058;
3698
+ name: "invalidUpdatePoolFeesParameters";
3699
+ msg: "Invalid update pool fees parameters";
3700
+ },
3701
+ {
3702
+ code: 6059;
3703
+ name: "missingOperatorAccount";
3704
+ msg: "Missing operator account";
3545
3705
  }
3546
3706
  ];
3547
3707
  types: [
@@ -3569,7 +3729,7 @@ type CpAmm$1 = {
3569
3729
  };
3570
3730
  },
3571
3731
  {
3572
- name: "baseFeeConfig";
3732
+ name: "baseFeeInfo";
3573
3733
  serialization: "bytemuck";
3574
3734
  repr: {
3575
3735
  kind: "c";
@@ -3578,32 +3738,10 @@ type CpAmm$1 = {
3578
3738
  kind: "struct";
3579
3739
  fields: [
3580
3740
  {
3581
- name: "cliffFeeNumerator";
3582
- type: "u64";
3583
- },
3584
- {
3585
- name: "baseFeeMode";
3586
- type: "u8";
3587
- },
3588
- {
3589
- name: "padding";
3590
- type: {
3591
- array: ["u8", 5];
3592
- };
3593
- },
3594
- {
3595
- name: "firstFactor";
3596
- type: "u16";
3597
- },
3598
- {
3599
- name: "secondFactor";
3741
+ name: "data";
3600
3742
  type: {
3601
- array: ["u8", 8];
3743
+ array: ["u8", 32];
3602
3744
  };
3603
- },
3604
- {
3605
- name: "thirdFactor";
3606
- type: "u64";
3607
3745
  }
3608
3746
  ];
3609
3747
  };
@@ -3614,26 +3752,10 @@ type CpAmm$1 = {
3614
3752
  kind: "struct";
3615
3753
  fields: [
3616
3754
  {
3617
- name: "cliffFeeNumerator";
3618
- type: "u64";
3619
- },
3620
- {
3621
- name: "firstFactor";
3622
- type: "u16";
3623
- },
3624
- {
3625
- name: "secondFactor";
3755
+ name: "data";
3626
3756
  type: {
3627
- array: ["u8", 8];
3757
+ array: ["u8", 30];
3628
3758
  };
3629
- },
3630
- {
3631
- name: "thirdFactor";
3632
- type: "u64";
3633
- },
3634
- {
3635
- name: "baseFeeMode";
3636
- type: "u8";
3637
3759
  }
3638
3760
  ];
3639
3761
  };
@@ -3648,60 +3770,138 @@ type CpAmm$1 = {
3648
3770
  kind: "struct";
3649
3771
  fields: [
3650
3772
  {
3651
- name: "cliffFeeNumerator";
3652
- type: "u64";
3773
+ name: "baseFeeInfo";
3774
+ type: {
3775
+ defined: {
3776
+ name: "baseFeeInfo";
3777
+ };
3778
+ };
3653
3779
  },
3654
3780
  {
3655
- name: "baseFeeMode";
3781
+ name: "padding1";
3782
+ type: "u64";
3783
+ }
3784
+ ];
3785
+ };
3786
+ },
3787
+ {
3788
+ name: "borshFeeMarketCapScheduler";
3789
+ type: {
3790
+ kind: "struct";
3791
+ fields: [
3792
+ {
3793
+ name: "cliffFeeNumerator";
3794
+ type: "u64";
3795
+ },
3796
+ {
3797
+ name: "numberOfPeriod";
3798
+ type: "u16";
3799
+ },
3800
+ {
3801
+ name: "sqrtPriceStepBps";
3802
+ type: "u32";
3803
+ },
3804
+ {
3805
+ name: "schedulerExpirationDuration";
3806
+ type: "u32";
3807
+ },
3808
+ {
3809
+ name: "reductionFactor";
3810
+ type: "u64";
3811
+ },
3812
+ {
3813
+ name: "baseFeeMode";
3656
3814
  type: "u8";
3657
3815
  },
3658
3816
  {
3659
- name: "padding0";
3817
+ name: "padding";
3660
3818
  type: {
3661
- array: ["u8", 5];
3819
+ array: ["u8", 3];
3662
3820
  };
3821
+ }
3822
+ ];
3823
+ };
3824
+ },
3825
+ {
3826
+ name: "borshFeeRateLimiter";
3827
+ docs: [
3828
+ "we denote reference_amount = x0, cliff_fee_numerator = c, fee_increment = i",
3829
+ "if input_amount <= x0, then fee = input_amount * c",
3830
+ "",
3831
+ "if input_amount > x0, then input_amount = x0 + (a * x0 + b)",
3832
+ "if a < max_index",
3833
+ "then fee = x0 * c + x0 * (c + i) + .... + x0 * (c + i*a) + b * (c + i * (a+1))",
3834
+ "then fee = x0 * (c + c*a + i*a*(a+1)/2) + b * (c + i * (a+1))",
3835
+ "",
3836
+ "if a >= max_index",
3837
+ "if a = max_index + d, input_amount = x0 + max_index * x0 + (d * x0 + b)",
3838
+ "then fee = x0 * (c + c*max_index + i*max_index*(max_index+1)/2) + (d * x0 + b) * MAX_FEE"
3839
+ ];
3840
+ type: {
3841
+ kind: "struct";
3842
+ fields: [
3843
+ {
3844
+ name: "cliffFeeNumerator";
3845
+ type: "u64";
3663
3846
  },
3664
3847
  {
3665
- name: "firstFactor";
3848
+ name: "feeIncrementBps";
3666
3849
  type: "u16";
3667
3850
  },
3668
3851
  {
3669
- name: "secondFactor";
3670
- type: {
3671
- array: ["u8", 8];
3672
- };
3852
+ name: "maxLimiterDuration";
3853
+ type: "u32";
3673
3854
  },
3674
3855
  {
3675
- name: "thirdFactor";
3676
- type: "u64";
3856
+ name: "maxFeeBps";
3857
+ type: "u32";
3677
3858
  },
3678
3859
  {
3679
- name: "padding1";
3860
+ name: "referenceAmount";
3680
3861
  type: "u64";
3862
+ },
3863
+ {
3864
+ name: "baseFeeMode";
3865
+ type: "u8";
3866
+ },
3867
+ {
3868
+ name: "padding";
3869
+ type: {
3870
+ array: ["u8", 3];
3871
+ };
3681
3872
  }
3682
3873
  ];
3683
3874
  };
3684
3875
  },
3685
3876
  {
3686
- name: "claimFeeOperator";
3687
- docs: ["Parameter that set by the protocol"];
3688
- serialization: "bytemuck";
3689
- repr: {
3690
- kind: "c";
3691
- };
3877
+ name: "borshFeeTimeScheduler";
3692
3878
  type: {
3693
3879
  kind: "struct";
3694
3880
  fields: [
3695
3881
  {
3696
- name: "operator";
3697
- docs: ["operator"];
3698
- type: "pubkey";
3882
+ name: "cliffFeeNumerator";
3883
+ type: "u64";
3884
+ },
3885
+ {
3886
+ name: "numberOfPeriod";
3887
+ type: "u16";
3888
+ },
3889
+ {
3890
+ name: "periodFrequency";
3891
+ type: "u64";
3892
+ },
3893
+ {
3894
+ name: "reductionFactor";
3895
+ type: "u64";
3896
+ },
3897
+ {
3898
+ name: "baseFeeMode";
3899
+ type: "u8";
3699
3900
  },
3700
3901
  {
3701
3902
  name: "padding";
3702
- docs: ["Reserve"];
3703
3903
  type: {
3704
- array: ["u8", 128];
3904
+ array: ["u8", 3];
3705
3905
  };
3706
3906
  }
3707
3907
  ];
@@ -3784,6 +3984,38 @@ type CpAmm$1 = {
3784
3984
  ];
3785
3985
  };
3786
3986
  },
3987
+ {
3988
+ name: "dummyParams";
3989
+ type: {
3990
+ kind: "struct";
3991
+ fields: [
3992
+ {
3993
+ name: "borshFeeTimeSchedulerParams";
3994
+ type: {
3995
+ defined: {
3996
+ name: "borshFeeTimeScheduler";
3997
+ };
3998
+ };
3999
+ },
4000
+ {
4001
+ name: "borshFeeRateLimiterParams";
4002
+ type: {
4003
+ defined: {
4004
+ name: "borshFeeRateLimiter";
4005
+ };
4006
+ };
4007
+ },
4008
+ {
4009
+ name: "borshFeeMarketCapSchedulerParams";
4010
+ type: {
4011
+ defined: {
4012
+ name: "borshFeeMarketCapScheduler";
4013
+ };
4014
+ };
4015
+ }
4016
+ ];
4017
+ };
4018
+ },
3787
4019
  {
3788
4020
  name: "dynamicConfigParameters";
3789
4021
  type: {
@@ -3954,50 +4186,6 @@ type CpAmm$1 = {
3954
4186
  ];
3955
4187
  };
3956
4188
  },
3957
- {
3958
- name: "evtAddLiquidity";
3959
- type: {
3960
- kind: "struct";
3961
- fields: [
3962
- {
3963
- name: "pool";
3964
- type: "pubkey";
3965
- },
3966
- {
3967
- name: "position";
3968
- type: "pubkey";
3969
- },
3970
- {
3971
- name: "owner";
3972
- type: "pubkey";
3973
- },
3974
- {
3975
- name: "params";
3976
- type: {
3977
- defined: {
3978
- name: "addLiquidityParameters";
3979
- };
3980
- };
3981
- },
3982
- {
3983
- name: "tokenAAmount";
3984
- type: "u64";
3985
- },
3986
- {
3987
- name: "tokenBAmount";
3988
- type: "u64";
3989
- },
3990
- {
3991
- name: "totalAmountA";
3992
- type: "u64";
3993
- },
3994
- {
3995
- name: "totalAmountB";
3996
- type: "u64";
3997
- }
3998
- ];
3999
- };
4000
- },
4001
4189
  {
4002
4190
  name: "evtClaimPartnerFee";
4003
4191
  type: {
@@ -4098,23 +4286,6 @@ type CpAmm$1 = {
4098
4286
  ];
4099
4287
  };
4100
4288
  },
4101
- {
4102
- name: "evtCloseClaimFeeOperator";
4103
- docs: ["Close claim fee operator"];
4104
- type: {
4105
- kind: "struct";
4106
- fields: [
4107
- {
4108
- name: "claimFeeOperator";
4109
- type: "pubkey";
4110
- },
4111
- {
4112
- name: "operator";
4113
- type: "pubkey";
4114
- }
4115
- ];
4116
- };
4117
- },
4118
4289
  {
4119
4290
  name: "evtCloseConfig";
4120
4291
  docs: ["Close config"];
@@ -4158,19 +4329,6 @@ type CpAmm$1 = {
4158
4329
  ];
4159
4330
  };
4160
4331
  },
4161
- {
4162
- name: "evtCreateClaimFeeOperator";
4163
- docs: ["Create claim fee operator"];
4164
- type: {
4165
- kind: "struct";
4166
- fields: [
4167
- {
4168
- name: "operator";
4169
- type: "pubkey";
4170
- }
4171
- ];
4172
- };
4173
- },
4174
4332
  {
4175
4333
  name: "evtCreateConfig";
4176
4334
  docs: ["Create static config"];
@@ -4578,42 +4736,6 @@ type CpAmm$1 = {
4578
4736
  ];
4579
4737
  };
4580
4738
  },
4581
- {
4582
- name: "evtRemoveLiquidity";
4583
- type: {
4584
- kind: "struct";
4585
- fields: [
4586
- {
4587
- name: "pool";
4588
- type: "pubkey";
4589
- },
4590
- {
4591
- name: "position";
4592
- type: "pubkey";
4593
- },
4594
- {
4595
- name: "owner";
4596
- type: "pubkey";
4597
- },
4598
- {
4599
- name: "params";
4600
- type: {
4601
- defined: {
4602
- name: "removeLiquidityParameters";
4603
- };
4604
- };
4605
- },
4606
- {
4607
- name: "tokenAAmount";
4608
- type: "u64";
4609
- },
4610
- {
4611
- name: "tokenBAmount";
4612
- type: "u64";
4613
- }
4614
- ];
4615
- };
4616
- },
4617
4739
  {
4618
4740
  name: "evtSetPoolStatus";
4619
4741
  type: {
@@ -4695,7 +4817,7 @@ type CpAmm$1 = {
4695
4817
  };
4696
4818
  },
4697
4819
  {
4698
- name: "evtSwap";
4820
+ name: "evtSwap2";
4699
4821
  type: {
4700
4822
  kind: "struct";
4701
4823
  fields: [
@@ -4707,6 +4829,10 @@ type CpAmm$1 = {
4707
4829
  name: "tradeDirection";
4708
4830
  type: "u8";
4709
4831
  },
4832
+ {
4833
+ name: "collectFeeMode";
4834
+ type: "u8";
4835
+ },
4710
4836
  {
4711
4837
  name: "hasReferral";
4712
4838
  type: "bool";
@@ -4715,7 +4841,7 @@ type CpAmm$1 = {
4715
4841
  name: "params";
4716
4842
  type: {
4717
4843
  defined: {
4718
- name: "swapParameters";
4844
+ name: "swapParameters2";
4719
4845
  };
4720
4846
  };
4721
4847
  },
@@ -4723,23 +4849,39 @@ type CpAmm$1 = {
4723
4849
  name: "swapResult";
4724
4850
  type: {
4725
4851
  defined: {
4726
- name: "swapResult";
4852
+ name: "swapResult2";
4727
4853
  };
4728
4854
  };
4729
4855
  },
4730
4856
  {
4731
- name: "actualAmountIn";
4857
+ name: "includedTransferFeeAmountIn";
4858
+ type: "u64";
4859
+ },
4860
+ {
4861
+ name: "includedTransferFeeAmountOut";
4862
+ type: "u64";
4863
+ },
4864
+ {
4865
+ name: "excludedTransferFeeAmountOut";
4732
4866
  type: "u64";
4733
4867
  },
4734
4868
  {
4735
4869
  name: "currentTimestamp";
4736
4870
  type: "u64";
4871
+ },
4872
+ {
4873
+ name: "reserveAAmount";
4874
+ type: "u64";
4875
+ },
4876
+ {
4877
+ name: "reserveBAmount";
4878
+ type: "u64";
4737
4879
  }
4738
4880
  ];
4739
4881
  };
4740
4882
  },
4741
4883
  {
4742
- name: "evtSwap2";
4884
+ name: "evtUpdatePoolFees";
4743
4885
  type: {
4744
4886
  kind: "struct";
4745
4887
  fields: [
@@ -4748,56 +4890,16 @@ type CpAmm$1 = {
4748
4890
  type: "pubkey";
4749
4891
  },
4750
4892
  {
4751
- name: "tradeDirection";
4752
- type: "u8";
4753
- },
4754
- {
4755
- name: "collectFeeMode";
4756
- type: "u8";
4757
- },
4758
- {
4759
- name: "hasReferral";
4760
- type: "bool";
4893
+ name: "operator";
4894
+ type: "pubkey";
4761
4895
  },
4762
4896
  {
4763
4897
  name: "params";
4764
4898
  type: {
4765
4899
  defined: {
4766
- name: "swapParameters2";
4900
+ name: "updatePoolFeesParameters";
4767
4901
  };
4768
4902
  };
4769
- },
4770
- {
4771
- name: "swapResult";
4772
- type: {
4773
- defined: {
4774
- name: "swapResult2";
4775
- };
4776
- };
4777
- },
4778
- {
4779
- name: "includedTransferFeeAmountIn";
4780
- type: "u64";
4781
- },
4782
- {
4783
- name: "includedTransferFeeAmountOut";
4784
- type: "u64";
4785
- },
4786
- {
4787
- name: "excludedTransferFeeAmountOut";
4788
- type: "u64";
4789
- },
4790
- {
4791
- name: "currentTimestamp";
4792
- type: "u64";
4793
- },
4794
- {
4795
- name: "reserveAAmount";
4796
- type: "u64";
4797
- },
4798
- {
4799
- name: "reserveBAmount";
4800
- type: "u64";
4801
4903
  }
4802
4904
  ];
4803
4905
  };
@@ -4907,7 +5009,7 @@ type CpAmm$1 = {
4907
5009
  {
4908
5010
  name: "sqrtPrice";
4909
5011
  docs: [
4910
- "The init price of the pool as a sqrt(token_b/token_a) Q64.64 value"
5012
+ "The init price of the pool as a sqrt(token_b/token_a) Q64.64 value. Market cap fee scheduler minimum price will be derived from this value"
4911
5013
  ];
4912
5014
  type: "u128";
4913
5015
  },
@@ -4958,6 +5060,154 @@ type CpAmm$1 = {
4958
5060
  ];
4959
5061
  };
4960
5062
  },
5063
+ {
5064
+ name: "operator";
5065
+ serialization: "bytemuck";
5066
+ repr: {
5067
+ kind: "c";
5068
+ };
5069
+ type: {
5070
+ kind: "struct";
5071
+ fields: [
5072
+ {
5073
+ name: "whitelistedAddress";
5074
+ type: "pubkey";
5075
+ },
5076
+ {
5077
+ name: "permission";
5078
+ type: "u128";
5079
+ },
5080
+ {
5081
+ name: "padding";
5082
+ type: {
5083
+ array: ["u64", 2];
5084
+ };
5085
+ }
5086
+ ];
5087
+ };
5088
+ },
5089
+ {
5090
+ name: "podAlignedFeeMarketCapScheduler";
5091
+ serialization: "bytemuck";
5092
+ repr: {
5093
+ kind: "c";
5094
+ };
5095
+ type: {
5096
+ kind: "struct";
5097
+ fields: [
5098
+ {
5099
+ name: "cliffFeeNumerator";
5100
+ type: "u64";
5101
+ },
5102
+ {
5103
+ name: "baseFeeMode";
5104
+ type: "u8";
5105
+ },
5106
+ {
5107
+ name: "padding";
5108
+ type: {
5109
+ array: ["u8", 5];
5110
+ };
5111
+ },
5112
+ {
5113
+ name: "numberOfPeriod";
5114
+ type: "u16";
5115
+ },
5116
+ {
5117
+ name: "sqrtPriceStepBps";
5118
+ type: "u32";
5119
+ },
5120
+ {
5121
+ name: "schedulerExpirationDuration";
5122
+ type: "u32";
5123
+ },
5124
+ {
5125
+ name: "reductionFactor";
5126
+ type: "u64";
5127
+ }
5128
+ ];
5129
+ };
5130
+ },
5131
+ {
5132
+ name: "podAlignedFeeRateLimiter";
5133
+ serialization: "bytemuck";
5134
+ repr: {
5135
+ kind: "c";
5136
+ };
5137
+ type: {
5138
+ kind: "struct";
5139
+ fields: [
5140
+ {
5141
+ name: "cliffFeeNumerator";
5142
+ type: "u64";
5143
+ },
5144
+ {
5145
+ name: "baseFeeMode";
5146
+ type: "u8";
5147
+ },
5148
+ {
5149
+ name: "padding";
5150
+ type: {
5151
+ array: ["u8", 5];
5152
+ };
5153
+ },
5154
+ {
5155
+ name: "feeIncrementBps";
5156
+ type: "u16";
5157
+ },
5158
+ {
5159
+ name: "maxLimiterDuration";
5160
+ type: "u32";
5161
+ },
5162
+ {
5163
+ name: "maxFeeBps";
5164
+ type: "u32";
5165
+ },
5166
+ {
5167
+ name: "referenceAmount";
5168
+ type: "u64";
5169
+ }
5170
+ ];
5171
+ };
5172
+ },
5173
+ {
5174
+ name: "podAlignedFeeTimeScheduler";
5175
+ serialization: "bytemuck";
5176
+ repr: {
5177
+ kind: "c";
5178
+ };
5179
+ type: {
5180
+ kind: "struct";
5181
+ fields: [
5182
+ {
5183
+ name: "cliffFeeNumerator";
5184
+ type: "u64";
5185
+ },
5186
+ {
5187
+ name: "baseFeeMode";
5188
+ type: "u8";
5189
+ },
5190
+ {
5191
+ name: "padding";
5192
+ type: {
5193
+ array: ["u8", 5];
5194
+ };
5195
+ },
5196
+ {
5197
+ name: "numberOfPeriod";
5198
+ type: "u16";
5199
+ },
5200
+ {
5201
+ name: "periodFrequency";
5202
+ type: "u64";
5203
+ },
5204
+ {
5205
+ name: "reductionFactor";
5206
+ type: "u64";
5207
+ }
5208
+ ];
5209
+ };
5210
+ },
4961
5211
  {
4962
5212
  name: "pool";
4963
5213
  serialization: "bytemuck";
@@ -5083,7 +5333,7 @@ type CpAmm$1 = {
5083
5333
  {
5084
5334
  name: "collectFeeMode";
5085
5335
  docs: [
5086
- "0 is collect fee in both token, 1 only collect fee in token a, 2 only collect fee in token b"
5336
+ "0 is collect fee in both token, 1 only collect fee only in token b"
5087
5337
  ];
5088
5338
  type: "u8";
5089
5339
  },
@@ -5175,13 +5425,6 @@ type CpAmm$1 = {
5175
5425
  };
5176
5426
  };
5177
5427
  },
5178
- {
5179
- name: "padding";
5180
- docs: ["padding"];
5181
- type: {
5182
- array: ["u8", 3];
5183
- };
5184
- },
5185
5428
  {
5186
5429
  name: "dynamicFee";
5187
5430
  docs: ["dynamic fee"];
@@ -5209,7 +5452,7 @@ type CpAmm$1 = {
5209
5452
  name: "baseFee";
5210
5453
  type: {
5211
5454
  defined: {
5212
- name: "baseFeeConfig";
5455
+ name: "baseFeeInfo";
5213
5456
  };
5214
5457
  };
5215
5458
  },
@@ -5314,11 +5557,8 @@ type CpAmm$1 = {
5314
5557
  };
5315
5558
  },
5316
5559
  {
5317
- name: "padding1";
5318
- docs: ["padding"];
5319
- type: {
5320
- array: ["u64", 2];
5321
- };
5560
+ name: "initSqrtPrice";
5561
+ type: "u128";
5322
5562
  }
5323
5563
  ];
5324
5564
  };
@@ -5819,39 +6059,6 @@ type CpAmm$1 = {
5819
6059
  ];
5820
6060
  };
5821
6061
  },
5822
- {
5823
- name: "swapResult";
5824
- docs: ["Encodes all results of swapping"];
5825
- type: {
5826
- kind: "struct";
5827
- fields: [
5828
- {
5829
- name: "outputAmount";
5830
- type: "u64";
5831
- },
5832
- {
5833
- name: "nextSqrtPrice";
5834
- type: "u128";
5835
- },
5836
- {
5837
- name: "lpFee";
5838
- type: "u64";
5839
- },
5840
- {
5841
- name: "protocolFee";
5842
- type: "u64";
5843
- },
5844
- {
5845
- name: "partnerFee";
5846
- type: "u64";
5847
- },
5848
- {
5849
- name: "referralFee";
5850
- type: "u64";
5851
- }
5852
- ];
5853
- };
5854
- },
5855
6062
  {
5856
6063
  name: "swapResult2";
5857
6064
  type: {
@@ -5921,6 +6128,41 @@ type CpAmm$1 = {
5921
6128
  ];
5922
6129
  };
5923
6130
  },
6131
+ {
6132
+ name: "updatePoolFeesParameters";
6133
+ type: {
6134
+ kind: "struct";
6135
+ fields: [
6136
+ {
6137
+ name: "cliffFeeNumerator";
6138
+ docs: [
6139
+ "Base fee update mode:",
6140
+ "- None: skip base fee update",
6141
+ "- Some: update new cliff_fee_numerator if base fee is static"
6142
+ ];
6143
+ type: {
6144
+ option: "u64";
6145
+ };
6146
+ },
6147
+ {
6148
+ name: "dynamicFee";
6149
+ docs: [
6150
+ "Dynamic fee update mode:",
6151
+ "- None: skip dynamic fee update",
6152
+ "- Some(with default value): disable dynamic fee",
6153
+ "- Some(with non default value): enable dynamic fee if disabled or update dynamic fee if enabled"
6154
+ ];
6155
+ type: {
6156
+ option: {
6157
+ defined: {
6158
+ name: "dynamicFeeParameters";
6159
+ };
6160
+ };
6161
+ };
6162
+ }
6163
+ ];
6164
+ };
6165
+ },
5924
6166
  {
5925
6167
  name: "userRewardInfo";
5926
6168
  serialization: "bytemuck";
@@ -6033,26 +6275,105 @@ type CpAmm$1 = {
6033
6275
  };
6034
6276
  }
6035
6277
  ];
6036
- };
6037
-
6038
- type AmmProgram = Program<CpAmm$1>;
6039
- type TxBuilder = Promise<Transaction>;
6040
- declare enum Rounding {
6041
- Up = 0,
6042
- Down = 1
6043
- }
6044
- declare enum ActivationPoint {
6045
- Timestamp = 0,
6046
- Slot = 1
6047
- }
6048
- declare enum BaseFeeMode {
6049
- FeeSchedulerLinear = 0,
6050
- FeeSchedulerExponential = 1,
6051
- RateLimiter = 2
6052
- }
6053
- declare enum CollectFeeMode {
6054
- BothToken = 0,
6055
- OnlyB = 1
6278
+ constants: [
6279
+ {
6280
+ name: "binStepBpsDefault";
6281
+ type: "u16";
6282
+ value: "1";
6283
+ },
6284
+ {
6285
+ name: "binStepU128DefaultLeBytes";
6286
+ type: {
6287
+ array: ["u8", 16];
6288
+ };
6289
+ value: "[203, 16, 199, 186, 184, 141, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0]";
6290
+ },
6291
+ {
6292
+ name: "customizablePoolPrefix";
6293
+ type: "bytes";
6294
+ value: "[99, 112, 111, 111, 108]";
6295
+ },
6296
+ {
6297
+ name: "feeDenominator";
6298
+ docs: [
6299
+ "Default fee denominator. DO NOT simply update it as it will break logic that depends on it as default value."
6300
+ ];
6301
+ type: "u64";
6302
+ value: "1000000000";
6303
+ },
6304
+ {
6305
+ name: "maxBasisPoint";
6306
+ docs: ["Max basis point. 100% in pct"];
6307
+ type: "u64";
6308
+ value: "10000";
6309
+ },
6310
+ {
6311
+ name: "maxSqrtPriceLeBytes";
6312
+ type: {
6313
+ array: ["u8", 16];
6314
+ };
6315
+ value: "[155, 87, 105, 78, 169, 26, 92, 132, 177, 196, 254, 255, 0, 0, 0, 0]";
6316
+ },
6317
+ {
6318
+ name: "minSqrtPriceLeBytes";
6319
+ type: {
6320
+ array: ["u8", 16];
6321
+ };
6322
+ value: "[80, 59, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]";
6323
+ },
6324
+ {
6325
+ name: "poolAuthorityPrefix";
6326
+ type: "bytes";
6327
+ value: "[112, 111, 111, 108, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121]";
6328
+ },
6329
+ {
6330
+ name: "poolPrefix";
6331
+ type: "bytes";
6332
+ value: "[112, 111, 111, 108]";
6333
+ },
6334
+ {
6335
+ name: "positionNftAccountPrefix";
6336
+ type: "bytes";
6337
+ value: "[112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, 97, 99, 99, 111, 117, 110, 116]";
6338
+ },
6339
+ {
6340
+ name: "positionPrefix";
6341
+ type: "bytes";
6342
+ value: "[112, 111, 115, 105, 116, 105, 111, 110]";
6343
+ },
6344
+ {
6345
+ name: "splitPositionDenominator";
6346
+ type: "u32";
6347
+ value: "1000000000";
6348
+ },
6349
+ {
6350
+ name: "tokenVaultPrefix";
6351
+ type: "bytes";
6352
+ value: "[116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116]";
6353
+ }
6354
+ ];
6355
+ };
6356
+
6357
+ type AmmProgram = Program<CpAmm$1>;
6358
+ type TxBuilder = Promise<Transaction>;
6359
+ declare enum Rounding {
6360
+ Up = 0,
6361
+ Down = 1
6362
+ }
6363
+ declare enum ActivationPoint {
6364
+ Timestamp = 0,
6365
+ Slot = 1
6366
+ }
6367
+ declare enum BaseFeeMode {
6368
+ FeeTimeSchedulerLinear = 0,
6369
+ FeeTimeSchedulerExponential = 1,
6370
+ RateLimiter = 2,
6371
+ FeeMarketCapSchedulerLinear = 3,
6372
+ FeeMarketCapSchedulerExponential = 4
6373
+ }
6374
+ declare enum CollectFeeMode {
6375
+ BothToken = 0,
6376
+ OnlyB = 1
6056
6377
  }
6057
6378
  declare enum TradeDirection {
6058
6379
  AtoB = 0,
@@ -6085,6 +6406,12 @@ type PositionState = IdlAccounts<CpAmm$1>["position"];
6085
6406
  type VestingState = IdlAccounts<CpAmm$1>["vesting"];
6086
6407
  type ConfigState = IdlAccounts<CpAmm$1>["config"];
6087
6408
  type TokenBadgeState = IdlAccounts<CpAmm$1>["tokenBadge"];
6409
+ type BorshFeeTimeScheduler = IdlTypes<CpAmm$1>["borshFeeTimeScheduler"];
6410
+ type BorshFeeMarketCapScheduler = IdlTypes<CpAmm$1>["borshFeeMarketCapScheduler"];
6411
+ type BorshFeeRateLimiter = IdlTypes<CpAmm$1>["borshFeeRateLimiter"];
6412
+ type PodAlignedFeeTimeScheduler = IdlTypes<CpAmm$1>["podAlignedFeeTimeScheduler"];
6413
+ type PodAlignedFeeMarketCapScheduler = IdlTypes<CpAmm$1>["podAlignedFeeMarketCapScheduler"];
6414
+ type PodAlignedFeeRateLimiter = IdlTypes<CpAmm$1>["podAlignedFeeRateLimiter"];
6088
6415
  type RewardInfo = IdlTypes<CpAmm$1>["rewardInfo"];
6089
6416
  type UserRewardInfo = IdlTypes<CpAmm$1>["userRewardInfo"];
6090
6417
  /**
@@ -6117,14 +6444,11 @@ type DynamicFee = IdlTypes<CpAmm$1>["dynamicFeeParameters"];
6117
6444
  type DynamicFeeStruct = IdlTypes<CpAmm$1>["dynamicFeeStruct"];
6118
6445
  /**
6119
6446
  * Base fee parameters
6120
- * @param cliffFeeNumerator
6121
- * @param firstFactor // feeScheduler: numberOfPeriod, rateLimiter: feeIncrementBps
6122
- * @param secondFactor // feeScheduler: periodFrequency, rateLimiter: maxLimiterDuration
6123
- * @param thirdFactor // feeScheduler: reductionFactor, rateLimiter: referenceAmount
6124
- * @param baseFeeMode
6447
+ * @param data // number[]
6125
6448
  */
6126
6449
  type BaseFee = IdlTypes<CpAmm$1>["baseFeeParameters"];
6127
6450
  type PoolFeesStruct = IdlTypes<CpAmm$1>["poolFeesStruct"];
6451
+ type DecodedPoolFees = PodAlignedFeeTimeScheduler | PodAlignedFeeRateLimiter | PodAlignedFeeMarketCapScheduler;
6128
6452
  type PoolFeesParams = {
6129
6453
  baseFee: BaseFee;
6130
6454
  padding: number[];
@@ -6425,7 +6749,6 @@ type SwapAmount = {
6425
6749
  outputAmount: BN;
6426
6750
  nextSqrtPrice: BN;
6427
6751
  };
6428
- type SwapResult = IdlTypes<CpAmm$1>["swapResult"];
6429
6752
  type SwapResult2 = IdlTypes<CpAmm$1>["swapResult2"];
6430
6753
  interface Quote2Result extends SwapResult2 {
6431
6754
  priceImpact: Decimal;
@@ -6446,6 +6769,7 @@ type SwapParams = {
6446
6769
  tokenAProgram: PublicKey;
6447
6770
  tokenBProgram: PublicKey;
6448
6771
  referralTokenAccount: PublicKey | null;
6772
+ receiver?: PublicKey;
6449
6773
  poolState?: PoolState;
6450
6774
  };
6451
6775
  type Swap2Params = {
@@ -6460,6 +6784,7 @@ type Swap2Params = {
6460
6784
  tokenAProgram: PublicKey;
6461
6785
  tokenBProgram: PublicKey;
6462
6786
  referralTokenAccount: PublicKey | null;
6787
+ receiver?: PublicKey;
6463
6788
  poolState?: PoolState;
6464
6789
  } & ({
6465
6790
  swapMode: SwapMode.ExactIn;
@@ -6702,8 +7027,10 @@ type SplitPosition2Params = {
6702
7027
  };
6703
7028
  interface BaseFeeHandler {
6704
7029
  validate(collectFeeMode: CollectFeeMode, activationType: ActivationType, poolVersion: PoolVersion): boolean;
6705
- getBaseFeeNumeratorFromIncludedFeeAmount(currentPoint: BN, activationPoint: BN, tradeDirection: TradeDirection, includedFeeAmount: BN): BN;
6706
- getBaseFeeNumeratorFromExcludedFeeAmount(currentPoint: BN, activationPoint: BN, tradeDirection: TradeDirection, excludedFeeAmount: BN): BN;
7030
+ getBaseFeeNumeratorFromIncludedFeeAmount(currentPoint: BN, activationPoint: BN, tradeDirection: TradeDirection, includedFeeAmount: BN, initSqrtPrice: BN, currentSqrtPrice: BN): BN;
7031
+ getBaseFeeNumeratorFromExcludedFeeAmount(currentPoint: BN, activationPoint: BN, tradeDirection: TradeDirection, excludedFeeAmount: BN, initSqrtPrice: BN, currentSqrtPrice: BN): BN;
7032
+ validateBaseFeeIsStatic(currentPoint: BN, activationPoint: BN): boolean;
7033
+ getMinBaseFeeNumerator(): BN;
6707
7034
  }
6708
7035
  interface FeeOnAmountResult {
6709
7036
  amount: BN;
@@ -6826,12 +7153,31 @@ declare class CpAmm {
6826
7153
  publicKey: PublicKey;
6827
7154
  account: PoolState;
6828
7155
  }>>;
7156
+ fetchPoolFees(pool: PublicKey): Promise<DecodedPoolFees | null>;
6829
7157
  /**
6830
7158
  * Fetches the Position state.
6831
7159
  * @param position - Public key of the position.
6832
7160
  * @returns Parsed PositionState.
6833
7161
  */
6834
7162
  fetchPositionState(position: PublicKey): Promise<PositionState>;
7163
+ /**
7164
+ * Fetches multiple Config states.
7165
+ * @param configs - Array of public keys of config accounts.
7166
+ * @returns Array of parsed ConfigState.
7167
+ */
7168
+ getMultipleConfigs(configs: PublicKey[]): Promise<ConfigState[]>;
7169
+ /**
7170
+ * Fetches multiple Pool states.
7171
+ * @param pools - Array of public keys of pool accounts.
7172
+ * @returns Array of parsed PoolState.
7173
+ */
7174
+ getMultiplePools(pools: PublicKey[]): Promise<PoolState[]>;
7175
+ /**
7176
+ * Fetches multiple Position states.
7177
+ * @param positions - Array of public keys of position accounts.
7178
+ * @returns Array of parsed PositionState.
7179
+ */
7180
+ getMultiplePositions(positions: PublicKey[]): Promise<PositionState[]>;
6835
7181
  /**
6836
7182
  * Retrieves all config accounts.
6837
7183
  * @returns Array of config public keys and their states.
@@ -7208,6 +7554,7 @@ declare function deriveCustomizablePoolAddress(tokenAMint: PublicKey, tokenBMint
7208
7554
  declare function deriveTokenBadgeAddress(tokenMint: PublicKey): PublicKey;
7209
7555
  declare function deriveClaimFeeOperatorAddress(operator: PublicKey): PublicKey;
7210
7556
  declare function derivePositionNftAccount(positionNftMint: PublicKey): PublicKey;
7557
+ declare function deriveOperatorAddress(whitelistedAddress: PublicKey): PublicKey;
7211
7558
 
7212
7559
  declare const CP_AMM_PROGRAM_ID: PublicKey;
7213
7560
  declare const LIQUIDITY_SCALE = 128;
@@ -7241,7 +7588,8 @@ declare const U16_MAX = 65535;
7241
7588
  declare const MAX_RATE_LIMITER_DURATION_IN_SECONDS = 43200;
7242
7589
  declare const MAX_RATE_LIMITER_DURATION_IN_SLOTS = 108000;
7243
7590
  declare const SPLIT_POSITION_DENOMINATOR = 1000000000;
7244
- declare const CURRENT_POOL_VERSION = PoolVersion.V0;
7591
+ declare const CURRENT_POOL_VERSION = PoolVersion.V1;
7592
+ declare const FEE_PADDING: number[];
7245
7593
 
7246
7594
  /**
7247
7595
  * Gets the token program
@@ -7462,6 +7810,36 @@ interface TransferFeeExcludedAmount {
7462
7810
  * @returns The transfer fee excluded amount
7463
7811
  */
7464
7812
  declare function calculateTransferFeeExcludedAmount(transferFeeIncludedAmount: BN, mint: Mint, currentEpoch: number): TransferFeeExcludedAmount;
7813
+ /**
7814
+ * Interface for transfer hook extension state
7815
+ */
7816
+ interface TransferHookState {
7817
+ authority: string;
7818
+ programId: string;
7819
+ }
7820
+ /**
7821
+ * Checks if a Token 2022 mint has a transfer hook extension
7822
+ * Transfer hooks prevent permissionless pool creation as they require
7823
+ * the hook program to approve transfers, which pool creation cannot satisfy.
7824
+ *
7825
+ * @param connection - The connection to the Solana cluster
7826
+ * @param mint - The mint address to check
7827
+ * @returns Object containing whether transfer hook exists and its state if found
7828
+ */
7829
+ declare function hasTransferHookExtension(connection: Connection, mint: PublicKey): Promise<{
7830
+ hasTransferHook: boolean;
7831
+ transferHookState?: TransferHookState;
7832
+ }>;
7833
+ /**
7834
+ * Validates that tokens don't have transfer hook extensions before pool creation
7835
+ * Throws an error if either token has a transfer hook extension
7836
+ *
7837
+ * @param connection - The connection to the Solana cluster
7838
+ * @param tokenAMint - The first token mint address
7839
+ * @param tokenBMint - The second token mint address
7840
+ * @throws Error if either token has a transfer hook extension
7841
+ */
7842
+ declare function validateNoTransferHook(connection: Connection, tokenAMint: PublicKey, tokenBMint: PublicKey): Promise<void>;
7465
7843
 
7466
7844
  /**
7467
7845
  * Checks if a vesting schedule is ready for full release
@@ -7491,9 +7869,43 @@ declare function getAvailableVestingLiquidity(vestingData: VestingState, current
7491
7869
  * @param periodFrequency Period frequency
7492
7870
  * @param reductionFactor Reduction factor
7493
7871
  * @param cliffFeeNumerator Cliff fee numerator
7494
- * @returns Validation result
7872
+ * @param baseFeeMode Base fee mode
7873
+ * @param poolVersion Pool version
7874
+ * @throws Error if the fee time scheduler is invalid.
7875
+ * @returns True if the fee time scheduler is valid, otherwise false.
7876
+ */
7877
+ declare function validateFeeTimeScheduler(numberOfPeriod: number, periodFrequency: BN$1, reductionFactor: BN$1, cliffFeeNumerator: BN$1, baseFeeMode: BaseFeeMode, poolVersion: PoolVersion): boolean;
7878
+ /**
7879
+ * Validates whether the base fee is static based on the scheduler's expiration.
7880
+ * @param currentPoint - The current point as BN.
7881
+ * @param activationPoint - The activation point as BN.
7882
+ * @param numberOfPeriod - The total number of periods as BN.
7883
+ * @param periodFrequency - The period frequency as BN.
7884
+ * @returns True if the base fee is static, otherwise false.
7885
+ */
7886
+ declare function validateFeeTimeSchedulerBaseFeeIsStatic(currentPoint: BN$1, activationPoint: BN$1, numberOfPeriod: BN$1, periodFrequency: BN$1): boolean;
7887
+ /**
7888
+ * Validates the Market Cap Fee Scheduler parameters.
7889
+ * This checks for non-zero scheduler fields and validates fee fractions and limits, following the Rust logic.
7890
+ * @param cliffFeeNumerator - The cliff fee numerator as BN.
7891
+ * @param numberOfPeriod - Number of periods (number).
7892
+ * @param sqrtPriceStepBps - The sqrt price step in basis points (BN).
7893
+ * @param reductionFactor - The reduction factor as BN.
7894
+ * @param schedulerExpirationDuration - The scheduler expiration duration as BN.
7895
+ * @param feeMarketCapSchedulerMode - The fee scheduler mode (BaseFeeMode).
7896
+ * @param poolVersion - The pool version.
7897
+ * @throws Error if validation fails.
7898
+ * @returns True if the fee market cap scheduler is valid, otherwise false.
7899
+ */
7900
+ declare function validateFeeMarketCapScheduler(cliffFeeNumerator: BN$1, numberOfPeriod: number, sqrtPriceStepBps: BN$1, reductionFactor: BN$1, schedulerExpirationDuration: BN$1, feeMarketCapSchedulerMode: BaseFeeMode, poolVersion: PoolVersion): boolean;
7901
+ /**
7902
+ * Validates whether the base fee is static for market cap fee scheduler, based on scheduler's expiration
7903
+ * @param currentPoint - The current point as BN.
7904
+ * @param activationPoint - The activation point as BN.
7905
+ * @param schedulerExpirationDuration - The scheduler expiration duration as BN.
7906
+ * @returns True if the base fee is static, otherwise false.
7495
7907
  */
7496
- declare function validateFeeScheduler(numberOfPeriod: number, periodFrequency: BN$1, reductionFactor: BN$1, cliffFeeNumerator: BN$1, baseFeeMode: BaseFeeMode, poolVersion: PoolVersion): boolean;
7908
+ declare function validateFeeMarketCapBaseFeeIsStatic(currentPoint: BN$1, activationPoint: BN$1, schedulerExpirationDuration: BN$1): boolean;
7497
7909
  /**
7498
7910
  * Validate rate limiter parameters
7499
7911
  * @param cliffFeeNumerator - Cliff fee numerator
@@ -7505,6 +7917,17 @@ declare function validateFeeScheduler(numberOfPeriod: number, periodFrequency: B
7505
7917
  * @returns Validation result
7506
7918
  */
7507
7919
  declare function validateFeeRateLimiter(cliffFeeNumerator: BN$1, feeIncrementBps: number, maxFeeBps: number, maxLimiterDuration: number, referenceAmount: BN$1, collectFeeMode: CollectFeeMode, activationType: ActivationType, poolVersion: PoolVersion): boolean;
7920
+ /**
7921
+ * Validates whether the rate limiter base fee is static based on the current and activation points, as well as the maxLimiterDuration and referenceAmount.
7922
+ * @param currentPoint - The current point as BN.
7923
+ * @param activationPoint - The activation point as BN.
7924
+ * @param maxLimiterDuration - The max limiter duration as number.
7925
+ * @param referenceAmount - The reference amount as BN.
7926
+ * @param maxFeeBps - The max fee in basis points as number.
7927
+ * @param feeIncrementBps - The fee increment in basis points as number.
7928
+ * @returns True if the base fee is static, otherwise false.
7929
+ */
7930
+ declare function validateFeeRateLimiterBaseFeeIsStatic(currentPoint: BN$1, activationPoint: BN$1, maxLimiterDuration: number, referenceAmount: BN$1, maxFeeBps: number, feeIncrementBps: number): boolean;
7508
7931
  /**
7509
7932
  * Validates that the fee fraction is valid (numerator < denominator, denominator != 0)
7510
7933
  * @param numerator - The numerator of the fee fraction
@@ -7602,7 +8025,8 @@ declare function fromDecimalToBN(value: Decimal): BN$1;
7602
8025
  * @param poolVersion - The pool version
7603
8026
  * @returns The fee scheduler parameters
7604
8027
  */
7605
- declare function getFeeSchedulerParams(startingBaseFeeBps: number, endingBaseFeeBps: number, baseFeeMode: BaseFeeMode, numberOfPeriod: number, totalDuration: number): BaseFee;
8028
+ declare function getFeeTimeSchedulerParams(startingBaseFeeBps: number, endingBaseFeeBps: number, baseFeeMode: BaseFeeMode, numberOfPeriod: number, totalDuration: number): BaseFee;
8029
+ declare function getFeeMarketCapSchedulerParams(startingBaseFeeBps: number, endingBaseFeeBps: number, baseFeeMode: BaseFeeMode, numberOfPeriod: number, sqrtPriceStepBps: number, schedulerExpirationDuration: number): BaseFee;
7606
8030
  /**
7607
8031
  * Gets the rate limiter parameters
7608
8032
  * @param baseFeeBps - The base fee in basis points
@@ -7633,12 +8057,19 @@ declare function getBaseFeeParams(baseFeeParams: {
7633
8057
  maxLimiterDuration: number;
7634
8058
  maxFeeBps: number;
7635
8059
  };
7636
- feeSchedulerParam?: {
8060
+ feeTimeSchedulerParam?: {
7637
8061
  startingFeeBps: number;
7638
8062
  endingFeeBps: number;
7639
8063
  numberOfPeriod: number;
7640
8064
  totalDuration: number;
7641
8065
  };
8066
+ feeMarketCapSchedulerParam?: {
8067
+ startingFeeBps: number;
8068
+ endingFeeBps: number;
8069
+ numberOfPeriod: number;
8070
+ sqrtPriceStepBps: number;
8071
+ schedulerExpirationDuration: number;
8072
+ };
7642
8073
  }, tokenBDecimal: number, activationType: ActivationType): BaseFee;
7643
8074
  /**
7644
8075
  * Gets the dynamic fee parameters
@@ -7648,6 +8079,17 @@ declare function getBaseFeeParams(baseFeeParams: {
7648
8079
  */
7649
8080
  declare function getDynamicFeeParams(baseFeeBps: number, maxPriceChangeBps?: number): DynamicFee;
7650
8081
 
8082
+ declare const cpAmmCoder: BorshCoder<string, string>;
8083
+ declare function encodeFeeTimeSchedulerParams(cliffFeeNumerator: BN$1, numberOfPeriod: number, periodFrequency: BN$1, reductionFactor: BN$1, baseFeeMode: BaseFeeMode): Buffer;
8084
+ declare function decodeFeeTimeSchedulerParams(data: Buffer): BorshFeeTimeScheduler;
8085
+ declare function decodePodAlignedFeeTimeScheduler(data: Buffer): PodAlignedFeeTimeScheduler;
8086
+ declare function encodeFeeMarketCapSchedulerParams(cliffFeeNumerator: BN$1, numberOfPeriod: number, sqrtPriceStepBps: number, schedulerExpirationDuration: number, reductionFactor: BN$1, baseFeeMode: BaseFeeMode): Buffer;
8087
+ declare function decodeFeeMarketCapSchedulerParams(data: Buffer): BorshFeeMarketCapScheduler;
8088
+ declare function decodePodAlignedFeeMarketCapScheduler(data: Buffer): PodAlignedFeeMarketCapScheduler;
8089
+ declare function encodeFeeRateLimiterParams(cliffFeeNumerator: BN$1, feeIncrementBps: number, maxLimiterDuration: number, maxFeeBps: number, referenceAmount: BN$1): Buffer;
8090
+ declare function decodeFeeRateLimiterParams(data: Buffer): BorshFeeRateLimiter;
8091
+ declare function decodePodAlignedFeeRateLimiter(data: Buffer): PodAlignedFeeRateLimiter;
8092
+
7651
8093
  /**
7652
8094
  * Converts basis points to a numerator
7653
8095
  * @param bps - The basis points
@@ -7689,7 +8131,7 @@ declare function getTotalFeeNumerator(poolFees: PoolFeesStruct, baseFeeNumerator
7689
8131
  * @param maxFeeNumerator - The max fee numerator
7690
8132
  * @returns The total trading fee from included fee amount
7691
8133
  */
7692
- declare function getTotalTradingFeeFromIncludedFeeAmount(poolFees: PoolFeesStruct, currentPoint: BN, activationPoint: BN, includedFeeAmount: BN, tradeDirection: TradeDirection, maxFeeNumerator: BN): BN;
8134
+ declare function getTotalTradingFeeFromIncludedFeeAmount(poolFees: PoolFeesStruct, currentPoint: BN, activationPoint: BN, includedFeeAmount: BN, tradeDirection: TradeDirection, maxFeeNumerator: BN, initSqrtPrice: BN, currentSqrtPrice: BN): BN;
7693
8135
  /**
7694
8136
  * Gets the total trading fee from excluded fee amount
7695
8137
  * @param poolFees - The pool fees
@@ -7700,7 +8142,7 @@ declare function getTotalTradingFeeFromIncludedFeeAmount(poolFees: PoolFeesStruc
7700
8142
  * @param maxFeeNumerator - The max fee numerator
7701
8143
  * @returns The total trading fee from excluded fee amount
7702
8144
  */
7703
- declare function getTotalTradingFeeFromExcludedFeeAmount(poolFees: PoolFeesStruct, currentPoint: BN, activationPoint: BN, excludedFeeAmount: BN, tradeDirection: TradeDirection, maxFeeNumerator: BN): BN;
8145
+ declare function getTotalTradingFeeFromExcludedFeeAmount(poolFees: PoolFeesStruct, currentPoint: BN, activationPoint: BN, excludedFeeAmount: BN, tradeDirection: TradeDirection, maxFeeNumerator: BN, initSqrtPrice: BN, currentSqrtPrice: BN): BN;
7704
8146
  /**
7705
8147
  * Splits the fees
7706
8148
  * @param poolFees - The pool fees
@@ -7800,33 +8242,50 @@ declare class FeeRateLimiter implements BaseFeeHandler {
7800
8242
  referenceAmount: BN$1;
7801
8243
  constructor(cliffFeeNumerator: BN$1, feeIncrementBps: number, maxFeeBps: number, maxLimiterDuration: number, referenceAmount: BN$1);
7802
8244
  validate(collectFeeMode: CollectFeeMode, activationType: ActivationType, poolVersion: PoolVersion): boolean;
7803
- getBaseFeeNumeratorFromIncludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, tradeDirection: TradeDirection, includedFeeAmount: BN$1): BN$1;
7804
- getBaseFeeNumeratorFromExcludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, tradeDirection: TradeDirection, excludedFeeAmount: BN$1): BN$1;
8245
+ getBaseFeeNumeratorFromIncludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, tradeDirection: TradeDirection, includedFeeAmount: BN$1, _initSqrtPrice: BN$1, _currentSqrtPrice: BN$1): BN$1;
8246
+ getBaseFeeNumeratorFromExcludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, tradeDirection: TradeDirection, excludedFeeAmount: BN$1, _initSqrtPrice: BN$1, _currentSqrtPrice: BN$1): BN$1;
8247
+ validateBaseFeeIsStatic(currentPoint: BN$1, activationPoint: BN$1): boolean;
8248
+ getMinBaseFeeNumerator(): BN$1;
7805
8249
  }
7806
8250
  /**
7807
- * Fee Scheduler implementation
8251
+ * Fee Time Scheduler implementation
7808
8252
  */
7809
- declare class FeeScheduler implements BaseFeeHandler {
8253
+ declare class FeeTimeScheduler implements BaseFeeHandler {
7810
8254
  cliffFeeNumerator: BN$1;
7811
8255
  numberOfPeriod: number;
7812
8256
  periodFrequency: BN$1;
7813
8257
  reductionFactor: BN$1;
7814
- feeSchedulerMode: BaseFeeMode;
7815
- constructor(cliffFeeNumerator: BN$1, numberOfPeriod: number, periodFrequency: BN$1, reductionFactor: BN$1, feeSchedulerMode: BaseFeeMode);
8258
+ feeTimeSchedulerMode: BaseFeeMode;
8259
+ constructor(cliffFeeNumerator: BN$1, numberOfPeriod: number, periodFrequency: BN$1, reductionFactor: BN$1, feeTimeSchedulerMode: BaseFeeMode);
7816
8260
  validate(collectFeeMode: CollectFeeMode, activationType: ActivationType, poolVersion: PoolVersion): boolean;
7817
- getBaseFeeNumeratorFromIncludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1): BN$1;
7818
- getBaseFeeNumeratorFromExcludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1): BN$1;
8261
+ getBaseFeeNumeratorFromIncludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, _tradeDirection: TradeDirection, _includedFeeAmount: BN$1, _initSqrtPrice: BN$1, _currentSqrtPrice: BN$1): BN$1;
8262
+ getBaseFeeNumeratorFromExcludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, _tradeDirection: TradeDirection, _excludedFeeAmount: BN$1, _initSqrtPrice: BN$1, _currentSqrtPrice: BN$1): BN$1;
8263
+ validateBaseFeeIsStatic(currentPoint: BN$1, activationPoint: BN$1): boolean;
8264
+ getMinBaseFeeNumerator(): BN$1;
8265
+ }
8266
+ /**
8267
+ * Fee Market Cap Scheduler implementation
8268
+ */
8269
+ declare class FeeMarketCapScheduler implements BaseFeeHandler {
8270
+ cliffFeeNumerator: BN$1;
8271
+ numberOfPeriod: number;
8272
+ sqrtPriceStepBps: number;
8273
+ schedulerExpirationDuration: number;
8274
+ reductionFactor: BN$1;
8275
+ feeMarketCapSchedulerMode: BaseFeeMode;
8276
+ constructor(cliffFeeNumerator: BN$1, numberOfPeriod: number, sqrtPriceStepBps: number, schedulerExpirationDuration: number, reductionFactor: BN$1, feeMarketCapSchedulerMode: BaseFeeMode);
8277
+ validate(_collectFeeMode: CollectFeeMode, _activationType: ActivationType, poolVersion: PoolVersion): boolean;
8278
+ getBaseFeeNumeratorFromIncludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, _tradeDirection: TradeDirection, _includedFeeAmount: BN$1, initSqrtPrice: BN$1, currentSqrtPrice: BN$1): BN$1;
8279
+ getBaseFeeNumeratorFromExcludedFeeAmount(currentPoint: BN$1, activationPoint: BN$1, _tradeDirection: TradeDirection, _excludedFeeAmount: BN$1, initSqrtPrice: BN$1, currentSqrtPrice: BN$1): BN$1;
8280
+ validateBaseFeeIsStatic(currentPoint: BN$1, activationPoint: BN$1): boolean;
8281
+ getMinBaseFeeNumerator(): BN$1;
7819
8282
  }
7820
8283
  /**
7821
8284
  * Get base fee handler based on base fee mode
7822
- * @param cliffFeeNumerator Cliff fee numerator
7823
- * @param firstFactor First factor (feeScheduler: numberOfPeriod, rateLimiter: feeIncrementBps)
7824
- * @param secondFactor Second factor (feeScheduler: periodFrequency, rateLimiter: maxLimiterDuration)
7825
- * @param thirdFactor Third factor (feeScheduler: reductionFactor, rateLimiter: referenceAmount)
7826
- * @param baseFeeMode Base fee mode
8285
+ * @param rawData Raw data
7827
8286
  * @returns Base fee handler instance
7828
8287
  */
7829
- declare function getBaseFeeHandler(cliffFeeNumerator: BN$1, firstFactor: number, secondFactor: number[], thirdFactor: BN$1, baseFeeMode: BaseFeeMode): BaseFeeHandler;
8288
+ declare function getBaseFeeHandler(rawData: number[]): BaseFeeHandler;
7830
8289
 
7831
8290
  /**
7832
8291
  * Check if dynamic fee is enabled
@@ -7844,60 +8303,96 @@ declare function isDynamicFeeEnabled(dynamicFee: DynamicFeeStruct): boolean;
7844
8303
  */
7845
8304
  declare function getDynamicFeeNumerator(volatilityAccumulator: BN$1, binStep: BN$1, variableFeeControl: BN$1): BN$1;
7846
8305
 
8306
+ /**
8307
+ * Gets the fee numerator on linear fee scheduler.
8308
+ * @param cliffFeeNumerator - The cliff fee numerator.
8309
+ * @param reductionFactor - The reduction factor.
8310
+ * @param period - The period.
8311
+ * @returns The fee numerator on linear fee scheduler.
8312
+ */
8313
+ declare function getFeeNumeratorOnLinearFeeScheduler(cliffFeeNumerator: BN$1, reductionFactor: BN$1, period: number): BN$1;
8314
+ /**
8315
+ * Gets the fee numerator on exponential fee scheduler.
8316
+ * @param cliffFeeNumerator - The cliff fee numerator.
8317
+ * @param reductionFactor - The reduction factor.
8318
+ * @param period - The period.
8319
+ * @returns The fee numerator on exponential fee scheduler.
8320
+ */
8321
+ declare function getFeeNumeratorOnExponentialFeeScheduler(cliffFeeNumerator: BN$1, reductionFactor: BN$1, period: number): BN$1;
7847
8322
  /**
7848
8323
  * Gets the max base fee numerator.
7849
8324
  * @param cliffFeeNumerator - The cliff fee numerator.
7850
8325
  * @returns The max base fee numerator.
7851
8326
  */
7852
8327
  declare function getMaxBaseFeeNumerator(cliffFeeNumerator: BN$1): BN$1;
8328
+
7853
8329
  /**
7854
- * Gets the min base fee numerator.
8330
+ * Gets the base fee numerator by period for the time fee scheduler.
7855
8331
  * @param cliffFeeNumerator - The cliff fee numerator.
7856
8332
  * @param numberOfPeriod - The number of periods.
7857
- * @param periodFrequency - The period frequency.
8333
+ * @param period - The period.
7858
8334
  * @param reductionFactor - The reduction factor.
7859
- * @param feeSchedulerMode - The fee scheduler mode.
7860
- * @returns The min base fee numerator.
8335
+ * @param feeTimeSchedulerMode - The fee scheduler mode.
8336
+ * @returns The base fee numerator by period.
7861
8337
  */
7862
- declare function getMinBaseFeeNumerator(cliffFeeNumerator: BN$1, numberOfPeriod: number, reductionFactor: BN$1, feeSchedulerMode: BaseFeeMode): BN$1;
8338
+ declare function getFeeTimeBaseFeeNumeratorByPeriod(cliffFeeNumerator: BN$1, numberOfPeriod: number, period: BN$1, reductionFactor: BN$1, feeTimeSchedulerMode: BaseFeeMode): BN$1;
7863
8339
  /**
7864
- * Gets the base fee numerator by period.
8340
+ * Gets the base fee numerator.
7865
8341
  * @param cliffFeeNumerator - The cliff fee numerator.
7866
8342
  * @param numberOfPeriod - The number of periods.
7867
- * @param period - The period.
8343
+ * @param periodFrequency - The period frequency.
7868
8344
  * @param reductionFactor - The reduction factor.
7869
- * @param feeSchedulerMode - The fee scheduler mode.
7870
- * @returns The base fee numerator by period.
8345
+ * @param feeTimeSchedulerMode - The fee scheduler mode.
8346
+ * @param currentPoint - The current point.
8347
+ * @param activationPoint - The activation point.
8348
+ * @returns The base fee numerator.
7871
8349
  */
7872
- declare function getBaseFeeNumeratorByPeriod(cliffFeeNumerator: BN$1, numberOfPeriod: number, period: BN$1, reductionFactor: BN$1, feeSchedulerMode: BaseFeeMode): BN$1;
8350
+ declare function getFeeTimeBaseFeeNumerator(cliffFeeNumerator: BN$1, numberOfPeriod: number, periodFrequency: BN$1, reductionFactor: BN$1, feeTimeSchedulerMode: BaseFeeMode, currentPoint: BN$1, activationPoint: BN$1): BN$1;
7873
8351
  /**
7874
- * Gets the fee numerator on linear fee scheduler.
8352
+ * Gets the min base fee numerator.
7875
8353
  * @param cliffFeeNumerator - The cliff fee numerator.
8354
+ * @param numberOfPeriod - The number of periods.
8355
+ * @param periodFrequency - The period frequency.
7876
8356
  * @param reductionFactor - The reduction factor.
7877
- * @param period - The period.
7878
- * @returns The fee numerator on linear fee scheduler.
8357
+ * @param feeTimeSchedulerMode - The fee scheduler mode.
8358
+ * @returns The min base fee numerator.
7879
8359
  */
7880
- declare function getFeeNumeratorOnLinearFeeScheduler(cliffFeeNumerator: BN$1, reductionFactor: BN$1, period: number): BN$1;
8360
+ declare function getFeeTimeMinBaseFeeNumerator(cliffFeeNumerator: BN$1, numberOfPeriod: number, reductionFactor: BN$1, feeTimeSchedulerMode: BaseFeeMode): BN$1;
8361
+
7881
8362
  /**
7882
- * Gets the fee numerator on exponential fee scheduler.
8363
+ * Gets the base fee numerator by period for the market cap fee scheduler.
7883
8364
  * @param cliffFeeNumerator - The cliff fee numerator.
7884
- * @param reductionFactor - The reduction factor.
8365
+ * @param numberOfPeriod - The number of periods.
7885
8366
  * @param period - The period.
7886
- * @returns The fee numerator on exponential fee scheduler.
8367
+ * @param reductionFactor - The reduction factor.
8368
+ * @param feeMarketCapSchedulerMode - The fee scheduler mode.
8369
+ * @returns The base fee numerator by period.
7887
8370
  */
7888
- declare function getFeeNumeratorOnExponentialFeeScheduler(cliffFeeNumerator: BN$1, reductionFactor: BN$1, period: number): BN$1;
8371
+ declare function getFeeMarketCapBaseFeeNumeratorByPeriod(cliffFeeNumerator: BN$1, numberOfPeriod: number, period: BN$1, reductionFactor: BN$1, feeMarketCapSchedulerMode: BaseFeeMode): BN$1;
7889
8372
  /**
7890
- * Gets the base fee numerator.
8373
+ * Gets the base fee numerator for market cap scheduler.
7891
8374
  * @param cliffFeeNumerator - The cliff fee numerator.
7892
8375
  * @param numberOfPeriod - The number of periods.
7893
- * @param periodFrequency - The period frequency.
8376
+ * @param sqrtPriceStepBps - The sqrt price step bps.
8377
+ * @param schedulerExpirationDuration - The scheduler expiration duration.
7894
8378
  * @param reductionFactor - The reduction factor.
7895
- * @param feeSchedulerMode - The fee scheduler mode.
8379
+ * @param feeMarketCapSchedulerMode - The fee scheduler mode.
7896
8380
  * @param currentPoint - The current point.
7897
8381
  * @param activationPoint - The activation point.
8382
+ * @param initSqrtPrice - The initial sqrt price.
8383
+ * @param currentSqrtPrice - The current sqrt price.
7898
8384
  * @returns The base fee numerator.
7899
8385
  */
7900
- declare function getBaseFeeNumerator(cliffFeeNumerator: BN$1, numberOfPeriod: number, periodFrequency: BN$1, reductionFactor: BN$1, feeSchedulerMode: BaseFeeMode, currentPoint: BN$1, activationPoint: BN$1): BN$1;
8386
+ declare function getFeeMarketCapBaseFeeNumerator(cliffFeeNumerator: BN$1, numberOfPeriod: number, sqrtPriceStepBps: number, schedulerExpirationDuration: number, reductionFactor: BN$1, feeMarketCapSchedulerMode: BaseFeeMode, currentPoint: BN$1, activationPoint: BN$1, initSqrtPrice: BN$1, currentSqrtPrice: BN$1): BN$1;
8387
+ /**
8388
+ * Gets the min base fee numerator for market cap scheduler.
8389
+ * @param cliffFeeNumerator - The cliff fee numerator.
8390
+ * @param numberOfPeriod - The number of periods.
8391
+ * @param reductionFactor - The reduction factor.
8392
+ * @param feeMarketCapSchedulerMode - The fee scheduler mode.
8393
+ * @returns The min base fee numerator.
8394
+ */
8395
+ declare function getFeeMarketCapMinBaseFeeNumerator(cliffFeeNumerator: BN$1, numberOfPeriod: number, reductionFactor: BN$1, feeMarketCapSchedulerMode: BaseFeeMode): BN$1;
7901
8396
 
7902
8397
  /**
7903
8398
  * Checks if the rate limiter is zero.
@@ -8256,7 +8751,7 @@ declare function calculateInitSqrtPrice(tokenAAmount: BN, tokenBAmount: BN, minS
8256
8751
  var address = "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG";
8257
8752
  var metadata = {
8258
8753
  name: "cp_amm",
8259
- version: "0.1.5",
8754
+ version: "0.1.6",
8260
8755
  spec: "0.1.0",
8261
8756
  description: "Created with Anchor"
8262
8757
  };
@@ -8928,19 +9423,19 @@ var instructions = [
8928
9423
  }
8929
9424
  },
8930
9425
  {
8931
- name: "claim_fee_operator",
9426
+ name: "operator",
8932
9427
  docs: [
8933
9428
  "Claim fee operator"
8934
9429
  ]
8935
9430
  },
8936
9431
  {
8937
- name: "operator",
9432
+ name: "whitelisted_address",
8938
9433
  docs: [
8939
9434
  "Operator"
8940
9435
  ],
8941
9436
  signer: true,
8942
9437
  relations: [
8943
- "claim_fee_operator"
9438
+ "operator"
8944
9439
  ]
8945
9440
  },
8946
9441
  {
@@ -9102,29 +9597,35 @@ var instructions = [
9102
9597
  ]
9103
9598
  },
9104
9599
  {
9105
- name: "close_claim_fee_operator",
9600
+ name: "close_config",
9106
9601
  discriminator: [
9107
- 38,
9108
- 134,
9109
- 82,
9110
- 216,
9602
+ 145,
9603
+ 9,
9604
+ 72,
9605
+ 157,
9111
9606
  95,
9112
- 124,
9113
- 17,
9114
- 99
9607
+ 125,
9608
+ 61,
9609
+ 85
9115
9610
  ],
9116
9611
  accounts: [
9117
9612
  {
9118
- name: "claim_fee_operator",
9613
+ name: "config",
9119
9614
  writable: true
9120
9615
  },
9121
9616
  {
9122
- name: "rent_receiver",
9123
- writable: true
9617
+ name: "operator"
9124
9618
  },
9125
9619
  {
9126
- name: "admin",
9127
- signer: true
9620
+ name: "whitelisted_address",
9621
+ signer: true,
9622
+ relations: [
9623
+ "operator"
9624
+ ]
9625
+ },
9626
+ {
9627
+ name: "rent_receiver",
9628
+ writable: true
9128
9629
  },
9129
9630
  {
9130
9631
  name: "event_authority",
@@ -9163,25 +9664,24 @@ var instructions = [
9163
9664
  ]
9164
9665
  },
9165
9666
  {
9166
- name: "close_config",
9667
+ name: "close_operator_account",
9167
9668
  discriminator: [
9168
- 145,
9669
+ 171,
9169
9670
  9,
9170
- 72,
9171
- 157,
9172
- 95,
9173
- 125,
9174
- 61,
9175
- 85
9671
+ 213,
9672
+ 74,
9673
+ 120,
9674
+ 23,
9675
+ 3,
9676
+ 29
9176
9677
  ],
9177
9678
  accounts: [
9178
9679
  {
9179
- name: "config",
9680
+ name: "operator",
9180
9681
  writable: true
9181
9682
  },
9182
9683
  {
9183
9684
  name: "admin",
9184
- writable: true,
9185
9685
  signer: true
9186
9686
  },
9187
9687
  {
@@ -9338,9 +9838,14 @@ var instructions = [
9338
9838
  writable: true
9339
9839
  },
9340
9840
  {
9341
- name: "admin",
9342
- writable: true,
9343
- signer: true
9841
+ name: "operator"
9842
+ },
9843
+ {
9844
+ name: "whitelisted_address",
9845
+ signer: true,
9846
+ relations: [
9847
+ "operator"
9848
+ ]
9344
9849
  },
9345
9850
  {
9346
9851
  name: "rent_receiver",
@@ -9383,20 +9888,23 @@ var instructions = [
9383
9888
  ]
9384
9889
  },
9385
9890
  {
9386
- name: "create_claim_fee_operator",
9891
+ name: "create_config",
9892
+ docs: [
9893
+ "OPERATOR FUNCTIONS /////"
9894
+ ],
9387
9895
  discriminator: [
9388
- 169,
9389
- 62,
9896
+ 201,
9390
9897
  207,
9391
- 107,
9392
- 58,
9393
- 187,
9394
- 162,
9395
- 109
9898
+ 243,
9899
+ 114,
9900
+ 75,
9901
+ 111,
9902
+ 47,
9903
+ 189
9396
9904
  ],
9397
9905
  accounts: [
9398
9906
  {
9399
- name: "claim_fee_operator",
9907
+ name: "config",
9400
9908
  writable: true,
9401
9909
  pda: {
9402
9910
  seeds: [
@@ -9404,21 +9912,16 @@ var instructions = [
9404
9912
  kind: "const",
9405
9913
  value: [
9406
9914
  99,
9407
- 102,
9408
- 95,
9409
- 111,
9410
- 112,
9411
- 101,
9412
- 114,
9413
- 97,
9414
- 116,
9415
9915
  111,
9416
- 114
9916
+ 110,
9917
+ 102,
9918
+ 105,
9919
+ 103
9417
9920
  ]
9418
9921
  },
9419
9922
  {
9420
- kind: "account",
9421
- path: "operator"
9923
+ kind: "arg",
9924
+ path: "index"
9422
9925
  }
9423
9926
  ]
9424
9927
  }
@@ -9427,7 +9930,14 @@ var instructions = [
9427
9930
  name: "operator"
9428
9931
  },
9429
9932
  {
9430
- name: "admin",
9933
+ name: "whitelisted_address",
9934
+ signer: true,
9935
+ relations: [
9936
+ "operator"
9937
+ ]
9938
+ },
9939
+ {
9940
+ name: "payer",
9431
9941
  writable: true,
9432
9942
  signer: true
9433
9943
  },
@@ -9469,22 +9979,31 @@ var instructions = [
9469
9979
  }
9470
9980
  ],
9471
9981
  args: [
9982
+ {
9983
+ name: "index",
9984
+ type: "u64"
9985
+ },
9986
+ {
9987
+ name: "config_parameters",
9988
+ type: {
9989
+ defined: {
9990
+ name: "StaticConfigParameters"
9991
+ }
9992
+ }
9993
+ }
9472
9994
  ]
9473
9995
  },
9474
9996
  {
9475
- name: "create_config",
9476
- docs: [
9477
- "ADMIN FUNCTIONS /////"
9478
- ],
9997
+ name: "create_dynamic_config",
9479
9998
  discriminator: [
9480
- 201,
9481
- 207,
9482
- 243,
9483
- 114,
9484
- 75,
9485
- 111,
9486
- 47,
9487
- 189
9999
+ 81,
10000
+ 251,
10001
+ 122,
10002
+ 78,
10003
+ 66,
10004
+ 57,
10005
+ 208,
10006
+ 82
9488
10007
  ],
9489
10008
  accounts: [
9490
10009
  {
@@ -9511,7 +10030,17 @@ var instructions = [
9511
10030
  }
9512
10031
  },
9513
10032
  {
9514
- name: "admin",
10033
+ name: "operator"
10034
+ },
10035
+ {
10036
+ name: "whitelisted_address",
10037
+ signer: true,
10038
+ relations: [
10039
+ "operator"
10040
+ ]
10041
+ },
10042
+ {
10043
+ name: "payer",
9515
10044
  writable: true,
9516
10045
  signer: true
9517
10046
  },
@@ -9561,50 +10090,62 @@ var instructions = [
9561
10090
  name: "config_parameters",
9562
10091
  type: {
9563
10092
  defined: {
9564
- name: "StaticConfigParameters"
10093
+ name: "DynamicConfigParameters"
9565
10094
  }
9566
10095
  }
9567
10096
  }
9568
10097
  ]
9569
10098
  },
9570
10099
  {
9571
- name: "create_dynamic_config",
10100
+ name: "create_operator_account",
10101
+ docs: [
10102
+ "ADMIN FUNCTIONS /////"
10103
+ ],
9572
10104
  discriminator: [
9573
- 81,
9574
- 251,
9575
- 122,
9576
- 78,
9577
- 66,
9578
- 57,
9579
- 208,
9580
- 82
10105
+ 221,
10106
+ 64,
10107
+ 246,
10108
+ 149,
10109
+ 240,
10110
+ 153,
10111
+ 229,
10112
+ 163
9581
10113
  ],
9582
10114
  accounts: [
9583
10115
  {
9584
- name: "config",
10116
+ name: "operator",
9585
10117
  writable: true,
9586
10118
  pda: {
9587
10119
  seeds: [
9588
10120
  {
9589
10121
  kind: "const",
9590
10122
  value: [
9591
- 99,
9592
10123
  111,
9593
- 110,
9594
- 102,
9595
- 105,
9596
- 103
10124
+ 112,
10125
+ 101,
10126
+ 114,
10127
+ 97,
10128
+ 116,
10129
+ 111,
10130
+ 114
9597
10131
  ]
9598
10132
  },
9599
10133
  {
9600
- kind: "arg",
9601
- path: "index"
10134
+ kind: "account",
10135
+ path: "whitelisted_address"
9602
10136
  }
9603
10137
  ]
9604
10138
  }
9605
10139
  },
10140
+ {
10141
+ name: "whitelisted_address"
10142
+ },
9606
10143
  {
9607
10144
  name: "admin",
10145
+ signer: true
10146
+ },
10147
+ {
10148
+ name: "payer",
9608
10149
  writable: true,
9609
10150
  signer: true
9610
10151
  },
@@ -9647,16 +10188,8 @@ var instructions = [
9647
10188
  ],
9648
10189
  args: [
9649
10190
  {
9650
- name: "index",
9651
- type: "u64"
9652
- },
9653
- {
9654
- name: "config_parameters",
9655
- type: {
9656
- defined: {
9657
- name: "DynamicConfigParameters"
9658
- }
9659
- }
10191
+ name: "permission",
10192
+ type: "u128"
9660
10193
  }
9661
10194
  ]
9662
10195
  },
@@ -9857,7 +10390,17 @@ var instructions = [
9857
10390
  name: "token_mint"
9858
10391
  },
9859
10392
  {
9860
- name: "admin",
10393
+ name: "operator"
10394
+ },
10395
+ {
10396
+ name: "whitelisted_address",
10397
+ signer: true,
10398
+ relations: [
10399
+ "operator"
10400
+ ]
10401
+ },
10402
+ {
10403
+ name: "payer",
9861
10404
  writable: true,
9862
10405
  signer: true
9863
10406
  },
@@ -9901,6 +10444,40 @@ var instructions = [
9901
10444
  args: [
9902
10445
  ]
9903
10446
  },
10447
+ {
10448
+ name: "dummy_ix",
10449
+ discriminator: [
10450
+ 234,
10451
+ 95,
10452
+ 176,
10453
+ 185,
10454
+ 7,
10455
+ 42,
10456
+ 35,
10457
+ 159
10458
+ ],
10459
+ accounts: [
10460
+ {
10461
+ name: "pod_aligned_fee_time_scheduler"
10462
+ },
10463
+ {
10464
+ name: "pod_aligned_fee_rate_limiter"
10465
+ },
10466
+ {
10467
+ name: "pod_aligned_fee_market_cap_scheduler"
10468
+ }
10469
+ ],
10470
+ args: [
10471
+ {
10472
+ name: "_ixs",
10473
+ type: {
10474
+ defined: {
10475
+ name: "DummyParams"
10476
+ }
10477
+ }
10478
+ }
10479
+ ]
10480
+ },
9904
10481
  {
9905
10482
  name: "fund_reward",
9906
10483
  discriminator: [
@@ -11463,8 +12040,14 @@ var instructions = [
11463
12040
  writable: true
11464
12041
  },
11465
12042
  {
11466
- name: "admin",
11467
- signer: true
12043
+ name: "operator"
12044
+ },
12045
+ {
12046
+ name: "whitelisted_address",
12047
+ signer: true,
12048
+ relations: [
12049
+ "operator"
12050
+ ]
11468
12051
  },
11469
12052
  {
11470
12053
  name: "event_authority",
@@ -11844,7 +12427,7 @@ var instructions = [
11844
12427
  ],
11845
12428
  args: [
11846
12429
  {
11847
- name: "params",
12430
+ name: "_params",
11848
12431
  type: {
11849
12432
  defined: {
11850
12433
  name: "SwapParameters"
@@ -11985,7 +12568,7 @@ var instructions = [
11985
12568
  ],
11986
12569
  args: [
11987
12570
  {
11988
- name: "params",
12571
+ name: "_params",
11989
12572
  type: {
11990
12573
  defined: {
11991
12574
  name: "SwapParameters2"
@@ -11994,6 +12577,77 @@ var instructions = [
11994
12577
  }
11995
12578
  ]
11996
12579
  },
12580
+ {
12581
+ name: "update_pool_fees",
12582
+ discriminator: [
12583
+ 118,
12584
+ 217,
12585
+ 203,
12586
+ 179,
12587
+ 60,
12588
+ 8,
12589
+ 70,
12590
+ 89
12591
+ ],
12592
+ accounts: [
12593
+ {
12594
+ name: "pool",
12595
+ writable: true
12596
+ },
12597
+ {
12598
+ name: "operator"
12599
+ },
12600
+ {
12601
+ name: "whitelisted_address",
12602
+ signer: true,
12603
+ relations: [
12604
+ "operator"
12605
+ ]
12606
+ },
12607
+ {
12608
+ name: "event_authority",
12609
+ pda: {
12610
+ seeds: [
12611
+ {
12612
+ kind: "const",
12613
+ value: [
12614
+ 95,
12615
+ 95,
12616
+ 101,
12617
+ 118,
12618
+ 101,
12619
+ 110,
12620
+ 116,
12621
+ 95,
12622
+ 97,
12623
+ 117,
12624
+ 116,
12625
+ 104,
12626
+ 111,
12627
+ 114,
12628
+ 105,
12629
+ 116,
12630
+ 121
12631
+ ]
12632
+ }
12633
+ ]
12634
+ }
12635
+ },
12636
+ {
12637
+ name: "program"
12638
+ }
12639
+ ],
12640
+ args: [
12641
+ {
12642
+ name: "params",
12643
+ type: {
12644
+ defined: {
12645
+ name: "UpdatePoolFeesParameters"
12646
+ }
12647
+ }
12648
+ }
12649
+ ]
12650
+ },
11997
12651
  {
11998
12652
  name: "update_reward_duration",
11999
12653
  discriminator: [
@@ -12205,19 +12859,6 @@ var instructions = [
12205
12859
  }
12206
12860
  ];
12207
12861
  var accounts = [
12208
- {
12209
- name: "ClaimFeeOperator",
12210
- discriminator: [
12211
- 166,
12212
- 48,
12213
- 134,
12214
- 86,
12215
- 34,
12216
- 200,
12217
- 188,
12218
- 150
12219
- ]
12220
- },
12221
12862
  {
12222
12863
  name: "Config",
12223
12864
  discriminator: [
@@ -12231,6 +12872,58 @@ var accounts = [
12231
12872
  130
12232
12873
  ]
12233
12874
  },
12875
+ {
12876
+ name: "Operator",
12877
+ discriminator: [
12878
+ 219,
12879
+ 31,
12880
+ 188,
12881
+ 145,
12882
+ 69,
12883
+ 139,
12884
+ 204,
12885
+ 117
12886
+ ]
12887
+ },
12888
+ {
12889
+ name: "PodAlignedFeeMarketCapScheduler",
12890
+ discriminator: [
12891
+ 251,
12892
+ 130,
12893
+ 208,
12894
+ 253,
12895
+ 245,
12896
+ 27,
12897
+ 145,
12898
+ 203
12899
+ ]
12900
+ },
12901
+ {
12902
+ name: "PodAlignedFeeRateLimiter",
12903
+ discriminator: [
12904
+ 160,
12905
+ 219,
12906
+ 8,
12907
+ 251,
12908
+ 179,
12909
+ 7,
12910
+ 16,
12911
+ 117
12912
+ ]
12913
+ },
12914
+ {
12915
+ name: "PodAlignedFeeTimeScheduler",
12916
+ discriminator: [
12917
+ 239,
12918
+ 132,
12919
+ 138,
12920
+ 213,
12921
+ 67,
12922
+ 154,
12923
+ 130,
12924
+ 70
12925
+ ]
12926
+ },
12234
12927
  {
12235
12928
  name: "Pool",
12236
12929
  discriminator: [
@@ -12285,19 +12978,6 @@ var accounts = [
12285
12978
  }
12286
12979
  ];
12287
12980
  var events = [
12288
- {
12289
- name: "EvtAddLiquidity",
12290
- discriminator: [
12291
- 175,
12292
- 242,
12293
- 8,
12294
- 157,
12295
- 30,
12296
- 247,
12297
- 185,
12298
- 169
12299
- ]
12300
- },
12301
12981
  {
12302
12982
  name: "EvtClaimPartnerFee",
12303
12983
  discriminator: [
@@ -12351,20 +13031,7 @@ var events = [
12351
13031
  ]
12352
13032
  },
12353
13033
  {
12354
- name: "EvtCloseClaimFeeOperator",
12355
- discriminator: [
12356
- 111,
12357
- 39,
12358
- 37,
12359
- 55,
12360
- 110,
12361
- 216,
12362
- 194,
12363
- 23
12364
- ]
12365
- },
12366
- {
12367
- name: "EvtCloseConfig",
13034
+ name: "EvtCloseConfig",
12368
13035
  discriminator: [
12369
13036
  36,
12370
13037
  30,
@@ -12389,19 +13056,6 @@ var events = [
12389
13056
  178
12390
13057
  ]
12391
13058
  },
12392
- {
12393
- name: "EvtCreateClaimFeeOperator",
12394
- discriminator: [
12395
- 21,
12396
- 6,
12397
- 153,
12398
- 120,
12399
- 68,
12400
- 116,
12401
- 28,
12402
- 177
12403
- ]
12404
- },
12405
13059
  {
12406
13060
  name: "EvtCreateConfig",
12407
13061
  discriminator: [
@@ -12532,19 +13186,6 @@ var events = [
12532
13186
  11
12533
13187
  ]
12534
13188
  },
12535
- {
12536
- name: "EvtRemoveLiquidity",
12537
- discriminator: [
12538
- 87,
12539
- 46,
12540
- 88,
12541
- 98,
12542
- 175,
12543
- 96,
12544
- 34,
12545
- 91
12546
- ]
12547
- },
12548
13189
  {
12549
13190
  name: "EvtSetPoolStatus",
12550
13191
  discriminator: [
@@ -12571,19 +13212,6 @@ var events = [
12571
13212
  103
12572
13213
  ]
12573
13214
  },
12574
- {
12575
- name: "EvtSwap",
12576
- discriminator: [
12577
- 27,
12578
- 60,
12579
- 21,
12580
- 213,
12581
- 138,
12582
- 170,
12583
- 187,
12584
- 147
12585
- ]
12586
- },
12587
13215
  {
12588
13216
  name: "EvtSwap2",
12589
13217
  discriminator: [
@@ -12597,6 +13225,19 @@ var events = [
12597
13225
  153
12598
13226
  ]
12599
13227
  },
13228
+ {
13229
+ name: "EvtUpdatePoolFees",
13230
+ discriminator: [
13231
+ 76,
13232
+ 165,
13233
+ 246,
13234
+ 102,
13235
+ 102,
13236
+ 217,
13237
+ 156,
13238
+ 44
13239
+ ]
13240
+ },
12600
13241
  {
12601
13242
  name: "EvtUpdateRewardDuration",
12602
13243
  discriminator: [
@@ -12890,7 +13531,7 @@ var errors = [
12890
13531
  },
12891
13532
  {
12892
13533
  code: 6050,
12893
- name: "InvalidFeeScheduler",
13534
+ name: "InvalidFeeTimeScheduler",
12894
13535
  msg: "Invalid fee scheduler"
12895
13536
  },
12896
13537
  {
@@ -12902,6 +13543,41 @@ var errors = [
12902
13543
  code: 6052,
12903
13544
  name: "InvalidPoolVersion",
12904
13545
  msg: "Invalid pool version"
13546
+ },
13547
+ {
13548
+ code: 6053,
13549
+ name: "InvalidAuthority",
13550
+ msg: "Invalid authority to do that action"
13551
+ },
13552
+ {
13553
+ code: 6054,
13554
+ name: "InvalidPermission",
13555
+ msg: "Invalid permission"
13556
+ },
13557
+ {
13558
+ code: 6055,
13559
+ name: "InvalidFeeMarketCapScheduler",
13560
+ msg: "Invalid fee market cap scheduler"
13561
+ },
13562
+ {
13563
+ code: 6056,
13564
+ name: "CannotUpdateBaseFee",
13565
+ msg: "Cannot update base fee"
13566
+ },
13567
+ {
13568
+ code: 6057,
13569
+ name: "InvalidDynamicFeeParameters",
13570
+ msg: "Invalid dynamic fee parameters"
13571
+ },
13572
+ {
13573
+ code: 6058,
13574
+ name: "InvalidUpdatePoolFeesParameters",
13575
+ msg: "Invalid update pool fees parameters"
13576
+ },
13577
+ {
13578
+ code: 6059,
13579
+ name: "MissingOperatorAccount",
13580
+ msg: "Missing operator account"
12905
13581
  }
12906
13582
  ];
12907
13583
  var types = [
@@ -12935,7 +13611,7 @@ var types = [
12935
13611
  }
12936
13612
  },
12937
13613
  {
12938
- name: "BaseFeeConfig",
13614
+ name: "BaseFeeInfo",
12939
13615
  serialization: "bytemuck",
12940
13616
  repr: {
12941
13617
  kind: "c"
@@ -12944,44 +13620,60 @@ var types = [
12944
13620
  kind: "struct",
12945
13621
  fields: [
12946
13622
  {
12947
- name: "cliff_fee_numerator",
12948
- type: "u64"
12949
- },
12950
- {
12951
- name: "base_fee_mode",
12952
- type: "u8"
12953
- },
12954
- {
12955
- name: "padding",
13623
+ name: "data",
12956
13624
  type: {
12957
13625
  array: [
12958
13626
  "u8",
12959
- 5
13627
+ 32
12960
13628
  ]
12961
13629
  }
12962
- },
12963
- {
12964
- name: "first_factor",
12965
- type: "u16"
12966
- },
13630
+ }
13631
+ ]
13632
+ }
13633
+ },
13634
+ {
13635
+ name: "BaseFeeParameters",
13636
+ type: {
13637
+ kind: "struct",
13638
+ fields: [
12967
13639
  {
12968
- name: "second_factor",
13640
+ name: "data",
12969
13641
  type: {
12970
13642
  array: [
12971
13643
  "u8",
12972
- 8
13644
+ 30
12973
13645
  ]
12974
13646
  }
13647
+ }
13648
+ ]
13649
+ }
13650
+ },
13651
+ {
13652
+ name: "BaseFeeStruct",
13653
+ serialization: "bytemuck",
13654
+ repr: {
13655
+ kind: "c"
13656
+ },
13657
+ type: {
13658
+ kind: "struct",
13659
+ fields: [
13660
+ {
13661
+ name: "base_fee_info",
13662
+ type: {
13663
+ defined: {
13664
+ name: "BaseFeeInfo"
13665
+ }
13666
+ }
12975
13667
  },
12976
13668
  {
12977
- name: "third_factor",
13669
+ name: "padding_1",
12978
13670
  type: "u64"
12979
13671
  }
12980
13672
  ]
12981
13673
  }
12982
13674
  },
12983
13675
  {
12984
- name: "BaseFeeParameters",
13676
+ name: "BorshFeeMarketCapScheduler",
12985
13677
  type: {
12986
13678
  kind: "struct",
12987
13679
  fields: [
@@ -12990,35 +13682,52 @@ var types = [
12990
13682
  type: "u64"
12991
13683
  },
12992
13684
  {
12993
- name: "first_factor",
13685
+ name: "number_of_period",
12994
13686
  type: "u16"
12995
13687
  },
12996
13688
  {
12997
- name: "second_factor",
12998
- type: {
12999
- array: [
13000
- "u8",
13001
- 8
13002
- ]
13003
- }
13689
+ name: "sqrt_price_step_bps",
13690
+ type: "u32"
13691
+ },
13692
+ {
13693
+ name: "scheduler_expiration_duration",
13694
+ type: "u32"
13004
13695
  },
13005
13696
  {
13006
- name: "third_factor",
13697
+ name: "reduction_factor",
13007
13698
  type: "u64"
13008
13699
  },
13009
13700
  {
13010
13701
  name: "base_fee_mode",
13011
13702
  type: "u8"
13703
+ },
13704
+ {
13705
+ name: "padding",
13706
+ type: {
13707
+ array: [
13708
+ "u8",
13709
+ 3
13710
+ ]
13711
+ }
13012
13712
  }
13013
13713
  ]
13014
13714
  }
13015
13715
  },
13016
13716
  {
13017
- name: "BaseFeeStruct",
13018
- serialization: "bytemuck",
13019
- repr: {
13020
- kind: "c"
13021
- },
13717
+ name: "BorshFeeRateLimiter",
13718
+ docs: [
13719
+ "we denote reference_amount = x0, cliff_fee_numerator = c, fee_increment = i",
13720
+ "if input_amount <= x0, then fee = input_amount * c",
13721
+ "",
13722
+ "if input_amount > x0, then input_amount = x0 + (a * x0 + b)",
13723
+ "if a < max_index",
13724
+ "then fee = x0 * c + x0 * (c + i) + .... + x0 * (c + i*a) + b * (c + i * (a+1))",
13725
+ "then fee = x0 * (c + c*a + i*a*(a+1)/2) + b * (c + i * (a+1))",
13726
+ "",
13727
+ "if a >= max_index",
13728
+ "if a = max_index + d, input_amount = x0 + max_index * x0 + (d * x0 + b)",
13729
+ "then fee = x0 * (c + c*max_index + i*max_index*(max_index+1)/2) + (d * x0 + b) * MAX_FEE"
13730
+ ],
13022
13731
  type: {
13023
13732
  kind: "struct",
13024
13733
  fields: [
@@ -13027,70 +13736,68 @@ var types = [
13027
13736
  type: "u64"
13028
13737
  },
13029
13738
  {
13030
- name: "base_fee_mode",
13031
- type: "u8"
13739
+ name: "fee_increment_bps",
13740
+ type: "u16"
13032
13741
  },
13033
13742
  {
13034
- name: "padding_0",
13035
- type: {
13036
- array: [
13037
- "u8",
13038
- 5
13039
- ]
13040
- }
13743
+ name: "max_limiter_duration",
13744
+ type: "u32"
13041
13745
  },
13042
13746
  {
13043
- name: "first_factor",
13044
- type: "u16"
13747
+ name: "max_fee_bps",
13748
+ type: "u32"
13749
+ },
13750
+ {
13751
+ name: "reference_amount",
13752
+ type: "u64"
13753
+ },
13754
+ {
13755
+ name: "base_fee_mode",
13756
+ type: "u8"
13045
13757
  },
13046
13758
  {
13047
- name: "second_factor",
13759
+ name: "padding",
13048
13760
  type: {
13049
13761
  array: [
13050
13762
  "u8",
13051
- 8
13763
+ 3
13052
13764
  ]
13053
13765
  }
13054
- },
13055
- {
13056
- name: "third_factor",
13057
- type: "u64"
13058
- },
13059
- {
13060
- name: "padding_1",
13061
- type: "u64"
13062
13766
  }
13063
13767
  ]
13064
13768
  }
13065
13769
  },
13066
13770
  {
13067
- name: "ClaimFeeOperator",
13068
- docs: [
13069
- "Parameter that set by the protocol"
13070
- ],
13071
- serialization: "bytemuck",
13072
- repr: {
13073
- kind: "c"
13074
- },
13771
+ name: "BorshFeeTimeScheduler",
13075
13772
  type: {
13076
13773
  kind: "struct",
13077
13774
  fields: [
13078
13775
  {
13079
- name: "operator",
13080
- docs: [
13081
- "operator"
13082
- ],
13083
- type: "pubkey"
13776
+ name: "cliff_fee_numerator",
13777
+ type: "u64"
13084
13778
  },
13085
13779
  {
13086
- name: "_padding",
13087
- docs: [
13088
- "Reserve"
13089
- ],
13780
+ name: "number_of_period",
13781
+ type: "u16"
13782
+ },
13783
+ {
13784
+ name: "period_frequency",
13785
+ type: "u64"
13786
+ },
13787
+ {
13788
+ name: "reduction_factor",
13789
+ type: "u64"
13790
+ },
13791
+ {
13792
+ name: "base_fee_mode",
13793
+ type: "u8"
13794
+ },
13795
+ {
13796
+ name: "padding",
13090
13797
  type: {
13091
13798
  array: [
13092
13799
  "u8",
13093
- 128
13800
+ 3
13094
13801
  ]
13095
13802
  }
13096
13803
  }
@@ -13201,6 +13908,38 @@ var types = [
13201
13908
  ]
13202
13909
  }
13203
13910
  },
13911
+ {
13912
+ name: "DummyParams",
13913
+ type: {
13914
+ kind: "struct",
13915
+ fields: [
13916
+ {
13917
+ name: "borsh_fee_time_scheduler_params",
13918
+ type: {
13919
+ defined: {
13920
+ name: "BorshFeeTimeScheduler"
13921
+ }
13922
+ }
13923
+ },
13924
+ {
13925
+ name: "borsh_fee_rate_limiter_params",
13926
+ type: {
13927
+ defined: {
13928
+ name: "BorshFeeRateLimiter"
13929
+ }
13930
+ }
13931
+ },
13932
+ {
13933
+ name: "borsh_fee_market_cap_scheduler_params",
13934
+ type: {
13935
+ defined: {
13936
+ name: "BorshFeeMarketCapScheduler"
13937
+ }
13938
+ }
13939
+ }
13940
+ ]
13941
+ }
13942
+ },
13204
13943
  {
13205
13944
  name: "DynamicConfigParameters",
13206
13945
  type: {
@@ -13381,7 +14120,7 @@ var types = [
13381
14120
  }
13382
14121
  },
13383
14122
  {
13384
- name: "EvtAddLiquidity",
14123
+ name: "EvtClaimPartnerFee",
13385
14124
  type: {
13386
14125
  kind: "struct",
13387
14126
  fields: [
@@ -13389,22 +14128,6 @@ var types = [
13389
14128
  name: "pool",
13390
14129
  type: "pubkey"
13391
14130
  },
13392
- {
13393
- name: "position",
13394
- type: "pubkey"
13395
- },
13396
- {
13397
- name: "owner",
13398
- type: "pubkey"
13399
- },
13400
- {
13401
- name: "params",
13402
- type: {
13403
- defined: {
13404
- name: "AddLiquidityParameters"
13405
- }
13406
- }
13407
- },
13408
14131
  {
13409
14132
  name: "token_a_amount",
13410
14133
  type: "u64"
@@ -13412,20 +14135,12 @@ var types = [
13412
14135
  {
13413
14136
  name: "token_b_amount",
13414
14137
  type: "u64"
13415
- },
13416
- {
13417
- name: "total_amount_a",
13418
- type: "u64"
13419
- },
13420
- {
13421
- name: "total_amount_b",
13422
- type: "u64"
13423
14138
  }
13424
14139
  ]
13425
14140
  }
13426
14141
  },
13427
14142
  {
13428
- name: "EvtClaimPartnerFee",
14143
+ name: "EvtClaimPositionFee",
13429
14144
  type: {
13430
14145
  kind: "struct",
13431
14146
  fields: [
@@ -13434,39 +14149,19 @@ var types = [
13434
14149
  type: "pubkey"
13435
14150
  },
13436
14151
  {
13437
- name: "token_a_amount",
14152
+ name: "position",
14153
+ type: "pubkey"
14154
+ },
14155
+ {
14156
+ name: "owner",
14157
+ type: "pubkey"
14158
+ },
14159
+ {
14160
+ name: "fee_a_claimed",
13438
14161
  type: "u64"
13439
14162
  },
13440
14163
  {
13441
- name: "token_b_amount",
13442
- type: "u64"
13443
- }
13444
- ]
13445
- }
13446
- },
13447
- {
13448
- name: "EvtClaimPositionFee",
13449
- type: {
13450
- kind: "struct",
13451
- fields: [
13452
- {
13453
- name: "pool",
13454
- type: "pubkey"
13455
- },
13456
- {
13457
- name: "position",
13458
- type: "pubkey"
13459
- },
13460
- {
13461
- name: "owner",
13462
- type: "pubkey"
13463
- },
13464
- {
13465
- name: "fee_a_claimed",
13466
- type: "u64"
13467
- },
13468
- {
13469
- name: "fee_b_claimed",
14164
+ name: "fee_b_claimed",
13470
14165
  type: "u64"
13471
14166
  }
13472
14167
  ]
@@ -13524,25 +14219,6 @@ var types = [
13524
14219
  ]
13525
14220
  }
13526
14221
  },
13527
- {
13528
- name: "EvtCloseClaimFeeOperator",
13529
- docs: [
13530
- "Close claim fee operator"
13531
- ],
13532
- type: {
13533
- kind: "struct",
13534
- fields: [
13535
- {
13536
- name: "claim_fee_operator",
13537
- type: "pubkey"
13538
- },
13539
- {
13540
- name: "operator",
13541
- type: "pubkey"
13542
- }
13543
- ]
13544
- }
13545
- },
13546
14222
  {
13547
14223
  name: "EvtCloseConfig",
13548
14224
  docs: [
@@ -13592,21 +14268,6 @@ var types = [
13592
14268
  ]
13593
14269
  }
13594
14270
  },
13595
- {
13596
- name: "EvtCreateClaimFeeOperator",
13597
- docs: [
13598
- "Create claim fee operator"
13599
- ],
13600
- type: {
13601
- kind: "struct",
13602
- fields: [
13603
- {
13604
- name: "operator",
13605
- type: "pubkey"
13606
- }
13607
- ]
13608
- }
13609
- },
13610
14271
  {
13611
14272
  name: "EvtCreateConfig",
13612
14273
  docs: [
@@ -14020,42 +14681,6 @@ var types = [
14020
14681
  ]
14021
14682
  }
14022
14683
  },
14023
- {
14024
- name: "EvtRemoveLiquidity",
14025
- type: {
14026
- kind: "struct",
14027
- fields: [
14028
- {
14029
- name: "pool",
14030
- type: "pubkey"
14031
- },
14032
- {
14033
- name: "position",
14034
- type: "pubkey"
14035
- },
14036
- {
14037
- name: "owner",
14038
- type: "pubkey"
14039
- },
14040
- {
14041
- name: "params",
14042
- type: {
14043
- defined: {
14044
- name: "RemoveLiquidityParameters"
14045
- }
14046
- }
14047
- },
14048
- {
14049
- name: "token_a_amount",
14050
- type: "u64"
14051
- },
14052
- {
14053
- name: "token_b_amount",
14054
- type: "u64"
14055
- }
14056
- ]
14057
- }
14058
- },
14059
14684
  {
14060
14685
  name: "EvtSetPoolStatus",
14061
14686
  type: {
@@ -14136,50 +14761,6 @@ var types = [
14136
14761
  ]
14137
14762
  }
14138
14763
  },
14139
- {
14140
- name: "EvtSwap",
14141
- type: {
14142
- kind: "struct",
14143
- fields: [
14144
- {
14145
- name: "pool",
14146
- type: "pubkey"
14147
- },
14148
- {
14149
- name: "trade_direction",
14150
- type: "u8"
14151
- },
14152
- {
14153
- name: "has_referral",
14154
- type: "bool"
14155
- },
14156
- {
14157
- name: "params",
14158
- type: {
14159
- defined: {
14160
- name: "SwapParameters"
14161
- }
14162
- }
14163
- },
14164
- {
14165
- name: "swap_result",
14166
- type: {
14167
- defined: {
14168
- name: "SwapResult"
14169
- }
14170
- }
14171
- },
14172
- {
14173
- name: "actual_amount_in",
14174
- type: "u64"
14175
- },
14176
- {
14177
- name: "current_timestamp",
14178
- type: "u64"
14179
- }
14180
- ]
14181
- }
14182
- },
14183
14764
  {
14184
14765
  name: "EvtSwap2",
14185
14766
  type: {
@@ -14244,6 +14825,30 @@ var types = [
14244
14825
  ]
14245
14826
  }
14246
14827
  },
14828
+ {
14829
+ name: "EvtUpdatePoolFees",
14830
+ type: {
14831
+ kind: "struct",
14832
+ fields: [
14833
+ {
14834
+ name: "pool",
14835
+ type: "pubkey"
14836
+ },
14837
+ {
14838
+ name: "operator",
14839
+ type: "pubkey"
14840
+ },
14841
+ {
14842
+ name: "params",
14843
+ type: {
14844
+ defined: {
14845
+ name: "UpdatePoolFeesParameters"
14846
+ }
14847
+ }
14848
+ }
14849
+ ]
14850
+ }
14851
+ },
14247
14852
  {
14248
14853
  name: "EvtUpdateRewardDuration",
14249
14854
  type: {
@@ -14298,124 +14903,284 @@ var types = [
14298
14903
  kind: "struct",
14299
14904
  fields: [
14300
14905
  {
14301
- name: "pool",
14302
- type: "pubkey"
14906
+ name: "pool",
14907
+ type: "pubkey"
14908
+ },
14909
+ {
14910
+ name: "reward_mint",
14911
+ type: "pubkey"
14912
+ },
14913
+ {
14914
+ name: "amount",
14915
+ type: "u64"
14916
+ }
14917
+ ]
14918
+ }
14919
+ },
14920
+ {
14921
+ name: "InitializeCustomizablePoolParameters",
14922
+ type: {
14923
+ kind: "struct",
14924
+ fields: [
14925
+ {
14926
+ name: "pool_fees",
14927
+ docs: [
14928
+ "pool fees"
14929
+ ],
14930
+ type: {
14931
+ defined: {
14932
+ name: "PoolFeeParameters"
14933
+ }
14934
+ }
14935
+ },
14936
+ {
14937
+ name: "sqrt_min_price",
14938
+ docs: [
14939
+ "sqrt min price"
14940
+ ],
14941
+ type: "u128"
14942
+ },
14943
+ {
14944
+ name: "sqrt_max_price",
14945
+ docs: [
14946
+ "sqrt max price"
14947
+ ],
14948
+ type: "u128"
14949
+ },
14950
+ {
14951
+ name: "has_alpha_vault",
14952
+ docs: [
14953
+ "has alpha vault"
14954
+ ],
14955
+ type: "bool"
14956
+ },
14957
+ {
14958
+ name: "liquidity",
14959
+ docs: [
14960
+ "initialize liquidity"
14961
+ ],
14962
+ type: "u128"
14963
+ },
14964
+ {
14965
+ name: "sqrt_price",
14966
+ docs: [
14967
+ "The init price of the pool as a sqrt(token_b/token_a) Q64.64 value. Market cap fee scheduler minimum price will be derived from this value"
14968
+ ],
14969
+ type: "u128"
14970
+ },
14971
+ {
14972
+ name: "activation_type",
14973
+ docs: [
14974
+ "activation type"
14975
+ ],
14976
+ type: "u8"
14977
+ },
14978
+ {
14979
+ name: "collect_fee_mode",
14980
+ docs: [
14981
+ "collect fee mode"
14982
+ ],
14983
+ type: "u8"
14984
+ },
14985
+ {
14986
+ name: "activation_point",
14987
+ docs: [
14988
+ "activation point"
14989
+ ],
14990
+ type: {
14991
+ option: "u64"
14992
+ }
14993
+ }
14994
+ ]
14995
+ }
14996
+ },
14997
+ {
14998
+ name: "InitializePoolParameters",
14999
+ type: {
15000
+ kind: "struct",
15001
+ fields: [
15002
+ {
15003
+ name: "liquidity",
15004
+ docs: [
15005
+ "initialize liquidity"
15006
+ ],
15007
+ type: "u128"
15008
+ },
15009
+ {
15010
+ name: "sqrt_price",
15011
+ docs: [
15012
+ "The init price of the pool as a sqrt(token_b/token_a) Q64.64 value"
15013
+ ],
15014
+ type: "u128"
15015
+ },
15016
+ {
15017
+ name: "activation_point",
15018
+ docs: [
15019
+ "activation point"
15020
+ ],
15021
+ type: {
15022
+ option: "u64"
15023
+ }
15024
+ }
15025
+ ]
15026
+ }
15027
+ },
15028
+ {
15029
+ name: "Operator",
15030
+ serialization: "bytemuck",
15031
+ repr: {
15032
+ kind: "c"
15033
+ },
15034
+ type: {
15035
+ kind: "struct",
15036
+ fields: [
15037
+ {
15038
+ name: "whitelisted_address",
15039
+ type: "pubkey"
15040
+ },
15041
+ {
15042
+ name: "permission",
15043
+ type: "u128"
15044
+ },
15045
+ {
15046
+ name: "padding",
15047
+ type: {
15048
+ array: [
15049
+ "u64",
15050
+ 2
15051
+ ]
15052
+ }
15053
+ }
15054
+ ]
15055
+ }
15056
+ },
15057
+ {
15058
+ name: "PodAlignedFeeMarketCapScheduler",
15059
+ serialization: "bytemuck",
15060
+ repr: {
15061
+ kind: "c"
15062
+ },
15063
+ type: {
15064
+ kind: "struct",
15065
+ fields: [
15066
+ {
15067
+ name: "cliff_fee_numerator",
15068
+ type: "u64"
15069
+ },
15070
+ {
15071
+ name: "base_fee_mode",
15072
+ type: "u8"
15073
+ },
15074
+ {
15075
+ name: "padding",
15076
+ type: {
15077
+ array: [
15078
+ "u8",
15079
+ 5
15080
+ ]
15081
+ }
15082
+ },
15083
+ {
15084
+ name: "number_of_period",
15085
+ type: "u16"
14303
15086
  },
14304
15087
  {
14305
- name: "reward_mint",
14306
- type: "pubkey"
15088
+ name: "sqrt_price_step_bps",
15089
+ type: "u32"
14307
15090
  },
14308
15091
  {
14309
- name: "amount",
15092
+ name: "scheduler_expiration_duration",
15093
+ type: "u32"
15094
+ },
15095
+ {
15096
+ name: "reduction_factor",
14310
15097
  type: "u64"
14311
15098
  }
14312
15099
  ]
14313
15100
  }
14314
15101
  },
14315
15102
  {
14316
- name: "InitializeCustomizablePoolParameters",
15103
+ name: "PodAlignedFeeRateLimiter",
15104
+ serialization: "bytemuck",
15105
+ repr: {
15106
+ kind: "c"
15107
+ },
14317
15108
  type: {
14318
15109
  kind: "struct",
14319
15110
  fields: [
14320
15111
  {
14321
- name: "pool_fees",
14322
- docs: [
14323
- "pool fees"
14324
- ],
14325
- type: {
14326
- defined: {
14327
- name: "PoolFeeParameters"
14328
- }
14329
- }
14330
- },
14331
- {
14332
- name: "sqrt_min_price",
14333
- docs: [
14334
- "sqrt min price"
14335
- ],
14336
- type: "u128"
14337
- },
14338
- {
14339
- name: "sqrt_max_price",
14340
- docs: [
14341
- "sqrt max price"
14342
- ],
14343
- type: "u128"
15112
+ name: "cliff_fee_numerator",
15113
+ type: "u64"
14344
15114
  },
14345
15115
  {
14346
- name: "has_alpha_vault",
14347
- docs: [
14348
- "has alpha vault"
14349
- ],
14350
- type: "bool"
15116
+ name: "base_fee_mode",
15117
+ type: "u8"
14351
15118
  },
14352
15119
  {
14353
- name: "liquidity",
14354
- docs: [
14355
- "initialize liquidity"
14356
- ],
14357
- type: "u128"
15120
+ name: "padding",
15121
+ type: {
15122
+ array: [
15123
+ "u8",
15124
+ 5
15125
+ ]
15126
+ }
14358
15127
  },
14359
15128
  {
14360
- name: "sqrt_price",
14361
- docs: [
14362
- "The init price of the pool as a sqrt(token_b/token_a) Q64.64 value"
14363
- ],
14364
- type: "u128"
15129
+ name: "fee_increment_bps",
15130
+ type: "u16"
14365
15131
  },
14366
15132
  {
14367
- name: "activation_type",
14368
- docs: [
14369
- "activation type"
14370
- ],
14371
- type: "u8"
15133
+ name: "max_limiter_duration",
15134
+ type: "u32"
14372
15135
  },
14373
15136
  {
14374
- name: "collect_fee_mode",
14375
- docs: [
14376
- "collect fee mode"
14377
- ],
14378
- type: "u8"
15137
+ name: "max_fee_bps",
15138
+ type: "u32"
14379
15139
  },
14380
15140
  {
14381
- name: "activation_point",
14382
- docs: [
14383
- "activation point"
14384
- ],
14385
- type: {
14386
- option: "u64"
14387
- }
15141
+ name: "reference_amount",
15142
+ type: "u64"
14388
15143
  }
14389
15144
  ]
14390
15145
  }
14391
15146
  },
14392
15147
  {
14393
- name: "InitializePoolParameters",
15148
+ name: "PodAlignedFeeTimeScheduler",
15149
+ serialization: "bytemuck",
15150
+ repr: {
15151
+ kind: "c"
15152
+ },
14394
15153
  type: {
14395
15154
  kind: "struct",
14396
15155
  fields: [
14397
15156
  {
14398
- name: "liquidity",
14399
- docs: [
14400
- "initialize liquidity"
14401
- ],
14402
- type: "u128"
15157
+ name: "cliff_fee_numerator",
15158
+ type: "u64"
14403
15159
  },
14404
15160
  {
14405
- name: "sqrt_price",
14406
- docs: [
14407
- "The init price of the pool as a sqrt(token_b/token_a) Q64.64 value"
14408
- ],
14409
- type: "u128"
15161
+ name: "base_fee_mode",
15162
+ type: "u8"
14410
15163
  },
14411
15164
  {
14412
- name: "activation_point",
14413
- docs: [
14414
- "activation point"
14415
- ],
15165
+ name: "padding",
14416
15166
  type: {
14417
- option: "u64"
15167
+ array: [
15168
+ "u8",
15169
+ 5
15170
+ ]
14418
15171
  }
15172
+ },
15173
+ {
15174
+ name: "number_of_period",
15175
+ type: "u16"
15176
+ },
15177
+ {
15178
+ name: "period_frequency",
15179
+ type: "u64"
15180
+ },
15181
+ {
15182
+ name: "reduction_factor",
15183
+ type: "u64"
14419
15184
  }
14420
15185
  ]
14421
15186
  }
@@ -14583,7 +15348,7 @@ var types = [
14583
15348
  {
14584
15349
  name: "collect_fee_mode",
14585
15350
  docs: [
14586
- "0 is collect fee in both token, 1 only collect fee in token a, 2 only collect fee in token b"
15351
+ "0 is collect fee in both token, 1 only collect fee only in token b"
14587
15352
  ],
14588
15353
  type: "u8"
14589
15354
  },
@@ -14704,18 +15469,6 @@ var types = [
14704
15469
  }
14705
15470
  }
14706
15471
  },
14707
- {
14708
- name: "padding",
14709
- docs: [
14710
- "padding"
14711
- ],
14712
- type: {
14713
- array: [
14714
- "u8",
14715
- 3
14716
- ]
14717
- }
14718
- },
14719
15472
  {
14720
15473
  name: "dynamic_fee",
14721
15474
  docs: [
@@ -14745,7 +15498,7 @@ var types = [
14745
15498
  name: "base_fee",
14746
15499
  type: {
14747
15500
  defined: {
14748
- name: "BaseFeeConfig"
15501
+ name: "BaseFeeInfo"
14749
15502
  }
14750
15503
  }
14751
15504
  },
@@ -14867,16 +15620,8 @@ var types = [
14867
15620
  }
14868
15621
  },
14869
15622
  {
14870
- name: "padding_1",
14871
- docs: [
14872
- "padding"
14873
- ],
14874
- type: {
14875
- array: [
14876
- "u64",
14877
- 2
14878
- ]
14879
- }
15623
+ name: "init_sqrt_price",
15624
+ type: "u128"
14880
15625
  }
14881
15626
  ]
14882
15627
  }
@@ -15456,41 +16201,6 @@ var types = [
15456
16201
  ]
15457
16202
  }
15458
16203
  },
15459
- {
15460
- name: "SwapResult",
15461
- docs: [
15462
- "Encodes all results of swapping"
15463
- ],
15464
- type: {
15465
- kind: "struct",
15466
- fields: [
15467
- {
15468
- name: "output_amount",
15469
- type: "u64"
15470
- },
15471
- {
15472
- name: "next_sqrt_price",
15473
- type: "u128"
15474
- },
15475
- {
15476
- name: "lp_fee",
15477
- type: "u64"
15478
- },
15479
- {
15480
- name: "protocol_fee",
15481
- type: "u64"
15482
- },
15483
- {
15484
- name: "partner_fee",
15485
- type: "u64"
15486
- },
15487
- {
15488
- name: "referral_fee",
15489
- type: "u64"
15490
- }
15491
- ]
15492
- }
15493
- },
15494
16204
  {
15495
16205
  name: "SwapResult2",
15496
16206
  type: {
@@ -15569,6 +16279,41 @@ var types = [
15569
16279
  ]
15570
16280
  }
15571
16281
  },
16282
+ {
16283
+ name: "UpdatePoolFeesParameters",
16284
+ type: {
16285
+ kind: "struct",
16286
+ fields: [
16287
+ {
16288
+ name: "cliff_fee_numerator",
16289
+ docs: [
16290
+ "Base fee update mode:",
16291
+ "- None: skip base fee update",
16292
+ "- Some: update new cliff_fee_numerator if base fee is static"
16293
+ ],
16294
+ type: {
16295
+ option: "u64"
16296
+ }
16297
+ },
16298
+ {
16299
+ name: "dynamic_fee",
16300
+ docs: [
16301
+ "Dynamic fee update mode:",
16302
+ "- None: skip dynamic fee update",
16303
+ "- Some(with default value): disable dynamic fee",
16304
+ "- Some(with non default value): enable dynamic fee if disabled or update dynamic fee if enabled"
16305
+ ],
16306
+ type: {
16307
+ option: {
16308
+ defined: {
16309
+ name: "DynamicFeeParameters"
16310
+ }
16311
+ }
16312
+ }
16313
+ }
16314
+ ]
16315
+ }
16316
+ },
15572
16317
  {
15573
16318
  name: "UserRewardInfo",
15574
16319
  serialization: "bytemuck",
@@ -15696,6 +16441,94 @@ var types = [
15696
16441
  }
15697
16442
  }
15698
16443
  ];
16444
+ var constants = [
16445
+ {
16446
+ name: "BIN_STEP_BPS_DEFAULT",
16447
+ type: "u16",
16448
+ value: "1"
16449
+ },
16450
+ {
16451
+ name: "BIN_STEP_U128_DEFAULT_LE_BYTES",
16452
+ type: {
16453
+ array: [
16454
+ "u8",
16455
+ 16
16456
+ ]
16457
+ },
16458
+ value: "[203, 16, 199, 186, 184, 141, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0]"
16459
+ },
16460
+ {
16461
+ name: "CUSTOMIZABLE_POOL_PREFIX",
16462
+ type: "bytes",
16463
+ value: "[99, 112, 111, 111, 108]"
16464
+ },
16465
+ {
16466
+ name: "FEE_DENOMINATOR",
16467
+ docs: [
16468
+ "Default fee denominator. DO NOT simply update it as it will break logic that depends on it as default value."
16469
+ ],
16470
+ type: "u64",
16471
+ value: "1000000000"
16472
+ },
16473
+ {
16474
+ name: "MAX_BASIS_POINT",
16475
+ docs: [
16476
+ "Max basis point. 100% in pct"
16477
+ ],
16478
+ type: "u64",
16479
+ value: "10000"
16480
+ },
16481
+ {
16482
+ name: "MAX_SQRT_PRICE_LE_BYTES",
16483
+ type: {
16484
+ array: [
16485
+ "u8",
16486
+ 16
16487
+ ]
16488
+ },
16489
+ value: "[155, 87, 105, 78, 169, 26, 92, 132, 177, 196, 254, 255, 0, 0, 0, 0]"
16490
+ },
16491
+ {
16492
+ name: "MIN_SQRT_PRICE_LE_BYTES",
16493
+ type: {
16494
+ array: [
16495
+ "u8",
16496
+ 16
16497
+ ]
16498
+ },
16499
+ value: "[80, 59, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]"
16500
+ },
16501
+ {
16502
+ name: "POOL_AUTHORITY_PREFIX",
16503
+ type: "bytes",
16504
+ value: "[112, 111, 111, 108, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121]"
16505
+ },
16506
+ {
16507
+ name: "POOL_PREFIX",
16508
+ type: "bytes",
16509
+ value: "[112, 111, 111, 108]"
16510
+ },
16511
+ {
16512
+ name: "POSITION_NFT_ACCOUNT_PREFIX",
16513
+ type: "bytes",
16514
+ value: "[112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, 97, 99, 99, 111, 117, 110, 116]"
16515
+ },
16516
+ {
16517
+ name: "POSITION_PREFIX",
16518
+ type: "bytes",
16519
+ value: "[112, 111, 115, 105, 116, 105, 111, 110]"
16520
+ },
16521
+ {
16522
+ name: "SPLIT_POSITION_DENOMINATOR",
16523
+ type: "u32",
16524
+ value: "1000000000"
16525
+ },
16526
+ {
16527
+ name: "TOKEN_VAULT_PREFIX",
16528
+ type: "bytes",
16529
+ value: "[116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116]"
16530
+ }
16531
+ ];
15699
16532
  var cp_amm = {
15700
16533
  address: address,
15701
16534
  metadata: metadata,
@@ -15703,7 +16536,8 @@ var cp_amm = {
15703
16536
  accounts: accounts,
15704
16537
  events: events,
15705
16538
  errors: errors,
15706
- types: types
16539
+ types: types,
16540
+ constants: constants
15707
16541
  };
15708
16542
 
15709
- export { ActivationPoint, ActivationType, type AddLiquidityParams, type AmmProgram, BASIS_POINT_MAX, BIN_STEP_BPS_DEFAULT, BIN_STEP_BPS_U128_DEFAULT, type BaseFee, type BaseFeeHandler, BaseFeeMode, type BuildAddLiquidityParams, type BuildLiquidatePositionInstructionParams, type BuildRemoveAllLiquidityInstructionParams, CP_AMM_PROGRAM_ID, CURRENT_POOL_VERSION, type ClaimPartnerFeeParams, type ClaimPositionFeeInstructionParams, type ClaimPositionFeeParams, type ClaimPositionFeeParams2, type ClaimRewardParams, type ClosePositionInstructionParams, type ClosePositionParams, CollectFeeMode, type ConfigState, CpAmm, cp_amm as CpAmmIdl, type CpAmm$1 as CpAmmTypes, type CreatePoolParams, type CreatePositionAndAddLiquidity, type CreatePositionParams, DYNAMIC_FEE_DECAY_PERIOD_DEFAULT, DYNAMIC_FEE_FILTER_PERIOD_DEFAULT, DYNAMIC_FEE_REDUCTION_FACTOR_DEFAULT, DYNAMIC_FEE_ROUNDING_OFFSET, DYNAMIC_FEE_SCALING_FACTOR, type DepositQuote, type DynamicFee, type DynamicFeeParams, type DynamicFeeStruct, FEE_DENOMINATOR, type FeeMode, type FeeOnAmountResult, FeeRateLimiter, FeeScheduler, type FundRewardParams, type GetDepositQuoteParams, type GetQuote2Params, type GetQuoteParams, type GetWithdrawQuoteParams, type InitializeAndFundReward, type InitializeCustomizeablePoolParams, type InitializeCustomizeablePoolWithDynamicConfigParams, type InitializeRewardParams, LIQUIDITY_SCALE, type LiquidityDeltaParams, type LockPositionParams, MAX, MAX_CU_BUFFER, MAX_EXPONENTIAL, MAX_FEE_BPS_V0, MAX_FEE_BPS_V1, MAX_FEE_NUMERATOR_V0, MAX_FEE_NUMERATOR_V1, MAX_PRICE_CHANGE_BPS_DEFAULT, MAX_RATE_LIMITER_DURATION_IN_SECONDS, MAX_RATE_LIMITER_DURATION_IN_SLOTS, MAX_SQRT_PRICE, MIN_CU_BUFFER, MIN_FEE_BPS, MIN_FEE_NUMERATOR, MIN_SQRT_PRICE, type MergePositionParams, ONE_Q64, type PermanentLockParams, type PoolFeesParams, type PoolFeesStruct, type PoolState, PoolStatus, PoolVersion, type PositionState, type PrepareCustomizablePoolParams, type PreparePoolCreationParams, type PreparePoolCreationSingleSide, type PrepareTokenAccountParams, type PreparedPoolCreation, type Quote2Result, type RefreshVestingParams, type RemoveAllLiquidityAndClosePositionParams, type RemoveAllLiquidityParams, type RemoveLiquidityParams, type RewardInfo, Rounding, SCALE_OFFSET, SPLIT_POSITION_DENOMINATOR, type SetupFeeClaimAccountsParams, type SplitFees, type SplitPosition2Params, type SplitPositionParams, type Swap2Params, type SwapAmount, SwapMode, type SwapParams, type SwapResult, type SwapResult2, type TokenBadgeState, TradeDirection, type TxBuilder, U128_MAX, U16_MAX, U64_MAX, type UpdateRewardDurationParams, type UpdateRewardFunderParams, type UserRewardInfo, type VestingState, type WithdrawIneligibleRewardParams, type WithdrawQuote, bpsToFeeNumerator, calculateAtoBFromAmountIn, calculateAtoBFromAmountOut, calculateAtoBFromPartialAmountIn, calculateBtoAFromAmountIn, calculateBtoAFromAmountOut, calculateBtoAFromPartialAmountIn, calculateInitSqrtPrice, calculateTransferFeeExcludedAmount, calculateTransferFeeIncludedAmount, convertToFeeSchedulerSecondFactor, convertToLamports, convertToRateLimiterSecondFactor, decimalToQ64, deriveClaimFeeOperatorAddress, deriveConfigAddress, deriveCustomizablePoolAddress, derivePoolAddress, derivePoolAuthority, derivePositionAddress, derivePositionNftAccount, deriveRewardVaultAddress, deriveTokenBadgeAddress, deriveTokenVaultAddress, feeNumeratorToBps, fromDecimalToBN, getAllPositionNftAccountByOwner, getAllUserPositionNftAccount, getAmountAFromLiquidityDelta, getAmountBFromLiquidityDelta, getAmountWithSlippage, getAvailableVestingLiquidity, getBaseFeeHandler, getBaseFeeNumerator, getBaseFeeNumeratorByPeriod, getBaseFeeParams, getCheckedAmounts, getCurrentPoint, getDynamicFeeNumerator, getDynamicFeeParams, getEstimatedComputeUnitIxWithBuffer, getEstimatedComputeUnitUsageWithBuffer, getExcludedFeeAmount, getExcludedFeeAmountFromIncludedFeeAmount, getFeeInPeriod, getFeeMode, getFeeNumeratorFromExcludedFeeAmount, getFeeNumeratorFromIncludedFeeAmount, getFeeNumeratorOnExponentialFeeScheduler, getFeeNumeratorOnLinearFeeScheduler, getFeeOnAmount, getFeeSchedulerParams, getFirstKey, getIncludedFeeAmount, getLiquidityDeltaFromAmountA, getLiquidityDeltaFromAmountB, getMaxAmountWithSlippage, getMaxBaseFeeNumerator, getMaxFeeBps, getMaxFeeNumerator, getMaxIndex, getMinBaseFeeNumerator, getNextSqrtPriceFromAmountInARoundingUp, getNextSqrtPriceFromAmountInBRoundingDown, getNextSqrtPriceFromAmountOutARoundingUp, getNextSqrtPriceFromAmountOutBRoundingDown, getNextSqrtPriceFromInput, getNextSqrtPriceFromOutput, getOrCreateATAInstruction, getPriceChange, getPriceFromSqrtPrice, getPriceImpact, getRateLimiterParams, getRewardInfo, getSecondKey, getSimulationComputeUnits, getSqrtPriceFromPrice, getSwapResultFromExactInput, getSwapResultFromExactOutput, getSwapResultFromPartialInput, getTokenDecimals, getTokenProgram, getTotalFeeNumerator, getTotalLockedLiquidity, getTotalTradingFeeFromExcludedFeeAmount, getTotalTradingFeeFromIncludedFeeAmount, getUnClaimLpFee, getUserRewardPending, hasPartner, isDynamicFeeEnabled, isNonZeroRateLimiter, isRateLimiterApplied, isSwapEnabled, isVestingComplete, isZeroRateLimiter, mulDiv, offsetBasedFilter, parseFeeSchedulerSecondFactor, parseRateLimiterSecondFactor, positionByPoolFilter, pow, q64ToDecimal, splitFees, sqrt, swapQuoteExactInput, swapQuoteExactOutput, swapQuotePartialInput, toNumerator, unwrapSOLInstruction, validateFeeFraction, validateFeeRateLimiter, validateFeeScheduler, vestingByPositionFilter, wrapSOLInstruction };
16543
+ export { ActivationPoint, ActivationType, type AddLiquidityParams, type AmmProgram, BASIS_POINT_MAX, BIN_STEP_BPS_DEFAULT, BIN_STEP_BPS_U128_DEFAULT, type BaseFee, type BaseFeeHandler, BaseFeeMode, type BorshFeeMarketCapScheduler, type BorshFeeRateLimiter, type BorshFeeTimeScheduler, type BuildAddLiquidityParams, type BuildLiquidatePositionInstructionParams, type BuildRemoveAllLiquidityInstructionParams, CP_AMM_PROGRAM_ID, CURRENT_POOL_VERSION, type ClaimPartnerFeeParams, type ClaimPositionFeeInstructionParams, type ClaimPositionFeeParams, type ClaimPositionFeeParams2, type ClaimRewardParams, type ClosePositionInstructionParams, type ClosePositionParams, CollectFeeMode, type ConfigState, CpAmm, cp_amm as CpAmmIdl, type CpAmm$1 as CpAmmTypes, type CreatePoolParams, type CreatePositionAndAddLiquidity, type CreatePositionParams, DYNAMIC_FEE_DECAY_PERIOD_DEFAULT, DYNAMIC_FEE_FILTER_PERIOD_DEFAULT, DYNAMIC_FEE_REDUCTION_FACTOR_DEFAULT, DYNAMIC_FEE_ROUNDING_OFFSET, DYNAMIC_FEE_SCALING_FACTOR, type DecodedPoolFees, type DepositQuote, type DynamicFee, type DynamicFeeParams, type DynamicFeeStruct, FEE_DENOMINATOR, FEE_PADDING, FeeMarketCapScheduler, type FeeMode, type FeeOnAmountResult, FeeRateLimiter, FeeTimeScheduler, type FundRewardParams, type GetDepositQuoteParams, type GetQuote2Params, type GetQuoteParams, type GetWithdrawQuoteParams, type InitializeAndFundReward, type InitializeCustomizeablePoolParams, type InitializeCustomizeablePoolWithDynamicConfigParams, type InitializeRewardParams, LIQUIDITY_SCALE, type LiquidityDeltaParams, type LockPositionParams, MAX, MAX_CU_BUFFER, MAX_EXPONENTIAL, MAX_FEE_BPS_V0, MAX_FEE_BPS_V1, MAX_FEE_NUMERATOR_V0, MAX_FEE_NUMERATOR_V1, MAX_PRICE_CHANGE_BPS_DEFAULT, MAX_RATE_LIMITER_DURATION_IN_SECONDS, MAX_RATE_LIMITER_DURATION_IN_SLOTS, MAX_SQRT_PRICE, MIN_CU_BUFFER, MIN_FEE_BPS, MIN_FEE_NUMERATOR, MIN_SQRT_PRICE, type MergePositionParams, ONE_Q64, type PermanentLockParams, type PodAlignedFeeMarketCapScheduler, type PodAlignedFeeRateLimiter, type PodAlignedFeeTimeScheduler, type PoolFeesParams, type PoolFeesStruct, type PoolState, PoolStatus, PoolVersion, type PositionState, type PrepareCustomizablePoolParams, type PreparePoolCreationParams, type PreparePoolCreationSingleSide, type PrepareTokenAccountParams, type PreparedPoolCreation, type Quote2Result, type RefreshVestingParams, type RemoveAllLiquidityAndClosePositionParams, type RemoveAllLiquidityParams, type RemoveLiquidityParams, type RewardInfo, Rounding, SCALE_OFFSET, SPLIT_POSITION_DENOMINATOR, type SetupFeeClaimAccountsParams, type SplitFees, type SplitPosition2Params, type SplitPositionParams, type Swap2Params, type SwapAmount, SwapMode, type SwapParams, type SwapResult2, type TokenBadgeState, TradeDirection, type TransferHookState, type TxBuilder, U128_MAX, U16_MAX, U64_MAX, type UpdateRewardDurationParams, type UpdateRewardFunderParams, type UserRewardInfo, type VestingState, type WithdrawIneligibleRewardParams, type WithdrawQuote, bpsToFeeNumerator, calculateAtoBFromAmountIn, calculateAtoBFromAmountOut, calculateAtoBFromPartialAmountIn, calculateBtoAFromAmountIn, calculateBtoAFromAmountOut, calculateBtoAFromPartialAmountIn, calculateInitSqrtPrice, calculateTransferFeeExcludedAmount, calculateTransferFeeIncludedAmount, convertToFeeSchedulerSecondFactor, convertToLamports, convertToRateLimiterSecondFactor, cpAmmCoder, decimalToQ64, decodeFeeMarketCapSchedulerParams, decodeFeeRateLimiterParams, decodeFeeTimeSchedulerParams, decodePodAlignedFeeMarketCapScheduler, decodePodAlignedFeeRateLimiter, decodePodAlignedFeeTimeScheduler, deriveClaimFeeOperatorAddress, deriveConfigAddress, deriveCustomizablePoolAddress, deriveOperatorAddress, derivePoolAddress, derivePoolAuthority, derivePositionAddress, derivePositionNftAccount, deriveRewardVaultAddress, deriveTokenBadgeAddress, deriveTokenVaultAddress, encodeFeeMarketCapSchedulerParams, encodeFeeRateLimiterParams, encodeFeeTimeSchedulerParams, feeNumeratorToBps, fromDecimalToBN, getAllPositionNftAccountByOwner, getAllUserPositionNftAccount, getAmountAFromLiquidityDelta, getAmountBFromLiquidityDelta, getAmountWithSlippage, getAvailableVestingLiquidity, getBaseFeeHandler, getBaseFeeParams, getCheckedAmounts, getCurrentPoint, getDynamicFeeNumerator, getDynamicFeeParams, getEstimatedComputeUnitIxWithBuffer, getEstimatedComputeUnitUsageWithBuffer, getExcludedFeeAmount, getExcludedFeeAmountFromIncludedFeeAmount, getFeeInPeriod, getFeeMarketCapBaseFeeNumerator, getFeeMarketCapBaseFeeNumeratorByPeriod, getFeeMarketCapMinBaseFeeNumerator, getFeeMarketCapSchedulerParams, getFeeMode, getFeeNumeratorFromExcludedFeeAmount, getFeeNumeratorFromIncludedFeeAmount, getFeeNumeratorOnExponentialFeeScheduler, getFeeNumeratorOnLinearFeeScheduler, getFeeOnAmount, getFeeTimeBaseFeeNumerator, getFeeTimeBaseFeeNumeratorByPeriod, getFeeTimeMinBaseFeeNumerator, getFeeTimeSchedulerParams, getFirstKey, getIncludedFeeAmount, getLiquidityDeltaFromAmountA, getLiquidityDeltaFromAmountB, getMaxAmountWithSlippage, getMaxBaseFeeNumerator, getMaxFeeBps, getMaxFeeNumerator, getMaxIndex, getNextSqrtPriceFromAmountInARoundingUp, getNextSqrtPriceFromAmountInBRoundingDown, getNextSqrtPriceFromAmountOutARoundingUp, getNextSqrtPriceFromAmountOutBRoundingDown, getNextSqrtPriceFromInput, getNextSqrtPriceFromOutput, getOrCreateATAInstruction, getPriceChange, getPriceFromSqrtPrice, getPriceImpact, getRateLimiterParams, getRewardInfo, getSecondKey, getSimulationComputeUnits, getSqrtPriceFromPrice, getSwapResultFromExactInput, getSwapResultFromExactOutput, getSwapResultFromPartialInput, getTokenDecimals, getTokenProgram, getTotalFeeNumerator, getTotalLockedLiquidity, getTotalTradingFeeFromExcludedFeeAmount, getTotalTradingFeeFromIncludedFeeAmount, getUnClaimLpFee, getUserRewardPending, hasPartner, hasTransferHookExtension, isDynamicFeeEnabled, isNonZeroRateLimiter, isRateLimiterApplied, isSwapEnabled, isVestingComplete, isZeroRateLimiter, mulDiv, offsetBasedFilter, parseFeeSchedulerSecondFactor, parseRateLimiterSecondFactor, positionByPoolFilter, pow, q64ToDecimal, splitFees, sqrt, swapQuoteExactInput, swapQuoteExactOutput, swapQuotePartialInput, toNumerator, unwrapSOLInstruction, validateFeeFraction, validateFeeMarketCapBaseFeeIsStatic, validateFeeMarketCapScheduler, validateFeeRateLimiter, validateFeeRateLimiterBaseFeeIsStatic, validateFeeTimeScheduler, validateFeeTimeSchedulerBaseFeeIsStatic, validateNoTransferHook, vestingByPositionFilter, wrapSOLInstruction };