@ichidao/ichi-vaults-sdk 0.0.105 → 0.0.107

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 (33) hide show
  1. package/README.md +51 -16
  2. package/dist/src/__tests__/index.test.js +14 -0
  3. package/dist/src/__tests__/index.test.js.map +1 -1
  4. package/dist/src/functions/_vaultEvents.js +114 -53
  5. package/dist/src/functions/_vaultEvents.js.map +1 -1
  6. package/dist/src/functions/getFeeAprs.d.ts +10 -0
  7. package/dist/src/functions/getFeeAprs.js +129 -0
  8. package/dist/src/functions/getFeeAprs.js.map +1 -0
  9. package/dist/src/functions/userBalances.js +14 -14
  10. package/dist/src/functions/userBalances.js.map +1 -1
  11. package/dist/src/functions/vault.js +16 -16
  12. package/dist/src/functions/vault.js.map +1 -1
  13. package/dist/src/graphql/constants.js.map +1 -1
  14. package/dist/src/graphql/functions.d.ts +2 -1
  15. package/dist/src/graphql/functions.js +12 -1
  16. package/dist/src/graphql/functions.js.map +1 -1
  17. package/dist/src/graphql/queries.d.ts +16 -6
  18. package/dist/src/graphql/queries.js +9 -8
  19. package/dist/src/graphql/queries.js.map +1 -1
  20. package/dist/src/index.cjs.js +2 -1
  21. package/dist/src/index.d.ts +1 -0
  22. package/dist/src/index.esm.js +2 -1
  23. package/dist/src/index.js +1 -0
  24. package/dist/src/index.js.map +1 -1
  25. package/dist/src/src/functions/getFeeAprs.d.ts +10 -0
  26. package/dist/src/src/graphql/functions.d.ts +2 -1
  27. package/dist/src/src/graphql/queries.d.ts +16 -6
  28. package/dist/src/src/index.d.ts +1 -0
  29. package/dist/src/src/types/index.d.ts +6 -0
  30. package/dist/src/src/types/vaultQueryData.d.ts +4 -1
  31. package/dist/src/types/index.d.ts +6 -0
  32. package/dist/src/types/vaultQueryData.d.ts +4 -1
  33. package/package.json +1 -1
