@gearbox-protocol/sdk 2.1.33 → 2.1.34

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.
Files changed (53) hide show
  1. package/lib/contracts/protocols.d.ts +0 -5
  2. package/lib/contracts/protocols.js +1 -43
  3. package/lib/core/creditManager.d.ts +3 -0
  4. package/lib/core/creditManager.js +22 -0
  5. package/lib/core/pool/index.d.ts +0 -1
  6. package/lib/core/pool/index.js +0 -1
  7. package/lib/core/trade.d.ts +29 -16
  8. package/lib/core/trade.js +67 -10
  9. package/lib/index.d.ts +0 -11
  10. package/lib/index.js +1 -14
  11. package/lib/parsers/txParser.js +1 -1
  12. package/lib/tokens/aave.d.ts +0 -3
  13. package/lib/tokens/aave.js +0 -57
  14. package/lib/tokens/balancer.d.ts +0 -10
  15. package/lib/tokens/balancer.js +0 -29
  16. package/lib/tokens/compound.d.ts +0 -2
  17. package/lib/tokens/compound.js +0 -36
  18. package/lib/tokens/convex.d.ts +2 -2
  19. package/lib/tokens/convex.js +9 -322
  20. package/lib/tokens/curveLP.d.ts +3 -4
  21. package/lib/tokens/curveLP.js +17 -240
  22. package/lib/tokens/gear.d.ts +0 -2
  23. package/lib/tokens/normal.d.ts +0 -3
  24. package/lib/tokens/normal.js +0 -718
  25. package/lib/tokens/yearn.d.ts +0 -4
  26. package/lib/tokens/yearn.js +0 -43
  27. package/package.json +1 -1
  28. package/lib/core/adapter.d.ts +0 -20
  29. package/lib/core/adapter.js +0 -20
  30. package/lib/core/creditOperation.d.ts +0 -9
  31. package/lib/core/creditOperation.js +0 -2
  32. package/lib/core/operations.d.ts +0 -22
  33. package/lib/core/operations.js +0 -26
  34. package/lib/core/pool/operation.d.ts +0 -28
  35. package/lib/core/pool/operation.js +0 -36
  36. package/lib/pathfinder/tradeTypes.d.ts +0 -113
  37. package/lib/pathfinder/tradeTypes.js +0 -28
  38. package/lib/strategies/convex.d.ts +0 -57
  39. package/lib/strategies/convex.js +0 -220
  40. package/lib/strategies/creditFacade.d.ts +0 -21
  41. package/lib/strategies/creditFacade.js +0 -71
  42. package/lib/strategies/curve.d.ts +0 -45
  43. package/lib/strategies/curve.js +0 -207
  44. package/lib/strategies/lido.d.ts +0 -18
  45. package/lib/strategies/lido.js +0 -51
  46. package/lib/strategies/uniswapV2.d.ts +0 -15
  47. package/lib/strategies/uniswapV2.js +0 -44
  48. package/lib/strategies/uniswapV3.d.ts +0 -21
  49. package/lib/strategies/uniswapV3.js +0 -71
  50. package/lib/strategies/yearn.d.ts +0 -20
  51. package/lib/strategies/yearn.js +0 -128
  52. package/lib/utils/extracter.d.ts +0 -11
  53. package/lib/utils/extracter.js +0 -19
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UniswapV2Multicaller = exports.UniswapV2Calls = void 0;
4
- const types_1 = require("../types");
5
- class UniswapV2Calls {
6
- static swapExactTokensForTokens(amountIn, amountOutMin, path, to, deadline) {
7
- return types_1.IUniswapV2Adapter__factory.createInterface().encodeFunctionData("swapExactTokensForTokens", [amountIn, amountOutMin, path, to, deadline]);
8
- }
9
- static swapTokensForExactTokens(amountOut, amountInMax, path, to, deadline) {
10
- return types_1.IUniswapV2Adapter__factory.createInterface().encodeFunctionData("swapTokensForExactTokens", [amountOut, amountInMax, path, to, deadline]);
11
- }
12
- static swapAllTokensForTokens(rateMinRAY, path, deadline) {
13
- return types_1.IUniswapV2Adapter__factory.createInterface().encodeFunctionData("swapAllTokensForTokens", [rateMinRAY, path, deadline]);
14
- }
15
- }
16
- exports.UniswapV2Calls = UniswapV2Calls;
17
- class UniswapV2Multicaller {
18
- _address;
19
- constructor(address) {
20
- this._address = address;
21
- }
22
- static connect(address) {
23
- return new UniswapV2Multicaller(address);
24
- }
25
- swapExactTokensForTokens(amountIn, amountOutMin, path, to, deadline) {
26
- return {
27
- target: this._address,
28
- callData: UniswapV2Calls.swapExactTokensForTokens(amountIn, amountOutMin, path, to, deadline),
29
- };
30
- }
31
- swapTokensForExactTokens(amountOut, amountInMax, path, to, deadline) {
32
- return {
33
- target: this._address,
34
- callData: UniswapV2Calls.swapExactTokensForTokens(amountOut, amountInMax, path, to, deadline),
35
- };
36
- }
37
- swapAllTokensForTokens(rateMinRAY, path, deadline) {
38
- return {
39
- target: this._address,
40
- callData: UniswapV2Calls.swapAllTokensForTokens(rateMinRAY, path, deadline),
41
- };
42
- }
43
- }
44
- exports.UniswapV2Multicaller = UniswapV2Multicaller;
@@ -1,21 +0,0 @@
1
- import { ISwapRouter, IUniswapV3Adapter } from "../types";
2
- import { MultiCallStruct } from "../types/@gearbox-protocol/router/contracts/interfaces/IClosePathResolver";
3
- export declare class UniswapV3Calls {
4
- static exactInputSingle(params: ISwapRouter.ExactInputSingleParamsStructOutput): string;
5
- static exactAllInputSingle(params: IUniswapV3Adapter.ExactAllInputSingleParamsStructOutput): string;
6
- static exactInput(params: ISwapRouter.ExactInputParamsStructOutput): string;
7
- static exactAllInput(params: IUniswapV3Adapter.ExactAllInputParamsStructOutput): string;
8
- static exactOutputSingle(params: ISwapRouter.ExactOutputSingleParamsStructOutput): string;
9
- static exactOutput(params: ISwapRouter.ExactOutputParamsStructOutput): string;
10
- }
11
- export declare class UniswapV3Multicaller {
12
- private readonly _address;
13
- constructor(address: string);
14
- static connect(address: string): UniswapV3Multicaller;
15
- exactInputSingle(params: ISwapRouter.ExactInputSingleParamsStructOutput): MultiCallStruct;
16
- exactAllInputSingle(params: IUniswapV3Adapter.ExactAllInputSingleParamsStructOutput): MultiCallStruct;
17
- exactInput(params: ISwapRouter.ExactInputParamsStructOutput): MultiCallStruct;
18
- exactAllInput(params: IUniswapV3Adapter.ExactAllInputParamsStructOutput): MultiCallStruct;
19
- exactOutputSingle(params: ISwapRouter.ExactOutputSingleParamsStructOutput): MultiCallStruct;
20
- exactOutput(params: ISwapRouter.ExactOutputParamsStructOutput): MultiCallStruct;
21
- }
@@ -1,71 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UniswapV3Multicaller = exports.UniswapV3Calls = void 0;
4
- const types_1 = require("../types");
5
- class UniswapV3Calls {
6
- static exactInputSingle(params) {
7
- return types_1.IUniswapV3Adapter__factory.createInterface().encodeFunctionData("exactInputSingle", [params]);
8
- }
9
- static exactAllInputSingle(params) {
10
- return types_1.IUniswapV3Adapter__factory.createInterface().encodeFunctionData("exactAllInputSingle", [params]);
11
- }
12
- static exactInput(params) {
13
- return types_1.IUniswapV3Adapter__factory.createInterface().encodeFunctionData("exactInput", [params]);
14
- }
15
- static exactAllInput(params) {
16
- return types_1.IUniswapV3Adapter__factory.createInterface().encodeFunctionData("exactAllInput", [params]);
17
- }
18
- static exactOutputSingle(params) {
19
- return types_1.IUniswapV3Adapter__factory.createInterface().encodeFunctionData("exactOutputSingle", [params]);
20
- }
21
- static exactOutput(params) {
22
- return types_1.IUniswapV3Adapter__factory.createInterface().encodeFunctionData("exactOutput", [params]);
23
- }
24
- }
25
- exports.UniswapV3Calls = UniswapV3Calls;
26
- class UniswapV3Multicaller {
27
- _address;
28
- constructor(address) {
29
- this._address = address;
30
- }
31
- static connect(address) {
32
- return new UniswapV3Multicaller(address);
33
- }
34
- exactInputSingle(params) {
35
- return {
36
- target: this._address,
37
- callData: UniswapV3Calls.exactInputSingle(params),
38
- };
39
- }
40
- exactAllInputSingle(params) {
41
- return {
42
- target: this._address,
43
- callData: UniswapV3Calls.exactAllInputSingle(params),
44
- };
45
- }
46
- exactInput(params) {
47
- return {
48
- target: this._address,
49
- callData: UniswapV3Calls.exactInput(params),
50
- };
51
- }
52
- exactAllInput(params) {
53
- return {
54
- target: this._address,
55
- callData: UniswapV3Calls.exactAllInput(params),
56
- };
57
- }
58
- exactOutputSingle(params) {
59
- return {
60
- target: this._address,
61
- callData: UniswapV3Calls.exactOutputSingle(params),
62
- };
63
- }
64
- exactOutput(params) {
65
- return {
66
- target: this._address,
67
- callData: UniswapV3Calls.exactOutput(params),
68
- };
69
- }
70
- }
71
- exports.UniswapV3Multicaller = UniswapV3Multicaller;
@@ -1,20 +0,0 @@
1
- import { BigNumberish } from "ethers";
2
- import { YearnVaultContract } from "../contracts/contracts";
3
- import { NetworkType } from "../core/chains";
4
- import { CreditManagerData } from "../core/creditManager";
5
- import { MultiCallStruct } from "../types/@gearbox-protocol/router/contracts/interfaces/IClosePathResolver";
6
- export declare class YearnV2Calls {
7
- static deposit(amount?: BigNumberish, recipient?: string): string;
8
- static withdraw(maxShares?: BigNumberish, recipient?: string, maxLoss?: BigNumberish): string;
9
- }
10
- export declare class YearnV2Multicaller {
11
- private readonly _address;
12
- constructor(address: string);
13
- static connect(address: string): YearnV2Multicaller;
14
- deposit(amount?: BigNumberish, recipient?: string): MultiCallStruct;
15
- withdraw(maxShares?: BigNumberish, recipient?: string, maxLoss?: BigNumberish): MultiCallStruct;
16
- }
17
- export declare class YearnV2Strategies {
18
- static underlyingToYearn(data: CreditManagerData, network: NetworkType, yearnVault: YearnVaultContract, underlyingAmount: BigNumberish): MultiCallStruct[];
19
- static yearnToUnderlying(data: CreditManagerData, network: NetworkType, yearnVault: YearnVaultContract, yearnSharesAmount: BigNumberish): MultiCallStruct[];
20
- }
@@ -1,128 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.YearnV2Strategies = exports.YearnV2Multicaller = exports.YearnV2Calls = void 0;
4
- const contracts_1 = require("../contracts/contracts");
5
- const constants_1 = require("../core/constants");
6
- const token_1 = require("../tokens/token");
7
- const tokenType_1 = require("../tokens/tokenType");
8
- const types_1 = require("../types");
9
- const curve_1 = require("./curve");
10
- const uniswapV2_1 = require("./uniswapV2");
11
- class YearnV2Calls {
12
- static deposit(amount, recipient) {
13
- const contractInterface = types_1.IYVault__factory.createInterface();
14
- if (amount && recipient) {
15
- return contractInterface.encodeFunctionData("deposit(uint256,address)", [
16
- amount,
17
- recipient,
18
- ]);
19
- }
20
- if (amount) {
21
- return contractInterface.encodeFunctionData("deposit(uint256)", [amount]);
22
- }
23
- return contractInterface.encodeFunctionData("deposit()");
24
- }
25
- static withdraw(maxShares, recipient, maxLoss) {
26
- const contractInterface = types_1.IYVault__factory.createInterface();
27
- if (maxShares && recipient && maxLoss) {
28
- return contractInterface.encodeFunctionData("withdraw(uint256,address,uint256)", [maxShares, recipient, maxLoss]);
29
- }
30
- if (maxShares && recipient) {
31
- return contractInterface.encodeFunctionData("withdraw(uint256,address)", [
32
- maxShares,
33
- recipient,
34
- ]);
35
- }
36
- if (maxShares) {
37
- return contractInterface.encodeFunctionData("withdraw(uint256)", [
38
- maxShares,
39
- ]);
40
- }
41
- return contractInterface.encodeFunctionData("withdraw()");
42
- }
43
- }
44
- exports.YearnV2Calls = YearnV2Calls;
45
- class YearnV2Multicaller {
46
- _address;
47
- constructor(address) {
48
- this._address = address;
49
- }
50
- static connect(address) {
51
- return new YearnV2Multicaller(address);
52
- }
53
- deposit(amount, recipient) {
54
- return {
55
- target: this._address,
56
- callData: YearnV2Calls.deposit(amount, recipient),
57
- };
58
- }
59
- withdraw(maxShares, recipient, maxLoss) {
60
- return {
61
- target: this._address,
62
- callData: YearnV2Calls.withdraw(maxShares, recipient, maxLoss),
63
- };
64
- }
65
- }
66
- exports.YearnV2Multicaller = YearnV2Multicaller;
67
- class YearnV2Strategies {
68
- static underlyingToYearn(data, network, yearnVault, underlyingAmount) {
69
- let calls = [];
70
- const vaultParams = contracts_1.contractParams[yearnVault];
71
- const yearnToken = vaultParams.shareToken;
72
- const yearnParams = token_1.supportedTokens[yearnToken];
73
- if (yearnParams.type === tokenType_1.TokenType.YEARN_ON_NORMAL_TOKEN) {
74
- if (data.underlyingToken.toLowerCase() !==
75
- token_1.tokenDataByNetwork[network][yearnParams.underlying].toLowerCase()) {
76
- // This should be a pathfinder call
77
- calls.push(uniswapV2_1.UniswapV2Multicaller.connect(data.adapters[contracts_1.contractsByNetwork[network].UNISWAP_V2_ROUTER.toLowerCase()]).swapExactTokensForTokens(underlyingAmount, 0, [
78
- data.underlyingToken,
79
- token_1.tokenDataByNetwork[network][yearnParams.underlying],
80
- ], constants_1.ADDRESS_0X0, Math.floor(new Date().getTime() / 1000) + 3600));
81
- }
82
- else {
83
- calls.push(YearnV2Multicaller.connect(data.adapters[contracts_1.contractsByNetwork[network][yearnVault].toLowerCase()]).deposit(underlyingAmount));
84
- return calls;
85
- }
86
- }
87
- else if (yearnParams.type === tokenType_1.TokenType.YEARN_ON_CURVE_TOKEN) {
88
- const curveTokenParams = token_1.supportedTokens[yearnParams.underlying];
89
- const curvePool = curveTokenParams.pool;
90
- calls = curve_1.CurveStrategies.underlyingToCurveLP(data, network, curvePool, underlyingAmount);
91
- }
92
- else {
93
- throw new Error("Yearn vault type unknown");
94
- }
95
- calls.push(YearnV2Multicaller.connect(data.adapters[contracts_1.contractsByNetwork[network][yearnVault].toLowerCase()]).deposit());
96
- return calls;
97
- }
98
- static yearnToUnderlying(data, network, yearnVault, yearnSharesAmount) {
99
- let calls = [];
100
- const vaultParams = contracts_1.contractParams[yearnVault];
101
- const yearnToken = vaultParams.shareToken;
102
- const yearnParams = token_1.supportedTokens[yearnToken];
103
- calls.push(YearnV2Multicaller.connect(data.adapters[contracts_1.contractsByNetwork[network][yearnVault].toLowerCase()]).withdraw(yearnSharesAmount));
104
- if (yearnParams.type === tokenType_1.TokenType.YEARN_ON_NORMAL_TOKEN) {
105
- if (data.underlyingToken.toLowerCase() !==
106
- token_1.tokenDataByNetwork[network][yearnParams.underlying].toLowerCase()) {
107
- // This should be a pathfinder call
108
- calls.push(uniswapV2_1.UniswapV2Multicaller.connect(data.adapters[contracts_1.contractsByNetwork[network].UNISWAP_V2_ROUTER.toLowerCase()]).swapAllTokensForTokens(0, [
109
- token_1.tokenDataByNetwork[network][yearnParams.underlying],
110
- data.underlyingToken,
111
- ], Math.floor(new Date().getTime() / 1000) + 3600));
112
- }
113
- }
114
- else if (yearnParams.type === tokenType_1.TokenType.YEARN_ON_CURVE_TOKEN) {
115
- const curveTokenParams = token_1.supportedTokens[yearnParams.underlying];
116
- const curvePool = curveTokenParams.pool;
117
- calls = [
118
- ...calls,
119
- ...curve_1.CurveStrategies.allCurveLPToUnderlying(data, network, curvePool),
120
- ];
121
- }
122
- else {
123
- throw new Error("Yearn vault type unknown");
124
- }
125
- return calls;
126
- }
127
- }
128
- exports.YearnV2Strategies = YearnV2Strategies;
@@ -1,11 +0,0 @@
1
- import { PoolData } from "../core/pool";
2
- export interface PoolTokens {
3
- dieselToken: string | undefined;
4
- underlyingToken: string | undefined;
5
- }
6
- export declare function getPoolTokens(pool: PoolData | undefined | Error): PoolTokens;
7
- interface WithUnderlyingToken {
8
- readonly underlyingToken: string;
9
- }
10
- export declare function getUnderlyingToken(c: WithUnderlyingToken | undefined | null | Error): string | undefined;
11
- export {};
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUnderlyingToken = exports.getPoolTokens = void 0;
4
- function getPoolTokens(pool) {
5
- const safePool = pool instanceof Error ? undefined : pool;
6
- const { dieselToken, underlyingToken } = safePool || {};
7
- return {
8
- dieselToken,
9
- underlyingToken,
10
- };
11
- }
12
- exports.getPoolTokens = getPoolTokens;
13
- function getUnderlyingToken(c) {
14
- if (!c || c instanceof Error) {
15
- return undefined;
16
- }
17
- return c.underlyingToken;
18
- }
19
- exports.getUnderlyingToken = getUnderlyingToken;