@dhedge/v2-sdk 2.0.3 → 2.1.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.
@@ -15,11 +15,14 @@ export declare class Dhedge {
15
15
  * @param {string} poolName Pool name
16
16
  * @param {string} symbol Token symbol
17
17
  * @param {tuple[]} supportedAssets Enabled assets to trade
18
- * @param {number|BigNumber} managerFeeNumerator Manger fee in percent
18
+ * @param {number|BigNumber} performanceFeeNumerator Performance fee in percent
19
+ * @param {number|BigNumber} managerFeeNumerator Manager fee in percent
20
+ * @param {number|BigNumber} entryFeeNumerator Entry fee in percent
21
+ * @param {number|BigNumber} exitFeeNumerator Exit fee in percent
19
22
  * @param {any} options Transaction options
20
23
  * @returns {Pool} Created Pool
21
24
  */
22
- createPool(managerName: string, poolName: string, symbol: string, supportedAssets: SupportedAsset[], managerFeeNumerator?: number, options?: any): Promise<Pool>;
25
+ createPool(managerName: string, poolName: string, symbol: string, supportedAssets: SupportedAsset[], performanceFeeNumerator?: number, managerFeeNumerator?: number, entryFeeNumerator?: number, exitFeeNumerator?: number, options?: any): Promise<Pool>;
23
26
  /**
24
27
  * Load a pool based on the provided address
25
28
  * @param {string} address Pool address
@@ -0,0 +1,7 @@
1
+ import { ethers } from "../..";
2
+ import { Pool } from "../../entities";
3
+ export declare const kyberBaseUrl = "https://aggregator-api.kyberswap.com";
4
+ export declare function getKyberSwapTxData(pool: Pool, tokenIn: string, tokenOut: string, amountIn: ethers.BigNumber | string, slippage: number): Promise<{
5
+ swapTxData: string;
6
+ minAmountOut: string;
7
+ }>;
@@ -19,11 +19,13 @@ export declare const TEST_POOL: {
19
19
  arbitrum: string;
20
20
  base: string;
21
21
  ethereum: string;
22
+ plasma: string;
22
23
  };
23
24
  export declare const CONTRACT_ADDRESS: {
24
25
  polygon: {
25
26
  USDC: string;
26
27
  USDT: string;
28
+ USDE: string;
27
29
  SUSD: string;
28
30
  SWETH: string;
29
31
  WETH: string;
@@ -44,6 +46,7 @@ export declare const CONTRACT_ADDRESS: {
44
46
  optimism: {
45
47
  USDC: string;
46
48
  USDT: string;
49
+ USDE: string;
47
50
  SWETH: string;
48
51
  SUSD: string;
49
52
  WETH: string;
@@ -66,6 +69,7 @@ export declare const CONTRACT_ADDRESS: {
66
69
  USDC: string;
67
70
  USDT: string;
68
71
  SUSD: string;
72
+ USDE: string;
69
73
  SWETH: string;
70
74
  WETH: string;
71
75
  WBTC: string;
@@ -89,6 +93,7 @@ export declare const CONTRACT_ADDRESS: {
89
93
  USDC: string;
90
94
  USDT: string;
91
95
  SUSD: string;
96
+ USDE: string;
92
97
  WETH: string;
93
98
  WBTC: string;
94
99
  SWETH: string;
@@ -109,6 +114,7 @@ export declare const CONTRACT_ADDRESS: {
109
114
  USDC: string;
110
115
  USDT: string;
111
116
  SUSD: string;
117
+ USDE: string;
112
118
  WETH: string;
113
119
  WBTC: string;
114
120
  SWETH: string;
@@ -125,6 +131,12 @@ export declare const CONTRACT_ADDRESS: {
125
131
  TOROS: string;
126
132
  UNIT: string;
127
133
  };
134
+ plasma: {
135
+ USDC: string;
136
+ WETH: string;
137
+ USDT: string;
138
+ USDE: string;
139
+ };
128
140
  };
129
141
  export declare const MAX_AMOUNT: ethers.BigNumber;
130
142
  export declare const USDC_BALANCEOF_SLOT: {
@@ -133,6 +145,7 @@ export declare const USDC_BALANCEOF_SLOT: {
133
145
  polygon: number;
134
146
  base: number;
135
147
  ethereum: number;
148
+ plasma: number;
136
149
  };
137
150
  export declare const WETH_BALANCEOF_SLOT: {
138
151
  optimism: number;
@@ -140,4 +153,5 @@ export declare const WETH_BALANCEOF_SLOT: {
140
153
  polygon: number;
141
154
  base: number;
142
155
  ethereum: number;
156
+ plasma: number;
143
157
  };
@@ -6,6 +6,7 @@ export declare const networkPortMap: {
6
6
  arbitrum: number;
7
7
  base: number;
8
8
  ethereum: number;
9
+ plasma: number;
9
10
  };
10
11
  export declare const getWalletData: (network: Network, onFork?: boolean) => {
11
12
  wallet: ethers.Wallet;
package/dist/types.d.ts CHANGED
@@ -5,7 +5,8 @@ export declare enum Network {
5
5
  OPTIMISM = "optimism",
6
6
  ARBITRUM = "arbitrum",
7
7
  BASE = "base",
8
- ETHEREUM = "ethereum"
8
+ ETHEREUM = "ethereum",
9
+ PLASMA = "plasma"
9
10
  }
10
11
  export declare enum Dapp {
11
12
  SUSHISWAP = "sushiswap",
@@ -29,7 +30,8 @@ export declare enum Dapp {
29
30
  PANCAKECL = "pancakeCL",
30
31
  COMPOUNDV3 = "compoundV3",
31
32
  ODOS = "odos",
32
- PENDLE = "pendle"
33
+ PENDLE = "pendle",
34
+ KYBERSWAP = "kyberswap"
33
35
  }
34
36
  export declare enum Transaction {
35
37
  SWAP = "swapExactTokensForTokens",
@@ -1295,11 +1295,26 @@ var abi = [
1295
1295
  name: "_fundSymbol",
1296
1296
  type: "string"
1297
1297
  },
1298
+ {
1299
+ internalType: "uint256",
1300
+ name: "_performanceFeeNumerator",
1301
+ type: "uint256"
1302
+ },
1298
1303
  {
1299
1304
  internalType: "uint256",
1300
1305
  name: "_managerFeeNumerator",
1301
1306
  type: "uint256"
1302
1307
  },
1308
+ {
1309
+ internalType: "uint256",
1310
+ name: "_entryFeeNumerator",
1311
+ type: "uint256"
1312
+ },
1313
+ {
1314
+ internalType: "uint256",
1315
+ name: "_exitFeeNum",
1316
+ type: "uint256"
1317
+ },
1303
1318
  {
1304
1319
  components: [
1305
1320
  {
@@ -4269,6 +4284,7 @@ var ManagerLogic = {
4269
4284
  Network["ARBITRUM"] = "arbitrum";
4270
4285
  Network["BASE"] = "base";
4271
4286
  Network["ETHEREUM"] = "ethereum";
4287
+ Network["PLASMA"] = "plasma";
4272
4288
  })(exports.Network || (exports.Network = {}));
4273
4289
 
4274
4290
  (function (Dapp) {
@@ -4294,6 +4310,7 @@ var ManagerLogic = {
4294
4310
  Dapp["COMPOUNDV3"] = "compoundV3";
4295
4311
  Dapp["ODOS"] = "odos";
4296
4312
  Dapp["PENDLE"] = "pendle";
4313
+ Dapp["KYBERSWAP"] = "kyberswap";
4297
4314
  })(exports.Dapp || (exports.Dapp = {}));
4298
4315
 
4299
4316
  (function (Transaction) {
@@ -4318,19 +4335,19 @@ var ManagerLogic = {
4318
4335
  Transaction["REMOVE_LIQUIDITY_UNSTAKE"] = "removeLiquidityAndUnstake";
4319
4336
  })(exports.Transaction || (exports.Transaction = {}));
4320
4337
 
4321
- var _factoryAddress, _Network$POLYGON, _Network$OPTIMISM, _Network$ARBITRUM, _Network$BASE, _Network$ETHEREUM, _routerAddress, _Network$POLYGON2, _dappFactoryAddress, _Network$POLYGON3, _Network$OPTIMISM2, _Network$ARBITRUM2, _Network$BASE2, _stakingAddress, _Network$POLYGON4, _Network$OPTIMISM3, _Network$ARBITRUM3, _Network$BASE3, _Network$ETHEREUM2, _aaveAddressProvider, _Network$POLYGON5, _Network$OPTIMISM4, _Network$ARBITRUM4, _Network$BASE4, _nonfungiblePositionM, _networkChainIdMap, _balancerSubgraph, _multiCallAddress, _lyraNetworkMap, _flatMoneyContractAdd;
4338
+ var _factoryAddress, _Network$POLYGON, _Network$OPTIMISM, _Network$ARBITRUM, _Network$BASE, _Network$ETHEREUM, _Network$PLASMA, _routerAddress, _Network$POLYGON2, _dappFactoryAddress, _Network$POLYGON3, _Network$OPTIMISM2, _Network$ARBITRUM2, _Network$BASE2, _stakingAddress, _Network$POLYGON4, _Network$OPTIMISM3, _Network$ARBITRUM3, _Network$BASE3, _Network$ETHEREUM2, _Network$PLASMA2, _aaveAddressProvider, _Network$POLYGON5, _Network$OPTIMISM4, _Network$ARBITRUM4, _Network$BASE4, _nonfungiblePositionM, _networkChainIdMap, _balancerSubgraph, _multiCallAddress, _lyraNetworkMap, _flatMoneyContractAdd;
4322
4339
 
4323
4340
  require("dotenv").config();
4324
4341
 
4325
- var factoryAddress = (_factoryAddress = {}, _factoryAddress[exports.Network.POLYGON] = process.env.STAGING_CONTRACTS ? "0xDd87eCdB10cFF7004276AAbAbd30e7a08F69bb53" : "0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0", _factoryAddress[exports.Network.OPTIMISM] = "0x5e61a079A178f0E5784107a4963baAe0c5a680c6", _factoryAddress[exports.Network.ARBITRUM] = "0xfffb5fb14606eb3a548c113026355020ddf27535", _factoryAddress[exports.Network.BASE] = "0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F", _factoryAddress[exports.Network.ETHEREUM] = "0x96D33bCF84DdE326014248E2896F79bbb9c13D6d", _factoryAddress);
4326
- var routerAddress = (_routerAddress = {}, _routerAddress[exports.Network.POLYGON] = (_Network$POLYGON = {}, _Network$POLYGON[exports.Dapp.SUSHISWAP] = "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506", _Network$POLYGON[exports.Dapp.AAVE] = "0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf", _Network$POLYGON[exports.Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$POLYGON[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$POLYGON[exports.Dapp.QUICKSWAP] = "0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff", _Network$POLYGON[exports.Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$POLYGON[exports.Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$POLYGON[exports.Dapp.ARRAKIS] = "0xc73fb100a995b33f9fa181d420f4c8d74506df66", _Network$POLYGON[exports.Dapp.TOROS] = "0x45b90480D6F643dE2f128db091A357C3c90399f2", _Network$POLYGON[exports.Dapp.ODOS] = "0x4e3288c9ca110bcc82bf38f09a7b425c095d92bf", _Network$POLYGON), _routerAddress[exports.Network.OPTIMISM] = (_Network$OPTIMISM = {}, _Network$OPTIMISM[exports.Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$OPTIMISM[exports.Dapp.SYNTHETIX] = "0x8700dAec35aF8Ff88c16BdF0418774CB3D7599B4", _Network$OPTIMISM[exports.Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$OPTIMISM[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$OPTIMISM[exports.Dapp.TOROS] = "0x2Ed1bd7f66e47113672f3870308b5E867C5bb743", _Network$OPTIMISM[exports.Dapp.VELODROME] = "0x9c12939390052919aF3155f41Bf4160Fd3666A6f", _Network$OPTIMISM[exports.Dapp.VELODROMEV2] = "0xa062ae8a9c5e11aaa026fc2670b0d65ccc8b2858", _Network$OPTIMISM[exports.Dapp.LYRA] = "0xCCE7819d65f348c64B7Beb205BA367b3fE33763B", _Network$OPTIMISM[exports.Dapp.ARRAKIS] = "0x9ce88a56d120300061593eF7AD074A1B710094d5", _Network$OPTIMISM[exports.Dapp.ODOS] = "0xca423977156bb05b13a2ba3b76bc5419e2fe9680", _Network$OPTIMISM[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$OPTIMISM), _routerAddress[exports.Network.ARBITRUM] = (_Network$ARBITRUM = {}, _Network$ARBITRUM[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$ARBITRUM[exports.Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$ARBITRUM[exports.Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$ARBITRUM[exports.Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$ARBITRUM[exports.Dapp.RAMSES] = "0xaaa87963efeb6f7e0a2711f397663105acb1805e", _Network$ARBITRUM[exports.Dapp.TOROS] = "0xA5679C4272A056Bb83f039961fae7D99C48529F5", _Network$ARBITRUM[exports.Dapp.ODOS] = "0xa669e7A0d4b3e4Fa48af2dE86BD4CD7126Be4e13", _Network$ARBITRUM[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$ARBITRUM), _routerAddress[exports.Network.BASE] = (_Network$BASE = {}, _Network$BASE[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$BASE[exports.Dapp.AERODROME] = "0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43", _Network$BASE[exports.Dapp.AAVEV3] = "0xA238Dd80C259a72e81d7e4664a9801593F98d1c5", _Network$BASE[exports.Dapp.TOROS] = "0xf067575Eb60c7587C11e867907AA7284833704d1", _Network$BASE[exports.Dapp.ODOS] = "0x19cEeAd7105607Cd444F5ad10dd51356436095a1", _Network$BASE[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$BASE), _routerAddress[exports.Network.ETHEREUM] = (_Network$ETHEREUM = {}, _Network$ETHEREUM[exports.Dapp.AAVEV3] = "0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2", _Network$ETHEREUM[exports.Dapp.ODOS] = "0xCf5540fFFCdC3d510B18bFcA6d2b9987b0772559", _Network$ETHEREUM[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$ETHEREUM[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$ETHEREUM), _routerAddress);
4327
- var dappFactoryAddress = (_dappFactoryAddress = {}, _dappFactoryAddress[exports.Network.POLYGON] = (_Network$POLYGON2 = {}, _Network$POLYGON2[exports.Dapp.SUSHISWAP] = "0xc35DADB65012eC5796536bD9864eD8773aBc74C4", _Network$POLYGON2[exports.Dapp.QUICKSWAP] = "0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32", _Network$POLYGON2), _dappFactoryAddress[exports.Network.OPTIMISM] = {}, _dappFactoryAddress[exports.Network.ARBITRUM] = {}, _dappFactoryAddress[exports.Network.BASE] = {}, _dappFactoryAddress[exports.Network.ETHEREUM] = {}, _dappFactoryAddress);
4328
- var stakingAddress = (_stakingAddress = {}, _stakingAddress[exports.Network.POLYGON] = (_Network$POLYGON3 = {}, _Network$POLYGON3[exports.Dapp.SUSHISWAP] = "0x0769fd68dFb93167989C6f7254cd0D766Fb2841F", _Network$POLYGON3[exports.Dapp.BALANCER] = "0x0F3e0c4218b7b0108a3643cFe9D3ec0d4F57c54e", _Network$POLYGON3[exports.Dapp.AAVE] = "0x357D51124f59836DeD84c8a1730D72B749d8BC23", _Network$POLYGON3[exports.Dapp.AAVEV3] = "0x929EC64c34a17401F460460D4B9390518E5B473e", _Network$POLYGON3), _stakingAddress[exports.Network.OPTIMISM] = (_Network$OPTIMISM2 = {}, _Network$OPTIMISM2[exports.Dapp.AAVEV3] = "0x929EC64c34a17401F460460D4B9390518E5B473e", _Network$OPTIMISM2[exports.Dapp.COMPOUNDV3] = "0x443ea0340cb75a160f31a440722dec7b5bc3c2e9", _Network$OPTIMISM2), _stakingAddress[exports.Network.ARBITRUM] = (_Network$ARBITRUM2 = {}, _Network$ARBITRUM2[exports.Dapp.COMPOUNDV3] = "0x88730d254a2f7e6ac8388c3198afd694ba9f7fae", _Network$ARBITRUM2[exports.Dapp.PANCAKECL] = "0x5e09ACf80C0296740eC5d6F643005a4ef8DaA694", _Network$ARBITRUM2), _stakingAddress[exports.Network.BASE] = (_Network$BASE2 = {}, _Network$BASE2[exports.Dapp.PANCAKECL] = "0xC6A2Db661D5a5690172d8eB0a7DEA2d3008665A3", _Network$BASE2), _stakingAddress[exports.Network.ETHEREUM] = {}, _stakingAddress);
4329
- var aaveAddressProvider = (_aaveAddressProvider = {}, _aaveAddressProvider[exports.Network.POLYGON] = (_Network$POLYGON4 = {}, _Network$POLYGON4[exports.Dapp.AAVE] = "0xd05e3E715d945B59290df0ae8eF85c1BdB684744", _Network$POLYGON4[exports.Dapp.AAVEV3] = "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb", _Network$POLYGON4), _aaveAddressProvider[exports.Network.OPTIMISM] = (_Network$OPTIMISM3 = {}, _Network$OPTIMISM3[exports.Dapp.AAVEV3] = "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb", _Network$OPTIMISM3), _aaveAddressProvider[exports.Network.ARBITRUM] = (_Network$ARBITRUM3 = {}, _Network$ARBITRUM3[exports.Dapp.AAVEV3] = "0xa97684ead0e402dc232d5a977953df7ecbab3cdb", _Network$ARBITRUM3), _aaveAddressProvider[exports.Network.BASE] = (_Network$BASE3 = {}, _Network$BASE3[exports.Dapp.AAVEV3] = "0xe20fCBdBfFC4Dd138cE8b2E6FBb6CB49777ad64D", _Network$BASE3), _aaveAddressProvider[exports.Network.ETHEREUM] = (_Network$ETHEREUM2 = {}, _Network$ETHEREUM2[exports.Dapp.AAVEV3] = "0x2f39d218133AFaB8F2B819B1066c7E434Ad94E9e", _Network$ETHEREUM2), _aaveAddressProvider);
4330
- var nonfungiblePositionManagerAddress = (_nonfungiblePositionM = {}, _nonfungiblePositionM[exports.Network.POLYGON] = (_Network$POLYGON5 = {}, _Network$POLYGON5[exports.Dapp.UNISWAPV3] = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", _Network$POLYGON5), _nonfungiblePositionM[exports.Network.OPTIMISM] = (_Network$OPTIMISM4 = {}, _Network$OPTIMISM4[exports.Dapp.UNISWAPV3] = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", _Network$OPTIMISM4[exports.Dapp.VELODROMECL] = "0x416b433906b1B72FA758e166e239c43d68dC6F29", _Network$OPTIMISM4), _nonfungiblePositionM[exports.Network.ARBITRUM] = (_Network$ARBITRUM4 = {}, _Network$ARBITRUM4[exports.Dapp.UNISWAPV3] = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", _Network$ARBITRUM4[exports.Dapp.RAMSESCL] = "0xAA277CB7914b7e5514946Da92cb9De332Ce610EF", _Network$ARBITRUM4[exports.Dapp.PANCAKECL] = "0x46a15b0b27311cedf172ab29e4f4766fbe7f4364", _Network$ARBITRUM4), _nonfungiblePositionM[exports.Network.BASE] = (_Network$BASE4 = {}, _Network$BASE4[exports.Dapp.UNISWAPV3] = "0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1", _Network$BASE4[exports.Dapp.AERODROMECL] = "0x827922686190790b37229fd06084350e74485b72", _Network$BASE4[exports.Dapp.PANCAKECL] = "0x46A15B0b27311cedF172AB29E4f4766fbE7F4364", _Network$BASE4), _nonfungiblePositionM[exports.Network.ETHEREUM] = {}, _nonfungiblePositionM);
4331
- var networkChainIdMap = (_networkChainIdMap = {}, _networkChainIdMap[exports.Network.POLYGON] = 137, _networkChainIdMap[exports.Network.OPTIMISM] = 10, _networkChainIdMap[exports.Network.ARBITRUM] = 42161, _networkChainIdMap[exports.Network.BASE] = 8453, _networkChainIdMap[exports.Network.ETHEREUM] = 1, _networkChainIdMap);
4332
- var balancerSubgraph = (_balancerSubgraph = {}, _balancerSubgraph[exports.Network.POLYGON] = "https://api.thegraph.com/subgraphs/name/balancer-labs/balancer-polygon-v2", _balancerSubgraph[exports.Network.OPTIMISM] = "", _balancerSubgraph[exports.Network.ARBITRUM] = "", _balancerSubgraph[exports.Network.BASE] = "", _balancerSubgraph[exports.Network.ETHEREUM] = "", _balancerSubgraph);
4333
- var multiCallAddress = (_multiCallAddress = {}, _multiCallAddress[exports.Network.POLYGON] = "0x275617327c958bD06b5D6b871E7f491D76113dd8", _multiCallAddress[exports.Network.OPTIMISM] = "", _multiCallAddress[exports.Network.ARBITRUM] = "", _multiCallAddress[exports.Network.BASE] = "", _multiCallAddress[exports.Network.ETHEREUM] = "", _multiCallAddress);
4342
+ var factoryAddress = (_factoryAddress = {}, _factoryAddress[exports.Network.POLYGON] = process.env.STAGING_CONTRACTS ? "0xDd87eCdB10cFF7004276AAbAbd30e7a08F69bb53" : "0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0", _factoryAddress[exports.Network.OPTIMISM] = "0x5e61a079A178f0E5784107a4963baAe0c5a680c6", _factoryAddress[exports.Network.ARBITRUM] = "0xfffb5fb14606eb3a548c113026355020ddf27535", _factoryAddress[exports.Network.BASE] = "0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F", _factoryAddress[exports.Network.ETHEREUM] = "0x96D33bCF84DdE326014248E2896F79bbb9c13D6d", _factoryAddress[exports.Network.PLASMA] = "0xAec4975Fc8ad911464D2948D771488b30F6eEE87", _factoryAddress);
4343
+ var routerAddress = (_routerAddress = {}, _routerAddress[exports.Network.POLYGON] = (_Network$POLYGON = {}, _Network$POLYGON[exports.Dapp.SUSHISWAP] = "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506", _Network$POLYGON[exports.Dapp.AAVE] = "0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf", _Network$POLYGON[exports.Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$POLYGON[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$POLYGON[exports.Dapp.QUICKSWAP] = "0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff", _Network$POLYGON[exports.Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$POLYGON[exports.Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$POLYGON[exports.Dapp.ARRAKIS] = "0xc73fb100a995b33f9fa181d420f4c8d74506df66", _Network$POLYGON[exports.Dapp.TOROS] = "0x45b90480D6F643dE2f128db091A357C3c90399f2", _Network$POLYGON[exports.Dapp.ODOS] = "0x4e3288c9ca110bcc82bf38f09a7b425c095d92bf", _Network$POLYGON[exports.Dapp.KYBERSWAP] = "0x6131B5fae19EA4f9D964eAc0408E4408b66337b5", _Network$POLYGON), _routerAddress[exports.Network.OPTIMISM] = (_Network$OPTIMISM = {}, _Network$OPTIMISM[exports.Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$OPTIMISM[exports.Dapp.SYNTHETIX] = "0x8700dAec35aF8Ff88c16BdF0418774CB3D7599B4", _Network$OPTIMISM[exports.Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$OPTIMISM[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$OPTIMISM[exports.Dapp.TOROS] = "0x2Ed1bd7f66e47113672f3870308b5E867C5bb743", _Network$OPTIMISM[exports.Dapp.VELODROME] = "0x9c12939390052919aF3155f41Bf4160Fd3666A6f", _Network$OPTIMISM[exports.Dapp.VELODROMEV2] = "0xa062ae8a9c5e11aaa026fc2670b0d65ccc8b2858", _Network$OPTIMISM[exports.Dapp.LYRA] = "0xCCE7819d65f348c64B7Beb205BA367b3fE33763B", _Network$OPTIMISM[exports.Dapp.ARRAKIS] = "0x9ce88a56d120300061593eF7AD074A1B710094d5", _Network$OPTIMISM[exports.Dapp.ODOS] = "0xca423977156bb05b13a2ba3b76bc5419e2fe9680", _Network$OPTIMISM[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$OPTIMISM[exports.Dapp.KYBERSWAP] = "0x6131B5fae19EA4f9D964eAc0408E4408b66337b5", _Network$OPTIMISM), _routerAddress[exports.Network.ARBITRUM] = (_Network$ARBITRUM = {}, _Network$ARBITRUM[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$ARBITRUM[exports.Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$ARBITRUM[exports.Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$ARBITRUM[exports.Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$ARBITRUM[exports.Dapp.RAMSES] = "0xaaa87963efeb6f7e0a2711f397663105acb1805e", _Network$ARBITRUM[exports.Dapp.TOROS] = "0xA5679C4272A056Bb83f039961fae7D99C48529F5", _Network$ARBITRUM[exports.Dapp.ODOS] = "0xa669e7A0d4b3e4Fa48af2dE86BD4CD7126Be4e13", _Network$ARBITRUM[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$ARBITRUM[exports.Dapp.KYBERSWAP] = "0x6131B5fae19EA4f9D964eAc0408E4408b66337b5", _Network$ARBITRUM), _routerAddress[exports.Network.BASE] = (_Network$BASE = {}, _Network$BASE[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$BASE[exports.Dapp.AERODROME] = "0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43", _Network$BASE[exports.Dapp.AAVEV3] = "0xA238Dd80C259a72e81d7e4664a9801593F98d1c5", _Network$BASE[exports.Dapp.TOROS] = "0xf067575Eb60c7587C11e867907AA7284833704d1", _Network$BASE[exports.Dapp.ODOS] = "0x19cEeAd7105607Cd444F5ad10dd51356436095a1", _Network$BASE[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$BASE[exports.Dapp.KYBERSWAP] = "0x6131B5fae19EA4f9D964eAc0408E4408b66337b5", _Network$BASE), _routerAddress[exports.Network.ETHEREUM] = (_Network$ETHEREUM = {}, _Network$ETHEREUM[exports.Dapp.AAVEV3] = "0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2", _Network$ETHEREUM[exports.Dapp.ODOS] = "0xCf5540fFFCdC3d510B18bFcA6d2b9987b0772559", _Network$ETHEREUM[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$ETHEREUM[exports.Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$ETHEREUM[exports.Dapp.KYBERSWAP] = "0x6131B5fae19EA4f9D964eAc0408E4408b66337b5", _Network$ETHEREUM), _routerAddress[exports.Network.PLASMA] = (_Network$PLASMA = {}, _Network$PLASMA[exports.Dapp.AAVEV3] = "0x925a2A7214Ed92428B5b1B090F80b25700095e12", _Network$PLASMA[exports.Dapp.PENDLE] = "0x888888888889758F76e7103c6CbF23ABbF58F946", _Network$PLASMA[exports.Dapp.KYBERSWAP] = "0x6131B5fae19EA4f9D964eAc0408E4408b66337b5", _Network$PLASMA), _routerAddress);
4344
+ var dappFactoryAddress = (_dappFactoryAddress = {}, _dappFactoryAddress[exports.Network.POLYGON] = (_Network$POLYGON2 = {}, _Network$POLYGON2[exports.Dapp.SUSHISWAP] = "0xc35DADB65012eC5796536bD9864eD8773aBc74C4", _Network$POLYGON2[exports.Dapp.QUICKSWAP] = "0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32", _Network$POLYGON2), _dappFactoryAddress[exports.Network.OPTIMISM] = {}, _dappFactoryAddress[exports.Network.ARBITRUM] = {}, _dappFactoryAddress[exports.Network.BASE] = {}, _dappFactoryAddress[exports.Network.ETHEREUM] = {}, _dappFactoryAddress[exports.Network.PLASMA] = {}, _dappFactoryAddress);
4345
+ var stakingAddress = (_stakingAddress = {}, _stakingAddress[exports.Network.POLYGON] = (_Network$POLYGON3 = {}, _Network$POLYGON3[exports.Dapp.SUSHISWAP] = "0x0769fd68dFb93167989C6f7254cd0D766Fb2841F", _Network$POLYGON3[exports.Dapp.BALANCER] = "0x0F3e0c4218b7b0108a3643cFe9D3ec0d4F57c54e", _Network$POLYGON3[exports.Dapp.AAVE] = "0x357D51124f59836DeD84c8a1730D72B749d8BC23", _Network$POLYGON3[exports.Dapp.AAVEV3] = "0x929EC64c34a17401F460460D4B9390518E5B473e", _Network$POLYGON3), _stakingAddress[exports.Network.OPTIMISM] = (_Network$OPTIMISM2 = {}, _Network$OPTIMISM2[exports.Dapp.AAVEV3] = "0x929EC64c34a17401F460460D4B9390518E5B473e", _Network$OPTIMISM2[exports.Dapp.COMPOUNDV3] = "0x443ea0340cb75a160f31a440722dec7b5bc3c2e9", _Network$OPTIMISM2), _stakingAddress[exports.Network.ARBITRUM] = (_Network$ARBITRUM2 = {}, _Network$ARBITRUM2[exports.Dapp.COMPOUNDV3] = "0x88730d254a2f7e6ac8388c3198afd694ba9f7fae", _Network$ARBITRUM2[exports.Dapp.PANCAKECL] = "0x5e09ACf80C0296740eC5d6F643005a4ef8DaA694", _Network$ARBITRUM2), _stakingAddress[exports.Network.BASE] = (_Network$BASE2 = {}, _Network$BASE2[exports.Dapp.PANCAKECL] = "0xC6A2Db661D5a5690172d8eB0a7DEA2d3008665A3", _Network$BASE2), _stakingAddress[exports.Network.ETHEREUM] = {}, _stakingAddress[exports.Network.PLASMA] = {}, _stakingAddress);
4346
+ var aaveAddressProvider = (_aaveAddressProvider = {}, _aaveAddressProvider[exports.Network.POLYGON] = (_Network$POLYGON4 = {}, _Network$POLYGON4[exports.Dapp.AAVE] = "0xd05e3E715d945B59290df0ae8eF85c1BdB684744", _Network$POLYGON4[exports.Dapp.AAVEV3] = "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb", _Network$POLYGON4), _aaveAddressProvider[exports.Network.OPTIMISM] = (_Network$OPTIMISM3 = {}, _Network$OPTIMISM3[exports.Dapp.AAVEV3] = "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb", _Network$OPTIMISM3), _aaveAddressProvider[exports.Network.ARBITRUM] = (_Network$ARBITRUM3 = {}, _Network$ARBITRUM3[exports.Dapp.AAVEV3] = "0xa97684ead0e402dc232d5a977953df7ecbab3cdb", _Network$ARBITRUM3), _aaveAddressProvider[exports.Network.BASE] = (_Network$BASE3 = {}, _Network$BASE3[exports.Dapp.AAVEV3] = "0xe20fCBdBfFC4Dd138cE8b2E6FBb6CB49777ad64D", _Network$BASE3), _aaveAddressProvider[exports.Network.ETHEREUM] = (_Network$ETHEREUM2 = {}, _Network$ETHEREUM2[exports.Dapp.AAVEV3] = "0x2f39d218133AFaB8F2B819B1066c7E434Ad94E9e", _Network$ETHEREUM2), _aaveAddressProvider[exports.Network.PLASMA] = (_Network$PLASMA2 = {}, _Network$PLASMA2[exports.Dapp.AAVEV3] = "0x061D8e131F26512348ee5FA42e2DF1bA9d6505E9", _Network$PLASMA2), _aaveAddressProvider);
4347
+ var nonfungiblePositionManagerAddress = (_nonfungiblePositionM = {}, _nonfungiblePositionM[exports.Network.POLYGON] = (_Network$POLYGON5 = {}, _Network$POLYGON5[exports.Dapp.UNISWAPV3] = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", _Network$POLYGON5), _nonfungiblePositionM[exports.Network.OPTIMISM] = (_Network$OPTIMISM4 = {}, _Network$OPTIMISM4[exports.Dapp.UNISWAPV3] = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", _Network$OPTIMISM4[exports.Dapp.VELODROMECL] = "0x416b433906b1B72FA758e166e239c43d68dC6F29", _Network$OPTIMISM4), _nonfungiblePositionM[exports.Network.ARBITRUM] = (_Network$ARBITRUM4 = {}, _Network$ARBITRUM4[exports.Dapp.UNISWAPV3] = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88", _Network$ARBITRUM4[exports.Dapp.RAMSESCL] = "0xAA277CB7914b7e5514946Da92cb9De332Ce610EF", _Network$ARBITRUM4[exports.Dapp.PANCAKECL] = "0x46a15b0b27311cedf172ab29e4f4766fbe7f4364", _Network$ARBITRUM4), _nonfungiblePositionM[exports.Network.BASE] = (_Network$BASE4 = {}, _Network$BASE4[exports.Dapp.UNISWAPV3] = "0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1", _Network$BASE4[exports.Dapp.AERODROMECL] = "0x827922686190790b37229fd06084350e74485b72", _Network$BASE4[exports.Dapp.PANCAKECL] = "0x46A15B0b27311cedF172AB29E4f4766fbE7F4364", _Network$BASE4), _nonfungiblePositionM[exports.Network.ETHEREUM] = {}, _nonfungiblePositionM[exports.Network.PLASMA] = {}, _nonfungiblePositionM);
4348
+ var networkChainIdMap = (_networkChainIdMap = {}, _networkChainIdMap[exports.Network.POLYGON] = 137, _networkChainIdMap[exports.Network.OPTIMISM] = 10, _networkChainIdMap[exports.Network.ARBITRUM] = 42161, _networkChainIdMap[exports.Network.BASE] = 8453, _networkChainIdMap[exports.Network.ETHEREUM] = 1, _networkChainIdMap[exports.Network.PLASMA] = 9745, _networkChainIdMap);
4349
+ var balancerSubgraph = (_balancerSubgraph = {}, _balancerSubgraph[exports.Network.POLYGON] = "https://api.thegraph.com/subgraphs/name/balancer-labs/balancer-polygon-v2", _balancerSubgraph[exports.Network.OPTIMISM] = "", _balancerSubgraph[exports.Network.ARBITRUM] = "", _balancerSubgraph[exports.Network.BASE] = "", _balancerSubgraph[exports.Network.ETHEREUM] = "", _balancerSubgraph[exports.Network.PLASMA] = "", _balancerSubgraph);
4350
+ var multiCallAddress = (_multiCallAddress = {}, _multiCallAddress[exports.Network.POLYGON] = "0x275617327c958bD06b5D6b871E7f491D76113dd8", _multiCallAddress[exports.Network.OPTIMISM] = "", _multiCallAddress[exports.Network.ARBITRUM] = "", _multiCallAddress[exports.Network.BASE] = "", _multiCallAddress[exports.Network.ETHEREUM] = "", _multiCallAddress[exports.Network.PLASMA] = "", _multiCallAddress);
4334
4351
  var lyraNetworkMap = (_lyraNetworkMap = {}, _lyraNetworkMap[exports.Network.OPTIMISM] = Lyra.Deployment.Mainnet, _lyraNetworkMap);
4335
4352
  var MaxUint128 = "0xffffffffffffffffffffffffffffffff";
4336
4353
  var UNISWAPV3_QUOTER_ADDRESS = "0xb27308f9F90D607463bb33eA1BeBb41C27CE5AB6";
@@ -27868,6 +27885,64 @@ var getCompleteWithdrawalTxData = /*#__PURE__*/function () {
27868
27885
  };
27869
27886
  }();
