@gearbox-protocol/sdk 1.20.25 → 1.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -5,4 +5,5 @@ Contains core datastructures which are used across multiple gearbox services
5
5
 
6
6
 
7
7
  ### Important information for contributors
8
+
8
9
  As a contributor to the Gearbox Protocol GitHub repository, your pull requests indicate acceptance of our Gearbox Contribution Agreement. This agreement outlines that you assign the Intellectual Property Rights of your contributions to the Gearbox Foundation. This helps safeguard the Gearbox protocol and ensure the accumulation of its intellectual property. Contributions become part of the repository and may be used for various purposes, including commercial. As recognition for your expertise and work, you receive the opportunity to participate in the protocol's development and the potential to see your work integrated within it. The full Gearbox Contribution Agreement is accessible within the [repository](/ContributionAgreement) for comprehensive understanding. [Let's innovate together!]
@@ -8,5 +8,5 @@ interface CurveAPY {
8
8
  gauge: Array<[string, BigNumber]>;
9
9
  }
10
10
  export type CurveAPYResult = Record<CurveAPYTokens, CurveAPY>;
11
- export declare function getCurveAPY(): Promise<CurveAPYResult>;
11
+ export declare function getCurveAPY(): Promise<CurveAPYResult | null>;
12
12
  export {};
@@ -50,7 +50,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
50
50
  Object.defineProperty(exports, "__esModule", { value: true });
51
51
  exports.getCurveAPY = void 0;
52
52
  var axios_1 = __importDefault(require("axios"));
53
- var ethers_1 = require("ethers");
54
53
  var constants_1 = require("../core/constants");
55
54
  var formatter_1 = require("../utils/formatter");
56
55
  var mappers_1 = require("../utils/mappers");
@@ -63,14 +62,14 @@ var APY_DICTIONARY = {
63
62
  steCRV: "14",
64
63
  crvFRAX: "44",
65
64
  GEAR: "factory-crypto-192",
66
- OHMFRAXBP: "factory-crypto-158", // 0xfc1e8bf3e81383ef07be24c3fd146745719de48d
65
+ OHMFRAXBP: "factory-crypto-158",
66
+ MIM_3LP3CRV: "40",
67
+ crvCRVETH: "crypto-3",
68
+ crvCVXETH: "crypto-4",
69
+ crvUSDTWBTCWETH: "factory-tricrypto-1",
70
+ LDOETH: "factory-crypto-204",
67
71
  };
68
72
  var CRV_APY_RESPONSE_DECIMALS = 100;
69
- var ZERO = {
70
- base: ethers_1.BigNumber.from(0),
71
- crv: ethers_1.BigNumber.from(0),
72
- gauge: [],
73
- };
74
73
  // const CRYPTO = "https://api.curve.fi/api/getPools/ethereum/crypto";
75
74
  // const FACTORY = "https://api.curve.fi/api/getPools/ethereum/factory";
76
75
  var CURVE_FACTORY_CRYPTO_URL = "https://api.curve.fi/api/getPools/ethereum/factory-crypto";
@@ -122,17 +121,7 @@ function getCurveAPY() {
122
121
  case 2:
123
122
  e_1 = _d.sent();
124
123
  console.error(e_1);
125
- return [2 /*return*/, {
126
- "3Crv": ZERO,
127
- crvFRAX: ZERO,
128
- FRAX3CRV: ZERO,
129
- gusd3CRV: ZERO,
130
- LUSD3CRV: ZERO,
131
- crvPlain3andSUSD: ZERO,
132
- steCRV: ZERO,
133
- GEAR: ZERO,
134
- OHMFRAXBP: ZERO,
135
- }];
124
+ return [2 /*return*/, null];
136
125
  case 3: return [2 /*return*/];
137
126
  }
138
127
  });
@@ -6,9 +6,9 @@ import type { YearnLPToken } from "../tokens/yearn";
6
6
  import { AdapterInterface } from "./adapters";
7
7
  import { Protocols } from "./protocols";
8
8
  export type UniswapV2Contract = "UNISWAP_V2_ROUTER" | "SUSHISWAP_ROUTER";
9
- export type CurvePoolContract = "CURVE_3CRV_POOL" | "CURVE_FRAX_USDC_POOL" | "CURVE_STETH_GATEWAY" | "CURVE_FRAX_POOL" | "CURVE_LUSD_POOL" | "CURVE_GUSD_POOL" | "CURVE_SUSD_POOL" | "CURVE_SUSD_DEPOSIT" | "CURVE_OHM_FRAXBP";
9
+ export type CurvePoolContract = "CURVE_3CRV_POOL" | "CURVE_FRAX_USDC_POOL" | "CURVE_STETH_GATEWAY" | "CURVE_FRAX_POOL" | "CURVE_LUSD_POOL" | "CURVE_GUSD_POOL" | "CURVE_SUSD_POOL" | "CURVE_SUSD_DEPOSIT" | "CURVE_OHMFRAXBP_POOL" | "CURVE_CRVETH_POOL" | "CURVE_CVXETH_POOL" | "CURVE_3CRYPTO_POOL" | "CURVE_MIM_POOL" | "CURVE_LDOETH_POOL";
10
10
  export type YearnVaultContract = "YEARN_DAI_VAULT" | "YEARN_USDC_VAULT" | "YEARN_WETH_VAULT" | "YEARN_WBTC_VAULT" | "YEARN_CURVE_FRAX_VAULT" | "YEARN_CURVE_STETH_VAULT";
11
- export type ConvexPoolContract = "CONVEX_3CRV_POOL" | "CONVEX_FRAX_USDC_POOL" | "CONVEX_GUSD_POOL" | "CONVEX_SUSD_POOL" | "CONVEX_STECRV_POOL" | "CONVEX_FRAX3CRV_POOL" | "CONVEX_LUSD3CRV_POOL" | "CONVEX_OHMFRAXBP_POOL";
11
+ export type ConvexPoolContract = "CONVEX_3CRV_POOL" | "CONVEX_FRAX_USDC_POOL" | "CONVEX_GUSD_POOL" | "CONVEX_SUSD_POOL" | "CONVEX_STECRV_POOL" | "CONVEX_FRAX3CRV_POOL" | "CONVEX_LUSD3CRV_POOL" | "CONVEX_OHMFRAXBP_POOL" | "CONVEX_MIM3CRV_POOL" | "CONVEX_CRVETH_POOL" | "CONVEX_CVXETH_POOL" | "CONVEX_3CRYPTO_POOL" | "CONVEX_LDOETH_POOL";
12
12
  export type SupportedContract = UniswapV2Contract | "UNISWAP_V3_ROUTER" | CurvePoolContract | "CURVE_GEAR_POOL" | YearnVaultContract | "CONVEX_BOOSTER" | ConvexPoolContract | "CONVEX_CLAIM_ZAP" | "LIDO_STETH_GATEWAY" | "LIDO_WSTETH" | "UNIVERSAL_ADAPTER" | "BALANCER_VAULT";
13
13
  export declare const contractsByNetwork: Record<NetworkType, Record<SupportedContract, string>>;
14
14
  export declare const UNISWAP_V3_QUOTER = "0xb27308f9f90d607463bb33ea1bebb41c27ce5ab6";
