@curvefi/api 2.5.0 → 2.7.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.
@@ -2,3 +2,5 @@ export declare const ALIASES_ETHEREUM: import("../interfaces").IDict<string>;
2
2
  export declare const ALIASES_POLYGON: import("../interfaces").IDict<string>;
3
3
  export declare const ALIASES_FANTOM: import("../interfaces").IDict<string>;
4
4
  export declare const ALIASES_AVALANCHE: import("../interfaces").IDict<string>;
5
+ export declare const ALIASES_ARBITRUM: import("../interfaces").IDict<string>;
6
+ export declare const ALIASES_OPTIMISM: import("../interfaces").IDict<string>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ALIASES_AVALANCHE = exports.ALIASES_FANTOM = exports.ALIASES_POLYGON = exports.ALIASES_ETHEREUM = void 0;
3
+ exports.ALIASES_OPTIMISM = exports.ALIASES_ARBITRUM = exports.ALIASES_AVALANCHE = exports.ALIASES_FANTOM = exports.ALIASES_POLYGON = exports.ALIASES_ETHEREUM = void 0;
4
4
  var utils_1 = require("./utils");
5
5
  exports.ALIASES_ETHEREUM = (0, utils_1.lowerCaseValues)({
6
6
  "crv": "0xD533a949740bb3306d119CC777fa900bA034cd52",
@@ -50,3 +50,27 @@ exports.ALIASES_AVALANCHE = (0, utils_1.lowerCaseValues)({
50
50
  "crypto_factory": '0xF18056Bbd320E96A48e3Fbf8bC061322531aac99',
51
51
  "registry_exchange": "",
52
52
  });
53
+ exports.ALIASES_ARBITRUM = (0, utils_1.lowerCaseValues)({
54
+ "crv": "0x11cDb42B0EB46D95f990BeDD4695A6e3fA034978",
55
+ "minter": "0xabC000d88f23Bb45525E447528DBF656A9D55bf5",
56
+ "voting_escrow": "0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2",
57
+ "gauge_controller": "0x2F50D538606Fa9EDD2B11E2446BEb18C9D5846bB",
58
+ "address_provider": "0x0000000022d53366457f9d5e68ec105046fc4383",
59
+ "router": "0xfA9a30350048B2BF66865ee20363067c66f67e58",
60
+ "deposit_and_stake": "0xB7De33440B7171159a9718CBE748086cecDd9685",
61
+ "factory": '0xb17b674D9c5CB2e441F8e196a2f048A81355d031',
62
+ "crypto_factory": '0xF18056Bbd320E96A48e3Fbf8bC061322531aac99',
63
+ "registry_exchange": "",
64
+ });
65
+ exports.ALIASES_OPTIMISM = (0, utils_1.lowerCaseValues)({
66
+ "crv": "0x0994206dfE8De6Ec6920FF4D779B0d950605Fb53",
67
+ "minter": "0xabC000d88f23Bb45525E447528DBF656A9D55bf5",
68
+ "voting_escrow": "0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2",
69
+ "gauge_controller": "0x2F50D538606Fa9EDD2B11E2446BEb18C9D5846bB",
70
+ "address_provider": "0x0000000022d53366457f9d5e68ec105046fc4383",
71
+ "router": "0xfA9a30350048B2BF66865ee20363067c66f67e58",
72
+ "deposit_and_stake": "0xB7De33440B7171159a9718CBE748086cecDd9685",
73
+ "factory": '0x2db0E83599a91b508Ac268a6197b8B14F5e72840',
74
+ "crypto_factory": '0xF18056Bbd320E96A48e3Fbf8bC061322531aac99',
75
+ "registry_exchange": "",
76
+ });
@@ -0,0 +1,7 @@
1
+ export declare const COINS_ARBITRUM: {
2
+ [index: string]: string;
3
+ };
4
+ export declare const cTokensArbitrum: never[];
5
+ export declare const yTokensArbitrum: never[];
6
+ export declare const ycTokensArbitrum: never[];
7
+ export declare const aTokensArbitrum: never[];
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.aTokensArbitrum = exports.ycTokensArbitrum = exports.yTokensArbitrum = exports.cTokensArbitrum = exports.COINS_ARBITRUM = void 0;
4
+ var utils_1 = require("../utils");
5
+ exports.COINS_ARBITRUM = (0, utils_1.lowerCaseValues)({
6
+ 'crv': '0x11cDb42B0EB46D95f990BeDD4695A6e3fA034978',
7
+ // --- USD ---
8
+ 'usdc': '0xff970a61a04b1ca14834a43f5de4533ebddb5cc8',
9
+ 'usdt': '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9',
10
+ '2crv': '0x7f90122bf0700f9e7e1f688fe926940e8839f353',
11
+ // --- EUR ---
12
+ 'eurs': '0xd22a58f79e9481d1a88e00c343885a588b34b68b',
13
+ // --- BTC ---
14
+ 'wbtc': '0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f',
15
+ 'renbtc': '0xDBf31dF14B66535aF65AaC99C32e9eA844e14501',
16
+ // --- ETH ---
17
+ "eth": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
18
+ "weth": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1",
19
+ });
20
+ exports.cTokensArbitrum = []; //.map((a) => a.toLowerCase());
21
+ exports.yTokensArbitrum = []; //.map((a) => a.toLowerCase());
22
+ exports.ycTokensArbitrum = []; //.map((a) => a.toLowerCase());
23
+ exports.aTokensArbitrum = []; //.map((a) => a.toLowerCase());
@@ -0,0 +1,7 @@
1
+ export declare const COINS_OPTIMISM: {
2
+ [index: string]: string;
3
+ };
4
+ export declare const cTokensOptimism: never[];
5
+ export declare const yTokensOptimism: never[];
6
+ export declare const ycTokensOptimism: never[];
7
+ export declare const aTokensOptimism: never[];
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.aTokensOptimism = exports.ycTokensOptimism = exports.yTokensOptimism = exports.cTokensOptimism = exports.COINS_OPTIMISM = void 0;
4
+ var utils_1 = require("../utils");
5
+ exports.COINS_OPTIMISM = (0, utils_1.lowerCaseValues)({
6
+ 'crv': '0x0994206dfE8De6Ec6920FF4D779B0d950605Fb53',
7
+ // --- USD ---
8
+ 'dai': '0xda10009cbd5d07dd0cecc66161fc93d7c9000da1',
9
+ 'usdc': '0x7f5c764cbc14f9669b88837ca1490cca17c31607',
10
+ 'usdt': '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58',
11
+ 'susd': '0x8c6f28f2f1a3c87f0f938b96d27520d9751ec8d9',
12
+ '3crv': '0x1337BedC9D22ecbe766dF105c9623922A27963EC',
13
+ // --- ETH ---
14
+ 'eth': '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
15
+ 'weth': '0x4200000000000000000000000000000000000006',
16
+ 'seth': '0xe405de8f52ba7559f9df3c368500b6e6ae6cee49',
17
+ });
18
+ exports.cTokensOptimism = []; //.map((a) => a.toLowerCase());
19
+ exports.yTokensOptimism = []; //.map((a) => a.toLowerCase());
20
+ exports.ycTokensOptimism = []; //.map((a) => a.toLowerCase());
21
+ exports.aTokensOptimism = []; //.map((a) => a.toLowerCase());
@@ -0,0 +1,4 @@
1
+ import { IPoolData } from "../../interfaces";
2
+ export declare const POOLS_DATA_ARBITRUM: {
3
+ [index: string]: IPoolData;
4
+ };
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.POOLS_DATA_ARBITRUM = void 0;
7
+ var utils_1 = require("../utils");
8
+ var swap_json_1 = __importDefault(require("../abis/2pool/swap.json"));
9
+ var swap_json_2 = __importDefault(require("../abis/tricrypto2/swap.json"));
10
+ var deposit_json_1 = __importDefault(require("../abis/tricrypto2/deposit.json"));
11
+ var swap_json_3 = __importDefault(require("../abis/eursusd2/swap.json"));
12
+ var zap_json_1 = __importDefault(require("../abis/eursusd2/zap.json"));
13
+ var swap_json_4 = __importDefault(require("../abis/ren-arbitrum/swap.json"));
14
+ var gauge_child_json_1 = __importDefault(require("../abis/gauge_child.json"));
15
+ exports.POOLS_DATA_ARBITRUM = (0, utils_1.lowerCasePoolDataAddresses)({
16
+ '2pool': {
17
+ name: "2pool",
18
+ full_name: "2pool",
19
+ symbol: "2pool",
20
+ reference_asset: "USD",
21
+ swap_address: '0x7f90122bf0700f9e7e1f688fe926940e8839f353',
22
+ token_address: '0x7f90122bf0700f9e7e1f688fe926940e8839f353',
23
+ // gauge_address: '0xbF7E49483881C76487b0989CD7d9A8239B20CA41', // Rewards-Only
24
+ gauge_address: '0xCE5F24B7A95e9cBa7df4B54E911B4A3Dc8CDAf6f',
25
+ is_plain: true,
26
+ underlying_coins: ['USDC', 'USDT'],
27
+ wrapped_coins: ['USDC', 'USDT'],
28
+ underlying_coin_addresses: [
29
+ '0xff970a61a04b1ca14834a43f5de4533ebddb5cc8',
30
+ '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9',
31
+ ],
32
+ wrapped_coin_addresses: [
33
+ '0xff970a61a04b1ca14834a43f5de4533ebddb5cc8',
34
+ '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9',
35
+ ],
36
+ underlying_decimals: [6, 6],
37
+ wrapped_decimals: [6, 6],
38
+ swap_abi: swap_json_1.default,
39
+ gauge_abi: gauge_child_json_1.default,
40
+ },
41
+ tricrypto: {
42
+ name: "tricrypto",
43
+ full_name: "tricrypto",
44
+ symbol: "tricrypto",
45
+ reference_asset: 'CRYPTO',
46
+ is_crypto: true,
47
+ swap_address: '0x960ea3e3C7FB317332d990873d354E18d7645590',
48
+ token_address: '0x8e0B8c8BB9db49a46697F3a5Bb8A308e744821D2',
49
+ // gauge_address: '0x97E2768e8E73511cA874545DC5Ff8067eB19B787', // Rewards-Only
50
+ gauge_address: '0x555766f3da968ecBefa690Ffd49A2Ac02f47aa5f',
51
+ deposit_address: '0xF97c707024ef0DD3E77a0824555a46B622bfB500',
52
+ underlying_coins: ['USDT', 'WBTC', 'ETH'],
53
+ wrapped_coins: ['USDT', 'WBTC', 'WETH'],
54
+ underlying_coin_addresses: [
55
+ '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9',
56
+ '0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f',
57
+ '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE',
58
+ ],
59
+ wrapped_coin_addresses: [
60
+ '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9',
61
+ '0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f',
62
+ '0x82af49447d8a07e3bd95bd0d56f35241523fbab1',
63
+ ],
64
+ underlying_decimals: [6, 8, 18],
65
+ wrapped_decimals: [6, 8, 18],
66
+ swap_abi: swap_json_2.default,
67
+ gauge_abi: gauge_child_json_1.default,
68
+ deposit_abi: deposit_json_1.default,
69
+ },
70
+ 'ren': {
71
+ name: "ren",
72
+ full_name: "ren",
73
+ symbol: "ren",
74
+ reference_asset: 'BTC',
75
+ is_plain: true,
76
+ swap_address: '0x3E01dD8a5E1fb3481F0F589056b428Fc308AF0Fb',
77
+ token_address: '0x3E01dD8a5E1fb3481F0F589056b428Fc308AF0Fb',
78
+ // gauge_address: '0xC2b1DF84112619D190193E48148000e3990Bf627', // Rewards-Only
79
+ gauge_address: '0xDB3fd1bfC67b5D4325cb31C04E0Cae52f1787FD6',
80
+ underlying_coins: ['WBTC', 'renBTC'],
81
+ wrapped_coins: ['WBTC', 'renBTC'],
82
+ underlying_coin_addresses: [
83
+ '0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f',
84
+ '0xDBf31dF14B66535aF65AaC99C32e9eA844e14501',
85
+ ],
86
+ wrapped_coin_addresses: [
87
+ '0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f',
88
+ '0xDBf31dF14B66535aF65AaC99C32e9eA844e14501',
89
+ ],
90
+ underlying_decimals: [8, 8],
91
+ wrapped_decimals: [8, 8],
92
+ swap_abi: swap_json_4.default,
93
+ gauge_abi: gauge_child_json_1.default,
94
+ },
95
+ eursusd: {
96
+ name: "eursusd",
97
+ full_name: "eursusd",
98
+ symbol: "eursusd",
99
+ reference_asset: 'CRYPTO',
100
+ swap_address: '0xA827a652Ead76c6B0b3D19dba05452E06e25c27e',
101
+ token_address: '0x3dFe1324A0ee9d86337d06aEB829dEb4528DB9CA',
102
+ // gauge_address: '0x37C7ef6B0E23C9bd9B620A6daBbFEC13CE30D824', // Rewards-Only
103
+ gauge_address: '0x6339eF8Df0C2d3d3E7eE697E241666a916B81587',
104
+ deposit_address: '0x25e2e8d104BC1A70492e2BE32dA7c1f8367F9d2c',
105
+ is_meta: true,
106
+ is_crypto: true,
107
+ base_pool: '2pool',
108
+ underlying_coins: ['EURS', 'USDC', 'USDT'],
109
+ wrapped_coins: ['EURS', '2CRV'],
110
+ underlying_coin_addresses: [
111
+ '0xd22a58f79e9481d1a88e00c343885a588b34b68b',
112
+ '0xff970a61a04b1ca14834a43f5de4533ebddb5cc8',
113
+ '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9',
114
+ ],
115
+ wrapped_coin_addresses: [
116
+ '0xd22a58f79e9481d1a88e00c343885a588b34b68b',
117
+ '0x7f90122bf0700f9e7e1f688fe926940e8839f353',
118
+ ],
119
+ underlying_decimals: [2, 6, 6],
120
+ wrapped_decimals: [2, 18],
121
+ swap_abi: swap_json_3.default,
122
+ gauge_abi: gauge_child_json_1.default,
123
+ deposit_abi: zap_json_1.default,
124
+ },
125
+ });
@@ -2,4 +2,6 @@ import { POOLS_DATA_ETHEREUM } from "./ethereum";
2
2
  import { POOLS_DATA_POLYGON } from "./polygon";
3
3
  import { POOLS_DATA_FANTOM } from "./fantom";
4
4
  import { POOLS_DATA_AVALANCHE } from "./avalanche";
5
- export { POOLS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, };
5
+ import { POOLS_DATA_ARBITRUM } from "./arbitrum";
6
+ import { POOLS_DATA_OPTIMISM } from "./optimism";
7
+ export { POOLS_DATA_ETHEREUM, POOLS_DATA_POLYGON, POOLS_DATA_FANTOM, POOLS_DATA_AVALANCHE, POOLS_DATA_ARBITRUM, POOLS_DATA_OPTIMISM, };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.POOLS_DATA_AVALANCHE = exports.POOLS_DATA_FANTOM = exports.POOLS_DATA_POLYGON = exports.POOLS_DATA_ETHEREUM = void 0;
3
+ exports.POOLS_DATA_OPTIMISM = exports.POOLS_DATA_ARBITRUM = exports.POOLS_DATA_AVALANCHE = exports.POOLS_DATA_FANTOM = exports.POOLS_DATA_POLYGON = exports.POOLS_DATA_ETHEREUM = void 0;
4
4
  var ethereum_1 = require("./ethereum");
5
5
  Object.defineProperty(exports, "POOLS_DATA_ETHEREUM", { enumerable: true, get: function () { return ethereum_1.POOLS_DATA_ETHEREUM; } });
6
6
  var polygon_1 = require("./polygon");
@@ -9,3 +9,7 @@ var fantom_1 = require("./fantom");
9
9
  Object.defineProperty(exports, "POOLS_DATA_FANTOM", { enumerable: true, get: function () { return fantom_1.POOLS_DATA_FANTOM; } });
10
10
  var avalanche_1 = require("./avalanche");
11
11
  Object.defineProperty(exports, "POOLS_DATA_AVALANCHE", { enumerable: true, get: function () { return avalanche_1.POOLS_DATA_AVALANCHE; } });
12
+ var arbitrum_1 = require("./arbitrum");
13
+ Object.defineProperty(exports, "POOLS_DATA_ARBITRUM", { enumerable: true, get: function () { return arbitrum_1.POOLS_DATA_ARBITRUM; } });
14
+ var optimism_1 = require("./optimism");
15
+ Object.defineProperty(exports, "POOLS_DATA_OPTIMISM", { enumerable: true, get: function () { return optimism_1.POOLS_DATA_OPTIMISM; } });
@@ -0,0 +1,4 @@
1
+ import { IPoolData } from "../../interfaces";
2
+ export declare const POOLS_DATA_OPTIMISM: {
3
+ [index: string]: IPoolData;
4
+ };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.POOLS_DATA_OPTIMISM = void 0;
7
+ var swap_json_1 = __importDefault(require("../abis/3pool-optimism/swap.json"));
8
+ var gauge_rewards_only_json_1 = __importDefault(require("../abis/gauge_rewards_only.json"));
9
+ var utils_1 = require("../utils");
10
+ exports.POOLS_DATA_OPTIMISM = (0, utils_1.lowerCasePoolDataAddresses)({
11
+ '3pool': {
12
+ name: "3pool",
13
+ full_name: "3pool",
14
+ symbol: "3pool",
15
+ reference_asset: 'USD',
16
+ is_plain: true,
17
+ swap_address: '0x1337BedC9D22ecbe766dF105c9623922A27963EC',
18
+ token_address: '0x1337BedC9D22ecbe766dF105c9623922A27963EC',
19
+ gauge_address: '0x7f90122BF0700F9E7e1F688fe926940E8839F353',
20
+ underlying_coins: ['DAI', 'USDC', 'USDT'],
21
+ wrapped_coins: ['DAI', 'USDC', 'USDT'],
22
+ underlying_coin_addresses: [
23
+ '0xda10009cbd5d07dd0cecc66161fc93d7c9000da1',
24
+ '0x7f5c764cbc14f9669b88837ca1490cca17c31607',
25
+ '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58',
26
+ ],
27
+ wrapped_coin_addresses: [
28
+ '0xda10009cbd5d07dd0cecc66161fc93d7c9000da1',
29
+ '0x7f5c764cbc14f9669b88837ca1490cca17c31607',
30
+ '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58',
31
+ ],
32
+ underlying_decimals: [18, 6, 6],
33
+ wrapped_decimals: [18, 6, 6],
34
+ swap_abi: swap_json_1.default,
35
+ gauge_abi: gauge_rewards_only_json_1.default,
36
+ },
37
+ });
@@ -138,4 +138,34 @@ exports.POOLS_DATA_POLYGON = (0, utils_1.lowerCasePoolDataAddresses)({
138
138
  gauge_abi: gauge_child_json_1.default,
139
139
  deposit_abi: deposit_json_1.default,
140
140
  },
141
+ eursusd: {
142
+ name: "eursusd",
143
+ full_name: "eursusd",
144
+ symbol: "eursusd",
145
+ reference_asset: 'CRYPTO',
146
+ swap_address: '0x9b3d675FDbe6a0935E8B7d1941bc6f78253549B7',
147
+ token_address: '0x7BD9757FbAc089d60DaFF1Fa6bfE3BC99b0F5735',
148
+ gauge_address: '0x18006c6A7955Bf6Db72DE34089B975f733601660',
149
+ deposit_address: '0x4DF7eF55E99a56851187822d96B4E17D98A47DeD',
150
+ is_meta: true,
151
+ is_crypto: true,
152
+ base_pool: 'aave',
153
+ underlying_coins: ['EURS', 'DAI', 'USDC', 'USDT'],
154
+ wrapped_coins: ['EURS', 'am3CRV'],
155
+ underlying_coin_addresses: [
156
+ '0xe111178a87a3bff0c8d18decba5798827539ae99',
157
+ '0x8f3cf7ad23cd3cadbd9735aff958023239c6a063',
158
+ '0x2791bca1f2de4661ed88a30c99a7a9449aa84174',
159
+ '0xc2132d05d31c914a87c6611c10748aeb04b58e8f', // USDT
160
+ ],
161
+ wrapped_coin_addresses: [
162
+ '0xe111178a87a3bff0c8d18decba5798827539ae99',
163
+ '0xE7a24EF0C5e95Ffb0f6684b813A78F2a3AD7D171', // am3CRV
164
+ ],
165
+ underlying_decimals: [2, 18, 6, 6],
166
+ wrapped_decimals: [2, 18],
167
+ swap_abi: swap_json_4.default,
168
+ gauge_abi: gauge_child_json_1.default,
169
+ deposit_abi: deposit_json_1.default,
170
+ },
141
171
  });
package/lib/curve.js CHANGED
@@ -81,9 +81,11 @@ var factory_json_1 = __importDefault(require("./constants/abis/factory.json"));
81
81
  var factory_crypto_json_1 = __importDefault(require("./constants/abis/factory-crypto.json"));
82
82
  var pools_1 = require("./constants/pools");
83
83
  var ethereum_1 = require("./constants/coins/ethereum");
84
+ var optimism_1 = require("./constants/coins/optimism");
84
85
  var polygon_1 = require("./constants/coins/polygon");
85
86
  var fantom_1 = require("./constants/coins/fantom");
86
87
  var avalanche_1 = require("./constants/coins/avalanche");
88
+ var arbitrum_1 = require("./constants/coins/arbitrum");
87
89
  var aliases_1 = require("./constants/aliases");
88
90
  var utils_1 = require("./constants/utils");
89
91
  exports.NETWORK_CONSTANTS = {
@@ -97,6 +99,16 @@ exports.NETWORK_CONSTANTS = {
97
99
  ycTokens: ethereum_1.ycTokensEthereum,
98
100
  aTokens: ethereum_1.aTokensEthereum,
99
101
  },
102
+ 10: {
103
+ NAME: 'optimism',
104
+ ALIASES: aliases_1.ALIASES_OPTIMISM,
105
+ POOLS_DATA: pools_1.POOLS_DATA_OPTIMISM,
106
+ COINS: optimism_1.COINS_OPTIMISM,
107
+ cTokens: optimism_1.cTokensOptimism,
108
+ yTokens: optimism_1.yTokensOptimism,
109
+ ycTokens: optimism_1.ycTokensOptimism,
110
+ aTokens: optimism_1.aTokensOptimism,
111
+ },
100
112
  137: {
101
113
  NAME: 'polygon',
102
114
  ALIASES: aliases_1.ALIASES_POLYGON,
@@ -127,6 +139,16 @@ exports.NETWORK_CONSTANTS = {
127
139
  ycTokens: avalanche_1.ycTokensAvalanche,
128
140
  aTokens: avalanche_1.aTokensAvalanche,
129
141
  },
142
+ 42161: {
143
+ NAME: 'arbitrum',
144
+ ALIASES: aliases_1.ALIASES_ARBITRUM,
145
+ POOLS_DATA: pools_1.POOLS_DATA_ARBITRUM,
146
+ COINS: arbitrum_1.COINS_ARBITRUM,
147
+ cTokens: arbitrum_1.cTokensArbitrum,
148
+ yTokens: arbitrum_1.yTokensArbitrum,
149
+ ycTokens: arbitrum_1.ycTokensArbitrum,
150
+ aTokens: arbitrum_1.aTokensArbitrum,
151
+ },
130
152
  };
131
153
  var Curve = /** @class */ (function () {
132
154
  function Curve() {
@@ -25,6 +25,13 @@ function setFactoryZapContracts() {
25
25
  multicallContract: new ethcall_1.Contract(metaSBtcZapAddress, deposit_json_1.default),
26
26
  };
27
27
  }
28
+ else if (this.chainId === 10) {
29
+ var metaUsdZapAddress = "0x167e42a1c7ab4be03764a2222aac57f5f6754411".toLowerCase();
30
+ this.contracts[metaUsdZapAddress] = {
31
+ contract: new ethers_1.Contract(metaUsdZapAddress, deposit_json_1.default, this.signer || this.provider),
32
+ multicallContract: new ethcall_1.Contract(metaUsdZapAddress, deposit_json_1.default),
33
+ };
34
+ }
28
35
  else if (this.chainId === 137) {
29
36
  var metaUsdZapAddress = "0x5ab5C56B9db92Ba45a0B46a207286cD83C15C939".toLowerCase();
30
37
  this.contracts[metaUsdZapAddress] = {
@@ -66,5 +73,17 @@ function setFactoryZapContracts() {
66
73
  multicallContract: new ethcall_1.Contract(metaBtcZapAddress, DepositZapMetaBtcPolygon_json_1.default),
67
74
  };
68
75
  }
76
+ else if (this.chainId === 42161) {
77
+ var metaUsdZapAddress = "0x7544Fe3d184b6B55D6B36c3FCA1157eE0Ba30287".toLowerCase();
78
+ this.contracts[metaUsdZapAddress] = {
79
+ contract: new ethers_1.Contract(metaUsdZapAddress, DepositZapFantom_json_1.default, this.signer || this.provider),
80
+ multicallContract: new ethcall_1.Contract(metaUsdZapAddress, DepositZapFantom_json_1.default),
81
+ };
82
+ var metaBtcZapAddress = "0x803A2B40c5a9BB2B86DD630B274Fa2A9202874C2".toLowerCase();
83
+ this.contracts[metaBtcZapAddress] = {
84
+ contract: new ethers_1.Contract(metaBtcZapAddress, DepositZapFantom_json_1.default, this.signer || this.provider),
85
+ multicallContract: new ethcall_1.Contract(metaBtcZapAddress, DepositZapFantom_json_1.default),
86
+ };
87
+ }
69
88
  }
70
89
  exports.setFactoryZapContracts = setFactoryZapContracts;
@@ -3,14 +3,20 @@ export declare const implementationABIDictEthereum: IDict<any>;
3
3
  export declare const implementationABIDictPolygon: IDict<any>;
4
4
  export declare const implementationABIDictFantom: IDict<any>;
5
5
  export declare const implementationABIDictAvalanche: IDict<any>;
6
+ export declare const implementationABIDictArbitrum: IDict<any>;
7
+ export declare const implementationABIDictOptimism: IDict<any>;
6
8
  export declare const implementationBasePoolIdDictEthereum: IDict<string>;
7
9
  export declare const implementationBasePoolIdDictPolygon: IDict<string>;
8
10
  export declare const implementationBasePoolIdDictFantom: IDict<string>;
9
11
  export declare const implementationBasePoolIdDictAvalanche: IDict<string>;
12
+ export declare const implementationBasePoolIdDictArbitrum: IDict<string>;
13
+ export declare const implementationBasePoolIdDictOptimism: IDict<string>;
10
14
  export declare const basePoolIdZapDictEthereum: IDict<string>;
11
15
  export declare const basePoolIdZapDictPolygon: IDict<string>;
12
16
  export declare const basePoolIdZapDictFantom: IDict<string>;
13
17
  export declare const basePoolIdZapDictAvalanche: IDict<string>;
18
+ export declare const basePoolIdZapDictArbitrum: IDict<string>;
19
+ export declare const basePoolIdZapDictOptimism: IDict<string>;
14
20
  export declare const NATIVE_TOKEN_ADDRESS = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
15
21
  export declare const NATIVE_TOKENS: {
16
22
  [index: number]: {
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FACTORY_CONSTANTS = exports.NATIVE_TOKENS = exports.NATIVE_TOKEN_ADDRESS = exports.basePoolIdZapDictAvalanche = exports.basePoolIdZapDictFantom = exports.basePoolIdZapDictPolygon = exports.basePoolIdZapDictEthereum = exports.implementationBasePoolIdDictAvalanche = exports.implementationBasePoolIdDictFantom = exports.implementationBasePoolIdDictPolygon = exports.implementationBasePoolIdDictEthereum = exports.implementationABIDictAvalanche = exports.implementationABIDictFantom = exports.implementationABIDictPolygon = exports.implementationABIDictEthereum = void 0;
6
+ exports.FACTORY_CONSTANTS = exports.NATIVE_TOKENS = exports.NATIVE_TOKEN_ADDRESS = exports.basePoolIdZapDictOptimism = exports.basePoolIdZapDictArbitrum = exports.basePoolIdZapDictAvalanche = exports.basePoolIdZapDictFantom = exports.basePoolIdZapDictPolygon = exports.basePoolIdZapDictEthereum = exports.implementationBasePoolIdDictOptimism = exports.implementationBasePoolIdDictArbitrum = exports.implementationBasePoolIdDictAvalanche = exports.implementationBasePoolIdDictFantom = exports.implementationBasePoolIdDictPolygon = exports.implementationBasePoolIdDictEthereum = exports.implementationABIDictOptimism = exports.implementationABIDictArbitrum = exports.implementationABIDictAvalanche = exports.implementationABIDictFantom = exports.implementationABIDictPolygon = exports.implementationABIDictEthereum = void 0;
7
7
  var swap_json_1 = __importDefault(require("../constants/abis/factoryPools/swap.json"));
8
8
  var MetaUSD_json_1 = __importDefault(require("../constants/abis/factory-v2/MetaUSD.json"));
9
9
  var MetaUSDBalances_json_1 = __importDefault(require("../constants/abis/factory-v2/MetaUSDBalances.json"));
@@ -105,6 +105,40 @@ exports.implementationABIDictAvalanche = {
105
105
  "0x0eb0F1FaF5F509Ac53fA224477509EAD167cf410": Plain4ETH_json_1.default,
106
106
  "0xCE94D3E5b0D80565D7B713A687b39a3Dc81780BA": Plain4Optimized_json_1.default,
107
107
  };
108
+ exports.implementationABIDictArbitrum = {
109
+ "0x09672362833d8f703D5395ef3252D4Bfa51c15ca": MetaUSD_json_1.default,
110
+ "0xBE175115BF33E12348ff77CcfEE4726866A0Fbd5": MetaUSDBalances_json_1.default,
111
+ "0x094d12e5b541784701FD8d65F11fc0598FBC6332": MetaBTCRen_json_1.default,
112
+ "0xF1f85a74AD6c64315F85af52d3d46bF715236ADc": MetaBTCBalancesRen_json_1.default,
113
+ "0x54e8A25d0Ac0E4945b697C80b8372445FEA17A62": Plain2Basic_json_1.default,
114
+ "0xD68970e266cE1A015953897C7055a5E0bC657Af8": Plain2Balances_json_1.default,
115
+ "0x7DA64233Fefb352f8F501B357c018158ED8aA455": Plain2ETH_json_1.default,
116
+ "0x0100fBf414071977B19fC38e6fc7c32FE444F5C9": Plain2Optimized_json_1.default,
117
+ "0xe381C25de995d62b453aF8B931aAc84fcCaa7A62": Plain3Basic_json_1.default,
118
+ "0xc379bA7b8e1c6C48D64e1cf9dD602C97c9fD0F40": Plain3Balances_json_1.default,
119
+ "0xAAe75FAebCae43b9d541Fd875622BE48D9B4f5D0": Plain3ETH_json_1.default,
120
+ "0x8866414733F22295b7563f9C5299715D2D76CAf4": Plain3Optimized_json_1.default,
121
+ "0x8d53E5De033078367Ad91527c53abfd1Eb6bfa86": Plain4Basic_json_1.default,
122
+ "0x2ac56cEBc2D27c9bB51a11773355E44371Eb88D3": Plain4Balances_json_1.default,
123
+ "0x89287c32c2CAC1C76227F6d300B2DBbab6b75C08": Plain4ETH_json_1.default,
124
+ "0x06e3C4da96fd076b97b7ca3Ae23527314b6140dF": Plain4Optimized_json_1.default,
125
+ };
126
+ exports.implementationABIDictOptimism = {
127
+ "0x78CF256256C8089d68Cde634Cf7cDEFb39286470": MetaUSD_json_1.default,
128
+ "0xADf698e4d8Df08b3E2c79682891636eF00F6e205": MetaUSDBalances_json_1.default,
129
+ "0xC2b1DF84112619D190193E48148000e3990Bf627": Plain2Basic_json_1.default,
130
+ "0x16a7DA911A4DD1d83F3fF066fE28F3C792C50d90": Plain2Balances_json_1.default,
131
+ "0x4f3E8F405CF5aFC05D68142F3783bDfE13811522": Plain2ETH_json_1.default,
132
+ "0x0f9cb53Ebe405d49A0bbdBD291A65Ff571bC83e1": Plain2Optimized_json_1.default,
133
+ "0x78D0fC2B9D5AE65512DB242e424a9c683F18c243": Plain3Basic_json_1.default,
134
+ "0x35796DAc54f144DFBAD1441Ec7C32313A7c29F39": Plain3Balances_json_1.default,
135
+ "0x6600e98b71dabfD4A8Cac03b302B0189Adb86Afb": Plain3ETH_json_1.default,
136
+ "0x6D65b498cb23deAba52db31c93Da9BFFb340FB8F": Plain3Optimized_json_1.default,
137
+ "0x445FE580eF8d70FF569aB36e80c647af338db351": Plain4Basic_json_1.default,
138
+ "0xF6bDc2619FFDA72c537Cd9605e0A274Dc48cB1C9": Plain4Balances_json_1.default,
139
+ "0x1AEf73d49Dedc4b1778d0706583995958Dc862e6": Plain4ETH_json_1.default,
140
+ "0x8474DdbE98F5aA3179B3B3F5942D724aFcdec9f6": Plain4Optimized_json_1.default,
141
+ };
108
142
  exports.implementationBasePoolIdDictEthereum = {
109
143
  "0x5F890841f657d90E081bAbdB532A05996Af79Fe6": "3pool",
110
144
  "0x213be373FDff327658139C7df330817DAD2d5bBE": "3pool",
@@ -136,6 +170,16 @@ exports.implementationBasePoolIdDictAvalanche = {
136
170
  "0xa27f39E9C21b3376F43266E13Ad5A5d6E9BdB320": "ren",
137
171
  "0x505C34ED8dBE96d2D5C7D83158aA844887770970": "ren",
138
172
  };
173
+ exports.implementationBasePoolIdDictArbitrum = {
174
+ "0x09672362833d8f703D5395ef3252D4Bfa51c15ca": "2pool",
175
+ "0xBE175115BF33E12348ff77CcfEE4726866A0Fbd5": "2pool",
176
+ "0x094d12e5b541784701FD8d65F11fc0598FBC6332": "ren",
177
+ "0xF1f85a74AD6c64315F85af52d3d46bF715236ADc": "ren",
178
+ };
179
+ exports.implementationBasePoolIdDictOptimism = {
180
+ "0x78CF256256C8089d68Cde634Cf7cDEFb39286470": "3pool",
181
+ "0xADf698e4d8Df08b3E2c79682891636eF00F6e205": "3pool",
182
+ };
139
183
  exports.basePoolIdZapDictEthereum = {
140
184
  '3pool': "0xA79828DF1850E8a3A3064576f380D90aECDD3359".toLowerCase(),
141
185
  fraxusdc: "0x08780fb7E580e492c1935bEe4fA5920b94AA95Da".toLowerCase(),
@@ -155,22 +199,39 @@ exports.basePoolIdZapDictAvalanche = {
155
199
  aave: "0x001E3BA199B4FF4B5B6e97aCD96daFC0E2e4156e".toLowerCase(),
156
200
  ren: "0xEeB3DDBcc4174e0b3fd1C13aD462b95D11Ef42C3".toLowerCase(),
157
201
  };
202
+ exports.basePoolIdZapDictArbitrum = {
203
+ "2pool": "0x7544Fe3d184b6B55D6B36c3FCA1157eE0Ba30287".toLowerCase(),
204
+ ren: "0x803A2B40c5a9BB2B86DD630B274Fa2A9202874C2".toLowerCase(),
205
+ };
206
+ exports.basePoolIdZapDictOptimism = {
207
+ "3pool": "0x167e42a1c7ab4be03764a2222aac57f5f6754411".toLowerCase(),
208
+ };
158
209
  exports.NATIVE_TOKEN_ADDRESS = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
159
210
  exports.NATIVE_TOKENS = {
160
211
  1: {
161
212
  symbol: 'ETH',
162
213
  wrappedSymbol: 'WETH',
163
- wrappedAddress: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
214
+ wrappedAddress: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2'.toLowerCase(),
215
+ },
216
+ 10: {
217
+ symbol: 'ETH',
218
+ wrappedSymbol: 'WETH',
219
+ wrappedAddress: '0x4200000000000000000000000000000000000006'.toLowerCase(),
164
220
  },
165
221
  137: {
166
222
  symbol: 'MATIC',
167
223
  wrappedSymbol: 'WMATIC',
168
- wrappedAddress: '0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270',
224
+ wrappedAddress: '0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270'.toLowerCase(),
169
225
  },
170
226
  250: {
171
227
  symbol: 'FTM',
172
228
  wrappedSymbol: 'WFTM',
173
- wrappedAddress: '0x21be370D5312f44cB42ce377BC9b8a0cEF1A4C83',
229
+ wrappedAddress: '0x21be370D5312f44cB42ce377BC9b8a0cEF1A4C83'.toLowerCase(),
230
+ },
231
+ 42161: {
232
+ symbol: 'ETH',
233
+ wrappedSymbol: 'WETH',
234
+ wrappedAddress: '0x82af49447d8a07e3bd95bd0d56f35241523fbab1'.toLowerCase(),
174
235
  },
175
236
  };
176
237
  exports.FACTORY_CONSTANTS = {
@@ -179,6 +240,11 @@ exports.FACTORY_CONSTANTS = {
179
240
  implementationBasePoolIdDict: exports.implementationBasePoolIdDictEthereum,
180
241
  basePoolIdZapDict: exports.basePoolIdZapDictEthereum,
181
242
  },
243
+ 10: {
244
+ implementationABIDict: exports.implementationABIDictOptimism,
245
+ implementationBasePoolIdDict: exports.implementationBasePoolIdDictOptimism,
246
+ basePoolIdZapDict: exports.basePoolIdZapDictOptimism,
247
+ },
182
248
  137: {
183
249
  implementationABIDict: exports.implementationABIDictPolygon,
184
250
  implementationBasePoolIdDict: exports.implementationBasePoolIdDictPolygon,
@@ -194,4 +260,9 @@ exports.FACTORY_CONSTANTS = {
194
260
  implementationBasePoolIdDict: exports.implementationBasePoolIdDictAvalanche,
195
261
  basePoolIdZapDict: exports.basePoolIdZapDictAvalanche,
196
262
  },
263
+ 42161: {
264
+ implementationABIDict: exports.implementationABIDictArbitrum,
265
+ implementationBasePoolIdDict: exports.implementationBasePoolIdDictArbitrum,
266
+ basePoolIdZapDict: exports.basePoolIdZapDictArbitrum,
267
+ },
197
268
  };
@@ -223,12 +223,16 @@ function getExistingCoinAddressNameDict() {
223
223
  }
224
224
  if (this.chainId === 1)
225
225
  dict[constants_1.NATIVE_TOKEN_ADDRESS] = "ETH";
226
+ if (this.chainId === 10)
227
+ dict[constants_1.NATIVE_TOKEN_ADDRESS] = "ETH";
226
228
  if (this.chainId === 137)
227
229
  dict[constants_1.NATIVE_TOKEN_ADDRESS] = "MATIC";
228
230
  if (this.chainId === 250)
229
231
  dict[constants_1.NATIVE_TOKEN_ADDRESS] = "FTM";
230
232
  if (this.chainId === 43114)
231
233
  dict[constants_1.NATIVE_TOKEN_ADDRESS] = "AVAX";
234
+ if (this.chainId === 42161)
235
+ dict[constants_1.NATIVE_TOKEN_ADDRESS] = "ETH";
232
236
  return dict;
233
237
  }
234
238
  function getCoinAddressNameDict(coinAddresses, existingCoinAddrNameDict) {
@@ -58,6 +58,7 @@ var common_1 = require("./common");
58
58
  var constants_1 = require("./constants");
59
59
  var BLACK_LIST = {
60
60
  1: [],
61
+ 10: [],
61
62
  137: [
62
63
  "0x666dc3b4babfd063faf965bd020024af0dc51b64",
63
64
  "0xe4199bc5c5c1f63dba47b56b6db7144c51cf0bf8",
@@ -65,6 +66,7 @@ var BLACK_LIST = {
65
66
  ],
66
67
  250: [],
67
68
  43114: [],
69
+ 42161: [],
68
70
  };
69
71
  var deepFlatten = function (arr) { return [].concat.apply([], arr.map(function (v) { return (Array.isArray(v) ? deepFlatten(v) : v); })); };
70
72
  function getFactoryIdsAndSwapAddresses() {
@@ -254,12 +256,16 @@ function getExistingCoinAddressNameDict() {
254
256
  }
255
257
  if (this.chainId === 1)
256
258
  dict["0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"] = "ETH";
259
+ if (this.chainId === 10)
260
+ dict["0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"] = "ETH";
257
261
  if (this.chainId === 137)
258
262
  dict["0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"] = "MATIC";
259
263
  if (this.chainId === 250)
260
264
  dict["0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"] = "FTM";
261
265
  if (this.chainId === 43114)
262
266
  dict["0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"] = "AVAX";
267
+ if (this.chainId === 42161)
268
+ dict["0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"] = "ETH";
263
269
  return dict;
264
270
  }
265
271
  function getCoinAddressNameDict(coinAddresses, existingCoinAddrNameDict) {
@@ -47,7 +47,7 @@ export declare class PoolTemplate {
47
47
  withdrawImbalanceApprove: (amounts: (number | string)[]) => Promise<number>;
48
48
  withdrawImbalance: (amounts: (number | string)[]) => Promise<number>;
49
49
  withdrawImbalanceWrapped: (amounts: (number | string)[]) => Promise<number>;
50
- withdrawOneCoinApprove: (lpTokenAmount: number | string, coin: string | number) => Promise<number>;
50
+ withdrawOneCoinApprove: (lpTokenAmount: number | string) => Promise<number>;
51
51
  withdrawOneCoin: (lpTokenAmount: number | string, coin: string | number) => Promise<number>;
52
52
  withdrawOneCoinWrapped: (lpTokenAmount: number | string, coin: string | number) => Promise<number>;
53
53
  swapApprove: (inputCoin: string | number, amount: number | string) => Promise<number>;