@ichidao/ichi-vaults-sdk 0.0.19 → 0.0.20
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.
- package/README.md +110 -58
- package/dist/abis/types/AlgebraPool.d.ts +817 -0
- package/dist/abis/types/AlgebraPool.js +3 -0
- package/dist/abis/types/AlgebraPool.js.map +1 -0
- package/dist/abis/types/DepositGuard.d.ts +100 -13
- package/dist/abis/types/UniswapV3Pool.d.ts +771 -0
- package/dist/abis/types/UniswapV3Pool.js +3 -0
- package/dist/abis/types/UniswapV3Pool.js.map +1 -0
- package/dist/abis/types/factories/AlgebraPool__factory.d.ts +821 -0
- package/dist/abis/types/factories/AlgebraPool__factory.js +1062 -0
- package/dist/abis/types/factories/AlgebraPool__factory.js.map +1 -0
- package/dist/abis/types/factories/DepositGuard__factory.d.ts +124 -4
- package/dist/abis/types/factories/DepositGuard__factory.js +160 -5
- package/dist/abis/types/factories/DepositGuard__factory.js.map +1 -1
- package/dist/abis/types/factories/UniswapV3Pool__factory.d.ts +781 -0
- package/dist/abis/types/factories/UniswapV3Pool__factory.js +1009 -0
- package/dist/abis/types/factories/UniswapV3Pool__factory.js.map +1 -0
- package/dist/abis/types/factories/index.d.ts +2 -0
- package/dist/abis/types/factories/index.js +5 -1
- package/dist/abis/types/factories/index.js.map +1 -1
- package/dist/abis/types/index.d.ts +4 -0
- package/dist/abis/types/index.js +5 -1
- package/dist/abis/types/index.js.map +1 -1
- package/dist/src/__tests__/index.test.js +37 -41
- package/dist/src/__tests__/index.test.js.map +1 -1
- package/dist/src/abis/types/AlgebraPool.d.ts +817 -0
- package/dist/src/abis/types/DepositGuard.d.ts +100 -13
- package/dist/src/abis/types/UniswapV3Pool.d.ts +771 -0
- package/dist/src/abis/types/factories/AlgebraPool__factory.d.ts +821 -0
- package/dist/src/abis/types/factories/DepositGuard__factory.d.ts +124 -4
- package/dist/src/abis/types/factories/UniswapV3Pool__factory.d.ts +781 -0
- package/dist/src/abis/types/factories/index.d.ts +2 -0
- package/dist/src/abis/types/index.d.ts +4 -0
- package/dist/src/contracts/index.d.ts +4 -1
- package/dist/src/contracts/index.js +21 -1
- package/dist/src/contracts/index.js.map +1 -1
- package/dist/src/functions/balances.js +4 -4
- package/dist/src/functions/balances.js.map +1 -1
- package/dist/src/functions/calculateFees.d.ts +2 -1
- package/dist/src/functions/calculateFees.js +212 -15
- package/dist/src/functions/calculateFees.js.map +1 -1
- package/dist/src/functions/deposit.js +8 -8
- package/dist/src/functions/deposit.js.map +1 -1
- package/dist/src/functions/fees.d.ts +3 -4
- package/dist/src/functions/fees.js +70 -34
- package/dist/src/functions/fees.js.map +1 -1
- package/dist/src/functions/vault.js +2 -2
- package/dist/src/functions/vault.js.map +1 -1
- package/dist/src/functions/withdraw.js +1 -1
- package/dist/src/functions/withdraw.js.map +1 -1
- package/dist/src/graphql/constants.js +18 -12
- package/dist/src/graphql/constants.js.map +1 -1
- package/dist/src/graphql/queries.d.ts +2 -2
- package/dist/src/graphql/queries.js +4 -2
- package/dist/src/graphql/queries.js.map +1 -1
- package/dist/src/index.cjs.js +1 -1
- package/dist/src/index.esm.js +1 -1
- package/dist/src/src/contracts/index.d.ts +4 -1
- package/dist/src/src/functions/calculateFees.d.ts +2 -1
- package/dist/src/src/functions/fees.d.ts +3 -4
- package/dist/src/src/graphql/queries.d.ts +2 -2
- package/dist/src/src/types/index.d.ts +9 -0
- package/dist/src/src/utils/config/addresses.d.ts +5 -1
- package/dist/src/src/utils/getPrice.d.ts +2 -0
- package/dist/src/src/utils/timestamps.d.ts +1 -0
- package/dist/src/types/index.d.ts +9 -0
- package/dist/src/types/index.js +2 -0
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/utils/config/addresses.d.ts +5 -1
- package/dist/src/utils/config/addresses.js +120 -33
- package/dist/src/utils/config/addresses.js.map +1 -1
- package/dist/src/utils/getPrice.d.ts +2 -0
- package/dist/src/utils/getPrice.js +18 -0
- package/dist/src/utils/getPrice.js.map +1 -0
- package/dist/src/utils/timestamps.d.ts +1 -0
- package/dist/src/utils/timestamps.js +7 -0
- package/dist/src/utils/timestamps.js.map +1 -0
- package/package.json +2 -1
package/README.md
CHANGED
@@ -20,8 +20,9 @@ This sdk contains collection of functions to interact with IchiVault's smart con
|
|
20
20
|
* [`getTotalSupply()`](#9-getTotalSupply)
|
21
21
|
* [`getTotalAmounts()`](#10-getTotalAmounts)
|
22
22
|
* [`getFeesCollected()`](#11-getFeesCollected)
|
23
|
-
* [`
|
24
|
-
* [`
|
23
|
+
* [`getFeesCollectedInfo()`](#12-getFeesCollectedInfo)
|
24
|
+
* [`getIchiVaultInfo()`](#13-getIchiVaultInfo)
|
25
|
+
* [`getVaultsByTokens()`](#14-getVaultsByTokens)
|
25
26
|
|
26
27
|
## Installation
|
27
28
|
Install with
|
@@ -44,8 +45,8 @@ npm install @ichidao/ichi-vaults-sdk
|
|
44
45
|
| tokenIdx | 0 \| 1 | - | true
|
45
46
|
| vaultAddress | string | - | true |
|
46
47
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
47
|
-
| dex | SupportedDex | - | true |
|
48
|
-
| amount | string \| number | undefined | false |
|
48
|
+
| dex | SupportedDex | - | true |
|
49
|
+
| amount | string \| number | undefined | false |
|
49
50
|
| overrides | [Overrides](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/contracts/lib/index.d.ts#L7) | undefined | false
|
50
51
|
|
51
52
|
<br/>
|
@@ -61,17 +62,17 @@ const amount = 100
|
|
61
62
|
const dex = SupportedDex.UniswapV3
|
62
63
|
|
63
64
|
const txnDetails = await approveDepositToken(
|
64
|
-
accountAddress,
|
65
|
+
accountAddress,
|
65
66
|
0, // token idx can be 0 or 1
|
66
|
-
vaultAddress,
|
67
|
+
vaultAddress,
|
67
68
|
web3Provider,
|
68
69
|
dex,
|
69
70
|
amount // (optional)
|
70
71
|
);
|
71
72
|
|
72
|
-
await txnDetails.wait();
|
73
|
+
await txnDetails.wait();
|
73
74
|
|
74
|
-
// can now deposit token0
|
75
|
+
// can now deposit token0
|
75
76
|
// ...
|
76
77
|
```
|
77
78
|
|
@@ -82,10 +83,10 @@ await txnDetails.wait();
|
|
82
83
|
| accountAddress | string | - | true
|
83
84
|
| amount0 | string \| number | - | true
|
84
85
|
| amount1 | string \| number | - | true
|
85
|
-
| vaultAddress | string | - | true
|
86
|
+
| vaultAddress | string | - | true
|
86
87
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
87
|
-
| dex | SupportedDex | - | true
|
88
|
-
| percentSlippage | number | 1 | false
|
88
|
+
| dex | SupportedDex | - | true
|
89
|
+
| percentSlippage | number | 1 | false
|
89
90
|
| overrides | [Overrides](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/contracts/lib/index.d.ts#L7) | undefined | false
|
90
91
|
|
91
92
|
<br/>
|
@@ -100,13 +101,13 @@ const dex = SupportedDex.UniswapV3
|
|
100
101
|
const accountAddress = "0xaaaa...aaaaaa"
|
101
102
|
|
102
103
|
const amount0 = 100
|
103
|
-
const amount1 = 0
|
104
|
-
|
104
|
+
const amount1 = 0
|
105
|
+
|
105
106
|
const txnDetails = await deposit(
|
106
107
|
accountAddress,
|
107
108
|
amount0, // can be 0 when only depositing amount1
|
108
109
|
amount1, // can be 0 when only depositing amount0
|
109
|
-
vaultAddress,
|
110
|
+
vaultAddress,
|
110
111
|
web3Provider,
|
111
112
|
dex,
|
112
113
|
1 // acceptable slippage (percents)
|
@@ -119,9 +120,9 @@ const txnDetails = await deposit(
|
|
119
120
|
| -------- | -------- | -------- | --------
|
120
121
|
| accountAddress | string | - | true
|
121
122
|
| shares | string \| number | - | true
|
122
|
-
| vaultAddress | string | - | true
|
123
|
+
| vaultAddress | string | - | true
|
123
124
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
124
|
-
| dex | SupportedDex | - | true
|
125
|
+
| dex | SupportedDex | - | true
|
125
126
|
| overrides | [Overrides](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/contracts/lib/index.d.ts#L7) | undefined | false
|
126
127
|
|
127
128
|
<br/>
|
@@ -137,7 +138,7 @@ const accountAddress = "0xaaaa...aaaaaa"
|
|
137
138
|
|
138
139
|
const totalUserShares: string = await getUserBalance(
|
139
140
|
accountAddress,
|
140
|
-
vaultAddress,
|
141
|
+
vaultAddress,
|
141
142
|
web3Provider
|
142
143
|
dex,
|
143
144
|
)
|
@@ -146,8 +147,8 @@ let shares = Number(totalUserShare) * 0.5 // 50% of user deshare balance
|
|
146
147
|
|
147
148
|
const txnDetails = await withdraw(
|
148
149
|
accountAddress,
|
149
|
-
shares,
|
150
|
-
vaultAddress,
|
150
|
+
shares,
|
151
|
+
vaultAddress,
|
151
152
|
web3Provider,
|
152
153
|
dex
|
153
154
|
)
|
@@ -180,7 +181,7 @@ const isToken0Approved: boolean = await isDepositTokenApproved(
|
|
180
181
|
accountAddress,
|
181
182
|
0, // token idx can be 0 or 1
|
182
183
|
amount,
|
183
|
-
vaultAddress,
|
184
|
+
vaultAddress,
|
184
185
|
web3Provider,
|
185
186
|
dex
|
186
187
|
)
|
@@ -193,7 +194,7 @@ const isToken0Approved: boolean = await isDepositTokenApproved(
|
|
193
194
|
| tokenIdx | 0 \| 1 | - | true
|
194
195
|
| vaultAddress | string | - | true |
|
195
196
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
196
|
-
| dex | SupportedDex | - | true |
|
197
|
+
| dex | SupportedDex | - | true |
|
197
198
|
|
198
199
|
<br/>
|
199
200
|
|
@@ -207,7 +208,7 @@ const dex = SupportedDex.UniswapV3
|
|
207
208
|
|
208
209
|
const isAllowed = await isTokenAllowed(
|
209
210
|
0, // token idx can be 0 or 1
|
210
|
-
vaultAddress,
|
211
|
+
vaultAddress,
|
211
212
|
web3Provider,
|
212
213
|
dex
|
213
214
|
)
|
@@ -221,7 +222,7 @@ const isAllowed = await isTokenAllowed(
|
|
221
222
|
| tokenIdx | 0 \| 1 | - | true
|
222
223
|
| vaultAddress | string | - | true |
|
223
224
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
224
|
-
| dex | SupportedDex | - | true |
|
225
|
+
| dex | SupportedDex | - | true |
|
225
226
|
|
226
227
|
<br/>
|
227
228
|
|
@@ -235,7 +236,7 @@ const dex = SupportedDex.UniswapV3
|
|
235
236
|
|
236
237
|
const maxAmount = await getMaxDepositAmount(
|
237
238
|
0, // token idx can be 0 or 1
|
238
|
-
vaultAddress,
|
239
|
+
vaultAddress,
|
239
240
|
web3Provider,
|
240
241
|
dex
|
241
242
|
)
|
@@ -249,8 +250,8 @@ const maxAmount = await getMaxDepositAmount(
|
|
249
250
|
| accountAddress | string | - | true |
|
250
251
|
| vaultAddress | string | - | true |
|
251
252
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
252
|
-
| dex | SupportedDex | - | true
|
253
|
-
| raw | true | undefined | false |
|
253
|
+
| dex | SupportedDex | - | true
|
254
|
+
| raw | true | undefined | false |
|
254
255
|
|
255
256
|
<br/>
|
256
257
|
|
@@ -265,16 +266,16 @@ const accountAddress = "0xaaaa...aaaaaa"
|
|
265
266
|
|
266
267
|
const shares: string = await getUserBalance(
|
267
268
|
accountAddress,
|
268
|
-
vaultAddress,
|
269
|
+
vaultAddress,
|
269
270
|
web3Provider
|
270
271
|
dex
|
271
272
|
)
|
272
273
|
|
273
|
-
// - or -
|
274
|
+
// - or -
|
274
275
|
|
275
276
|
const sharesBN: BigNumber = await getUserBalance(
|
276
277
|
accountAddress,
|
277
|
-
vaultAddress,
|
278
|
+
vaultAddress,
|
278
279
|
web3Provider
|
279
280
|
dex,
|
280
281
|
true
|
@@ -288,8 +289,8 @@ const sharesBN: BigNumber = await getUserBalance(
|
|
288
289
|
| accountAddress | string | - | true |
|
289
290
|
| vaultAddress | string | - | true |
|
290
291
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
291
|
-
| dex | SupportedDex | - | true
|
292
|
-
| raw | true | undefined | false |
|
292
|
+
| dex | SupportedDex | - | true
|
293
|
+
| raw | true | undefined | false |
|
293
294
|
|
294
295
|
<br/>
|
295
296
|
|
@@ -304,16 +305,16 @@ const accountAddress = "0xaaaa...aaaaaa"
|
|
304
305
|
|
305
306
|
const amounts: [string, string] & {amount0: string, amount1: string} = await getUserAmounts(
|
306
307
|
accountAddress,
|
307
|
-
vaultAddress,
|
308
|
+
vaultAddress,
|
308
309
|
web3Provider
|
309
310
|
dex,
|
310
311
|
)
|
311
312
|
|
312
|
-
// - or -
|
313
|
+
// - or -
|
313
314
|
|
314
315
|
const amountsBN: [BigNumber, BigNumber] & {amount0: BigNumber, amount1: BigNumber} = await getUserAmounts(
|
315
316
|
accountAddress,
|
316
|
-
vaultAddress,
|
317
|
+
vaultAddress,
|
317
318
|
web3Provider
|
318
319
|
dex,
|
319
320
|
true
|
@@ -326,8 +327,8 @@ const amountsBN: [BigNumber, BigNumber] & {amount0: BigNumber, amount1: BigNumbe
|
|
326
327
|
| -------- | -------- | -------- | --------
|
327
328
|
| vaultAddress | string | - | true |
|
328
329
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
329
|
-
| dex | SupportedDex | - | true
|
330
|
-
| raw | true | undefined | false |
|
330
|
+
| dex | SupportedDex | - | true
|
331
|
+
| raw | true | undefined | false |
|
331
332
|
|
332
333
|
<br/>
|
333
334
|
|
@@ -341,16 +342,16 @@ const dex = SupportedDex.UniswapV3
|
|
341
342
|
|
342
343
|
const shares: string = await getTotalSupply(
|
343
344
|
accountAddress,
|
344
|
-
vaultAddress,
|
345
|
+
vaultAddress,
|
345
346
|
web3Provider
|
346
347
|
dex,
|
347
348
|
)
|
348
349
|
|
349
|
-
// - or -
|
350
|
+
// - or -
|
350
351
|
|
351
352
|
const sharesBN: BigNumber = await getTotalSupply(
|
352
353
|
accountAddress,
|
353
|
-
vaultAddress,
|
354
|
+
vaultAddress,
|
354
355
|
web3Provider
|
355
356
|
dex,
|
356
357
|
true
|
@@ -363,8 +364,8 @@ const sharesBN: BigNumber = await getTotalSupply(
|
|
363
364
|
| -------- | -------- | -------- | --------
|
364
365
|
| vaultAddress | string | - | true |
|
365
366
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
366
|
-
| dex | SupportedDex | - | true
|
367
|
-
| raw | true | undefined | false |
|
367
|
+
| dex | SupportedDex | - | true
|
368
|
+
| raw | true | undefined | false |
|
368
369
|
|
369
370
|
<br/>
|
370
371
|
|
@@ -379,16 +380,16 @@ const accountAddress = "0xaaaa...aaaaaa"
|
|
379
380
|
|
380
381
|
const amounts: [string, string] & {total0: string, total1: string} = await getTotalAmounts(
|
381
382
|
accountAddress,
|
382
|
-
vaultAddress,
|
383
|
+
vaultAddress,
|
383
384
|
web3Provider
|
384
385
|
dex,
|
385
386
|
)
|
386
387
|
|
387
|
-
// - or -
|
388
|
+
// - or -
|
388
389
|
|
389
390
|
const amountsBN: [BigNumber, BigNumber] & {total0: BigNumber, total1: BigNumber} = await getTotalAmounts(
|
390
391
|
accountAddress,
|
391
|
-
vaultAddress,
|
392
|
+
vaultAddress,
|
392
393
|
web3Provider
|
393
394
|
dex,
|
394
395
|
true
|
@@ -401,9 +402,9 @@ const amountsBN: [BigNumber, BigNumber] & {total0: BigNumber, total1: BigNumber}
|
|
401
402
|
| -------- | -------- | -------- | --------
|
402
403
|
| vaultAddress | string | - | true |
|
403
404
|
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
404
|
-
| dex | SupportedDex | - | true
|
405
|
-
| rawOrDays | true or number | undefined | false |
|
406
|
-
| days | number | undefined | false |
|
405
|
+
| dex | SupportedDex | - | true
|
406
|
+
| rawOrDays | true or number | undefined | false |
|
407
|
+
| days | number | undefined | false |
|
407
408
|
|
408
409
|
<br/>
|
409
410
|
|
@@ -417,33 +418,33 @@ const dex = SupportedDex.UniswapV3;
|
|
417
418
|
const days = 7;
|
418
419
|
|
419
420
|
const amounts: [string, string] & {total0: string, total1: string} = await getFeesCollected(
|
420
|
-
vaultAddress,
|
421
|
+
vaultAddress,
|
421
422
|
web3Provider
|
422
423
|
dex,
|
423
424
|
)
|
424
425
|
|
425
|
-
// - or -
|
426
|
+
// - or -
|
426
427
|
|
427
428
|
const amountsBN: [BigNumber, BigNumber] & {total0: BigNumber, total1: BigNumber} = await getFeesCollected(
|
428
|
-
vaultAddress,
|
429
|
+
vaultAddress,
|
429
430
|
web3Provider
|
430
431
|
dex,
|
431
432
|
true
|
432
433
|
)
|
433
434
|
|
434
|
-
// - or -
|
435
|
+
// - or -
|
435
436
|
|
436
437
|
const amounts: [string, string] & {total0: string, total1: string} = await getFeesCollected(
|
437
|
-
vaultAddress,
|
438
|
+
vaultAddress,
|
438
439
|
web3Provider
|
439
440
|
dex,
|
440
441
|
days
|
441
442
|
)
|
442
443
|
|
443
|
-
// - or -
|
444
|
+
// - or -
|
444
445
|
|
445
446
|
const amountsBN: [BigNumber, BigNumber] & {total0: BigNumber, total1: BigNumber} = await getFeesCollected(
|
446
|
-
vaultAddress,
|
447
|
+
vaultAddress,
|
447
448
|
web3Provider
|
448
449
|
dex,
|
449
450
|
true,
|
@@ -451,12 +452,50 @@ const amountsBN: [BigNumber, BigNumber] & {total0: BigNumber, total1: BigNumber}
|
|
451
452
|
)
|
452
453
|
```
|
453
454
|
|
454
|
-
#### 12. `
|
455
|
+
#### 12. `getFeesCollectedInfo()`
|
456
|
+
|
457
|
+
| param | type | default | required
|
458
|
+
| -------- | -------- | -------- | --------
|
459
|
+
| vaultAddress | string | - | true |
|
460
|
+
| jsonProvider | [JsonRpcProvider](https://github.com/ethers-io/ethers.js/blob/f97b92bbb1bde22fcc44100af78d7f31602863ab/packages/providers/src.ts/json-rpc-provider.ts#L393) | - | true
|
461
|
+
| dex | SupportedDex | - | true
|
462
|
+
| forDays | number[] | undefined | false |
|
463
|
+
|
464
|
+
<br/>
|
465
|
+
If forDays is not specified, returns FeesInfo for time periods of 1, 7, and 30 days.
|
466
|
+
<br/>
|
467
|
+
|
468
|
+
```typescript
|
469
|
+
import { Web3Provider } from '@ethersproject/providers';
|
470
|
+
import { getFeesCollectedInfo, SupportedDex } from '@ichidao/ichi-vaults-sdk';
|
471
|
+
|
472
|
+
const web3Provider = new Web3Provider(YOUR_WEB3_PROVIDER);
|
473
|
+
const vaultAddress = "0x3ac9...a5f132";
|
474
|
+
const dex = SupportedDex.UniswapV3;
|
475
|
+
const days = [2, 5, 14, 60];
|
476
|
+
|
477
|
+
const feesInfo: FeesInfo[] = await getFeesCollectedInfo(
|
478
|
+
vaultAddress,
|
479
|
+
web3Provider
|
480
|
+
dex,
|
481
|
+
)
|
482
|
+
|
483
|
+
// - or -
|
484
|
+
|
485
|
+
const feesInfo: FeesInfo[] = await getFeesCollectedInfo(
|
486
|
+
vaultAddress,
|
487
|
+
web3Provider
|
488
|
+
dex,
|
489
|
+
days,
|
490
|
+
)
|
491
|
+
```
|
492
|
+
|
493
|
+
#### 13. `getIchiVaultInfo()`
|
455
494
|
|
456
495
|
| param | type | default | required
|
457
496
|
| -------- | -------- | -------- | --------
|
458
497
|
| chain | SupportedChain | - | true
|
459
|
-
| dex | SupportedDex | - | true
|
498
|
+
| dex | SupportedDex | - | true
|
460
499
|
| vaultAddress | string | - | true |
|
461
500
|
| jsonProvider | JsonRpcProvider | - | false |
|
462
501
|
|
@@ -476,12 +515,12 @@ if (vaultInfo) {
|
|
476
515
|
}
|
477
516
|
```
|
478
517
|
|
479
|
-
####
|
518
|
+
#### 14. `getVaultsByTokens()`
|
480
519
|
|
481
520
|
| param | type | default | required
|
482
521
|
| -------- | -------- | -------- | --------
|
483
522
|
| chain | SupportedChain | - | true
|
484
|
-
| dex | SupportedDex | - | true
|
523
|
+
| dex | SupportedDex | - | true
|
485
524
|
| depositTokenAddress | string | - | true |
|
486
525
|
| pairedTokenAddress | string | - | true |
|
487
526
|
|
@@ -513,6 +552,7 @@ enum SupportedChainId {
|
|
513
552
|
arbitrum = 42161,
|
514
553
|
bsc = 56,
|
515
554
|
eon = 7332,
|
555
|
+
fantom = 250,
|
516
556
|
hedera_testnet = 296,
|
517
557
|
linea = 59144,
|
518
558
|
mainnet = 1,
|
@@ -528,6 +568,7 @@ enum SupportedChainId {
|
|
528
568
|
enum SupportedDex {
|
529
569
|
Ascent = 'Ascent',
|
530
570
|
Blueprint = 'Blueprint',
|
571
|
+
Equalizer = 'Equalizer',
|
531
572
|
Horiza = 'Horiza',
|
532
573
|
Lynex = 'Lynex',
|
533
574
|
Pancakeswap = 'PancakeSwap',
|
@@ -553,3 +594,14 @@ interface IchiVault {
|
|
553
594
|
allowTokenB: boolean;
|
554
595
|
}
|
555
596
|
```
|
597
|
+
|
598
|
+
### FeesInfo
|
599
|
+
|
600
|
+
```typescript
|
601
|
+
type FeesInfo = {
|
602
|
+
timePeriod: number; // in days
|
603
|
+
feeAmount0: string; // in token0
|
604
|
+
feeAmount1: string; // in token1
|
605
|
+
pctAPR: number; // yearly APR based on the timePeriod
|
606
|
+
}
|
607
|
+
```
|