@lightprotocol/compressed-token 0.16.0 → 0.17.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.
@@ -1,19 +1,5 @@
1
- import {
2
- CompressedProof,
3
- ParsedTokenAccount,
4
- TokenTransferOutputData as TokenTransferOutputData$1,
5
- InputTokenDataWithContext as InputTokenDataWithContext$1,
6
- Rpc,
7
- } from '@lightprotocol/stateless.js';
8
- import {
9
- PublicKey,
10
- AccountMeta,
11
- TransactionInstruction,
12
- Signer,
13
- ConfirmOptions,
14
- TransactionSignature,
15
- Keypair,
16
- } from '@solana/web3.js';
1
+ import { CompressedProof, ParsedTokenAccount, TokenTransferOutputData as TokenTransferOutputData$1, InputTokenDataWithContext as InputTokenDataWithContext$1, Rpc } from '@lightprotocol/stateless.js';
2
+ import { PublicKey, AccountMeta, TransactionInstruction, Connection, Signer, ConfirmOptions, TransactionSignature, Keypair } from '@solana/web3.js';
17
3
  import { BN, Program } from '@coral-xyz/anchor';
18
4
 
19
5
  type LightCompressedToken = {
@@ -26,7 +12,7 @@ type LightCompressedToken = {
26
12
  'This instruction creates a token pool for a given mint. Every spl mint',
27
13
  'can have one token pool. When a token is compressed the tokens are',
28
14
  'transferrred to the token pool, and their compressed equivalent is',
29
- 'minted into a Merkle tree.',
15
+ 'minted into a Merkle tree.'
30
16
  ];
31
17
  accounts: [
32
18
  {
@@ -59,7 +45,7 @@ type LightCompressedToken = {
59
45
  name: 'cpiAuthorityPda';
60
46
  isMut: false;
61
47
  isSigner: false;
62
- },
48
+ }
63
49
  ];
64
50
  args: [];
65
51
  },
@@ -72,7 +58,7 @@ type LightCompressedToken = {
72
58
  'every amount and pubkey input pair. A constant amount of lamports can be',
73
59
  'transferred to each output account to enable. A use case to add lamports',
74
60
  'to a compressed token account is to prevent spam. This is the only way',
75
- 'to add lamports to a compressed token account.',
61
+ 'to add lamports to a compressed token account.'
76
62
  ];
77
63
  accounts: [
78
64
  {
@@ -100,9 +86,6 @@ type LightCompressedToken = {
100
86
  name: 'tokenPoolPda';
101
87
  isMut: true;
102
88
  isSigner: false;
103
- docs: [
104
- 'account to a token account of a different mint will fail',
105
- ];
106
89
  },
107
90
  {
108
91
  name: 'tokenProgram';
@@ -155,7 +138,7 @@ type LightCompressedToken = {
155
138
  isMut: true;
156
139
  isSigner: false;
157
140
  isOptional: true;
158
- },
141
+ }
159
142
  ];
160
143
  args: [
161
144
  {
@@ -175,11 +158,16 @@ type LightCompressedToken = {
175
158
  type: {
176
159
  option: 'u64';
177
160
  };
178
- },
161
+ }
179
162
  ];
180
163
  },
181
164
  {
182
165
  name: 'compressSplTokenAccount';
166
+ docs: [
167
+ 'Compresses the balance of an spl token account sub an optional remaining',
168
+ 'amount. This instruction does not close the spl token account. To close',
169
+ 'the account bundle a close spl account instruction in your transaction.'
170
+ ];
183
171
  accounts: [
184
172
  {
185
173
  name: 'feePayer';
@@ -194,7 +182,7 @@ type LightCompressedToken = {
194
182
  docs: [
195
183
  'Authority is verified through proof since both owner and delegate',
196
184
  'are included in the token data hash, which is a public input to the',
197
- 'validity proof.',
185
+ 'validity proof.'
198
186
  ];
199
187
  },
200
188
  {
@@ -255,7 +243,7 @@ type LightCompressedToken = {
255
243
  name: 'systemProgram';
256
244
  isMut: false;
257
245
  isSigner: false;
258
- },
246
+ }
259
247
  ];
260
248
  args: [
261
249
  {
@@ -275,7 +263,7 @@ type LightCompressedToken = {
275
263
  defined: 'CompressedCpiContext';
276
264
  };
277
265
  };
278
- },
266
+ }
279
267
  ];
280
268
  },
281
269
  {
@@ -288,7 +276,7 @@ type LightCompressedToken = {
288
276
  'accounts specify less lamports than inputs the remaining lamports are',
289
277
  'transferred to an output compressed account. Signer must be owner or',
290
278
  'delegate. If a delegated token account is transferred the delegate is',
291
- 'not preserved.',
279
+ 'not preserved.'
292
280
  ];
293
281
  accounts: [
294
282
  {
@@ -304,7 +292,7 @@ type LightCompressedToken = {
304
292
  docs: [
305
293
  'Authority is verified through proof since both owner and delegate',
306
294
  'are included in the token data hash, which is a public input to the',
307
- 'validity proof.',
295
+ 'validity proof.'
308
296
  ];
309
297
  },
310
298
  {
@@ -365,13 +353,13 @@ type LightCompressedToken = {
365
353
  name: 'systemProgram';
366
354
  isMut: false;
367
355
  isSigner: false;
368
- },
356
+ }
369
357
  ];
370
358
  args: [
371
359
  {
372
360
  name: 'inputs';
373
361
  type: 'bytes';
374
- },
362
+ }
375
363
  ];
376
364
  },
377
365
  {
@@ -382,7 +370,7 @@ type LightCompressedToken = {
382
370
  'be called by a delegate.',
383
371
  'The instruction creates two output accounts:',
384
372
  '1. one account with delegated amount',
385
- '2. one account with remaining(change) amount',
373
+ '2. one account with remaining(change) amount'
386
374
  ];
387
375
  accounts: [
388
376
  {
@@ -398,7 +386,7 @@ type LightCompressedToken = {
398
386
  docs: [
399
387
  'Authority is verified through proof since both owner and delegate',
400
388
  'are included in the token data hash, which is a public input to the',
401
- 'validity proof.',
389
+ 'validity proof.'
402
390
  ];
403
391
  },
404
392
  {
@@ -441,20 +429,20 @@ type LightCompressedToken = {
441
429
  name: 'systemProgram';
442
430
  isMut: false;
443
431
  isSigner: false;
444
- },
432
+ }
445
433
  ];
446
434
  args: [
447
435
  {
448
436
  name: 'inputs';
449
437
  type: 'bytes';
450
- },
438
+ }
451
439
  ];
452
440
  },
