@gearbox-protocol/sdk 0.0.54 → 0.0.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/core/token.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { objectEntries, keyToLowercase, swapKeyValue } from "../utils/mappers";
1
2
  import { NetworkType } from "./constants";
2
3
  import { ConvexPoolContract } from "./contracts";
3
4
  import { TradeAction, TradeType } from "./tradeTypes";
@@ -11,7 +12,8 @@ export enum TokenType {
11
12
  YEARN_VAULT_OF_CURVE_LP,
12
13
  YEARN_VAULT_OF_META_CURVE_LP,
13
14
  CONVEX_LP_TOKEN,
14
- CONVEX_STAKED_PHANTOM_TOKEN
15
+ CONVEX_STAKED_PHANTOM_TOKEN,
16
+ DIESEL_LP_TOKEN
15
17
  }
16
18
 
17
19
  export const priority: Record<TokenType, number> = {
@@ -23,7 +25,8 @@ export const priority: Record<TokenType, number> = {
23
25
  [TokenType.YEARN_VAULT_OF_CURVE_LP]: 4,
24
26
  [TokenType.CONVEX_LP_TOKEN]: 5,
25
27
  [TokenType.YEARN_VAULT_OF_META_CURVE_LP]: 5,
26
- [TokenType.CONVEX_STAKED_PHANTOM_TOKEN]: 5
28
+ [TokenType.CONVEX_STAKED_PHANTOM_TOKEN]: 5,
29
+ [TokenType.DIESEL_LP_TOKEN]: 6
27
30
  };
28
31
 
29
32
  export type NormalToken =
@@ -88,74 +91,118 @@ export type ConvexStakedPhantomToken =
88
91
  | "stkcvxcrvPlain3andSUSD"
89
92
  | "stkcvxgusd3CRV";
90
93
 
94
+ export type DieselTokenTypes = "dDAI" | "dUSDC" | "dWBTC" | "dWETH";
95
+ export type GearboxToken = "GEAR";
96
+
91
97
  export type SupportedToken =
92
98
  | NormalToken
93
99
  | YearnLPToken
94
100
  | CurveLPToken
95
101
  | ConvexLPToken
96
- | ConvexStakedPhantomToken;
102
+ | ConvexStakedPhantomToken
103
+ | DieselTokenTypes
104
+ | GearboxToken;
105
+
106
+ export interface TokenBase {
107
+ name: string;
108
+ symbol: string;
109
+ decimals: number;
110
+ }
111
+
112
+ type NormalConnectorTokenData = {
113
+ symbol: NormalToken;
114
+ type: TokenType.CONNECTOR;
115
+ swapActions: Array<TradeAction>;
116
+ lpActions?: Array<TradeAction>;
117
+ } & TokenBase;
118
+
119
+ type NormalTokenData = {
120
+ symbol: NormalToken;
121
+ type: TokenType.NORMAL_TOKEN;
122
+ swapActions: Array<TradeAction>;
123
+ lpActions?: Array<TradeAction>;
124
+ } & TokenBase;
125
+
126
+ type CurveLPTokenData = {
127
+ symbol: CurveLPToken;
128
+ type: TokenType.CURVE_LP;
129
+ swapActions?: Array<TradeAction>;
130
+ lpActions: Array<TradeAction>;
131
+ } & TokenBase;
132
+
133
+ type MetaCurveLPTokenData = {
134
+ symbol: CurveLPToken;
135
+ type: TokenType.META_CURVE_LP;
136
+ lpActions: Array<TradeAction>;
137
+ } & TokenBase;
138
+
139
+ type YearnVaultTokenData = {
140
+ symbol: YearnLPToken;
141
+ type: TokenType.YEARN_VAULT;
142
+ underlying: NormalToken;
143
+ lpActions: Array<TradeAction>;
144
+ } & TokenBase;
145
+
146
+ type YearnVaultOfCurveLPTokenData = {
147
+ symbol: YearnLPToken;
148
+ type: TokenType.YEARN_VAULT_OF_CURVE_LP;
149
+ underlying: CurveLPToken;
150
+ lpActions: Array<TradeAction>;
151
+ } & TokenBase;
152
+
153
+ type YearnVaultOfMetaCurveLPTokenData = {
154
+ symbol: YearnLPToken;
155
+ type: TokenType.YEARN_VAULT_OF_META_CURVE_LP;
156
+ underlying: CurveLPToken;
157
+ lpActions: Array<TradeAction>;
158
+ } & TokenBase;
159
+
160
+ type ConvexLPTokenData = {
161
+ symbol: ConvexLPToken;
162
+ type: TokenType.CONVEX_LP_TOKEN;
163
+ pool: ConvexPoolContract;
164
+ underlying: CurveLPToken;
165
+ stakedToken: ConvexStakedPhantomToken;
166
+ lpActions: Array<TradeAction>;
167
+ } & TokenBase;
168
+
169
+ type ConvexPhantomTokenData = {
170
+ symbol: ConvexStakedPhantomToken;
171
+ type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN;
172
+ pool: ConvexPoolContract;
173
+ underlying: CurveLPToken;
174
+ lpToken: ConvexLPToken;
175
+ lpActions: Array<TradeAction>;
176
+ } & TokenBase;
177
+
178
+ type DieselTokenData = {
179
+ symbol: DieselTokenTypes;
180
+ type: TokenType.DIESEL_LP_TOKEN;
181
+ } & TokenBase;
182
+
183
+ type GearboxTokenData = {
184
+ symbol: GearboxToken;
185
+ type: TokenType.NORMAL_TOKEN;
186
+ } & TokenBase;
97
187
 
98
188
  export type TokenDataI =
99
- | {
100
- symbol: NormalToken;
101
- type: TokenType.CONNECTOR;
102
- swapActions: Array<TradeAction>;
103
- lpActions?: Array<TradeAction>;
104
- }
105
- | {
106
- symbol: NormalToken;
107
- type: TokenType.NORMAL_TOKEN;
108
- swapActions: Array<TradeAction>;
109
- lpActions?: Array<TradeAction>;
110
- }
111
- | {
112
- symbol: CurveLPToken;
113
- type: TokenType.CURVE_LP;
114
- swapActions?: Array<TradeAction>;
115
- lpActions: Array<TradeAction>;
116
- }
117
- | {
118
- symbol: YearnLPToken;
119
- type: TokenType.YEARN_VAULT;
120
- underlying: NormalToken;
121
- lpActions: Array<TradeAction>;
122
- }
123
- | {
124
- symbol: CurveLPToken;
125
- type: TokenType.META_CURVE_LP;
126
- lpActions: Array<TradeAction>;
127
- }
128
- | {
129
- symbol: YearnLPToken;
130
- type: TokenType.YEARN_VAULT_OF_CURVE_LP;
131
- underlying: CurveLPToken;
132
- lpActions: Array<TradeAction>;
133
- }
134
- | {
135
- symbol: YearnLPToken;
136
- type: TokenType.YEARN_VAULT_OF_META_CURVE_LP;
137
- underlying: CurveLPToken;
138
- lpActions: Array<TradeAction>;
139
- }
140
- | {
141
- symbol: ConvexLPToken;
142
- type: TokenType.CONVEX_LP_TOKEN;
143
- pool: ConvexPoolContract;
144
- underlying: CurveLPToken;
145
- stakedToken: ConvexStakedPhantomToken;
146
- lpActions: Array<TradeAction>;
147
- }
148
- | {
149
- symbol: ConvexStakedPhantomToken;
150
- type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN;
151
- pool: ConvexPoolContract;
152
- underlying: CurveLPToken;
153
- lpToken: ConvexLPToken;
154
- lpActions: Array<TradeAction>;
155
- };
189
+ | NormalConnectorTokenData
190
+ | NormalTokenData
191
+ | CurveLPTokenData
192
+ | MetaCurveLPTokenData
193
+ | YearnVaultTokenData
194
+ | YearnVaultOfCurveLPTokenData
195
+ | YearnVaultOfMetaCurveLPTokenData
196
+ | ConvexLPTokenData
197
+ | ConvexPhantomTokenData
198
+ | DieselTokenData
199
+ | GearboxTokenData;
156
200
 
157
201
  export const supportedTokens: Record<SupportedToken, TokenDataI> = {
158
202
  "1INCH": {
203
+ name: "1INCH",
204
+ decimals: 18,
205
+
159
206
  symbol: "1INCH",
160
207
  type: TokenType.NORMAL_TOKEN,
161
208
  swapActions: [
@@ -170,11 +217,14 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
170
217
  {
171
218
  type: TradeType.UniswapV2Swap,
172
219
  contract: "SUSHISWAP_ROUTER"
173
- },
220
+ }
174
221
  ]
175
222
  },
176
223
 
177
224
  AAVE: {
225
+ name: "AAVE",
226
+ decimals: 18,
227
+
178
228
  symbol: "AAVE",
179
229
  type: TokenType.NORMAL_TOKEN,
180
230
  swapActions: [
@@ -189,11 +239,14 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
189
239
  {
190
240
  type: TradeType.UniswapV2Swap,
191
241
  contract: "SUSHISWAP_ROUTER"
192
- },
242
+ }
193
243
  ]
194
244
  },
