@paraswap/dex-lib 2.48.3 → 2.48.4-etherfi.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.
Files changed (129) hide show
  1. package/build/abi/algebra/AlgebraPool.abi.json +727 -0
  2. package/build/abi/etherfi/eETHPool.json +9 -0
  3. package/build/abi/etherfi/weETH.json +20 -0
  4. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +193 -0
  5. package/build/dex/algebra/algebra-pool.d.ts +46 -0
  6. package/build/dex/algebra/algebra-pool.js +336 -0
  7. package/build/dex/algebra/algebra-pool.js.map +1 -0
  8. package/build/dex/etherfi.d.ts +26 -0
  9. package/build/dex/etherfi.js +82 -0
  10. package/build/dex/etherfi.js.map +1 -0
  11. package/build/dex/index.js +2 -0
  12. package/build/dex/index.js.map +1 -1
  13. package/build/dex/quickswap/camelot-v3.d.ts +6 -0
  14. package/build/dex/quickswap/camelot-v3.js +19 -0
  15. package/build/dex/quickswap/camelot-v3.js.map +1 -0
  16. package/build/dex/quickswap/zyberswap-v3.d.ts +6 -0
  17. package/build/dex/quickswap/zyberswap-v3.js +19 -0
  18. package/build/dex/quickswap/zyberswap-v3.js.map +1 -0
  19. package/build/dex/uniswap-v2/rebase-tokens.json +7 -0
  20. package/package.json +1 -1
  21. package/src/abi/etherfi/eETHPool.json +9 -0
  22. package/src/abi/etherfi/weETH.json +20 -0
  23. package/src/dex/etherfi.ts +144 -0
  24. package/src/dex/index.ts +2 -0
  25. package/build/abi/Redstone.json +0 -739
  26. package/build/abi/angle/stagToken.json +0 -963
  27. package/build/abi/angle-transmuter/Pyth.json +0 -1534
  28. package/build/abi/angle-transmuter/Transmuter.json +0 -1719
  29. package/build/abi/pharaoh/PharaohPool.abi.json +0 -1582
  30. package/build/abi/smardex/smardex-factory.json +0 -185
  31. package/build/abi/smardex/smardex-pool.json +0 -578
  32. package/build/abi/smardex/smardex-router.json +0 -648
  33. package/build/abi/trader-joe-v2_1/FactoryABI.json +0 -1208
  34. package/build/abi/trader-joe-v2_1/PairABI.json +0 -1493
  35. package/build/abi/trader-joe-v2_1/RouterABI.json +0 -1489
  36. package/build/abi/trader-joe-v2_1/StateMulticall.json +0 -193
  37. package/build/dex/angle-staked-stable/angle-staked-stable-pool.d.ts +0 -53
  38. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js +0 -175
  39. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js.map +0 -1
  40. package/build/dex/angle-staked-stable/angle-staked-stable.d.ts +0 -42
  41. package/build/dex/angle-staked-stable/angle-staked-stable.js +0 -232
  42. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +0 -1
  43. package/build/dex/angle-staked-stable/config.d.ts +0 -4
  44. package/build/dex/angle-staked-stable/config.js +0 -26
  45. package/build/dex/angle-staked-stable/config.js.map +0 -1
  46. package/build/dex/angle-staked-stable/types.d.ts +0 -15
  47. package/build/dex/angle-staked-stable/types.js +0 -3
  48. package/build/dex/angle-staked-stable/types.js.map +0 -1
  49. package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +0 -43
  50. package/build/dex/angle-transmuter/angle-transmuter-pool.js +0 -309
  51. package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +0 -1
  52. package/build/dex/angle-transmuter/angle-transmuter.d.ts +0 -46
  53. package/build/dex/angle-transmuter/angle-transmuter.js +0 -233
  54. package/build/dex/angle-transmuter/angle-transmuter.js.map +0 -1
  55. package/build/dex/angle-transmuter/backedOracle.d.ts +0 -19
  56. package/build/dex/angle-transmuter/backedOracle.js +0 -56
  57. package/build/dex/angle-transmuter/backedOracle.js.map +0 -1
  58. package/build/dex/angle-transmuter/config.d.ts +0 -4
  59. package/build/dex/angle-transmuter/config.js +0 -20
  60. package/build/dex/angle-transmuter/config.js.map +0 -1
  61. package/build/dex/angle-transmuter/constants.d.ts +0 -4
  62. package/build/dex/angle-transmuter/constants.js +0 -8
  63. package/build/dex/angle-transmuter/constants.js.map +0 -1
  64. package/build/dex/angle-transmuter/pyth.d.ts +0 -19
  65. package/build/dex/angle-transmuter/pyth.js +0 -71
  66. package/build/dex/angle-transmuter/pyth.js.map +0 -1
  67. package/build/dex/angle-transmuter/redstone.d.ts +0 -20
  68. package/build/dex/angle-transmuter/redstone.js +0 -73
  69. package/build/dex/angle-transmuter/redstone.js.map +0 -1
  70. package/build/dex/angle-transmuter/transmuter.d.ts +0 -50
  71. package/build/dex/angle-transmuter/transmuter.js +0 -314
  72. package/build/dex/angle-transmuter/transmuter.js.map +0 -1
  73. package/build/dex/angle-transmuter/types.d.ts +0 -144
  74. package/build/dex/angle-transmuter/types.js +0 -31
  75. package/build/dex/angle-transmuter/types.js.map +0 -1
  76. package/build/dex/angle-transmuter/utils.d.ts +0 -9
  77. package/build/dex/angle-transmuter/utils.js +0 -264
  78. package/build/dex/angle-transmuter/utils.js.map +0 -1
  79. package/build/dex/smardex/subgraph-queries.d.ts +0 -1
  80. package/build/dex/smardex/subgraph-queries.js +0 -17
  81. package/build/dex/smardex/subgraph-queries.js.map +0 -1
  82. package/build/dex/smardex/usd-reserves.d.ts +0 -23
  83. package/build/dex/smardex/usd-reserves.js +0 -86
  84. package/build/dex/smardex/usd-reserves.js.map +0 -1
  85. package/build/dex/trader-joe-v2-1-2/config.d.ts +0 -4
  86. package/build/dex/trader-joe-v2-1-2/config.js +0 -47
  87. package/build/dex/trader-joe-v2-1-2/config.js.map +0 -1
  88. package/build/dex/trader-joe-v2-1-2/constants.d.ts +0 -20
  89. package/build/dex/trader-joe-v2-1-2/constants.js +0 -22
  90. package/build/dex/trader-joe-v2-1-2/constants.js.map +0 -1
  91. package/build/dex/trader-joe-v2-1-2/math/index.d.ts +0 -37
  92. package/build/dex/trader-joe-v2-1-2/math/index.js +0 -291
  93. package/build/dex/trader-joe-v2-1-2/math/index.js.map +0 -1
  94. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.d.ts +0 -60
  95. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js +0 -248
  96. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js.map +0 -1
  97. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.d.ts +0 -53
  98. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js +0 -307
  99. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js.map +0 -1
  100. package/build/dex/trader-joe-v2-1-2/types.d.ts +0 -82
  101. package/build/dex/trader-joe-v2-1-2/types.js +0 -9
  102. package/build/dex/trader-joe-v2-1-2/types.js.map +0 -1
  103. package/build/dex/trader-joe-v2_1/config.d.ts +0 -4
  104. package/build/dex/trader-joe-v2_1/config.js +0 -47
  105. package/build/dex/trader-joe-v2_1/config.js.map +0 -1
  106. package/build/dex/trader-joe-v2_1/constants.d.ts +0 -20
  107. package/build/dex/trader-joe-v2_1/constants.js +0 -22
  108. package/build/dex/trader-joe-v2_1/constants.js.map +0 -1
  109. package/build/dex/trader-joe-v2_1/math/index.d.ts +0 -37
  110. package/build/dex/trader-joe-v2_1/math/index.js +0 -291
  111. package/build/dex/trader-joe-v2_1/math/index.js.map +0 -1
  112. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.d.ts +0 -0
  113. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js +0 -384
  114. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js.map +0 -1
  115. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.d.ts +0 -60
  116. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js +0 -247
  117. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js.map +0 -1
  118. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.d.ts +0 -53
  119. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js +0 -307
  120. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js.map +0 -1
  121. package/build/dex/trader-joe-v2_1/types.d.ts +0 -82
  122. package/build/dex/trader-joe-v2_1/types.js +0 -9
  123. package/build/dex/trader-joe-v2_1/types.js.map +0 -1
  124. package/build/dex/wombat/wombat-pool-poller.d.ts +0 -22
  125. package/build/dex/wombat/wombat-pool-poller.js +0 -164
  126. package/build/dex/wombat/wombat-pool-poller.js.map +0 -1
  127. package/build/dex-helper/RedisBatcher.d.ts +0 -20
  128. package/build/dex-helper/RedisBatcher.js +0 -75
  129. package/build/dex-helper/RedisBatcher.js.map +0 -1
