@liquid-af/sdk 0.4.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/client.d.ts +7 -2
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +10 -3
  4. package/dist/client.js.map +1 -1
  5. package/dist/events/parser.d.ts +8 -3
  6. package/dist/events/parser.d.ts.map +1 -1
  7. package/dist/events/parser.js +72 -17
  8. package/dist/events/parser.js.map +1 -1
  9. package/dist/idl/index.d.ts +12 -1
  10. package/dist/idl/index.d.ts.map +1 -1
  11. package/dist/idl/index.js +12 -1
  12. package/dist/idl/index.js.map +1 -1
  13. package/dist/idl/liquid.d.ts +7116 -2254
  14. package/dist/idl/liquid.d.ts.map +1 -1
  15. package/dist/idl/liquid.json +7200 -2338
  16. package/dist/idl/liquid_events.d.ts +3118 -0
  17. package/dist/idl/liquid_events.d.ts.map +1 -0
  18. package/dist/idl/liquid_events.js +2 -0
  19. package/dist/idl/liquid_events.js.map +1 -0
  20. package/dist/idl/liquid_events.json +3111 -0
  21. package/dist/idl/liquid_fees.d.ts +539 -0
  22. package/dist/idl/liquid_fees.d.ts.map +1 -1
  23. package/dist/idl/liquid_fees.json +539 -0
  24. package/dist/idl/liquid_state.d.ts +350 -0
  25. package/dist/idl/liquid_state.d.ts.map +1 -1
  26. package/dist/idl/liquid_state.json +350 -0
  27. package/dist/idl/liquid_swap.d.ts +1334 -17
  28. package/dist/idl/liquid_swap.d.ts.map +1 -1
  29. package/dist/idl/liquid_swap.json +1334 -17
  30. package/dist/index.d.ts +2 -2
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +1 -1
  33. package/dist/index.js.map +1 -1
  34. package/dist/instructions/index.d.ts +4 -4
  35. package/dist/instructions/index.d.ts.map +1 -1
  36. package/dist/instructions/index.js +2 -2
  37. package/dist/instructions/index.js.map +1 -1
  38. package/dist/instructions/liquid-fees.d.ts +12 -0
  39. package/dist/instructions/liquid-fees.d.ts.map +1 -1
  40. package/dist/instructions/liquid-fees.js +17 -0
  41. package/dist/instructions/liquid-fees.js.map +1 -1
  42. package/dist/instructions/liquid.d.ts +15 -1
  43. package/dist/instructions/liquid.d.ts.map +1 -1
  44. package/dist/instructions/liquid.js +32 -2
  45. package/dist/instructions/liquid.js.map +1 -1
  46. package/dist/pda/index.d.ts +2 -2
  47. package/dist/pda/index.d.ts.map +1 -1
  48. package/dist/pda/index.js +2 -2
  49. package/dist/pda/index.js.map +1 -1
  50. package/dist/pda/liquid-fees.d.ts +7 -0
  51. package/dist/pda/liquid-fees.d.ts.map +1 -1
  52. package/dist/pda/liquid-fees.js +10 -0
  53. package/dist/pda/liquid-fees.js.map +1 -1
  54. package/dist/pda/liquid.d.ts +10 -3
  55. package/dist/pda/liquid.d.ts.map +1 -1
  56. package/dist/pda/liquid.js +14 -5
  57. package/dist/pda/liquid.js.map +1 -1
  58. package/package.json +1 -1
  59. package/src/client.ts +14 -2
  60. package/src/events/parser.ts +88 -19
  61. package/src/idl/index.ts +26 -1
  62. package/src/idl/liquid.json +7200 -2338
  63. package/src/idl/liquid.ts +7200 -2338
  64. package/src/idl/liquid_events.json +3111 -0
  65. package/src/idl/liquid_events.ts +3117 -0
  66. package/src/idl/liquid_fees.json +539 -0
  67. package/src/idl/liquid_fees.ts +539 -0
  68. package/src/idl/liquid_state.json +350 -0
  69. package/src/idl/liquid_state.ts +350 -0
  70. package/src/idl/liquid_swap.json +1334 -17
  71. package/src/idl/liquid_swap.ts +1334 -17
  72. package/src/index.ts +3 -0
  73. package/src/instructions/index.ts +4 -0
  74. package/src/instructions/liquid-fees.ts +26 -0
  75. package/src/instructions/liquid.ts +70 -1
  76. package/src/pda/index.ts +2 -0
  77. package/src/pda/liquid-fees.ts +13 -0
  78. package/src/pda/liquid.ts +21 -9
@@ -905,6 +905,71 @@ export type LiquidSwap = {
905
905
  "liquid-state program for unified state management."
906
906
  ];
907
907
  "address": "State3HtEfi7cXdsTpAtRoBvrij8zSFCiGTAVWmYH2d";