195
245
 
196
246
  COMP: {
247
+ name: "COMP",
248
+ decimals: 18,
249
+
197
250
  symbol: "COMP",
198
251
  type: TokenType.NORMAL_TOKEN,
199
252
  swapActions: [
@@ -208,11 +261,14 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
208
261
  {
209
262
  type: TradeType.UniswapV2Swap,
210
263
  contract: "SUSHISWAP_ROUTER"
211
- },
264
+ }
212
265
  ]
213
266
  },
214
267
 
215
268
  CRV: {
269
+ name: "CRV",
270
+ decimals: 18,
271
+
216
272
  symbol: "CRV",
217
273
  type: TokenType.NORMAL_TOKEN,
218
274
  swapActions: [
@@ -227,11 +283,14 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
227
283
  {
228
284
  type: TradeType.UniswapV2Swap,
229
285
  contract: "SUSHISWAP_ROUTER"
230
- },
286
+ }
231
287
  ]
232
288
  },
233
289
 
234
290
  DAI: {
291
+ name: "DAI",
292
+ decimals: 18,
293
+
235
294
  symbol: "DAI",
236
295
  type: TokenType.CONNECTOR,
237
296
  swapActions: [
@@ -256,7 +315,7 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
256
315
  type: TradeType.CurveExchange,
257
316
  contract: "CURVE_SUSD_POOL",
258
317
  tokenOut: ["USDC", "USDT", "sUSD"]
259
- },
318
+ }
260
319
  ],
