@ichidao/ichi-vaults-sdk 0.0.112 → 0.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.
Files changed (72) hide show
  1. package/README.md +163 -0
  2. package/dist/abis/types/MultiFeeDistributer.d.ts +475 -0
  3. package/dist/abis/types/MultiFeeDistributer.js +3 -0
  4. package/dist/abis/types/MultiFeeDistributer.js.map +1 -0
  5. package/dist/abis/types/factories/MultiFeeDistributer__factory.d.ts +451 -0
  6. package/dist/abis/types/factories/MultiFeeDistributer__factory.js +596 -0
  7. package/dist/abis/types/factories/MultiFeeDistributer__factory.js.map +1 -0
  8. package/dist/abis/types/factories/index.d.ts +1 -0
  9. package/dist/abis/types/factories/index.js +3 -1
  10. package/dist/abis/types/factories/index.js.map +1 -1
  11. package/dist/abis/types/index.d.ts +2 -0
  12. package/dist/abis/types/index.js +3 -1
  13. package/dist/abis/types/index.js.map +1 -1
  14. package/dist/src/__tests__/index.test.js +74 -1
  15. package/dist/src/__tests__/index.test.js.map +1 -1
  16. package/dist/src/abis/types/MultiFeeDistributer.d.ts +475 -0
  17. package/dist/src/abis/types/factories/MultiFeeDistributer__factory.d.ts +451 -0
  18. package/dist/src/abis/types/factories/index.d.ts +1 -0
  19. package/dist/src/abis/types/index.d.ts +2 -0
  20. package/dist/src/contracts/index.d.ts +2 -1
  21. package/dist/src/contracts/index.js +11 -1
  22. package/dist/src/contracts/index.js.map +1 -1
  23. package/dist/src/functions/claimRewards.d.ts +14 -0
  24. package/dist/src/functions/claimRewards.js +108 -0
  25. package/dist/src/functions/claimRewards.js.map +1 -0
  26. package/dist/src/functions/rewardInfo.d.ts +3 -0
  27. package/dist/src/functions/rewardInfo.js +176 -0
  28. package/dist/src/functions/rewardInfo.js.map +1 -0
  29. package/dist/src/functions/userBalances.d.ts +1 -1
  30. package/dist/src/functions/userBalances.js +64 -29
  31. package/dist/src/functions/userBalances.js.map +1 -1
  32. package/dist/src/functions/userRewards.d.ts +7 -0
  33. package/dist/src/functions/userRewards.js +132 -0
  34. package/dist/src/functions/userRewards.js.map +1 -0
  35. package/dist/src/functions/vault.d.ts +2 -1
  36. package/dist/src/functions/vault.js +75 -26
  37. package/dist/src/functions/vault.js.map +1 -1
  38. package/dist/src/graphql/constants.js +53 -46
  39. package/dist/src/graphql/constants.js.map +1 -1
  40. package/dist/src/graphql/queries.d.ts +14 -1
  41. package/dist/src/graphql/queries.js +57 -18
  42. package/dist/src/graphql/queries.js.map +1 -1
  43. package/dist/src/index.cjs.js +4 -1
  44. package/dist/src/index.d.ts +3 -0
  45. package/dist/src/index.esm.js +4 -1
  46. package/dist/src/index.js +3 -0
  47. package/dist/src/index.js.map +1 -1
  48. package/dist/src/src/contracts/index.d.ts +2 -1
  49. package/dist/src/src/functions/claimRewards.d.ts +14 -0
  50. package/dist/src/src/functions/rewardInfo.d.ts +3 -0
  51. package/dist/src/src/functions/userBalances.d.ts +1 -1
  52. package/dist/src/src/functions/userRewards.d.ts +7 -0
  53. package/dist/src/src/functions/vault.d.ts +2 -1
  54. package/dist/src/src/graphql/queries.d.ts +14 -1
  55. package/dist/src/src/index.d.ts +3 -0
  56. package/dist/src/src/types/index.d.ts +39 -0
  57. package/dist/src/src/types/vaultQueryData.d.ts +10 -1
  58. package/dist/src/src/utils/isVelodrome.d.ts +2 -0
  59. package/dist/src/src/utils/multicallUtils.d.ts +2 -0
  60. package/dist/src/types/index.d.ts +39 -0
  61. package/dist/src/types/index.js +2 -0
  62. package/dist/src/types/index.js.map +1 -1
  63. package/dist/src/types/vaultQueryData.d.ts +10 -1
  64. package/dist/src/utils/config/addresses.js +113 -101
  65. package/dist/src/utils/config/addresses.js.map +1 -1
  66. package/dist/src/utils/isVelodrome.d.ts +2 -0
  67. package/dist/src/utils/isVelodrome.js +11 -0
  68. package/dist/src/utils/isVelodrome.js.map +1 -0
  69. package/dist/src/utils/multicallUtils.d.ts +2 -0
  70. package/dist/src/utils/multicallUtils.js +19 -1
  71. package/dist/src/utils/multicallUtils.js.map +1 -1
  72. package/package.json +1 -1
@@ -3,10 +3,24 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
3
3
  if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
4
  return cooked;
5
5
  };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
6
9
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.feeAprQuery = exports.userBalancesQuery = exports.allEventsNoCollectFeesQuery = exports.allEventsQuery = exports.vaultWithdrawsQuery = exports.vaultDepositsQuery = exports.vaultCollectFeesQuery = exports.rebalancesQuery = exports.vaultByPoolQuery = exports.vaultByTokensQuery = exports.vaultQueryAlgebra = exports.vaultQuery = void 0;
10
+ exports.allRewardVaults = exports.allRewardInfoQuery = exports.rewardInfoQuery = exports.feeAprQuery = exports.getUserBalancesQuery = exports.allEventsNoCollectFeesQuery = exports.allEventsQuery = exports.vaultWithdrawsQuery = exports.vaultDepositsQuery = exports.vaultCollectFeesQuery = exports.rebalancesQuery = exports.vaultByPoolQuery = exports.vaultByTokensQuery = exports.getVaultQuery = exports.vaultQueryVelodrome = exports.vaultQueryAlgebra = exports.vaultQuery = void 0;
8
11
  // eslint-disable-next-line import/no-unresolved
9
12
  var graphql_request_1 = require("graphql-request");
13
+ var types_1 = require("../types");
14
+ var addresses_1 = require("../utils/config/addresses");
15
+ var getGraphUrls_1 = __importDefault(require("../utils/getGraphUrls"));
16
+ var isVelodrome_1 = require("../utils/isVelodrome");
17
+ function noHoldersCount(dex, chainId) {
18
+ return (dex === types_1.SupportedDex.Fenix ||
19
+ dex === types_1.SupportedDex.Henjin ||
20
+ dex === types_1.SupportedDex.Thirdfy ||
21
+ (dex === types_1.SupportedDex.Sushiswap && chainId === types_1.SupportedChainId.skale_europa) ||
22
+ (dex === types_1.SupportedDex.Velocore && chainId === types_1.SupportedChainId.zksync_era_testnet));
23
+ }
10
24
  function vaultQuery(includeHoldersCount, version) {
11
25
  if (version === void 0) { version = 1; }
12
26
  // Version 2 uses token0/token1 instead of tokenA/tokenB
@@ -27,36 +41,61 @@ function vaultQueryAlgebra(includeHoldersCount, version) {
27
41
  return (0, graphql_request_1.gql)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n id\n tokenA\n tokenB\n allowTokenA\n allowTokenB\n ", "\n }\n }\n "], ["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n id\n tokenA\n tokenB\n allowTokenA\n allowTokenB\n ", "\n }\n }\n "])), includeHoldersCount ? 'holdersCount' : '');