453
441
  {
454
442
  name: 'revoke';
455
443
  docs: [
456
444
  'Revokes a delegation. The instruction merges all inputs into one output',
457
- 'account. Cannot be called by a delegate. Delegates are not preserved.',
445
+ 'account. Cannot be called by a delegate. Delegates are not preserved.'
458
446
  ];
459
447
  accounts: [
460
448
  {
@@ -470,7 +458,7 @@ type LightCompressedToken = {
470
458
  docs: [
471
459
  'Authority is verified through proof since both owner and delegate',
472
460
  'are included in the token data hash, which is a public input to the',
473
- 'validity proof.',
461
+ 'validity proof.'
474
462
  ];
475
463
  },
476
464
  {
@@ -513,20 +501,20 @@ type LightCompressedToken = {
513
501
  name: 'systemProgram';
514
502
  isMut: false;
515
503
  isSigner: false;
516
- },
504
+ }
517
505
  ];
518
506
  args: [
519
507
  {
520
508
  name: 'inputs';
521
509
  type: 'bytes';
522
- },
510
+ }
523
511
  ];
524
512
  },
525
513
  {
526
514
  name: 'freeze';
527
515
  docs: [
528
516
  'Freezes compressed token accounts. Inputs must not be frozen. Creates as',
529
- 'many outputs as inputs. Balances and delegates are preserved.',
517
+ 'many outputs as inputs. Balances and delegates are preserved.'
530
518
  ];
531
519
  accounts: [
532
520
  {
@@ -585,20 +573,20 @@ type LightCompressedToken = {
585
573
  name: 'mint';
586
574
  isMut: false;
587
575
  isSigner: false;
588
- },
576
+ }
589
577
  ];
590
578
  args: [
591
579
  {
592
580
  name: 'inputs';
593
581
  type: 'bytes';
594
- },
582
+ }
595
583
  ];
596
584
  },
597
585
  {
598
586
  name: 'thaw';
599
587
  docs: [
600
588
  'Thaws frozen compressed token accounts. Inputs must be frozen. Creates',
601
- 'as many outputs as inputs. Balances and delegates are preserved.',
589
+ 'as many outputs as inputs. Balances and delegates are preserved.'
602
590
  ];
603
591
  accounts: [
604
592
  {
@@ -657,13 +645,13 @@ type LightCompressedToken = {
657
645
  name: 'mint';
658
646
  isMut: false;
659
647
  isSigner: false;
660
- },
648
+ }
661
649
  ];
662
650
  args: [
663
651
  {
664
652
  name: 'inputs';
665
653
  type: 'bytes';
666
- },
654
+ }
667
655
  ];
668
656
  },
669
657
  {
@@ -671,7 +659,7 @@ type LightCompressedToken = {
671
659
  docs: [
672
660
  'Burns compressed tokens and spl tokens from the pool account. Delegates',
673
661
  'can burn tokens. The output compressed token account remains delegated.',
674
- 'Creates one output compressed token account.',
662
+ 'Creates one output compressed token account.'
675
663
  ];
676
664
  accounts: [
677
665
  {
@@ -687,7 +675,7 @@ type LightCompressedToken = {
687
675
  docs: [
688
676
  'Authority is verified through proof since both owner and delegate',
689
677
  'are included in the token data hash, which is a public input to the',
690
- 'validity proof.',
678
+ 'validity proof.'
691
679
  ];
692
680
  },
693
681
  {
@@ -744,13 +732,13 @@ type LightCompressedToken = {
744
732
  name: 'systemProgram';
745
733
  isMut: false;
746
734
  isSigner: false;
747
- },
735
+ }
748
736
  ];
749
737
  args: [
750
738
  {
751
739
  name: 'inputs';
752
740
  type: 'bytes';
753
- },
741
+ }
754
742
  ];
755
743
  },
756
744
  {
@@ -758,7 +746,7 @@ type LightCompressedToken = {
758
746
  docs: [
759
747
  'This function is a stub to allow Anchor to include the input types in',
760
748
  'the IDL. It should not be included in production builds nor be called in',
761
- 'practice.',
749
+ 'practice.'
762
750
  ];
763
751
  accounts: [
764
752
  {
@@ -774,7 +762,7 @@ type LightCompressedToken = {
774
762
  docs: [
775
763
  'Authority is verified through proof since both owner and delegate',
776
764
  'are included in the token data hash, which is a public input to the',
777
- 'validity proof.',
765
+ 'validity proof.'
778
766
  ];
779
767
  },
780
768
  {
@@ -835,7 +823,7 @@ type LightCompressedToken = {
835
823
  name: 'systemProgram';
836
824
  isMut: false;
837
825
  isSigner: false;
838
- },
826
+ }
839
827
  ];
840
828
  args: [
841
829
  {
@@ -849,9 +837,9 @@ type LightCompressedToken = {
849
837
  type: {
850
838
  defined: 'TokenData';
851
839
  };
852
- },
840
+ }
853
841
  ];
854
- },
842
+ }
855
843
  ];
856
844
  types: [
857
845
  {
@@ -867,7 +855,7 @@ type LightCompressedToken = {
867
855
  {
868
856
  name: 'programOwner';
869
857
  docs: [
870
- 'Program owner of the Merkle tree. This will be used for program owned Merkle trees.',
858
+ 'Program owner of the Merkle tree. This will be used for program owned Merkle trees.'
871
859
  ];
872
860
  type: 'publicKey';
873
861
  },
@@ -879,10 +867,10 @@ type LightCompressedToken = {
879
867
  'forested by light foresters. The variable is not used in the account',
880
868
  'compression program but the registry program. The registry program',
881
869
  'implements access control to prevent contention during forester. The',
882
- 'forester pubkey specified in this struct can bypass contention checks.',
870
+ 'forester pubkey specified in this struct can bypass contention checks.'
883
871
  ];
884
872
  type: 'publicKey';
885
- },
873
+ }
886
874
  ];
887
875
  };
888
876
  },
@@ -896,7 +884,7 @@ type LightCompressedToken = {
896
884
  },
897
885
  {
898
886
  name: 'Frozen';
899
- },
887
+ }
900
888
  ];
901
889
  };
902
890
  },
@@ -928,7 +916,7 @@ type LightCompressedToken = {
928
916
  defined: 'CompressedAccountData';
929
917
  };
930
918
  };
931
- },
919
+ }
932
920
  ];
