@lagoon-protocol/lagoon-mcp 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 (335) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +618 -0
  3. package/dist/cache/index.d.ts +97 -0
  4. package/dist/cache/index.d.ts.map +1 -0
  5. package/dist/cache/index.js +106 -0
  6. package/dist/cache/index.js.map +1 -0
  7. package/dist/config.d.ts +34 -0
  8. package/dist/config.d.ts.map +1 -0
  9. package/dist/config.js +40 -0
  10. package/dist/config.js.map +1 -0
  11. package/dist/core/cache-adapter.d.ts +73 -0
  12. package/dist/core/cache-adapter.d.ts.map +1 -0
  13. package/dist/core/cache-adapter.js +47 -0
  14. package/dist/core/cache-adapter.js.map +1 -0
  15. package/dist/core/cache-invalidation.d.ts +72 -0
  16. package/dist/core/cache-invalidation.d.ts.map +1 -0
  17. package/dist/core/cache-invalidation.js +114 -0
  18. package/dist/core/cache-invalidation.js.map +1 -0
  19. package/dist/core/container.d.ts +34 -0
  20. package/dist/core/container.d.ts.map +1 -0
  21. package/dist/core/container.js +75 -0
  22. package/dist/core/container.js.map +1 -0
  23. package/dist/graphql/client.d.ts +32 -0
  24. package/dist/graphql/client.d.ts.map +1 -0
  25. package/dist/graphql/client.js +49 -0
  26. package/dist/graphql/client.js.map +1 -0
  27. package/dist/graphql/fragments/apr-breakdown.fragment.d.ts +64 -0
  28. package/dist/graphql/fragments/apr-breakdown.fragment.d.ts.map +1 -0
  29. package/dist/graphql/fragments/apr-breakdown.fragment.js +62 -0
  30. package/dist/graphql/fragments/apr-breakdown.fragment.js.map +1 -0
  31. package/dist/graphql/fragments/asset-info.fragment.d.ts +18 -0
  32. package/dist/graphql/fragments/asset-info.fragment.d.ts.map +1 -0
  33. package/dist/graphql/fragments/asset-info.fragment.js +36 -0
  34. package/dist/graphql/fragments/asset-info.fragment.js.map +1 -0
  35. package/dist/graphql/fragments/chain-info.fragment.d.ts +18 -0
  36. package/dist/graphql/fragments/chain-info.fragment.d.ts.map +1 -0
  37. package/dist/graphql/fragments/chain-info.fragment.js +32 -0
  38. package/dist/graphql/fragments/chain-info.fragment.js.map +1 -0
  39. package/dist/graphql/fragments/index.d.ts +15 -0
  40. package/dist/graphql/fragments/index.d.ts.map +1 -0
  41. package/dist/graphql/fragments/index.js +21 -0
  42. package/dist/graphql/fragments/index.js.map +1 -0
  43. package/dist/graphql/fragments/pageinfo.fragment.d.ts +33 -0
  44. package/dist/graphql/fragments/pageinfo.fragment.d.ts.map +1 -0
  45. package/dist/graphql/fragments/pageinfo.fragment.js +47 -0
  46. package/dist/graphql/fragments/pageinfo.fragment.js.map +1 -0
  47. package/dist/graphql/fragments/transaction-base.fragment.d.ts +19 -0
  48. package/dist/graphql/fragments/transaction-base.fragment.d.ts.map +1 -0
  49. package/dist/graphql/fragments/transaction-base.fragment.js +32 -0
  50. package/dist/graphql/fragments/transaction-base.fragment.js.map +1 -0
  51. package/dist/graphql/fragments/vault-list.fragment.d.ts +53 -0
  52. package/dist/graphql/fragments/vault-list.fragment.d.ts.map +1 -0
  53. package/dist/graphql/fragments/vault-list.fragment.js +51 -0
  54. package/dist/graphql/fragments/vault-list.fragment.js.map +1 -0
  55. package/dist/graphql/fragments/vault-summary.fragment.d.ts +68 -0
  56. package/dist/graphql/fragments/vault-summary.fragment.d.ts.map +1 -0
  57. package/dist/graphql/fragments/vault-summary.fragment.js +66 -0
  58. package/dist/graphql/fragments/vault-summary.fragment.js.map +1 -0
  59. package/dist/graphql/fragments/vault.fragment.d.ts +133 -0
  60. package/dist/graphql/fragments/vault.fragment.d.ts.map +1 -0
  61. package/dist/graphql/fragments/vault.fragment.js +119 -0
  62. package/dist/graphql/fragments/vault.fragment.js.map +1 -0
  63. package/dist/graphql/fragments.d.ts +183 -0
  64. package/dist/graphql/fragments.d.ts.map +1 -0
  65. package/dist/graphql/fragments.js +297 -0
  66. package/dist/graphql/fragments.js.map +1 -0
  67. package/dist/graphql/queries/export.queries.d.ts +72 -0
  68. package/dist/graphql/queries/export.queries.d.ts.map +1 -0
  69. package/dist/graphql/queries/export.queries.js +202 -0
  70. package/dist/graphql/queries/export.queries.js.map +1 -0
  71. package/dist/graphql/queries/index.d.ts +15 -0
  72. package/dist/graphql/queries/index.d.ts.map +1 -0
  73. package/dist/graphql/queries/index.js +23 -0
  74. package/dist/graphql/queries/index.js.map +1 -0
  75. package/dist/graphql/queries/performance.queries.d.ts +63 -0
  76. package/dist/graphql/queries/performance.queries.d.ts.map +1 -0
  77. package/dist/graphql/queries/performance.queries.js +133 -0
  78. package/dist/graphql/queries/performance.queries.js.map +1 -0
  79. package/dist/graphql/queries/period-summaries.d.ts +15 -0
  80. package/dist/graphql/queries/period-summaries.d.ts.map +1 -0
  81. package/dist/graphql/queries/period-summaries.js +24 -0
  82. package/dist/graphql/queries/period-summaries.js.map +1 -0
  83. package/dist/graphql/queries/portfolio.queries.d.ts +78 -0
  84. package/dist/graphql/queries/portfolio.queries.d.ts.map +1 -0
  85. package/dist/graphql/queries/portfolio.queries.js +198 -0
  86. package/dist/graphql/queries/portfolio.queries.js.map +1 -0
  87. package/dist/graphql/queries/prediction.queries.d.ts +38 -0
  88. package/dist/graphql/queries/prediction.queries.d.ts.map +1 -0
  89. package/dist/graphql/queries/prediction.queries.js +100 -0
  90. package/dist/graphql/queries/prediction.queries.js.map +1 -0
  91. package/dist/graphql/queries/risk.queries.d.ts +37 -0
  92. package/dist/graphql/queries/risk.queries.d.ts.map +1 -0
  93. package/dist/graphql/queries/risk.queries.js +90 -0
  94. package/dist/graphql/queries/risk.queries.js.map +1 -0
  95. package/dist/graphql/queries/search.queries.d.ts +61 -0
  96. package/dist/graphql/queries/search.queries.d.ts.map +1 -0
  97. package/dist/graphql/queries/search.queries.js +103 -0
  98. package/dist/graphql/queries/search.queries.js.map +1 -0
  99. package/dist/graphql/queries/transaction.queries.d.ts +60 -0
  100. package/dist/graphql/queries/transaction.queries.d.ts.map +1 -0
  101. package/dist/graphql/queries/transaction.queries.js +252 -0
  102. package/dist/graphql/queries/transaction.queries.js.map +1 -0
  103. package/dist/graphql/queries/vault.queries.d.ts +54 -0
  104. package/dist/graphql/queries/vault.queries.d.ts.map +1 -0
  105. package/dist/graphql/queries/vault.queries.js +78 -0
  106. package/dist/graphql/queries/vault.queries.js.map +1 -0
  107. package/dist/index.d.ts +12 -0
  108. package/dist/index.d.ts.map +1 -0
  109. package/dist/index.js +32 -0
  110. package/dist/index.js.map +1 -0
  111. package/dist/prompts/competitor-comparison.d.ts +8 -0
  112. package/dist/prompts/competitor-comparison.d.ts.map +1 -0
  113. package/dist/prompts/competitor-comparison.js +432 -0
  114. package/dist/prompts/competitor-comparison.js.map +1 -0
  115. package/dist/prompts/curator-performance.d.ts +8 -0
  116. package/dist/prompts/curator-performance.d.ts.map +1 -0
  117. package/dist/prompts/curator-performance.js +383 -0
  118. package/dist/prompts/curator-performance.js.map +1 -0
  119. package/dist/prompts/financial-analysis.d.ts +8 -0
  120. package/dist/prompts/financial-analysis.d.ts.map +1 -0
  121. package/dist/prompts/financial-analysis.js +480 -0
  122. package/dist/prompts/financial-analysis.js.map +1 -0
  123. package/dist/prompts/index.d.ts +21 -0
  124. package/dist/prompts/index.d.ts.map +1 -0
  125. package/dist/prompts/index.js +50 -0
  126. package/dist/prompts/index.js.map +1 -0
  127. package/dist/prompts/onboarding-first-vault.d.ts +8 -0
  128. package/dist/prompts/onboarding-first-vault.d.ts.map +1 -0
  129. package/dist/prompts/onboarding-first-vault.js +317 -0
  130. package/dist/prompts/onboarding-first-vault.js.map +1 -0
  131. package/dist/prompts/portfolio-optimization.d.ts +8 -0
  132. package/dist/prompts/portfolio-optimization.d.ts.map +1 -0
  133. package/dist/prompts/portfolio-optimization.js +412 -0
  134. package/dist/prompts/portfolio-optimization.js.map +1 -0
  135. package/dist/prompts/protocol-overview.d.ts +8 -0
  136. package/dist/prompts/protocol-overview.d.ts.map +1 -0
  137. package/dist/prompts/protocol-overview.js +398 -0
  138. package/dist/prompts/protocol-overview.js.map +1 -0
  139. package/dist/prompts/shared/disclaimers.d.ts +54 -0
  140. package/dist/prompts/shared/disclaimers.d.ts.map +1 -0
  141. package/dist/prompts/shared/disclaimers.js +400 -0
  142. package/dist/prompts/shared/disclaimers.js.map +1 -0
  143. package/dist/resources/glossary.d.ts +8 -0
  144. package/dist/resources/glossary.d.ts.map +1 -0
  145. package/dist/resources/glossary.js +407 -0
  146. package/dist/resources/glossary.js.map +1 -0
  147. package/dist/resources/index.d.ts +18 -0
  148. package/dist/resources/index.d.ts.map +1 -0
  149. package/dist/resources/index.js +29 -0
  150. package/dist/resources/index.js.map +1 -0
  151. package/dist/resources/schema.d.ts +22 -0
  152. package/dist/resources/schema.d.ts.map +1 -0
  153. package/dist/resources/schema.js +67 -0
  154. package/dist/resources/schema.js.map +1 -0
  155. package/dist/schemas/config.schema.d.ts +46 -0
  156. package/dist/schemas/config.schema.d.ts.map +1 -0
  157. package/dist/schemas/config.schema.js +48 -0
  158. package/dist/schemas/config.schema.js.map +1 -0
  159. package/dist/sdk/__tests__/apr-service.test.d.ts +7 -0
  160. package/dist/sdk/__tests__/apr-service.test.d.ts.map +1 -0
  161. package/dist/sdk/__tests__/apr-service.test.js +385 -0
  162. package/dist/sdk/__tests__/apr-service.test.js.map +1 -0
  163. package/dist/sdk/__tests__/math-utils.test.d.ts +7 -0
  164. package/dist/sdk/__tests__/math-utils.test.d.ts.map +1 -0
  165. package/dist/sdk/__tests__/math-utils.test.js +185 -0
  166. package/dist/sdk/__tests__/math-utils.test.js.map +1 -0
  167. package/dist/sdk/__tests__/simulation-service.test.d.ts +5 -0
  168. package/dist/sdk/__tests__/simulation-service.test.d.ts.map +1 -0
  169. package/dist/sdk/__tests__/simulation-service.test.js +397 -0
  170. package/dist/sdk/__tests__/simulation-service.test.js.map +1 -0
  171. package/dist/sdk/__tests__/vault-utils.test.d.ts +7 -0
  172. package/dist/sdk/__tests__/vault-utils.test.d.ts.map +1 -0
  173. package/dist/sdk/__tests__/vault-utils.test.js +189 -0
  174. package/dist/sdk/__tests__/vault-utils.test.js.map +1 -0
  175. package/dist/sdk/apr-service.d.ts +101 -0
  176. package/dist/sdk/apr-service.d.ts.map +1 -0
  177. package/dist/sdk/apr-service.js +175 -0
  178. package/dist/sdk/apr-service.js.map +1 -0
  179. package/dist/sdk/math-utils.d.ts +138 -0
  180. package/dist/sdk/math-utils.d.ts.map +1 -0
  181. package/dist/sdk/math-utils.js +218 -0
  182. package/dist/sdk/math-utils.js.map +1 -0
  183. package/dist/sdk/simulation-service.d.ts +106 -0
  184. package/dist/sdk/simulation-service.d.ts.map +1 -0
  185. package/dist/sdk/simulation-service.js +143 -0
  186. package/dist/sdk/simulation-service.js.map +1 -0
  187. package/dist/sdk/vault-utils.d.ts +125 -0
  188. package/dist/sdk/vault-utils.d.ts.map +1 -0
  189. package/dist/sdk/vault-utils.js +165 -0
  190. package/dist/sdk/vault-utils.js.map +1 -0
  191. package/dist/server.d.ts +21 -0
  192. package/dist/server.d.ts.map +1 -0
  193. package/dist/server.js +225 -0
  194. package/dist/server.js.map +1 -0
  195. package/dist/services/analytics/protocol-overview.service.d.ts +61 -0
  196. package/dist/services/analytics/protocol-overview.service.d.ts.map +1 -0
  197. package/dist/services/analytics/protocol-overview.service.js +182 -0
  198. package/dist/services/analytics/protocol-overview.service.js.map +1 -0
  199. package/dist/services/analytics/risk.service.d.ts +92 -0
  200. package/dist/services/analytics/risk.service.d.ts.map +1 -0
  201. package/dist/services/analytics/risk.service.js +423 -0
  202. package/dist/services/analytics/risk.service.js.map +1 -0
  203. package/dist/services/base.service.d.ts +39 -0
  204. package/dist/services/base.service.d.ts.map +1 -0
  205. package/dist/services/base.service.js +37 -0
  206. package/dist/services/base.service.js.map +1 -0
  207. package/dist/services/index.d.ts +30 -0
  208. package/dist/services/index.d.ts.map +1 -0
  209. package/dist/services/index.js +101 -0
  210. package/dist/services/index.js.map +1 -0
  211. package/dist/tools/__tests__/simulate-vault.test.d.ts +5 -0
  212. package/dist/tools/__tests__/simulate-vault.test.d.ts.map +1 -0
  213. package/dist/tools/__tests__/simulate-vault.test.js +363 -0
  214. package/dist/tools/__tests__/simulate-vault.test.js.map +1 -0
  215. package/dist/tools/analyze-risk.d.ts +34 -0
  216. package/dist/tools/analyze-risk.d.ts.map +1 -0
  217. package/dist/tools/analyze-risk.js +100 -0
  218. package/dist/tools/analyze-risk.js.map +1 -0
  219. package/dist/tools/compare-vaults.d.ts +29 -0
  220. package/dist/tools/compare-vaults.d.ts.map +1 -0
  221. package/dist/tools/compare-vaults.js +285 -0
  222. package/dist/tools/compare-vaults.js.map +1 -0
  223. package/dist/tools/export-data.d.ts +34 -0
  224. package/dist/tools/export-data.d.ts.map +1 -0
  225. package/dist/tools/export-data.js +309 -0
  226. package/dist/tools/export-data.js.map +1 -0
  227. package/dist/tools/get-price-history.d.ts +29 -0
  228. package/dist/tools/get-price-history.d.ts.map +1 -0
  229. package/dist/tools/get-price-history.js +236 -0
  230. package/dist/tools/get-price-history.js.map +1 -0
  231. package/dist/tools/get-transactions.d.ts +29 -0
  232. package/dist/tools/get-transactions.d.ts.map +1 -0
  233. package/dist/tools/get-transactions.js +181 -0
  234. package/dist/tools/get-transactions.js.map +1 -0
  235. package/dist/tools/index.d.ts +26 -0
  236. package/dist/tools/index.d.ts.map +1 -0
  237. package/dist/tools/index.js +32 -0
  238. package/dist/tools/index.js.map +1 -0
  239. package/dist/tools/optimize-portfolio.d.ts +37 -0
  240. package/dist/tools/optimize-portfolio.d.ts.map +1 -0
  241. package/dist/tools/optimize-portfolio.js +459 -0
  242. package/dist/tools/optimize-portfolio.js.map +1 -0
  243. package/dist/tools/predict-yield.d.ts +30 -0
  244. package/dist/tools/predict-yield.d.ts.map +1 -0
  245. package/dist/tools/predict-yield.js +248 -0
  246. package/dist/tools/predict-yield.js.map +1 -0
  247. package/dist/tools/query-graphql.d.ts +35 -0
  248. package/dist/tools/query-graphql.d.ts.map +1 -0
  249. package/dist/tools/query-graphql.js +54 -0
  250. package/dist/tools/query-graphql.js.map +1 -0
  251. package/dist/tools/registry.d.ts +42 -0
  252. package/dist/tools/registry.d.ts.map +1 -0
  253. package/dist/tools/registry.js +231 -0
  254. package/dist/tools/registry.js.map +1 -0
  255. package/dist/tools/search-vaults.d.ts +40 -0
  256. package/dist/tools/search-vaults.d.ts.map +1 -0
  257. package/dist/tools/search-vaults.js +184 -0
  258. package/dist/tools/search-vaults.js.map +1 -0
  259. package/dist/tools/simulate-vault.d.ts +80 -0
  260. package/dist/tools/simulate-vault.d.ts.map +1 -0
  261. package/dist/tools/simulate-vault.js +281 -0
  262. package/dist/tools/simulate-vault.js.map +1 -0
  263. package/dist/tools/user-portfolio.d.ts +30 -0
  264. package/dist/tools/user-portfolio.d.ts.map +1 -0
  265. package/dist/tools/user-portfolio.js +142 -0
  266. package/dist/tools/user-portfolio.js.map +1 -0
  267. package/dist/tools/vault-data.d.ts +23 -0
  268. package/dist/tools/vault-data.d.ts.map +1 -0
  269. package/dist/tools/vault-data.js +68 -0
  270. package/dist/tools/vault-data.js.map +1 -0
  271. package/dist/tools/vault-performance.d.ts +30 -0
  272. package/dist/tools/vault-performance.d.ts.map +1 -0
  273. package/dist/tools/vault-performance.js +275 -0
  274. package/dist/tools/vault-performance.js.map +1 -0
  275. package/dist/types/generated.d.ts +1109 -0
  276. package/dist/types/generated.d.ts.map +1 -0
  277. package/dist/types/generated.js +2 -0
  278. package/dist/types/generated.js.map +1 -0
  279. package/dist/types/index.d.ts +46 -0
  280. package/dist/types/index.d.ts.map +1 -0
  281. package/dist/types/index.js +8 -0
  282. package/dist/types/index.js.map +1 -0
  283. package/dist/utils/comparison-metrics.d.ts +120 -0
  284. package/dist/utils/comparison-metrics.d.ts.map +1 -0
  285. package/dist/utils/comparison-metrics.js +215 -0
  286. package/dist/utils/comparison-metrics.js.map +1 -0
  287. package/dist/utils/config-loader.d.ts +17 -0
  288. package/dist/utils/config-loader.d.ts.map +1 -0
  289. package/dist/utils/config-loader.js +45 -0
  290. package/dist/utils/config-loader.js.map +1 -0
  291. package/dist/utils/csv-generator.d.ts +89 -0
  292. package/dist/utils/csv-generator.d.ts.map +1 -0
  293. package/dist/utils/csv-generator.js +97 -0
  294. package/dist/utils/csv-generator.js.map +1 -0
  295. package/dist/utils/disclaimers.d.ts +70 -0
  296. package/dist/utils/disclaimers.d.ts.map +1 -0
  297. package/dist/utils/disclaimers.js +161 -0
  298. package/dist/utils/disclaimers.js.map +1 -0
  299. package/dist/utils/errors.d.ts +66 -0
  300. package/dist/utils/errors.d.ts.map +1 -0
  301. package/dist/utils/errors.js +86 -0
  302. package/dist/utils/errors.js.map +1 -0
  303. package/dist/utils/execute-tool-with-cache.d.ts +97 -0
  304. package/dist/utils/execute-tool-with-cache.d.ts.map +1 -0
  305. package/dist/utils/execute-tool-with-cache.js +105 -0
  306. package/dist/utils/execute-tool-with-cache.js.map +1 -0
  307. package/dist/utils/portfolio-optimization.d.ts +100 -0
  308. package/dist/utils/portfolio-optimization.d.ts.map +1 -0
  309. package/dist/utils/portfolio-optimization.js +283 -0
  310. package/dist/utils/portfolio-optimization.js.map +1 -0
  311. package/dist/utils/risk-scoring.d.ts +226 -0
  312. package/dist/utils/risk-scoring.d.ts.map +1 -0
  313. package/dist/utils/risk-scoring.js +523 -0
  314. package/dist/utils/risk-scoring.js.map +1 -0
  315. package/dist/utils/tool-error-handler.d.ts +16 -0
  316. package/dist/utils/tool-error-handler.d.ts.map +1 -0
  317. package/dist/utils/tool-error-handler.js +43 -0
  318. package/dist/utils/tool-error-handler.js.map +1 -0
  319. package/dist/utils/tool-handler.d.ts +33 -0
  320. package/dist/utils/tool-handler.d.ts.map +1 -0
  321. package/dist/utils/tool-handler.js +59 -0
  322. package/dist/utils/tool-handler.js.map +1 -0
  323. package/dist/utils/tool-response.d.ts +16 -0
  324. package/dist/utils/tool-response.d.ts.map +1 -0
  325. package/dist/utils/tool-response.js +25 -0
  326. package/dist/utils/tool-response.js.map +1 -0
  327. package/dist/utils/validators.d.ts +359 -0
  328. package/dist/utils/validators.d.ts.map +1 -0
  329. package/dist/utils/validators.js +233 -0
  330. package/dist/utils/validators.js.map +1 -0
  331. package/dist/utils/yield-prediction.d.ts +69 -0
  332. package/dist/utils/yield-prediction.d.ts.map +1 -0
  333. package/dist/utils/yield-prediction.js +290 -0
  334. package/dist/utils/yield-prediction.js.map +1 -0
  335. package/package.json +83 -0