28
42
  }
29
43
  exports.vaultQueryAlgebra = vaultQueryAlgebra;
44
+ exports.vaultQueryVelodrome = (0, graphql_request_1.gql)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n id\n token0\n token1\n allowToken0\n allowToken1\n holdersCount\n farmingContract {\n id\n rewardToken\n rewardTokenDecimals\n }\n }\n }\n"], ["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n id\n token0\n token1\n allowToken0\n allowToken1\n holdersCount\n farmingContract {\n id\n rewardToken\n rewardTokenDecimals\n }\n }\n }\n"])));
45
+ /**
46
+ * Returns the appropriate GraphQL query for vault information based on chain and DEX configuration
47
+ *
48
+ * @param chainId - The blockchain ID
49
+ * @param dex - The decentralized exchange
50
+ * @returns The appropriate GraphQL query string
51
+ */
52
+ function getVaultQuery(chainId, dex) {
53
+ var _a, _b, _c, _d;
54
+ var includeHoldersCount = !noHoldersCount(dex, chainId);
55
+ var version = (0, getGraphUrls_1.default)(chainId, dex).version;
56
+ // Check for Velodrome AMM version first
57
+ if ((0, isVelodrome_1.isVelodromeDex)(chainId, dex)) {
58
+ return exports.vaultQueryVelodrome;
59
+ }
60
+ var isAlgebra = (_b = (_a = addresses_1.addressConfig[chainId]) === null || _a === void 0 ? void 0 : _a[dex]) === null || _b === void 0 ? void 0 : _b.isAlgebra;
61
+ var is2Thick = (_d = (_c = addresses_1.addressConfig[chainId]) === null || _c === void 0 ? void 0 : _c[dex]) === null || _d === void 0 ? void 0 : _d.is2Thick;
62
+ return isAlgebra || is2Thick
63
+ ? vaultQueryAlgebra(includeHoldersCount, version)
64
+ : vaultQuery(includeHoldersCount, version);
65
+ }
66
+ exports.getVaultQuery = getVaultQuery;
30
67
  function vaultByTokensQuery(version) {
31
68
  if (version === void 0) { version = 1; }
32
69
  // Version 2 uses token0/token1 instead of tokenA/tokenB
33
70
  if (version === 2) {
34
- return (0, graphql_request_1.gql)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { token0: $addressTokenA, token1: $addressTokenB }) {\n id\n token0\n token1\n allowToken0\n allowToken1\n }\n }\n "], ["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { token0: $addressTokenA, token1: $addressTokenB }) {\n id\n token0\n token1\n allowToken0\n allowToken1\n }\n }\n "])));
71
+ return (0, graphql_request_1.gql)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { token0: $addressTokenA, token1: $addressTokenB }) {\n id\n token0\n token1\n allowToken0\n allowToken1\n }\n }\n "], ["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { token0: $addressTokenA, token1: $addressTokenB }) {\n id\n token0\n token1\n allowToken0\n allowToken1\n }\n }\n "])));
35
72
  }
36
- return (0, graphql_request_1.gql)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { tokenA: $addressTokenA, tokenB: $addressTokenB }) {\n id\n tokenA\n tokenB\n allowTokenA\n allowTokenB\n }\n }\n "], ["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { tokenA: $addressTokenA, tokenB: $addressTokenB }) {\n id\n tokenA\n tokenB\n allowTokenA\n allowTokenB\n }\n }\n "])));
73
+ return (0, graphql_request_1.gql)(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { tokenA: $addressTokenA, tokenB: $addressTokenB }) {\n id\n tokenA\n tokenB\n allowTokenA\n allowTokenB\n }\n }\n "], ["\n query ($addressTokenA: String!, $addressTokenB: String!) {\n ichiVaults(where: { tokenA: $addressTokenA, tokenB: $addressTokenB }) {\n id\n tokenA\n tokenB\n allowTokenA\n allowTokenB\n }\n }\n "])));
37
74
  }
38
75
  exports.vaultByTokensQuery = vaultByTokensQuery;
39
- exports.vaultByPoolQuery = (0, graphql_request_1.gql)(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n query ($poolAddress: String!) {\n deployICHIVaults(where: { pool: $poolAddress }) {\n vault\n }\n }\n"], ["\n query ($poolAddress: String!) {\n deployICHIVaults(where: { pool: $poolAddress }) {\n vault\n }\n }\n"])));
40
- var rebalancesQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "\"".concat(lastTimestamp, "\"") : '$createdAtTimestamp_gt'); };
76
+ exports.vaultByPoolQuery = (0, graphql_request_1.gql)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n query ($poolAddress: String!) {\n deployICHIVaults(where: { pool: $poolAddress }) {\n vault\n }\n }\n"], ["\n query ($poolAddress: String!) {\n deployICHIVaults(where: { pool: $poolAddress }) {\n vault\n }\n }\n"])));
77
+ var rebalancesQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "\"".concat(lastTimestamp, "\"") : '$createdAtTimestamp_gt'); };
41
78
  exports.rebalancesQuery = rebalancesQuery;
42
- var vaultCollectFeesQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: $createdAtTimestamp_gt,\n ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: $createdAtTimestamp_gt,\n ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "createdAtTimestamp_gt: \"".concat(lastTimestamp, "\"") : ''); };
79
+ var vaultCollectFeesQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: $createdAtTimestamp_gt,\n ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: $createdAtTimestamp_gt,\n ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "createdAtTimestamp_gt: \"".concat(lastTimestamp, "\"") : ''); };
43
80
  exports.vaultCollectFeesQuery = vaultCollectFeesQuery;
44
- var vaultDepositsQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "\"".concat(lastTimestamp, "\"") : '$createdAtTimestamp_gt'); };
81
+ var vaultDepositsQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "\"".concat(lastTimestamp, "\"") : '$createdAtTimestamp_gt'); };
45
82
  exports.vaultDepositsQuery = vaultDepositsQuery;
46
- var vaultWithdrawsQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "\"".concat(lastTimestamp, "\"") : '$createdAtTimestamp_gt'); };
83
+ var vaultWithdrawsQuery = function (lastTimestamp) { return (0, graphql_request_1.gql)(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamp ? "\"".concat(lastTimestamp, "\"") : '$createdAtTimestamp_gt'); };
47
84
  exports.vaultWithdrawsQuery = vaultWithdrawsQuery;