933
921
  };
934
922
  },
@@ -952,7 +940,7 @@ type LightCompressedToken = {
952
940
  type: {
953
941
  array: ['u8', 32];
954
942
  };
955
- },
943
+ }
956
944
  ];
957
945
  };
958
946
  },
@@ -965,7 +953,7 @@ type LightCompressedToken = {
965
953
  name: 'setContext';
966
954
  docs: [
967
955
  'Is set by the program that is invoking the CPI to signal that is should',
968
- 'set the cpi context.',
956
+ 'set the cpi context.'
969
957
  ];
970
958
  type: 'bool';
971
959
  },
@@ -973,17 +961,17 @@ type LightCompressedToken = {
973
961
  name: 'firstSetContext';
974
962
  docs: [
975
963
  'Is set to wipe the cpi context since someone could have set it before',
976
- 'with unrelated data.',
964
+ 'with unrelated data.'
977
965
  ];
978
966
  type: 'bool';
979
967
  },
980
968
  {
981
969
  name: 'cpiContextAccountIndex';
982
970
  docs: [
983
- 'Index of cpi context account in remaining accounts.',
971
+ 'Index of cpi context account in remaining accounts.'
984
972
  ];
985
973
  type: 'u8';
986
- },
974
+ }
987
975
  ];
988
976
  };
989
977
  },
@@ -1009,7 +997,7 @@ type LightCompressedToken = {
1009
997
  type: {
1010
998
  array: ['u8', 32];
1011
999
  };
1012
- },
1000
+ }
1013
1001
  ];
1014
1002
  };
1015
1003
  },
@@ -1035,7 +1023,7 @@ type LightCompressedToken = {
1035
1023
  docs: [
1036
1024
  'Is required if the signer is delegate,',
1037
1025
  '-> delegate is authority account,',
1038
- 'owner = Some(owner) is the owner of the token account.',
1026
+ 'owner = Some(owner) is the owner of the token account.'
1039
1027
  ];
1040
1028
  type: {
1041
1029
  option: {
@@ -1082,14 +1070,14 @@ type LightCompressedToken = {
1082
1070
  type: {
1083
1071
  option: 'u8';
1084
1072
  };
1085
- },
1073
+ }
1086
1074
  ];
1087
1075
  };
1088
1076
  },
1089
1077
  {
1090
1078
  name: 'DelegatedTransfer';
1091
1079
  docs: [
1092
- 'Struct to provide the owner when the delegate is signer of the transaction.',
1080
+ 'Struct to provide the owner when the delegate is signer of the transaction.'
1093
1081
  ];
1094
1082
  type: {
1095
1083
  kind: 'struct';
@@ -1104,12 +1092,12 @@ type LightCompressedToken = {
1104
1092
  'Index of change compressed account in output compressed accounts. In',
1105
1093
  "case that the delegate didn't spend the complete delegated compressed",
1106
1094
  'account balance the change compressed account will be delegated to her',
1107
- 'as well.',
1095
+ 'as well.'
1108
1096
  ];
1109
1097
  type: {
1110
1098
  option: 'u8';
1111
1099
  };
1112
- },
1100
+ }
1113
1101
  ];
1114
1102
  };
1115
1103
  },
@@ -1147,12 +1135,12 @@ type LightCompressedToken = {
1147
1135
  {
1148
1136
  name: 'tlv';
1149
1137
  docs: [
1150
- 'Placeholder for TokenExtension tlv data (unimplemented)',
1138
+ 'Placeholder for TokenExtension tlv data (unimplemented)'
1151
1139
  ];
1152
1140
  type: {
1153
1141
  option: 'bytes';
1154
1142
  };
1155
- },
1143
+ }
1156
1144
  ];
1157
1145
  };
1158
1146
  },
@@ -1208,7 +1196,7 @@ type LightCompressedToken = {
1208
1196
  {
1209
1197
  name: 'isCompress';
1210
1198
  type: 'bool';
1211
- },
1199
+ }
1212
1200
  ];
1213
1201
  };
1214
1202
  },
@@ -1272,7 +1260,7 @@ type LightCompressedToken = {
1272
1260
  defined: 'CompressedCpiContext';
1273
1261
  };
1274
1262
  };
1275
- },
1263
+ }
1276
1264
  ];
1277
1265
  };
1278
1266
  },
@@ -1300,7 +1288,7 @@ type LightCompressedToken = {
1300
1288
  {
1301
1289
  name: 'nextMerkleTree';
1302
1290
  type: 'publicKey';
1303
- },
1291
+ }
1304
1292
  ];
1305
1293
  };
1306
1294
  },
@@ -1316,7 +1304,7 @@ type LightCompressedToken = {
1316
1304
  {
1317
1305
  name: 'seq';
1318
1306
  type: 'u64';
1319
- },
1307
+ }
1320
1308
  ];
1321
1309
  };
1322
1310
  },
@@ -1342,7 +1330,7 @@ type LightCompressedToken = {
1342
1330
  {
1343
1331
  name: 'addressMerkleTreeRootIndex';
1344
1332
  type: 'u16';
1345
- },
1333
+ }
1346
1334
  ];
1347
1335
  };
1348
1336
  },
@@ -1360,7 +1348,7 @@ type LightCompressedToken = {
1360
1348
  {
1361
1349
  name: 'merkleTreeIndex';
1362
1350
  type: 'u8';
1363
- },
1351
+ }
1364
1352
  ];
1365
1353
  };
1366
1354
  },
@@ -1384,17 +1372,17 @@ type LightCompressedToken = {
1384
1372
  {
1385
1373
  name: 'rootIndex';
1386
1374
  docs: [
1387
- 'Index of root used in inclusion validity proof.',
1375
+ 'Index of root used in inclusion validity proof.'
1388
1376
  ];
1389
1377
  type: 'u16';
1390
1378
  },
1391
1379
  {
1392
1380
  name: 'readOnly';
1393
1381
  docs: [
1394
- 'Placeholder to mark accounts read-only unimplemented set to false.',
1382
+ 'Placeholder to mark accounts read-only unimplemented set to false.'
1395
1383
  ];
1396
1384
  type: 'bool';
1397
- },
1385
+ }
1398
1386
  ];
1399
1387
  };
1400
1388
  },
@@ -1419,14 +1407,14 @@ type LightCompressedToken = {
1419
1407
  name: 'queueIndex';
1420
1408
  docs: [
1421
1409
  'Index of leaf in queue. Placeholder of batched Merkle tree updates',
1422
- 'currently unimplemented.',
1410
+ 'currently unimplemented.'
1423
1411
  ];
1424
1412
  type: {
1425
1413
  option: {
1426
1414
  defined: 'QueueIndex';
1427
1415
  };
1428
1416
  };
1429
- },
1417
+ }
1430
1418
  ];
