@gearbox-protocol/sdk 0.0.41 → 0.0.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import { BigNumber } from "ethers";
2
2
  import { TokenDataPayload } from "../payload/token";
3
3
  import { NetworkType } from "./constants";
4
- import { SupportedTokens } from "./token";
4
+ import { SupportedToken } from "./token";
5
5
  export declare class TokenData {
6
6
  readonly id: string;
7
7
  readonly symbol: string;
@@ -24,5 +24,5 @@ export interface TokenSavedData {
24
24
  type: TokenType;
25
25
  }
26
26
  export declare const WETHToken: Record<NetworkType, string>;
27
- export declare const connectors: Record<NetworkType, Array<SupportedTokens>>;
27
+ export declare const connectors: Record<NetworkType, Array<SupportedToken>>;
28
28
  export declare function getConnectors(networkType: NetworkType): string[];
@@ -0,0 +1,59 @@
1
+ import { ConvexPoolContract, CurvePoolContract, UniswapV2Contract, YearnVaultContract } from "./contracts";
2
+ import { NormalToken, CurveLPToken, YearnLPToken, ConvexLPToken, ConvexStakedPhantomToken } from "./token";
3
+ export declare enum TradeType {
4
+ UniswapV2Swap = 0,
5
+ UniswapV3Swap = 1,
6
+ CurveExchange = 2,
7
+ CurveExchangeUnderlying = 3,
8
+ CurveDepositLP = 4,
9
+ CurveWithdrawLP = 5,
10
+ YearnDeposit = 6,
11
+ YearnWithdraw = 7,
12
+ LidoStake = 8,
13
+ ConvexDeposit = 9,
14
+ ConvexStake = 10,
15
+ ConvexDepositAndStake = 11
16
+ }
17
+ export declare type TradeAction = {
18
+ type: TradeType.UniswapV2Swap;
19
+ contract: UniswapV2Contract;
20
+ } | {
21
+ type: TradeType.UniswapV3Swap;
22
+ contract: "UNISWAP_V3_ROUTER";
23
+ } | {
24
+ type: TradeType.CurveExchange;
25
+ contract: CurvePoolContract;
26
+ tokenOut: Array<NormalToken | CurveLPToken>;
27
+ } | {
28
+ type: TradeType.CurveDepositLP;
29
+ contract: CurvePoolContract;
30
+ tokenOut: CurveLPToken;
31
+ } | {
32
+ type: TradeType.CurveWithdrawLP;
33
+ contract: CurvePoolContract;
34
+ tokenOut: Array<CurveLPToken | NormalToken>;
35
+ } | {
36
+ type: TradeType.YearnDeposit;
37
+ contract: YearnVaultContract;
38
+ tokenOut: YearnLPToken;
39
+ } | {
40
+ type: TradeType.YearnWithdraw;
41
+ contract: YearnVaultContract;
42
+ tokenOut: NormalToken | CurveLPToken;
43
+ } | {
44
+ type: TradeType.LidoStake;
45
+ contract: "LIDO_STETH_GATEWAY";
46
+ tokenOut: NormalToken;
47
+ } | {
48
+ type: TradeType.ConvexDeposit;
49
+ contract: ConvexPoolContract;
50
+ tokenOut: ConvexLPToken;
51
+ } | {
52
+ type: TradeType.ConvexStake;
53
+ contract: ConvexPoolContract;
54
+ tokenOut: ConvexStakedPhantomToken;
55
+ } | {
56
+ type: TradeType.ConvexDepositAndStake;
57
+ contract: ConvexPoolContract;
58
+ tokenOut: ConvexStakedPhantomToken;
59
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TradeType = void 0;
4
+ var TradeType;
5
+ (function (TradeType) {
6
+ TradeType[TradeType["UniswapV2Swap"] = 0] = "UniswapV2Swap";
7
+ TradeType[TradeType["UniswapV3Swap"] = 1] = "UniswapV3Swap";
8
+ TradeType[TradeType["CurveExchange"] = 2] = "CurveExchange";
9
+ TradeType[TradeType["CurveExchangeUnderlying"] = 3] = "CurveExchangeUnderlying";
10
+ TradeType[TradeType["CurveDepositLP"] = 4] = "CurveDepositLP";
11
+ TradeType[TradeType["CurveWithdrawLP"] = 5] = "CurveWithdrawLP";
12
+ TradeType[TradeType["YearnDeposit"] = 6] = "YearnDeposit";
13
+ TradeType[TradeType["YearnWithdraw"] = 7] = "YearnWithdraw";
14
+ TradeType[TradeType["LidoStake"] = 8] = "LidoStake";
15
+ TradeType[TradeType["ConvexDeposit"] = 9] = "ConvexDeposit";
16
+ TradeType[TradeType["ConvexStake"] = 10] = "ConvexStake";
17
+ TradeType[TradeType["ConvexDepositAndStake"] = 11] = "ConvexDepositAndStake";
18
+ })(TradeType = exports.TradeType || (exports.TradeType = {}));
package/lib/index.d.ts CHANGED
@@ -28,10 +28,9 @@ export * from "./utils/math";
28
28
  export * from "./core/creditCard";
29
29
  export * from "./payload/graphPayload";
30
30
  export * from "./types/index";
31
- export * from "./devops/verifierDeployer";
32
31
  export type { IAppPoolService, IAppCreditManager, IAppERC20, IAppAddressProvider, IDataCompressor, IWETHGateway } from "./types";
33
32
  export * from "./core/history";
34
33
  export { MultiCallContract } from "./utils/multicall";
35
34
  export { callRepeater } from "./utils/repeater";
36
35
  export { getContractName } from "./core/contractsRegister";
37
- export { AdapterInterface } from "./core/contracts";
36
+ export { AdapterInterface } from "./core/adapters";
package/lib/index.js CHANGED
@@ -45,7 +45,6 @@ __exportStar(require("./utils/math"), exports);
45
45
  __exportStar(require("./core/creditCard"), exports);
46
46
  __exportStar(require("./payload/graphPayload"), exports);
47
47
  __exportStar(require("./types/index"), exports);
48
- __exportStar(require("./devops/verifierDeployer"), exports);
49
48
  __exportStar(require("./core/history"), exports);
50
49
  var multicall_1 = require("./utils/multicall");
51
50
  Object.defineProperty(exports, "MultiCallContract", { enumerable: true, get: function () { return multicall_1.MultiCallContract; } });
@@ -53,5 +52,5 @@ var repeater_1 = require("./utils/repeater");
53
52
  Object.defineProperty(exports, "callRepeater", { enumerable: true, get: function () { return repeater_1.callRepeater; } });
54
53
  var contractsRegister_1 = require("./core/contractsRegister");
55
54
  Object.defineProperty(exports, "getContractName", { enumerable: true, get: function () { return contractsRegister_1.getContractName; } });
56
- var contracts_1 = require("./core/contracts");
57
- Object.defineProperty(exports, "AdapterInterface", { enumerable: true, get: function () { return contracts_1.AdapterInterface; } });
55
+ var adapters_1 = require("./core/adapters");
56
+ Object.defineProperty(exports, "AdapterInterface", { enumerable: true, get: function () { return adapters_1.AdapterInterface; } });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "0.0.41",
3
+ "version": "0.0.44",
4
4
  "description": "Gearbox SDK",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -0,0 +1,16 @@
1
+ export enum AdapterInterface {
2
+ NO_SWAP, // 0 - 1
3
+ UNISWAP_V2_ROUTER, // 1 - 2
4
+ UNISWAP_V3_ROUTER, // 2 - 4
5
+ CURVE_V1_2ASSETS, // 3 - 8
6
+ CURVE_V1_3ASSETS, // 4 - 16
7
+ CURVE_V1_4ASSETS, // 5 - 32
8
+ CURVE_V1_STECRV_POOL, // 6 - 64
9
+ YEARN_V2, // 7 - 128
10
+ CONVEX_V1_BASE_REWARD_POOL, // 8 - 256
11
+ CONVEX_V1_BOOSTER, // 9 - 512
12
+ CONVEX_V1_CLAIM_ZAP, // 10 - 1024
13
+ LIDO_V1 // 11 - 2048
14
+ }
15
+
16
+
@@ -4,171 +4,280 @@
4
4
  * (c) Gearbox.fi, 2021
5
5
  */
6
6
 
7
- import { tokenDataByNetwork } from "./token";
7
+ import { AdapterInterface } from "./adapters";
8
+ import { NetworkType } from "./constants";
9
+ import { Protocols } from "./protocols";
10
+ import {
11
+ ConvexStakedPhantomToken,
12
+ CurveLPToken,
13
+ NormalToken,
14
+ tokenDataByNetwork
15
+ } from "./token";
16
+
17
+ export type UniswapV2Contract = "UNISWAP_V2_ROUTER" | "SUSHISWAP_ROUTER";
18
+
19
+ export type CurvePoolContract =
20
+ | "CURVE_3POOL"
21
+ | "CURVE_STETH_GATEWAY"
22
+ | "CURVE_FRAX"
23
+ | "CURVE_LUSD"
24
+ | "CURVE_GUSD"
25
+ | "CURVE_SUSD";
26
+
27
+ export type YearnVaultContract =
28
+ | "YEARN_DAI"
29
+ | "YEARN_USDC"
30
+ | "YEARN_WETH"
31
+ | "YEARN_WBTC"
32
+ | "YEARN_CURVE_FRAX"
33
+ | "YEARN_CURVE_STETH";
34
+
35
+ export type ConvexPoolContract =
36
+ | "CONVEX_3CRV"
37
+ | "CONVEX_GUSD"
38
+ | "CONVEX_SUSD"
39
+ | "CONVEX_STECRV"
40
+ | "CONVEX_FRAX3CRV";
41
+
42
+ export type SupportedContract =
43
+ | UniswapV2Contract
44
+ | "UNISWAP_V3_ROUTER"
45
+ | CurvePoolContract
46
+ | YearnVaultContract
47
+ | "CONVEX_BOOSTER"
48
+ | ConvexPoolContract
49
+ | "CONVEX_CLAIM_ZAP"
50
+ | "LIDO_STETH_GATEWAY";
51
+
52
+ export const contractsByNetwork: Record<
53
+ NetworkType,
54
+ Record<SupportedContract, string>
55
+ > = {
56
+ Mainnet: {
57
+ UNISWAP_V2_ROUTER: "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D",
58
+ UNISWAP_V3_ROUTER: "0xE592427A0AEce92De3Edee1F18E0157C05861564",
59
+ SUSHISWAP_ROUTER: "0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F",
60
+
61
+ // CURVE
62
+ CURVE_3POOL: "0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7", // SEPARATE TOKEN
63
+ CURVE_STETH_GATEWAY: "0xDC24316b9AE028F1497c275EB9192a3Ea0f67022", // SEPARATE TOKEN
64
+ CURVE_FRAX: tokenDataByNetwork.Mainnet.FRAX3CRV,
65
+ CURVE_LUSD: tokenDataByNetwork.Mainnet.LUSD3CRV,
66
+ CURVE_SUSD: "0xA5407eAE9Ba41422680e2e00537571bcC53efBfD", // SEPARATE TOKEN
67
+ CURVE_GUSD: "0x4f062658EaAF2C1ccf8C8e36D6824CDf41167956", // SEPARATE TOKEN
68
+
69
+ // YEARN
70
+ YEARN_DAI: tokenDataByNetwork.Mainnet.yvDAI,
71
+ YEARN_USDC: tokenDataByNetwork.Mainnet.yvUSDC,
72
+ YEARN_WETH: tokenDataByNetwork.Mainnet.yvWETH,
73
+ YEARN_WBTC: tokenDataByNetwork.Mainnet.yvWBTC,
74
+ YEARN_CURVE_FRAX: tokenDataByNetwork.Mainnet.yvCurve_FRAX,
75
+ YEARN_CURVE_STETH: tokenDataByNetwork.Mainnet.yvCurve_stETH,
76
+
77
+ // CONVEX
78
+ CONVEX_BOOSTER: "0xF403C135812408BFbE8713b5A23a04b3D48AAE31",
79
+ CONVEX_3CRV: "0x689440f2Ff927E1f24c72F1087E1FAF471eCe1c8",
80
+ CONVEX_GUSD: "0x7A7bBf95C44b144979360C3300B54A7D34b44985",
81
+ CONVEX_SUSD: "0x22eE18aca7F3Ee920D01F25dA85840D12d98E8Ca",
82
+ CONVEX_STECRV: "0x0A760466E1B4621579a82a39CB56Dda2F4E70f03",
83
+ CONVEX_FRAX3CRV: "0xB900EF131301B307dB5eFcbed9DBb50A3e209B2e",
84
+ CONVEX_CLAIM_ZAP: "0x92Cf9E5e4D1Dfbf7dA0d2BB3e884a68416a65070",
85
+
86
+ // LIDO
87
+ LIDO_STETH_GATEWAY: "0xae7ab96520de3a18e5e111b5eaab095312d7fe84"
88
+ },
89
+ Kovan: {
90
+ UNISWAP_V2_ROUTER: "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D",
91
+ UNISWAP_V3_ROUTER: "0xE592427A0AEce92De3Edee1F18E0157C05861564",
92
+ SUSHISWAP_ROUTER: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506",
93
+
94
+ // CURVE
95
+ CURVE_3POOL: "0x769C784D1e958672bDef04cf12Fd5399b3db0f27",
96
+ CURVE_STETH_GATEWAY: "0xF695d3aa358D5087A0C157DBb9449d4f0d8E534a",
97
+ CURVE_FRAX: "",
98
+ CURVE_LUSD: tokenDataByNetwork.Kovan.LUSD3CRV,
99
+ CURVE_SUSD: "0x032f1cE00865F3499C0052ceBA5F2348842416DB", // SEPARATE TOKEN
100
+ CURVE_GUSD: "",
101
+
102
+ // YEARN
103
+ YEARN_DAI: tokenDataByNetwork.Kovan.yvDAI,
104
+ YEARN_USDC: tokenDataByNetwork.Kovan.yvUSDC,
105
+ YEARN_WETH: tokenDataByNetwork.Kovan.yvWETH,
106
+ YEARN_WBTC: tokenDataByNetwork.Kovan.yvWBTC,
107
+ YEARN_CURVE_FRAX: tokenDataByNetwork.Kovan.yvCurve_FRAX,
108
+ YEARN_CURVE_STETH: tokenDataByNetwork.Kovan.yvCurve_stETH,
109
+
110
+ // CONVEX
111
+ CONVEX_BOOSTER: "0x78A9261965F048b9FF055699569be4400EEC7005",
112
+ CONVEX_3CRV: "0x90D9E8ecc406cd7363C08fAdb4ac0f3994b4cA71",
113
+ CONVEX_GUSD: "",
114
+ CONVEX_SUSD: "",
115
+ CONVEX_STECRV: "0x0f64e188BFF97e09C71FF85f30509f5596D420dD",
116
+ CONVEX_FRAX3CRV: "",
117
+ CONVEX_CLAIM_ZAP: "",
118
+
119
+ // LIDO
120
+ LIDO_STETH_GATEWAY: ""
121
+ }
122
+ };
8
123
 
9
- export const UNISWAP_V2_ROUTER = "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D";
10
- export const UNISWAP_V3_ROUTER = "0xE592427A0AEce92De3Edee1F18E0157C05861564";
11
124
  export const UNISWAP_V3_QUOTER = "0xb27308f9f90d607463bb33ea1bebb41c27ce5ab6";
12
125
 
13
- export const CURVE_3POOL_ADDRESS = "0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7";
14
- export const CURVE_STETH_ADDRESS = "0xDC24316b9AE028F1497c275EB9192a3Ea0f67022";
15
- export const CURVE_STETH_GATEWAY_ADDRESS = "";
16
- export const CURVE_FRAX_ADDRESS = "0xd632f22692FaC7611d2AA1C0D552930D43CAEd3B";
17
- export const CURVE_LUSD_ADDRESS = "0x5a6a4d54456819380173272a5e8e9b9904bdf41b";
18
- export const CURVE_SUSD_ADDRESS = "0x5a6a4d54456819380173272a5e8e9b9904bdf41b";
19
- export const CURVE_GUSD_ADDRESS = "0x5a6a4d54456819380173272a5e8e9b9904bdf41b";
20
-
21
- export const CURVE_3POOL_KOVAN_MOCK =
22
- "0x769C784D1e958672bDef04cf12Fd5399b3db0f27";
23
- export const CURVE_STE_CRV_KOVAN_MOCK =
24
- "0xF695d3aa358D5087A0C157DBb9449d4f0d8E534a";
25
- export const CURVE_SUSD_KOVAN_MOCK =
26
- "0x032f1cE00865F3499C0052ceBA5F2348842416DB";
27
-
28
- export const YEARN_DAI_ADDRESS = "0xdA816459F1AB5631232FE5e97a05BBBb94970c95";
29
- export const YEARN_USDC_ADDRESS = "0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE";
30
- export const YEARN_WETH_ADDRESS = "0xa258C4606Ca8206D8aA700cE2143D7db854D168c";
31
- export const YEARN_WBTC_ADDRESS = "0xA696a63cc78DfFa1a63E9E50587C197387FF6C7E";
32
-
33
- export const YEARN_CURVE_FRAX_ADDRESS =
34
- "0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139";
35
-
36
- export const YEARN_CURVE_STETH_ADDRESS =
37
- "0xdCD90C7f6324cfa40d7169ef80b12031770B4325";
38
-
39
- // KOVAN
40
- export const YEARN_DAI_KOVAN_MOCK = tokenDataByNetwork.Kovan.yvDAI;
41
- export const YEARN_USDC_KOVAN_MOCK = tokenDataByNetwork.Kovan.yvUSDC;
42
- export const YEARN_WETH_KOVAN_MOCK = tokenDataByNetwork.Kovan.yvWETH;
43
- export const YEARN_WBTC_KOVAN_MOCK = tokenDataByNetwork.Kovan.yvWBTC;
44
- export const YEARN_3POOL_KOVAN_MOCK = tokenDataByNetwork.Kovan.yvCurve_stETH;
45
-
46
- export const SUSHISWAP_MAINNET = "0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F";
47
- export const SUSHISWAP_KOVAN = "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
48
-
49
- export const CONVEX_BOOSTER_KOVAN_ADDRESS =
50
- "0x78A9261965F048b9FF055699569be4400EEC7005";
51
-
52
- export const CONVEX_3CRV_KOVAN_POOL_ADDRESS =
53
- "0x90D9E8ecc406cd7363C08fAdb4ac0f3994b4cA71";
54
-
55
- export const CONVEX_STECRV_POOL_ADDRESS =
56
- "0x0A760466E1B4621579a82a39CB56Dda2F4E70f03";
57
-
58
- export const CONVEX_STECRV_KOVAN_POOL_ADDRESS =
59
- "0x0f64e188BFF97e09C71FF85f30509f5596D420dD";
60
-
61
- export const CONVEX_BOOSTER_ADDRESS =
62
- "0xF403C135812408BFbE8713b5A23a04b3D48AAE31";
63
-
64
- export const CONVEX_3POOL_REWARD_POOL_ADDRESS =
65
- "0x689440f2Ff927E1f24c72F1087E1FAF471eCe1c8";
66
-
67
- export const CONVEX_FRAX3CRV_REWARD_POOL_ADDRESS =
68
- "0xB900EF131301B307dB5eFcbed9DBb50A3e209B2e";
69
-
70
- export const CONVEX_CLAIM_ZAP_ADDRESS =
71
- "0x92Cf9E5e4D1Dfbf7dA0d2BB3e884a68416a65070";
72
-
73
- export const LIDO_STETH_ADDRESS = "0xae7ab96520de3a18e5e111b5eaab095312d7fe84";
74
-
75
- export enum AdapterInterface {
76
- NO_SWAP, // 0 - 1
77
- UNISWAP_V2, // 1 - 2
78
- UNISWAP_V3, // 2 - 4
79
- CURVE_V1_2ASSETS, // 3 - 8
80
- CURVE_V1_3ASSETS, // 4 - 16
81
- CURVE_V1_4ASSETS, // 5 - 32
82
- CURVE_V1_STETH, // 6 - 64
83
- YEARN_V2, // 7 - 128
84
- CONVEX_V1_BASE_REWARD_POOL, // 8 - 256
85
- CONVEX_V1_BOOSTER, // 9 - 512
86
- CONVEX_V1_CLAIM_ZAP, // 10 - 1024
87
- LIDO_V1 // 11 - 2048
88
- }
89
-
90
- export type AdapterParams =
126
+ export type ContractParams =
91
127
  | {
92
- name: string;
93
- type: AdapterInterface.UNISWAP_V2;
94
- icon: string;
128
+ protocol: Protocols.Uniswap | Protocols.Sushiswap;
129
+ type: AdapterInterface.UNISWAP_V2_ROUTER;
95
130
  }
96
131
  | {
97
- name: string;
98
- type: AdapterInterface.UNISWAP_V3;
132
+ protocol: Protocols.Uniswap;
133
+ type: AdapterInterface.UNISWAP_V3_ROUTER;
99
134
  quoter: string;
100
- icon: string;
101
135
  }
102
136
  | {
103
- name: string;
104
- type: AdapterInterface.CURVE_V1_2ASSETS;
105
- nCoins: number;
106
- icon: string;
137
+ protocol: Protocols.Curve;
138
+ type:
139
+ | AdapterInterface.CURVE_V1_2ASSETS
140
+ | AdapterInterface.CURVE_V1_3ASSETS
141
+ | AdapterInterface.CURVE_V1_4ASSETS;
142
+ lpToken: CurveLPToken;
143
+ tokens: Array<NormalToken | CurveLPToken>;
107
144
  }
108
145
  | {
109
- name: string;
110
- type: AdapterInterface.CURVE_V1_3ASSETS;
111
- nCoins: number;
112
- icon: string;
146
+ protocol: Protocols.Curve;
147
+ type: AdapterInterface.CURVE_V1_STECRV_POOL;
148
+ pool: string;
149
+ poolKovan?: string;
113
150
  }
114
151
  | {
115
- name: string;
152
+ protocol: Protocols.Yearn;
116
153
  type: AdapterInterface.YEARN_V2;
117
- icon: string;
154
+ }
155
+ | {
156
+ protocol: Protocols.Convex;
157
+ type:
158
+ | AdapterInterface.CONVEX_V1_BOOSTER
159
+ | AdapterInterface.CONVEX_V1_CLAIM_ZAP;
160
+ }
161
+ | {
162
+ protocol: Protocols.Convex;
163
+ type: AdapterInterface.CONVEX_V1_BASE_REWARD_POOL;
164
+ stakedToken: ConvexStakedPhantomToken;
165
+ }
166
+ | {
167
+ protocol: Protocols.Lido;
168
+ type: AdapterInterface.LIDO_V1;
118
169
  };
119
170
 
120
- export const knownContracts: Record<string, AdapterParams> = {
121
- [UNISWAP_V2_ROUTER]: {
122
- name: "UniswapV2",
123
- type: AdapterInterface.UNISWAP_V2,
124
- icon: "/protocols/uniswap.png"
171
+ export const contractParams: Record<SupportedContract, ContractParams> = {
172
+ UNISWAP_V2_ROUTER: {
173
+ protocol: Protocols.Uniswap,
174
+ type: AdapterInterface.UNISWAP_V2_ROUTER
125
175
  },
126
- [UNISWAP_V3_ROUTER]: {
127
- name: "UniswapV3",
176
+ UNISWAP_V3_ROUTER: {
177
+ protocol: Protocols.Uniswap,
128
178
  quoter: UNISWAP_V3_QUOTER,
129
- type: AdapterInterface.UNISWAP_V3,
130
- icon: "/protocols/uniswap.png"
179
+ type: AdapterInterface.UNISWAP_V3_ROUTER
131
180
  },
132
- [SUSHISWAP_MAINNET]: {
133
- name: "Sushiswap",
134
- type: AdapterInterface.UNISWAP_V2,
135
- icon: "/protocols/sushi.svg"
181
+ SUSHISWAP_ROUTER: {
182
+ protocol: Protocols.Sushiswap,
183
+ type: AdapterInterface.UNISWAP_V2_ROUTER
136
184
  },
137
- [CURVE_3POOL_ADDRESS]: {
138
- name: "Curve 3pool",
185
+ CURVE_3POOL: {
186
+ protocol: Protocols.Curve,
139
187
  type: AdapterInterface.CURVE_V1_3ASSETS,
140
- nCoins: 3,
141
- icon: "/protocols/curve.svg"
188
+ lpToken: "3Crv",
189
+ tokens: ["DAI", "USDC", "USDT"]
142
190
  },
143
- [CURVE_STETH_ADDRESS]: {
144
- name: "Curve stETH",
191
+ CURVE_STETH_GATEWAY: {
192
+ protocol: Protocols.Curve,
193
+ type: AdapterInterface.CURVE_V1_STECRV_POOL,
194
+ pool: "",
195
+ poolKovan: ""
196
+ },
197
+ CURVE_FRAX: {
198
+ protocol: Protocols.Curve,
199
+ type: AdapterInterface.CURVE_V1_2ASSETS,
200
+ lpToken: "FRAX3CRV",
201
+ tokens: ["3Crv", "FRAX"]
202
+ },
203
+ CURVE_LUSD: {
204
+ protocol: Protocols.Curve,
145
205
  type: AdapterInterface.CURVE_V1_2ASSETS,
146
- nCoins: 2,
147
- icon: "/protocols/curve.svg"
148
- },
149
- [YEARN_DAI_ADDRESS]: {
150
- name: "Yearn DAI",
151
- type: AdapterInterface.YEARN_V2,
152
- icon: "/protocols/yearn.svg"
153
- },
154
- [YEARN_DAI_KOVAN_MOCK]: {
155
- name: "Yearn DAI",
156
- type: AdapterInterface.YEARN_V2,
157
- icon: "/protocols/yearn.svg"
158
- },
159
- [YEARN_USDC_ADDRESS]: {
160
- name: "Yearn USDC",
161
- type: AdapterInterface.YEARN_V2,
162
- icon: "/protocols/yearn.svg"
163
- },
164
- [YEARN_USDC_KOVAN_MOCK]: {
165
- name: "Yearn USDC",
166
- type: AdapterInterface.YEARN_V2,
167
- icon: "/protocols/yearn.svg"
168
- },
169
- [SUSHISWAP_KOVAN]: {
170
- name: "Sushiswap",
171
- type: AdapterInterface.UNISWAP_V2,
172
- icon: "/protocols/sushi.svg"
206
+ lpToken: "LUSD3CRV",
207
+ tokens: ["3Crv", "FRAX"]
208
+ },
209
+ CURVE_SUSD: {
210
+ protocol: Protocols.Curve,
211
+ type: AdapterInterface.CURVE_V1_2ASSETS,
212
+ lpToken: "crvPlain3andSUSD",
213
+ tokens: ["3Crv", "FRAX"]
214
+ },
215
+ CURVE_GUSD: {
216
+ protocol: Protocols.Curve,
217
+ type: AdapterInterface.CURVE_V1_2ASSETS,
218
+ lpToken: "gusd3CRV",
219
+ tokens: ["3Crv", "FRAX"]
220
+ },
221
+ YEARN_DAI: {
222
+ protocol: Protocols.Yearn,
223
+ type: AdapterInterface.YEARN_V2
224
+ },
225
+
226
+ YEARN_USDC: {
227
+ protocol: Protocols.Yearn,
228
+ type: AdapterInterface.YEARN_V2
229
+ },
230
+ YEARN_WETH: {
231
+ protocol: Protocols.Yearn,
232
+ type: AdapterInterface.YEARN_V2
233
+ },
234
+ YEARN_WBTC: {
235
+ protocol: Protocols.Yearn,
236
+ type: AdapterInterface.YEARN_V2
237
+ },
238
+ YEARN_CURVE_FRAX: {
239
+ protocol: Protocols.Yearn,
240
+ type: AdapterInterface.YEARN_V2
241
+ },
242
+ YEARN_CURVE_STETH: {
243
+ protocol: Protocols.Yearn,
244
+ type: AdapterInterface.YEARN_V2
245
+ },
246
+ CONVEX_BOOSTER: {
247
+ protocol: Protocols.Convex,
248
+ type: AdapterInterface.CONVEX_V1_BOOSTER
249
+ },
250
+ CONVEX_3CRV: {
251
+ protocol: Protocols.Convex,
252
+ type: AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
253
+ stakedToken: "stkcvx3Crv"
254
+ },
255
+ CONVEX_GUSD: {
256
+ protocol: Protocols.Convex,
257
+ type: AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
258
+ stakedToken: "stkcvxgusd3CRV"
259
+ },
260
+ CONVEX_SUSD: {
261
+ protocol: Protocols.Convex,
262
+ type: AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
263
+ stakedToken: "stkcvxcrvPlain3andSUSD"
264
+ },
265
+ CONVEX_STECRV: {
266
+ protocol: Protocols.Convex,
267
+ type: AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
268
+ stakedToken: "stkcvxsteCRV"
269
+ },
270
+ CONVEX_FRAX3CRV: {
271
+ protocol: Protocols.Convex,
272
+ type: AdapterInterface.CONVEX_V1_BASE_REWARD_POOL,
273
+ stakedToken: "stkcvxFRAX3CRV"
274
+ },
275
+ CONVEX_CLAIM_ZAP: {
276
+ protocol: Protocols.Convex,
277
+ type: AdapterInterface.CONVEX_V1_CLAIM_ZAP
278
+ },
279
+ LIDO_STETH_GATEWAY: {
280
+ protocol: Protocols.Lido,
281
+ type: AdapterInterface.LIDO_V1
173
282
  }
174
283
  };
@@ -1,11 +1,4 @@
1
- import {
2
- CURVE_3POOL_ADDRESS, SUSHISWAP_KOVAN,
3
- SUSHISWAP_MAINNET,
4
- UNISWAP_V2_ROUTER,
5
- UNISWAP_V3_ROUTER,
6
- YEARN_DAI_ADDRESS, YEARN_DAI_KOVAN_MOCK,
7
- YEARN_USDC_ADDRESS, YEARN_USDC_KOVAN_MOCK,
8
- } from "./contracts";
1
+
9
2
 
10
3
  export const deployedContracts: Record<string, string> = {
11
4
  // MAINNET
@@ -20,12 +13,12 @@ export const deployedContracts: Record<string, string> = {
20
13
 
21
14
 
22
15
 
23
- [UNISWAP_V2_ROUTER]: "Uniswap V2",
24
- [UNISWAP_V3_ROUTER]: "Uniswap V3",
25
- [CURVE_3POOL_ADDRESS]: "Curve 3Pool",
26
- [SUSHISWAP_MAINNET]: "Sushiswap",
27
- [YEARN_DAI_ADDRESS]: "Yearn DAI",
28
- [YEARN_USDC_ADDRESS]: "Yearn USDC",
16
+ // [UNISWAP_V2_ROUTER]: "Uniswap V2",
17
+ // [UNISWAP_V3_ROUTER]: "Uniswap V3",
18
+ // [CURVE_3POOL_ADDRESS]: "Curve 3Pool",
19
+ // [SUSHISWAP_MAINNET]: "Sushiswap",
20
+ // [YEARN_DAI_ADDRESS]: "Yearn DAI",
21
+ // [YEARN_USDC_ADDRESS]: "Yearn USDC",
29
22
 
30
23
  // KOVAN
31
24
  "0xc40B71BCcb749D91923654571f715Bf1FC464E66": "DAI",
@@ -36,9 +29,9 @@ export const deployedContracts: Record<string, string> = {
36
29
  "0x600073357c29d169aAF3E543A4519749830553F1": "WETH",
37
30
  "0xdBAd1361d9A03B81Be8D3a54Ef0dc9e39a1bA5b3": "USDC",
38
31
  "0x50d1fA47b0D88BA0D108148B8481b4A762eFB99e": "DAI",
39
- [YEARN_DAI_KOVAN_MOCK]: "Yearn DAI",
40
- [YEARN_USDC_KOVAN_MOCK]: "Yearn USDC",
41
- [SUSHISWAP_KOVAN]: "Sushiswap"
32
+ // [YEARN_DAI_KOVAN_MOCK]: "Yearn DAI",
33
+ // [YEARN_USDC_KOVAN_MOCK]: "Yearn USDC",
34
+ // [SUSHISWAP_KOVAN]: "Sushiswap"
42
35
  };
43
36
 
44
37
 
@@ -1,4 +1,4 @@
1
- import { SupportedTokens } from "./token";
1
+ import { SupportedToken } from "./token";
2
2
 
3
3
  export interface PriceFeed {
4
4
  token: string;
@@ -22,24 +22,24 @@ export type PriceFeedData =
22
22
  }
23
23
  | {
24
24
  type: OracleType.YEARN_TOKEN_ORACLE;
25
- token: SupportedTokens;
25
+ token: SupportedToken;
26
26
  deployed?: string;
27
27
  deployedKovan?: string;
28
28
  }
29
29
  | {
30
30
  type: OracleType.CURVE_LP_ORACLE;
31
- assets: Array<SupportedTokens>;
31
+ assets: Array<SupportedToken>;
32
32
  }
33
33
  | {
34
34
  type: OracleType.YEARN_CURVE_LP_ORACLE;
35
- curveSymbol: SupportedTokens;
35
+ curveSymbol: SupportedToken;
36
36
  }
37
37
  | {
38
38
  type: OracleType.ZERO_ORACLE;
39
39
  }
40
40
  | {
41
41
  type: OracleType.LIKE_CURVE_LP_ORACLE;
42
- curveSymbol: SupportedTokens;
42
+ curveSymbol: SupportedToken;
43
43
  };
44
44
 
45
45
  export type TokenPriceFeedData = {