48
- var allEventsQuery = function (lastTimestamps) { return (0, graphql_request_1.gql)(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamps.rebalances ? "\"".concat(lastTimestamps.rebalances, "\"") : '$createdAtTimestamp_gt', lastTimestamps.collectFees ? "\"".concat(lastTimestamps.collectFees, "\"") : '$createdAtTimestamp_gt', lastTimestamps.deposits ? "\"".concat(lastTimestamps.deposits, "\"") : '$createdAtTimestamp_gt', lastTimestamps.withdraws ? "\"".concat(lastTimestamps.withdraws, "\"") : '$createdAtTimestamp_gt'); };
85
+ var allEventsQuery = function (lastTimestamps) { return (0, graphql_request_1.gql)(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultCollectFees(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamps.rebalances ? "\"".concat(lastTimestamps.rebalances, "\"") : '$createdAtTimestamp_gt', lastTimestamps.collectFees ? "\"".concat(lastTimestamps.collectFees, "\"") : '$createdAtTimestamp_gt', lastTimestamps.deposits ? "\"".concat(lastTimestamps.deposits, "\"") : '$createdAtTimestamp_gt', lastTimestamps.withdraws ? "\"".concat(lastTimestamps.withdraws, "\"") : '$createdAtTimestamp_gt'); };
49
86
  exports.allEventsQuery = allEventsQuery;
50
- var allEventsNoCollectFeesQuery = function (lastTimestamps) { return (0, graphql_request_1.gql)(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamps.rebalances ? "\"".concat(lastTimestamps.rebalances, "\"") : '$createdAtTimestamp_gt', lastTimestamps.deposits ? "\"".concat(lastTimestamps.deposits, "\"") : '$createdAtTimestamp_gt', lastTimestamps.withdraws ? "\"".concat(lastTimestamps.withdraws, "\"") : '$createdAtTimestamp_gt'); };
87
+ var allEventsNoCollectFeesQuery = function (lastTimestamps) { return (0, graphql_request_1.gql)(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"], ["\n query ($vaultAddress: String!, $createdAtTimestamp_gt: String!) {\n vaultRebalances(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n feeAmount0\n feeAmount1\n totalAmount0\n totalAmount1\n createdAtTimestamp\n vault\n sqrtPrice\n totalSupply\n },\n vaultDeposits(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n vault\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n sqrtPrice\n totalSupply\n },\n vaultWithdraws(\n first: 1000,\n where: {\n vault: $vaultAddress,\n createdAtTimestamp_gt: ", "\n },\n orderBy: createdAtTimestamp,\n orderDirection: asc\n ) {\n createdAtTimestamp\n totalAmount0\n totalAmount1\n totalAmount0BeforeEvent\n totalAmount1BeforeEvent\n vault\n sqrtPrice\n totalSupply\n }\n }\n"])), lastTimestamps.rebalances ? "\"".concat(lastTimestamps.rebalances, "\"") : '$createdAtTimestamp_gt', lastTimestamps.deposits ? "\"".concat(lastTimestamps.deposits, "\"") : '$createdAtTimestamp_gt', lastTimestamps.withdraws ? "\"".concat(lastTimestamps.withdraws, "\"") : '$createdAtTimestamp_gt'); };
51
88
  exports.allEventsNoCollectFeesQuery = allEventsNoCollectFeesQuery;
52
- function userBalancesQuery(version) {
53
- if (version === void 0) { version = 1; }
54
- if (version === 2) {
55
- return (0, graphql_request_1.gql)(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n query ($accountAddress: String!) {\n user(id: $accountAddress) {\n vaultShares {\n vault {\n id\n token0\n token1\n }\n vaultShareBalance\n }\n }\n }\n "], ["\n query ($accountAddress: String!) {\n user(id: $accountAddress) {\n vaultShares {\n vault {\n id\n token0\n token1\n }\n vaultShareBalance\n }\n }\n }\n "])));
56
- }
57
- return (0, graphql_request_1.gql)(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n query ($accountAddress: String!) {\n user(id: $accountAddress) {\n vaultShares {\n vault {\n id\n tokenA\n tokenB\n }\n vaultShareBalance\n }\n }\n }\n "], ["\n query ($accountAddress: String!) {\n user(id: $accountAddress) {\n vaultShares {\n vault {\n id\n tokenA\n tokenB\n }\n vaultShareBalance\n }\n }\n }\n "])));
89
+ function getUserBalancesQuery(chainId, dex) {
90
+ var version = (0, getGraphUrls_1.default)(chainId, dex).version;
91
+ // Check for Velodrome AMM version first
92
+ var isVelodrome = (0, isVelodrome_1.isVelodromeDex)(chainId, dex);
93
+ return (0, graphql_request_1.gql)(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n query ($accountAddress: String!) {\n user(id: $accountAddress) {\n vaultShares {\n vault {\n id\n ", "\n ", "\n ", "\n }\n vaultShareBalance\n ", "\n }\n }\n }\n "], ["\n query ($accountAddress: String!) {\n user(id: $accountAddress) {\n vaultShares {\n vault {\n id\n ", "\n ", "\n ", "\n }\n vaultShareBalance\n ", "\n }\n }\n }\n "])), version === 2 ? 'token0' : 'tokenA', version === 2 ? 'token1' : 'tokenB', isVelodrome ? 'farmingContract { id }' : '', isVelodrome ? 'stakedVaultShareBalance' : '');
58
94
  }
59
- exports.userBalancesQuery = userBalancesQuery;
95
+ exports.getUserBalancesQuery = getUserBalancesQuery;
60
96
  exports.feeAprQuery = (0, graphql_request_1.gql)(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n feeApr_1d\n feeApr_3d\n feeApr_7d\n feeApr_30d\n }\n }\n"], ["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n feeApr_1d\n feeApr_3d\n feeApr_7d\n feeApr_30d\n }\n }\n"])));
61
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16;
97
+ exports.rewardInfoQuery = (0, graphql_request_1.gql)(templateObject_17 || (templateObject_17 = __makeTemplateObject(["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n id\n rewardRatePerToken_1d\n rewardRatePerToken_3d\n farmingContract {\n id\n rewardToken\n }\n }\n }\n"], ["\n query ($vaultAddress: String!) {\n ichiVault(id: $vaultAddress) {\n id\n rewardRatePerToken_1d\n rewardRatePerToken_3d\n farmingContract {\n id\n rewardToken\n }\n }\n }\n"])));
98
+ exports.allRewardInfoQuery = (0, graphql_request_1.gql)(templateObject_18 || (templateObject_18 = __makeTemplateObject(["\n query {\n ichiVaults {\n id\n rewardRatePerToken_1d\n rewardRatePerToken_3d\n farmingContract {\n id\n rewardToken\n rewardTokenDecimals\n }\n }\n }\n"], ["\n query {\n ichiVaults {\n id\n rewardRatePerToken_1d\n rewardRatePerToken_3d\n farmingContract {\n id\n rewardToken\n rewardTokenDecimals\n }\n }\n }\n"])));
99
+ exports.allRewardVaults = (0, graphql_request_1.gql)(templateObject_19 || (templateObject_19 = __makeTemplateObject(["\n query {\n ichiVaults(where: { farmingContract_: { id_not: null } }) {\n id\n farmingContract {\n id\n rewardToken\n rewardTokenDecimals\n }\n }\n }\n"], ["\n query {\n ichiVaults(where: { farmingContract_: { id_not: null } }) {\n id\n farmingContract {\n id\n rewardToken\n rewardTokenDecimals\n }\n }\n }\n"])));
100
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19;
62
101
  //# sourceMappingURL=queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../src/graphql/queries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../src/graphql/queries.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,gDAAgD;AAChD,mDAAsC;AACtC,kCAA0D;AAC1D,uDAA0D;AAC1D,uEAAiD;AACjD,oDAAsD;AAEtD,SAAS,cAAc,CAAC,GAAiB,EAAE,OAAyB;IAClE,OAAO,CACL,GAAG,KAAK,oBAAY,CAAC,KAAK;QAC1B,GAAG,KAAK,oBAAY,CAAC,MAAM;QAC3B,GAAG,KAAK,oBAAY,CAAC,OAAO;QAC5B,CAAC,GAAG,KAAK,oBAAY,CAAC,SAAS,IAAI,OAAO,KAAK,wBAAgB,CAAC,YAAY,CAAC;QAC7E,CAAC,GAAG,KAAK,oBAAY,CAAC,QAAQ,IAAI,OAAO,KAAK,wBAAgB,CAAC,kBAAkB,CAAC,CACnF,CAAC;AACJ,CAAC;AAED,SAAgB,UAAU,CAAC,mBAA4B,EAAE,OAAmB;IAAnB,wBAAA,EAAA,WAAmB;IAC1E,wDAAwD;IACxD,IAAI,OAAO,KAAK,CAAC,EAAE;QACjB,WAAO,qBAAG,+SAAA,6MASF,EAAyC,4BAGhD,KAHO,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAG/C;KACH;IAED,uBAAuB;IACvB,WAAO,qBAAG,uRAAA,2LASF,EAAyC,sBAGhD,KAHO,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAG/C;AACJ,CAAC;AAhCD,gCAgCC;AAED,SAAgB,iBAAiB,CAAC,mBAA4B,EAAE,OAAmB;IAAnB,wBAAA,EAAA,WAAmB;IACjF,wDAAwD;IACxD,IAAI,OAAO,KAAK,CAAC,EAAE;QACjB,WAAO,qBAAG,gSAAA,8LAQF,EAAyC,4BAGhD,KAHO,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAG/C;KACH;IAED,uBAAuB;IACvB,WAAO,qBAAG,0QAAA,8KAQF,EAAyC,sBAGhD,KAHO,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAG/C;AACJ,CAAC;AA9BD,8CA8BC;AAEY,QAAA,mBAAmB,OAAG,qBAAG,4VAAA,wRAgBrC,KAAC;AAEF;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,OAAyB,EAAE,GAAiB;;IACxE,IAAM,mBAAmB,GAAG,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClD,IAAA,OAAO,GAAK,IAAA,sBAAY,EAAC,OAAO,EAAE,GAAG,CAAC,QAA/B,CAAgC;IAE/C,wCAAwC;IACxC,IAAI,IAAA,4BAAc,EAAC,OAAO,EAAE,GAAG,CAAC,EAAE;QAChC,OAAO,2BAAmB,CAAC;KAC5B;IAED,IAAM,SAAS,GAAG,MAAA,MAAA,yBAAa,CAAC,OAAO,CAAC,0CAAG,GAAG,CAAC,0CAAE,SAAS,CAAC;IAC3D,IAAM,QAAQ,GAAG,MAAA,MAAA,yBAAa,CAAC,OAAO,CAAC,0CAAG,GAAG,CAAC,0CAAE,QAAQ,CAAC;IAEzD,OAAO,SAAS,IAAI,QAAQ;QAC1B,CAAC,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,OAAO,CAAC;QACjD,CAAC,CAAC,UAAU,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC;AAfD,sCAeC;AAED,SAAgB,kBAAkB,CAAC,OAAmB;IAAnB,wBAAA,EAAA,WAAmB;IACpD,wDAAwD;IACxD,IAAI,OAAO,KAAK,CAAC,EAAE;QACjB,WAAO,qBAAG,mVAAA,+QAUT,KAAC;KACH;IAED,WAAO,qBAAG,+TAAA,2PAUT,KAAC;AACJ,CAAC;AA3BD,gDA2BC;AAEY,QAAA,gBAAgB,OAAG,qBAAG,2LAAA,uHAMlC,KAAC;AAEK,IAAM,eAAe,GAAG,UAAC,aAAqB,IAAK,WAAA,qBAAG,ggBAAA,iMAM5B,EAA+D,yPAe/F,KAfgC,aAAa,CAAC,CAAC,CAAC,YAAI,aAAa,OAAG,CAAC,CAAC,CAAC,wBAAwB,GANtC,CAqBzD,CAAC;AArBW,QAAA,eAAe,mBAqB1B;AAEK,IAAM,qBAAqB,GAAG,UAAC,aAAqB,IAAK,WAAA,qBAAG,oiBAAA,mOAOzD,EAAgE,yPAezE,KAfS,aAAa,CAAC,CAAC,CAAC,mCAA2B,aAAa,OAAG,CAAC,CAAC,CAAC,EAAE,GAPV,CAsB/D,CAAC;AAtBW,QAAA,qBAAqB,yBAsBhC;AAEK,IAAM,kBAAkB,GAAG,UAAC,aAAqB,IAAK,WAAA,qBAAG,0hBAAA,+LAM/B,EAA+D,mRAe/F,KAfgC,aAAa,CAAC,CAAC,CAAC,YAAI,aAAa,OAAG,CAAC,CAAC,CAAC,wBAAwB,GANnC,CAqB5D,CAAC;AArBW,QAAA,kBAAkB,sBAqB7B;AAEK,IAAM,mBAAmB,GAAG,UAAC,aAAqB,IAAK,WAAA,qBAAG,2hBAAA,gMAMhC,EAA+D,mRAe/F,KAfgC,aAAa,CAAC,CAAC,CAAC,YAAI,aAAa,OAAG,CAAC,CAAC,CAAC,wBAAwB,GANlC,CAqB7D,CAAC;AArBW,QAAA,mBAAmB,uBAqB9B;AAEK,IAAM,cAAc,GAAG,UAAC,cAK9B,IAAK,WAAA,qBAAG,ioDAAA,iMAMwB,EAEzB,8WAkByB,EAEzB,2WAkByB,EAAmF,sYAkBnF,EAAqF,mRAerH,KAxES,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,YAAI,cAAc,CAAC,UAAU,OAAG,CAAC,CAAC,CAAC,wBAAwB,EAoBvF,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,YAAI,cAAc,CAAC,WAAW,OAAG,CAAC,CAAC,CAAC,wBAAwB,EAmBlE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAI,cAAc,CAAC,QAAQ,OAAG,CAAC,CAAC,CAAC,wBAAwB,EAkBnF,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,YAAI,cAAc,CAAC,SAAS,OAAG,CAAC,CAAC,CAAC,wBAAwB,GAhEhH,CA+EL,CAAC;AApFW,QAAA,cAAc,kBAoFzB;AAEK,IAAM,2BAA2B,GAAG,UAAC,cAI3C,IAAK,WAAA,qBAAG,ixCAAA,iMAMwB,EAEzB,2WAkByB,EAAmF,sYAkBnF,EAAqF,mRAerH,KApDS,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,YAAI,cAAc,CAAC,UAAU,OAAG,CAAC,CAAC,CAAC,wBAAwB,EAmBhE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAI,cAAc,CAAC,QAAQ,OAAG,CAAC,CAAC,CAAC,wBAAwB,EAkBnF,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,YAAI,cAAc,CAAC,SAAS,OAAG,CAAC,CAAC,CAAC,wBAAwB,GA5ChH,CA2DL,CAAC;AA/DW,QAAA,2BAA2B,+BA+DtC;AAEF,SAAgB,oBAAoB,CAAC,OAAyB,EAAE,GAAiB;IACvE,IAAA,OAAO,GAAK,IAAA,sBAAY,EAAC,OAAO,EAAE,GAAG,CAAC,QAA/B,CAAgC;IAE/C,wCAAwC;IACxC,IAAM,WAAW,GAAG,IAAA,4BAAc,EAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAEjD,WAAO,qBAAG,4VAAA,qJAME,EAAmC,gBACnC,EAAmC,gBACnC,EAA2C,wDAG7C,EAA4C,iCAIrD,KATW,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EACnC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EACnC,WAAW,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,EAG7C,WAAW,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAIpD;AACJ,CAAC;AAtBD,oDAsBC;AAEY,QAAA,WAAW,OAAG,qBAAG,mOAAA,6JAS7B,KAAC;AAEW,QAAA,eAAe,OAAG,qBAAG,qSAAA,+NAYjC,KAAC;AAEW,QAAA,kBAAkB,OAAG,qBAAG,uRAAA,iNAapC,KAAC;AAEW,QAAA,eAAe,OAAG,qBAAG,4QAAA,sMAWjC,KAAC"}
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @license
4
4
  * author: ICHI DAO <core@ichi.org>
5
- * ichi-vaults-sdk.js v0.0.112
5
+ * ichi-vaults-sdk.js v0.1.0
6
6
  * Released under the MIT license.
7
7
  */
8
8
 
@@ -24,4 +24,7 @@ tslib_1.__exportStar(require("./functions/vaultTvl"), exports);
24
24
  tslib_1.__exportStar(require("./functions/chains"), exports);
25
25
  tslib_1.__exportStar(require("./functions/vaultPositions"), exports);
26
26
  tslib_1.__exportStar(require("./functions/getFeeAprs"), exports);
27
+ tslib_1.__exportStar(require("./functions/rewardInfo"), exports);
28
+ tslib_1.__exportStar(require("./functions/userRewards"), exports);
29
+ tslib_1.__exportStar(require("./functions/claimRewards"), exports);
27
30
  tslib_1.__exportStar(require("./types/index"), exports);
@@ -11,4 +11,7 @@ export * from './functions/vaultTvl';
11
11
  export * from './functions/chains';
12
12
  export * from './functions/vaultPositions';
13
13
  export * from './functions/getFeeAprs';
14
+ export * from './functions/rewardInfo';
15
+ export * from './functions/userRewards';
16
+ export * from './functions/claimRewards';
14
17
  export * from './types/index';
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @license
4
4
  * author: ICHI DAO <core@ichi.org>
5
- * ichi-vaults-sdk.js v0.0.112
5
+ * ichi-vaults-sdk.js v0.1.0
6
6
  * Released under the MIT license.
7
7
  */
8
8
 
@@ -22,4 +22,7 @@ tslib_1.__exportStar(require("./functions/vaultTvl"), exports);
22
22
  tslib_1.__exportStar(require("./functions/chains"), exports);
23
23
  tslib_1.__exportStar(require("./functions/vaultPositions"), exports);
24
24
  tslib_1.__exportStar(require("./functions/getFeeAprs"), exports);
25
+ tslib_1.__exportStar(require("./functions/rewardInfo"), exports);
26
+ tslib_1.__exportStar(require("./functions/userRewards"), exports);
27
+ tslib_1.__exportStar(require("./functions/claimRewards"), exports);
25
28
  tslib_1.__exportStar(require("./types/index"), exports);
package/dist/src/index.js CHANGED
@@ -28,5 +28,8 @@ __exportStar(require("./functions/vaultTvl"), exports);
28
28
  __exportStar(require("./functions/chains"), exports);
29
29
  __exportStar(require("./functions/vaultPositions"), exports);
30
30
  __exportStar(require("./functions/getFeeAprs"), exports);
31
+ __exportStar(require("./functions/rewardInfo"), exports);
32
+ __exportStar(require("./functions/userRewards"), exports);
33
+ __exportStar(require("./functions/claimRewards"), exports);
31
34
  __exportStar(require("./types/index"), exports);
32
35
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA2C;AAC3C,4DAA0C;AAC1C,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,oDAAkC;AAClC,4DAA0C;AAC1C,2DAAyC;AACzC,2DAAyC;AACzC,2DAAyC;AACzC,uDAAqC;AACrC,qDAAmC;AACnC,6DAA2C;AAC3C,yDAAuC;AACvC,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA2C;AAC3C,4DAA0C;AAC1C,2DAAyC;AACzC,sDAAoC;AACpC,uDAAqC;AACrC,oDAAkC;AAClC,4DAA0C;AAC1C,2DAAyC;AACzC,2DAAyC;AACzC,2DAAyC;AACzC,uDAAqC;AACrC,qDAAmC;AACnC,6DAA2C;AAC3C,yDAAuC;AACvC,yDAAuC;AACvC,0DAAwC;AACxC,2DAAyC;AACzC,gDAA8B"}
@@ -1,6 +1,6 @@
1
1
  import { JsonRpcProvider } from '@ethersproject/providers';
2
2
  import { SignerOrProvider } from '../types';
3
- import { ERC20, IchiVault, DepositGuard, UniswapV3Pool, AlgebraPool, AlgebraIntegralPool, ClPool } from '../../abis/types';
3
+ import { ERC20, IchiVault, DepositGuard, UniswapV3Pool, AlgebraPool, AlgebraIntegralPool, ClPool, MultiFeeDistributer } from '../../abis/types';
4
4
  export declare function getERC20Contract(address: string, signerOrProvider: SignerOrProvider): ERC20;
5
5
  export declare function getDepositGuardContract(address: string, signerOrProvider: SignerOrProvider): DepositGuard;
6
6
  export declare function getIchiVaultContract(address: string, signerOrProvider: SignerOrProvider): IchiVault;
@@ -8,3 +8,4 @@ export declare function getUniswapV3PoolContract(address: string, provider: Json
8
8
  export declare function getAlgebraPoolContract(address: string, provider: JsonRpcProvider): AlgebraPool;
9
9
  export declare function getAlgebraIntegralPoolContract(address: string, provider: JsonRpcProvider): AlgebraIntegralPool;
10
10
  export declare function getClPoolContract(address: string, provider: JsonRpcProvider): ClPool;
11
+ export declare function getMultiFeeDistributorContract(address: string, signerOrProvider: SignerOrProvider): MultiFeeDistributer;
@@ -0,0 +1,14 @@
1
+ import { JsonRpcProvider } from '@ethersproject/providers';
2
+ import { ContractTransaction, Overrides } from 'ethers';
3
+ import { SupportedDex } from '../types';
4
+ /**
5
+ * Claims rewards from the farming contract associated with a vault
6
+ *
7
+ * @param accountAddress - The address of the account claiming rewards
8
+ * @param vaultAddress - The address of the vault
9
+ * @param jsonProvider - The JSON RPC provider
10
+ * @param dex - The DEX to use
11
+ * @param overrides - Optional transaction overrides
12
+ * @returns The transaction
13
+ */
14
+ export declare function claimRewards(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, overrides?: Overrides): Promise<ContractTransaction>;
@@ -0,0 +1,3 @@
1
+ import { RewardInfo, SupportedChainId, SupportedDex } from '../types';
2
+ export declare function getRewardInfo(chainId: SupportedChainId, dex: SupportedDex, vaultAddress: string): Promise<RewardInfo>;
3
+ export declare function getAllRewardInfo(chainId: SupportedChainId, dex: SupportedDex): Promise<RewardInfo[]>;
@@ -4,7 +4,7 @@ import { SupportedDex, UserAmounts, UserAmountsBN, UserAmountsInVault, UserAmoun
4
4
  import { UserBalancesQueryData } from '../types/vaultQueryData';
5
5
  export declare function getUserBalance(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<string>;
6
6
  export declare function getUserBalance(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<BigNumber>;
7
- export declare function sendUserBalancesQueryRequest(url: string, accountAddress: string, query: string): Promise<UserBalancesQueryData['user']>;
7
+ export declare function sendUserBalancesQueryRequest(url: string, accountAddress: string, query: string, vaultAddress?: string): Promise<UserBalancesQueryData['user']>;
8
8
  export declare function getAllUserBalances(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<UserBalanceInVault[]>;
9
9
  export declare function getAllUserBalances(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<UserBalanceInVaultBN[]>;
10
10
  export declare function getUserAmounts(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<UserAmounts>;
@@ -0,0 +1,7 @@
1
+ import { JsonRpcProvider } from '@ethersproject/providers';
2
+ import { BigNumber } from 'ethers';
3
+ import { SupportedDex, UserRewards, UserRewardsBN } from '../types';
4
+ export declare function getUserRewards(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<string>;
5
+ export declare function getUserRewards(accountAddress: string, vaultAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<BigNumber>;
6
+ export declare function getAllUserRewards(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex): Promise<UserRewards[]>;
7
+ export declare function getAllUserRewards(accountAddress: string, jsonProvider: JsonRpcProvider, dex: SupportedDex, raw: true): Promise<UserRewardsBN[]>;
@@ -1,5 +1,5 @@
1
1
  import { JsonRpcProvider } from '@ethersproject/providers';
2
- import { SupportedDex, SupportedChainId, IchiVault } from '../types';
2
+ import { SupportedDex, SupportedChainId, IchiVault, VaultWithRewards } from '../types';
3
3
  import { VaultsByPoolQueryData, VaultsByTokensQueryData } from '../types/vaultQueryData';
4
4
  export declare function getIchiVaultInfo(chainId: SupportedChainId, dex: SupportedDex, vaultAddress: string, jsonProvider?: JsonRpcProvider): Promise<IchiVault>;
5
5
  export declare function getVaultsByTokens(chainId: SupportedChainId, dex: SupportedDex, depositTokenAddress: string, pairedTokenAddress: string): Promise<VaultsByTokensQueryData['ichiVaults']>;
@@ -11,3 +11,4 @@ export declare function validateVaultData(vaultAddress: string, jsonProvider: Js
11
11
  export declare function getChainByProvider(jsonProvider: JsonRpcProvider): Promise<{
12
12
  chainId: SupportedChainId;
13
13
  }>;
14
+ export declare function getAllRewardVaults(chainId: SupportedChainId, dex: SupportedDex): Promise<VaultWithRewards[]>;
@@ -1,5 +1,15 @@
1
+ import { SupportedChainId, SupportedDex } from '../types';
1
2
  export declare function vaultQuery(includeHoldersCount: boolean, version?: number): string;
2
3
  export declare function vaultQueryAlgebra(includeHoldersCount: boolean, version?: number): string;
4
+ export declare const vaultQueryVelodrome: string;
5
+ /**
6
+ * Returns the appropriate GraphQL query for vault information based on chain and DEX configuration
7
+ *
8
+ * @param chainId - The blockchain ID
9
+ * @param dex - The decentralized exchange
10
+ * @returns The appropriate GraphQL query string
11
+ */
12
+ export declare function getVaultQuery(chainId: SupportedChainId, dex: SupportedDex): string;
3
13
  export declare function vaultByTokensQuery(version?: number): string;
4
14
  export declare const vaultByPoolQuery: string;
5
15
  export declare const rebalancesQuery: (lastTimestamp: string) => string;
@@ -17,5 +27,8 @@ export declare const allEventsNoCollectFeesQuery: (lastTimestamps: {
17
27
  deposits?: string;
18
28
  withdraws?: string;
19
29
  }) => string;
20
- export declare function userBalancesQuery(version?: number): string;
30
+ export declare function getUserBalancesQuery(chainId: SupportedChainId, dex: SupportedDex): string;
21
31
  export declare const feeAprQuery: string;
32
+ export declare const rewardInfoQuery: string;
33
+ export declare const allRewardInfoQuery: string;
34
+ export declare const allRewardVaults: string;
@@ -11,4 +11,7 @@ export * from './functions/vaultTvl';
11
11
  export * from './functions/chains';
12
12
  export * from './functions/vaultPositions';
13
13
  export * from './functions/getFeeAprs';
14
+ export * from './functions/rewardInfo';
15
+ export * from './functions/userRewards';
16
+ export * from './functions/claimRewards';
14
17
  export * from './types/index';
@@ -31,6 +31,7 @@ export declare enum SupportedChainId {
31
31
  mainnet = 1,
32
32
  mantle = 5000,
33
33
  mode = 34443,
34
+ monad_testnet = 10143,
34
35
  polygon = 137,
35
36
  polygon_zkevm = 1101,
36
37
  real = 111188,
@@ -49,6 +50,7 @@ export declare enum SupportedChainId {
49
50
  export declare enum SupportedDex {
50
51
  Agni = "Agni",
51
52
  Ascent = "Ascent",
53
+ Atlantis = "Anlantis",
52
54
  Blueprint = "Blueprint",
53
55
  Cleo = "Cleo",
54
56
  Crust = "Crust",
@@ -126,14 +128,27 @@ export interface IchiVault {
126
128
  allowTokenB: boolean;
127
129
  holdersCount?: string;
128
130
  fee?: string;
131
+ farmingContract?: string;
132
+ rewardToken?: string;
133
+ rewardTokenDecimals?: number;
134
+ }
135
+ export interface VaultWithRewards {
136
+ id: string;
137
+ farmingContract: {
138
+ id: string;
139
+ rewardToken: string;
140
+ rewardTokenDecimals?: number;
141
+ };
129
142
  }
130
143
  export type VaultShares = {
131
144
  vault: {
132
145
  id: string;
133
146
  tokenA: string;
134
147
  tokenB: string;
148
+ farmingContract?: string;
135
149
  };
136
150
  vaultShareBalance: string;
151
+ stakedVaultShareBalance?: string;
137
152
  };
138
153
  export type UserBalances = {
139
154
  vaultShares: VaultShares[];
@@ -197,10 +212,12 @@ export type PriceChange = {
197
212
  export type UserBalanceInVault = {
198
213
  vaultAddress: string;
199
214
  shares: string;
215
+ stakedShares?: string;
200
216
  };
201
217
  export type UserBalanceInVaultBN = {
202
218
  vaultAddress: string;
203
219
  shares: BigNumber;
220
+ stakedShares?: BigNumber;
204
221
  };
205
222
  export type VaultMetrics = {
206
223
  timeInterval: number;
@@ -209,3 +226,25 @@ export type VaultMetrics = {
209
226
  avgDtr: number;
210
227
  feeApr: number;
211
228
  };
229
+ export interface RewardInfo {
230
+ id: string;
231
+ rewardRatePerToken_1d: string;
232
+ rewardRatePerToken_3d: string;
233
+ farmingContract: {
234
+ id: string;
235
+ rewardToken: string;
236
+ rewardTokenDecimals: number;
237
+ };
238
+ }
239
+ export type UserRewards = {
240
+ vaultAddress: string;
241
+ rewardToken: string;
242
+ rewardTokenDecimals: number;
243
+ rewardAmount: string;
244
+ };
245
+ export type UserRewardsBN = {
246
+ vaultAddress: string;
247
+ rewardToken: string;
248
+ rewardTokenDecimals: number;
249
+ rewardAmount: BigNumber;
250
+ };
@@ -1,4 +1,4 @@
1
- import { IchiVault, Fees, VaultTransactionEvent, UserBalances, FeeAprData } from '..';
1
+ import { IchiVault, Fees, VaultTransactionEvent, UserBalances, FeeAprData, RewardInfo, VaultWithRewards } from '..';
2
2
  export interface VaultQueryData {
3
3
  ichiVault: IchiVault;
4
4
  }
@@ -26,3 +26,12 @@ export interface UserBalancesQueryData {
26
26
  export interface FeeAprQueryResponse {
27
27
  ichiVault: FeeAprData | null;
28
28
  }
29
+ export interface RewardInfoQueryResponse {
30
+ ichiVault: RewardInfo;
31
+ }
32
+ export interface AllRewardInfoQueryResponse {
33
+ ichiVaults: RewardInfo[];
34
+ }
35
+ export interface AllRewardVaultsQueryResponse {
36
+ ichiVaults: VaultWithRewards[];
37
+ }
@@ -0,0 +1,2 @@
1
+ import { SupportedChainId, SupportedDex } from '../types';
2
+ export declare function isVelodromeDex(chainId: SupportedChainId, dex: SupportedDex): boolean;
@@ -17,10 +17,12 @@ export declare function multicall(calls: Call[], chainId: SupportedChainId, prov
17
17
  export declare function encodeTotalAmountsCall(vaultAddress: string): Call;
18
18
  export declare function encodeTotalSupplyCall(vaultAddress: string): Call;
19
19
  export declare function encodeDecimalsCall(tokenAddress: string): Call;
20
+ export declare function encodeFarmingRewardsCall(farmingContractAddress: string, userAddress: string): Call;
20
21
  export declare function decodeTotalAmountsResult(result: Result, vaultAddress: string): {
21
22
  total0: BigNumber;
22
23
  total1: BigNumber;
23
24
  };
24
25
  export declare function decodeTotalSupplyResult(result: Result, vaultAddress: string): BigNumber;
25
26
  export declare function decodeDecimalsResult(result: Result, tokenAddress: string): number;
27
+ export declare function decodeFarmingRewardsResult(result: Result, farmingContractAddress: string): [string[], BigNumber[]];
26
28
  export {};
@@ -31,6 +31,7 @@ export declare enum SupportedChainId {
31
31
  mainnet = 1,
32
32
  mantle = 5000,
33
33
  mode = 34443,
34
+ monad_testnet = 10143,
34
35
  polygon = 137,
35
36
  polygon_zkevm = 1101,
36
37
  real = 111188,
@@ -49,6 +50,7 @@ export declare enum SupportedChainId {
49
50
  export declare enum SupportedDex {
50
51
  Agni = "Agni",
51
52
  Ascent = "Ascent",
53
+ Atlantis = "Anlantis",
52
54
  Blueprint = "Blueprint",
53
55
  Cleo = "Cleo",
54
56
  Crust = "Crust",
@@ -126,14 +128,27 @@ export interface IchiVault {
126
128
  allowTokenB: boolean;
127
129
  holdersCount?: string;
128
130
  fee?: string;
131
+ farmingContract?: string;
132
+ rewardToken?: string;
133
+ rewardTokenDecimals?: number;
134
+ }
135
+ export interface VaultWithRewards {
136
+ id: string;
137
+ farmingContract: {
138
+ id: string;
139
+ rewardToken: string;
140
+ rewardTokenDecimals?: number;
141
+ };
129
142
  }
130
143
  export type VaultShares = {
131
144
  vault: {
132
145
  id: string;
133
146
  tokenA: string;
134
147
  tokenB: string;
148
+ farmingContract?: string;
135
149
  };
136
150
  vaultShareBalance: string;
151
+ stakedVaultShareBalance?: string;
137
152
  };
138
153
  export type UserBalances = {
139
154
  vaultShares: VaultShares[];
@@ -197,10 +212,12 @@ export type PriceChange = {
197
212
  export type UserBalanceInVault = {
198
213
  vaultAddress: string;
199
214
  shares: string;
215
+ stakedShares?: string;
200
216
  };
201
217
  export type UserBalanceInVaultBN = {
202
218
  vaultAddress: string;
203
219
  shares: BigNumber;
220
+ stakedShares?: BigNumber;
204
221
  };
205
222
  export type VaultMetrics = {
206
223
  timeInterval: number;
@@ -209,3 +226,25 @@ export type VaultMetrics = {
209
226
  avgDtr: number;
210
227
  feeApr: number;
211
228
  };
229
+ export interface RewardInfo {
230
+ id: string;
231
+ rewardRatePerToken_1d: string;
232
+ rewardRatePerToken_3d: string;
233
+ farmingContract: {
234
+ id: string;
235
+ rewardToken: string;
236
+ rewardTokenDecimals: number;
237
+ };
238
+ }
239
+ export type UserRewards = {
240
+ vaultAddress: string;
241
+ rewardToken: string;
242
+ rewardTokenDecimals: number;
243
+ rewardAmount: string;
244
+ };
245
+ export type UserRewardsBN = {
246
+ vaultAddress: string;
247
+ rewardToken: string;
248
+ rewardTokenDecimals: number;
249
+ rewardAmount: BigNumber;
250
+ };
@@ -31,6 +31,7 @@ var SupportedChainId;
31
31
  SupportedChainId[SupportedChainId["mainnet"] = 1] = "mainnet";
32
32
  SupportedChainId[SupportedChainId["mantle"] = 5000] = "mantle";
33
33
  SupportedChainId[SupportedChainId["mode"] = 34443] = "mode";
34
+ SupportedChainId[SupportedChainId["monad_testnet"] = 10143] = "monad_testnet";
34
35
  SupportedChainId[SupportedChainId["polygon"] = 137] = "polygon";
35
36
  SupportedChainId[SupportedChainId["polygon_zkevm"] = 1101] = "polygon_zkevm";
36
37
  SupportedChainId[SupportedChainId["real"] = 111188] = "real";
@@ -50,6 +51,7 @@ var SupportedDex;
50
51
  (function (SupportedDex) {
51
52
  SupportedDex["Agni"] = "Agni";
52
53
  SupportedDex["Ascent"] = "Ascent";
54
+ SupportedDex["Atlantis"] = "Anlantis";
53
55
  SupportedDex["Blueprint"] = "Blueprint";
54
56
  SupportedDex["Cleo"] = "Cleo";
55
57
  SupportedDex["Crust"] = "Crust";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;AAQA,IAAY,gBA2CX;AA3CD,WAAY,gBAAgB;IAC1B,mEAAgB,CAAA;IAChB,iEAAe,CAAA;IACf,iFAAuB,CAAA;IACvB,0DAAW,CAAA;IACX,2EAAoB,CAAA;IACpB,qEAAiB,CAAA;IACjB,mFAAwB,CAAA;IACxB,6DAAa,CAAA;IACb,iGAAiC,CAAA;IACjC,sDAAQ,CAAA;IACR,2DAAY,CAAA;IACZ,wDAAU,CAAA;IACV,4DAAY,CAAA;IACZ,6DAAY,CAAA;IACZ,0DAAU,CAAA;IACV,yDAAU,CAAA;IACV,8DAAa,CAAA;IACb,4EAAoB,CAAA;IACpB,6DAAY,CAAA;IACZ,6EAAoB,CAAA;IACpB,iEAAc,CAAA;IACd,yDAAW,CAAA;IACX,0EAAoB,CAAA;IACpB,0DAAW,CAAA;IACX,6DAAa,CAAA;IACb,6DAAW,CAAA;IACX,8DAAa,CAAA;IACb,2DAAY,CAAA;IACZ,+DAAa,CAAA;IACb,4EAAoB,CAAA;IACpB,4DAAa,CAAA;IACb,kEAAc,CAAA;IACd,gEAAe,CAAA;IACf,gFAAyB,CAAA;IACzB,2DAAW,CAAA;IACX,8DAAc,CAAA;IACd,0EAAoB,CAAA;IACpB,+DAAc,CAAA;IACd,+EAAqB,CAAA;IACrB,iEAAe,CAAA;IACf,qFAAwB,CAAA;IACxB,qEAAgB,CAAA;AAClB,CAAC,EA3CW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QA2C3B;AAED,IAAY,YA8CX;AA9CD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,uCAAuB,CAAA;IACvB,6BAAa,CAAA;IACb,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,mDAAmC,CAAA;IACnC,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,iCAAiB,CAAA;IACjB,qCAAqB,CAAA;IACrB,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,2BAAW,CAAA;IACX,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,2CAA2B,CAAA;IAC3B,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,iCAAiB,CAAA;IACjB,uCAAuB,CAAA;IACvB,+BAAe,CAAA;IACf,yCAAyB,CAAA;IACzB,qCAAqB,CAAA;IACrB,yCAAyB,CAAA;IACzB,yCAAyB,CAAA;IACzB,uCAAuB,CAAA;IACvB,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,2CAA2B,CAAA;IAC3B,mCAAmB,CAAA;IACnB,qCAAqB,CAAA;IACrB,yCAAyB,CAAA;IACzB,mCAAmB,CAAA;IACnB,wCAAwB,CAAA;IACxB,qCAAqB,CAAA;IACrB,uCAAuB,CAAA;IACvB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;AACjB,CAAC,EA9CW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QA8CvB;AAEY,QAAA,iBAAiB,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;AAQA,IAAY,gBA4CX;AA5CD,WAAY,gBAAgB;IAC1B,mEAAgB,CAAA;IAChB,iEAAe,CAAA;IACf,iFAAuB,CAAA;IACvB,0DAAW,CAAA;IACX,2EAAoB,CAAA;IACpB,qEAAiB,CAAA;IACjB,mFAAwB,CAAA;IACxB,6DAAa,CAAA;IACb,iGAAiC,CAAA;IACjC,sDAAQ,CAAA;IACR,2DAAY,CAAA;IACZ,wDAAU,CAAA;IACV,4DAAY,CAAA;IACZ,6DAAY,CAAA;IACZ,0DAAU,CAAA;IACV,yDAAU,CAAA;IACV,8DAAa,CAAA;IACb,4EAAoB,CAAA;IACpB,6DAAY,CAAA;IACZ,6EAAoB,CAAA;IACpB,iEAAc,CAAA;IACd,yDAAW,CAAA;IACX,0EAAoB,CAAA;IACpB,0DAAW,CAAA;IACX,6DAAa,CAAA;IACb,6DAAW,CAAA;IACX,8DAAa,CAAA;IACb,2DAAY,CAAA;IACZ,6EAAqB,CAAA;IACrB,+DAAa,CAAA;IACb,4EAAoB,CAAA;IACpB,4DAAa,CAAA;IACb,kEAAc,CAAA;IACd,gEAAe,CAAA;IACf,gFAAyB,CAAA;IACzB,2DAAW,CAAA;IACX,8DAAc,CAAA;IACd,0EAAoB,CAAA;IACpB,+DAAc,CAAA;IACd,+EAAqB,CAAA;IACrB,iEAAe,CAAA;IACf,qFAAwB,CAAA;IACxB,qEAAgB,CAAA;AAClB,CAAC,EA5CW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QA4C3B;AAED,IAAY,YA+CX;AA/CD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,qCAAqB,CAAA;IACrB,uCAAuB,CAAA;IACvB,6BAAa,CAAA;IACb,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,mDAAmC,CAAA;IACnC,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,iCAAiB,CAAA;IACjB,qCAAqB,CAAA;IACrB,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,2BAAW,CAAA;IACX,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,2CAA2B,CAAA;IAC3B,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,iCAAiB,CAAA;IACjB,uCAAuB,CAAA;IACvB,+BAAe,CAAA;IACf,yCAAyB,CAAA;IACzB,qCAAqB,CAAA;IACrB,yCAAyB,CAAA;IACzB,yCAAyB,CAAA;IACzB,uCAAuB,CAAA;IACvB,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,2CAA2B,CAAA;IAC3B,mCAAmB,CAAA;IACnB,qCAAqB,CAAA;IACrB,yCAAyB,CAAA;IACzB,mCAAmB,CAAA;IACnB,wCAAwB,CAAA;IACxB,qCAAqB,CAAA;IACrB,uCAAuB,CAAA;IACvB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;IACnB,+BAAe,CAAA;AACjB,CAAC,EA/CW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QA+CvB;AAEY,QAAA,iBAAiB,GAAG,EAAE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { IchiVault, Fees, VaultTransactionEvent, UserBalances, FeeAprData } from '..';
1
+ import { IchiVault, Fees, VaultTransactionEvent, UserBalances, FeeAprData, RewardInfo, VaultWithRewards } from '..';
2
2
  export interface VaultQueryData {
3
3
  ichiVault: IchiVault;
4
4
  }
@@ -26,3 +26,12 @@ export interface UserBalancesQueryData {
26
26
  export interface FeeAprQueryResponse {
27
27
  ichiVault: FeeAprData | null;
28
28
  }
29
+ export interface RewardInfoQueryResponse {
30
+ ichiVault: RewardInfo;
31
+ }
32
+ export interface AllRewardInfoQueryResponse {
33
+ ichiVaults: RewardInfo[];
34
+ }
35
+ export interface AllRewardVaultsQueryResponse {
36
+ ichiVaults: VaultWithRewards[];
37
+ }