@xswap-link/sdk 0.10.5 → 0.10.7

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 (54) hide show
  1. package/.github/workflows/main.yml +1 -1
  2. package/CHANGELOG.md +13 -0
  3. package/dist/index.d.mts +46 -12
  4. package/dist/index.d.ts +46 -12
  5. package/dist/index.global.js +5290 -261
  6. package/dist/index.js +9 -9
  7. package/dist/index.mjs +9 -9
  8. package/package.json +13 -2
  9. package/src/assets/icons/StarsIcon.tsx +18 -0
  10. package/src/assets/icons/index.ts +1 -0
  11. package/src/components/AllWalletsConfig/index.tsx +40 -0
  12. package/src/components/Swap/HistoryView/index.tsx +28 -5
  13. package/src/components/Swap/SwapView/ConfirmationView/TxOverview/index.tsx +73 -47
  14. package/src/components/Swap/SwapView/SwapButton/index.tsx +45 -10
  15. package/src/components/Swap/SwapView/SwapPanel/TokenPanel/TokenPicker/TokenItem/index.tsx +20 -2
  16. package/src/components/Swap/SwapView/SwapPanel/TokenPanel/TokenPicker/index.tsx +124 -4
  17. package/src/components/Swap/SwapView/SwapPanel/WalletPanel/index.tsx +71 -0
  18. package/src/components/Swap/SwapView/SwapPanel/index.tsx +4 -0
  19. package/src/components/Swap/SwapView/WalletPicker/index.tsx +63 -28
  20. package/src/components/Swap/index.tsx +2 -2
  21. package/src/components/TxConfigForm/index.tsx +12 -34
  22. package/src/components/TxDataCard/TxDataCardUI/index.tsx +16 -10
  23. package/src/components/TxDataCard/index.tsx +1 -0
  24. package/src/components/TxWidgetWC/index.tsx +4 -0
  25. package/src/components/TxWidgetWCWrapped/index.tsx +2 -0
  26. package/src/components/index.ts +1 -0
  27. package/src/config/wagmiConfig.ts +1 -6
  28. package/src/constants/index.ts +14 -0
  29. package/src/context/HistoryProvider.tsx +121 -25
  30. package/src/context/SwapProvider.tsx +104 -48
  31. package/src/context/TransactionProvider.tsx +60 -1
  32. package/src/context/TxUIWrapper.tsx +187 -71
  33. package/src/context/WalletProvider.tsx +108 -0
  34. package/src/contracts/addresses.ts +4 -0
  35. package/src/contracts/idl/jupiter.ts +2879 -0
  36. package/src/models/Ecosystem.ts +1 -0
  37. package/src/models/Route.ts +14 -3
  38. package/src/models/SolanaTransaction.ts +38 -0
  39. package/src/models/SolanaWeb3Network.ts +5 -0
  40. package/src/models/TxUIWrapper.ts +8 -4
  41. package/src/models/index.ts +1 -0
  42. package/src/models/payloads/GetBalancesPayload.ts +2 -1
  43. package/src/models/payloads/GetSolanaRoutePayload.ts +8 -0
  44. package/src/models/payloads/ModalIntegrationPayload.ts +1 -0
  45. package/src/models/payloads/WidgetIntegrationPayload.ts +1 -0
  46. package/src/models/payloads/index.ts +1 -0
  47. package/src/services/api.ts +21 -3
  48. package/src/services/integrations/transactions.ts +2 -0
  49. package/src/services/solana/jupiter/extract-swap-data.ts +183 -0
  50. package/src/services/solana/jupiter/get-events.ts +37 -0
  51. package/src/services/solana/jupiter/instruction-parser.ts +217 -0
  52. package/src/services/solana/jupiter/utils.ts +37 -0
  53. package/src/utils/strings.ts +16 -0
  54. package/test/context/SwapProvider.test.tsx +6 -9