27870
27887
 
27888
+ var kyberBaseUrl = "https://aggregator-api.kyberswap.com";
27889
+ function getKyberSwapTxData(_x, _x2, _x3, _x4, _x5) {
27890
+ return _getKyberSwapTxData.apply(this, arguments);
27891
+ }
27892
+
27893
+ function _getKyberSwapTxData() {
27894
+ _getKyberSwapTxData = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(pool, tokenIn, tokenOut, amountIn, slippage) {
27895
+ var params, quoteResult, buildParams, buildResult;
27896
+ return runtime_1.wrap(function _callee$(_context) {
27897
+ while (1) {
27898
+ switch (_context.prev = _context.next) {
27899
+ case 0:
27900
+ params = {
27901
+ tokenIn: tokenIn,
27902
+ tokenOut: tokenOut,
27903
+ amountIn: amountIn.toString()
27904
+ };
27905
+ _context.prev = 1;
27906
+ _context.next = 4;
27907
+ return axios.get(kyberBaseUrl + "/" + pool.network + "/api/v1/routes", {
27908
+ params: params
27909
+ });
27910
+
27911
+ case 4:
27912
+ quoteResult = _context.sent;
27913
+ buildParams = {
27914
+ routeSummary: quoteResult.data.data.routeSummary,
27915
+ sender: pool.address,
27916
+ recipient: pool.address,
27917
+ slippageTolerance: slippage * 100 // in basis points
27918
+
27919
+ };
27920
+ _context.next = 8;
27921
+ return axios.post(kyberBaseUrl + "/" + pool.network + "/api/v1/route/build", buildParams);
27922
+
27923
+ case 8:
27924
+ buildResult = _context.sent;
27925
+ return _context.abrupt("return", {
27926
+ swapTxData: buildResult.data.data.data,
27927
+ minAmountOut: buildResult.data.data.amountOut
27928
+ });
27929
+
27930
+ case 12:
27931
+ _context.prev = 12;
27932
+ _context.t0 = _context["catch"](1);
27933
+ console.error("Error in KyberSwap API request:", _context.t0);
27934
+ throw new ApiError("Swap api request of KyberSwap failed");
27935
+
27936
+ case 16:
27937
+ case "end":
27938
+ return _context.stop();
27939
+ }
27940
+ }
27941
+ }, _callee, null, [[1, 12]]);
27942
+ }));
27943
+ return _getKyberSwapTxData.apply(this, arguments);
27944
+ }
27945
+
27871
27946
  var Pool = /*#__PURE__*/function () {
27872
27947
  function Pool(network, signer, poolLogic, mangerLogic, utils, factory, isDhedge) {
27873
27948
  if (isDhedge === void 0) {
@@ -28396,7 +28471,7 @@ var Pool = /*#__PURE__*/function () {
28396
28471
  /*#__PURE__*/
28397
28472
  function () {
28398
28473
  var _trade = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee10(dapp, assetFrom, assetTo, amountIn, slippage, options, sdkOptions) {
28399
- var swapTxData, minAmountOut, _yield$getOneInchSwap, iSynthetix, assets, daoAddress, _yield$getOdosSwapTxD, _yield$getPendleSwapT, iUniswapV2Router, calculatedMinAmountOut, tx;
28474
+ var swapTxData, minAmountOut, _yield$getOneInchSwap, iSynthetix, assets, daoAddress, _yield$getOdosSwapTxD, _yield$getPendleSwapT, _yield$getKyberSwapTx, iUniswapV2Router, calculatedMinAmountOut, tx;
28400
28475
 
28401
28476
  return runtime_1.wrap(function _callee10$(_context10) {
28402
28477
  while (1) {
@@ -28418,7 +28493,7 @@ var Pool = /*#__PURE__*/function () {
28418
28493
 
28419
28494
  minAmountOut = null;
28420
28495
  _context10.t0 = dapp;
28421
- _context10.next = _context10.t0 === exports.Dapp.ONEINCH ? 7 : _context10.t0 === exports.Dapp.BALANCER ? 13 : _context10.t0 === exports.Dapp.SYNTHETIX ? 17 : _context10.t0 === exports.Dapp.TOROS ? 24 : _context10.t0 === exports.Dapp.ODOS ? 28 : _context10.t0 === exports.Dapp.PENDLE ? 34 : 40;
28496
+ _context10.next = _context10.t0 === exports.Dapp.ONEINCH ? 7 : _context10.t0 === exports.Dapp.BALANCER ? 13 : _context10.t0 === exports.Dapp.SYNTHETIX ? 17 : _context10.t0 === exports.Dapp.TOROS ? 24 : _context10.t0 === exports.Dapp.ODOS ? 28 : _context10.t0 === exports.Dapp.PENDLE ? 34 : _context10.t0 === exports.Dapp.KYBERSWAP ? 40 : 46;
28422
28497
  break;
28423
28498
 
28424
28499
  case 7:
@@ -28429,7 +28504,7 @@ var Pool = /*#__PURE__*/function () {
28429
28504
  _yield$getOneInchSwap = _context10.sent;
28430
28505
  swapTxData = _yield$getOneInchSwap.swapTxData;
28431
28506
  minAmountOut = _yield$getOneInchSwap.dstAmount;
28432
- return _context10.abrupt("break", 55);
28507
+ return _context10.abrupt("break", 61);
28433
28508
 
28434
28509
  case 13:
28435
28510
  _context10.next = 15;
@@ -28437,7 +28512,7 @@ var Pool = /*#__PURE__*/function () {
28437
28512
 
28438
28513
  case 15:
28439
28514
  swapTxData = _context10.sent;
28440
- return _context10.abrupt("break", 55);
28515
+ return _context10.abrupt("break", 61);
28441
28516
 
28442
28517
  case 17:
28443
28518
  iSynthetix = new ethers.ethers.utils.Interface(ISynthetix.abi);
@@ -28450,7 +28525,7 @@ var Pool = /*#__PURE__*/function () {
28450
28525
  case 21:
28451
28526
  daoAddress = _context10.sent;
28452
28527
  swapTxData = iSynthetix.encodeFunctionData(exports.Transaction.SWAP_SYNTHS, [assets[0], amountIn, assets[1], daoAddress, SYNTHETIX_TRACKING_CODE]);
28453
- return _context10.abrupt("break", 55);
28528
+ return _context10.abrupt("break", 61);
28454
28529
 
28455
28530
  case 24:
28456
28531
  _context10.next = 26;
@@ -28458,7 +28533,7 @@ var Pool = /*#__PURE__*/function () {
28458
28533
 
28459
28534
  case 26:
28460
28535
  swapTxData = _context10.sent;
28461
- return _context10.abrupt("break", 55);
28536
+ return _context10.abrupt("break", 61);
28462
28537
 
28463
28538
  case 28:
28464
28539
  _context10.next = 30;
@@ -28468,7 +28543,7 @@ var Pool = /*#__PURE__*/function () {
28468
28543
  _yield$getOdosSwapTxD = _context10.sent;
28469
28544
  swapTxData = _yield$getOdosSwapTxD.swapTxData;
28470
28545
  minAmountOut = _yield$getOdosSwapTxD.minAmountOut;
28471
- return _context10.abrupt("break", 55);
28546
+ return _context10.abrupt("break", 61);
28472
28547
 
28473
28548
  case 34:
28474
28549
  _context10.next = 36;
@@ -28478,14 +28553,24 @@ var Pool = /*#__PURE__*/function () {
28478
28553
  _yield$getPendleSwapT = _context10.sent;
28479
28554
  swapTxData = _yield$getPendleSwapT.swapTxData;
28480
28555
  minAmountOut = _yield$getPendleSwapT.minAmountOut;
28481
- return _context10.abrupt("break", 55);
28556
+ return _context10.abrupt("break", 61);
28482
28557
 
28483
28558
  case 40:
28559
+ _context10.next = 42;
28560
+ return getKyberSwapTxData(this, assetFrom, assetTo, amountIn, slippage);
28561
+
28562
+ case 42:
28563
+ _yield$getKyberSwapTx = _context10.sent;
28564
+ swapTxData = _yield$getKyberSwapTx.swapTxData;
28565
+ minAmountOut = _yield$getKyberSwapTx.minAmountOut;
28566
+ return _context10.abrupt("break", 61);
28567
+
28568
+ case 46:
28484
28569
  iUniswapV2Router = new ethers.ethers.utils.Interface(IUniswapV2Router.abi);
28485
- _context10.next = 43;
28570
+ _context10.next = 49;
28486
28571
  return this.utils.getMinAmountOut(dapp, assetFrom, assetTo, amountIn, slippage);
28487
28572
 
28488
- case 43:
28573
+ case 49:
28489
28574
  calculatedMinAmountOut = _context10.sent;
28490
28575
  _context10.t1 = iUniswapV2Router;
28491
28576
  _context10.t2 = exports.Transaction.SWAP;
@@ -28493,23 +28578,23 @@ var Pool = /*#__PURE__*/function () {
28493
28578
  _context10.t4 = calculatedMinAmountOut;
28494
28579
  _context10.t5 = [assetFrom, assetTo];
28495
28580
  _context10.t6 = this.address;
28496
- _context10.next = 52;
28581
+ _context10.next = 58;
28497
28582
  return getDeadline(this);
28498
28583
 
28499
- case 52:
28584
+ case 58:
28500
28585
  _context10.t7 = _context10.sent;
28501
28586
  _context10.t8 = [_context10.t3, _context10.t4, _context10.t5, _context10.t6, _context10.t7];
28502
28587
  swapTxData = _context10.t1.encodeFunctionData.call(_context10.t1, _context10.t2, _context10.t8);
28503
28588
 
28504
- case 55:
28505
- _context10.next = 57;
28589
+ case 61:
28590
+ _context10.next = 63;
28506
28591
  return getPoolTxOrGasEstimate(this, [routerAddress[this.network][dapp], swapTxData, options, minAmountOut], sdkOptions);
28507
28592
 
28508
- case 57:
28593
+ case 63:
28509
28594
  tx = _context10.sent;
28510
28595
  return _context10.abrupt("return", tx);
28511
28596
 
28512
- case 59:
28597
+ case 65:
28513
28598
  case "end":
28514
28599
  return _context10.stop();
28515
28600
  }
@@ -34777,7 +34862,10 @@ var Dhedge = /*#__PURE__*/function () {
34777
34862
  * @param {string} poolName Pool name
34778
34863
  * @param {string} symbol Token symbol
34779
34864
  * @param {tuple[]} supportedAssets Enabled assets to trade
34780
- * @param {number|BigNumber} managerFeeNumerator Manger fee in percent
34865
+ * @param {number|BigNumber} performanceFeeNumerator Performance fee in percent
34866
+ * @param {number|BigNumber} managerFeeNumerator Manager fee in percent
34867
+ * @param {number|BigNumber} entryFeeNumerator Entry fee in percent
34868
+ * @param {number|BigNumber} exitFeeNumerator Exit fee in percent
34781
34869
  * @param {any} options Transaction options
34782
34870
  * @returns {Pool} Created Pool
34783
34871
  */
@@ -34788,53 +34876,65 @@ var Dhedge = /*#__PURE__*/function () {
34788
34876
  _proto.createPool =
34789
34877
  /*#__PURE__*/
34790
34878
  function () {
34791
- var _createPool = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(managerName, poolName, symbol, supportedAssets, managerFeeNumerator, options) {
34879
+ var _createPool = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(managerName, poolName, symbol, supportedAssets, performanceFeeNumerator, managerFeeNumerator, entryFeeNumerator, exitFeeNumerator, options) {
34792
34880
  var pool, receipt, creationEvent, poolAddress, poolLogic, managerLogicAddress, managerLogic;
34793
34881
  return runtime_1.wrap(function _callee$(_context) {
34794
34882
  while (1) {
34795
34883
  switch (_context.prev = _context.next) {
34796
34884
  case 0:
34885
+ if (performanceFeeNumerator === void 0) {
34886
+ performanceFeeNumerator = 0;
34887
+ }
34888
+
34797
34889
  if (managerFeeNumerator === void 0) {
34798
- managerFeeNumerator = 20;
34890
+ managerFeeNumerator = 0;
34891
+ }
34892
+
34893
+ if (entryFeeNumerator === void 0) {
34894
+ entryFeeNumerator = 0;
34895
+ }
34896
+
34897
+ if (exitFeeNumerator === void 0) {
34898
+ exitFeeNumerator = 0;
34799
34899
  }
34800
34900
 
34801
34901
  if (options === void 0) {
34802
34902
  options = null;
34803
34903
  }
34804
34904
 
34805
- _context.next = 4;
34806
- return this.factory.createFund(false, this.signer.getAddress(), managerName, poolName, symbol, managerFeeNumerator * 100, supportedAssets, options);
34905
+ _context.next = 7;
34906
+ return this.factory.createFund(false, this.signer.getAddress(), managerName, poolName, symbol, performanceFeeNumerator * 100, managerFeeNumerator * 100, entryFeeNumerator * 100, exitFeeNumerator * 100, supportedAssets, options);
34807
34907
 
34808
- case 4:
34908
+ case 7:
34809
34909
  pool = _context.sent;
34810
- _context.next = 7;
34910
+ _context.next = 10;
34811
34911
  return pool.wait(1);
34812
34912
 
34813
- case 7:
34913
+ case 10:
34814
34914
  receipt = _context.sent;
34815
34915
  creationEvent = receipt.events.find(function (item) {
34816
34916
  return item.event === "FundCreated";
34817
34917
  });
34818
34918
 
34819
34919
  if (creationEvent) {
34820
- _context.next = 11;
34920
+ _context.next = 14;
34821
34921
  break;
34822
34922
  }
34823
34923
 
34824
34924
  throw new Error("Fund not created");
34825
34925
 
34826
- case 11:
34926
+ case 14:
34827
34927
  poolAddress = creationEvent.args.fundAddress;
34828
34928
  poolLogic = new ethers.Contract(poolAddress, PoolLogic.abi, this.signer);
34829
- _context.next = 15;
34929
+ _context.next = 18;
34830
34930
  return poolLogic.poolManagerLogic();
34831
34931
 
34832
- case 15:
34932
+ case 18:
34833
34933
  managerLogicAddress = _context.sent;
34834
34934
  managerLogic = new ethers.Contract(managerLogicAddress, ManagerLogic.abi, this.signer);
34835
34935
  return _context.abrupt("return", new Pool(this.network, this.signer, poolLogic, managerLogic, this.utils, this.factory));
34836
34936
 
34837
- case 18:
34937
+ case 21:
34838
34938
  case "end":
34839
34939
  return _context.stop();
34840
34940
  }
@@ -34842,7 +34942,7 @@ var Dhedge = /*#__PURE__*/function () {
34842
34942
  }, _callee, this);
34843
34943
  }));
34844
34944
 
34845
- function createPool(_x, _x2, _x3, _x4, _x5, _x6) {
34945
+ function createPool(_x, _x2, _x3, _x4, _x5, _x6, _x7, _x8, _x9) {
34846
34946
  return _createPool.apply(this, arguments);
34847
34947
  }
34848
34948
 
@@ -34894,7 +34994,7 @@ var Dhedge = /*#__PURE__*/function () {
34894
34994
  }, _callee2, this);
34895
34995
  }));
34896
34996
 
34897
- function loadPool(_x7, _x8) {
34997
+ function loadPool(_x10, _x11) {
34898
34998
  return _loadPool.apply(this, arguments);
34899
34999
  }
34900
35000