1431
1419
  };
1432
1420
  },
@@ -1456,12 +1444,12 @@ type LightCompressedToken = {
1456
1444
  {
1457
1445
  name: 'tlv';
1458
1446
  docs: [
1459
- 'Placeholder for TokenExtension tlv data (unimplemented)',
1447
+ 'Placeholder for TokenExtension tlv data (unimplemented)'
1460
1448
  ];
1461
1449
  type: {
1462
1450
  option: 'bytes';
1463
1451
  };
1464
- },
1452
+ }
1465
1453
  ];
1466
1454
  };
1467
1455
  },
@@ -1535,7 +1523,7 @@ type LightCompressedToken = {
1535
1523
  type: {
1536
1524
  option: 'bytes';
1537
1525
  };
1538
- },
1526
+ }
1539
1527
  ];
1540
1528
  };
1541
1529
  },
@@ -1553,7 +1541,7 @@ type LightCompressedToken = {
1553
1541
  name: 'index';
1554
1542
  docs: ['Index of compressed account hash in queue.'];
1555
1543
  type: 'u16';
1556
- },
1544
+ }
1557
1545
  ];
1558
1546
  };
1559
1547
  },
@@ -1571,14 +1559,14 @@ type LightCompressedToken = {
1571
1559
  name: 'rolloverFee';
1572
1560
  docs: [
1573
1561
  'This fee is used for rent for the next account.',
1574
- 'It accumulates in the account so that once the corresponding Merkle tree account is full it can be rolled over',
1562
+ 'It accumulates in the account so that once the corresponding Merkle tree account is full it can be rolled over'
1575
1563
  ];
1576
1564
  type: 'u64';
1577
1565
  },
1578
1566
  {
1579
1567
  name: 'rolloverThreshold';
1580
1568
  docs: [
1581
- 'The threshold in percentage points when the account should be rolled over (95 corresponds to 95% filled).',
1569
+ 'The threshold in percentage points when the account should be rolled over (95 corresponds to 95% filled).'
1582
1570
  ];
1583
1571
  type: 'u64';
1584
1572
  },
@@ -1590,7 +1578,7 @@ type LightCompressedToken = {
1590
1578
  {
1591
1579
  name: 'rolledoverSlot';
1592
1580
  docs: [
1593
- 'The slot when the account was rolled over, a rolled over account should not be written to.',
1581
+ 'The slot when the account was rolled over, a rolled over account should not be written to.'
1594
1582
  ];
1595
1583
  type: 'u64';
1596
1584
  },
@@ -1599,7 +1587,7 @@ type LightCompressedToken = {
1599
1587
  docs: [
1600
1588
  'If current slot is greater than rolledover_slot + close_threshold and',
1601
1589
  "the account is empty it can be closed. No 'close' functionality has been",
1602
- 'implemented yet.',
1590
+ 'implemented yet.'
1603
1591
  ];
1604
1592
  type: 'u64';
1605
1593
  },
@@ -1607,10 +1595,10 @@ type LightCompressedToken = {
1607
1595
  name: 'additionalBytes';
1608
1596
  docs: [
1609
1597
  'Placeholder for bytes of additional accounts which are tied to the',
1610
- 'Merkle trees operation and need to be rolled over as well.',
1598
+ 'Merkle trees operation and need to be rolled over as well.'
1611
1599
  ];
1612
1600
  type: 'u64';
1613
- },
1601
+ }
1614
1602
  ];
1615
1603
  };
1616
1604
  },
@@ -1638,7 +1626,7 @@ type LightCompressedToken = {
1638
1626
  name: 'delegate';
1639
1627
  docs: [
1640
1628
  'If `delegate` is `Some` then `delegated_amount` represents',
1641
- 'the amount authorized by the delegate',
1629
+ 'the amount authorized by the delegate'
1642
1630
  ];
1643
1631
  type: {
1644
1632
  option: 'publicKey';
@@ -1654,37 +1642,155 @@ type LightCompressedToken = {
1654
1642
  {
1655
1643
  name: 'tlv';
1656
1644
  docs: [
1657
- 'Placeholder for TokenExtension tlv data (unimplemented)',
1645
+ 'Placeholder for TokenExtension tlv data (unimplemented)'
1658
1646
  ];
1659
1647
  type: {
1660
1648
  option: 'bytes';
1661
1649
  };
1662
- },
1650
+ }
1663
1651
  ];
1664
1652
  };
1665
- },
1653
+ }
1666
1654
  ];