@@ -0,0 +1,2879 @@
1
+ export type Jupiter = {
2
+ version: "0.1.0";
3
+ name: "jupiter";
4
+ instructions: [
5
+ {
6
+ name: "route";
7
+ docs: ["route_plan Topologically sorted trade DAG"];
8
+ accounts: [
9
+ {
10
+ name: "tokenProgram";
11
+ isMut: false;
12
+ isSigner: false;
13
+ },
14
+ {
15
+ name: "userTransferAuthority";
16
+ isMut: false;
17
+ isSigner: true;
18
+ },
19
+ {
20
+ name: "userSourceTokenAccount";
21
+ isMut: true;
22
+ isSigner: false;
23
+ },
24
+ {
25
+ name: "userDestinationTokenAccount";
26
+ isMut: true;
27
+ isSigner: false;
28
+ },
29
+ {
30
+ name: "destinationTokenAccount";
31
+ isMut: true;
32
+ isSigner: false;
33
+ isOptional: true;
34
+ },
35
+ {
36
+ name: "destinationMint";
37
+ isMut: false;
38
+ isSigner: false;
39
+ },
40
+ {
41
+ name: "platformFeeAccount";
42
+ isMut: true;
43
+ isSigner: false;
44
+ isOptional: true;
45
+ },
46
+ ];
47
+ args: [
48
+ {
49
+ name: "routePlan";
50
+ type: {
51
+ vec: {
52
+ defined: "RoutePlanStep";
53
+ };
54
+ };
55
+ },
56
+ {
57
+ name: "inAmount";
58
+ type: "u64";
59
+ },
60
+ {
61
+ name: "quotedOutAmount";
62
+ type: "u64";
63
+ },
64
+ {
65
+ name: "slippageBps";
66
+ type: "u16";
67
+ },
68
+ {
69
+ name: "platformFeeBps";
70
+ type: "u8";
71
+ },
72
+ ];
73
+ returns: "u64";
74
+ },
75
+ {
76
+ name: "routeWithTokenLedger";
77
+ accounts: [
78
+ {
79
+ name: "tokenProgram";
80
+ isMut: false;
81
+ isSigner: false;
82
+ },
83
+ {
84
+ name: "userTransferAuthority";
85
+ isMut: false;
86
+ isSigner: true;
87
+ },
88
+ {
89
+ name: "userSourceTokenAccount";
90
+ isMut: true;
91
+ isSigner: false;
92
+ },
93
+ {
94
+ name: "userDestinationTokenAccount";
95
+ isMut: true;
96
+ isSigner: false;
97
+ },
98
+ {
99
+ name: "destinationTokenAccount";
100
+ isMut: true;
101
+ isSigner: false;
102
+ isOptional: true;
103
+ },
104
+ {
105
+ name: "destinationMint";
106
+ isMut: false;
107
+ isSigner: false;
108
+ },
109
+ {
110
+ name: "platformFeeAccount";
111
+ isMut: true;
112
+ isSigner: false;
113
+ isOptional: true;
114
+ },
115
+ {
116
+ name: "tokenLedger";
117
+ isMut: false;
118
+ isSigner: false;
119
+ },
120
+ ];
121
+ args: [
122
+ {
123
+ name: "routePlan";
124
+ type: {
125
+ vec: {
126
+ defined: "RoutePlanStep";
127
+ };
128
+ };
129
+ },
130
+ {
131
+ name: "quotedOutAmount";
132
+ type: "u64";
133
+ },
134
+ {
135
+ name: "slippageBps";
136
+ type: "u16";
137
+ },
138
+ {
139
+ name: "platformFeeBps";
140
+ type: "u8";
141
+ },
142
+ ];
143
+ returns: "u64";
144
+ },
145
+ {
146
+ name: "sharedAccountsRoute";
147
+ docs: [
148
+ "Route by using program owned token accounts and open orders accounts.",
149
+ ];
150
+ accounts: [
151
+ {
152
+ name: "tokenProgram";
153
+ isMut: false;
154
+ isSigner: false;
155
+ },
156
+ {
157
+ name: "programAuthority";
158
+ isMut: false;
159
+ isSigner: false;
160
+ },
161
+ {
162
+ name: "userTransferAuthority";
163
+ isMut: false;
164
+ isSigner: true;
165
+ },
166
+ {
167
+ name: "sourceTokenAccount";
168
+ isMut: true;
169
+ isSigner: false;
170
+ },
171
+ {
172
+ name: "programSourceTokenAccount";
173
+ isMut: true;
174
+ isSigner: false;
175
+ },
176
+ {
177
+ name: "programDestinationTokenAccount";
178
+ isMut: true;
179
+ isSigner: false;
180
+ },
181
+ {
182
+ name: "destinationTokenAccount";
183
+ isMut: true;
184
+ isSigner: false;
185
+ },
186
+ {
187
+ name: "sourceMint";
188
+ isMut: false;
189
+ isSigner: false;
190
+ },
191
+ {
192
+ name: "destinationMint";
193
+ isMut: false;
194
+ isSigner: false;
195
+ },
196
+ {
197
+ name: "platformFeeAccount";
198
+ isMut: true;
199
+ isSigner: false;
200
+ isOptional: true;
201
+ },
202
+ {
203
+ name: "token2022Program";
204
+ isMut: false;
205
+ isSigner: false;
206
+ isOptional: true;
207
+ },
208
+ ];
209
+ args: [
210
+ {
211
+ name: "id";
212
+ type: "u8";
213
+ },
214
+ {
215
+ name: "routePlan";
216
+ type: {
217
+ vec: {
218
+ defined: "RoutePlanStep";
219
+ };
220
+ };
221
+ },
222
+ {
223
+ name: "inAmount";
224
+ type: "u64";
225
+ },
226
+ {
227
+ name: "quotedOutAmount";
228
+ type: "u64";
229
+ },
230
+ {
231
+ name: "slippageBps";
232
+ type: "u16";
233
+ },
234
+ {
235
+ name: "platformFeeBps";
236
+ type: "u8";
237
+ },
238
+ ];
239
+ returns: "u64";
240
+ },
241
+ {
242
+ name: "sharedAccountsRouteWithTokenLedger";
243
+ accounts: [
244
+ {
245
+ name: "tokenProgram";
246
+ isMut: false;
247
+ isSigner: false;
248
+ },
249
+ {
250
+ name: "programAuthority";
251
+ isMut: false;
252
+ isSigner: false;
253
+ },
254
+ {
255
+ name: "userTransferAuthority";
256
+ isMut: false;
257
+ isSigner: true;
258
+ },
259
+ {
260
+ name: "sourceTokenAccount";
261
+ isMut: true;
262
+ isSigner: false;
263
+ },
264
+ {
265
+ name: "programSourceTokenAccount";
266
+ isMut: true;
267
+ isSigner: false;
268
+ },
269
+ {
270
+ name: "programDestinationTokenAccount";
271
+ isMut: true;
272
+ isSigner: false;
273
+ },
274
+ {
275
+ name: "destinationTokenAccount";
276
+ isMut: true;
277
+ isSigner: false;
278
+ },
279
+ {
280
+ name: "sourceMint";
281
+ isMut: false;
282
+ isSigner: false;
283
+ },
284
+ {
285
+ name: "destinationMint";
286
+ isMut: false;
287
+ isSigner: false;
288
+ },
289
+ {
290
+ name: "platformFeeAccount";
291
+ isMut: true;
292
+ isSigner: false;
293
+ isOptional: true;
294
+ },
295
+ {
296
+ name: "token2022Program";
297
+ isMut: false;
298
+ isSigner: false;
299
+ isOptional: true;
300
+ },
301
+ {
302
+ name: "tokenLedger";
303
+ isMut: false;
304
+ isSigner: false;
305
+ },
306
+ ];
307
+ args: [
308
+ {
309
+ name: "id";
310
+ type: "u8";
311
+ },
312
+ {
313
+ name: "routePlan";
314
+ type: {
315
+ vec: {
316
+ defined: "RoutePlanStep";
317
+ };
318
+ };
319
+ },
320
+ {
321
+ name: "quotedOutAmount";
322
+ type: "u64";
323
+ },
324
+ {
325
+ name: "slippageBps";
326
+ type: "u16";
327
+ },
328
+ {
329
+ name: "platformFeeBps";
330
+ type: "u8";
331
+ },
332
+ ];
333
+ returns: "u64";
334
+ },
335
+ {
336
+ name: "exactOutRoute";
337
+ accounts: [
338
+ {
339
+ name: "tokenProgram";
340
+ isMut: false;
341
+ isSigner: false;
342
+ },
343
+ {
344
+ name: "userTransferAuthority";
345
+ isMut: false;
346
+ isSigner: true;
347
+ },
348
+ {
349
+ name: "userSourceTokenAccount";
350
+ isMut: true;
351
+ isSigner: false;
352
+ },
353
+ {
354
+ name: "userDestinationTokenAccount";
355
+ isMut: true;
356
+ isSigner: false;
357
+ },
358
+ {
359
+ name: "destinationTokenAccount";
360
+ isMut: true;
361
+ isSigner: false;
362
+ isOptional: true;
363
+ },
364
+ {
365
+ name: "sourceMint";
366
+ isMut: false;
367
+ isSigner: false;
368
+ },
369
+ {
370
+ name: "destinationMint";
371
+ isMut: false;
372
+ isSigner: false;
373
+ },
374
+ {
375
+ name: "platformFeeAccount";
376
+ isMut: true;
377
+ isSigner: false;
378
+ isOptional: true;
379
+ },
380
+ {
381
+ name: "token2022Program";
382
+ isMut: false;
383
+ isSigner: false;
384
+ isOptional: true;
385
+ },
386
+ ];
387
+ args: [
388
+ {
389
+ name: "routePlan";
390
+ type: {
391
+ vec: {
392
+ defined: "RoutePlanStep";
393
+ };
394
+ };
395
+ },
396
+ {
397
+ name: "outAmount";
398
+ type: "u64";
399
+ },
400
+ {
401
+ name: "quotedInAmount";
402
+ type: "u64";
403
+ },
404
+ {
405
+ name: "slippageBps";
406
+ type: "u16";
407
+ },
408
+ {
409
+ name: "platformFeeBps";
410
+ type: "u8";
411
+ },
412
+ ];
413
+ returns: "u64";
414
+ },
415
+ {
416
+ name: "sharedAccountsExactOutRoute";
417
+ docs: [
418
+ "Route by using program owned token accounts and open orders accounts.",
419
+ ];
420
+ accounts: [
421
+ {
422
+ name: "tokenProgram";
423
+ isMut: false;
424
+ isSigner: false;
425
+ },
426
+ {
427
+ name: "programAuthority";
428
+ isMut: false;
429
+ isSigner: false;
430
+ },
431
+ {
432
+ name: "userTransferAuthority";
433
+ isMut: false;
434
+ isSigner: true;
435
+ },
436
+ {
437
+ name: "sourceTokenAccount";
438
+ isMut: true;
439
+ isSigner: false;
440
+ },
441
+ {
442
+ name: "programSourceTokenAccount";
443
+ isMut: true;
444
+ isSigner: false;
445
+ },
446
+ {
447
+ name: "programDestinationTokenAccount";
448
+ isMut: true;
449
+ isSigner: false;
450
+ },
451
+ {
452
+ name: "destinationTokenAccount";
453
+ isMut: true;
454
+ isSigner: false;
455
+ },
456
+ {
457
+ name: "sourceMint";
458
+ isMut: false;
459
+ isSigner: false;
460
+ },
461
+ {
462
+ name: "destinationMint";
463
+ isMut: false;
464
+ isSigner: false;
465
+ },
466
+ {
467
+ name: "platformFeeAccount";
468
+ isMut: true;
469
+ isSigner: false;
470
+ isOptional: true;
471
+ },
472
+ {
473
+ name: "token2022Program";
474
+ isMut: false;
475
+ isSigner: false;
476
+ isOptional: true;
477
+ },
478
+ ];
479
+ args: [
480
+ {
481
+ name: "id";
482
+ type: "u8";
483
+ },
484
+ {
485
+ name: "routePlan";
486
+ type: {
487
+ vec: {
488
+ defined: "RoutePlanStep";
489
+ };
490
+ };
491
+ },
492
+ {
493
+ name: "outAmount";
494
+ type: "u64";
495
+ },
496
+ {
497
+ name: "quotedInAmount";
498
+ type: "u64";
499
+ },
500
+ {
501
+ name: "slippageBps";
502
+ type: "u16";
503
+ },
504
+ {
505
+ name: "platformFeeBps";
506
+ type: "u8";
507
+ },
508
+ ];
509
+ returns: "u64";
510
+ },
511
+ {
512
+ name: "setTokenLedger";
513
+ accounts: [
514
+ {
515
+ name: "tokenLedger";
516
+ isMut: true;
517
+ isSigner: false;
518
+ },
519
+ {
520
+ name: "tokenAccount";
521
+ isMut: false;
522
+ isSigner: false;
523
+ },
524
+ ];
525
+ args: [];
526
+ },
527
+ {
528
+ name: "createOpenOrders";
529
+ accounts: [
530
+ {
531
+ name: "openOrders";
532
+ isMut: true;
533
+ isSigner: false;
534
+ },
535
+ {
536
+ name: "payer";
537
+ isMut: true;
538
+ isSigner: true;
539
+ },
540
+ {
541
+ name: "dexProgram";
542
+ isMut: false;
543
+ isSigner: false;
544
+ },
545
+ {
546
+ name: "systemProgram";
547
+ isMut: false;
548
+ isSigner: false;
549
+ },
550
+ {
551
+ name: "rent";
552
+ isMut: false;
553
+ isSigner: false;
554
+ },
555
+ {
556
+ name: "market";
557
+ isMut: false;
558
+ isSigner: false;
559
+ },
560
+ ];
561
+ args: [];
562
+ },
563
+ {
564
+ name: "createTokenAccount";
565
+ accounts: [
566
+ {
567
+ name: "tokenAccount";
568
+ isMut: true;
569
+ isSigner: false;
570
+ },
571
+ {
572
+ name: "user";
573
+ isMut: true;
574
+ isSigner: true;
575
+ },
576
+ {
577
+ name: "mint";
578
+ isMut: false;
579
+ isSigner: false;
580
+ },
581
+ {
582
+ name: "tokenProgram";
583
+ isMut: false;
584
+ isSigner: false;
585
+ },
586
+ {
587
+ name: "systemProgram";
588
+ isMut: false;
589
+ isSigner: false;
590
+ },
591
+ ];
592
+ args: [
593
+ {
594
+ name: "bump";
595
+ type: "u8";
596
+ },
597
+ ];
598
+ },
599
+ {
600
+ name: "createProgramOpenOrders";
601
+ accounts: [
602
+ {
603
+ name: "openOrders";
604
+ isMut: true;
605
+ isSigner: false;
606
+ },
607
+ {
608
+ name: "payer";
609
+ isMut: true;
610
+ isSigner: true;
611
+ },
612
+ {
613
+ name: "programAuthority";
614
+ isMut: false;
615
+ isSigner: false;
616
+ },
617
+ {
618
+ name: "dexProgram";
619
+ isMut: false;
620
+ isSigner: false;
621
+ },
622
+ {
623
+ name: "systemProgram";
624
+ isMut: false;
625
+ isSigner: false;
626
+ },
627
+ {
628
+ name: "rent";
629
+ isMut: false;
630
+ isSigner: false;
631
+ },
632
+ {
633
+ name: "market";
634
+ isMut: false;
635
+ isSigner: false;
636
+ },
637
+ ];
638
+ args: [
639
+ {
640
+ name: "id";
641
+ type: "u8";
642
+ },
643
+ ];
644
+ },
645
+ {
646
+ name: "claim";
647
+ accounts: [
648
+ {
649
+ name: "wallet";
650
+ isMut: true;
651
+ isSigner: false;
652
+ },
653
+ {
654
+ name: "programAuthority";
655
+ isMut: true;
656
+ isSigner: false;
657
+ },
658
+ {
659
+ name: "systemProgram";
660
+ isMut: false;
661
+ isSigner: false;
662
+ },
663
+ ];
664
+ args: [
665
+ {
666
+ name: "id";
667
+ type: "u8";
668
+ },
669
+ ];
670
+ returns: "u64";
671
+ },
672
+ {
673
+ name: "claimToken";
674
+ accounts: [
675
+ {
676
+ name: "payer";
677
+ isMut: true;
678
+ isSigner: true;
679
+ },
680
+ {
681
+ name: "wallet";
682
+ isMut: false;
683
+ isSigner: false;
684
+ },
685
+ {
686
+ name: "programAuthority";
687
+ isMut: false;
688
+ isSigner: false;
689
+ },
690
+ {
691
+ name: "programTokenAccount";
692
+ isMut: true;
693
+ isSigner: false;
694
+ },
695
+ {
696
+ name: "destinationTokenAccount";
697
+ isMut: true;
698
+ isSigner: false;
699
+ },
700
+ {
701
+ name: "mint";
702
+ isMut: false;
703
+ isSigner: false;
704
+ },
705
+ {
706
+ name: "associatedTokenTokenProgram";
707
+ isMut: false;
708
+ isSigner: false;
709
+ },
710
+ {
711
+ name: "associatedTokenProgram";
712
+ isMut: false;
713
+ isSigner: false;
714
+ },
715
+ {
716
+ name: "systemProgram";
717
+ isMut: false;
718
+ isSigner: false;
719
+ },
720
+ ];
721
+ args: [
722
+ {
723
+ name: "id";
724
+ type: "u8";
725
+ },
726
+ ];
727
+ returns: "u64";
728
+ },
729
+ {
730
+ name: "createTokenLedger";
731
+ accounts: [
732
+ {
733
+ name: "tokenLedger";
734
+ isMut: true;
735
+ isSigner: true;
736
+ },
737
+ {
738
+ name: "payer";
739
+ isMut: true;
740
+ isSigner: true;
741
+ },
742
+ {
743
+ name: "systemProgram";
744
+ isMut: false;
745
+ isSigner: false;
746
+ },
747
+ ];
748
+ args: [];
749
+ },
750
+ ];
751
+ accounts: [
752
+ {
753
+ name: "TokenLedger";
754
+ type: {
755
+ kind: "struct";
756
+ fields: [
757
+ {
758
+ name: "tokenAccount";
759
+ type: "publicKey";
760
+ },
761
+ {
762
+ name: "amount";
763
+ type: "u64";
764
+ },
765
+ ];
766
+ };
767
+ },
768
+ ];
769
+ types: [
770
+ {
771
+ name: "AmountWithSlippage";
772
+ type: {
773
+ kind: "struct";
774
+ fields: [
775
+ {
776
+ name: "amount";
777
+ type: "u64";
778
+ },
779
+ {
780
+ name: "slippageBps";
781
+ type: "u16";
782
+ },
783
+ ];
784
+ };
785
+ },
786
+ {
787
+ name: "RoutePlanStep";
788
+ type: {
789
+ kind: "struct";
790
+ fields: [
791
+ {
792
+ name: "swap";
793
+ type: {
794
+ defined: "Swap";
795
+ };
796
+ },
797
+ {
798
+ name: "percent";
799
+ type: "u8";
800
+ },
801
+ {
802
+ name: "inputIndex";
803
+ type: "u8";
804
+ },
805
+ {
806
+ name: "outputIndex";
807
+ type: "u8";
808
+ },
809
+ ];
810
+ };
811
+ },
812
+ {
813
+ name: "PlatformFeeType";
814
+ type: {
815
+ kind: "enum";
816
+ variants: [
817
+ {
818
+ name: "SourceMint";
819
+ fields: [
820
+ {
821
+ name: "mint";
822
+ type: "publicKey";
823
+ },
824
+ ];
825
+ },
826
+ {
827
+ name: "DestinationMint";
828
+ fields: [
829
+ {
830
+ name: "mint";
831
+ type: "publicKey";
832
+ },
833
+ ];
834
+ },
835
+ {
836
+ name: "Zero";
837
+ },
838
+ ];
839
+ };
840
+ },
841
+ {
842
+ name: "Side";
843
+ type: {
844
+ kind: "enum";
845
+ variants: [
846
+ {
847
+ name: "Bid";
848
+ },
849
+ {
850
+ name: "Ask";
851
+ },
852
+ ];
853
+ };
854
+ },
855
+ {
856
+ name: "Swap";
857
+ type: {
858
+ kind: "enum";
859
+ variants: [
860
+ {
861
+ name: "Saber";
862
+ },
863
+ {
864
+ name: "SaberAddDecimalsDeposit";
865
+ },
866
+ {
867
+ name: "SaberAddDecimalsWithdraw";
868
+ },
869
+ {
870
+ name: "TokenSwap";
871
+ },
872
+ {
873
+ name: "Sencha";
874
+ },
875
+ {
876
+ name: "Step";
877
+ },
878
+ {
879
+ name: "Cropper";
880
+ },
881
+ {
882
+ name: "Raydium";
883
+ },
884
+ {
885
+ name: "Crema";
886
+ fields: [
887
+ {
888
+ name: "aToB";
889
+ type: "bool";
890
+ },
891
+ ];
892
+ },
893
+ {
894
+ name: "Lifinity";
895
+ },
896
+ {
897
+ name: "Mercurial";
898
+ },
899
+ {
900
+ name: "Cykura";
901
+ },
902
+ {
903
+ name: "Serum";
904
+ fields: [
905
+ {
906
+ name: "side";
907
+ type: {
908
+ defined: "Side";
909
+ };
910
+ },
911
+ ];
912
+ },
913
+ {
914
+ name: "MarinadeDeposit";
915
+ },
916
+ {
917
+ name: "MarinadeUnstake";
918
+ },
919
+ {
920
+ name: "Aldrin";
921
+ fields: [
922
+ {
923
+ name: "side";
924
+ type: {
925
+ defined: "Side";
926
+ };
927
+ },
928
+ ];
929
+ },
930
+ {
931
+ name: "AldrinV2";
932
+ fields: [
933
+ {
934
+ name: "side";
935
+ type: {
936
+ defined: "Side";
937
+ };
938
+ },
939
+ ];
940
+ },
941
+ {
942
+ name: "Whirlpool";
943
+ fields: [
944
+ {
945
+ name: "aToB";
946
+ type: "bool";
947
+ },
948
+ ];
949
+ },
950
+ {
951
+ name: "Invariant";
952
+ fields: [
953
+ {
954
+ name: "xToY";
955
+ type: "bool";
956
+ },
957
+ ];
958
+ },
959
+ {
960
+ name: "Meteora";
961
+ },
962
+ {
963
+ name: "GooseFX";
964
+ },
965
+ {
966
+ name: "DeltaFi";
967
+ fields: [
968
+ {
969
+ name: "stable";
970
+ type: "bool";
971
+ },
972
+ ];
973
+ },
974
+ {
975
+ name: "Balansol";
976
+ },
977
+ {
978
+ name: "MarcoPolo";
979
+ fields: [
980
+ {
981
+ name: "xToY";
982
+ type: "bool";
983
+ },
984
+ ];
985
+ },
986
+ {
987
+ name: "Dradex";
988
+ fields: [
989
+ {
990
+ name: "side";
991
+ type: {
992
+ defined: "Side";
993
+ };
994
+ },
995
+ ];
996
+ },
997
+ {
998
+ name: "LifinityV2";
999
+ },
1000
+ {
1001
+ name: "RaydiumClmm";
1002
+ },
1003
+ {
1004
+ name: "Openbook";
1005
+ fields: [
1006
+ {
1007
+ name: "side";
1008
+ type: {
1009
+ defined: "Side";
1010
+ };
1011
+ },
1012
+ ];
1013
+ },
1014
+ {
1015
+ name: "Phoenix";
1016
+ fields: [
1017
+ {
1018
+ name: "side";
1019
+ type: {
1020
+ defined: "Side";
1021
+ };
1022
+ },
1023
+ ];
1024
+ },
1025
+ {
1026
+ name: "Symmetry";
1027
+ fields: [
1028
+ {
1029
+ name: "fromTokenId";
1030
+ type: "u64";
1031
+ },
1032
+ {
1033
+ name: "toTokenId";
1034
+ type: "u64";
1035
+ },
1036
+ ];
1037
+ },
1038
+ {
1039
+ name: "TokenSwapV2";
1040
+ },
1041
+ {
1042
+ name: "HeliumTreasuryManagementRedeemV0";
1043
+ },
1044
+ {
1045
+ name: "StakeDexStakeWrappedSol";
1046
+ },
1047
+ {
1048
+ name: "StakeDexSwapViaStake";
1049
+ fields: [
1050
+ {
1051
+ name: "bridgeStakeSeed";
1052
+ type: "u32";
1053
+ },
1054
+ ];
1055
+ },
1056
+ {
1057
+ name: "GooseFXV2";
1058
+ },
1059
+ {
1060
+ name: "Perps";
1061
+ },
1062
+ {
1063
+ name: "PerpsAddLiquidity";
1064
+ },
1065
+ {
1066
+ name: "PerpsRemoveLiquidity";
1067
+ },
1068
+ {
1069
+ name: "MeteoraDlmm";
1070
+ },
1071
+ {
1072
+ name: "OpenBookV2";
1073
+ fields: [
1074
+ {
1075
+ name: "side";
1076
+ type: {
1077
+ defined: "Side";
1078
+ };
1079
+ },
1080
+ ];
1081
+ },
1082
+ {
1083
+ name: "RaydiumClmmV2";
1084
+ },
1085
+ {
1086
+ name: "StakeDexPrefundWithdrawStakeAndDepositStake";
1087
+ fields: [
1088
+ {
1089
+ name: "bridgeStakeSeed";
1090
+ type: "u32";
1091
+ },
1092
+ ];
1093
+ },
1094
+ {
1095
+ name: "Clone";
1096
+ fields: [
1097
+ {
1098
+ name: "poolIndex";
1099
+ type: "u8";
1100
+ },
1101
+ {
1102
+ name: "quantityIsInput";
1103
+ type: "bool";
1104
+ },
1105
+ {
1106
+ name: "quantityIsCollateral";
1107
+ type: "bool";
1108
+ },
1109
+ ];
1110
+ },
1111
+ {
1112
+ name: "SanctumS";
1113
+ fields: [
1114
+ {
1115
+ name: "srcLstValueCalcAccs";
1116
+ type: "u8";
1117
+ },
1118
+ {
1119
+ name: "dstLstValueCalcAccs";
1120
+ type: "u8";
1121
+ },
1122
+ {
1123
+ name: "srcLstIndex";
1124
+ type: "u32";
1125
+ },
1126
+ {
1127
+ name: "dstLstIndex";
1128
+ type: "u32";
1129
+ },
1130
+ ];
1131
+ },
1132
+ {
1133
+ name: "SanctumSAddLiquidity";
1134
+ fields: [
1135
+ {
1136
+ name: "lstValueCalcAccs";
1137
+ type: "u8";
1138
+ },
1139
+ {
1140
+ name: "lstIndex";
1141
+ type: "u32";
1142
+ },
1143
+ ];
1144
+ },
1145
+ {
1146
+ name: "SanctumSRemoveLiquidity";
1147
+ fields: [
1148
+ {
1149
+ name: "lstValueCalcAccs";
1150
+ type: "u8";
1151
+ },
1152
+ {
1153
+ name: "lstIndex";
1154
+ type: "u32";
1155
+ },
1156
+ ];
1157
+ },
1158
+ {
1159
+ name: "RaydiumCP";
1160
+ },
1161
+ {
1162
+ name: "WhirlpoolSwapV2";
1163
+ fields: [
1164
+ {
1165
+ name: "aToB";
1166
+ type: "bool";
1167
+ },
1168
+ {
1169
+ name: "remainingAccountsInfo";
1170
+ type: {
1171
+ option: {
1172
+ defined: "RemainingAccountsInfo";
1173
+ };
1174
+ };
1175
+ },
1176
+ ];
1177
+ },
1178
+ {
1179
+ name: "OneIntro";
1180
+ },
1181
+ {
1182
+ name: "PumpdotfunWrappedBuy";
1183
+ },
1184
+ {
1185
+ name: "PumpdotfunWrappedSell";
1186
+ },
1187
+ {
1188
+ name: "PerpsV2";
1189
+ },
1190
+ {
1191
+ name: "PerpsV2AddLiquidity";
1192
+ },
1193
+ {
1194
+ name: "PerpsV2RemoveLiquidity";
1195
+ },
1196
+ {
1197
+ name: "MoonshotWrappedBuy";
1198
+ },
1199
+ {
1200
+ name: "MoonshotWrappedSell";
1201
+ },
1202
+ {
1203
+ name: "StabbleStableSwap";
1204
+ },
1205
+ {
1206
+ name: "StabbleWeightedSwap";
1207
+ },
1208
+ {
1209
+ name: "Obric";
1210
+ fields: [
1211
+ {
1212
+ name: "xToY";
1213
+ type: "bool";
1214
+ },
1215
+ ];
1216
+ },
1217
+ {
1218
+ name: "FoxBuyFromEstimatedCost";
1219
+ },
1220
+ {
1221
+ name: "FoxClaimPartial";
1222
+ fields: [
1223
+ {
1224
+ name: "isY";
1225
+ type: "bool";
1226
+ },
1227
+ ];
1228
+ },
1229
+ {
1230
+ name: "SolFi";
1231
+ fields: [
1232
+ {
1233
+ name: "isQuoteToBase";
1234
+ type: "bool";
1235
+ },
1236
+ ];
1237
+ },
1238
+ ];
1239
+ };
1240
+ },
1241
+ {
1242
+ name: "RemainingAccountsSlice";
1243
+ type: {
1244
+ kind: "struct";
1245
+ fields: [
1246
+ {
1247
+ name: "accountsType";
1248
+ type: {
1249
+ defined: "AccountsType";
1250
+ };
1251
+ },
1252
+ {
1253
+ name: "length";
1254
+ type: "u8";
1255
+ },
1256
+ ];
1257
+ };
1258
+ },
1259
+ {
1260
+ name: "RemainingAccountsInfo";
1261
+ type: {
1262
+ kind: "struct";
1263
+ fields: [
1264
+ {
1265
+ name: "slices";
1266
+ type: {
1267
+ vec: {
1268
+ defined: "RemainingAccountsSlice";
1269
+ };
1270
+ };
1271
+ },
1272
+ ];
1273
+ };
1274
+ },
1275
+ {
1276
+ name: "AccountsType";
1277
+ type: {
1278
+ kind: "enum";
1279
+ variants: [
1280
+ {
1281
+ name: "TransferHookA";
1282
+ },
1283
+ {
1284
+ name: "TransferHookB";
1285
+ },
1286
+ ];
1287
+ };
1288
+ },
1289
+ ];
1290
+ events: [
1291
+ {
1292
+ name: "SwapEvent";
1293
+ fields: [
1294
+ {
1295
+ name: "amm";
1296
+ type: "publicKey";
1297
+ index: false;
1298
+ },
1299
+ {
1300
+ name: "inputMint";
1301
+ type: "publicKey";
1302
+ index: false;
1303
+ },
1304
+ {
1305
+ name: "inputAmount";
1306
+ type: "u64";
1307
+ index: false;
1308
+ },
1309
+ {
1310
+ name: "outputMint";
1311
+ type: "publicKey";
1312
+ index: false;
1313
+ },
1314
+ {
1315
+ name: "outputAmount";
1316
+ type: "u64";
1317
+ index: false;
1318
+ },
1319
+ ];
1320
+ },
1321
+ {
1322
+ name: "FeeEvent";
1323
+ fields: [
1324
+ {
1325
+ name: "account";
1326
+ type: "publicKey";
1327
+ index: false;
1328
+ },
1329
+ {
1330
+ name: "mint";
1331
+ type: "publicKey";
1332
+ index: false;
1333
+ },
1334
+ {
1335
+ name: "amount";
1336
+ type: "u64";
1337
+ index: false;
1338
+ },
1339
+ ];
1340
+ },
1341
+ ];
1342
+ errors: [
1343
+ {
1344
+ code: 6000;
1345
+ name: "EmptyRoute";
1346
+ msg: "Empty route";
1347
+ },
1348
+ {
1349
+ code: 6001;
1350
+ name: "SlippageToleranceExceeded";
1351
+ msg: "Slippage tolerance exceeded";
1352
+ },
1353
+ {
1354
+ code: 6002;
1355
+ name: "InvalidCalculation";
1356
+ msg: "Invalid calculation";
1357
+ },
1358
+ {
1359
+ code: 6003;
1360
+ name: "MissingPlatformFeeAccount";
1361
+ msg: "Missing platform fee account";
1362
+ },
1363
+ {
1364
+ code: 6004;
1365
+ name: "InvalidSlippage";
1366
+ msg: "Invalid slippage";
1367
+ },
1368
+ {
1369
+ code: 6005;
1370
+ name: "NotEnoughPercent";
1371
+ msg: "Not enough percent to 100";
1372
+ },
1373
+ {
1374
+ code: 6006;
1375
+ name: "InvalidInputIndex";
1376
+ msg: "Token input index is invalid";
1377
+ },
1378
+ {
1379
+ code: 6007;
1380
+ name: "InvalidOutputIndex";
1381
+ msg: "Token output index is invalid";
1382
+ },
1383
+ {
1384
+ code: 6008;
1385
+ name: "NotEnoughAccountKeys";
1386
+ msg: "Not Enough Account keys";
1387
+ },
1388
+ {
1389
+ code: 6009;
1390
+ name: "NonZeroMinimumOutAmountNotSupported";
1391
+ msg: "Non zero minimum out amount not supported";
1392
+ },
1393
+ {
1394
+ code: 6010;
1395
+ name: "InvalidRoutePlan";
1396
+ msg: "Invalid route plan";
1397
+ },
1398
+ {
1399
+ code: 6011;
1400
+ name: "InvalidReferralAuthority";
1401
+ msg: "Invalid referral authority";
1402
+ },
1403
+ {
1404
+ code: 6012;
1405
+ name: "LedgerTokenAccountDoesNotMatch";
1406
+ msg: "Token account doesn't match the ledger";
1407
+ },
1408
+ {
1409
+ code: 6013;
1410
+ name: "InvalidTokenLedger";
1411
+ msg: "Invalid token ledger";
1412
+ },
1413
+ {
1414
+ code: 6014;
1415
+ name: "IncorrectTokenProgramID";
1416
+ msg: "Token program ID is invalid";
1417
+ },
1418
+ {
1419
+ code: 6015;
1420
+ name: "TokenProgramNotProvided";
1421
+ msg: "Token program not provided";
1422
+ },
1423
+ {
1424
+ code: 6016;
1425
+ name: "SwapNotSupported";
1426
+ msg: "Swap not supported";
1427
+ },
1428
+ {
1429
+ code: 6017;
1430
+ name: "ExactOutAmountNotMatched";
1431
+ msg: "Exact out amount doesn't match";
1432
+ },
1433
+ {
1434
+ code: 6018;
1435
+ name: "SourceAndDestinationMintCannotBeTheSame";
1436
+ msg: "Source mint and destination mint cannot the same";
1437
+ },
1438
+ ];
1439
+ };
1440
+
1441
+ export const IDL: Jupiter = {
1442
+ version: "0.1.0",
1443
+ name: "jupiter",
1444
+ instructions: [
1445
+ {
1446
+ name: "route",
1447
+ docs: ["route_plan Topologically sorted trade DAG"],
1448
+ accounts: [
1449
+ {
1450
+ name: "tokenProgram",
1451
+ isMut: false,
1452
+ isSigner: false,
1453
+ },
1454
+ {
1455
+ name: "userTransferAuthority",
1456
+ isMut: false,
1457
+ isSigner: true,
1458
+ },
1459
+ {
1460
+ name: "userSourceTokenAccount",
1461
+ isMut: true,
1462
+ isSigner: false,
1463
+ },
1464
+ {
1465
+ name: "userDestinationTokenAccount",
1466
+ isMut: true,
1467
+ isSigner: false,
1468
+ },
1469
+ {
1470
+ name: "destinationTokenAccount",
1471
+ isMut: true,
1472
+ isSigner: false,
1473
+ isOptional: true,
1474
+ },
1475
+ {
1476
+ name: "destinationMint",
1477
+ isMut: false,
1478
+ isSigner: false,
1479
+ },
1480
+ {
1481
+ name: "platformFeeAccount",
1482
+ isMut: true,
1483
+ isSigner: false,
1484
+ isOptional: true,
1485
+ },
1486
+ ],
1487
+ args: [
1488
+ {
1489
+ name: "routePlan",
1490
+ type: {
1491
+ vec: {
1492
+ defined: "RoutePlanStep",
1493
+ },
1494
+ },
1495
+ },
1496
+ {
1497
+ name: "inAmount",
1498
+ type: "u64",
1499
+ },
1500
+ {
1501
+ name: "quotedOutAmount",
1502
+ type: "u64",
1503
+ },
1504
+ {
1505
+ name: "slippageBps",
1506
+ type: "u16",
1507
+ },
1508
+ {
1509
+ name: "platformFeeBps",
1510
+ type: "u8",
1511
+ },
1512
+ ],
1513
+ returns: "u64",
1514
+ },
1515
+ {
1516
+ name: "routeWithTokenLedger",
1517
+ accounts: [
1518
+ {
1519
+ name: "tokenProgram",
1520
+ isMut: false,
1521
+ isSigner: false,
1522
+ },
1523
+ {
1524
+ name: "userTransferAuthority",
1525
+ isMut: false,
1526
+ isSigner: true,
1527
+ },
1528
+ {
1529
+ name: "userSourceTokenAccount",
1530
+ isMut: true,
1531
+ isSigner: false,
1532
+ },
1533
+ {
1534
+ name: "userDestinationTokenAccount",
1535
+ isMut: true,
1536
+ isSigner: false,
1537
+ },
1538
+ {
1539
+ name: "destinationTokenAccount",
1540
+ isMut: true,
1541
+ isSigner: false,
1542
+ isOptional: true,
1543
+ },
1544
+ {
1545
+ name: "destinationMint",
1546
+ isMut: false,
1547
+ isSigner: false,
1548
+ },
1549
+ {
1550
+ name: "platformFeeAccount",
1551
+ isMut: true,
1552
+ isSigner: false,
1553
+ isOptional: true,
1554
+ },
1555
+ {
1556
+ name: "tokenLedger",
1557
+ isMut: false,
1558
+ isSigner: false,
1559
+ },
1560
+ ],
1561
+ args: [
1562
+ {
1563
+ name: "routePlan",
1564
+ type: {
1565
+ vec: {
1566
+ defined: "RoutePlanStep",
1567
+ },
1568
+ },
1569
+ },
1570
+ {
1571
+ name: "quotedOutAmount",
1572
+ type: "u64",
1573
+ },
1574
+ {
1575
+ name: "slippageBps",
1576
+ type: "u16",
1577
+ },
1578
+ {
1579
+ name: "platformFeeBps",
1580
+ type: "u8",
1581
+ },
1582
+ ],
1583
+ returns: "u64",
1584
+ },
1585
+ {
1586
+ name: "sharedAccountsRoute",
1587
+ docs: [
1588
+ "Route by using program owned token accounts and open orders accounts.",
1589
+ ],
1590
+ accounts: [
1591
+ {
1592
+ name: "tokenProgram",
1593
+ isMut: false,
1594
+ isSigner: false,
1595
+ },
1596
+ {
1597
+ name: "programAuthority",
1598
+ isMut: false,
1599
+ isSigner: false,
1600
+ },
1601
+ {
1602
+ name: "userTransferAuthority",
1603
+ isMut: false,
1604
+ isSigner: true,
1605
+ },
1606
+ {
1607
+ name: "sourceTokenAccount",
1608
+ isMut: true,
1609
+ isSigner: false,
1610
+ },
1611
+ {
1612
+ name: "programSourceTokenAccount",
1613
+ isMut: true,
1614
+ isSigner: false,
1615
+ },
1616
+ {
1617
+ name: "programDestinationTokenAccount",
1618
+ isMut: true,
1619
+ isSigner: false,
1620
+ },
1621
+ {
1622
+ name: "destinationTokenAccount",
1623
+ isMut: true,
1624
+ isSigner: false,
1625
+ },
1626
+ {
1627
+ name: "sourceMint",
1628
+ isMut: false,
1629
+ isSigner: false,
1630
+ },
1631
+ {
1632
+ name: "destinationMint",
1633
+ isMut: false,
1634
+ isSigner: false,
1635
+ },
1636
+ {
1637
+ name: "platformFeeAccount",
1638
+ isMut: true,
1639
+ isSigner: false,
1640
+ isOptional: true,
1641
+ },
1642
+ {
1643
+ name: "token2022Program",
1644
+ isMut: false,
1645
+ isSigner: false,
1646
+ isOptional: true,
1647
+ },
1648
+ ],
1649
+ args: [
1650
+ {
1651
+ name: "id",
1652
+ type: "u8",
1653
+ },
1654
+ {
1655
+ name: "routePlan",
1656
+ type: {
1657
+ vec: {
1658
+ defined: "RoutePlanStep",
1659
+ },
1660
+ },
1661
+ },
1662
+ {
1663
+ name: "inAmount",
1664
+ type: "u64",
1665
+ },
1666
+ {
1667
+ name: "quotedOutAmount",
1668
+ type: "u64",
1669
+ },
1670
+ {
1671
+ name: "slippageBps",
1672
+ type: "u16",
1673
+ },
1674
+ {
1675
+ name: "platformFeeBps",
1676
+ type: "u8",
1677
+ },
1678
+ ],
1679
+ returns: "u64",
1680
+ },
1681
+ {
1682
+ name: "sharedAccountsRouteWithTokenLedger",
1683
+ accounts: [
1684
+ {
1685
+ name: "tokenProgram",
1686
+ isMut: false,
1687
+ isSigner: false,
1688
+ },
1689
+ {
1690
+ name: "programAuthority",
1691
+ isMut: false,
1692
+ isSigner: false,
1693
+ },
1694
+ {
1695
+ name: "userTransferAuthority",
1696
+ isMut: false,
1697
+ isSigner: true,
1698
+ },
1699
+ {
1700
+ name: "sourceTokenAccount",
1701
+ isMut: true,
1702
+ isSigner: false,
1703
+ },
1704
+ {
1705
+ name: "programSourceTokenAccount",
1706
+ isMut: true,
1707
+ isSigner: false,
1708
+ },
1709
+ {
1710
+ name: "programDestinationTokenAccount",
1711
+ isMut: true,
1712
+ isSigner: false,
1713
+ },
1714
+ {
1715
+ name: "destinationTokenAccount",
1716
+ isMut: true,
1717
+ isSigner: false,
1718
+ },
1719
+ {
1720
+ name: "sourceMint",
1721
+ isMut: false,
1722
+ isSigner: false,
1723
+ },
1724
+ {
1725
+ name: "destinationMint",
1726
+ isMut: false,
1727
+ isSigner: false,
1728
+ },
1729
+ {
1730
+ name: "platformFeeAccount",
1731
+ isMut: true,
1732
+ isSigner: false,
1733
+ isOptional: true,
1734
+ },
1735
+ {
1736
+ name: "token2022Program",
1737
+ isMut: false,
1738
+ isSigner: false,
1739
+ isOptional: true,
1740
+ },
1741
+ {
1742
+ name: "tokenLedger",
1743
+ isMut: false,
1744
+ isSigner: false,
1745
+ },
1746
+ ],
1747
+ args: [
1748
+ {
1749
+ name: "id",
1750
+ type: "u8",
1751
+ },
1752
+ {
1753
+ name: "routePlan",
1754
+ type: {
1755
+ vec: {
1756
+ defined: "RoutePlanStep",
1757
+ },
1758
+ },
1759
+ },
1760
+ {
1761
+ name: "quotedOutAmount",
1762
+ type: "u64",
1763
+ },
1764
+ {
1765
+ name: "slippageBps",
1766
+ type: "u16",
1767
+ },
1768
+ {
1769
+ name: "platformFeeBps",
1770
+ type: "u8",
1771
+ },
1772
+ ],
1773
+ returns: "u64",
1774
+ },
1775
+ {
1776
+ name: "exactOutRoute",
1777
+ accounts: [
1778
+ {
1779
+ name: "tokenProgram",
1780
+ isMut: false,
1781
+ isSigner: false,
1782
+ },
1783
+ {
1784
+ name: "userTransferAuthority",
1785
+ isMut: false,
1786
+ isSigner: true,
1787
+ },
1788
+ {
1789
+ name: "userSourceTokenAccount",
1790
+ isMut: true,
1791
+ isSigner: false,
1792
+ },
1793
+ {
1794
+ name: "userDestinationTokenAccount",
1795
+ isMut: true,
1796
+ isSigner: false,
1797
+ },
1798
+ {
1799
+ name: "destinationTokenAccount",
1800
+ isMut: true,
1801
+ isSigner: false,
1802
+ isOptional: true,
1803
+ },
1804
+ {
1805
+ name: "sourceMint",
1806
+ isMut: false,
1807
+ isSigner: false,
1808
+ },
1809
+ {
1810
+ name: "destinationMint",
1811
+ isMut: false,
1812
+ isSigner: false,
1813
+ },
1814
+ {
1815
+ name: "platformFeeAccount",
1816
+ isMut: true,
1817
+ isSigner: false,
1818
+ isOptional: true,
1819
+ },
1820
+ {
1821
+ name: "token2022Program",
1822
+ isMut: false,
1823
+ isSigner: false,
1824
+ isOptional: true,
1825
+ },
1826
+ ],
1827
+ args: [
1828
+ {
1829
+ name: "routePlan",
1830
+ type: {
1831
+ vec: {
1832
+ defined: "RoutePlanStep",
1833
+ },
1834
+ },
1835
+ },
1836
+ {
1837
+ name: "outAmount",
1838
+ type: "u64",
1839
+ },
1840
+ {
1841
+ name: "quotedInAmount",
1842
+ type: "u64",
1843
+ },
1844
+ {
1845
+ name: "slippageBps",
1846
+ type: "u16",
1847
+ },
1848
+ {
1849
+ name: "platformFeeBps",
1850
+ type: "u8",
1851
+ },
1852
+ ],
1853
+ returns: "u64",
1854
+ },
1855
+ {
1856
+ name: "sharedAccountsExactOutRoute",
1857
+ docs: [
1858
+ "Route by using program owned token accounts and open orders accounts.",
1859
+ ],
1860
+ accounts: [
1861
+ {
1862
+ name: "tokenProgram",
1863
+ isMut: false,
1864
+ isSigner: false,
1865
+ },
1866
+ {
1867
+ name: "programAuthority",
1868
+ isMut: false,
1869
+ isSigner: false,
1870
+ },
1871
+ {
1872
+ name: "userTransferAuthority",
1873
+ isMut: false,
1874
+ isSigner: true,
1875
+ },
1876
+ {
1877
+ name: "sourceTokenAccount",
1878
+ isMut: true,
1879
+ isSigner: false,
1880
+ },
1881
+ {
1882
+ name: "programSourceTokenAccount",
1883
+ isMut: true,
1884
+ isSigner: false,
1885
+ },
1886
+ {
1887
+ name: "programDestinationTokenAccount",
1888
+ isMut: true,
1889
+ isSigner: false,
1890
+ },
1891
+ {
1892
+ name: "destinationTokenAccount",
1893
+ isMut: true,
1894
+ isSigner: false,
1895
+ },
1896
+ {
1897
+ name: "sourceMint",
1898
+ isMut: false,
1899
+ isSigner: false,
1900
+ },
1901
+ {
1902
+ name: "destinationMint",
1903
+ isMut: false,
1904
+ isSigner: false,
1905
+ },
1906
+ {
1907
+ name: "platformFeeAccount",
1908
+ isMut: true,
1909
+ isSigner: false,
1910
+ isOptional: true,
1911
+ },
1912
+ {
1913
+ name: "token2022Program",
1914
+ isMut: false,
1915
+ isSigner: false,
1916
+ isOptional: true,
1917
+ },
1918
+ ],
1919
+ args: [
1920
+ {
1921
+ name: "id",
1922
+ type: "u8",
1923
+ },
1924
+ {
1925
+ name: "routePlan",
1926
+ type: {
1927
+ vec: {
1928
+ defined: "RoutePlanStep",
1929
+ },
1930
+ },
1931
+ },
1932
+ {
1933
+ name: "outAmount",
1934
+ type: "u64",
1935
+ },
1936
+ {
1937
+ name: "quotedInAmount",
1938
+ type: "u64",
1939
+ },
1940
+ {
1941
+ name: "slippageBps",
1942
+ type: "u16",
1943
+ },
1944
+ {
1945
+ name: "platformFeeBps",
1946
+ type: "u8",
1947
+ },
1948
+ ],
1949
+ returns: "u64",
1950
+ },
1951
+ {
1952
+ name: "setTokenLedger",
1953
+ accounts: [
1954
+ {
1955
+ name: "tokenLedger",
1956
+ isMut: true,
1957
+ isSigner: false,
1958
+ },
1959
+ {
1960
+ name: "tokenAccount",
1961
+ isMut: false,
1962
+ isSigner: false,
1963
+ },
1964
+ ],
1965
+ args: [],
1966
+ },
1967
+ {
1968
+ name: "createOpenOrders",
1969
+ accounts: [
1970
+ {
1971
+ name: "openOrders",
1972
+ isMut: true,
1973
+ isSigner: false,
1974
+ },
1975
+ {
1976
+ name: "payer",
1977
+ isMut: true,
1978
+ isSigner: true,
1979
+ },
1980
+ {
1981
+ name: "dexProgram",
1982
+ isMut: false,
1983
+ isSigner: false,
1984
+ },
1985
+ {
1986
+ name: "systemProgram",
1987
+ isMut: false,
1988
+ isSigner: false,
1989
+ },
1990
+ {
1991
+ name: "rent",
1992
+ isMut: false,
1993
+ isSigner: false,
1994
+ },
1995
+ {
1996
+ name: "market",
1997
+ isMut: false,
1998
+ isSigner: false,
1999
+ },
2000
+ ],
2001
+ args: [],
2002
+ },
2003
+ {
2004
+ name: "createTokenAccount",
2005
+ accounts: [
2006
+ {
2007
+ name: "tokenAccount",
2008
+ isMut: true,
2009
+ isSigner: false,
2010
+ },
2011
+ {
2012
+ name: "user",
2013
+ isMut: true,
2014
+ isSigner: true,
2015
+ },
2016
+ {
2017
+ name: "mint",
2018
+ isMut: false,
2019
+ isSigner: false,
2020
+ },
2021
+ {
2022
+ name: "tokenProgram",
2023
+ isMut: false,
2024
+ isSigner: false,
2025
+ },
2026
+ {
2027
+ name: "systemProgram",
2028
+ isMut: false,
2029
+ isSigner: false,
2030
+ },
2031
+ ],
2032
+ args: [
2033
+ {
2034
+ name: "bump",
2035
+ type: "u8",
2036
+ },
2037
+ ],
2038
+ },
2039
+ {
2040
+ name: "createProgramOpenOrders",
2041
+ accounts: [
2042
+ {
2043
+ name: "openOrders",
2044
+ isMut: true,
2045
+ isSigner: false,
2046
+ },
2047
+ {
2048
+ name: "payer",
2049
+ isMut: true,
2050
+ isSigner: true,
2051
+ },
2052
+ {
2053
+ name: "programAuthority",
2054
+ isMut: false,
2055
+ isSigner: false,
2056
+ },
2057
+ {
2058
+ name: "dexProgram",
2059
+ isMut: false,
2060
+ isSigner: false,
2061
+ },
2062
+ {
2063
+ name: "systemProgram",
2064
+ isMut: false,
2065
+ isSigner: false,
2066
+ },
2067
+ {
2068
+ name: "rent",
2069
+ isMut: false,
2070
+ isSigner: false,
2071
+ },
2072
+ {
2073
+ name: "market",
2074
+ isMut: false,
2075
+ isSigner: false,
2076
+ },
2077
+ ],
2078
+ args: [
2079
+ {
2080
+ name: "id",
2081
+ type: "u8",
2082
+ },
2083
+ ],
2084
+ },
2085
+ {
2086
+ name: "claim",
2087
+ accounts: [
2088
+ {
2089
+ name: "wallet",
2090
+ isMut: true,
2091
+ isSigner: false,
2092
+ },
2093
+ {
2094
+ name: "programAuthority",
2095
+ isMut: true,
2096
+ isSigner: false,
2097
+ },
2098
+ {
2099
+ name: "systemProgram",
2100
+ isMut: false,
2101
+ isSigner: false,
2102
+ },
2103
+ ],
2104
+ args: [
2105
+ {
2106
+ name: "id",
2107
+ type: "u8",
2108
+ },
2109
+ ],
2110
+ returns: "u64",
2111
+ },
2112
+ {
2113
+ name: "claimToken",
2114
+ accounts: [
2115
+ {
2116
+ name: "payer",
2117
+ isMut: true,
2118
+ isSigner: true,
2119
+ },
2120
+ {
2121
+ name: "wallet",
2122
+ isMut: false,
2123
+ isSigner: false,
2124
+ },
2125
+ {
2126
+ name: "programAuthority",
2127
+ isMut: false,
2128
+ isSigner: false,
2129
+ },
2130
+ {
2131
+ name: "programTokenAccount",
2132
+ isMut: true,
2133
+ isSigner: false,
2134
+ },
2135
+ {
2136
+ name: "destinationTokenAccount",
2137
+ isMut: true,
2138
+ isSigner: false,
2139
+ },
2140
+ {
2141
+ name: "mint",
2142
+ isMut: false,
2143
+ isSigner: false,
2144
+ },
2145
+ {
2146
+ name: "associatedTokenTokenProgram",
2147
+ isMut: false,
2148
+ isSigner: false,
2149
+ },
2150
+ {
2151
+ name: "associatedTokenProgram",
2152
+ isMut: false,
2153
+ isSigner: false,
2154
+ },
2155
+ {
2156
+ name: "systemProgram",
2157
+ isMut: false,
2158
+ isSigner: false,
2159
+ },
2160
+ ],
2161
+ args: [
2162
+ {
2163
+ name: "id",
2164
+ type: "u8",
2165
+ },
2166
+ ],
2167
+ returns: "u64",
2168
+ },
2169
+ {
2170
+ name: "createTokenLedger",
2171
+ accounts: [
2172
+ {
2173
+ name: "tokenLedger",
2174
+ isMut: true,
2175
+ isSigner: true,
2176
+ },
2177
+ {
2178
+ name: "payer",
2179
+ isMut: true,
2180
+ isSigner: true,
2181
+ },
2182
+ {
2183
+ name: "systemProgram",
2184
+ isMut: false,
2185
+ isSigner: false,
2186
+ },
2187
+ ],
2188
+ args: [],
2189
+ },
2190
+ ],
2191
+ accounts: [
2192
+ {
2193
+ name: "TokenLedger",
2194
+ type: {
2195
+ kind: "struct",
2196
+ fields: [
2197
+ {
2198
+ name: "tokenAccount",
2199
+ type: "publicKey",
2200
+ },
2201
+ {
2202
+ name: "amount",
2203
+ type: "u64",
2204
+ },
2205
+ ],
2206
+ },
2207
+ },
2208
+ ],
2209
+ types: [
2210
+ {
2211
+ name: "AmountWithSlippage",
2212
+ type: {
2213
+ kind: "struct",
2214
+ fields: [
2215
+ {
2216
+ name: "amount",
2217
+ type: "u64",
2218
+ },
2219
+ {
2220
+ name: "slippageBps",
2221
+ type: "u16",
2222
+ },
2223
+ ],
2224
+ },
2225
+ },
2226
+ {
2227
+ name: "RoutePlanStep",
2228
+ type: {
2229
+ kind: "struct",
2230
+ fields: [
2231
+ {
2232
+ name: "swap",
2233
+ type: {
2234
+ defined: "Swap",
2235
+ },
2236
+ },
2237
+ {
2238
+ name: "percent",
2239
+ type: "u8",
2240
+ },
2241
+ {
2242
+ name: "inputIndex",
2243
+ type: "u8",
2244
+ },
2245
+ {
2246
+ name: "outputIndex",
2247
+ type: "u8",
2248
+ },
2249
+ ],
2250
+ },
2251
+ },
2252
+ {
2253
+ name: "PlatformFeeType",
2254
+ type: {
2255
+ kind: "enum",
2256
+ variants: [
2257
+ {
2258
+ name: "SourceMint",
2259
+ fields: [
2260
+ {
2261
+ name: "mint",
2262
+ type: "publicKey",
2263
+ },
2264
+ ],
2265
+ },
2266
+ {
2267
+ name: "DestinationMint",
2268
+ fields: [
2269
+ {
2270
+ name: "mint",
2271
+ type: "publicKey",
2272
+ },
2273
+ ],
2274
+ },
2275
+ {
2276
+ name: "Zero",
2277
+ },
2278
+ ],
2279
+ },
2280
+ },
2281
+ {
2282
+ name: "Side",
2283
+ type: {
2284
+ kind: "enum",
2285
+ variants: [
2286
+ {
2287
+ name: "Bid",
2288
+ },
2289
+ {
2290
+ name: "Ask",
2291
+ },
2292
+ ],
2293
+ },
2294
+ },
2295
+ {
2296
+ name: "Swap",
2297
+ type: {
2298
+ kind: "enum",
2299
+ variants: [
2300
+ {
2301
+ name: "Saber",
2302
+ },
2303
+ {
2304
+ name: "SaberAddDecimalsDeposit",
2305
+ },
2306
+ {
2307
+ name: "SaberAddDecimalsWithdraw",
2308
+ },
2309
+ {
2310
+ name: "TokenSwap",
2311
+ },
2312
+ {
2313
+ name: "Sencha",
2314
+ },
2315
+ {
2316
+ name: "Step",
2317
+ },
2318
+ {
2319
+ name: "Cropper",
2320
+ },
2321
+ {
2322
+ name: "Raydium",
2323
+ },
2324
+ {
2325
+ name: "Crema",
2326
+ fields: [
2327
+ {
2328
+ name: "aToB",
2329
+ type: "bool",
2330
+ },
2331
+ ],
2332
+ },
2333
+ {
2334
+ name: "Lifinity",
2335
+ },
2336
+ {
2337
+ name: "Mercurial",
2338
+ },
2339
+ {
2340
+ name: "Cykura",
2341
+ },
2342
+ {
2343
+ name: "Serum",
2344
+ fields: [
2345
+ {
2346
+ name: "side",
2347
+ type: {
2348
+ defined: "Side",
2349
+ },
2350
+ },
2351
+ ],
2352
+ },
2353
+ {
2354
+ name: "MarinadeDeposit",
2355
+ },
2356
+ {
2357
+ name: "MarinadeUnstake",
2358
+ },
2359
+ {
2360
+ name: "Aldrin",
2361
+ fields: [
2362
+ {
2363
+ name: "side",
2364
+ type: {
2365
+ defined: "Side",
2366
+ },
2367
+ },
2368
+ ],
2369
+ },
2370
+ {
2371
+ name: "AldrinV2",
2372
+ fields: [
2373
+ {
2374
+ name: "side",
2375
+ type: {
2376
+ defined: "Side",
2377
+ },
2378
+ },
2379
+ ],
2380
+ },
2381
+ {
2382
+ name: "Whirlpool",
2383
+ fields: [
2384
+ {
2385
+ name: "aToB",
2386
+ type: "bool",
2387
+ },
2388
+ ],
2389
+ },
2390
+ {
2391
+ name: "Invariant",
2392
+ fields: [
2393
+ {
2394
+ name: "xToY",
2395
+ type: "bool",
2396
+ },
2397
+ ],
2398
+ },
2399
+ {
2400
+ name: "Meteora",
2401
+ },
2402
+ {
2403
+ name: "GooseFX",
2404
+ },
2405
+ {
2406
+ name: "DeltaFi",
2407
+ fields: [
2408
+ {
2409
+ name: "stable",
2410
+ type: "bool",
2411
+ },
2412
+ ],
2413
+ },
2414
+ {
2415
+ name: "Balansol",
2416
+ },
2417
+ {
2418
+ name: "MarcoPolo",
2419
+ fields: [
2420
+ {
2421
+ name: "xToY",
2422
+ type: "bool",
2423
+ },
2424
+ ],
2425
+ },
2426
+ {
2427
+ name: "Dradex",
2428
+ fields: [
2429
+ {
2430
+ name: "side",
2431
+ type: {
2432
+ defined: "Side",
2433
+ },
2434
+ },
2435
+ ],
2436
+ },
2437
+ {
2438
+ name: "LifinityV2",
2439
+ },
2440
+ {
2441
+ name: "RaydiumClmm",
2442
+ },
2443
+ {
2444
+ name: "Openbook",
2445
+ fields: [
2446
+ {
2447
+ name: "side",
2448
+ type: {
2449
+ defined: "Side",
2450
+ },
2451
+ },
2452
+ ],
2453
+ },
2454
+ {
2455
+ name: "Phoenix",
2456
+ fields: [
2457
+ {
2458
+ name: "side",
2459
+ type: {
2460
+ defined: "Side",
2461
+ },
2462
+ },
2463
+ ],
2464
+ },
2465
+ {
2466
+ name: "Symmetry",
2467
+ fields: [
2468
+ {
2469
+ name: "fromTokenId",
2470
+ type: "u64",
2471
+ },
2472
+ {
2473
+ name: "toTokenId",
2474
+ type: "u64",
2475
+ },
2476
+ ],
2477
+ },
2478
+ {
2479
+ name: "TokenSwapV2",
2480
+ },
2481
+ {
2482
+ name: "HeliumTreasuryManagementRedeemV0",
2483
+ },
2484
+ {
2485
+ name: "StakeDexStakeWrappedSol",
2486
+ },
2487
+ {
2488
+ name: "StakeDexSwapViaStake",
2489
+ fields: [
2490
+ {
2491
+ name: "bridgeStakeSeed",
2492
+ type: "u32",
2493
+ },
2494
+ ],
2495
+ },
2496
+ {
2497
+ name: "GooseFXV2",
2498
+ },
2499
+ {
2500
+ name: "Perps",
2501
+ },
2502
+ {
2503
+ name: "PerpsAddLiquidity",
2504
+ },
2505
+ {
2506
+ name: "PerpsRemoveLiquidity",
2507
+ },
2508
+ {
2509
+ name: "MeteoraDlmm",
2510
+ },
2511
+ {
2512
+ name: "OpenBookV2",
2513
+ fields: [
2514
+ {
2515
+ name: "side",
2516
+ type: {
2517
+ defined: "Side",
2518
+ },
2519
+ },
2520
+ ],
2521
+ },
2522
+ {
2523
+ name: "RaydiumClmmV2",
2524
+ },
2525
+ {
2526
+ name: "StakeDexPrefundWithdrawStakeAndDepositStake",
2527
+ fields: [
2528
+ {
2529
+ name: "bridgeStakeSeed",
2530
+ type: "u32",
2531
+ },
2532
+ ],
2533
+ },
2534
+ {
2535
+ name: "Clone",
2536
+ fields: [
2537
+ {
2538
+ name: "poolIndex",
2539
+ type: "u8",
2540
+ },
2541
+ {
2542
+ name: "quantityIsInput",
2543
+ type: "bool",
2544
+ },
2545
+ {
2546
+ name: "quantityIsCollateral",
2547
+ type: "bool",
2548
+ },
2549
+ ],
2550
+ },
2551
+ {
2552
+ name: "SanctumS",
2553
+ fields: [
2554
+ {
2555
+ name: "srcLstValueCalcAccs",
2556
+ type: "u8",
2557
+ },
2558
+ {
2559
+ name: "dstLstValueCalcAccs",
2560
+ type: "u8",
2561
+ },
2562
+ {
2563
+ name: "srcLstIndex",
2564
+ type: "u32",
2565
+ },
2566
+ {
2567
+ name: "dstLstIndex",
2568
+ type: "u32",
2569
+ },
2570
+ ],
2571
+ },
2572
+ {
2573
+ name: "SanctumSAddLiquidity",
2574
+ fields: [
2575
+ {
2576
+ name: "lstValueCalcAccs",
2577
+ type: "u8",
2578
+ },
2579
+ {
2580
+ name: "lstIndex",
2581
+ type: "u32",
2582
+ },
2583
+ ],
2584
+ },
2585
+ {
2586
+ name: "SanctumSRemoveLiquidity",
2587
+ fields: [
2588
+ {
2589
+ name: "lstValueCalcAccs",
2590
+ type: "u8",
2591
+ },
2592
+ {
2593
+ name: "lstIndex",
2594
+ type: "u32",
2595
+ },
2596
+ ],
2597
+ },
2598
+ {
2599
+ name: "RaydiumCP",
2600
+ },
2601
+ {
2602
+ name: "WhirlpoolSwapV2",
2603
+ fields: [
2604
+ {
2605
+ name: "aToB",
2606
+ type: "bool",
2607
+ },
2608
+ {
2609
+ name: "remainingAccountsInfo",
2610
+ type: {
2611
+ option: {
2612
+ defined: "RemainingAccountsInfo",
2613
+ },
2614
+ },
2615
+ },
2616
+ ],
2617
+ },
2618
+ {
2619
+ name: "OneIntro",
2620
+ },
2621
+ {
2622
+ name: "PumpdotfunWrappedBuy",
2623
+ },
2624
+ {
2625
+ name: "PumpdotfunWrappedSell",
2626
+ },
2627
+ {
2628
+ name: "PerpsV2",
2629
+ },
2630
+ {
2631
+ name: "PerpsV2AddLiquidity",
2632
+ },
2633
+ {
2634
+ name: "PerpsV2RemoveLiquidity",
2635
+ },
2636
+ {
2637
+ name: "MoonshotWrappedBuy",
2638
+ },
2639
+ {
2640
+ name: "MoonshotWrappedSell",
2641
+ },
2642
+ {
2643
+ name: "StabbleStableSwap",
2644
+ },
2645
+ {
2646
+ name: "StabbleWeightedSwap",
2647
+ },
2648
+ {
2649
+ name: "Obric",
2650
+ fields: [
2651
+ {
2652
+ name: "xToY",
2653
+ type: "bool",
2654
+ },
2655
+ ],
2656
+ },
2657
+ {
2658
+ name: "FoxBuyFromEstimatedCost",
2659
+ },
2660
+ {
2661
+ name: "FoxClaimPartial",
2662
+ fields: [
2663
+ {
2664
+ name: "isY",
2665
+ type: "bool",
2666
+ },
2667
+ ],
2668
+ },
2669
+ {
2670
+ name: "SolFi",
2671
+ fields: [
2672
+ {
2673
+ name: "isQuoteToBase",
2674
+ type: "bool",
2675
+ },
2676
+ ],
2677
+ },
2678
+ ],
2679
+ },
2680
+ },
2681
+ {
2682
+ name: "RemainingAccountsSlice",
2683
+ type: {
2684
+ kind: "struct",
2685
+ fields: [
2686
+ {
2687
+ name: "accountsType",
2688
+ type: {
2689
+ defined: "AccountsType",
2690
+ },
2691
+ },
2692
+ {
2693
+ name: "length",
2694
+ type: "u8",
2695
+ },
2696
+ ],
2697
+ },
2698
+ },
2699
+ {
2700
+ name: "RemainingAccountsInfo",
2701
+ type: {
2702
+ kind: "struct",
2703
+ fields: [
2704
+ {
2705
+ name: "slices",
2706
+ type: {
2707
+ vec: {
2708
+ defined: "RemainingAccountsSlice",
2709
+ },
2710
+ },
2711
+ },
2712
+ ],
2713
+ },
2714
+ },
2715
+ {
2716
+ name: "AccountsType",
2717
+ type: {
2718
+ kind: "enum",
2719
+ variants: [
2720
+ {
2721
+ name: "TransferHookA",
2722
+ },
2723
+ {
2724
+ name: "TransferHookB",
2725
+ },
2726
+ ],
2727
+ },
2728
+ },
2729
+ ],
2730
+ events: [
2731
+ {
2732
+ name: "SwapEvent",
2733
+ fields: [
2734
+ {
2735
+ name: "amm",
2736
+ type: "publicKey",
2737
+ index: false,
2738
+ },
2739
+ {
2740
+ name: "inputMint",
2741
+ type: "publicKey",
2742
+ index: false,
2743
+ },
2744
+ {
2745
+ name: "inputAmount",
2746
+ type: "u64",
2747
+ index: false,
2748
+ },
2749
+ {
2750
+ name: "outputMint",
2751
+ type: "publicKey",
2752
+ index: false,
2753
+ },
2754
+ {
2755
+ name: "outputAmount",
2756
+ type: "u64",
2757
+ index: false,
2758
+ },
2759
+ ],
2760
+ },
2761
+ {
2762
+ name: "FeeEvent",
2763
+ fields: [
2764
+ {
2765
+ name: "account",
2766
+ type: "publicKey",
2767
+ index: false,
2768
+ },
2769
+ {
2770
+ name: "mint",
2771
+ type: "publicKey",
2772
+ index: false,
2773
+ },
2774
+ {
2775
+ name: "amount",
2776
+ type: "u64",
2777
+ index: false,
2778
+ },
2779
+ ],
2780
+ },
2781
+ ],
2782
+ errors: [
2783
+ {
2784
+ code: 6000,
2785
+ name: "EmptyRoute",
2786
+ msg: "Empty route",
2787
+ },
2788
+ {
2789
+ code: 6001,
2790
+ name: "SlippageToleranceExceeded",
2791
+ msg: "Slippage tolerance exceeded",
2792
+ },
2793
+ {
2794
+ code: 6002,
2795
+ name: "InvalidCalculation",
2796
+ msg: "Invalid calculation",
2797
+ },
2798
+ {
2799
+ code: 6003,
2800
+ name: "MissingPlatformFeeAccount",
2801
+ msg: "Missing platform fee account",
2802
+ },
2803
+ {
2804
+ code: 6004,
2805
+ name: "InvalidSlippage",
2806
+ msg: "Invalid slippage",
2807
+ },
2808
+ {
2809
+ code: 6005,
2810
+ name: "NotEnoughPercent",
2811
+ msg: "Not enough percent to 100",
2812
+ },
2813
+ {
2814
+ code: 6006,
2815
+ name: "InvalidInputIndex",
2816
+ msg: "Token input index is invalid",
2817
+ },
2818
+ {
2819
+ code: 6007,
2820
+ name: "InvalidOutputIndex",
2821
+ msg: "Token output index is invalid",
2822
+ },
2823
+ {
2824
+ code: 6008,
2825
+ name: "NotEnoughAccountKeys",
2826
+ msg: "Not Enough Account keys",
2827
+ },
2828
+ {
2829
+ code: 6009,
2830
+ name: "NonZeroMinimumOutAmountNotSupported",
2831
+ msg: "Non zero minimum out amount not supported",
2832
+ },
2833
+ {
2834
+ code: 6010,
2835
+ name: "InvalidRoutePlan",
2836
+ msg: "Invalid route plan",
2837
+ },
2838
+ {
2839
+ code: 6011,
2840
+ name: "InvalidReferralAuthority",
2841
+ msg: "Invalid referral authority",
2842
+ },
2843
+ {
2844
+ code: 6012,
2845
+ name: "LedgerTokenAccountDoesNotMatch",
2846
+ msg: "Token account doesn't match the ledger",
2847
+ },
2848
+ {
2849
+ code: 6013,
2850
+ name: "InvalidTokenLedger",
2851
+ msg: "Invalid token ledger",
2852
+ },
2853
+ {
2854
+ code: 6014,
2855
+ name: "IncorrectTokenProgramID",
2856
+ msg: "Token program ID is invalid",
2857
+ },
2858
+ {
2859
+ code: 6015,
2860
+ name: "TokenProgramNotProvided",
2861
+ msg: "Token program not provided",
2862
+ },
2863
+ {
2864
+ code: 6016,
2865
+ name: "SwapNotSupported",
2866
+ msg: "Swap not supported",
2867
+ },
2868
+ {
2869
+ code: 6017,
2870
+ name: "ExactOutAmountNotMatched",
2871
+ msg: "Exact out amount doesn't match",
2872
+ },
2873
+ {
2874
+ code: 6018,
2875
+ name: "SourceAndDestinationMintCannotBeTheSame",
2876
+ msg: "Source mint and destination mint cannot the same",
2877
+ },
2878
+ ],
2879
+ };