908
+ },
909
+ {
910
+ "name": "stateEventsCpiAuthority";
911
+ "docs": [
912
+ "CPI authority PDA owned by liquid-state for emitting events via liquid-events."
913
+ ];
914
+ "pda": {
915
+ "seeds": [
916
+ {
917
+ "kind": "const";
918
+ "value": [
919
+ 99,
920
+ 112,
921
+ 105,
922
+ 95,
923
+ 97,
924
+ 117,
925
+ 116,
926
+ 104,
927
+ 111,
928
+ 114,
929
+ 105,
930
+ 116,
931
+ 121
932
+ ];
933
+ }
934
+ ];
935
+ "program": {
936
+ "kind": "const";
937
+ "value": [
938
+ 6,
939
+ 161,
940
+ 216,
941
+ 199,
942
+ 206,
943
+ 40,
944
+ 40,
945
+ 163,
946
+ 177,
947
+ 19,
948
+ 1,
949
+ 21,
950
+ 164,
951
+ 67,
952
+ 81,
953
+ 132,
954
+ 164,
955
+ 22,
956
+ 81,
957
+ 177,
958
+ 201,
959
+ 45,
960
+ 170,
961
+ 138,
962
+ 70,
963
+ 214,
964
+ 218,
965
+ 76,
966
+ 85,
967
+ 222,
968
+ 216,
969
+ 214
970
+ ];
971
+ };
972
+ };
908
973
  }
909
974
  ];
910
975
  },
@@ -960,6 +1025,13 @@ export type LiquidSwap = {
960
1025
  ];
961
1026
  };
962
1027
  },
1028
+ {
1029
+ "name": "liquidEventsProgram";
1030
+ "docs": [
1031
+ "Liquid events program for CPI event emission."
1032
+ ];
1033
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
1034
+ },
963
1035
  {
964
1036
  "name": "oraclePriceFeed";
965
1037
  "docs": [
@@ -1705,6 +1777,13 @@ export type LiquidSwap = {
1705
1777
  ];
1706
1778
  "address": "FeesZQLb1xTeZbvaFRGnqzrZYzzmQtwhTYKQphbNGQru";
1707
1779
  },
1780
+ {
1781
+ "name": "liquidEventsProgram";
1782
+ "docs": [
1783
+ "Liquid events program for CPI event emission."
1784
+ ];
1785
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
1786
+ },
1708
1787
  {
1709
1788
  "name": "tokenProgram";
1710
1789
  "docs": [
@@ -1912,6 +1991,41 @@ export type LiquidSwap = {
1912
1991
  "The mint of quote vault."
1913
1992
  ];
1914
1993
  },
1994
+ {
1995
+ "name": "cpiAuthority";
1996
+ "docs": [
1997
+ "CPI authority PDA — proves this program's identity in cross-program calls."
1998
+ ];
1999
+ "pda": {
2000
+ "seeds": [
2001
+ {
2002
+ "kind": "const";
2003
+ "value": [
2004
+ 99,
2005
+ 112,
2006
+ 105,
2007
+ 95,
2008
+ 97,
2009
+ 117,
2010
+ 116,
2011
+ 104,
2012
+ 111,
2013
+ 114,
2014
+ 105,
2015
+ 116,
2016
+ 121
2017
+ ];
2018
+ }
2019
+ ];
2020
+ };
2021
+ },
2022
+ {
2023
+ "name": "liquidEventsProgram";
2024
+ "docs": [
2025
+ "Liquid events program for CPI event emission."
2026
+ ];
2027
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
2028
+ },
1915
2029
  {
1916
2030
  "name": "tokenProgram";
1917
2031
  "docs": [
@@ -2281,6 +2395,41 @@ export type LiquidSwap = {
2281
2395
  };
2282
2396
  };
2283
2397
  },
2398
+ {
2399
+ "name": "cpiAuthority";
2400
+ "docs": [
2401
+ "CPI authority PDA — proves this program's identity in cross-program calls."
2402
+ ];
2403
+ "pda": {
2404
+ "seeds": [
2405
+ {
2406
+ "kind": "const";
2407
+ "value": [
2408
+ 99,
2409
+ 112,
2410
+ 105,
2411
+ 95,
2412
+ 97,
2413
+ 117,
2414
+ 116,
2415
+ 104,
2416
+ 111,
2417
+ 114,
2418
+ 105,
2419
+ 116,
2420
+ 121
2421
+ ];
2422
+ }
2423
+ ];
2424
+ };
2425
+ },
2426
+ {
2427
+ "name": "liquidEventsProgram";
2428
+ "docs": [
2429
+ "Liquid events program for CPI event emission."
2430
+ ];
2431
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
2432
+ },
2284
2433
  {
2285
2434
  "name": "baseTokenProgram";
2286
2435
  "docs": [
@@ -2997,6 +3146,41 @@ export type LiquidSwap = {
2997
3146
  }
2998
3147
  ];
2999
3148
  };
3149
+ },
3150
+ {
3151
+ "name": "cpiAuthority";
3152
+ "docs": [
3153
+ "CPI authority PDA — proves this program's identity in cross-program calls."
3154
+ ];
3155
+ "pda": {
3156
+ "seeds": [
3157
+ {
3158
+ "kind": "const";
3159
+ "value": [
3160
+ 99,
3161
+ 112,
3162
+ 105,
3163
+ 95,
3164
+ 97,
3165
+ 117,
3166
+ 116,
3167
+ 104,
3168
+ 111,
3169
+ 114,
3170
+ 105,
3171
+ 116,
3172
+ 121
3173
+ ];
3174
+ }
3175
+ ];
3176
+ };
3177
+ },
3178
+ {
3179
+ "name": "liquidEventsProgram";
3180
+ "docs": [
3181
+ "Liquid events program for CPI event emission."
3182
+ ];
3183
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
3000
3184
  }
3001
3185
  ];
3002
3186
  "args": [];