1667
1655
  errors: [
1668
1656
  {
1669
1657
  code: 6000;
1670
- name: 'SignerCheckFailed';
1671
- msg: 'Signer check failed';
1658
+ name: 'PublicKeyAmountMissmatch';
1659
+ msg: 'public keys and amounts must be of same length';
1672
1660
  },
1673
1661
  {
1674
1662
  code: 6001;
1675
- name: 'CreateTransferInstructionFailed';
1676
- msg: 'Create transfer instruction failed';
1663
+ name: 'ComputeInputSumFailed';
1664
+ msg: 'ComputeInputSumFailed';
1677
1665
  },
1678
1666
  {
1679
1667
  code: 6002;
1680
- name: 'AccountNotFound';
1681
- msg: 'Account not found';
1668
+ name: 'ComputeOutputSumFailed';
1669
+ msg: 'ComputeOutputSumFailed';
1682
1670
  },
1683
1671
  {
1684
1672
  code: 6003;
1685
- name: 'SerializationError';
1686
- msg: 'Serialization error';
1673
+ name: 'ComputeCompressSumFailed';
1674
+ msg: 'ComputeCompressSumFailed';
1675
+ },
1676
+ {
1677
+ code: 6004;
1678
+ name: 'ComputeDecompressSumFailed';
1679
+ msg: 'ComputeDecompressSumFailed';
1680
+ },
1681
+ {
1682
+ code: 6005;
1683
+ name: 'SumCheckFailed';
1684
+ msg: 'SumCheckFailed';
1685
+ },
1686
+ {
1687
+ code: 6006;
1688
+ name: 'DecompressRecipientUndefinedForDecompress';
1689
+ msg: 'DecompressRecipientUndefinedForDecompress';
1690
+ },
1691
+ {
1692
+ code: 6007;
1693
+ name: 'CompressedPdaUndefinedForDecompress';
1694
+ msg: 'CompressedPdaUndefinedForDecompress';
1695
+ },
1696
+ {
1697
+ code: 6008;
1698
+ name: 'DeCompressAmountUndefinedForDecompress';
1699
+ msg: 'DeCompressAmountUndefinedForDecompress';
1687
1700
  },
1701
+ {
1702
+ code: 6009;
1703
+ name: 'CompressedPdaUndefinedForCompress';
1704
+ msg: 'CompressedPdaUndefinedForCompress';
1705
+ },
1706
+ {
1707
+ code: 6010;
1708
+ name: 'DeCompressAmountUndefinedForCompress';
1709
+ msg: 'DeCompressAmountUndefinedForCompress';
1710
+ },
1711
+ {
1712
+ code: 6011;
1713
+ name: 'DelegateSignerCheckFailed';
1714
+ msg: 'DelegateSignerCheckFailed';
1715
+ },
1716
+ {
1717
+ code: 6012;
1718
+ name: 'MintTooLarge';
1719
+ msg: 'Minted amount greater than u64::MAX';
1720
+ },
1721
+ {
1722
+ code: 6013;
1723
+ name: 'SplTokenSupplyMismatch';
1724
+ msg: 'SplTokenSupplyMismatch';
1725
+ },
1726
+ {
1727
+ code: 6014;
1728
+ name: 'HeapMemoryCheckFailed';
1729
+ msg: 'HeapMemoryCheckFailed';
1730
+ },
1731
+ {
1732
+ code: 6015;
1733
+ name: 'InstructionNotCallable';
1734
+ msg: 'The instruction is not callable';
1735
+ },
1736
+ {
1737
+ code: 6016;
1738
+ name: 'ArithmeticUnderflow';
1739
+ msg: 'ArithmeticUnderflow';
1740
+ },
1741
+ {
1742
+ code: 6017;
1743
+ name: 'HashToFieldError';
1744
+ msg: 'HashToFieldError';
1745
+ },
1746
+ {
1747
+ code: 6018;
1748
+ name: 'InvalidAuthorityMint';
1749
+ msg: 'Expected the authority to be also a mint authority';
1750
+ },
1751
+ {
1752
+ code: 6019;
1753
+ name: 'InvalidFreezeAuthority';
1754
+ msg: 'Provided authority is not the freeze authority';
1755
+ },
1756
+ {
1757
+ code: 6020;
1758
+ name: 'InvalidDelegateIndex';
1759
+ },
1760
+ {
1761
+ code: 6021;
1762
+ name: 'TokenPoolPdaUndefined';
1763
+ },
1764
+ {
1765
+ code: 6022;
1766
+ name: 'IsTokenPoolPda';
1767
+ msg: 'Compress or decompress recipient is the same account as the token pool pda.';
1768
+ },
1769
+ {
1770
+ code: 6023;
1771
+ name: 'InvalidTokenPoolPda';
1772
+ },
1773
+ {
1774
+ code: 6024;
1775
+ name: 'NoInputTokenAccountsProvided';
1776
+ },
1777
+ {
1778
+ code: 6025;
1779
+ name: 'NoInputsProvided';
1780
+ },
1781
+ {
1782
+ code: 6026;
1783
+ name: 'MintHasNoFreezeAuthority';
1784
+ },
1785
+ {
1786
+ code: 6027;
1787
+ name: 'MintWithInvalidExtension';
1788
+ },
1789
+ {
1790
+ code: 6028;
1791
+ name: 'InsufficientTokenAccountBalance';
1792
+ msg: 'The token account balance is less than the remaining amount.';
1793
+ }
1688
1794
  ];
1689
1795
  };
1690
1796
  declare const IDL: LightCompressedToken;
@@ -1844,9 +1950,7 @@ type PackCompressedTokenAccountsParams = {
1844
1950
  /**
1845
1951
  * Packs Compressed Token Accounts.
1846
1952
  */
1847
- declare function packCompressedTokenAccounts(
1848
- params: PackCompressedTokenAccountsParams,
1849
- ): {
1953
+ declare function packCompressedTokenAccounts(params: PackCompressedTokenAccountsParams): {
1850
1954
  inputTokenDataWithContext: InputTokenDataWithContext$1[];
1851
1955
  remainingAccountMetas: AccountMeta[];
1852
1956
  packedOutputTokenData: PackedTokenTransferOutputData[];
@@ -1887,6 +1991,10 @@ type CompressParams = {
1887
1991
  * public state tree if unspecified.
1888
1992
  */
1889
1993
  outputStateTree?: PublicKey;
1994
+ /**
1995
+ * Optional: The token program ID. Default: SPL Token Program ID
1996
+ */
1997
+ tokenProgramId?: PublicKey;
1890
1998
  };
1891
1999
  type CompressSplTokenAccountParams = {
1892
2000
  /**
@@ -1913,6 +2021,10 @@ type CompressSplTokenAccountParams = {
1913
2021
  * The state tree that the compressed token account should be inserted into.
1914
2022
  */
1915
2023
  outputStateTree: PublicKey;
2024
+ /**
2025
+ * Optional: The token program ID. Default: SPL Token Program ID
2026
+ */
2027
+ tokenProgramId?: PublicKey;
1916
2028
  };
1917
2029
  type DecompressParams = {
1918
2030
  /**
@@ -1946,6 +2058,10 @@ type DecompressParams = {
1946
2058
  * Defaults to a public state tree if unspecified.
1947
2059
  */
1948
2060
  outputStateTree?: PublicKey;
2061
+ /**
2062
+ * Optional: The token program ID. Default: SPL Token Program ID
2063
+ */
2064
+ tokenProgramId?: PublicKey;
1949
2065
  };
1950
2066
  type TransferParams = {
1951
2067
  /**
@@ -2010,6 +2126,14 @@ type CreateMintParams = {
2010
2126
  * lamport amount for mint account rent exemption
2011
2127
  */
2012
2128
  rentExemptBalance: number;
2129
+ /**
2130
+ * Optional: The token program ID. Default: SPL Token Program ID
2131
+ */
2132
+ tokenProgramId?: PublicKey;
2133
+ /**
2134
+ * Optional: Mint size to use, defaults to MINT_SIZE
2135
+ */
2136
+ mintSize?: number;
2013
2137
  };
2014
2138
  /**
2015
2139
  * Parameters for merging compressed token accounts
@@ -2073,6 +2197,10 @@ type MintToParams = {
2073
2197
  * tree if unspecified.
2074
2198
  */
2075
2199
  merkleTree?: PublicKey;
2200
+ /**
2201
+ * Optional: The token program ID. Default: SPL Token Program ID
2202
+ */
2203
+ tokenProgramId?: PublicKey;
2076
2204
  };
2077
2205
  /**
2078
2206
  * Register an existing SPL mint account to the compressed token program
@@ -2083,6 +2211,10 @@ type RegisterMintParams = {
2083
2211
  feePayer: PublicKey;
2084
2212
  /** Mint public key */
2085
2213
  mint: PublicKey;
2214
+ /**
2215
+ * Optional: The token program ID. Default: SPL Token Program ID
2216
+ */
2217
+ tokenProgramId?: PublicKey;
2086
2218
  };
2087
2219
  /**
2088
2220
  * Mint from existing SPL mint to compressed token accounts
@@ -2117,6 +2249,10 @@ type ApproveAndMintToParams = {
2117
2249
  * tree if unspecified.
2118
2250
  */
2119
2251
  merkleTree?: PublicKey;
2252
+ /**
2253
+ * Optional: The token program ID. Default: SPL Token Program ID
2254
+ */
2255
+ tokenProgramId?: PublicKey;
2120
2256
  };