@@ -0,0 +1,202 @@
1
+ /**
2
+ * Export Queries
3
+ *
4
+ * GraphQL queries for data export operations.
5
+ * Supports exporting vaults, transactions, price history, and performance metrics.
6
+ */
7
+ import { VAULT_FRAGMENT, TRANSACTION_BASE_FRAGMENT } from '../fragments/index.js';
8
+ /**
9
+ * GraphQL query for vault data export
10
+ *
11
+ * Fetches complete vault data for CSV or JSON export.
12
+ *
13
+ * Used by: export_data tool (dataType: 'vaults')
14
+ *
15
+ * Usage:
16
+ * ```typescript
17
+ * const data = await graphqlClient.request<{ vaults: VaultData[] }>(
18
+ * EXPORT_VAULTS_QUERY,
19
+ * { addresses: ['0x...', '0x...'], chainId: 1 }
20
+ * );
21
+ * ```
22
+ */
23
+ export const EXPORT_VAULTS_QUERY = `
24
+ query ExportVaults($addresses: [String!]!, $chainId: Int!) {
25
+ vaults(where: { address_in: $addresses, chainId_eq: $chainId }) {
26
+ items {
27
+ ...VaultFragment
28
+ }
29
+ }
30
+ }
31
+ ${VAULT_FRAGMENT}
32
+ `;
33
+ /**
34
+ * GraphQL query for transaction export
35
+ *
36
+ * Fetches transaction data with essential fields for export.
37
+ * Includes deposit, redeem, and request transactions.
38
+ *
39
+ * Used by: export_data tool (dataType: 'transactions')
40
+ *
41
+ * Usage:
42
+ * ```typescript
43
+ * const data = await graphqlClient.request<TransactionsExportResponse>(
44
+ * EXPORT_TRANSACTIONS_QUERY,
45
+ * { vault_in: ['0x...'], chainId: 1, first: 1000 }
46
+ * );
47
+ * ```
48
+ */
49
+ export const EXPORT_TRANSACTIONS_QUERY = `
50
+ query ExportTransactions($vault_in: [Address!]!, $chainId: Int!, $first: Int!) {
51
+ transactions(
52
+ where: { vault_in: $vault_in, chainId_eq: $chainId },
53
+ orderBy: timestamp,
54
+ orderDirection: desc,
55
+ first: $first
56
+ ) {
57
+ items {
58
+ ...TransactionBaseFragment
59
+ data {
60
+ ... on SettleDeposit {
61
+ assetsDeposited
62
+ assetsDepositedUsd
63
+ sharesMinted
64
+ vault {
65
+ id
66
+ address
67
+ symbol
68
+ decimals
69
+ asset {
70
+ decimals
71
+ }
72
+ }
73
+ }
74
+ ... on SettleRedeem {
75
+ assetsWithdrawed
76
+ assetsWithdrawedUsd
77
+ sharesBurned
78
+ vault {
79
+ id
80
+ address
81
+ symbol
82
+ decimals
83
+ asset {
84
+ decimals
85
+ }
86
+ }
87
+ }
88
+ ... on DepositRequest {
89
+ owner
90
+ assets
91
+ assetsUsd
92
+ vault {
93
+ id
94
+ address
95
+ symbol
96
+ decimals
97
+ asset {
98
+ decimals
99
+ }
100
+ }
101
+ }
102
+ ... on RedeemRequest {
103
+ owner
104
+ shares
105
+ sharesUsd
106
+ vault {
107
+ id
108
+ address
109
+ symbol
110
+ decimals
111
+ asset {
112
+ decimals
113
+ }
114
+ }
115
+ }
116
+ }
117
+ }
118
+ }
119
+ }
120
+ ${TRANSACTION_BASE_FRAGMENT}
121
+ `;
122
+ /**
123
+ * GraphQL query for price history export
124
+ *
125
+ * Fetches historical price data for OHLCV export.
126
+ *
127
+ * Used by: export_data tool (dataType: 'price_history')
128
+ *
129
+ * Usage:
130
+ * ```typescript
131
+ * const data = await graphqlClient.request<PriceHistoryExportResponse>(
132
+ * EXPORT_PRICE_HISTORY_QUERY,
133
+ * { vault_in: ['0x...'], first: 1000 }
134
+ * );
135
+ * ```
136
+ */
137
+ export const EXPORT_PRICE_HISTORY_QUERY = `
138
+ query ExportPriceHistory($vault_in: [Address!]!, $first: Int!) {
139
+ transactions(
140
+ where: { vault_in: $vault_in, type_in: [TotalAssetsUpdated] },
141
+ orderBy: timestamp,
142
+ orderDirection: asc,
143
+ first: $first
144
+ ) {
145
+ items {
146
+ timestamp
147
+ data {
148
+ ... on TotalAssetsUpdated {
149
+ totalAssets
150
+ totalAssetsUsd
151
+ totalSupply
152
+ vault {
153
+ id
154
+ address
155
+ symbol
156
+ decimals
157
+ asset {
158
+ decimals
159
+ }
160
+ }
161
+ }
162
+ }
163
+ }
164
+ }
165
+ }
166
+ `;
167
+ /**
168
+ * GraphQL query for performance metrics export
169
+ *
170
+ * Fetches TVL history for performance metric export.
171
+ *
172
+ * Used by: export_data tool (dataType: 'performance')
173
+ *
174
+ * Usage:
175
+ * ```typescript
176
+ * const data = await graphqlClient.request<PerformanceExportResponse>(
177
+ * EXPORT_PERFORMANCE_QUERY,
178
+ * { vault_in: ['0x...'], first: 1000 }
179
+ * );
180
+ * ```
181
+ */
182
+ export const EXPORT_PERFORMANCE_QUERY = `
183
+ query ExportPerformance($vault_in: [Address!]!, $first: Int!) {
184
+ transactions(
185
+ where: { vault_in: $vault_in, type_in: [TotalAssetsUpdated] },
186
+ orderBy: timestamp,
187
+ orderDirection: asc,
188
+ first: $first
189
+ ) {
190
+ items {
191
+ timestamp
192
+ blockNumber
193
+ data {
194
+ ... on TotalAssetsUpdated {
195
+ totalAssetsUsd
196
+ }
197
+ }
198
+ }
199
+ }
200
+ }
201
+ `;
202
+ //# sourceMappingURL=export.queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/export.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAElF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;IAQ/B,cAAc;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuErC,yBAAyB;CAC5B,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BzC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;;;;;;;;;;;;;;;;;;;CAmBvC,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * GraphQL Queries Index
3
+ *
4
+ * Central export point for all GraphQL queries.
5
+ * Import from this file for convenience: `import { GET_VAULT_DATA_QUERY } from '../graphql/queries'`
6
+ */
7
+ export { GET_VAULT_DATA_QUERY, GET_VAULT_FOR_APR_QUERY, COMPARE_VAULTS_QUERY, } from './vault.queries.js';
8
+ export { TRANSACTIONS_QUERY, PRICE_HISTORY_QUERY } from './transaction.queries.js';
9
+ export { GET_VAULT_PERFORMANCE_QUERY, GET_PERIOD_SUMMARIES_QUERY } from './performance.queries.js';
10
+ export { GET_USER_PORTFOLIO_QUERY, createGetUserPortfolioQuery, type PortfolioResponseFormat, SINGLE_VAULT_OPTIMIZATION_QUERY, PORTFOLIO_OPTIMIZATION_QUERY, } from './portfolio.queries.js';
11
+ export { RISK_ANALYSIS_QUERY } from './risk.queries.js';
12
+ export { YIELD_PREDICTION_QUERY, createYieldPredictionQuery, type PredictionResponseFormat, } from './prediction.queries.js';
13
+ export { EXPORT_VAULTS_QUERY, EXPORT_TRANSACTIONS_QUERY, EXPORT_PRICE_HISTORY_QUERY, EXPORT_PERFORMANCE_QUERY, } from './export.queries.js';
14
+ export { SEARCH_VAULTS_QUERY, createSearchVaultsQuery, type SearchVaultsResponseFormat, } from './search.queries.js';
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGnF,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAGnG,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,KAAK,uBAAuB,EAC5B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,KAAK,wBAAwB,GAC9B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * GraphQL Queries Index
3
+ *
4
+ * Central export point for all GraphQL queries.
5
+ * Import from this file for convenience: `import { GET_VAULT_DATA_QUERY } from '../graphql/queries'`
6
+ */
7
+ // Vault Queries
8
+ export { GET_VAULT_DATA_QUERY, GET_VAULT_FOR_APR_QUERY, COMPARE_VAULTS_QUERY, } from './vault.queries.js';
9
+ // Transaction Queries
10
+ export { TRANSACTIONS_QUERY, PRICE_HISTORY_QUERY } from './transaction.queries.js';
11
+ // Performance Queries
12
+ export { GET_VAULT_PERFORMANCE_QUERY, GET_PERIOD_SUMMARIES_QUERY } from './performance.queries.js';
13
+ // Portfolio Queries
14
+ export { GET_USER_PORTFOLIO_QUERY, createGetUserPortfolioQuery, SINGLE_VAULT_OPTIMIZATION_QUERY, PORTFOLIO_OPTIMIZATION_QUERY, } from './portfolio.queries.js';
15
+ // Risk Queries
16
+ export { RISK_ANALYSIS_QUERY } from './risk.queries.js';
17
+ // Prediction Queries
18
+ export { YIELD_PREDICTION_QUERY, createYieldPredictionQuery, } from './prediction.queries.js';
19
+ // Export Queries
20
+ export { EXPORT_VAULTS_QUERY, EXPORT_TRANSACTIONS_QUERY, EXPORT_PRICE_HISTORY_QUERY, EXPORT_PERFORMANCE_QUERY, } from './export.queries.js';
21
+ // Search Queries
22
+ export { SEARCH_VAULTS_QUERY, createSearchVaultsQuery, } from './search.queries.js';
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graphql/queries/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,gBAAgB;AAChB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,sBAAsB;AACtB,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEnF,sBAAsB;AACtB,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEnG,oBAAoB;AACpB,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAE3B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAEhC,eAAe;AACf,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,qBAAqB;AACrB,OAAO,EACL,sBAAsB,EACtB,0BAA0B,GAE3B,MAAM,yBAAyB,CAAC;AAEjC,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAE7B,iBAAiB;AACjB,OAAO,EACL,mBAAmB,EACnB,uBAAuB,GAExB,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Performance Queries
3
+ *
4
+ * GraphQL queries for vault performance tracking and historical metrics.
5
+ * Includes vault performance analysis and period summaries for APR calculations.
6
+ */
7
+ /**
8
+ * Vault performance GraphQL query
9
+ *
10
+ * Fetches transactions with TotalAssetsUpdated and PeriodSummary data for
11
+ * historical metrics and trend analysis. Provides time-series performance data.
12
+ *
13
+ * Used by: get_vault_performance tool
14
+ *
15
+ * Usage:
16
+ * ```typescript
17
+ * const data = await graphqlClient.request<VaultPerformanceResponse>(
18
+ * GET_VAULT_PERFORMANCE_QUERY,
19
+ * {
20
+ * where: {
21
+ * vault_in: ['0x...'],
22
+ * type_in: ['TotalAssetsUpdated', 'PeriodSummary']
23
+ * },
24
+ * orderBy: 'timestamp',
25
+ * orderDirection: 'asc',
26
+ * first: 1000
27
+ * }
28
+ * );
29
+ * ```
30
+ */
31
+ export declare const GET_VAULT_PERFORMANCE_QUERY = "\n query GetVaultPerformance(\n $where: TransactionFilterInput!,\n $orderBy: TransactionOrderBy!,\n $orderDirection: OrderDirection!,\n $first: Int!\n ) {\n transactions(\n where: $where,\n orderBy: $orderBy,\n orderDirection: $orderDirection,\n first: $first\n ) {\n items {\n ...TransactionBaseFragment\n data {\n ... on TotalAssetsUpdated {\n totalAssetsUsd\n totalAssets\n }\n ... on PeriodSummary {\n duration\n totalAssetsAtStart\n totalAssetsAtEnd\n totalSupplyAtStart\n totalSupplyAtEnd\n netTotalSupplyAtEnd\n }\n }\n }\n pageInfo {\n ...PageInfoMinimalFragment\n }\n }\n }\n \n fragment TransactionBaseFragment on Transaction {\n id\n type\n timestamp\n blockNumber\n hash\n logIndex\n chain {\n id\n name\n }\n }\n\n \n fragment PageInfoMinimalFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n }\n\n";
32
+ /**
33
+ * Query to fetch period summaries for a vault
34
+ *
35
+ * Period summaries contain historical snapshots of vault state at regular intervals.
36
+ * Used by Lagoon SDK to calculate accurate APR from price per share changes over time.
37
+ *
38
+ * Note: The GraphQL API doesn't have a direct 'periodSummaries' query. PeriodSummary data
39
+ * is fetched through the transactions query with type filtering.
40
+ *
41
+ * Used by: get_vault_performance tool (via calculateSDKAPR function)
42
+ *
43
+ * Usage:
44
+ * ```typescript
45
+ * const data = await graphqlClient.request<{ transactions: { items: Transaction[] } }>(
46
+ * GET_PERIOD_SUMMARIES_QUERY,
47
+ * {
48
+ * where: {
49
+ * vault_in: ['0x...'],
50
+ * chainId_eq: 1,
51
+ * type_in: ['PeriodSummary']
52
+ * },
53
+ * orderBy: 'timestamp',
54
+ * orderDirection: 'asc',
55
+ * first: 1000
56
+ * }
57
+ * );
58
+ * ```
59
+ *
60
+ * @returns Transactions containing PeriodSummary data with timestamp and vault state
61
+ */
62
+ export declare const GET_PERIOD_SUMMARIES_QUERY = "\n query GetPeriodSummaries(\n $where: TransactionFilterInput!,\n $orderBy: TransactionOrderBy!,\n $orderDirection: OrderDirection!,\n $first: Int!\n ) {\n transactions(\n where: $where,\n orderBy: $orderBy,\n orderDirection: $orderDirection,\n first: $first\n ) {\n items {\n timestamp\n data {\n ... on PeriodSummary {\n duration\n totalAssetsAtStart\n totalAssetsAtEnd\n totalSupplyAtStart\n totalSupplyAtEnd\n netTotalSupplyAtEnd\n }\n }\n }\n pageInfo {\n ...PageInfoMinimalFragment\n }\n }\n }\n \n fragment PageInfoMinimalFragment on PageInfo {\n hasNextPage\n hasPreviousPage\n }\n\n";
63
+ //# sourceMappingURL=performance.queries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"performance.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/performance.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,2BAA2B,4jCAqCvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,0BAA0B,6wBAgCtC,CAAC"}
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Performance Queries
3
+ *
4
+ * GraphQL queries for vault performance tracking and historical metrics.
5
+ * Includes vault performance analysis and period summaries for APR calculations.
6
+ */
7
+ import { TRANSACTION_BASE_FRAGMENT, PAGEINFO_MINIMAL_FRAGMENT } from '../fragments/index.js';
8
+ /**
9
+ * Vault performance GraphQL query
10
+ *
11
+ * Fetches transactions with TotalAssetsUpdated and PeriodSummary data for
12
+ * historical metrics and trend analysis. Provides time-series performance data.
13
+ *
14
+ * Used by: get_vault_performance tool
15
+ *
16
+ * Usage:
17
+ * ```typescript
18
+ * const data = await graphqlClient.request<VaultPerformanceResponse>(
19
+ * GET_VAULT_PERFORMANCE_QUERY,
20
+ * {
21
+ * where: {
22
+ * vault_in: ['0x...'],
23
+ * type_in: ['TotalAssetsUpdated', 'PeriodSummary']
24
+ * },
25
+ * orderBy: 'timestamp',
26
+ * orderDirection: 'asc',
27
+ * first: 1000
28
+ * }
29
+ * );
30
+ * ```
31
+ */
32
+ export const GET_VAULT_PERFORMANCE_QUERY = `
33
+ query GetVaultPerformance(
34
+ $where: TransactionFilterInput!,
35
+ $orderBy: TransactionOrderBy!,
36
+ $orderDirection: OrderDirection!,
37
+ $first: Int!
38
+ ) {
39
+ transactions(
40
+ where: $where,
41
+ orderBy: $orderBy,
42
+ orderDirection: $orderDirection,
43
+ first: $first
44
+ ) {
45
+ items {
46
+ ...TransactionBaseFragment
47
+ data {
48
+ ... on TotalAssetsUpdated {
49
+ totalAssetsUsd
50
+ totalAssets
51
+ }
52
+ ... on PeriodSummary {
53
+ duration
54
+ totalAssetsAtStart
55
+ totalAssetsAtEnd
56
+ totalSupplyAtStart
57
+ totalSupplyAtEnd
58
+ netTotalSupplyAtEnd
59
+ }
60
+ }
61
+ }
62
+ pageInfo {
63
+ ...PageInfoMinimalFragment
64
+ }
65
+ }
66
+ }
67
+ ${TRANSACTION_BASE_FRAGMENT}
68
+ ${PAGEINFO_MINIMAL_FRAGMENT}
69
+ `;
70
+ /**
71
+ * Query to fetch period summaries for a vault
72
+ *
73
+ * Period summaries contain historical snapshots of vault state at regular intervals.
74
+ * Used by Lagoon SDK to calculate accurate APR from price per share changes over time.
75
+ *
76
+ * Note: The GraphQL API doesn't have a direct 'periodSummaries' query. PeriodSummary data
77
+ * is fetched through the transactions query with type filtering.
78
+ *
79
+ * Used by: get_vault_performance tool (via calculateSDKAPR function)
80
+ *
81
+ * Usage:
82
+ * ```typescript
83
+ * const data = await graphqlClient.request<{ transactions: { items: Transaction[] } }>(
84
+ * GET_PERIOD_SUMMARIES_QUERY,
85
+ * {
86
+ * where: {
87
+ * vault_in: ['0x...'],
88
+ * chainId_eq: 1,
89
+ * type_in: ['PeriodSummary']
90
+ * },
91
+ * orderBy: 'timestamp',
92
+ * orderDirection: 'asc',
93
+ * first: 1000
94
+ * }
95
+ * );
96
+ * ```
97
+ *
98
+ * @returns Transactions containing PeriodSummary data with timestamp and vault state
99
+ */
100
+ export const GET_PERIOD_SUMMARIES_QUERY = `
101
+ query GetPeriodSummaries(
102
+ $where: TransactionFilterInput!,
103
+ $orderBy: TransactionOrderBy!,
104
+ $orderDirection: OrderDirection!,
105
+ $first: Int!
106
+ ) {
107
+ transactions(
108
+ where: $where,
109
+ orderBy: $orderBy,
110
+ orderDirection: $orderDirection,
111
+ first: $first
112
+ ) {
113
+ items {
114
+ timestamp
115
+ data {
116
+ ... on PeriodSummary {
117
+ duration
118
+ totalAssetsAtStart
119
+ totalAssetsAtEnd
120
+ totalSupplyAtStart
121
+ totalSupplyAtEnd
122
+ netTotalSupplyAtEnd
123
+ }
124
+ }
125
+ }
126
+ pageInfo {
127
+ ...PageInfoMinimalFragment
128
+ }
129
+ }
130
+ }
131
+ ${PAGEINFO_MINIMAL_FRAGMENT}
132
+ `;
133
+ //# sourceMappingURL=performance.queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"performance.queries.js","sourceRoot":"","sources":["../../../src/graphql/queries/performance.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAE7F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmCvC,yBAAyB;IACzB,yBAAyB;CAC5B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA+BtC,yBAAyB;CAC5B,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * GraphQL Query: Period Summaries
3
+ *
4
+ * Fetch historical vault period summaries for APR calculations.
5
+ */
6
+ /**
7
+ * Query to fetch period summaries for a vault
8
+ *
9
+ * Period summaries contain historical snapshots of vault state at regular intervals.
10
+ * Used by SDK to calculate accurate APR from price per share changes over time.
11
+ *
12
+ * @returns Array of period summaries with timestamp and vault state
13
+ */
14
+ export declare const GET_PERIOD_SUMMARIES_QUERY: string;
15
+ //# sourceMappingURL=period-summaries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"period-summaries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/period-summaries.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,QAQtC,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * GraphQL Query: Period Summaries
3
+ *
4
+ * Fetch historical vault period summaries for APR calculations.
5
+ */
6
+ import { gql } from 'graphql-request';
7
+ /**
8
+ * Query to fetch period summaries for a vault
9
+ *
10
+ * Period summaries contain historical snapshots of vault state at regular intervals.
11
+ * Used by SDK to calculate accurate APR from price per share changes over time.
12
+ *
13
+ * @returns Array of period summaries with timestamp and vault state
14
+ */
15
+ export const GET_PERIOD_SUMMARIES_QUERY = gql `
16
+ query GetPeriodSummaries($vaultAddress: String!, $chainId: Int!) {
17
+ periodSummaries(vaultAddress: $vaultAddress, chainId: $chainId) {
18
+ timestamp
19
+ totalAssetsAtStart
20
+ totalSupplyAtStart
21
+ }
22
+ }
23
+ `;
24
+ //# sourceMappingURL=period-summaries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"period-summaries.js","sourceRoot":"","sources":["../../../src/graphql/queries/period-summaries.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAA;;;;;;;;CAQ5C,CAAC"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Portfolio Queries
3
+ *
4
+ * GraphQL queries for user portfolio operations.
5
+ * Includes user portfolio data and portfolio optimization queries.
6
+ */
7
+ /**
8
+ * Response format type for user portfolio query
9
+ */
10
+ export type PortfolioResponseFormat = 'list' | 'summary' | 'full';
11
+ /**
12
+ * Create user portfolio GraphQL query with dynamic fragment selection
13
+ *
14
+ * Fetches complete user portfolio with vault positions and metadata.
15
+ * Fragment selection optimizes token usage based on required detail level.
16
+ *
17
+ * Used by: get_user_portfolio tool
18
+ *
19
+ * @param responseFormat - Detail level: 'list' (~60 tokens/vault), 'summary' (~170 tokens/vault), 'full' (~600 tokens/vault)
20
+ * @returns GraphQL query string with appropriate fragment
21
+ *
22
+ * Usage:
23
+ * ```typescript
24
+ * const query = createGetUserPortfolioQuery('summary'); // Balanced data
25
+ * const data = await graphqlClient.request<UserPortfolioResponse>(
26
+ * query,
27
+ * { where: { user_eq: '0x...' } }
28
+ * );
29
+ * ```
30
+ *
31
+ * Token optimization:
32
+ * - list: ~60 tokens/position (minimal vault data)
33
+ * - summary: ~170 tokens/position (balanced - includes curators, descriptions)
34
+ * - full: ~600 tokens/position (complete vault data)
35
+ *
36
+ * For a user with 10 positions:
37
+ * - list: 600 tokens (90% reduction)
38
+ * - summary: 1,700 tokens (72% reduction)
39
+ * - full: 6,000 tokens (current behavior)
40
+ */
41
+ export declare function createGetUserPortfolioQuery(responseFormat?: PortfolioResponseFormat): string;
42
+ /**
43
+ * User portfolio GraphQL query (legacy - uses full fragment)
44
+ *
45
+ * @deprecated Use createGetUserPortfolioQuery('full') instead for explicit fragment selection
46
+ *
47
+ * This maintains backward compatibility for existing code.
48
+ * Consider migrating to createGetUserPortfolioQuery() for better token efficiency.
49
+ */
50
+ export declare const GET_USER_PORTFOLIO_QUERY: string;
51
+ /**
52
+ * GraphQL query for single vault optimization data
53
+ *
54
+ * Fetches one vault with its historical price and performance metrics
55
+ * for portfolio optimization calculations. Used in parallel queries.
56
+ *
57
+ * Used by: optimize_portfolio tool (per-vault queries)
58
+ *
59
+ * Usage:
60
+ * ```typescript
61
+ * const data = await graphqlClient.request<SingleVaultOptimizationResponse>(
62
+ * SINGLE_VAULT_OPTIMIZATION_QUERY,
63
+ * { vaultAddress: '0x...', chainId: 1 }
64
+ * );
65
+ * ```
66
+ */
67
+ export declare const SINGLE_VAULT_OPTIMIZATION_QUERY = "\n query SingleVaultOptimization($vaultAddress: Address!, $chainId: Int!) {\n vault: vaultByAddress(address: $vaultAddress, chainId: $chainId) {\n ...VaultFragment\n }\n\n # Get price history for volatility calculation\n priceHistory: transactions(\n where: {\n vault_in: [$vaultAddress],\n type_in: [TotalAssetsUpdated]\n },\n orderBy: timestamp,\n orderDirection: asc,\n first: 1000\n ) {\n items {\n timestamp\n data {\n ... on TotalAssetsUpdated {\n totalAssets\n totalAssetsUsd\n totalSupply\n vault {\n decimals\n asset {\n decimals\n }\n }\n }\n }\n }\n }\n }\n \n fragment VaultFragment on Vault {\n address\n symbol\n decimals\n name\n description\n shortDescription\n maxCapacity\n logoUrl\n averageSettlement\n isVisible\n asset {\n ...AssetInfoFragment\n }\n chain {\n ...ChainInfoFragment\n }\n state {\n state\n totalAssets\n totalAssetsUsd\n totalSupply\n pricePerShare\n pricePerShareUsd\n safeAssetBalance\n liveAPR {\n grossApr\n name\n netApr\n description\n }\n roles {\n owner\n valuationManager\n whitelistManager\n safe\n feeReceiver\n }\n managementFee\n performanceFee\n pendingSettlement {\n assets\n assetsUsd\n shares\n }\n inceptionApr {\n ...APRBreakdownFragment\n }\n pendingSiloBalances {\n assets\n shares\n }\n monthlyApr {\n ...APRBreakdownFragment\n }\n newTotalAssets\n highWaterMark\n lastFeeTime\n safeAssetBalanceUsd\n weeklyApr {\n ...APRBreakdownFragment\n }\n yearlyApr {\n ...APRBreakdownFragment\n }\n }\n curators {\n name\n id\n aboutDescription\n logoUrl\n url\n }\n integrator {\n name\n url\n logoUrl\n aboutDescription\n }\n defiIntegrations {\n name\n description\n link\n logoUrl\n type\n }\n }\n \n fragment AssetInfoFragment on Asset {\n id\n name\n symbol\n decimals\n address\n logoUrl\n description\n isVisible\n priceUsd\n chain {\n id\n name\n nativeToken\n logoUrl\n }\n }\n\n \n fragment ChainInfoFragment on Chain {\n id\n name\n nativeToken\n logoUrl\n wrappedNativeToken {\n address\n decimals\n name\n symbol\n }\n factory\n }\n\n \n fragment APRBreakdownFragment on APRs {\n linearNetApr\n linearNetAprWithoutExtraYields\n airdrops {\n name\n apr\n description\n distributionTimestamp\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n ppsIncrease\n startTimestamp\n }\n incentives {\n name\n apr\n aprDescription\n description\n endTimestamp\n incentiveRate {\n incentiveAmount\n referenceToken {\n id\n }\n referenceTokenAmount\n }\n }\n nativeYields {\n name\n apr\n aprDescription\n description\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n startTimestamp\n }\n }\n\n\n";
68
+ /**
69
+ * GraphQL query for portfolio optimization data (DEPRECATED)
70
+ *
71
+ * This query is deprecated in favor of SINGLE_VAULT_OPTIMIZATION_QUERY
72
+ * executed in parallel for each vault. Multi-vault queries cannot
73
+ * distinguish which transactions belong to which vault.
74
+ *
75
+ * @deprecated Use SINGLE_VAULT_OPTIMIZATION_QUERY with Promise.all instead
76
+ */
77
+ export declare const PORTFOLIO_OPTIMIZATION_QUERY = "\n query PortfolioOptimization($vaultAddresses: [Address!]!, $chainId: Int!) {\n vaults(where: { address_in: $vaultAddresses, chainId_eq: $chainId }) {\n items {\n ...VaultFragment\n }\n }\n\n # Get price history for volatility calculation\n priceHistory: transactions(\n where: {\n vault_in: $vaultAddresses,\n type_in: [\"TotalAssetsUpdated\"]\n },\n orderBy: \"timestamp\",\n orderDirection: \"asc\",\n first: 1000\n ) {\n items {\n timestamp\n data {\n ... on TotalAssetsUpdated {\n pricePerShareUsd\n }\n }\n }\n }\n\n # Get APR data for return estimation\n performanceData: transactions(\n where: {\n vault_in: $vaultAddresses,\n type_in: [\"PeriodSummary\"]\n },\n orderBy: \"timestamp\",\n orderDirection: \"asc\",\n first: 1000\n ) {\n items {\n timestamp\n data {\n ... on PeriodSummary {\n linearNetApr\n }\n }\n }\n }\n }\n \n fragment VaultFragment on Vault {\n address\n symbol\n decimals\n name\n description\n shortDescription\n maxCapacity\n logoUrl\n averageSettlement\n isVisible\n asset {\n ...AssetInfoFragment\n }\n chain {\n ...ChainInfoFragment\n }\n state {\n state\n totalAssets\n totalAssetsUsd\n totalSupply\n pricePerShare\n pricePerShareUsd\n safeAssetBalance\n liveAPR {\n grossApr\n name\n netApr\n description\n }\n roles {\n owner\n valuationManager\n whitelistManager\n safe\n feeReceiver\n }\n managementFee\n performanceFee\n pendingSettlement {\n assets\n assetsUsd\n shares\n }\n inceptionApr {\n ...APRBreakdownFragment\n }\n pendingSiloBalances {\n assets\n shares\n }\n monthlyApr {\n ...APRBreakdownFragment\n }\n newTotalAssets\n highWaterMark\n lastFeeTime\n safeAssetBalanceUsd\n weeklyApr {\n ...APRBreakdownFragment\n }\n yearlyApr {\n ...APRBreakdownFragment\n }\n }\n curators {\n name\n id\n aboutDescription\n logoUrl\n url\n }\n integrator {\n name\n url\n logoUrl\n aboutDescription\n }\n defiIntegrations {\n name\n description\n link\n logoUrl\n type\n }\n }\n \n fragment AssetInfoFragment on Asset {\n id\n name\n symbol\n decimals\n address\n logoUrl\n description\n isVisible\n priceUsd\n chain {\n id\n name\n nativeToken\n logoUrl\n }\n }\n\n \n fragment ChainInfoFragment on Chain {\n id\n name\n nativeToken\n logoUrl\n wrappedNativeToken {\n address\n decimals\n name\n symbol\n }\n factory\n }\n\n \n fragment APRBreakdownFragment on APRs {\n linearNetApr\n linearNetAprWithoutExtraYields\n airdrops {\n name\n apr\n description\n distributionTimestamp\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n ppsIncrease\n startTimestamp\n }\n incentives {\n name\n apr\n aprDescription\n description\n endTimestamp\n incentiveRate {\n incentiveAmount\n referenceToken {\n id\n }\n referenceTokenAmount\n }\n }\n nativeYields {\n name\n apr\n aprDescription\n description\n endTimestamp\n isEstimation\n logoUrl\n multiplier\n startTimestamp\n }\n }\n\n\n";
78
+ //# sourceMappingURL=portfolio.queries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portfolio.queries.d.ts","sourceRoot":"","sources":["../../../src/graphql/queries/portfolio.queries.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAqBlE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,2BAA2B,CACzC,cAAc,GAAE,uBAAmC,GAClD,MAAM,CAyBR;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,QAAsC,CAAC;AAE5E;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,+BAA+B,s6GAmC3C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,0sHAiDxC,CAAC"}