@@ -3840,6 +4024,71 @@ export type LiquidSwap = {
3840
4024
  "liquid-state program for unified state management."
3841
4025
  ];
3842
4026
  "address": "State3HtEfi7cXdsTpAtRoBvrij8zSFCiGTAVWmYH2d";
4027
+ },
4028
+ {
4029
+ "name": "stateEventsCpiAuthority";
4030
+ "docs": [
4031
+ "CPI authority PDA owned by liquid-state for emitting events via liquid-events."
4032
+ ];
4033
+ "pda": {
4034
+ "seeds": [
4035
+ {
4036
+ "kind": "const";
4037
+ "value": [
4038
+ 99,
4039
+ 112,
4040
+ 105,
4041
+ 95,
4042
+ 97,
4043
+ 117,
4044
+ 116,
4045
+ 104,
4046
+ 111,
4047
+ 114,
4048
+ 105,
4049
+ 116,
4050
+ 121
4051
+ ];
4052
+ }
4053
+ ];
4054
+ "program": {
4055
+ "kind": "const";
4056
+ "value": [
4057
+ 6,
4058
+ 161,
4059
+ 216,
4060
+ 199,
4061
+ 206,
4062
+ 40,
4063
+ 40,
4064
+ 163,
4065
+ 177,
4066
+ 19,
4067
+ 1,
4068
+ 21,
4069
+ 164,
4070
+ 67,
4071
+ 81,
4072
+ 132,
4073
+ 164,
4074
+ 22,
4075
+ 81,
4076
+ 177,
4077
+ 201,
4078
+ 45,
4079
+ 170,
4080
+ 138,
4081
+ 70,
4082
+ 214,
4083
+ 218,
4084
+ 76,
4085
+ 85,
4086
+ 222,
4087
+ 216,
4088
+ 214
4089
+ ];
4090
+ };
4091
+ };
3843
4092
  }
3844
4093
  ];
3845
4094
  },
@@ -3901,6 +4150,13 @@ export type LiquidSwap = {
3901
4150
  ];
3902
4151
  };
3903
4152
  },