@@ -30,8 +30,13 @@ exports.contractsByNetwork = {
30
30
  CURVE_SUSD_POOL: "0xA5407eAE9Ba41422680e2e00537571bcC53efBfD",
31
31
  CURVE_SUSD_DEPOSIT: "0xFCBa3E75865d2d561BE8D220616520c171F12851",
32
32
  CURVE_GUSD_POOL: "0x4f062658EaAF2C1ccf8C8e36D6824CDf41167956",
33
+ CURVE_MIM_POOL: token_1.tokenDataByNetwork.Mainnet.MIM_3LP3CRV,
34
+ CURVE_OHMFRAXBP_POOL: "0xFc1e8bf3E81383Ef07Be24c3FD146745719DE48D",
35
+ CURVE_CRVETH_POOL: "0x8301AE4fc9c624d1D396cbDAa1ed877821D7C511",
36
+ CURVE_CVXETH_POOL: "0xb576491f1e6e5e62f1d8f26062ee822b40b0e0d4",
37
+ CURVE_3CRYPTO_POOL: token_1.tokenDataByNetwork.Mainnet.crvUSDTWBTCWETH,
38
+ CURVE_LDOETH_POOL: "0x9409280dc1e6d33ab7a8c6ec03e5763fb61772b5",
33
39
  CURVE_GEAR_POOL: "0x0e9b5b092cad6f1c5e6bc7f89ffe1abb5c95f1c2",
34
- CURVE_OHM_FRAXBP: "0xFc1e8bf3E81383Ef07Be24c3FD146745719DE48D",
35
40
  // YEARN
36
41
  YEARN_DAI_VAULT: token_1.tokenDataByNetwork.Mainnet.yvDAI,
37
42
  YEARN_USDC_VAULT: token_1.tokenDataByNetwork.Mainnet.yvUSDC,
@@ -50,6 +55,11 @@ exports.contractsByNetwork = {
50
55
  CONVEX_LUSD3CRV_POOL: "0x2ad92A7aE036a038ff02B96c88de868ddf3f8190",
51
56
  CONVEX_CLAIM_ZAP: "0x92Cf9E5e4D1Dfbf7dA0d2BB3e884a68416a65070",
52
57
  CONVEX_OHMFRAXBP_POOL: "0x27A8c58e3DE84280826d615D80ddb33930383fE9",
58
+ CONVEX_MIM3CRV_POOL: "0xFd5AbF66b003881b88567EB9Ed9c651F14Dc4771",
59
+ CONVEX_CRVETH_POOL: "0x085A2054c51eA5c91dbF7f90d65e728c0f2A270f",
60
+ CONVEX_CVXETH_POOL: "0xb1Fb0BA0676A1fFA83882c7F4805408bA232C1fA",
61
+ CONVEX_3CRYPTO_POOL: "0xb05262D4aaAA38D0Af4AaB244D446ebDb5afd4A7",
62
+ CONVEX_LDOETH_POOL: "0x8CA990E954611E5E3d2cc51C013fCC372c8c1D38",
53
63
  // LIDO
54
64
  LIDO_STETH_GATEWAY: "0x6f4b4aB5142787c05b7aB9A9692A0f46b997C29D",
55
65
  LIDO_WSTETH: token_1.tokenDataByNetwork.Mainnet.wstETH,
@@ -80,8 +90,13 @@ exports.contractsByNetwork = {
80
90
  CURVE_SUSD_POOL: "0x2A1b874C86734feA5be050d32fAb02FCF9eB1Bc2",
81
91
  CURVE_SUSD_DEPOSIT: "0x9782f1fF1AEFb387F01cae72F668F13E8061d9Dd",
82
92
  CURVE_GUSD_POOL: "0x8C954d89C2fB2c96F0195738b8c5538B34D5344E",
93
+ CURVE_MIM_POOL: token_1.tokenDataByNetwork.Goerli.MIM_3LP3CRV,
94
+ CURVE_OHMFRAXBP_POOL: "deploy me",
95
+ CURVE_CRVETH_POOL: "deploy me",
96
+ CURVE_CVXETH_POOL: "deploy me",
97
+ CURVE_3CRYPTO_POOL: "deploy me",
98
+ CURVE_LDOETH_POOL: "deploy me",
83
99
  CURVE_GEAR_POOL: "deploy me",
84
- CURVE_OHM_FRAXBP: "deploy me",
85
100
  // YEARN
86
101
  YEARN_DAI_VAULT: token_1.tokenDataByNetwork.Goerli.yvDAI,
87
102
  YEARN_USDC_VAULT: token_1.tokenDataByNetwork.Goerli.yvUSDC,
@@ -100,6 +115,11 @@ exports.contractsByNetwork = {
100
115
  CONVEX_GUSD_POOL: "0xa8eD353f56BB2e1063B8a011F0491a1703998De4",
101
116
  CONVEX_CLAIM_ZAP: "0x74C7Bb6493C5EcfDb49E3ED5Ee4B60012b724b4b",
102
117
  CONVEX_OHMFRAXBP_POOL: "deploy me",
118
+ CONVEX_MIM3CRV_POOL: "deploy me",
119
+ CONVEX_CRVETH_POOL: "deploy me",
120
+ CONVEX_CVXETH_POOL: "deploy me",
121
+ CONVEX_3CRYPTO_POOL: "deploy me",
122
+ CONVEX_LDOETH_POOL: "deploy me",
103
123
  // LIDO
104
124
  LIDO_STETH_GATEWAY: "0x9290E44f5f819b7de0Fb88b10641f9F08a999BF7",
105
125
  LIDO_WSTETH: token_1.tokenDataByNetwork.Goerli.wstETH,
@@ -202,7 +222,7 @@ exports.contractParams = {
202
222
  tokens: ["GUSD", "3Crv"],
203
223
  underlyings: ["GUSD", "DAI", "USDC", "USDT"],
204
224
  },
205
- CURVE_OHM_FRAXBP: {
225
+ CURVE_OHMFRAXBP_POOL: {
206
226
  name: "Curve OHM_FRAXBP",
207
227
  protocol: protocols_1.Protocols.Curve,
208
228
  type: adapters_1.AdapterInterface.CURVE_V1_2ASSETS,
@@ -210,6 +230,42 @@ exports.contractParams = {
210
230
  tokens: ["OHM", "crvFRAX"],
211
231
  underlyings: ["OHM", "FRAX", "USDC"],
212
232
  },
233
+ CURVE_MIM_POOL: {
234
+ name: "Curve MIM",
235
+ protocol: protocols_1.Protocols.Curve,
236
+ type: adapters_1.AdapterInterface.CURVE_V1_2ASSETS,
237
+ lpToken: "MIM_3LP3CRV",
238
+ tokens: ["MIM", "3Crv"],
239
+ underlyings: ["MIM", "DAI", "USDC", "USDT"],
240
+ },
241
+ CURVE_CRVETH_POOL: {
242
+ name: "Curve CRVETH",
243
+ protocol: protocols_1.Protocols.Curve,
244
+ type: adapters_1.AdapterInterface.CURVE_V1_2ASSETS,
245
+ lpToken: "crvCRVETH",
246
+ tokens: ["WETH", "CRV"],
247
+ },
248
+ CURVE_CVXETH_POOL: {
249
+ name: "Curve CVXETH",
250
+ protocol: protocols_1.Protocols.Curve,
251
+ type: adapters_1.AdapterInterface.CURVE_V1_2ASSETS,
252
+ lpToken: "crvCVXETH",
253
+ tokens: ["WETH", "CVX"],
254
+ },
255
+ CURVE_3CRYPTO_POOL: {
256
+ name: "Curve 3Crypto",
257
+ protocol: protocols_1.Protocols.Curve,
258
+ type: adapters_1.AdapterInterface.CURVE_V1_3ASSETS,
259
+ lpToken: "crvUSDTWBTCWETH",
260
+ tokens: ["USDT", "WBTC", "WETH"],
261
+ },
262
+ CURVE_LDOETH_POOL: {
263
+ name: "Curve LDOETH",
264
+ protocol: protocols_1.Protocols.Curve,
265
+ type: adapters_1.AdapterInterface.CURVE_V1_2ASSETS,
266
+ lpToken: "LDOETH",
267
+ tokens: ["WETH", "LDO"],
268
+ },
213
269
  YEARN_DAI_VAULT: {
214
270
  name: "Yearn DAI",
215
271
  protocol: protocols_1.Protocols.Yearn,
@@ -344,6 +400,73 @@ exports.contractParams = {
344
400
  stakedToken: "stkcvxOHMFRAXBP",
345
401
  extraRewards: [],
346
402
  },
403
+ CONVEX_MIM3CRV_POOL: {
404
+ name: "Convex MIM3CRV",
405
+ protocol: protocols_1.Protocols.Convex,
406
+ type: adapters_1.AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
407
+ stakedToken: "stkcvxMIM_3LP3CRV",
408
+ extraRewards: [
409
+ {
410
+ rewardToken: "SPELL",
411
+ poolAddress: {
412
+ Mainnet: "0x69a92f1656cd2e193797546cFe2EaF32EACcf6f7",
413
+ Goerli: "deploy me",
414
+ },
415
+ },
416
+ ],
417
+ },
418
+ CONVEX_CRVETH_POOL: {
419
+ name: "Convex crvCRVETH",
420
+ protocol: protocols_1.Protocols.Convex,
421
+ type: adapters_1.AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
422
+ stakedToken: "stkcvxcrvCRVETH",
423
+ extraRewards: [
424
+ {
425
+ rewardToken: "CVX",
426
+ poolAddress: {
427
+ Mainnet: "0xE1eCBB4181378E2346EAC90Eb5606c01Aa08f052",
428
+ Goerli: "deploy me",
429
+ },
430
+ },
431
+ ],
432
+ },
433
+ CONVEX_CVXETH_POOL: {
434
+ name: "Convex crvCVXETH",
435
+ protocol: protocols_1.Protocols.Convex,
436
+ type: adapters_1.AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
437
+ stakedToken: "stkcvxcrvCVXETH",
438
+ extraRewards: [
439
+ {
440
+ rewardToken: "CVX",
441
+ poolAddress: {
442
+ Mainnet: "0x834B9147Fd23bF131644aBC6e557Daf99C5cDa15",
443
+ Goerli: "deploy me",
444
+ },
445
+ },
446
+ ],
447
+ },
448
+ CONVEX_3CRYPTO_POOL: {
449
+ name: "Convex 3Crypto",
450
+ protocol: protocols_1.Protocols.Convex,
451
+ type: adapters_1.AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
452
+ stakedToken: "stkcvxcrvUSDTWBTCWETH",
453
+ extraRewards: [],
454
+ },
455
+ CONVEX_LDOETH_POOL: {
456
+ name: "Convex LDOETH",
457
+ protocol: protocols_1.Protocols.Convex,
458
+ type: adapters_1.AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
459
+ stakedToken: "stkcvxLDOETH",
460
+ extraRewards: [
461
+ {
462
+ rewardToken: "LDO",
463
+ poolAddress: {
464
+ Mainnet: "0x95e6092449a0f3946A5a0f308Ead4adcff244E2B",
465
+ Goerli: "deploy me",
466
+ },
467
+ },
468
+ ],
469
+ },
347
470
  LIDO_STETH_GATEWAY: {
348
471
  name: "Lido STETH",
349
472
  protocol: protocols_1.Protocols.Lido,
@@ -333,7 +333,15 @@ exports.priceFeedsByNetwork = {
333
333
  },
334
334
  },
335
335
  priceFeedUSD: {
336
- type: oracles_1.OracleType.ZERO_ORACLE,
336
+ type: oracles_1.OracleType.COMPOSITE_ORACLE,
337
+ targetToBasePriceFeed: {
338
+ Mainnet: "0x4e844125952d32acdf339be976c98e22f6f318db",
339
+ Goerli: "0x6569bae7114121aE82303F42f42b64012DcCbD7d",
340
+ },
341
+ baseToUsdPriceFeed: {
342
+ Mainnet: "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419",
343
+ Goerli: "0x491741d9F426130d1bC27Aee82f8b4Bd4E6E5f5D",
344
+ },
337
345
  },
338
346
  // ADD ETH-> DAI Oracle!
339
347
  },
@@ -342,6 +350,44 @@ exports.priceFeedsByNetwork = {
342
350
  type: oracles_1.OracleType.ZERO_ORACLE,
343
351
  },
344
352
  },
353
+ OHM: {
354
+ priceFeedETH: {
355
+ type: oracles_1.OracleType.CHAINLINK_ORACLE,
356
+ address: {
357
+ Mainnet: "0x9a72298ae3886221820b1c878d12d872087d3a23",
358
+ Goerli: "deploy me",
359
+ },
360
+ },
361
+ priceFeedUSD: {
362
+ type: oracles_1.OracleType.COMPOSITE_ORACLE,
363
+ targetToBasePriceFeed: {
364
+ Mainnet: "0x9a72298ae3886221820b1c878d12d872087d3a23",
365
+ Goerli: "deploy me",
366
+ },
367
+ baseToUsdPriceFeed: {
368
+ Mainnet: "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419",
369
+ Goerli: "0x491741d9F426130d1bC27Aee82f8b4Bd4E6E5f5D",
370
+ },
371
+ },
372
+ },
373
+ MIM: {
374
+ priceFeedUSD: {
375
+ type: oracles_1.OracleType.CHAINLINK_ORACLE,
376
+ address: {
377
+ Mainnet: "0x7A364e8770418566e3eb2001A96116E6138Eb32F",
378
+ Goerli: "deploy me",
379
+ },
380
+ },
381
+ },
382
+ SPELL: {
383
+ priceFeedUSD: {
384
+ type: oracles_1.OracleType.CHAINLINK_ORACLE,
385
+ address: {
386
+ Mainnet: "0x8c110b94c5f1d347facf5e1e938ab2db60e3c9a8",
387
+ Goerli: "deploy me",
388
+ },
389
+ },
390
+ },
345
391
  yvDAI: {
346
392
  priceFeedETH: {
347
393
  type: oracles_1.OracleType.YEARN_TOKEN_ORACLE,
@@ -417,6 +463,36 @@ exports.priceFeedsByNetwork = {
417
463
  assets: ["GUSD", "DAI", "USDC", "USDT"],
418
464
  },
419
465
  },
466
+ OHMFRAXBP: {
467
+ priceFeedUSD: {
468
+ type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
469
+ assets: ["OHM", "crvFRAX"],
470
+ },
471
+ },
472
+ crvCRVETH: {
473
+ priceFeedUSD: {
474
+ type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
475
+ assets: ["WETH", "CRV"],
476
+ },
477
+ },
478
+ crvCVXETH: {
479
+ priceFeedUSD: {
480
+ type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
481
+ assets: ["WETH", "CVX"],
482
+ },
483
+ },
484
+ crvUSDTWBTCWETH: {
485
+ priceFeedUSD: {
486
+ type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
487
+ assets: ["USDT", "WBTC", "WETH"],
488
+ },
489
+ },
490
+ LDOETH: {
491
+ priceFeedUSD: {
492
+ type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
493
+ assets: ["LDO", "WETH"],
494
+ },
495
+ },
420
496
  // YEARN- CURVE TOKENS
421
497
  yvCurve_stETH: {
422
498
  priceFeedUSD: {
@@ -479,6 +555,36 @@ exports.priceFeedsByNetwork = {
479
555
  curveSymbol: "OHMFRAXBP",
480
556
  },
481
557
  },
558
+ cvxMIM_3LP3CRV: {
559
+ priceFeedUSD: {
560
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
561
+ curveSymbol: "MIM_3LP3CRV",
562
+ },
563
+ },
564
+ cvxcrvCRVETH: {
565
+ priceFeedUSD: {
566
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
567
+ curveSymbol: "crvCRVETH",
568
+ },
569
+ },
570
+ cvxcrvCVXETH: {
571
+ priceFeedUSD: {
572
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
573
+ curveSymbol: "crvCVXETH",
574
+ },
575
+ },
576
+ cvxcrvUSDTWBTCWETH: {
577
+ priceFeedUSD: {
578
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
579
+ curveSymbol: "crvUSDTWBTCWETH",
580
+ },
581
+ },
582
+ cvxLDOETH: {
583
+ priceFeedUSD: {
584
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
585
+ curveSymbol: "LDOETH",
586
+ },
587
+ },
482
588
  // CVX tokens
483
589
  stkcvx3Crv: {
484
590
  priceFeedUSD: {
@@ -528,6 +634,36 @@ exports.priceFeedsByNetwork = {
528
634
  curveSymbol: "OHMFRAXBP",
529
635
  },
530
636
  },
637
+ stkcvxMIM_3LP3CRV: {
638
+ priceFeedUSD: {
639
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
640
+ curveSymbol: "MIM_3LP3CRV",
641
+ },
642
+ },
643
+ stkcvxcrvCRVETH: {
644
+ priceFeedUSD: {
645
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
646
+ curveSymbol: "crvCRVETH",
647
+ },
648
+ },
649
+ stkcvxcrvCVXETH: {
650
+ priceFeedUSD: {
651
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
652
+ curveSymbol: "crvCVXETH",
653
+ },
654
+ },
655
+ stkcvxcrvUSDTWBTCWETH: {
656
+ priceFeedUSD: {
657
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
658
+ curveSymbol: "crvUSDTWBTCWETH",
659
+ },
660
+ },
661
+ stkcvxLDOETH: {
662
+ priceFeedUSD: {
663
+ type: oracles_1.OracleType.LIKE_CURVE_LP_TOKEN_ORACLE,
664
+ curveSymbol: "LDOETH",
665
+ },
666
+ },
531
667
  // GEARBOX
532
668
  dDAI: {
533
669
  priceFeedETH: {
@@ -599,30 +735,10 @@ exports.priceFeedsByNetwork = {
599
735
  address: { Mainnet: "", Goerli: "" },
600
736
  },
601
737
  },
602
- OHM: {
603
- priceFeedETH: {
604
- type: oracles_1.OracleType.CHAINLINK_ORACLE,
605
- address: {
606
- Mainnet: "0x9a72298ae3886221820b1c878d12d872087d3a23",
607
- Goerli: "deploy me",
608
- },
609
- },
610
- priceFeedUSD: {
611
- type: oracles_1.OracleType.COMPOSITE_ORACLE,
612
- targetToBasePriceFeed: {
613
- Mainnet: "0x9a72298ae3886221820b1c878d12d872087d3a23",
614
- Goerli: "deploy me",
615
- },
616
- baseToUsdPriceFeed: {
617
- Mainnet: "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419",
618
- Goerli: "0x491741d9F426130d1bC27Aee82f8b4Bd4E6E5f5D",
619
- },
620
- },
621
- },
622
- OHMFRAXBP: {
738
+ MIM_3LP3CRV: {
623
739
  priceFeedUSD: {
624
740
  type: oracles_1.OracleType.CURVE_CRYPTO_ORACLE,
625
- assets: ["OHM", "crvFRAX"],
741
+ assets: ["MIM", "3Crv"],
626
742
  },
627
743
  },
628
744
  "50OHM_50DAI": {
@@ -3,8 +3,8 @@ import { TradeAction } from "../pathfinder/tradeTypes";
3
3
  import type { CurveLPToken } from "./curveLP";
4
4
  import type { SupportedToken, TokenBase } from "./token";
5
5
  import { TokenType } from "./tokenType";
6
- export type ConvexLPToken = "cvx3Crv" | "cvxcrvFRAX" | "cvxsteCRV" | "cvxFRAX3CRV" | "cvxLUSD3CRV" | "cvxcrvPlain3andSUSD" | "cvxgusd3CRV" | "cvxOHMFRAXBP";
7
- export type ConvexStakedPhantomToken = "stkcvx3Crv" | "stkcvxcrvFRAX" | "stkcvxsteCRV" | "stkcvxFRAX3CRV" | "stkcvxLUSD3CRV" | "stkcvxcrvPlain3andSUSD" | "stkcvxgusd3CRV" | "stkcvxOHMFRAXBP";
6
+ export type ConvexLPToken = "cvx3Crv" | "cvxcrvFRAX" | "cvxsteCRV" | "cvxFRAX3CRV" | "cvxLUSD3CRV" | "cvxcrvPlain3andSUSD" | "cvxgusd3CRV" | "cvxOHMFRAXBP" | "cvxMIM_3LP3CRV" | "cvxcrvCRVETH" | "cvxcrvCVXETH" | "cvxcrvUSDTWBTCWETH" | "cvxLDOETH";
7
+ export type ConvexStakedPhantomToken = "stkcvx3Crv" | "stkcvxcrvFRAX" | "stkcvxsteCRV" | "stkcvxFRAX3CRV" | "stkcvxLUSD3CRV" | "stkcvxcrvPlain3andSUSD" | "stkcvxgusd3CRV" | "stkcvxOHMFRAXBP" | "stkcvxMIM_3LP3CRV" | "stkcvxcrvCRVETH" | "stkcvxcrvCVXETH" | "stkcvxcrvUSDTWBTCWETH" | "stkcvxLDOETH";
8
8
  type BaseConvexToken = {
9
9
  pool: ConvexPoolContract;
10
10
  pid: number;
@@ -183,6 +183,111 @@ var convexLpTokens = {
183
183
  },
184
184
  ],
185
185
  },
186
+ cvxMIM_3LP3CRV: {
187
+ name: "Convex cvxMIM-3LP3CRV-f",
188
+ symbol: "cvxMIM_3LP3CRV",
189
+ type: tokenType_1.TokenType.CONVEX_LP_TOKEN,
190
+ pool: "CONVEX_MIM3CRV_POOL",
191
+ pid: 40,
192
+ underlying: "MIM_3LP3CRV",
193
+ stakedToken: "stkcvxMIM_3LP3CRV",
194
+ lpActions: [
195
+ {
196
+ type: tradeTypes_1.TradeType.ConvexWithdrawLP,
197
+ contract: "CONVEX_BOOSTER",
198
+ tokenOut: "MIM_3LP3CRV",
199
+ },
200
+ {
201
+ type: tradeTypes_1.TradeType.ConvexStake,
202
+ contract: "CONVEX_MIM3CRV_POOL",
203
+ tokenOut: "stkcvxMIM_3LP3CRV",
204
+ },
205
+ ],
206
+ },
207
+ cvxcrvCRVETH: {
208
+ name: "Convex cvxcrvCRVETH",
209
+ symbol: "cvxcrvCRVETH",
210
+ type: tokenType_1.TokenType.CONVEX_LP_TOKEN,
211
+ pool: "CONVEX_CRVETH_POOL",
212
+ pid: 61,
213
+ underlying: "crvCRVETH",
214
+ stakedToken: "stkcvxcrvCRVETH",
215
+ lpActions: [
216
+ {
217
+ type: tradeTypes_1.TradeType.ConvexWithdrawLP,
218
+ contract: "CONVEX_BOOSTER",
219
+ tokenOut: "crvCRVETH",
220
+ },
221
+ {
222
+ type: tradeTypes_1.TradeType.ConvexStake,
223
+ contract: "CONVEX_OHMFRAXBP_POOL",
224
+ tokenOut: "stkcvxcrvCRVETH",
225
+ },
226
+ ],
227
+ },
228
+ cvxcrvCVXETH: {
229
+ name: "Convex cvxcrvCVXETH",
230
+ symbol: "cvxcrvCVXETH",
231
+ type: tokenType_1.TokenType.CONVEX_LP_TOKEN,
232
+ pool: "CONVEX_CVXETH_POOL",
233
+ pid: 64,
234
+ underlying: "crvCVXETH",
235
+ stakedToken: "stkcvxcrvCVXETH",
236
+ lpActions: [
237
+ {
238
+ type: tradeTypes_1.TradeType.ConvexWithdrawLP,
239
+ contract: "CONVEX_BOOSTER",
240
+ tokenOut: "crvCVXETH",
241
+ },
242
+ {
243
+ type: tradeTypes_1.TradeType.ConvexStake,
244
+ contract: "CONVEX_CVXETH_POOL",
245
+ tokenOut: "stkcvxcrvCVXETH",
246
+ },
247
+ ],
248
+ },
249
+ cvxcrvUSDTWBTCWETH: {
250
+ name: "Convex cvxcrvUSDTWBTCWETH",
251
+ symbol: "cvxcrvUSDTWBTCWETH",
252
+ type: tokenType_1.TokenType.CONVEX_LP_TOKEN,
253
+ pool: "CONVEX_3CRYPTO_POOL",
254
+ pid: 188,
255
+ underlying: "crvUSDTWBTCWETH",
256
+ stakedToken: "stkcvxcrvUSDTWBTCWETH",
257
+ lpActions: [
258
+ {
259
+ type: tradeTypes_1.TradeType.ConvexWithdrawLP,
260
+ contract: "CONVEX_BOOSTER",
261
+ tokenOut: "crvUSDTWBTCWETH",
262
+ },
263
+ {
264
+ type: tradeTypes_1.TradeType.ConvexStake,
265
+ contract: "CONVEX_3CRYPTO_POOL",
266
+ tokenOut: "stkcvxcrvUSDTWBTCWETH",
267
+ },
268
+ ],
269
+ },
270
+ cvxLDOETH: {
271
+ name: "Convex cvxLDOETH",
272
+ symbol: "cvxLDOETH",
273
+ type: tokenType_1.TokenType.CONVEX_LP_TOKEN,
274
+ pool: "CONVEX_LDOETH_POOL",
275
+ pid: 149,
276
+ underlying: "LDOETH",
277
+ stakedToken: "stkcvxLDOETH",
278
+ lpActions: [
279
+ {
280
+ type: tradeTypes_1.TradeType.ConvexWithdrawLP,
281
+ contract: "CONVEX_BOOSTER",
282
+ tokenOut: "LDOETH",
283
+ },
284
+ {
285
+ type: tradeTypes_1.TradeType.ConvexStake,
286
+ contract: "CONVEX_3CRYPTO_POOL",
287
+ tokenOut: "stkcvxLDOETH",
288
+ },
289
+ ],
290
+ },
186
291
  };
187
292
  var convexStakedPhantomTokens = {
188
293
  stkcvx3Crv: {
@@ -353,6 +458,111 @@ var convexStakedPhantomTokens = {
353
458
  },
354
459
  ],
355
460
  },
461
+ stkcvxMIM_3LP3CRV: {
462
+ name: "Convex stkcvxMIM_3LP3CRV-f",
463
+ symbol: "stkcvxMIM_3LP3CRV",
464
+ type: tokenType_1.TokenType.CONVEX_STAKED_TOKEN,
465
+ pool: "CONVEX_MIM3CRV_POOL",
466
+ pid: 40,
467
+ underlying: "MIM_3LP3CRV",
468
+ lpToken: "cvxMIM_3LP3CRV",
469
+ lpActions: [
470
+ {
471
+ type: tradeTypes_1.TradeType.ConvexWithdraw,
472
+ contract: "CONVEX_MIM3CRV_POOL",
473
+ tokenOut: "cvxMIM_3LP3CRV",
474
+ },
475
+ {
476
+ type: tradeTypes_1.TradeType.ConvexWithdrawAndUnwrap,
477
+ contract: "CONVEX_MIM3CRV_POOL",
478
+ tokenOut: "MIM_3LP3CRV",
479
+ },
480
+ ],
481
+ },
482
+ stkcvxcrvCRVETH: {
483
+ name: "Convex stkcvxcrvCRVETH",
484
+ symbol: "stkcvxcrvCRVETH",
485
+ type: tokenType_1.TokenType.CONVEX_STAKED_TOKEN,
486
+ pool: "CONVEX_CRVETH_POOL",
487
+ pid: 61,
488
+ underlying: "crvCRVETH",
489
+ lpToken: "cvxcrvCRVETH",
490
+ lpActions: [
491
+ {
492
+ type: tradeTypes_1.TradeType.ConvexWithdraw,
493
+ contract: "CONVEX_CRVETH_POOL",
494
+ tokenOut: "cvxcrvCRVETH",
495
+ },
496
+ {
497
+ type: tradeTypes_1.TradeType.ConvexWithdrawAndUnwrap,
498
+ contract: "CONVEX_CRVETH_POOL",
499
+ tokenOut: "crvCRVETH",
500
+ },
501
+ ],
502
+ },
503
+ stkcvxcrvCVXETH: {
504
+ name: "Convex stkcvxcrvCVXETH",
505
+ symbol: "stkcvxcrvCVXETH",
506
+ type: tokenType_1.TokenType.CONVEX_STAKED_TOKEN,
507
+ pool: "CONVEX_CVXETH_POOL",
508
+ pid: 64,
509
+ underlying: "crvCVXETH",
510
+ lpToken: "cvxcrvCVXETH",
511
+ lpActions: [
512
+ {
513
+ type: tradeTypes_1.TradeType.ConvexWithdraw,
514
+ contract: "CONVEX_CVXETH_POOL",
515
+ tokenOut: "cvxcrvCVXETH",
516
+ },
517
+ {
518
+ type: tradeTypes_1.TradeType.ConvexWithdrawAndUnwrap,
519
+ contract: "CONVEX_CVXETH_POOL",
520
+ tokenOut: "crvCVXETH",
521
+ },
522
+ ],
523
+ },
524
+ stkcvxcrvUSDTWBTCWETH: {
525
+ name: "Convex stkcvxcrv3crypto",
526
+ symbol: "stkcvxcrvUSDTWBTCWETH",
527
+ type: tokenType_1.TokenType.CONVEX_STAKED_TOKEN,
528
+ pool: "CONVEX_3CRYPTO_POOL",
529
+ pid: 188,
530
+ underlying: "crvUSDTWBTCWETH",
531
+ lpToken: "cvxcrvUSDTWBTCWETH",
532
+ lpActions: [
533
+ {
534
+ type: tradeTypes_1.TradeType.ConvexWithdraw,
535
+ contract: "CONVEX_3CRYPTO_POOL",
536
+ tokenOut: "cvxcrvUSDTWBTCWETH",
537
+ },
538
+ {
539
+ type: tradeTypes_1.TradeType.ConvexWithdrawAndUnwrap,
540
+ contract: "CONVEX_3CRYPTO_POOL",
541
+ tokenOut: "crvUSDTWBTCWETH",
542
+ },
543
+ ],
544
+ },
545
+ stkcvxLDOETH: {
546
+ name: "Convex stkcvxLDOETH",
547
+ symbol: "stkcvxLDOETH",
548
+ type: tokenType_1.TokenType.CONVEX_STAKED_TOKEN,
549
+ pool: "CONVEX_LDOETH_POOL",
550
+ pid: 149,
551
+ underlying: "LDOETH",
552
+ lpToken: "cvxLDOETH",
553
+ lpActions: [
554
+ {
555
+ type: tradeTypes_1.TradeType.ConvexWithdraw,
556
+ contract: "CONVEX_3CRYPTO_POOL",
557
+ tokenOut: "cvxLDOETH",
558
+ },
559
+ {
560
+ type: tradeTypes_1.TradeType.ConvexWithdrawAndUnwrap,
561
+ contract: "CONVEX_3CRYPTO_POOL",
562
+ tokenOut: "LDOETH",
563
+ },
564
+ ],
565
+ },
356
566
  };
357
567
  exports.convexTokens = __assign(__assign({}, convexLpTokens), convexStakedPhantomTokens);
358
568
  var isConvexToken = function (t) {
@@ -4,8 +4,8 @@ import { TradeAction } from "../pathfinder/tradeTypes";
4
4
  import { PartialRecord } from "../utils/types";
5
5
  import type { SupportedToken, TokenBase } from "./token";
6
6
  import { TokenType } from "./tokenType";
7
- export type CurveMetaTokens = "FRAX3CRV" | "LUSD3CRV" | "gusd3CRV";
8
- export type CurveLPToken = "3Crv" | "steCRV" | "crvPlain3andSUSD" | "crvFRAX" | "OHMFRAXBP" | CurveMetaTokens;
7
+ export type CurveMetaTokens = "FRAX3CRV" | "LUSD3CRV" | "gusd3CRV" | "MIM_3LP3CRV";
8
+ export type CurveLPToken = "3Crv" | "steCRV" | "crvPlain3andSUSD" | "crvFRAX" | "OHMFRAXBP" | "crvCRVETH" | "crvCVXETH" | "crvUSDTWBTCWETH" | "LDOETH" | CurveMetaTokens;
9
9
  export type CurveLPTokenData = {
10
10
  symbol: CurveLPToken;
11
11
  type: TokenType.CURVE_LP_TOKEN;
@@ -81,6 +81,29 @@ exports.curveMetaTokens = {
81
81
  },
82
82
  ],
83
83
  },
84
+ MIM_3LP3CRV: {
85
+ name: "Curve MIM_3LP3CRV",
86
+ symbol: "MIM_3LP3CRV",
87
+ type: tokenType_1.TokenType.CURVE_LP_TOKEN,
88
+ pool: "CURVE_MIM_POOL",
89
+ lpActions: [
90
+ {
91
+ type: tradeTypes_1.TradeType.CurveWithdrawLP,
92
+ contract: "CURVE_MIM_POOL",
93
+ tokenOut: ["MIM", "3Crv"],
94
+ },
95
+ {
96
+ type: tradeTypes_1.TradeType.ConvexDepositLP,
97
+ contract: "CONVEX_BOOSTER",
98
+ tokenOut: "cvxMIM_3LP3CRV",
99
+ },
100
+ {
101
+ type: tradeTypes_1.TradeType.ConvexDepositLPAndStake,
102
+ contract: "CONVEX_BOOSTER",
103
+ tokenOut: "stkcvxMIM_3LP3CRV",
104
+ },
105
+ ],
106
+ },
84
107
  };
85
108
  exports.curveTokens = __assign({
86
109
  // CURVE LP TOKENS
@@ -177,12 +200,11 @@ exports.curveTokens = __assign({
177
200
  name: "Curve.fi Factory Crypto Pool: OHM/FRAXBP",
178
201
  symbol: "OHMFRAXBP",
179
202
  type: tokenType_1.TokenType.CURVE_LP_TOKEN,
180
- pool: "CURVE_OHM_FRAXBP",
181
- wrapper: "CURVE_OHM_FRAXBP",
203
+ pool: "CURVE_OHMFRAXBP_POOL",
182
204
  lpActions: [
183
205
  {
184
206
  type: tradeTypes_1.TradeType.CurveWithdrawLP,
185
- contract: "CURVE_OHM_FRAXBP",
207
+ contract: "CURVE_OHMFRAXBP_POOL",
186
208
  tokenOut: ["OHM", "FRAX", "USDC"],
187
209
  },
188
210
  {
@@ -196,6 +218,94 @@ exports.curveTokens = __assign({
196
218
  tokenOut: "stkcvxOHMFRAXBP",
197
219
  },
198
220
  ],
221
+ }, crvCRVETH: {
222
+ name: "Curve CRV-ETH",
223
+ symbol: "crvCRVETH",
224
+ type: tokenType_1.TokenType.CURVE_LP_TOKEN,
225
+ pool: "CURVE_CRVETH_POOL",
226
+ lpActions: [
227
+ {
228
+ type: tradeTypes_1.TradeType.CurveWithdrawLP,
229
+ contract: "CURVE_CRVETH_POOL",
230
+ tokenOut: ["WETH", "CRV"],
231
+ },
232
+ {
233
+ type: tradeTypes_1.TradeType.ConvexDepositLP,
234
+ contract: "CONVEX_BOOSTER",
235
+ tokenOut: "cvxcrvCRVETH",
236
+ },
237
+ {
238
+ type: tradeTypes_1.TradeType.ConvexDepositLPAndStake,
239
+ contract: "CONVEX_BOOSTER",
240
+ tokenOut: "stkcvxcrvCRVETH",
241
+ },
242
+ ],
243
+ }, crvCVXETH: {
244
+ name: "Curve CVX-ETH",
245
+ symbol: "crvCVXETH",
246
+ type: tokenType_1.TokenType.CURVE_LP_TOKEN,
247
+ pool: "CURVE_CVXETH_POOL",
248
+ lpActions: [
249
+ {
250
+ type: tradeTypes_1.TradeType.CurveWithdrawLP,
251
+ contract: "CURVE_CVXETH_POOL",
252
+ tokenOut: ["WETH", "CVX"],
253
+ },
254
+ {
255
+ type: tradeTypes_1.TradeType.ConvexDepositLP,
256
+ contract: "CONVEX_BOOSTER",
257
+ tokenOut: "cvxcrvCVXETH",
258
+ },
259
+ {
260
+ type: tradeTypes_1.TradeType.ConvexDepositLPAndStake,
261
+ contract: "CONVEX_BOOSTER",
262
+ tokenOut: "stkcvxcrvCVXETH",
263
+ },
264
+ ],
265
+ }, crvUSDTWBTCWETH: {
266
+ name: "Curve USDT/WBTC/WETH",
267
+ symbol: "crvUSDTWBTCWETH",
268
+ type: tokenType_1.TokenType.CURVE_LP_TOKEN,
269
+ pool: "CURVE_3CRYPTO_POOL",
270
+ lpActions: [
271
+ {
272
+ type: tradeTypes_1.TradeType.CurveWithdrawLP,
273
+ contract: "CURVE_3CRYPTO_POOL",
274
+ tokenOut: ["USDT", "WBTC", "WETH"],
275
+ },
276
+ {
277
+ type: tradeTypes_1.TradeType.ConvexDepositLP,
278
+ contract: "CONVEX_BOOSTER",
279
+ tokenOut: "cvxcrvUSDTWBTCWETH",
280
+ },
281
+ {
282
+ type: tradeTypes_1.TradeType.ConvexDepositLPAndStake,
283
+ contract: "CONVEX_BOOSTER",
284
+ tokenOut: "stkcvxcrvUSDTWBTCWETH",
285
+ },
286
+ ],
287
+ }, LDOETH: {
288
+ name: "Curve LDOETH",
289
+ symbol: "LDOETH",
290
+ type: tokenType_1.TokenType.CURVE_LP_TOKEN,
291
+ pool: "CURVE_LDOETH_POOL",
292
+ lpActions: [
293
+ {
294
+ type: tradeTypes_1.TradeType.CurveWithdrawLP,
295
+ contract: "CURVE_LDOETH_POOL",
296
+ tokenOut: ["LDO", "WETH"],
297
+ },
298
+ {
299
+ type: tradeTypes_1.TradeType.ConvexDepositLP,
300
+ contract: "CONVEX_BOOSTER",
301
+ tokenOut: "cvxLDOETH",
302
+ },
303
+ {
304
+ type: tradeTypes_1.TradeType.ConvexDepositLPAndStake,
305
+ contract: "CONVEX_BOOSTER",
306
+ tokenOut: "stkcvxLDOETH",
307
+ },
308
+ ],
199
309
  } }, exports.curveMetaTokens);
200
310
  var isCurveLPToken = function (t) {
201
311
  return typeof t === "string" && !!exports.curveTokens[t];
@@ -28,6 +28,8 @@ exports.decimals = {
28
28
  GUSD: 2,
29
29
  LQTY: 18,
30
30
  OHM: 9,
31
+ MIM: 18,
32
+ SPELL: 18,
31
33
  "3Crv": 18,
32
34
  crvFRAX: 18,
33
35
  OHMFRAXBP: 18,
@@ -36,6 +38,11 @@ exports.decimals = {
36
38
  FRAX3CRV: 18,
37
39
  LUSD3CRV: 18,
38
40
  gusd3CRV: 18,
41
+ MIM_3LP3CRV: 18,
42
+ crvCRVETH: 18,
43
+ crvCVXETH: 18,
44
+ crvUSDTWBTCWETH: 18,
45
+ LDOETH: 18,
39
46
  cvx3Crv: 18,
40
47
  cvxcrvFRAX: 18,
41
48
  cvxsteCRV: 18,
@@ -44,6 +51,11 @@ exports.decimals = {
44
51
  cvxcrvPlain3andSUSD: 18,
45
52
  cvxgusd3CRV: 18,
46
53
  cvxOHMFRAXBP: 18,
54
+ cvxMIM_3LP3CRV: 18,
55
+ cvxcrvCRVETH: 18,
56
+ cvxcrvCVXETH: 18,
57
+ cvxcrvUSDTWBTCWETH: 18,
58
+ cvxLDOETH: 18,
47
59
  stkcvx3Crv: 18,
48
60
  stkcvxcrvFRAX: 18,
49
61
  stkcvxsteCRV: 18,
@@ -52,6 +64,11 @@ exports.decimals = {
52
64
  stkcvxcrvPlain3andSUSD: 18,
53
65
  stkcvxgusd3CRV: 18,
54
66
  stkcvxOHMFRAXBP: 18,
67
+ stkcvxMIM_3LP3CRV: 18,
68
+ stkcvxcrvCRVETH: 18,
69
+ stkcvxcrvCVXETH: 18,
70
+ stkcvxcrvUSDTWBTCWETH: 18,
71
+ stkcvxLDOETH: 18,
55
72
  yvDAI: 18,
56
73
  yvUSDC: 6,
57
74
  yvWETH: 18,
@@ -1,7 +1,7 @@
1
1
  import { TradeAction } from "../pathfinder/tradeTypes";
2
2
  import type { TokenBase } from "./token";
3
3
  import { TokenType } from "./tokenType";
4
- export type NormalToken = "1INCH" | "AAVE" | "COMP" | "CRV" | "DPI" | "FEI" | "LINK" | "SNX" | "UNI" | "USDT" | "USDC" | "DAI" | "WETH" | "WBTC" | "YFI" | "STETH" | "wstETH" | "CVX" | "FRAX" | "FXS" | "LDO" | "LUSD" | "sUSD" | "GUSD" | "LQTY" | "OHM";
4
+ export type NormalToken = "1INCH" | "AAVE" | "COMP" | "CRV" | "DPI" | "FEI" | "LINK" | "SNX" | "UNI" | "USDT" | "USDC" | "DAI" | "WETH" | "WBTC" | "YFI" | "STETH" | "wstETH" | "CVX" | "FRAX" | "FXS" | "LDO" | "LUSD" | "sUSD" | "GUSD" | "LQTY" | "OHM" | "MIM" | "SPELL";
5
5
  export type NormalTokenData = {
6
6
  symbol: NormalToken;
7
7
  type: TokenType.NORMAL_TOKEN;
@@ -676,6 +676,57 @@ exports.normalTokens = {
676
676
  },
677
677
  ],
678
678
  },
679
+ MIM: {
680
+ name: "MIM",
681
+ symbol: "MIM",
682
+ type: tokenType_1.TokenType.NORMAL_TOKEN,
683
+ swapActions: [
684
+ {
685
+ type: tradeTypes_1.TradeType.UniswapV3Swap,
686
+ contract: "UNISWAP_V3_ROUTER",
687
+ },
688
+ {
689
+ type: tradeTypes_1.TradeType.UniswapV2Swap,
690
+ contract: "UNISWAP_V2_ROUTER",
691
+ },
692
+ {
693
+ type: tradeTypes_1.TradeType.UniswapV2Swap,
694
+ contract: "SUSHISWAP_ROUTER",
695
+ },
696
+ {
697
+ type: tradeTypes_1.TradeType.CurveExchange,
698
+ contract: "CURVE_MIM_POOL",
699
+ tokenOut: ["3Crv"],
700
+ },
701
+ ],
702
+ lpActions: [
703
+ {
704
+ type: tradeTypes_1.TradeType.CurveDepositLP,
705
+ contract: "CURVE_MIM_POOL",
706
+ tokenOut: "MIM_3LP3CRV",
707
+ },
708
+ ],
709
+ },
710
+ SPELL: {
711
+ name: "SPELL",
712
+ symbol: "SPELL",
713
+ type: tokenType_1.TokenType.NORMAL_TOKEN,
714
+ swapActions: [
715
+ {
716
+ type: tradeTypes_1.TradeType.UniswapV3Swap,
717
+ contract: "UNISWAP_V3_ROUTER",
718
+ },
719
+ {
720
+ type: tradeTypes_1.TradeType.UniswapV2Swap,
721
+ contract: "UNISWAP_V2_ROUTER",
722
+ },
723
+ {
724
+ type: tradeTypes_1.TradeType.UniswapV2Swap,
725
+ contract: "SUSHISWAP_ROUTER",
726
+ },
727
+ ],
728
+ lpActions: [],
729
+ },
679
730
  };
680
731
  var isNormalToken = function (t) {
681
732
  return typeof t === "string" && !!exports.normalTokens[t];
@@ -42,6 +42,8 @@ exports.tokenDataByNetwork = {
42
42
  WETH: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
43
43
  YFI: "0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e",
44
44
  OHM: "0x64aa3364F17a4D01c6f1751Fd97C2BD3D7e7f1D5",
45
+ MIM: "0x99D8a9C45b2ecA8864373A26D1459e3Dff1e17F3",
46
+ SPELL: "0x090185f2135308BaD17527004364eBcC2D37e5F6",
45
47
  /// UPDATE
46
48
  STETH: "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
47
49
  wstETH: "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",
@@ -62,6 +64,11 @@ exports.tokenDataByNetwork = {
62
64
  crvPlain3andSUSD: "0xC25a3A3b969415c80451098fa907EC722572917F",
63
65
  gusd3CRV: "0xD2967f45c4f384DEEa880F807Be904762a3DeA07",
64
66
  OHMFRAXBP: "0x5271045F7B73c17825A7A7aee6917eE46b0B7520",
67
+ MIM_3LP3CRV: "0x5a6A4D54456819380173272A5E8E9B9904BdF41B",
68
+ crvCRVETH: "0xEd4064f376cB8d68F770FB1Ff088a3d0F3FF5c4d",
69
+ crvCVXETH: "0x3A283D9c08E8b55966afb64C515f5143cf907611",
70
+ crvUSDTWBTCWETH: "0xf5f5b97624542d72a9e06f04804bf81baa15e2b4",
71
+ LDOETH: "0xb79565c01b7ae53618d9b847b9443aaf4f9011e7",
65
72
  // CONVEX LP TOKENS
66
73
  cvx3Crv: "0x30D9410ED1D5DA1F6C8391af5338C93ab8d4035C",
67
74
  cvxcrvFRAX: "0x117A0bab81F25e60900787d98061cCFae023560c",
@@ -71,6 +78,11 @@ exports.tokenDataByNetwork = {
71
78
  cvxcrvPlain3andSUSD: "0x11D200ef1409cecA8D6d23e6496550f707772F11",
72
79
  cvxgusd3CRV: "0x15c2471ef46Fa721990730cfa526BcFb45574576",
73
80
  cvxOHMFRAXBP: "0xd8F1B275c320819c7D752ef79988d0780bf00446",
81
+ cvxMIM_3LP3CRV: "0xabB54222c2b77158CC975a2b715a3d703c256F05",
82
+ cvxcrvCRVETH: "0x0Fb8dcdD95e4C48D3dD0eFA4086512f6F8FD4565",
83
+ cvxcrvCVXETH: "0x0bC857f97c0554d1d0D602b56F2EEcE682016fBA",
84
+ cvxcrvUSDTWBTCWETH: "0xB77BA8B4b9d981269466eE95796A9Af57d4E82DB",
85
+ cvxLDOETH: "0xD533a949740bb3306d119CC777fa900bA034cd52",
74
86
  // CONVEX PHANTOM TOKEN ADDRESSES
75
87
  stkcvx3Crv: "0xbAc7a431146aeAf3F57A16b9954f332Fd292F270",
76
88
  stkcvxFRAX3CRV: "0xaF314b088B53835d5cF4e4CB81beABa5934a61fe",
@@ -79,7 +91,12 @@ exports.tokenDataByNetwork = {
79
91
  stkcvxcrvPlain3andSUSD: "0x7e1992A7F28dAA5f6a2d34e2cd40f962f37B172C",
80
92
  stkcvxLUSD3CRV: "0x0A1D4A25d0390899b90bCD22E1Ef155003EA76d7",
81
93
  stkcvxcrvFRAX: "0x276187f24D41745513cbE2Bd5dFC33a4d8CDc9ed",
82
- stkcvxOHMFRAXBP: "deploy me",
94
+ stkcvxOHMFRAXBP: "0x888407AabAfa936B90acF65C4Db19370A01d9bd8",
95
+ stkcvxMIM_3LP3CRV: "0x1aAbe1B22a290cCB39FD77440D5eb96Cf40079f4",
96
+ stkcvxcrvCRVETH: "0xfC4b109D46e12170DF31AF8ba39403fAC2b8c0cf",
97
+ stkcvxcrvCVXETH: "0x948bEd0211076b05d22e98929217d0f04D068C5c",
98
+ stkcvxcrvUSDTWBTCWETH: "0xEE3EE8373384BBfea3227E527C1B9b4e7821273E",
99
+ stkcvxLDOETH: "0x2Fd6bD5b81c1060039D619E76e4e1f924B173006",
83
100
  // YEARN TOKENS
84
101
  yvDAI: "0xdA816459F1AB5631232FE5e97a05BBBb94970c95",
85
102
  yvUSDC: "0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE",
@@ -122,6 +139,8 @@ exports.tokenDataByNetwork = {
122
139
  WETH: "0x595DFFf822767c2E14CFB7D5e0b5a5e23eCfACdd",
123
140
  YFI: "0xCad5D7701e0A85fe50B3aCaBDcdF7e75672F326e",
124
141
  OHM: "deploy me",
142
+ MIM: "deploy me",
143
+ SPELL: "deploy me",
125
144
  /// UPDATE
126
145
  STETH: "0xd628baa42b3080593a231016bF3F229161C9F745",
127
146
  wstETH: "0x5E590e6c887A84098F3fa465267a44AaE058eBbb",
@@ -149,6 +168,11 @@ exports.tokenDataByNetwork = {
149
168
  FRAX3CRV: "0x12Ad3125C67eC5325Cc94AFdA8B26cd12BCe1E9b",
150
169
  LUSD3CRV: "0x348B1846b87cA12D23A9A4E73B1CfAc2Aad49cf4",
151
170
  OHMFRAXBP: "deploy me",
171
+ MIM_3LP3CRV: "deploy me",
172
+ crvCRVETH: "deploy me",
173
+ crvCVXETH: "deploy me",
174
+ crvUSDTWBTCWETH: "deploy me",
175
+ LDOETH: "deploy me",
152
176
  // CONVEX LP TOKENS
153
177
  cvx3Crv: "0xe12bFD868a81D1AD147731D0eC164d9C4A397FCd",
154
178
  cvxcrvFRAX: "0x68345E6C192f97A7334a96ceda94e2486c08Fa0c",
@@ -158,6 +182,11 @@ exports.tokenDataByNetwork = {
158
182
  cvxLUSD3CRV: "0xD944F38aa81804313db028924Cf0695B26B67e6E",
159
183
  cvxgusd3CRV: "0xBA9e6B05b0F2C5B41Df2d56c0b1ddaFa03d53fed",
160
184
  cvxOHMFRAXBP: "deploy me",
185
+ cvxMIM_3LP3CRV: "deploy me",
186
+ cvxcrvCRVETH: "deploy me",
187
+ cvxcrvCVXETH: "deploy me",
188
+ cvxcrvUSDTWBTCWETH: "deploy me",
189
+ cvxLDOETH: "deploy me",
161
190
  // CONVEX PHANTOM TOKEN ADDRESSES
162
191
  stkcvx3Crv: "0xEB763389772eA09eddFcfed3EC571Bb20c187763",
163
192
  stkcvxcrvFRAX: "0x6784ED28285ECd58F76f3A85F39A293E15080964",
@@ -167,6 +196,11 @@ exports.tokenDataByNetwork = {
167
196
  stkcvxcrvPlain3andSUSD: "0x49416516604eF33383Bd9F3a94fEcd4ee36E2d88",
168
197
  stkcvxLUSD3CRV: "0x84c04976BA15AE880B8D6daC9CE1075D0eFD0d4D",
169
198
  stkcvxOHMFRAXBP: "deploy me",
199
+ stkcvxMIM_3LP3CRV: "deploy me",
200
+ stkcvxcrvCRVETH: "deploy me",
201
+ stkcvxcrvCVXETH: "deploy me",
202
+ stkcvxcrvUSDTWBTCWETH: "deploy me",
203
+ stkcvxLDOETH: "deploy me",
170
204
  // BALANCER TOKENS
171
205
  "50OHM_50DAI": "deploy me",
172
206
  "50OHM_50WETH": "deploy me",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "1.20.25",
3
+ "version": "1.22.0",
4
4
  "description": "Gearbox SDK",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",