261
320
  lpActions: [
262
321
  {
@@ -278,6 +337,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
278
337
  },
279
338
 
280
339
  DPI: {
340
+ name: "DPI",
341
+ decimals: 18,
342
+
281
343
  symbol: "DPI",
282
344
  type: TokenType.NORMAL_TOKEN,
283
345
  swapActions: [
@@ -297,6 +359,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
297
359
  },
298
360
 
299
361
  FEI: {
362
+ name: "FEI",
363
+ decimals: 18,
364
+
300
365
  symbol: "FEI",
301
366
  type: TokenType.NORMAL_TOKEN,
302
367
  swapActions: [
@@ -316,6 +381,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
316
381
  },
317
382
 
318
383
  LINK: {
384
+ name: "LINK",
385
+ decimals: 18,
386
+
319
387
  symbol: "LINK",
320
388
  type: TokenType.NORMAL_TOKEN,
321
389
  swapActions: [
@@ -335,6 +403,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
335
403
  },
336
404
 
337
405
  SNX: {
406
+ name: "SNX",
407
+ decimals: 18,
408
+
338
409
  symbol: "SNX",
339
410
  type: TokenType.NORMAL_TOKEN,
340
411
  swapActions: [
@@ -354,6 +425,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
354
425
  },
355
426
 
356
427
  SUSHI: {
428
+ name: "SUSHI",
429
+ decimals: 18,
430
+
357
431
  symbol: "SUSHI",
358
432
  type: TokenType.NORMAL_TOKEN,
359
433
  swapActions: [
@@ -365,6 +439,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
365
439
  },
366
440
 
367
441
  UNI: {
442
+ name: "UNI",
443
+ decimals: 18,
444
+
368
445
  symbol: "UNI",
369
446
  type: TokenType.NORMAL_TOKEN,
370
447
  swapActions: [
@@ -380,6 +457,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
380
457
  },
381
458
 
382
459
  USDC: {
460
+ name: "USDC",
461
+ decimals: 6,
462
+
383
463
  symbol: "USDC",
384
464
  type: TokenType.CONNECTOR,
385
465
  swapActions: [
@@ -407,25 +487,28 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
407
487
  }
408
488
  ],
409
489
  lpActions: [
410
- {
411
- type: TradeType.CurveDepositLP,
412
- contract: "CURVE_3CRV_POOL",
413
- tokenOut: "3Crv"
414
- },
415
- {
416
- type: TradeType.CurveDepositLP,
417
- contract: "CURVE_SUSD_POOL",
418
- tokenOut: "crvPlain3andSUSD"
419
- },
420
- {
421
- type: TradeType.YearnDeposit,
422
- contract: "YEARN_USDC_VAULT",
423
- tokenOut: "yvUSDC"
424
- }
490
+ {
491
+ type: TradeType.CurveDepositLP,
492
+ contract: "CURVE_3CRV_POOL",
493
+ tokenOut: "3Crv"
494
+ },
495
+ {
496
+ type: TradeType.CurveDepositLP,
497
+ contract: "CURVE_SUSD_POOL",
498
+ tokenOut: "crvPlain3andSUSD"
499
+ },
500
+ {
501
+ type: TradeType.YearnDeposit,
502
+ contract: "YEARN_USDC_VAULT",
503
+ tokenOut: "yvUSDC"
504
+ }
425
505
  ]
426
506
  },
427
507
 
428
508
  USDT: {
509
+ name: "USDT",
510
+ decimals: 6,
511
+
429
512
  symbol: "USDT",
430
513
  type: TokenType.NORMAL_TOKEN,
431
514
  swapActions: [
@@ -450,23 +533,26 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
450
533
  type: TradeType.CurveExchange,
451
534
  contract: "CURVE_SUSD_POOL",
452
535
  tokenOut: ["DAI", "USDC", "sUSD"]
453
- },
536
+ }
454
537
  ],
455
538
  lpActions: [
456
- {
457
- type: TradeType.CurveDepositLP,
458
- contract: "CURVE_3CRV_POOL",
459
- tokenOut: "3Crv"
460
- },
461
- {
462
- type: TradeType.CurveDepositLP,
463
- contract: "CURVE_SUSD_POOL",
464
- tokenOut: "crvPlain3andSUSD"
465
- }
539
+ {
540
+ type: TradeType.CurveDepositLP,
541
+ contract: "CURVE_3CRV_POOL",
542
+ tokenOut: "3Crv"
543
+ },
544
+ {
545
+ type: TradeType.CurveDepositLP,
546
+ contract: "CURVE_SUSD_POOL",
547
+ tokenOut: "crvPlain3andSUSD"
548
+ }
466
549
  ]
467
550
  },
468
551
 
469
552
  WBTC: {
553
+ name: "WBTC",
554
+ decimals: 8,
555
+
470
556
  symbol: "WBTC",
471
557
  type: TokenType.CONNECTOR,
472
558
  swapActions: [
@@ -484,15 +570,18 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
484
570
  }
485
571
  ],
486
572
  lpActions: [
487
- {
488
- type: TradeType.YearnDeposit,
489
- contract: "YEARN_WBTC_VAULT",
490
- tokenOut: "yvWBTC"
491
- }
573
+ {
574
+ type: TradeType.YearnDeposit,
575
+ contract: "YEARN_WBTC_VAULT",
576
+ tokenOut: "yvWBTC"
577
+ }
492
578
  ]
493
579
  },
494
580
 
495
581
  WETH: {
582
+ name: "WETH",
583
+ decimals: 18,
584
+
496
585
  symbol: "WETH",
497
586
  type: TokenType.CONNECTOR,
498
587
  swapActions: [
@@ -513,22 +602,25 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
513
602
  contract: "CURVE_STETH_GATEWAY",
514
603
  tokenOut: ["STETH"]
515
604
  }
516
- ],
517
- lpActions: [
518
- {
519
- type: TradeType.YearnDeposit,
520
- contract: "YEARN_WETH_VAULT",
521
- tokenOut: "yvWETH"
522
- },
523
- {
524
- type: TradeType.CurveDepositLP,
525
- contract: "CURVE_STETH_GATEWAY",
526
- tokenOut: "steCRV"
527
- },
528
- ]
605
+ ],
606
+ lpActions: [
607
+ {
608
+ type: TradeType.YearnDeposit,
609
+ contract: "YEARN_WETH_VAULT",
610
+ tokenOut: "yvWETH"
611
+ },
612
+ {
613
+ type: TradeType.CurveDepositLP,
614
+ contract: "CURVE_STETH_GATEWAY",
615
+ tokenOut: "steCRV"
616
+ }
617
+ ]
529
618
  },
530
619
 
531
620
  YFI: {
621
+ name: "YFI",
622
+ decimals: 18,
623
+
532
624
  symbol: "YFI",
533
625
  type: TokenType.NORMAL_TOKEN,
534
626
  swapActions: [
@@ -549,37 +641,43 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
549
641
 
550
642
  /// UPDATE
551
643
  STETH: {
644
+ name: "stETH",
645
+ decimals: 18,
646
+
552
647
  symbol: "STETH",
553
648
  type: TokenType.NORMAL_TOKEN,
554
649
  swapActions: [
555
- {
556
- type: TradeType.UniswapV3Swap,
557
- contract: "UNISWAP_V3_ROUTER"
558
- },
559
- {
560
- type: TradeType.UniswapV2Swap,
561
- contract: "UNISWAP_V2_ROUTER"
562
- },
563
- {
564
- type: TradeType.UniswapV2Swap,
565
- contract: "SUSHISWAP_ROUTER"
566
- },
567
- {
650
+ {
651
+ type: TradeType.UniswapV3Swap,
652
+ contract: "UNISWAP_V3_ROUTER"
653
+ },
654
+ {
655
+ type: TradeType.UniswapV2Swap,
656
+ contract: "UNISWAP_V2_ROUTER"
657
+ },
658
+ {
659
+ type: TradeType.UniswapV2Swap,
660
+ contract: "SUSHISWAP_ROUTER"
661
+ },
662
+ {
568
663
  type: TradeType.CurveExchange,
569
664
  contract: "CURVE_STETH_GATEWAY",
570
665
  tokenOut: ["WETH"]
571
- }
666
+ }
572
667
  ],
573
668
  lpActions: [
574
- {
575
- type: TradeType.CurveDepositLP,
576
- contract: "CURVE_STETH_GATEWAY",
577
- tokenOut: "steCRV"
578
- },
669
+ {
670
+ type: TradeType.CurveDepositLP,
671
+ contract: "CURVE_STETH_GATEWAY",
672
+ tokenOut: "steCRV"
673
+ }
579
674
  ]
580
675
  },
581
676
 
582
677
  FTM: {
678
+ name: "FTM",
679
+ decimals: 18,
680
+
583
681
  symbol: "FTM",
584
682
  type: TokenType.NORMAL_TOKEN,
585
683
  swapActions: [
@@ -599,6 +697,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
599
697
  },
600
698
 
601
699
  CVX: {
700
+ name: "CVX",
701
+ decimals: 18,
702
+
602
703
  symbol: "CVX",
603
704
  type: TokenType.NORMAL_TOKEN,
604
705
  swapActions: [
@@ -618,6 +719,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
618
719
  },
619
720
 
620
721
  FRAX: {
722
+ name: "FRAX",
723
+ decimals: 18,
724
+
621
725
  symbol: "FRAX",
622
726
  type: TokenType.NORMAL_TOKEN,
623
727
  swapActions: [
@@ -640,15 +744,18 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
640
744
  }
641
745
  ],
642
746
  lpActions: [
643
- {
644
- type: TradeType.CurveDepositLP,
645
- contract: "CURVE_FRAX_POOL",
646
- tokenOut: "FRAX3CRV"
647
- }
747
+ {
748
+ type: TradeType.CurveDepositLP,
749
+ contract: "CURVE_FRAX_POOL",
750
+ tokenOut: "FRAX3CRV"
751
+ }
648
752
  ]
649
753
  },
650
754
 
651
755
  FXS: {
756
+ name: "FXS",
757
+ decimals: 18,
758
+
652
759
  symbol: "FXS",
653
760
  type: TokenType.NORMAL_TOKEN,
654
761
  swapActions: [
@@ -668,6 +775,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
668
775
  },
669
776
 
670
777
  LDO: {
778
+ name: "LDO",
779
+ decimals: 18,
780
+
671
781
  symbol: "LDO",
672
782
  type: TokenType.NORMAL_TOKEN,
673
783
  swapActions: [
@@ -687,6 +797,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
687
797
  },
688
798
 
689
799
  SPELL: {
800
+ name: "SPELL",
801
+ decimals: 18,
802
+
690
803
  symbol: "SPELL",
691
804
  type: TokenType.NORMAL_TOKEN,
692
805
  swapActions: [
@@ -706,99 +819,111 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
706
819
  },
707
820
 
708
821
  LUSD: {
822
+ name: "LUSD",
823
+ decimals: 18,
824
+
709
825
  symbol: "LUSD",
710
826
  type: TokenType.NORMAL_TOKEN,
711
827
  swapActions: [
712
- {
713
- type: TradeType.UniswapV3Swap,
714
- contract: "UNISWAP_V3_ROUTER"
715
- },
716
- {
717
- type: TradeType.UniswapV2Swap,
718
- contract: "UNISWAP_V2_ROUTER"
719
- },
720
- {
721
- type: TradeType.UniswapV2Swap,
722
- contract: "SUSHISWAP_ROUTER"
723
- },
724
- {
725
- type: TradeType.CurveExchange,
726
- contract: "CURVE_LUSD_POOL",
727
- tokenOut: ["3Crv"]
728
- }
828
+ {
829
+ type: TradeType.UniswapV3Swap,
830
+ contract: "UNISWAP_V3_ROUTER"
831
+ },
832
+ {
833
+ type: TradeType.UniswapV2Swap,
834
+ contract: "UNISWAP_V2_ROUTER"
835
+ },
836
+ {
837
+ type: TradeType.UniswapV2Swap,
838
+ contract: "SUSHISWAP_ROUTER"
839
+ },
840
+ {
841
+ type: TradeType.CurveExchange,
842
+ contract: "CURVE_LUSD_POOL",
843
+ tokenOut: ["3Crv"]
844
+ }
729
845
  ],
730
846
  lpActions: [
731
- {
732
- type: TradeType.CurveDepositLP,
733
- contract: "CURVE_LUSD_POOL",
734
- tokenOut: "LUSD3CRV"
735
- }
847
+ {
848
+ type: TradeType.CurveDepositLP,
849
+ contract: "CURVE_LUSD_POOL",
850
+ tokenOut: "LUSD3CRV"
851
+ }
736
852
  ]
737
853
  },
738
854
 
739
855
  sUSD: {
856
+ name: "sUSD",
857
+ decimals: 18,
858
+
740
859
  symbol: "sUSD",
741
860
  type: TokenType.NORMAL_TOKEN,
742
861
  swapActions: [
743
862
  {
744
863
  type: TradeType.UniswapV3Swap,
745
864
  contract: "UNISWAP_V3_ROUTER"
746
- },
747
- {
865
+ },
866
+ {
748
867
  type: TradeType.UniswapV2Swap,
749
868
  contract: "UNISWAP_V2_ROUTER"
750
- },
751
- {
869
+ },
870
+ {
752
871
  type: TradeType.UniswapV2Swap,
753
872
  contract: "SUSHISWAP_ROUTER"
754
- },
755
- {
756
- type: TradeType.CurveExchange,
757
- contract: "CURVE_SUSD_POOL",
758
- tokenOut: ["DAI", "USDT", "USDC"]
759
- }
873
+ },
874
+ {
875
+ type: TradeType.CurveExchange,
876
+ contract: "CURVE_SUSD_POOL",
877
+ tokenOut: ["DAI", "USDT", "USDC"]
878
+ }
760
879
  ],
761
880
  lpActions: [
762
- {
763
- type: TradeType.CurveDepositLP,
764
- contract: "CURVE_SUSD_POOL",
765
- tokenOut: "crvPlain3andSUSD"
766
- }
881
+ {
882
+ type: TradeType.CurveDepositLP,
883
+ contract: "CURVE_SUSD_POOL",
884
+ tokenOut: "crvPlain3andSUSD"
885
+ }
767
886
  ]
768
887
  },
769
888
 
770
889
  GUSD: {
890
+ name: "GUSD",
891
+ decimals: 18,
892
+
771
893
  symbol: "GUSD",
772
894
  type: TokenType.NORMAL_TOKEN,
773
895
  swapActions: [
774
- {
775
- type: TradeType.UniswapV3Swap,
776
- contract: "UNISWAP_V3_ROUTER"
777
- },
778
- {
779
- type: TradeType.UniswapV2Swap,
780
- contract: "UNISWAP_V2_ROUTER"
781
- },
782
- {
783
- type: TradeType.UniswapV2Swap,
784
- contract: "SUSHISWAP_ROUTER"
785
- },
786
- {
787
- type: TradeType.CurveExchange,
788
- contract: "CURVE_GUSD_POOL",
789
- tokenOut: ["3Crv"]
790
- }
896
+ {
897
+ type: TradeType.UniswapV3Swap,
898
+ contract: "UNISWAP_V3_ROUTER"
899
+ },
900
+ {
901
+ type: TradeType.UniswapV2Swap,
902
+ contract: "UNISWAP_V2_ROUTER"
903
+ },
904
+ {
905
+ type: TradeType.UniswapV2Swap,
906
+ contract: "SUSHISWAP_ROUTER"
907
+ },
908
+ {
909
+ type: TradeType.CurveExchange,
910
+ contract: "CURVE_GUSD_POOL",
911
+ tokenOut: ["3Crv"]
912
+ }
791
913
  ],
792
914
  lpActions: [
793
- {
794
- type: TradeType.CurveDepositLP,
795
- contract: "CURVE_GUSD_POOL",
796
- tokenOut: "gusd3CRV"
797
- }
915
+ {
916
+ type: TradeType.CurveDepositLP,
917
+ contract: "CURVE_GUSD_POOL",
918
+ tokenOut: "gusd3CRV"
919
+ }
798
920
  ]
799
921
  },
800
922
 
801
923
  LUNA: {
924
+ name: "LUNA",
925
+ decimals: 18,
926
+
802
927
  symbol: "LUNA",
803
928
  type: TokenType.NORMAL_TOKEN,
804
929
  swapActions: [
@@ -816,7 +941,11 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
816
941
  }
817
942
  ]
818
943
  },
944
+
819
945
  LQTY: {
946
+ name: "LQTY",
947
+ decimals: 18,
948
+
820
949
  symbol: "LQTY",
821
950
  type: TokenType.NORMAL_TOKEN,
822
951
  swapActions: [
@@ -837,6 +966,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
837
966
 
838
967
  // YEARN TOKENS
839
968
  yvDAI: {
969
+ name: "yvDAI",
970
+ decimals: 18,
971
+
840
972
  symbol: "yvDAI",
841
973
  type: TokenType.YEARN_VAULT,
842
974
  underlying: "DAI",
@@ -850,6 +982,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
850
982
  },
851
983
 
852
984
  yvUSDC: {
985
+ name: "yvUSDC",
986
+ decimals: 6,
987
+
853
988
  symbol: "yvUSDC",
854
989
  type: TokenType.YEARN_VAULT,
855
990
  underlying: "USDC",
@@ -863,6 +998,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
863
998
  },
864
999
 
865
1000
  yvWETH: {
1001
+ name: "yvWETH",
1002
+ decimals: 18,
1003
+
866
1004
  symbol: "yvWETH",
867
1005
  type: TokenType.YEARN_VAULT,
868
1006
  underlying: "WETH",
@@ -876,6 +1014,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
876
1014
  },
877
1015
 
878
1016
  yvWBTC: {
1017
+ name: "yvWBTC",
1018
+ decimals: 8,
1019
+
879
1020
  symbol: "yvWBTC",
880
1021
  type: TokenType.YEARN_VAULT,
881
1022
  underlying: "WBTC",
@@ -890,6 +1031,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
890
1031
 
891
1032
  // CURVE LP TOKENS
892
1033
  "3Crv": {
1034
+ name: "3Crv",
1035
+ decimals: 18,
1036
+
893
1037
  symbol: "3Crv",
894
1038
  type: TokenType.CURVE_LP,
895
1039
  lpActions: [
@@ -912,6 +1056,9 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
912
1056
  },
913
1057
 
914
1058
  steCRV: {
1059
+ name: "steCRV",
1060
+ decimals: 18,
1061
+
915
1062
  symbol: "steCRV",
916
1063
  type: TokenType.CURVE_LP,
917
1064
  lpActions: [
@@ -934,306 +1081,400 @@ export const supportedTokens: Record<SupportedToken, TokenDataI> = {
934
1081
  },
935
1082
 
936
1083
  crvPlain3andSUSD: {
1084
+ name: "crvPlain3andSUSD",
1085
+ decimals: 18,
1086
+
937
1087
  symbol: "crvPlain3andSUSD",
938
1088
  type: TokenType.CURVE_LP,
939
1089
  lpActions: [
940
- {
941
- type: TradeType.CurveWithdrawLP,
942
- contract: "CURVE_SUSD_POOL",
943
- tokenOut: ["DAI", "USDC", "USDT", "sUSD"]
944
- },
945
- {
946
- type: TradeType.ConvexDepositLP,
947
- contract: "CONVEX_BOOSTER",
948
- tokenOut: "cvxcrvPlain3andSUSD"
949
- },
950
- {
951
- type: TradeType.ConvexDepositLPAndStake,
952
- contract: "CONVEX_BOOSTER",
953
- tokenOut: "stkcvxcrvPlain3andSUSD"
954
- }
1090
+ {
1091
+ type: TradeType.CurveWithdrawLP,
1092
+ contract: "CURVE_SUSD_POOL",
1093
+ tokenOut: ["DAI", "USDC", "USDT", "sUSD"]
1094
+ },
1095
+ {
1096
+ type: TradeType.ConvexDepositLP,
1097
+ contract: "CONVEX_BOOSTER",
1098
+ tokenOut: "cvxcrvPlain3andSUSD"
1099
+ },
1100
+ {
1101
+ type: TradeType.ConvexDepositLPAndStake,
1102
+ contract: "CONVEX_BOOSTER",
1103
+ tokenOut: "stkcvxcrvPlain3andSUSD"
1104
+ }
955
1105
  ]
956
1106
  },
957
1107
 
958
1108
  // META CURVE LP TOKENS
959
1109
  FRAX3CRV: {
1110
+ name: "FRAX3CRV-f",
1111
+ decimals: 18,
1112
+
960
1113
  symbol: "FRAX3CRV",
961
1114
  type: TokenType.META_CURVE_LP,
962
1115
  lpActions: [
963
- {
964
- type: TradeType.CurveWithdrawLP,
965
- contract: "CURVE_FRAX_POOL",
966
- tokenOut: ["FRAX", "3Crv"]
967
- },
968
- {
969
- type: TradeType.ConvexDepositLP,
970
- contract: "CONVEX_BOOSTER",
971
- tokenOut: "cvxFRAX3CRV"
972
- },
973
- {
974
- type: TradeType.ConvexDepositLPAndStake,
975
- contract: "CONVEX_BOOSTER",
976
- tokenOut: "stkcvxFRAX3CRV"
977
- }
1116
+ {
1117
+ type: TradeType.CurveWithdrawLP,
1118
+ contract: "CURVE_FRAX_POOL",
1119
+ tokenOut: ["FRAX", "3Crv"]
1120
+ },
1121
+ {
1122
+ type: TradeType.ConvexDepositLP,
1123
+ contract: "CONVEX_BOOSTER",
1124
+ tokenOut: "cvxFRAX3CRV"
1125
+ },
1126
+ {
1127
+ type: TradeType.ConvexDepositLPAndStake,
1128
+ contract: "CONVEX_BOOSTER",
1129
+ tokenOut: "stkcvxFRAX3CRV"
1130
+ }
978
1131
  ]
979
1132
  },
980
1133
 
981
1134
  LUSD3CRV: {
1135
+ name: "LUSD3CRV-f",
1136
+ decimals: 18,
1137
+
982
1138
  symbol: "LUSD3CRV",
983
1139
  type: TokenType.META_CURVE_LP,
984
1140
  lpActions: [
985
- {
986
- type: TradeType.CurveWithdrawLP,
987
- contract: "CURVE_LUSD_POOL",
988
- tokenOut: ["LUSD", "3Crv"]
989
- }
1141
+ {
1142
+ type: TradeType.CurveWithdrawLP,
1143
+ contract: "CURVE_LUSD_POOL",
1144
+ tokenOut: ["LUSD", "3Crv"]
1145
+ }
990
1146
  ]
991
1147
  },
992
1148
 
993
1149
  gusd3CRV: {
1150
+ name: "gusd3CRV",
1151
+ decimals: 18,
1152
+
994
1153
  symbol: "gusd3CRV",
995
1154
  type: TokenType.META_CURVE_LP,
996
1155
  lpActions: [
997
- {
998
- type: TradeType.CurveWithdrawLP,
999
- contract: "CURVE_GUSD_POOL",
1000
- tokenOut: ["GUSD", "3Crv"]
1001
- },
1002
- {
1003
- type: TradeType.ConvexDepositLP,
1004
- contract: "CONVEX_BOOSTER",
1005
- tokenOut: "cvxgusd3CRV"
1006
- },
1007
- {
1008
- type: TradeType.ConvexDepositLPAndStake,
1009
- contract: "CONVEX_BOOSTER",
1010
- tokenOut: "stkcvxgusd3CRV"
1011
- }
1156
+ {
1157
+ type: TradeType.CurveWithdrawLP,
1158
+ contract: "CURVE_GUSD_POOL",
1159
+ tokenOut: ["GUSD", "3Crv"]
1160
+ },
1161
+ {
1162
+ type: TradeType.ConvexDepositLP,
1163
+ contract: "CONVEX_BOOSTER",
1164
+ tokenOut: "cvxgusd3CRV"
1165
+ },
1166
+ {
1167
+ type: TradeType.ConvexDepositLPAndStake,
1168
+ contract: "CONVEX_BOOSTER",
1169
+ tokenOut: "stkcvxgusd3CRV"
1170
+ }
1012
1171
  ]
1013
1172
  },
1014
1173
 
1015
1174
  // CONVEX LP TOKENS
1016
1175
  cvx3Crv: {
1176
+ name: "cvx3Crv",
1177
+ decimals: 18,
1178
+
1017
1179
  symbol: "cvx3Crv",
1018
1180
  type: TokenType.CONVEX_LP_TOKEN,
1019
1181
  pool: "CONVEX_3CRV_POOL",
1020
1182
  underlying: "3Crv",
1021
1183
  stakedToken: "stkcvx3Crv",
1022
1184
  lpActions: [
1023
- {
1024
- type: TradeType.ConvexWithdrawLP,
1025
- contract: "CONVEX_BOOSTER",
1026
- tokenOut: "3Crv"
1027
- },
1028
- {
1029
- type: TradeType.ConvexStake,
1030
- contract: "CONVEX_3CRV_POOL",
1031
- tokenOut: "stkcvx3Crv"
1032
- }
1185
+ {
1186
+ type: TradeType.ConvexWithdrawLP,
1187
+ contract: "CONVEX_BOOSTER",
1188
+ tokenOut: "3Crv"
1189
+ },
1190
+ {
1191
+ type: TradeType.ConvexStake,
1192
+ contract: "CONVEX_3CRV_POOL",
1193
+ tokenOut: "stkcvx3Crv"
1194
+ }
1033
1195
  ]
1034
1196
  },
1035
1197
 
1036
1198
  cvxsteCRV: {
1199
+ name: "cvxsteCRV",
1200
+ decimals: 18,
1201
+
1037
1202
  symbol: "cvxsteCRV",
1038
1203
  type: TokenType.CONVEX_LP_TOKEN,
1039
1204
  pool: "CONVEX_STECRV_POOL",
1040
1205
  underlying: "steCRV",
1041
1206
  stakedToken: "stkcvxsteCRV",
1042
1207
  lpActions: [
1043
- {
1044
- type: TradeType.ConvexWithdrawLP,
1045
- contract: "CONVEX_BOOSTER",
1046
- tokenOut: "steCRV"
1047
- },
1048
- {
1049
- type: TradeType.ConvexStake,
1050
- contract: "CONVEX_STECRV_POOL",
1051
- tokenOut: "stkcvxsteCRV"
1052
- }
1208
+ {
1209
+ type: TradeType.ConvexWithdrawLP,
1210
+ contract: "CONVEX_BOOSTER",
1211
+ tokenOut: "steCRV"
1212
+ },
1213
+ {
1214
+ type: TradeType.ConvexStake,
1215
+ contract: "CONVEX_STECRV_POOL",
1216
+ tokenOut: "stkcvxsteCRV"
1217
+ }
1053
1218
  ]
1054
1219
  },
1055
1220
 
1056
1221
  cvxFRAX3CRV: {
1222
+ name: "cvxFRAX3CRV-f",
1223
+ decimals: 18,
1224
+
1057
1225
  symbol: "cvxFRAX3CRV",
1058
1226
  type: TokenType.CONVEX_LP_TOKEN,
1059
1227
  pool: "CONVEX_FRAX3CRV_POOL",
1060
1228
  underlying: "FRAX3CRV",
1061
1229
  stakedToken: "stkcvxFRAX3CRV",
1062
1230
  lpActions: [
1063
- {
1064
- type: TradeType.ConvexWithdrawLP,
1065
- contract: "CONVEX_BOOSTER",
1066
- tokenOut: "FRAX3CRV"
1067
- },
1068
- {
1069
- type: TradeType.ConvexStake,
1070
- contract: "CONVEX_FRAX3CRV_POOL",
1071
- tokenOut: "stkcvxFRAX3CRV"
1072
- }
1231
+ {
1232
+ type: TradeType.ConvexWithdrawLP,
1233
+ contract: "CONVEX_BOOSTER",
1234
+ tokenOut: "FRAX3CRV"
1235
+ },
1236
+ {
1237
+ type: TradeType.ConvexStake,
1238
+ contract: "CONVEX_FRAX3CRV_POOL",
1239
+ tokenOut: "stkcvxFRAX3CRV"
1240
+ }
1073
1241
  ]
1074
1242
  },
1075
1243
 
1076
1244
  cvxcrvPlain3andSUSD: {
1245
+ name: "cvxcrvPlain3andSUSD",
1246
+ decimals: 18,
1247
+
1077
1248
  symbol: "cvxcrvPlain3andSUSD",
1078
1249
  type: TokenType.CONVEX_LP_TOKEN,
1079
1250
  pool: "CONVEX_SUSD_POOL",
1080
1251
  underlying: "crvPlain3andSUSD",
1081
1252
  stakedToken: "stkcvxcrvPlain3andSUSD",
1082
1253
  lpActions: [
1083
- {
1084
- type: TradeType.ConvexWithdrawLP,
1085
- contract: "CONVEX_BOOSTER",
1086
- tokenOut: "crvPlain3andSUSD"
1087
- },
1088
- {
1089
- type: TradeType.ConvexStake,
1090
- contract: "CONVEX_SUSD_POOL",
1091
- tokenOut: "stkcvxcrvPlain3andSUSD"
1092
- }
1254
+ {
1255
+ type: TradeType.ConvexWithdrawLP,
1256
+ contract: "CONVEX_BOOSTER",
1257
+ tokenOut: "crvPlain3andSUSD"
1258
+ },
1259
+ {
1260
+ type: TradeType.ConvexStake,
1261
+ contract: "CONVEX_SUSD_POOL",
1262
+ tokenOut: "stkcvxcrvPlain3andSUSD"
1263
+ }
1093
1264
  ]
1094
1265
  },
1095
1266
 
1096
1267
  cvxgusd3CRV: {
1268
+ name: "cvxgusd3CRV",
1269
+ decimals: 18,
1270
+
1097
1271
  symbol: "cvxgusd3CRV",
1098
1272
  type: TokenType.CONVEX_LP_TOKEN,
1099
1273
  pool: "CONVEX_GUSD_POOL",
1100
1274
  underlying: "gusd3CRV",
1101
1275
  stakedToken: "stkcvxgusd3CRV",
1102
1276
  lpActions: [
1103
- {
1104
- type: TradeType.ConvexWithdrawLP,
1105
- contract: "CONVEX_BOOSTER",
1106
- tokenOut: "gusd3CRV"
1107
- },
1108
- {
1109
- type: TradeType.ConvexStake,
1110
- contract: "CONVEX_GUSD_POOL",
1111
- tokenOut: "stkcvxgusd3CRV"
1112
- }
1113
- ]
1114
- },
1115
-
1116
- // YEARN- CURVE TOKENS
1117
- yvCurve_stETH: {
1118
- symbol: "yvCurve_stETH",
1119
- type: TokenType.YEARN_VAULT_OF_CURVE_LP,
1120
- underlying: "steCRV",
1121
- lpActions: [
1122
- {
1123
- type: TradeType.YearnWithdraw,
1124
- contract: "YEARN_CURVE_STETH_VAULT",
1125
- tokenOut: "steCRV"
1126
- }
1127
- ]
1128
- },
1129
- yvCURVE_FRAX_POOL: {
1130
- symbol: "yvCURVE_FRAX_POOL",
1131
- type: TokenType.YEARN_VAULT_OF_META_CURVE_LP,
1132
- underlying: "FRAX3CRV",
1133
- lpActions: [
1134
- {
1135
- type: TradeType.YearnWithdraw,
1136
- contract: "YEARN_CURVE_FRAX_VAULT",
1137
- tokenOut: "FRAX3CRV"
1138
- }
1277
+ {
1278
+ type: TradeType.ConvexWithdrawLP,
1279
+ contract: "CONVEX_BOOSTER",
1280
+ tokenOut: "gusd3CRV"
1281
+ },
1282
+ {
1283
+ type: TradeType.ConvexStake,
1284
+ contract: "CONVEX_GUSD_POOL",
1285
+ tokenOut: "stkcvxgusd3CRV"
1286
+ }
1139
1287
  ]
1140
1288
  },
1141
1289
 
1142
1290
  // STAKED CONVEX
1143
1291
  stkcvx3Crv: {
1292
+ name: "stkcvx3Crv",
1293
+ decimals: 18,
1294
+
1144
1295
  symbol: "stkcvx3Crv",
1145
1296
  type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
1146
1297
  pool: "CONVEX_3CRV_POOL",
1147
1298
  underlying: "3Crv",
1148
1299
  lpToken: "cvx3Crv",
1149
1300
  lpActions: [
1150
- {
1151
- type: TradeType.ConvexWithdraw,
1152
- contract: "CONVEX_3CRV_POOL",
1153
- tokenOut: "cvx3Crv"
1154
- },
1155
- {
1156
- type: TradeType.ConvexWithdrawAndUnwrap,
1157
- contract: "CONVEX_3CRV_POOL",
1158
- tokenOut: "3Crv"
1159
- }
1301
+ {
1302
+ type: TradeType.ConvexWithdraw,
1303
+ contract: "CONVEX_3CRV_POOL",
1304
+ tokenOut: "cvx3Crv"
1305
+ },
1306
+ {
1307
+ type: TradeType.ConvexWithdrawAndUnwrap,
1308
+ contract: "CONVEX_3CRV_POOL",
1309
+ tokenOut: "3Crv"
1310
+ }
1160
1311
  ]
1161
1312
  },
1313
+
1162
1314
  stkcvxsteCRV: {
1315
+ name: "stkcvxsteCRV",
1316
+ decimals: 18,
1317
+
1163
1318
  symbol: "stkcvxsteCRV",
1164
1319
  type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
1165
1320
  pool: "CONVEX_STECRV_POOL",
1166
1321
  underlying: "steCRV",
1167
1322
  lpToken: "cvxsteCRV",
1168
1323
  lpActions: [
1169
- {
1170
- type: TradeType.ConvexWithdraw,
1171
- contract: "CONVEX_STECRV_POOL",
1172
- tokenOut: "cvxsteCRV"
1173
- },
1174
- {
1175
- type: TradeType.ConvexWithdrawAndUnwrap,
1176
- contract: "CONVEX_STECRV_POOL",
1177
- tokenOut: "steCRV"
1178
- }
1324
+ {
1325
+ type: TradeType.ConvexWithdraw,
1326
+ contract: "CONVEX_STECRV_POOL",
1327
+ tokenOut: "cvxsteCRV"
1328
+ },
1329
+ {
1330
+ type: TradeType.ConvexWithdrawAndUnwrap,
1331
+ contract: "CONVEX_STECRV_POOL",
1332
+ tokenOut: "steCRV"
1333
+ }
1179
1334
  ]
1180
1335
  },
1336
+
1181
1337
  stkcvxFRAX3CRV: {
1338
+ name: "stkcvxFRAX3CRV-f",
1339
+ decimals: 18,
1340
+
1182
1341
  symbol: "stkcvxFRAX3CRV",
1183
1342
  type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
1184
1343
  pool: "CONVEX_FRAX3CRV_POOL",
1185
1344
  underlying: "FRAX3CRV",
1186
1345
  lpToken: "cvxFRAX3CRV",
1187
1346
  lpActions: [
1188
- {
1189
- type: TradeType.ConvexWithdraw,
1190
- contract: "CONVEX_FRAX3CRV_POOL",
1191
- tokenOut: "cvxFRAX3CRV"
1192
- },
1193
- {
1194
- type: TradeType.ConvexWithdrawAndUnwrap,
1195
- contract: "CONVEX_FRAX3CRV_POOL",
1196
- tokenOut: "FRAX3CRV"
1197
- }
1347
+ {
1348
+ type: TradeType.ConvexWithdraw,
1349
+ contract: "CONVEX_FRAX3CRV_POOL",
1350
+ tokenOut: "cvxFRAX3CRV"
1351
+ },
1352
+ {
1353
+ type: TradeType.ConvexWithdrawAndUnwrap,
1354
+ contract: "CONVEX_FRAX3CRV_POOL",
1355
+ tokenOut: "FRAX3CRV"
1356
+ }
1198
1357
  ]
1199
1358
  },
1359
+
1200
1360
  stkcvxcrvPlain3andSUSD: {
1361
+ name: "stkcvxcrvPlain3andSUSD",
1362
+ decimals: 18,
1363
+
1201
1364
  symbol: "stkcvxcrvPlain3andSUSD",
1202
1365
  type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
1203
1366
  pool: "CONVEX_SUSD_POOL",
1204
1367
  underlying: "crvPlain3andSUSD",
1205
1368
  lpToken: "cvxcrvPlain3andSUSD",
1206
1369
  lpActions: [
1207
- {
1208
- type: TradeType.ConvexWithdraw,
1209
- contract: "CONVEX_SUSD_POOL",
1210
- tokenOut: "cvxcrvPlain3andSUSD"
1211
- },
1212
- {
1213
- type: TradeType.ConvexWithdrawAndUnwrap,
1214
- contract: "CONVEX_SUSD_POOL",
1215
- tokenOut: "crvPlain3andSUSD"
1216
- }
1370
+ {
1371
+ type: TradeType.ConvexWithdraw,
1372
+ contract: "CONVEX_SUSD_POOL",
1373
+ tokenOut: "cvxcrvPlain3andSUSD"
1374
+ },
1375
+ {
1376
+ type: TradeType.ConvexWithdrawAndUnwrap,
1377
+ contract: "CONVEX_SUSD_POOL",
1378
+ tokenOut: "crvPlain3andSUSD"
1379
+ }
1217
1380
  ]
1218
1381
  },
1382
+
1219
1383
  stkcvxgusd3CRV: {
1384
+ name: "stkcvxgusd3CRV",
1385
+ decimals: 18,
1386
+
1220
1387
  symbol: "stkcvxgusd3CRV",
1221
1388
  type: TokenType.CONVEX_STAKED_PHANTOM_TOKEN,
1222
1389
  pool: "CONVEX_GUSD_POOL",
1223
1390
  underlying: "gusd3CRV",
1224
1391
  lpToken: "cvxgusd3CRV",
1225
1392
  lpActions: [
1226
- {
1227
- type: TradeType.ConvexWithdraw,
1228
- contract: "CONVEX_GUSD_POOL",
1229
- tokenOut: "cvxgusd3CRV"
1230
- },
1231
- {
1232
- type: TradeType.ConvexWithdrawAndUnwrap,
1233
- contract: "CONVEX_GUSD_POOL",
1234
- tokenOut: "gusd3CRV"
1235
- }
1393
+ {
1394
+ type: TradeType.ConvexWithdraw,
1395
+ contract: "CONVEX_GUSD_POOL",
1396
+ tokenOut: "cvxgusd3CRV"
1397
+ },
1398
+ {
1399
+ type: TradeType.ConvexWithdrawAndUnwrap,
1400
+ contract: "CONVEX_GUSD_POOL",
1401
+ tokenOut: "gusd3CRV"
1402
+ }
1236
1403
  ]
1404
+ },
1405
+
1406
+ // YEARN- CURVE TOKENS
1407
+ yvCurve_stETH: {
1408
+ name: "yvCurve-stETH",
1409
+ decimals: 18,
1410
+
1411
+ symbol: "yvCurve_stETH",
1412
+ type: TokenType.YEARN_VAULT_OF_CURVE_LP,
1413
+ underlying: "steCRV",
1414
+ lpActions: [
1415
+ {
1416
+ type: TradeType.YearnWithdraw,
1417
+ contract: "YEARN_CURVE_STETH_VAULT",
1418
+ tokenOut: "steCRV"
1419
+ }
1420
+ ]
1421
+ },
1422
+
1423
+ yvCURVE_FRAX_POOL: {
1424
+ name: "yvCurve-FRAX",
1425
+ decimals: 18,
1426
+
1427
+ symbol: "yvCURVE_FRAX_POOL",
1428
+ type: TokenType.YEARN_VAULT_OF_META_CURVE_LP,
1429
+ underlying: "FRAX3CRV",
1430
+ lpActions: [
1431
+ {
1432
+ type: TradeType.YearnWithdraw,
1433
+ contract: "YEARN_CURVE_FRAX_VAULT",
1434
+ tokenOut: "FRAX3CRV"
1435
+ }
1436
+ ]
1437
+ },
1438
+
1439
+ //GEARBOX
1440
+ dDAI: {
1441
+ name: "dDAI",
1442
+ decimals: 18,
1443
+
1444
+ symbol: "dDAI",
1445
+ type: TokenType.DIESEL_LP_TOKEN
1446
+ },
1447
+
1448
+ dUSDC: {
1449
+ name: "dUSDC",
1450
+ decimals: 6,
1451
+
1452
+ symbol: "dUSDC",
1453
+ type: TokenType.DIESEL_LP_TOKEN
1454
+ },
1455
+
1456
+ dWBTC: {
1457
+ name: "dWBTC",
1458
+ decimals: 8,
1459
+
1460
+ symbol: "dWBTC",
1461
+ type: TokenType.DIESEL_LP_TOKEN
1462
+ },
1463
+
1464
+ dWETH: {
1465
+ name: "dWETH",
1466
+ decimals: 18,
1467
+
1468
+ symbol: "dWETH",
1469
+ type: TokenType.DIESEL_LP_TOKEN
1470
+ },
1471
+
1472
+ GEAR: {
1473
+ name: "GEAR",
1474
+ decimals: 18,
1475
+
1476
+ symbol: "GEAR",
1477
+ type: TokenType.NORMAL_TOKEN
1237
1478
  }
1238
1479
  };
1239
1480
 
@@ -1305,7 +1546,15 @@ export const tokenDataByNetwork: Record<
1305
1546
 
1306
1547
  // YEARN- CURVE TOKENS
1307
1548
  yvCurve_stETH: "0xdCD90C7f6324cfa40d7169ef80b12031770B4325",
1308
- yvCURVE_FRAX_POOL: "0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139"
1549
+ yvCURVE_FRAX_POOL: "0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139",
1550
+
1551
+ //GEARBOX
1552
+ dDAI: "0x6CFaF95457d7688022FC53e7AbE052ef8DFBbdBA",
1553
+ dUSDC: "0xc411dB5f5Eb3f7d552F9B8454B2D74097ccdE6E3",
1554
+ dWBTC: "0xe753260F1955e8678DCeA8887759e07aa57E8c54",
1555
+ dWETH: "0xF21fc650C1B34eb0FDE786D52d23dA99Db3D6278",
1556
+
1557
+ GEAR: "0xBa3335588D9403515223F109EdC4eB7269a9Ab5D"
1309
1558
  },
1310
1559
 
1311
1560
  //
@@ -1374,6 +1623,20 @@ export const tokenDataByNetwork: Record<
1374
1623
 
1375
1624
  // YEARN- CURVE TOKENS
1376
1625
  yvCurve_stETH: "0xdDc2FA328321573Bc2647C0135D75012c522CDAC",
1377
- yvCURVE_FRAX_POOL: ""
1626
+ yvCURVE_FRAX_POOL: "",
1627
+
1628
+ //GEARBOX
1629
+ dDAI: "0x6CFaF95457d7688022FC53e7AbE052ef8DFBbdBA",
1630
+ dUSDC: "0xc411dB5f5Eb3f7d552F9B8454B2D74097ccdE6E3",
1631
+ dWBTC: "0xe753260F1955e8678DCeA8887759e07aa57E8c54",
1632
+ dWETH: "0xF21fc650C1B34eb0FDE786D52d23dA99Db3D6278",
1633
+
1634
+ GEAR: "0xBa3335588D9403515223F109EdC4eB7269a9Ab5D"
1378
1635
  }
1379
1636
  };
1637
+
1638
+ export const tokenDataByAddress = objectEntries(tokenDataByNetwork).reduce<
1639
+ Record<string, SupportedToken>
1640
+ >((sum, [_, tokens]) => {
1641
+ return { ...sum, ...keyToLowercase(swapKeyValue(tokens)) };
1642
+ }, {});