4153
+ {
4154
+ "name": "liquidEventsProgram";
4155
+ "docs": [
4156
+ "Liquid events program for CPI event emission."
4157
+ ];
4158
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
4159
+ },
3904
4160
  {
3905
4161
  "name": "oraclePriceFeed";
3906
4162
  "docs": [
@@ -3921,36 +4177,37 @@ export type LiquidSwap = {
3921
4177
  ];
3922
4178
  },
3923
4179
  {
3924
- "name": "setFeeRecipients";
4180
+ "name": "sellExactOut";
3925
4181
  "docs": [
3926
- "Sets the protocol's fee recipients. Only callable by the admin.",
4182
+ "Sells base tokens to receive an exact amount of quote tokens.",
3927
4183
  "",
3928
4184
  "# Arguments",
3929
- "* `fee_recipients` - List of protocol fee recipients (must be exactly NUM_FEE_RECIPIENTS)."
4185
+ "* `max_amount_in` - Maximum base tokens willing to sell (slippage protection).",
4186
+ "* `exact_amount_out` - Exact net quote tokens to receive."
3930
4187
  ];
3931
4188
  "discriminator": [
3932
- 49,
3933
- 149,
3934
- 195,
3935
- 192,
3936
- 109,
3937
- 40,
3938
- 213,
3939
- 123
4189
+ 95,
4190
+ 200,
4191
+ 71,
4192
+ 34,
4193
+ 8,
4194
+ 9,
4195
+ 11,
4196
+ 166
3940
4197
  ];
3941
4198
  "accounts": [
3942
4199
  {
3943
- "name": "admin";
4200
+ "name": "payer";
3944
4201
  "docs": [
3945
- "The admin authorized to update the global config."
4202
+ "The user performing the swap."
3946
4203
  ];
3947
4204
  "writable": true;
3948
4205
  "signer": true;
3949
4206
  },
3950
4207
  {
3951
- "name": "globalConfig";
4208
+ "name": "pool";
3952
4209
  "docs": [
3953
- "Global configuration account to be updated."
4210
+ "The program account of the pool in which the swap will be performed."
3954
4211
  ];
3955
4212
  "writable": true;
3956
4213
  "pda": {
@@ -3958,8 +4215,998 @@ export type LiquidSwap = {
3958
4215
  {
3959
4216
  "kind": "const";
3960
4217
  "value": [
3961
- 103,
3962
- 108,
4218
+ 112,
4219
+ 111,
4220
+ 111,
4221
+ 108
4222
+ ];
4223
+ },
4224
+ {
4225
+ "kind": "account";
4226
+ "path": "baseMint";
4227
+ },
4228
+ {
4229
+ "kind": "account";
4230
+ "path": "quoteMint";
4231
+ }
4232
+ ];
4233
+ };
4234
+ },
4235
+ {
4236
+ "name": "baseTokenAccount";
4237
+ "docs": [
4238
+ "The user token account for input token."
4239
+ ];
4240
+ "writable": true;
4241
+ },
4242
+ {
4243
+ "name": "quoteTokenAccount";
4244
+ "docs": [
4245
+ "The user token account for output token."
4246
+ ];
4247
+ "writable": true;
4248
+ },
4249
+ {
4250
+ "name": "baseVault";
4251
+ "docs": [
4252
+ "The vault token account for input token."
4253
+ ];
4254
+ "writable": true;
4255
+ "pda": {
4256
+ "seeds": [
4257
+ {
4258
+ "kind": "const";
4259
+ "value": [
4260
+ 112,
4261
+ 111,
4262
+ 111,
4263
+ 108,
4264
+ 95,
4265
+ 118,
4266
+ 97,
4267
+ 117,
4268
+ 108,
4269
+ 116
4270
+ ];
4271
+ },
4272
+ {
4273
+ "kind": "account";
4274
+ "path": "pool";
4275
+ },
4276
+ {
4277
+ "kind": "account";
4278
+ "path": "baseMint";
4279
+ }
4280
+ ];
4281
+ };
4282
+ },
4283
+ {
4284
+ "name": "quoteVault";
4285
+ "docs": [
4286
+ "The vault token account for output token."
4287
+ ];
4288
+ "writable": true;
4289
+ "pda": {
4290
+ "seeds": [
4291
+ {
4292
+ "kind": "const";
4293
+ "value": [
4294
+ 112,
4295
+ 111,
4296
+ 111,
4297
+ 108,
4298
+ 95,
4299
+ 118,
4300
+ 97,
4301
+ 117,
4302
+ 108,
4303
+ 116
4304
+ ];
4305
+ },
4306
+ {
4307
+ "kind": "account";
4308
+ "path": "pool";
4309
+ },
4310
+ {
4311
+ "kind": "account";
4312
+ "path": "quoteMint";
4313
+ }
4314
+ ];
4315
+ };
4316
+ },
4317
+ {
4318
+ "name": "observationState";
4319
+ "docs": [
4320
+ "The program account for the most recent oracle observation."
4321
+ ];
4322
+ "writable": true;
4323
+ "pda": {
4324
+ "seeds": [
4325
+ {
4326
+ "kind": "const";
4327
+ "value": [
4328
+ 111,
4329
+ 98,
4330
+ 115,
4331
+ 101,
4332
+ 114,
4333
+ 118,
4334
+ 97,
4335
+ 116,
4336
+ 105,
4337
+ 111,
4338
+ 110
4339
+ ];
4340
+ },
4341
+ {
4342
+ "kind": "account";
4343
+ "path": "pool";
4344
+ }
4345
+ ];
4346
+ };
4347
+ },
4348
+ {
4349
+ "name": "feeRecipient";
4350
+ "docs": [
4351
+ "The protocol fee recipient. Must be one of the allowed recipients in Config.",
4352
+ "",
4353
+ "NOTE: Validation happens in handler by checking against global_config.fee_recipients.",
4354
+ "Fee recipients are admin-controlled public keys stored in AmmConfig, so an attacker",
4355
+ "cannot pass an arbitrary account - it must match one of the configured recipients."
4356
+ ];
4357
+ "writable": true;
4358
+ },
4359
+ {
4360
+ "name": "protocolFeeVault";
4361
+ "docs": [
4362
+ "The protocol fee vault."
4363
+ ];
4364
+ "writable": true;
4365
+ "pda": {
4366
+ "seeds": [
4367
+ {
4368
+ "kind": "const";
4369
+ "value": [
4370
+ 103,
4371
+ 108,
4372
+ 111,
4373
+ 98,
4374
+ 97,
4375
+ 108,
4376
+ 95,
4377
+ 102,
4378
+ 101,
4379
+ 101
4380
+ ];
4381
+ },
4382
+ {
4383
+ "kind": "account";
4384
+ "path": "feeRecipient";
4385
+ },
4386
+ {
4387
+ "kind": "account";
4388
+ "path": "quoteMint";
4389
+ }
4390
+ ];
4391
+ };
4392
+ },
4393
+ {
4394
+ "name": "feeVault";
4395
+ "docs": [
4396
+ "Fee vault PDA from liquid-fees (authority for fee_vault_token_account)."
4397
+ ];
4398
+ "pda": {
4399
+ "seeds": [
4400
+ {
4401
+ "kind": "const";
4402
+ "value": [
4403
+ 102,
4404
+ 101,
4405
+ 101,
4406
+ 95,
4407
+ 118,
4408
+ 97,
4409
+ 117,
4410
+ 108,
4411
+ 116
4412
+ ];
4413
+ },
4414
+ {
4415
+ "kind": "account";
4416
+ "path": "feeConfig";
4417
+ }
4418
+ ];
4419
+ "program": {
4420
+ "kind": "const";
4421
+ "value": [
4422
+ 217,
4423
+ 168,
4424
+ 237,
4425
+ 183,
4426
+ 0,
4427
+ 44,
4428
+ 187,
4429
+ 171,
4430
+ 53,
4431
+ 87,
4432
+ 202,
4433
+ 162,
4434
+ 64,
4435
+ 131,
4436
+ 189,
4437
+ 106,
4438
+ 187,
4439
+ 249,
4440
+ 130,
4441
+ 171,
4442
+ 56,
4443
+ 202,
4444
+ 127,
4445
+ 190,
4446
+ 143,
4447
+ 121,
4448
+ 30,
4449
+ 195,
4450
+ 25,
4451
+ 86,
4452
+ 241,
4453
+ 242
4454
+ ];
4455
+ };
4456
+ };
4457
+ },
4458
+ {
4459
+ "name": "feeVaultTokenAccount";
4460
+ "docs": [
4461
+ "Fee vault token account for Recipients mode — accumulates quote tokens."
4462
+ ];
4463
+ "writable": true;
4464
+ "pda": {
4465
+ "seeds": [
4466
+ {
4467
+ "kind": "account";
4468
+ "path": "feeVault";
4469
+ },
4470
+ {
4471
+ "kind": "account";
4472
+ "path": "quoteTokenProgram";
4473
+ },
4474
+ {
4475
+ "kind": "account";
4476
+ "path": "quoteMint";
4477
+ }
4478
+ ];
4479
+ "program": {
4480
+ "kind": "const";
4481
+ "value": [
4482
+ 140,
4483
+ 151,
4484
+ 37,
4485
+ 143,
4486
+ 78,
4487
+ 36,
4488
+ 137,
4489
+ 241,
4490
+ 187,
4491
+ 61,
4492
+ 16,
4493
+ 41,
4494
+ 20,
4495
+ 142,
4496
+ 13,
4497
+ 131,
4498
+ 11,
4499
+ 90,
4500
+ 19,
4501
+ 153,
4502
+ 218,
4503
+ 255,
4504
+ 16,
4505
+ 132,
4506
+ 4,
4507
+ 142,
4508
+ 123,
4509
+ 216,
4510
+ 219,
4511
+ 233,
4512
+ 248,
4513
+ 89
4514
+ ];
4515
+ };
4516
+ };
4517
+ },
4518
+ {
4519
+ "name": "buybackVault";
4520
+ "docs": [
4521
+ "Buyback vault (for Revoked mode) — accumulates quote tokens for buy-and-burn.",
4522
+ "Initialized during pool creation."
4523
+ ];
4524
+ "writable": true;
4525
+ "pda": {
4526
+ "seeds": [
4527
+ {
4528
+ "kind": "const";
4529
+ "value": [
4530
+ 98,
4531
+ 117,
4532
+ 121,
4533
+ 98,
4534
+ 97,
4535
+ 99,
4536
+ 107,
4537
+ 95,
4538
+ 118,
4539
+ 97,
4540
+ 117,
4541
+ 108,
4542
+ 116
4543
+ ];
4544
+ },
4545
+ {
4546
+ "kind": "account";
4547
+ "path": "pool";
4548
+ },
4549
+ {
4550
+ "kind": "account";
4551
+ "path": "quoteMint";
4552
+ }
4553
+ ];
4554
+ };
4555
+ },
4556
+ {
4557
+ "name": "authority";
4558
+ "docs": [
4559
+ "Pool vault and LP mint authority."
4560
+ ];
4561
+ "pda": {
4562
+ "seeds": [
4563
+ {
4564
+ "kind": "const";
4565
+ "value": [
4566
+ 118,
4567
+ 97,
4568
+ 117,
4569
+ 108,
4570
+ 116,
4571
+ 95,
4572
+ 97,
4573
+ 110,
4574
+ 100,
4575
+ 95,
4576
+ 108,
4577
+ 112,
4578
+ 95,
4579
+ 109,
4580
+ 105,
4581
+ 110,
4582
+ 116,
4583
+ 95,
4584
+ 97,
4585
+ 117,
4586
+ 116,
4587
+ 104,
4588
+ 95,
4589
+ 115,
4590
+ 101,
4591
+ 101,
4592
+ 100
4593
+ ];
4594
+ }
4595
+ ];
4596
+ };
4597
+ },
4598
+ {
4599
+ "name": "globalConfig";
4600
+ "docs": [
4601
+ "Global configuration for the protocol."
4602
+ ];
4603
+ "pda": {
4604
+ "seeds": [
4605
+ {
4606
+ "kind": "const";
4607
+ "value": [
4608
+ 103,
4609
+ 108,
4610
+ 111,
4611
+ 98,
4612
+ 97,
4613
+ 108,
4614
+ 95,
4615
+ 99,
4616
+ 111,
4617
+ 110,
4618
+ 102,
4619
+ 105,
4620
+ 103
4621
+ ];
4622
+ }
4623
+ ];
4624
+ };
4625
+ },
4626
+ {
4627
+ "name": "creator";
4628
+ "docs": [
4629
+ "Pool creator (needed for fee vault derivation).",
4630
+ "",
4631
+ "NOTE: Validation relies on `has_one = creator` constraint on pool state.",
4632
+ "The creator is whoever signed the original pool creation transaction,",
4633
+ "stored immutably in PoolState. No separate ownership check is needed",
4634
+ "as the pool state is the source of truth for creator identity."
4635
+ ];
4636
+ "relations": [
4637
+ "pool"
4638
+ ];
4639
+ },
4640
+ {
4641
+ "name": "baseMint";
4642
+ "docs": [
4643
+ "The mint of input token."
4644
+ ];
4645
+ },
4646
+ {
4647
+ "name": "quoteMint";
4648
+ "docs": [
4649
+ "The mint of output token."
4650
+ ];
4651
+ },
4652
+ {
4653
+ "name": "feeConfig";
4654
+ "docs": [
4655
+ "The fee configuration for this token (from liquid-fees program).",
4656
+ "base_mint is typically the token that was launched on the bonding curve."
4657
+ ];
4658
+ "pda": {
4659
+ "seeds": [
4660
+ {
4661
+ "kind": "const";
4662
+ "value": [
4663
+ 102,
4664
+ 101,
4665
+ 101,
4666
+ 95,
4667
+ 99,
4668
+ 111,
4669
+ 110,
4670
+ 102,
4671
+ 105,
4672
+ 103
4673
+ ];
4674
+ },
4675
+ {
4676
+ "kind": "account";
4677
+ "path": "baseMint";
4678
+ }
4679
+ ];
4680
+ "program": {
4681
+ "kind": "const";
4682
+ "value": [
4683
+ 217,
4684
+ 168,
4685
+ 237,
4686
+ 183,
4687
+ 0,
4688
+ 44,
4689
+ 187,
4690
+ 171,
4691
+ 53,
4692
+ 87,
4693
+ 202,
4694
+ 162,
4695
+ 64,
4696
+ 131,
4697
+ 189,
4698
+ 106,
4699
+ 187,
4700
+ 249,
4701
+ 130,
4702
+ 171,
4703
+ 56,
4704
+ 202,
4705
+ 127,
4706
+ 190,
4707
+ 143,
4708
+ 121,
4709
+ 30,
4710
+ 195,
4711
+ 25,
4712
+ 86,
4713
+ 241,
4714
+ 242
4715
+ ];
4716
+ };
4717
+ };
4718
+ },
4719
+ {
4720
+ "name": "liquidState";
4721
+ "accounts": [
4722
+ {
4723
+ "name": "userProperties";
4724
+ "docs": [
4725
+ "User properties from liquid-state."
4726
+ ];
4727
+ "writable": true;
4728
+ "pda": {
4729
+ "seeds": [
4730
+ {
4731
+ "kind": "const";
4732
+ "value": [
4733
+ 117,
4734
+ 115,
4735
+ 101,
4736
+ 114,
4737
+ 95,
4738
+ 112,
4739
+ 114,
4740
+ 111,
4741
+ 112,
4742
+ 101,
4743
+ 114,
4744
+ 116,
4745
+ 105,
4746
+ 101,
4747
+ 115
4748
+ ];
4749
+ },
4750
+ {
4751
+ "kind": "account";
4752
+ "path": "user";
4753
+ }
4754
+ ];
4755
+ "program": {
4756
+ "kind": "const";
4757
+ "value": [
4758
+ 6,
4759
+ 161,
4760
+ 216,
4761
+ 199,
4762
+ 206,
4763
+ 40,
4764
+ 40,
4765
+ 163,
4766
+ 177,
4767
+ 19,
4768
+ 1,
4769
+ 21,
4770
+ 164,
4771
+ 67,
4772
+ 81,
4773
+ 132,
4774
+ 164,
4775
+ 22,
4776
+ 81,
4777
+ 177,
4778
+ 201,
4779
+ 45,
4780
+ 170,
4781
+ 138,
4782
+ 70,
4783
+ 214,
4784
+ 218,
4785
+ 76,
4786
+ 85,
4787
+ 222,
4788
+ 216,
4789
+ 214
4790
+ ];
4791
+ };
4792
+ };
4793
+ },
4794
+ {
4795
+ "name": "globalAmmVolume";
4796
+ "docs": [
4797
+ "Global AMM volume accumulator from liquid-state."
4798
+ ];
4799
+ "writable": true;
4800
+ "pda": {
4801
+ "seeds": [
4802
+ {
4803
+ "kind": "const";
4804
+ "value": [
4805
+ 103,
4806
+ 108,
4807
+ 111,
4808
+ 98,
4809
+ 97,
4810
+ 108,
4811
+ 95,
4812
+ 97,
4813
+ 109,
4814
+ 109,
4815
+ 95,
4816
+ 118,
4817
+ 111,
4818
+ 108,
4819
+ 117,
4820
+ 109,
4821
+ 101
4822
+ ];
4823
+ }
4824
+ ];
4825
+ "program": {
4826
+ "kind": "const";
4827
+ "value": [
4828
+ 6,
4829
+ 161,
4830
+ 216,
4831
+ 199,
4832
+ 206,
4833
+ 40,
4834
+ 40,
4835
+ 163,
4836
+ 177,
4837
+ 19,
4838
+ 1,
4839
+ 21,
4840
+ 164,
4841
+ 67,
4842
+ 81,
4843
+ 132,
4844
+ 164,
4845
+ 22,
4846
+ 81,
4847
+ 177,
4848
+ 201,
4849
+ 45,
4850
+ 170,
4851
+ 138,
4852
+ 70,
4853
+ 214,
4854
+ 218,
4855
+ 76,
4856
+ 85,
4857
+ 222,
4858
+ 216,
4859
+ 214
4860
+ ];
4861
+ };
4862
+ };
4863
+ },
4864
+ {
4865
+ "name": "tokenVolume";
4866
+ "docs": [
4867
+ "Token volume accumulator from liquid-state (for base_mint)."
4868
+ ];
4869
+ "writable": true;
4870
+ "pda": {
4871
+ "seeds": [
4872
+ {
4873
+ "kind": "const";
4874
+ "value": [
4875
+ 116,
4876
+ 111,
4877
+ 107,
4878
+ 101,
4879
+ 110,
4880
+ 95,
4881
+ 118,
4882
+ 111,
4883
+ 108,
4884
+ 117,
4885
+ 109,
4886
+ 101
4887
+ ];
4888
+ },
4889
+ {
4890
+ "kind": "account";
4891
+ "path": "tokenMint";
4892
+ }
4893
+ ];
4894
+ "program": {
4895
+ "kind": "const";
4896
+ "value": [
4897
+ 6,
4898
+ 161,
4899
+ 216,
4900
+ 199,
4901
+ 206,
4902
+ 40,
4903
+ 40,
4904
+ 163,
4905
+ 177,
4906
+ 19,
4907
+ 1,
4908
+ 21,
4909
+ 164,
4910
+ 67,
4911
+ 81,
4912
+ 132,
4913
+ 164,
4914
+ 22,
4915
+ 81,
4916
+ 177,
4917
+ 201,
4918
+ 45,
4919
+ 170,
4920
+ 138,
4921
+ 70,
4922
+ 214,
4923
+ 218,
4924
+ 76,
4925
+ 85,
4926
+ 222,
4927
+ 216,
4928
+ 214
4929
+ ];
4930
+ };
4931
+ };
4932
+ },
4933
+ {
4934
+ "name": "user";
4935
+ "docs": [
4936
+ "The user performing the trade."
4937
+ ];
4938
+ },
4939
+ {
4940
+ "name": "tokenMint";
4941
+ "docs": [
4942
+ "The token mint, used for token_volume PDA derivation."
4943
+ ];
4944
+ },
4945
+ {
4946
+ "name": "cashbackConfig";
4947
+ "docs": [
4948
+ "Cashback configuration from liquid-state."
4949
+ ];
4950
+ "pda": {
4951
+ "seeds": [
4952
+ {
4953
+ "kind": "const";
4954
+ "value": [
4955
+ 99,
4956
+ 97,
4957
+ 115,
4958
+ 104,
4959
+ 98,
4960
+ 97,
4961
+ 99,
4962
+ 107,
4963
+ 95,
4964
+ 99,
4965
+ 111,
4966
+ 110,
4967
+ 102,
4968
+ 105,
4969
+ 103
4970
+ ];
4971
+ }
4972
+ ];
4973
+ "program": {
4974
+ "kind": "const";
4975
+ "value": [
4976
+ 6,
4977
+ 161,
4978
+ 216,
4979
+ 199,
4980
+ 206,
4981
+ 40,
4982
+ 40,
4983
+ 163,
4984
+ 177,
4985
+ 19,
4986
+ 1,
4987
+ 21,
4988
+ 164,
4989
+ 67,
4990
+ 81,
4991
+ 132,
4992
+ 164,
4993
+ 22,
4994
+ 81,
4995
+ 177,
4996
+ 201,
4997
+ 45,
4998
+ 170,
4999
+ 138,
5000
+ 70,
5001
+ 214,
5002
+ 218,
5003
+ 76,
5004
+ 85,
5005
+ 222,
5006
+ 216,
5007
+ 214
5008
+ ];
5009
+ };
5010
+ };
5011
+ },
5012
+ {
5013
+ "name": "liquidStateProgram";
5014
+ "docs": [
5015
+ "liquid-state program for unified state management."
5016
+ ];
5017
+ "address": "State3HtEfi7cXdsTpAtRoBvrij8zSFCiGTAVWmYH2d";
5018
+ },
5019
+ {
5020
+ "name": "stateEventsCpiAuthority";
5021
+ "docs": [
5022
+ "CPI authority PDA owned by liquid-state for emitting events via liquid-events."
5023
+ ];
5024
+ "pda": {
5025
+ "seeds": [
5026
+ {
5027
+ "kind": "const";
5028
+ "value": [
5029
+ 99,
5030
+ 112,
5031
+ 105,
5032
+ 95,
5033
+ 97,
5034
+ 117,
5035
+ 116,
5036
+ 104,
5037
+ 111,
5038
+ 114,
5039
+ 105,
5040
+ 116,
5041
+ 121
5042
+ ];
5043
+ }
5044
+ ];
5045
+ "program": {
5046
+ "kind": "const";
5047
+ "value": [
5048
+ 6,
5049
+ 161,
5050
+ 216,
5051
+ 199,
5052
+ 206,
5053
+ 40,
5054
+ 40,
5055
+ 163,
5056
+ 177,
5057
+ 19,
5058
+ 1,
5059
+ 21,
5060
+ 164,
5061
+ 67,
5062
+ 81,
5063
+ 132,
5064
+ 164,
5065
+ 22,
5066
+ 81,
5067
+ 177,
5068
+ 201,
5069
+ 45,
5070
+ 170,
5071
+ 138,
5072
+ 70,
5073
+ 214,
5074
+ 218,
5075
+ 76,
5076
+ 85,
5077
+ 222,
5078
+ 216,
5079
+ 214
5080
+ ];
5081
+ };
5082
+ };
5083
+ }
5084
+ ];
5085
+ },
5086
+ {
5087
+ "name": "baseTokenProgram";
5088
+ "docs": [
5089
+ "SPL program for input token transfers."
5090
+ ];
5091
+ },
5092
+ {
5093
+ "name": "quoteTokenProgram";
5094
+ "docs": [
5095
+ "SPL program for output token transfers."
5096
+ ];
5097
+ },
5098
+ {
5099
+ "name": "systemProgram";
5100
+ "docs": [
5101
+ "System program needed for init_if_needed"
5102
+ ];
5103
+ "address": "11111111111111111111111111111111";
5104
+ },
5105
+ {
5106
+ "name": "tokenProgram";
5107
+ "docs": [
5108
+ "Token program for vault creation"
5109
+ ];
5110
+ "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
5111
+ },
5112
+ {
5113
+ "name": "associatedTokenProgram";
5114
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
5115
+ },
5116
+ {
5117
+ "name": "cpiAuthority";
5118
+ "docs": [
5119
+ "CPI authority PDA — proves this program's identity in cross-program calls."
5120
+ ];
5121
+ "pda": {
5122
+ "seeds": [
5123
+ {
5124
+ "kind": "const";
5125
+ "value": [
5126
+ 99,
5127
+ 112,
5128
+ 105,
5129
+ 95,
5130
+ 97,
5131
+ 117,
5132
+ 116,
5133
+ 104,
5134
+ 111,
5135
+ 114,
5136
+ 105,
5137
+ 116,
5138
+ 121
5139
+ ];
5140
+ }
5141
+ ];
5142
+ };
5143
+ },
5144
+ {
5145
+ "name": "liquidEventsProgram";
5146
+ "docs": [
5147
+ "Liquid events program for CPI event emission."
5148
+ ];
5149
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
5150
+ },
5151
+ {
5152
+ "name": "oraclePriceFeed";
5153
+ "docs": [
5154
+ "Pyth SOL/USD price feed (required for tiered fees)."
5155
+ ];
5156
+ "optional": true;
5157
+ }
5158
+ ];
5159
+ "args": [
5160
+ {
5161
+ "name": "maxAmountIn";
5162
+ "type": "u64";
5163
+ },
5164
+ {
5165
+ "name": "exactAmountOut";
5166
+ "type": "u64";
5167
+ }
5168
+ ];
5169
+ },
5170
+ {
5171
+ "name": "setFeeRecipients";
5172
+ "docs": [
5173
+ "Sets the protocol's fee recipients. Only callable by the admin.",
5174
+ "",
5175
+ "# Arguments",
5176
+ "* `fee_recipients` - List of protocol fee recipients (must be exactly NUM_FEE_RECIPIENTS)."
5177
+ ];
5178
+ "discriminator": [
5179
+ 49,
5180
+ 149,
5181
+ 195,
5182
+ 192,
5183
+ 109,
5184
+ 40,
5185
+ 213,
5186
+ 123
5187
+ ];
5188
+ "accounts": [
5189
+ {
5190
+ "name": "admin";
5191
+ "docs": [
5192
+ "The admin authorized to update the global config."
5193
+ ];
5194
+ "writable": true;
5195
+ "signer": true;
5196
+ },
5197
+ {
5198
+ "name": "globalConfig";
5199
+ "docs": [
5200
+ "Global configuration account to be updated."
5201
+ ];
5202
+ "writable": true;
5203
+ "pda": {
5204
+ "seeds": [
5205
+ {
5206
+ "kind": "const";
5207
+ "value": [
5208
+ 103,
5209
+ 108,
3963
5210
  111,
3964
5211
  98,
3965
5212
  97,
@@ -4132,6 +5379,41 @@ export type LiquidSwap = {
4132
5379
  }
4133
5380
  ];
4134
5381
  };
5382
+ },
5383
+ {
5384
+ "name": "cpiAuthority";
5385
+ "docs": [
5386
+ "CPI authority PDA — proves this program's identity in cross-program calls."
5387
+ ];
5388
+ "pda": {
5389
+ "seeds": [
5390
+ {
5391
+ "kind": "const";
5392
+ "value": [
5393
+ 99,
5394
+ 112,
5395
+ 105,
5396
+ 95,
5397
+ 97,
5398
+ 117,
5399
+ 116,
5400
+ 104,
5401
+ 111,
5402
+ 114,
5403
+ 105,
5404
+ 116,
5405
+ 121
5406
+ ];
5407
+ }
5408
+ ];
5409
+ };
5410
+ },
5411
+ {
5412
+ "name": "liquidEventsProgram";
5413
+ "docs": [
5414
+ "Liquid events program for CPI event emission."
5415
+ ];
5416
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
4135
5417
  }
4136
5418
  ];
4137
5419
  "args": [];
@@ -4383,6 +5665,41 @@ export type LiquidSwap = {
4383
5665
  "The mint of quote vault."
4384
5666
  ];
4385
5667
  },
5668
+ {
5669
+ "name": "cpiAuthority";
5670
+ "docs": [
5671
+ "CPI authority PDA — proves this program's identity in cross-program calls."
5672
+ ];
5673
+ "pda": {
5674
+ "seeds": [
5675
+ {
5676
+ "kind": "const";
5677
+ "value": [
5678
+ 99,
5679
+ 112,
5680
+ 105,
5681
+ 95,
5682
+ 97,
5683
+ 117,
5684
+ 116,
5685
+ 104,
5686
+ 111,
5687
+ 114,
5688
+ 105,
5689
+ 116,
5690
+ 121
5691
+ ];
5692
+ }
5693
+ ];
5694
+ };
5695
+ },
5696
+ {
5697
+ "name": "liquidEventsProgram";
5698
+ "docs": [
5699
+ "Liquid events program for CPI event emission."
5700
+ ];
5701
+ "address": "EventsQeXA43nLKR69DhHwNsJ6aM512AweMCgG3wG8zG";
5702
+ },
4386
5703
  {
4387
5704
  "name": "tokenProgram";
4388
5705
  "docs": [