@@ -1,232 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.AngleStakedStable = void 0;
30
- const abi_1 = require("@ethersproject/abi");
31
- const constants_1 = require("../../constants");
32
- const CALLDATA_GAS_COST = __importStar(require("../../calldata-gas-cost"));
33
- const utils_1 = require("../../utils");
34
- const simple_exchange_1 = require("../simple-exchange");
35
- const config_1 = require("./config");
36
- const angle_staked_stable_pool_1 = require("./angle-staked-stable-pool");
37
- const stagToken_json_1 = __importDefault(require("../../abi/angle/stagToken.json"));
38
- const AngleStakedGasCost = 0;
39
- class AngleStakedStable extends simple_exchange_1.SimpleExchange {
40
- constructor(network, dexKey, dexHelper, adapters = config_1.Adapters[network] || {}) {
41
- super(dexHelper, dexKey);
42
- this.network = network;
43
- this.dexKey = dexKey;
44
- this.dexHelper = dexHelper;
45
- this.adapters = adapters;
46
- this.hasConstantPriceLargeAmounts = false;
47
- this.needWrapNative = true;
48
- this.isFeeOnTransferSupported = false;
49
- this.eventPools = null;
50
- this.isPaused = false;
51
- const config = config_1.AngleStakedStableConfig[dexKey][network];
52
- this.logger = dexHelper.getLogger(dexKey);
53
- this.config = {
54
- stEUR: config.stEUR.toLowerCase(),
55
- agEUR: config.agEUR.toLowerCase(),
56
- };
57
- }
58
- // Initialize pricing is called once in the start of
59
- // pricing service. It is intended to setup the integration
60
- // for pricing requests. It is optional for a DEX to
61
- // implement this function
62
- async initializePricing(blockNumber) {
63
- this.eventPools = new angle_staked_stable_pool_1.AngleStakedStableEventPool(this.dexKey, this.network, this.dexHelper, this.logger, this.config);
64
- await this.eventPools.initialize(blockNumber);
65
- }
66
- // Returns the list of contract adapters (name and index)
67
- // for a buy/sell. Return null if there are no adapters.
68
- getAdapters(side) {
69
- return this.adapters[side] ? this.adapters[side] : null;
70
- }
71
- // Returns list of pool identifiers that can be used
72
- // for a given swap. poolIdentifiers must be unique
73
- // across DEXes. It is recommended to use
74
- // ${dexKey}_${poolAddress} as a poolIdentifier
75
- async getPoolIdentifiers(srcToken, destToken, side, blockNumber) {
76
- if (!this._knownAddress(srcToken, destToken))
77
- return [];
78
- else
79
- return [this.dexKey];
80
- }
81
- // Returns pool prices for amounts.
82
- // If limitPools is defined only pools in limitPools
83
- // should be used. If limitPools is undefined then
84
- // any pools can be used.
85
- async getPricesVolume(srcToken, destToken, amounts, side, blockNumber, limitPools) {
86
- const srcTokenAddress = srcToken.address.toLowerCase();
87
- const destTokenAddress = destToken.address.toLowerCase();
88
- if (!this._knownAddress(srcToken, destToken))
89
- return null;
90
- const state = this.eventPools?.getState(blockNumber);
91
- if (this.eventPools === null || state === undefined || state === null)
92
- return null;
93
- if (srcTokenAddress === this.config.agEUR && side === constants_1.SwapSide.SELL)
94
- return [
95
- {
96
- prices: amounts.map(amount => this.eventPools.getRateDeposit(amount, state)),
97
- unit: this.eventPools.getRateDeposit(1n * BigInt(10 ** 18), state),
98
- gasCost: AngleStakedGasCost,
99
- exchange: this.dexKey,
100
- data: { exchange: `${this.config.stEUR}` },
101
- poolAddresses: [`${this.config.stEUR}_${this.config.agEUR}`],
102
- },
103
- ];
104
- else if (destTokenAddress === this.config.agEUR && side === constants_1.SwapSide.SELL)
105
- return [
106
- {
107
- prices: amounts.map(share => this.eventPools.getRateRedeem(share, state)),
108
- unit: this.eventPools.getRateRedeem(1n * BigInt(10 ** 18), state),
109
- gasCost: AngleStakedGasCost,
110
- exchange: this.dexKey,
111
- data: { exchange: `${this.config.stEUR}` },
112
- poolAddresses: [`${this.config.stEUR}_${this.config.agEUR}`],
113
- },
114
- ];
115
- else if (srcTokenAddress === this.config.agEUR && side === constants_1.SwapSide.BUY)
116
- return [
117
- {
118
- prices: amounts.map(share => this.eventPools.getRateMint(share, state)),
119
- unit: this.eventPools.getRateMint(1n * BigInt(10 ** 18), state),
120
- gasCost: AngleStakedGasCost,
121
- exchange: this.dexKey,
122
- data: { exchange: `${this.config.stEUR}` },
123
- poolAddresses: [`${this.config.stEUR}_${this.config.agEUR}`],
124
- },
125
- ];
126
- else
127
- return [
128
- {
129
- prices: amounts.map(amount => this.eventPools.getRateWithdraw(amount, state)),
130
- unit: this.eventPools.getRateWithdraw(1n * BigInt(10 ** 18), state),
131
- gasCost: AngleStakedGasCost,
132
- exchange: this.dexKey,
133
- data: { exchange: `${this.config.stEUR}` },
134
- poolAddresses: [`${this.config.stEUR}_${this.config.agEUR}`],
135
- },
136
- ];
137
- }
138
- // Returns estimated gas cost of calldata for this DEX in multiSwap
139
- getCalldataGasCost(poolPrices) {
140
- return CALLDATA_GAS_COST.DEX_NO_PAYLOAD;
141
- }
142
- // Encode params required by the exchange adapter
143
- // Used for multiSwap, buy & megaSwap
144
- // Hint: abiCoder.encodeParameter() could be useful
145
- getAdapterParam(srcToken, destToken, srcAmount, destAmount, data, side) {
146
- const { exchange } = data;
147
- // Encode here the payload for adapter
148
- const payload = '';
149
- return {
150
- targetExchange: exchange,
151
- payload,
152
- networkFee: '0',
153
- };
154
- }
155
- // Encode call data used by simpleSwap like routers
156
- // Used for simpleSwap & simpleBuy
157
- // Hint: this.buildSimpleParamWithoutWETHConversion
158
- // could be useful
159
- async getSimpleParam(srcToken, destToken, srcAmount, destAmount, data, side) {
160
- const { exchange } = data;
161
- // Encode here the transaction arguments
162
- const swapData = srcToken.toLowerCase() === this.config.agEUR
163
- ? angle_staked_stable_pool_1.AngleStakedStableEventPool.angleStakedStableIface.encodeFunctionData(side === constants_1.SwapSide.SELL ? 'deposit' : 'mint', [
164
- side === constants_1.SwapSide.SELL ? srcAmount : destAmount,
165
- this.augustusAddress,
166
- ])
167
- : angle_staked_stable_pool_1.AngleStakedStableEventPool.angleStakedStableIface.encodeFunctionData(side === constants_1.SwapSide.SELL ? 'redeem' : 'withdraw', [
168
- side === constants_1.SwapSide.SELL ? srcAmount : destAmount,
169
- this.augustusAddress,
170
- this.augustusAddress,
171
- ]);
172
- return this.buildSimpleParamWithoutWETHConversion(srcToken, srcAmount, destToken, destAmount, swapData, exchange);
173
- }
174
- // This is called once before getTopPoolsForToken is
175
- // called for multiple tokens. This can be helpful to
176
- // update common state required for calculating
177
- // getTopPoolsForToken. It is optional for a DEX
178
- // to implement this
179
- async updatePoolState() {
180
- const tokenBalanceMultiCall = [
181
- {
182
- target: this.config.stEUR,
183
- callData: angle_staked_stable_pool_1.AngleStakedStableEventPool.angleStakedStableIface.encodeFunctionData('paused'),
184
- },
185
- ];
186
- const returnData = (await this.dexHelper.multiContract.methods
187
- .aggregate(tokenBalanceMultiCall)
188
- .call()).returnData;
189
- this.isPaused =
190
- angle_staked_stable_pool_1.AngleStakedStableEventPool.angleStakedStableIface.decodeFunctionResult('paused', returnData[0])[0];
191
- }
192
- // Returns list of top pools based on liquidity. Max
193
- // limit number pools should be returned.
194
- async getTopPoolsForToken(tokenAddress, limit) {
195
- if (this.isPaused ||
196
- (tokenAddress.toLowerCase() != this.config.agEUR &&
197
- tokenAddress.toLowerCase() != this.config.stEUR))
198
- return [];
199
- else
200
- return [
201
- {
202
- exchange: this.dexKey,
203
- address: this.config.stEUR,
204
- connectorTokens: [
205
- tokenAddress.toLowerCase() == this.config.agEUR
206
- ? { address: this.config.stEUR, decimals: 18 }
207
- : { address: this.config.agEUR, decimals: 18 },
208
- ],
209
- // liquidity is infinite as to have been able to mint stEUR, you must have deposited agEUR
210
- liquidityUSD: 1e12,
211
- },
212
- ];
213
- }
214
- // This is optional function in case if your implementation has acquired any resources
215
- // you need to release for graceful shutdown. For example, it may be any interval timer
216
- releaseResources() { }
217
- _knownAddress(srcToken, destToken) {
218
- const srcTokenAddress = srcToken.address.toLowerCase();
219
- const destTokenAddress = destToken.address.toLowerCase();
220
- if (!((srcTokenAddress === this.config.agEUR &&
221
- destTokenAddress === this.config.stEUR) ||
222
- (srcTokenAddress === this.config.stEUR &&
223
- destTokenAddress === this.config.agEUR))) {
224
- return false;
225
- }
226
- return true;
227
- }
228
- }
229
- exports.AngleStakedStable = AngleStakedStable;
230
- AngleStakedStable.wstETHIface = new abi_1.Interface(stagToken_json_1.default);
231
- AngleStakedStable.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.AngleStakedStableConfig);
232
- //# sourceMappingURL=angle-staked-stable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"angle-staked-stable.js","sourceRoot":"","sources":["../../../src/dex/angle-staked-stable/angle-staked-stable.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { DexParams } from './types';
2
- import { DexConfigMap, AdapterMappings } from '../../types';
3
- export declare const AngleStakedStableConfig: DexConfigMap<DexParams>;
4
- export declare const Adapters: Record<number, AdapterMappings>;
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Adapters = exports.AngleStakedStableConfig = void 0;
4
- const constants_1 = require("../../constants");
5
- exports.AngleStakedStableConfig = {
6
- AngleStakedStable: {
7
- [constants_1.Network.ARBITRUM]: {
8
- agEUR: '0xfa5ed56a203466cbbc2430a43c66b9d8723528e7',
9
- stEUR: '0x004626A008B1aCdC4c74ab51644093b155e59A23',
10
- },
11
- [constants_1.Network.MAINNET]: {
12
- agEUR: '0x1a7e4e63778B4f12a199C062f3eFdD288afCBce8',
13
- stEUR: '0x004626A008B1aCdC4c74ab51644093b155e59A23',
14
- },
15
- [constants_1.Network.OPTIMISM]: {
16
- agEUR: '0x9485aca5bbbe1667ad97c7fe7c4531a624c8b1ed',
17
- stEUR: '0x004626A008B1aCdC4c74ab51644093b155e59A23',
18
- },
19
- [constants_1.Network.POLYGON]: {
20
- agEUR: '0xe0b52e49357fd4daf2c15e02058dce6bc0057db4',
21
- stEUR: '0x004626A008B1aCdC4c74ab51644093b155e59A23',
22
- },
23
- },
24
- };
25
- exports.Adapters = {};
26
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/angle-staked-stable/config.ts"],"names":[],"mappings":";;;AAEA,+CAAoD;AAEvC,QAAA,uBAAuB,GAA4B;IAC9D,iBAAiB,EAAE;QACjB,CAAC,mBAAO,CAAC,QAAQ,CAAC,EAAE;YAClB,KAAK,EAAE,4CAA4C;YACnD,KAAK,EAAE,4CAA4C;SACpD;QACD,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,KAAK,EAAE,4CAA4C;YACnD,KAAK,EAAE,4CAA4C;SACpD;QACD,CAAC,mBAAO,CAAC,QAAQ,CAAC,EAAE;YAClB,KAAK,EAAE,4CAA4C;YACnD,KAAK,EAAE,4CAA4C;SACpD;QACD,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,KAAK,EAAE,4CAA4C;YACnD,KAAK,EAAE,4CAA4C;SACpD;KACF;CACF,CAAC;AAEW,QAAA,QAAQ,GAAoC,EAAE,CAAC"}
@@ -1,15 +0,0 @@
1
- import { Address } from '../../types';
2
- export declare type PoolState = {
3
- totalAssets: bigint;
4
- totalSupply: bigint;
5
- lastUpdate: bigint;
6
- rate: bigint;
7
- paused: boolean;
8
- };
9
- export declare type AngleStakedStableData = {
10
- exchange: Address;
11
- };
12
- export declare type DexParams = {
13
- stEUR: Address;
14
- agEUR: Address;
15
- };
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/angle-staked-stable/types.ts"],"names":[],"mappings":""}
@@ -1,43 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import { Address, Logger } from '../../types';
3
- import { ComposedEventSubscriber } from '../../composed-event-subscriber';
4
- import { IDexHelper } from '../../dex-helper/idex-helper';
5
- import { ChainlinkConfig, DexParams, OracleFeed, OracleQuoteType, OracleReadType, PoolConfig, PoolState, PythConfig } from './types';
6
- import { Contract } from 'web3-eth-contract';
7
- import { SwapSide } from '../../constants';
8
- export declare class AngleTransmuterEventPool extends ComposedEventSubscriber<PoolState> {
9
- readonly parentName: string;
10
- protected network: number;
11
- protected dexHelper: IDexHelper;
12
- transmuter: Contract;
13
- static angleTransmuterIface: Interface;
14
- readonly config: PoolConfig;
15
- constructor(parentName: string, network: number, dexHelper: IDexHelper, logger: Logger, config: PoolConfig);
16
- getStateOrGenerate(blockNumber: number): Promise<Readonly<PoolState>>;
17
- getAmountOut(_tokenIn: Address, _tokenOut: Address, side: SwapSide, _amounts: number[], blockNumber: number): Promise<number[] | null>;
18
- static getCollateralsList(transmuterAddress: Address, blockNumber: number | 'latest', multiContract: Contract): Promise<string[]>;
19
- static _fillMap(chainlinkMap: ChainlinkConfig, backedMap: ChainlinkConfig, redstoneMap: ChainlinkConfig, pythIds: PythConfig, oracleFeed: OracleFeed, blockNumber: number | 'latest', multiContract: Contract): Promise<{
20
- chainlinkMap: ChainlinkConfig;
21
- backedMap: ChainlinkConfig;
22
- redstoneMap: ChainlinkConfig;
23
- pythIds: PythConfig;
24
- }>;
25
- static getOraclesConfig(transmuterAddress: Address, pythAddress: Address, collaterals: Address[], blockNumber: number | 'latest', multiContract: Contract): Promise<{
26
- chainlink: ChainlinkConfig;
27
- backed: ChainlinkConfig;
28
- redstone: ChainlinkConfig;
29
- pyth: PythConfig;
30
- }>;
31
- static getConfig(dexParams: DexParams, blockNumber: number | 'latest', multiContract: Contract): Promise<PoolConfig>;
32
- _readMint(config: PoolConfig, state: PoolState, collateral: Address): number;
33
- _getBurnOracle(config: PoolConfig, state: PoolState, collateral: Address): {
34
- oracleValue: number;
35
- minRatio: number;
36
- };
37
- _readBurn(config: PoolConfig, state: PoolState, collateral: Address): {
38
- oracleValue: number;
39
- ratio: number;
40
- };
41
- _quoteAmount(quoteType: OracleQuoteType, baseValue: number): number;
42
- _read(config: PoolConfig, state: PoolState, oracleType: OracleReadType, feed: OracleFeed, baseValue: number): number;
43
- }