2121
2257
  type CreateTokenProgramLookupTableParams = {
2122
2258
  /**
@@ -2151,9 +2287,7 @@ declare const validateSameTokenOwner: (accounts: ParsedTokenAccount[]) => void;
2151
2287
  /**
2152
2288
  * Parse compressed token accounts to get the mint, current owner and delegate.
2153
2289
  */
2154
- declare const parseTokenData: (
2155
- compressedTokenAccounts: ParsedTokenAccount[],
2156
- ) => {
2290
+ declare const parseTokenData: (compressedTokenAccounts: ParsedTokenAccount[]) => {
2157
2291
  mint: PublicKey;
2158
2292
  currentOwner: PublicKey;
2159
2293
  delegate: PublicKey | null;
@@ -2166,11 +2300,7 @@ declare const parseTokenData: (
2166
2300
  * @returns Output token data for the transfer
2167
2301
  * instruction
2168
2302
  */
2169
- declare function createTransferOutputState(
2170
- inputCompressedTokenAccounts: ParsedTokenAccount[],
2171
- toAddress: PublicKey,
2172
- amount: number | BN,
2173
- ): TokenTransferOutputData$1[];
2303
+ declare function createTransferOutputState(inputCompressedTokenAccounts: ParsedTokenAccount[], toAddress: PublicKey, amount: number | BN): TokenTransferOutputData$1[];
2174
2304
  /**
2175
2305
  * Create the output state for a compress transaction.
2176
2306
  * @param inputCompressedTokenAccounts Input state
@@ -2178,10 +2308,7 @@ declare function createTransferOutputState(
2178
2308
  * @returns Output token data for the compress
2179
2309
  * instruction
2180
2310
  */
2181
- declare function createDecompressOutputState(
2182
- inputCompressedTokenAccounts: ParsedTokenAccount[],
2183
- amount: number | BN,
2184
- ): TokenTransferOutputData$1[];
2311
+ declare function createDecompressOutputState(inputCompressedTokenAccounts: ParsedTokenAccount[], amount: number | BN): TokenTransferOutputData$1[];
2185
2312
  declare class CompressedTokenProgram {
2186
2313
  /**
2187
2314
  * @internal
@@ -2213,26 +2340,20 @@ declare class CompressedTokenProgram {
2213
2340
  /**
2214
2341
  * Construct createMint instruction for compressed tokens
2215
2342
  */
2216
- static createMint(
2217
- params: CreateMintParams,
2218
- ): Promise<TransactionInstruction[]>;
2343
+ static createMint(params: CreateMintParams): Promise<TransactionInstruction[]>;
2219
2344
  /**
2220
2345
  * Enable compression for an existing SPL mint, creating an omnibus account.
2221
2346
  * For new mints, use `CompressedTokenProgram.createMint`.
2222
2347
  */
2223
- static createTokenPool(
2224
- params: RegisterMintParams,
2225
- ): Promise<TransactionInstruction>;
2348
+ static createTokenPool(params: RegisterMintParams): Promise<TransactionInstruction>;
2226
2349
  /**
2227
2350
  * Construct mintTo instruction for compressed tokens
2228
2351
  */
2229
2352
  static mintTo(params: MintToParams): Promise<TransactionInstruction>;
2230
2353
  /**
2231
- * Mint tokens from registed SPL mint account to a compressed account
2354
+ * Mint tokens from registered SPL mint account to a compressed account
2232
2355
  */
2233
- static approveAndMintTo(
2234
- params: ApproveAndMintToParams,
2235
- ): Promise<TransactionInstruction[]>;
2356
+ static approveAndMintTo(params: ApproveAndMintToParams): Promise<TransactionInstruction[]>;
2236
2357
  /**
2237
2358
  * Construct transfer instruction for compressed tokens
2238
2359
  */
@@ -2240,9 +2361,7 @@ declare class CompressedTokenProgram {
2240
2361
  /**
2241
2362
  * Create lookup table instructions for the token program's default accounts.
2242
2363
  */
2243
- static createTokenProgramLookupTable(
2244
- params: CreateTokenProgramLookupTableParams,
2245
- ): Promise<{
2364
+ static createTokenProgramLookupTable(params: CreateTokenProgramLookupTableParams): Promise<{
2246
2365
  instructions: TransactionInstruction[];
2247
2366
  address: PublicKey;
2248
2367
  }>;
@@ -2254,15 +2373,10 @@ declare class CompressedTokenProgram {
2254
2373
  /**
2255
2374
  * Construct decompress instruction
2256
2375
  */
2257
- static decompress(
2258
- params: DecompressParams,
2259
- ): Promise<TransactionInstruction>;
2260
- static mergeTokenAccounts(
2261
- params: MergeTokenAccountsParams,
2262
- ): Promise<TransactionInstruction[]>;
2263
- static compressSplTokenAccount(
2264
- params: CompressSplTokenAccountParams,
2265
- ): Promise<TransactionInstruction>;
2376
+ static decompress(params: DecompressParams): Promise<TransactionInstruction>;
2377
+ static mergeTokenAccounts(params: MergeTokenAccountsParams): Promise<TransactionInstruction[]>;
2378
+ static compressSplTokenAccount(params: CompressSplTokenAccountParams): Promise<TransactionInstruction>;
2379
+ static get_mint_program_id(mint: PublicKey, connection: Connection): Promise<PublicKey | undefined>;
2266
2380
  }
2267
2381
 
2268
2382
  /**
@@ -2280,16 +2394,7 @@ declare class CompressedTokenProgram {
2280
2394
  *
2281
2395
  * @return Signature of the confirmed transaction
2282
2396
  */
2283
- declare function approveAndMintTo(
2284
- rpc: Rpc,
2285
- payer: Signer,
2286
- mint: PublicKey,
2287
- destination: PublicKey,
2288
- authority: Signer,
2289
- amount: number | BN,
2290
- merkleTree?: PublicKey,
2291
- confirmOptions?: ConfirmOptions,
2292
- ): Promise<TransactionSignature>;
2397
+ declare function approveAndMintTo(rpc: Rpc, payer: Signer, mint: PublicKey, destination: PublicKey, authority: Signer, amount: number | BN, merkleTree?: PublicKey, confirmOptions?: ConfirmOptions, tokenProgramId?: PublicKey): Promise<TransactionSignature>;
2293
2398
 
2294
2399
  /**
2295
2400
  * Compress SPL tokens
@@ -2309,17 +2414,7 @@ declare function approveAndMintTo(
2309
2414
  *
2310
2415
  * @return Signature of the confirmed transaction
2311
2416
  */
2312
- declare function compress(
2313
- rpc: Rpc,
2314
- payer: Signer,
2315
- mint: PublicKey,
2316
- amount: number | BN | number[] | BN[],
2317
- owner: Signer,
2318
- sourceTokenAccount: PublicKey,
2319
- toAddress: PublicKey | Array<PublicKey>,
2320
- merkleTree?: PublicKey,
2321
- confirmOptions?: ConfirmOptions,
2322
- ): Promise<TransactionSignature>;
2417
+ declare function compress(rpc: Rpc, payer: Signer, mint: PublicKey, amount: number | BN | number[] | BN[], owner: Signer, sourceTokenAccount: PublicKey, toAddress: PublicKey | Array<PublicKey>, merkleTree?: PublicKey, confirmOptions?: ConfirmOptions, tokenProgramId?: PublicKey): Promise<TransactionSignature>;
2323
2418
 
2324
2419
  /**
2325
2420
  * Decompress compressed tokens
@@ -2339,16 +2434,7 @@ declare function compress(
2339
2434
  *
2340
2435
  * @return Signature of the confirmed transaction
2341
2436
  */
2342
- declare function decompress(
2343
- rpc: Rpc,
2344
- payer: Signer,
2345
- mint: PublicKey,
2346
- amount: number | BN,
2347
- owner: Signer,
2348
- toAddress: PublicKey,
2349
- merkleTree?: PublicKey,
2350
- confirmOptions?: ConfirmOptions,
2351
- ): Promise<TransactionSignature>;
2437
+ declare function decompress(rpc: Rpc, payer: Signer, mint: PublicKey, amount: number | BN, owner: Signer, toAddress: PublicKey, merkleTree?: PublicKey, confirmOptions?: ConfirmOptions, tokenProgramId?: PublicKey): Promise<TransactionSignature>;
2352
2438
 
2353
2439
  /**
2354
2440
  * Create and initialize a new compressed token mint
@@ -2359,17 +2445,11 @@ declare function decompress(
2359
2445
  * @param decimals Location of the decimal place
2360
2446
  * @param keypair Optional keypair, defaulting to a new random one
2361
2447
  * @param confirmOptions Options for confirming the transaction
2448
+ * @param isToken22 Whether to create a Token 2022 mint. Defaults to false.
2362
2449
  *
2363
2450
  * @return Address of the new mint and the transaction signature
2364
2451
  */
2365
- declare function createMint(
2366
- rpc: Rpc,
2367
- payer: Signer,
2368
- mintAuthority: PublicKey,
2369
- decimals: number,
2370
- keypair?: Keypair,
2371
- confirmOptions?: ConfirmOptions,
2372
- ): Promise<{
2452
+ declare function createMint(rpc: Rpc, payer: Signer, mintAuthority: PublicKey, decimals: number, keypair?: Keypair, confirmOptions?: ConfirmOptions, isToken22?: boolean): Promise<{
2373
2453
  mint: PublicKey;
2374
2454
  transactionSignature: TransactionSignature;
2375
2455
  }>;
@@ -2391,16 +2471,7 @@ declare function createMint(
2391
2471
  *
2392
2472
  * @return Signature of the confirmed transaction
2393
2473
  */
2394
- declare function mintTo(
2395
- rpc: Rpc,
2396
- payer: Signer,
2397
- mint: PublicKey,
2398
- destination: PublicKey | PublicKey[],
2399
- authority: Signer,
2400
- amount: number | BN | number[] | BN[],
2401
- merkleTree?: PublicKey,
2402
- confirmOptions?: ConfirmOptions,
2403
- ): Promise<TransactionSignature>;
2474
+ declare function mintTo(rpc: Rpc, payer: Signer, mint: PublicKey, destination: PublicKey | PublicKey[], authority: Signer, amount: number | BN | number[] | BN[], merkleTree?: PublicKey, confirmOptions?: ConfirmOptions, tokenProgramId?: PublicKey): Promise<TransactionSignature>;
2404
2475
 
2405
2476
  /**
2406
2477
  * Merge multiple compressed token accounts for a given mint into a single
@@ -2415,14 +2486,7 @@ declare function mintTo(
2415
2486
  *
2416
2487
  * @return Array of transaction signatures
2417
2488
  */
2418
- declare function mergeTokenAccounts(
2419
- rpc: Rpc,
2420
- payer: Signer,
2421
- mint: PublicKey,
2422
- owner: Signer,
2423
- merkleTree?: PublicKey,
2424
- confirmOptions?: ConfirmOptions,
2425
- ): Promise<TransactionSignature>;
2489
+ declare function mergeTokenAccounts(rpc: Rpc, payer: Signer, mint: PublicKey, owner: Signer, merkleTree?: PublicKey, confirmOptions?: ConfirmOptions): Promise<TransactionSignature>;
2426
2490
 
2427
2491
  /**
2428
2492
  * Register an existing mint with the CompressedToken program
@@ -2435,12 +2499,7 @@ declare function mergeTokenAccounts(
2435
2499
  *
2436
2500
  * @return transaction signature
2437
2501
  */
2438
- declare function createTokenPool(
2439
- rpc: Rpc,
2440
- payer: Signer,
2441
- mintAddress: PublicKey,
2442
- confirmOptions?: ConfirmOptions,
2443
- ): Promise<TransactionSignature>;
2502
+ declare function createTokenPool(rpc: Rpc, payer: Signer, mint: PublicKey, confirmOptions?: ConfirmOptions, tokenProgramId?: PublicKey): Promise<TransactionSignature>;
2444
2503
 
2445
2504
  /**
2446
2505
  * Transfer compressed tokens from one owner to another
@@ -2459,16 +2518,7 @@ declare function createTokenPool(
2459
2518
  *
2460
2519
  * @return Signature of the confirmed transaction
2461
2520
  */
2462
- declare function transfer(
2463
- rpc: Rpc,
2464
- payer: Signer,
2465
- mint: PublicKey,
2466
- amount: number | BN,
2467
- owner: Signer,
2468
- toAddress: PublicKey,
2469
- merkleTree?: PublicKey,
2470
- confirmOptions?: ConfirmOptions,
2471
- ): Promise<TransactionSignature>;
2521
+ declare function transfer(rpc: Rpc, payer: Signer, mint: PublicKey, amount: number | BN, owner: Signer, toAddress: PublicKey, merkleTree?: PublicKey, confirmOptions?: ConfirmOptions): Promise<TransactionSignature>;
2472
2522
  /**
2473
2523
  * Selects the minimal number of compressed token accounts for a transfer.
2474
2524
  *
@@ -2476,13 +2526,10 @@ declare function transfer(
2476
2526
  * 2. Accumulates the amount until it is greater than or equal to the transfer
2477
2527
  * amount
2478
2528
  */
2479
- declare function selectMinCompressedTokenAccountsForTransfer(
2480
- accounts: ParsedTokenAccount[],
2481
- transferAmount: BN,
2482
- ): [
2529
+ declare function selectMinCompressedTokenAccountsForTransfer(accounts: ParsedTokenAccount[], transferAmount: BN): [
2483
2530
  selectedAccounts: ParsedTokenAccount[],
2484
2531
  total: BN,
2485
- totalLamports: BN | null,
2532
+ totalLamports: BN | null
2486
2533
  ];
2487
2534
 
2488
2535
  /**
@@ -2498,13 +2545,7 @@ declare function selectMinCompressedTokenAccountsForTransfer(
2498
2545
  *
2499
2546
  * @return Transaction signatures and the address of the created lookup table
2500
2547
  */
2501
- declare function createTokenProgramLookupTable(
2502
- rpc: Rpc,
2503
- payer: Signer,
2504
- authority: Signer,
2505
- mints?: PublicKey[],
2506
- additionalAccounts?: PublicKey[],
2507
- ): Promise<{
2548
+ declare function createTokenProgramLookupTable(rpc: Rpc, payer: Signer, authority: Signer, mints?: PublicKey[], additionalAccounts?: PublicKey[]): Promise<{
2508
2549
  txIds: TransactionSignature[];
2509
2550
  address: PublicKey;
2510
2551
  }>;
@@ -2523,55 +2564,6 @@ declare function createTokenProgramLookupTable(
2523
2564
  *
2524
2565
  * @return Signature of the confirmed transaction
2525
2566
  */
2526
- declare function compressSplTokenAccount(
2527
- rpc: Rpc,
2528
- payer: Signer,
2529
- mint: PublicKey,
2530
- owner: Signer,
2531
- tokenAccount: PublicKey,
2532
- outputStateTree: PublicKey,
2533
- remainingAmount?: BN,
2534
- confirmOptions?: ConfirmOptions,
2535
- ): Promise<TransactionSignature>;
2567
+ declare function compressSplTokenAccount(rpc: Rpc, payer: Signer, mint: PublicKey, owner: Signer, tokenAccount: PublicKey, outputStateTree: PublicKey, remainingAmount?: BN, confirmOptions?: ConfirmOptions, tokenProgramId?: PublicKey): Promise<TransactionSignature>;
2536
2568
 
2537
- export {
2538
- type ApproveAndMintToParams,
2539
- CPI_AUTHORITY_SEED,
2540
- type CompressParams,
2541
- type CompressSplTokenAccountParams,
2542
- type CompressedTokenInstructionDataInvoke,
2543
- CompressedTokenProgram,
2544
- type CreateMintParams,
2545
- type CreateTokenProgramLookupTableParams,
2546
- type DecompressParams,
2547
- IDL,
2548
- type InputTokenDataWithContext,
2549
- type LightCompressedToken,
2550
- type MergeTokenAccountsParams,
2551
- type MintToParams,
2552
- POOL_SEED,
2553
- type PackCompressedTokenAccountsParams,
2554
- type PackedTokenTransferOutputData,
2555
- type RegisterMintParams,
2556
- SPL_TOKEN_MINT_RENT_EXEMPT_BALANCE,
2557
- type TokenData,
2558
- type TokenTransferOutputData,
2559
- type TransferParams,
2560
- approveAndMintTo,
2561
- compress,
2562
- compressSplTokenAccount,
2563
- createDecompressOutputState,
2564
- createMint,
2565
- createTokenPool,
2566
- createTokenProgramLookupTable,
2567
- createTransferOutputState,
2568
- decompress,
2569
- mergeTokenAccounts,
2570
- mintTo,
2571
- packCompressedTokenAccounts,
2572
- parseTokenData,
2573
- selectMinCompressedTokenAccountsForTransfer,
2574
- sumUpTokenAmount,
2575
- transfer,
2576
- validateSameTokenOwner,
2577
- };
2569
+ export { type ApproveAndMintToParams, CPI_AUTHORITY_SEED, type CompressParams, type CompressSplTokenAccountParams, type CompressedTokenInstructionDataInvoke, CompressedTokenProgram, type CreateMintParams, type CreateTokenProgramLookupTableParams, type DecompressParams, IDL, type InputTokenDataWithContext, type LightCompressedToken, type MergeTokenAccountsParams, type MintToParams, POOL_SEED, type PackCompressedTokenAccountsParams, type PackedTokenTransferOutputData, type RegisterMintParams, SPL_TOKEN_MINT_RENT_EXEMPT_BALANCE, type TokenData, type TokenTransferOutputData, type TransferParams, approveAndMintTo, compress, compressSplTokenAccount, createDecompressOutputState, createMint, createTokenPool, createTokenProgramLookupTable, createTransferOutputState, decompress, mergeTokenAccounts, mintTo, packCompressedTokenAccounts, parseTokenData, selectMinCompressedTokenAccountsForTransfer, sumUpTokenAmount, transfer, validateSameTokenOwner };