@@ -0,0 +1,10 @@
1
+ import { JsonRpcProvider } from '@ethersproject/providers';
2
+ import { FeeAprData, SupportedDex } from '../types';
3
+ /**
4
+ * Get fee APR values for a vault from a V2 subgraph
5
+ * @param vaultAddress The address of the vault
6
+ * @param jsonProvider A JsonRpcProvider
7
+ * @param dex The DEX identifier
8
+ * @returns Fee APR data for different time periods or null if data not available
9
+ */
10
+ export declare function getFeeAprs(vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<FeeAprData | null>;
@@ -1,6 +1,7 @@
1
- import { CollectFeesQueryData, RebalancesQueryData, VaultDepositsQueryData, VaultWithdrawsQueryData } from '../types/vaultQueryData';
1
+ import { CollectFeesQueryData, FeeAprQueryResponse, RebalancesQueryData, VaultDepositsQueryData, VaultWithdrawsQueryData } from '../types/vaultQueryData';
2
2
  export declare function sendAllEventsQueryRequest(url: string, vaultAddress: string, createdAtTimestamp_gt: string, query: string): Promise<any>;
3
3
  export declare function sendRebalancesQueryRequest(url: string, vaultAddress: string, createdAtTimestamp_gt: string, query: string): Promise<RebalancesQueryData['vaultRebalances']>;
4
4
  export declare function sendCollectFeesQueryRequest(url: string, vaultAddress: string, createdAtTimestamp_gt: string, query: string): Promise<CollectFeesQueryData['vaultCollectFees']>;
5
5
  export declare function sendDepositsQueryRequest(url: string, vaultAddress: string, createdAtTimestamp_gt: string, query: string): Promise<VaultDepositsQueryData['vaultDeposits']>;
6
6
  export declare function sendWithdrawsQueryRequest(url: string, vaultAddress: string, createdAtTimestamp_gt: string, query: string): Promise<VaultWithdrawsQueryData['vaultWithdraws']>;
7
+ export declare function sendFeeAprQueryRequest(url: string, vaultAddress: string): Promise<FeeAprQueryResponse>;
@@ -2,10 +2,20 @@ export declare function vaultQuery(includeHoldersCount: boolean, version?: numbe
2
2
  export declare function vaultQueryAlgebra(includeHoldersCount: boolean, version?: number): string;
3
3
  export declare function vaultByTokensQuery(version?: number): string;
4
4
  export declare const vaultByPoolQuery: string;
5
- export declare const rebalancesQuery: (page: number) => string;
6
- export declare const vaultCollectFeesQuery: (page: number) => string;
7
- export declare const vaultDepositsQuery: (page: number) => string;
8
- export declare const vaultWithdrawsQuery: (page: number) => string;
9
- export declare const allEventsQuery: (page: number) => string;
10
- export declare const allEventsNoCollectFeesQuery: (page: number) => string;
5
+ export declare const rebalancesQuery: (lastTimestamp: string) => string;
6
+ export declare const vaultCollectFeesQuery: (lastTimestamp: string) => string;
7
+ export declare const vaultDepositsQuery: (lastTimestamp: string) => string;
8
+ export declare const vaultWithdrawsQuery: (lastTimestamp: string) => string;
9
+ export declare const allEventsQuery: (lastTimestamps: {
10
+ rebalances?: string;
11
+ collectFees?: string;
12
+ deposits?: string;
13
+ withdraws?: string;
14
+ }) => string;
15
+ export declare const allEventsNoCollectFeesQuery: (lastTimestamps: {
16
+ rebalances?: string;
17
+ deposits?: string;
18
+ withdraws?: string;
19
+ }) => string;
11
20
  export declare function userBalancesQuery(version?: number): string;
21
+ export declare const feeAprQuery: string;
@@ -10,4 +10,5 @@ export * from './functions/vaultMetrics';
10
10
  export * from './functions/vaultTvl';
11
11
  export * from './functions/chains';
12
12
  export * from './functions/vaultPositions';
13
+ export * from './functions/getFeeAprs';
13
14
  export * from './types/index';
@@ -179,6 +179,12 @@ export type VaultApr = {
179
179
  timeInterval: number;
180
180
  apr: number | null;
181
181
  };
182
+ export type FeeAprData = {
183
+ feeApr_1d: number | null;
184
+ feeApr_3d: number | null;
185
+ feeApr_7d: number | null;
186
+ feeApr_30d: number | null;
187
+ };
182
188
  export type PriceChange = {
183
189
  timeInterval: number;
184
190
  priceChange: number | null;
@@ -1,4 +1,4 @@
1
- import { IchiVault, Fees, VaultTransactionEvent, UserBalances } from '..';
1
+ import { IchiVault, Fees, VaultTransactionEvent, UserBalances, FeeAprData } from '..';
2
2
  export interface VaultQueryData {
3
3
  ichiVault: IchiVault;
4
4
  }
@@ -23,3 +23,6 @@ export interface VaultWithdrawsQueryData {
23
23
  export interface UserBalancesQueryData {
24
24
  user: UserBalances;
25
25
  }
26
+ export interface FeeAprQueryResponse {
27
+ ichiVault: FeeAprData | null;
28
+ }
@@ -179,6 +179,12 @@ export type VaultApr = {
179
179
  timeInterval: number;
180
180
  apr: number | null;
181
181
  };
182
+ export type FeeAprData = {
183
+ feeApr_1d: number | null;
184
+ feeApr_3d: number | null;
185
+ feeApr_7d: number | null;
186
+ feeApr_30d: number | null;
187
+ };
182
188
  export type PriceChange = {
183
189
  timeInterval: number;
184
190
  priceChange: number | null;
@@ -1,4 +1,4 @@
1
- import { IchiVault, Fees, VaultTransactionEvent, UserBalances } from '..';
1
+ import { IchiVault, Fees, VaultTransactionEvent, UserBalances, FeeAprData } from '..';
2
2
  export interface VaultQueryData {
3
3
  ichiVault: IchiVault;
4
4
  }
@@ -23,3 +23,6 @@ export interface VaultWithdrawsQueryData {
23
23
  export interface UserBalancesQueryData {
24
24
  user: UserBalances;
25
25
  }
26
+ export interface FeeAprQueryResponse {
27
+ ichiVault: FeeAprData | null;
28
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ichidao/ichi-vaults-sdk",
3
- "version": "0.0.105",
3
+ "version": "0.0.107",
4
4
  "description": "The ICHI Vaults SDK",
5
5
  "main": "dist/src/index.cjs.js",
6
6
  "module": "dist/src/index.esm.js",