@merkl/api 1.19.2 → 1.20.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 (290) hide show
  1. package/dist/src/cache/declaration.d.ts +0 -5
  2. package/dist/src/cache/declaration.js.map +1 -1
  3. package/dist/src/constants.d.ts +3 -1
  4. package/dist/src/constants.js.map +1 -1
  5. package/dist/src/eden/index.d.ts +921 -275
  6. package/dist/src/engine/deprecated/dynamicData/implementations/Erc20.d.ts +60 -0
  7. package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound1.js.map +1 -1
  8. package/dist/src/engine/implementations/Aave/metadata.d.ts +3 -3
  9. package/dist/src/engine/implementations/Aave/metadata.js.map +1 -1
  10. package/dist/src/engine/implementations/AaveNetBorrowing/metadata.d.ts +1 -1
  11. package/dist/src/engine/implementations/AaveNetLending/metadata.d.ts +1 -1
  12. package/dist/src/engine/implementations/AaveV4SpokeBorrowFromCollateral/metadata.d.ts +25 -0
  13. package/dist/src/engine/implementations/AaveV4SpokeBorrowFromCollateral/metadata.js.map +1 -0
  14. package/dist/src/engine/implementations/Erc20/subTypes/factories.js.map +1 -1
  15. package/dist/src/engine/implementations/Erc20/subTypes/implementations/bunni/metadata.js.map +1 -1
  16. package/dist/src/engine/implementations/Erc20/subTypes/implementations/bunni/tvl.js.map +1 -1
  17. package/dist/src/engine/implementations/Erc20/subTypes/implementations/euler/metadata.js.map +1 -1
  18. package/dist/src/engine/implementations/Erc20/subTypes/implementations/eulerEarn/metadata.js.map +1 -1
  19. package/dist/src/engine/implementations/Erc20/subTypes/implementations/royco/metadata.d.ts +17 -0
  20. package/dist/src/engine/implementations/Erc20/subTypes/implementations/royco/metadata.js.map +1 -0
  21. package/dist/src/engine/implementations/Erc20/subTypes/implementations/royco/tvl.d.ts +7 -0
  22. package/dist/src/engine/implementations/Erc20/subTypes/implementations/royco/tvl.js.map +1 -0
  23. package/dist/src/engine/implementations/Erc20/subTypes/index.d.ts +2 -1
  24. package/dist/src/engine/implementations/Erc20/subTypes/index.js.map +1 -1
  25. package/dist/src/engine/implementations/ErcMultiToken/metadata.d.ts +1 -1
  26. package/dist/src/engine/implementations/EulerBorrowFromCollateral/metadata.d.ts +25 -0
  27. package/dist/src/engine/implementations/EulerBorrowFromCollateral/metadata.js.map +1 -0
  28. package/dist/src/engine/implementations/LlamalendV2Borrow/metadata.d.ts +20 -0
  29. package/dist/src/engine/implementations/LlamalendV2Borrow/metadata.js.map +1 -0
  30. package/dist/src/engine/implementations/LlamalendV2Supply/metadata.d.ts +20 -0
  31. package/dist/src/engine/implementations/LlamalendV2Supply/metadata.js.map +1 -0
  32. package/dist/src/engine/implementations/MerklCredit/metadata.d.ts +15 -0
  33. package/dist/src/engine/implementations/MerklCredit/metadata.js.map +1 -0
  34. package/dist/src/engine/implementations/MultiLendBorrow/metadata.js.map +1 -1
  35. package/dist/src/engine/implementations/MultiLog/metadata.js.map +1 -1
  36. package/dist/src/engine/implementations/Royco/metadata.d.ts +6 -3
  37. package/dist/src/engine/implementations/Royco/metadata.js.map +1 -1
  38. package/dist/src/engine/implementations/Royco/tvl.d.ts +15 -0
  39. package/dist/src/engine/implementations/Royco/tvl.js.map +1 -0
  40. package/dist/src/engine/implementations/clamm/tvl.abstract.d.ts +1 -1
  41. package/dist/src/engine/implementations/pancakeSwapInfinity/metadata.d.ts +19 -0
  42. package/dist/src/engine/implementations/pancakeSwapInfinity/metadata.js.map +1 -0
  43. package/dist/src/engine/metadata/factory.js.map +1 -1
  44. package/dist/src/engine/nativeAPR/factory.js.map +1 -1
  45. package/dist/src/engine/nativeAPR/implementations/balancer.d.ts +16 -0
  46. package/dist/src/engine/nativeAPR/implementations/balancer.js.map +1 -0
  47. package/dist/src/engine/nativeAPR/implementations/curve.d.ts +17 -0
  48. package/dist/src/engine/nativeAPR/implementations/curve.js.map +1 -0
  49. package/dist/src/engine/nativeAPR/implementations/dolomite.d.ts +17 -0
  50. package/dist/src/engine/nativeAPR/implementations/dolomite.js.map +1 -0
  51. package/dist/src/engine/nativeAPR/implementations/gamma.d.ts +14 -0
  52. package/dist/src/engine/nativeAPR/implementations/gamma.js.map +1 -0
  53. package/dist/src/engine/nativeAPR/implementations/ipor.d.ts +12 -0
  54. package/dist/src/engine/nativeAPR/implementations/ipor.js.map +1 -0
  55. package/dist/src/engine/nativeAPR/implementations/pendle.d.ts +22 -0
  56. package/dist/src/engine/nativeAPR/implementations/pendle.js.map +1 -0
  57. package/dist/src/engine/nativeAPR/implementations/spectra.d.ts +16 -0
  58. package/dist/src/engine/nativeAPR/implementations/spectra.js.map +1 -0
  59. package/dist/src/engine/tvl/factory.js.map +1 -1
  60. package/dist/src/guards/CampaignAccess.guard.d.ts +18 -16
  61. package/dist/src/guards/CampaignAccess.guard.js.map +1 -1
  62. package/dist/src/index.d.ts +998 -275
  63. package/dist/src/index.js.map +1 -1
  64. package/dist/src/jobs/claim-etl/config.d.ts +11 -3
  65. package/dist/src/jobs/claim-etl/config.js.map +1 -1
  66. package/dist/src/jobs/claim-etl/index.js.map +1 -1
  67. package/dist/src/jobs/claim-etl/load.d.ts +35 -22
  68. package/dist/src/jobs/claim-etl/load.js.map +1 -1
  69. package/dist/src/jobs/claim-etl/types.d.ts +26 -27
  70. package/dist/src/jobs/claim-etl/types.js.map +1 -1
  71. package/dist/src/jobs/deposit-credit-etl/config.d.ts +13 -0
  72. package/dist/src/jobs/deposit-credit-etl/config.js.map +1 -0
  73. package/dist/src/jobs/deposit-credit-etl/index.d.ts +16 -0
  74. package/dist/src/jobs/deposit-credit-etl/index.js.map +1 -0
  75. package/dist/src/jobs/deposit-credit-etl/load.d.ts +13 -0
  76. package/dist/src/jobs/deposit-credit-etl/load.js.map +1 -0
  77. package/dist/src/jobs/deposit-credit-etl/types.d.ts +11 -0
  78. package/dist/src/jobs/deposit-credit-etl/types.js.map +1 -0
  79. package/dist/src/jobs/diff-breakdown-etl/load.js.map +1 -1
  80. package/dist/src/jobs/error-digest.d.ts +1 -0
  81. package/dist/src/jobs/error-digest.js.map +1 -0
  82. package/dist/src/jobs/leaf-breakdown-etl/load.js.map +1 -1
  83. package/dist/src/jobs/post-urgent-stack.js.map +1 -1
  84. package/dist/src/jobs/prices.js.map +1 -1
  85. package/dist/src/jobs/refresh-materialized-views.js.map +1 -1
  86. package/dist/src/jobs/set-dungeon-keeper.js.map +1 -1
  87. package/dist/src/jobs/sync-campaigns-to-hubspot.js.map +1 -1
  88. package/dist/src/jobs/tx-executor/diagnostics.js.map +1 -1
  89. package/dist/src/modules/v4/accounting/accounting.controller.d.ts +160 -0
  90. package/dist/src/modules/v4/accounting/accounting.controller.js.map +1 -1
  91. package/dist/src/modules/v4/accounting/accounting.model.d.ts +6 -0
  92. package/dist/src/modules/v4/accounting/accounting.model.js.map +1 -1
  93. package/dist/src/modules/v4/accounting/accounting.repository.d.ts +87 -0
  94. package/dist/src/modules/v4/accounting/accounting.repository.js.map +1 -1
  95. package/dist/src/modules/v4/accounting/accounting.service.d.ts +47 -0
  96. package/dist/src/modules/v4/accounting/accounting.service.js.map +1 -1
  97. package/dist/src/modules/v4/apiKey/apiKey.repository.d.ts +3 -0
  98. package/dist/src/modules/v4/apiKey/apiKey.repository.js.map +1 -1
  99. package/dist/src/modules/v4/apr/apr.model.d.ts +2 -0
  100. package/dist/src/modules/v4/authentication/authentication.service.js.map +1 -1
  101. package/dist/src/modules/v4/autoclaim/autoclaim.controller.d.ts +4 -0
  102. package/dist/src/modules/v4/autoclaim/autoclaim.repository.d.ts +5 -0
  103. package/dist/src/modules/v4/autoclaim/autoclaim.service.d.ts +4 -0
  104. package/dist/src/modules/v4/blacklist/blacklist.service.js.map +1 -1
  105. package/dist/src/modules/v4/campaign/campaign.controller.d.ts +96 -20
  106. package/dist/src/modules/v4/campaign/campaign.controller.js.map +1 -1
  107. package/dist/src/modules/v4/campaign/campaign.formatter.js.map +1 -1
  108. package/dist/src/modules/v4/campaign/campaign.model.d.ts +8 -2
  109. package/dist/src/modules/v4/campaign/campaign.model.js.map +1 -1
  110. package/dist/src/modules/v4/campaign/campaign.query-transformer.d.ts +71 -61
  111. package/dist/src/modules/v4/campaign/campaign.query-transformer.js.map +1 -1
  112. package/dist/src/modules/v4/campaign/campaign.repository.d.ts +20 -0
  113. package/dist/src/modules/v4/campaign/campaign.service.d.ts +26 -5
  114. package/dist/src/modules/v4/campaign/campaign.service.js.map +1 -1
  115. package/dist/src/modules/v4/campaign/campaign.test.controller.d.ts +60 -0
  116. package/dist/src/modules/v4/campaignStatus/campaignStatus.controller.d.ts +4 -0
  117. package/dist/src/modules/v4/campaignStatus/campaignStatus.service.d.ts +8 -0
  118. package/dist/src/modules/v4/campaignToProcess/campaignToProcess.controller.d.ts +150 -0
  119. package/dist/src/modules/v4/campaignToProcess/campaignToProcess.controller.js.map +1 -1
  120. package/dist/src/modules/v4/campaignToProcess/campaignToProcess.repository.js.map +1 -1
  121. package/dist/src/modules/v4/campaignToProcess/campaignToProcess.service.d.ts +1 -1
  122. package/dist/src/modules/v4/campaignToProcess/campaignToProcess.service.js.map +1 -1
  123. package/dist/src/modules/v4/carousel/carousel.controller.d.ts +98 -12
  124. package/dist/src/modules/v4/carousel/carousel.formatter.d.ts +8 -1
  125. package/dist/src/modules/v4/carousel/carousel.formatter.js.map +1 -1
  126. package/dist/src/modules/v4/carousel/carousel.repository.d.ts +18 -0
  127. package/dist/src/modules/v4/carousel/carousel.service.d.ts +59 -8
  128. package/dist/src/modules/v4/carousel/carousel.service.js.map +1 -1
  129. package/dist/src/modules/v4/chain/chain.controller.d.ts +4 -4
  130. package/dist/src/modules/v4/chain/chain.formatter.js.map +1 -1
  131. package/dist/src/modules/v4/chain/chain.model.d.ts +1 -1
  132. package/dist/src/modules/v4/chain/chain.repository.js.map +1 -1
  133. package/dist/src/modules/v4/clamm/clamm.controller.d.ts +2 -2
  134. package/dist/src/modules/v4/clamm/clamm.service.js.map +1 -1
  135. package/dist/src/modules/v4/computedValue/computedValue.controller.d.ts +8 -0
  136. package/dist/src/modules/v4/config/config.controller.d.ts +15 -0
  137. package/dist/src/modules/v4/config/config.service.d.ts +15 -0
  138. package/dist/src/modules/v4/creator/creator.controller.d.ts +15 -3
  139. package/dist/src/modules/v4/creator/creator.repository.js.map +1 -1
  140. package/dist/src/modules/v4/credit/credit.controller.d.ts +21 -0
  141. package/dist/src/modules/v4/credit/credit.controller.js.map +1 -1
  142. package/dist/src/modules/v4/credit/credit.model.js.map +1 -1
  143. package/dist/src/modules/v4/credit/credit.points-billing.service.d.ts +52 -0
  144. package/dist/src/modules/v4/credit/credit.points-billing.service.js.map +1 -0
  145. package/dist/src/modules/v4/credit/credit.points-pricing.d.ts +1 -0
  146. package/dist/src/modules/v4/credit/credit.points-pricing.js.map +1 -0
  147. package/dist/src/modules/v4/credit/credit.repository.d.ts +8 -0
  148. package/dist/src/modules/v4/credit/credit.repository.js.map +1 -1
  149. package/dist/src/modules/v4/credit/credit.service.d.ts +5 -0
  150. package/dist/src/modules/v4/credit/credit.service.js.map +1 -1
  151. package/dist/src/modules/v4/diff/diff.controller.d.ts +4 -0
  152. package/dist/src/modules/v4/dispute/dispute.controller.d.ts +2 -0
  153. package/dist/src/modules/v4/dispute/dispute.service.d.ts +2 -0
  154. package/dist/src/modules/v4/dynamicData/dynamicData.service.d.ts +8 -0
  155. package/dist/src/modules/v4/dynamicData/dynamicData.service.js.map +1 -1
  156. package/dist/src/modules/v4/etlHealth/etlHealth.service.js.map +1 -1
  157. package/dist/src/modules/v4/historical/historical.controller.d.ts +38 -2
  158. package/dist/src/modules/v4/historical/historical.controller.js.map +1 -1
  159. package/dist/src/modules/v4/historical/historical.model.d.ts +28 -0
  160. package/dist/src/modules/v4/historical/historical.model.js.map +1 -1
  161. package/dist/src/modules/v4/indexingRange/indexingRange.controller.d.ts +1 -1
  162. package/dist/src/modules/v4/indexingRange/indexingRange.model.d.ts +1 -1
  163. package/dist/src/modules/v4/indexingRange/indexingRange.model.js.map +1 -1
  164. package/dist/src/modules/v4/indexingRange/indexingRange.service.d.ts +3 -2
  165. package/dist/src/modules/v4/indexingRange/indexingRange.service.js.map +1 -1
  166. package/dist/src/modules/v4/jobWatermark/jobWatermark.constants.d.ts +2 -1
  167. package/dist/src/modules/v4/jobWatermark/jobWatermark.constants.js.map +1 -1
  168. package/dist/src/modules/v4/keyStore/keyStore.controller.d.ts +20 -15
  169. package/dist/src/modules/v4/keyStore/keyStore.controller.js.map +1 -1
  170. package/dist/src/modules/v4/leaf/latestCompute.repository.d.ts +24 -0
  171. package/dist/src/modules/v4/leaf/latestCompute.repository.js.map +1 -0
  172. package/dist/src/modules/v4/leaf/leaf.model.d.ts +1 -0
  173. package/dist/src/modules/v4/leaf/leaf.repository.d.ts +143 -36
  174. package/dist/src/modules/v4/leaf/leaf.repository.js.map +1 -1
  175. package/dist/src/modules/v4/leaf/leaf.service.d.ts +710 -1
  176. package/dist/src/modules/v4/leaf/leaf.service.js.map +1 -1
  177. package/dist/src/modules/v4/leaf/leafClaim.repository.d.ts +1 -0
  178. package/dist/src/modules/v4/leaf/leafTemp.repository.d.ts +12 -0
  179. package/dist/src/modules/v4/leaf/leafTemp.repository.js.map +1 -1
  180. package/dist/src/modules/v4/leaf/leafView.repository.d.ts +15 -0
  181. package/dist/src/modules/v4/leaf/leafView.repository.js.map +1 -1
  182. package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +105 -18
  183. package/dist/src/modules/v4/opportunity/opportunity.controller.js.map +1 -1
  184. package/dist/src/modules/v4/opportunity/opportunity.formatter.d.ts +15 -3
  185. package/dist/src/modules/v4/opportunity/opportunity.formatter.js.map +1 -1
  186. package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +37 -8
  187. package/dist/src/modules/v4/opportunity/opportunity.query-transformer.d.ts +241 -51
  188. package/dist/src/modules/v4/opportunity/opportunity.query-transformer.js.map +1 -1
  189. package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +58 -7
  190. package/dist/src/modules/v4/opportunity/opportunity.repository.js.map +1 -1
  191. package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +102 -18
  192. package/dist/src/modules/v4/opportunity/opportunity.service.js.map +1 -1
  193. package/dist/src/modules/v4/override/override.controller.d.ts +9 -158
  194. package/dist/src/modules/v4/override/override.controller.js.map +1 -1
  195. package/dist/src/modules/v4/override/override.model.d.ts +0 -43
  196. package/dist/src/modules/v4/override/override.model.js.map +1 -1
  197. package/dist/src/modules/v4/override/override.service.d.ts +1 -81
  198. package/dist/src/modules/v4/override/override.service.js.map +1 -1
  199. package/dist/src/modules/v4/payload/payload.controller.d.ts +21 -0
  200. package/dist/src/modules/v4/payload/payload.service.d.ts +28 -0
  201. package/dist/src/modules/v4/previousConfig/previousConfig.repository.d.ts +1 -1
  202. package/dist/src/modules/v4/previousConfig/previousConfig.repository.js.map +1 -1
  203. package/dist/src/modules/v4/previousConfig/previousConfig.service.d.ts +1 -1
  204. package/dist/src/modules/v4/previousConfig/previousConfig.service.js.map +1 -1
  205. package/dist/src/modules/v4/priceSource/priceFetchers/implementations/coinGeckoService.d.ts +1 -0
  206. package/dist/src/modules/v4/priceSource/priceFetchers/implementations/coinGeckoService.js.map +1 -1
  207. package/dist/src/modules/v4/priceSource/priceSource.service.js.map +1 -1
  208. package/dist/src/modules/v4/program/program.controller.d.ts +32 -4
  209. package/dist/src/modules/v4/program/program.repository.d.ts +8 -0
  210. package/dist/src/modules/v4/program/program.service.d.ts +32 -4
  211. package/dist/src/modules/v4/programPayload/programPayload.controller.d.ts +2 -0
  212. package/dist/src/modules/v4/programPayload/programPayload.service.d.ts +2 -0
  213. package/dist/src/modules/v4/programPayload/subPayloads/ethena.d.ts +48 -48
  214. package/dist/src/modules/v4/protocol/protocol.controller.d.ts +6 -0
  215. package/dist/src/modules/v4/protocol/protocol.model.d.ts +7 -0
  216. package/dist/src/modules/v4/protocol/protocol.model.js.map +1 -1
  217. package/dist/src/modules/v4/protocol/protocol.repository.js.map +1 -1
  218. package/dist/src/modules/v4/reward/reward.model.d.ts +7 -0
  219. package/dist/src/modules/v4/reward/reward.model.js.map +1 -1
  220. package/dist/src/modules/v4/reward/reward.service.d.ts +44 -398
  221. package/dist/src/modules/v4/reward/reward.service.js.map +1 -1
  222. package/dist/src/modules/v4/router.d.ts +998 -245
  223. package/dist/src/modules/v4/router.js.map +1 -1
  224. package/dist/src/modules/v4/signoz/signoz.client.d.ts +27 -0
  225. package/dist/src/modules/v4/signoz/signoz.client.js.map +1 -0
  226. package/dist/src/modules/v4/signoz/signoz.service.d.ts +44 -0
  227. package/dist/src/modules/v4/signoz/signoz.service.js.map +1 -0
  228. package/dist/src/modules/v4/slack/notion-ticket.service.d.ts +24 -0
  229. package/dist/src/modules/v4/slack/notion-ticket.service.js.map +1 -0
  230. package/dist/src/modules/v4/{discord/discord.controller.d.ts → slack/slack.controller.d.ts} +27 -2
  231. package/dist/src/modules/v4/slack/slack.controller.js.map +1 -0
  232. package/dist/src/modules/v4/slack/slack.model.d.ts +105 -0
  233. package/dist/src/modules/v4/slack/slack.model.js.map +1 -0
  234. package/dist/src/modules/v4/slack/slack.service.d.ts +36 -0
  235. package/dist/src/modules/v4/slack/slack.service.js.map +1 -0
  236. package/dist/src/modules/v4/slack/urgent-ticket.service.d.ts +43 -0
  237. package/dist/src/modules/v4/slack/urgent-ticket.service.js.map +1 -0
  238. package/dist/src/modules/v4/token/token.controller.d.ts +18 -0
  239. package/dist/src/modules/v4/token/token.model.d.ts +2 -0
  240. package/dist/src/modules/v4/token/token.repository.d.ts +15 -0
  241. package/dist/src/modules/v4/token/token.repository.js.map +1 -1
  242. package/dist/src/modules/v4/token/token.service.d.ts +7 -8
  243. package/dist/src/modules/v4/token/token.service.js.map +1 -1
  244. package/dist/src/modules/v4/transaction/transaction.service.d.ts +740 -8
  245. package/dist/src/modules/v4/uniswap/uniswap.controller.d.ts +20 -2
  246. package/dist/src/modules/v4/uniswap/uniswap.service.d.ts +10 -1
  247. package/dist/src/modules/v4/uniswap/uniswap.service.js.map +1 -1
  248. package/dist/src/modules/v4/user/user.controller.d.ts +57 -3
  249. package/dist/src/modules/v4/user/user.controller.js.map +1 -1
  250. package/dist/src/modules/v4/user/user.model.d.ts +15 -1
  251. package/dist/src/modules/v4/user/user.model.js.map +1 -1
  252. package/dist/src/modules/v4/user/user.service.d.ts +13 -1
  253. package/dist/src/modules/v4/user/user.service.js.map +1 -1
  254. package/dist/src/routes/v1/router.d.ts +0 -26
  255. package/dist/src/routes/v1/router.js.map +1 -1
  256. package/dist/src/routes/v3/app.d.ts +0 -8
  257. package/dist/src/routes/v3/app.js.map +1 -1
  258. package/dist/src/routes/v3/router.d.ts +0 -4
  259. package/dist/src/scripts/backfill-leafbreakdown-opportunities.d.ts +1 -0
  260. package/dist/src/scripts/backfill-leafbreakdown-opportunities.js.map +1 -0
  261. package/dist/src/scripts/catchup-claim-etl.js.map +1 -1
  262. package/dist/src/scripts/cleanup-empty-leaves.js.map +1 -1
  263. package/dist/src/scripts/seed-overrides.js.map +1 -1
  264. package/dist/src/utils/eulerVerified.d.ts +8 -0
  265. package/dist/src/utils/eulerVerified.js.map +1 -0
  266. package/dist/src/utils/getAPR.d.ts +370 -4
  267. package/dist/src/utils/parseDistributionType.d.ts +370 -4
  268. package/dist/tsconfig.tsbuildinfo +1 -1
  269. package/package.json +1 -1
  270. package/dist/src/modules/v4/discord/discord.controller.js.map +0 -1
  271. package/dist/src/modules/v4/discord/discord.model.d.ts +0 -14
  272. package/dist/src/modules/v4/discord/discord.model.js.map +0 -1
  273. package/dist/src/modules/v4/discord/discord.service.d.ts +0 -8
  274. package/dist/src/modules/v4/discord/discord.service.js.map +0 -1
  275. package/dist/src/modules/v4/override/override.repository.d.ts +0 -34
  276. package/dist/src/modules/v4/override/override.repository.js.map +0 -1
  277. package/dist/src/routes/v1/prices.d.ts +0 -85
  278. package/dist/src/routes/v1/prices.js.map +0 -1
  279. package/dist/src/utils/pricer.d.ts +0 -57
  280. package/dist/src/utils/pricer.js.map +0 -1
  281. package/dist/src/utils/prices/chainlinkRead.d.ts +0 -4
  282. package/dist/src/utils/prices/chainlinkRead.js.map +0 -1
  283. package/dist/src/utils/prices/curveVirtualPrice.d.ts +0 -4
  284. package/dist/src/utils/prices/curveVirtualPrice.js.map +0 -1
  285. package/dist/src/utils/prices/getDQUICK.d.ts +0 -4
  286. package/dist/src/utils/prices/getDQUICK.js.map +0 -1
  287. package/dist/src/utils/prices/priceService.d.ts +0 -13
  288. package/dist/src/utils/prices/priceService.js.map +0 -1
  289. package/dist/src/utils/prices/uniV2Price.d.ts +0 -4
  290. package/dist/src/utils/prices/uniV2Price.js.map +0 -1
@@ -1,8 +1,9 @@
1
1
  import type { TokenType } from "@package/databases";
2
+ import type { ChainId } from "@package/resources/enums";
2
3
  import type { RootsByChain } from "./leaf.model";
3
4
  export declare abstract class LeafService {
4
5
  /** Fetches leaves for a recipient, reconciling with pending temp leaves from the engine. */
5
- static getByRecipient(recipient: string, distributionChainIds: number[], roots: RootsByChain, tags: string[], options: {
6
+ static getByRecipient(recipient: string, roots: RootsByChain, tags: string[], options?: {
6
7
  items?: number;
7
8
  page?: number;
8
9
  withToken?: boolean;
@@ -10,6 +11,7 @@ export declare abstract class LeafService {
10
11
  reasonFilter?: string;
11
12
  type?: TokenType;
12
13
  skipBreakdowns?: boolean;
14
+ chainFilter?: ChainId[] | null;
13
15
  }): Promise<{
14
16
  id: string;
15
17
  root: string;
@@ -37,6 +39,8 @@ export declare abstract class LeafService {
37
39
  price: number | null;
38
40
  updatedAt: number | null;
39
41
  priceSource: string | null;
42
+ priceAlertDismissedAt: number | null;
43
+ priceAlertCount: number;
40
44
  };
41
45
  Breakdown: {
42
46
  id: string;
@@ -112,6 +116,8 @@ export declare abstract class LeafService {
112
116
  price: number | null;
113
117
  updatedAt: number | null;
114
118
  priceSource: string | null;
119
+ priceAlertDismissedAt: number | null;
120
+ priceAlertCount: number;
115
121
  }[];
116
122
  } & {
117
123
  id: string;
@@ -234,6 +240,8 @@ export declare abstract class LeafService {
234
240
  price: number | null;
235
241
  updatedAt: number | null;
236
242
  priceSource: string | null;
243
+ priceAlertDismissedAt: number | null;
244
+ priceAlertCount: number;
237
245
  }[];
238
246
  } & {
239
247
  id: string;
@@ -294,6 +302,707 @@ export declare abstract class LeafService {
294
302
  protocolId: null;
295
303
  }[];
296
304
  }[]>;
305
+ /** Fetches leaves for a recipient across multiple roots and produces a flat reward shape with breakdowns. */
306
+ static getUserRewards(chainIdRootPairs: Array<{
307
+ chainId: number;
308
+ root: string;
309
+ }>, address: string): Promise<{
310
+ id: string;
311
+ distributionChainId: number;
312
+ root: string;
313
+ recipient: string;
314
+ rewardTokenId: string;
315
+ amount: string | undefined;
316
+ claimed: string;
317
+ pending: string;
318
+ proofs: string[];
319
+ RewardToken: {
320
+ id: string;
321
+ address: string;
322
+ chainId: number;
323
+ decimals: number;
324
+ price: number | null;
325
+ symbol: string;
326
+ type: TokenType;
327
+ };
328
+ Breakdown: {
329
+ id: string;
330
+ distributionChainId: number;
331
+ root: string;
332
+ reason: string;
333
+ campaignId: string;
334
+ rewardId: string;
335
+ amount: string;
336
+ claimed: string;
337
+ pending: string;
338
+ Campaign: {
339
+ Opportunity: {
340
+ id: string;
341
+ chainId: number;
342
+ type: string;
343
+ identifier: string;
344
+ name: string;
345
+ description: string;
346
+ howToSteps: string[];
347
+ depositUrl: string | null;
348
+ explorerAddress: string | null;
349
+ status: import("@package/databases").Status;
350
+ action: import("@package/databases").OpportunityAction;
351
+ mainProtocolId: string | null;
352
+ tvl: number;
353
+ apr: number;
354
+ nativeApr: number | null;
355
+ maxApr: number | null;
356
+ dailyRewards: number;
357
+ maxDailyRewards: number;
358
+ tags: string[];
359
+ lastCampaignCreatedAt: Date;
360
+ manualOverrides: import("@package/databases").OpportunityManualOverride[];
361
+ liveCampaigns: number;
362
+ earliestCampaignStart: bigint | null;
363
+ latestCampaignStart: bigint | null;
364
+ earliestCampaignEnd: bigint | null;
365
+ latestCampaignEnd: bigint | null;
366
+ hidden: boolean;
367
+ };
368
+ } & {
369
+ id: string;
370
+ computeChainId: number;
371
+ distributionChainId: number;
372
+ campaignId: string;
373
+ type: string;
374
+ distributionType: import("@package/databases").DistributionType;
375
+ subType: number | null;
376
+ rewardTokenId: string;
377
+ amount: string;
378
+ opportunityId: string;
379
+ startTimestamp: bigint;
380
+ endTimestamp: bigint;
381
+ params: import("@prisma/client/runtime/client").JsonValue;
382
+ description: string | null;
383
+ pauseCompute: string | null;
384
+ pausePrecompute: string | null;
385
+ dailyRewards: number;
386
+ apr: number;
387
+ creatorAddress: string;
388
+ manualOverrides: import("@package/databases").CampaignManualOverride[];
389
+ createdAt: Date;
390
+ rootCampaignId: string | null;
391
+ parentCampaignId: string | null;
392
+ isPrivate: boolean;
393
+ campaignEncodingHash: string | null;
394
+ };
395
+ }[];
396
+ }[]>;
397
+ /**
398
+ * Fetches per-`(chain, opportunity, token)` reward totals for a recipient, with the resolved
399
+ * `Opportunity` (including standard relations) and every `Campaign` linked to those opps —
400
+ * sufficient for opportunity-level privacy masking via `CampaignService.checkAccessBatch`.
401
+ *
402
+ * Implementation:
403
+ * 1. Step 1 (sums) is served by the `leaf_breakdown_amounts_per_recipient_opportunity`
404
+ * materialized view via `LeafViewRepository.amountsByRecipientOpportunity` — pre-aggregated
405
+ * and refreshed every 30 min, mirroring every other recipient-keyed reward MV.
406
+ * 2. Step 2 (campaigns + opportunities per `(chain, opp)`) goes through `CampaignService.findMany`
407
+ * and `OpportunityService.findMany` in parallel; both apply formatting and centralize
408
+ * access semantics.
409
+ *
410
+ * Privacy semantic: campaigns checked for access are **all campaigns linked to each opp**, not
411
+ * only those the recipient earned from. This means an opp where the recipient only earned from
412
+ * a private campaign but where a public sibling campaign exists will resolve as accessible.
413
+ *
414
+ * Staleness: `amount` / `claimed` reflect the MV refresh cadence (≤ 30 min). Acceptable for the
415
+ * rewards-summary surface (display-only); not safe for transactional reads.
416
+ *
417
+ * Currency: `amount` and `claimed` are raw token-decimal integers (never USD); grouping by
418
+ * `tokenAddress` keeps every output row single-currency. USD conversion remains a JS-side
419
+ * concern in `getRewardsSummary`.
420
+ */
421
+ static getBreakdownsByOpportunity(recipient: string, distributionChainIds: number[]): Promise<{
422
+ distributionChainId: number;
423
+ opportunityId: string;
424
+ tokenAddress: string;
425
+ amount: string;
426
+ claimed: string;
427
+ Opportunity: {
428
+ chainId: number;
429
+ type: string;
430
+ identifier: string;
431
+ name: string;
432
+ description: string;
433
+ howToSteps: string[];
434
+ status: import("@package/databases").Status;
435
+ action: import("@package/databases").OpportunityAction;
436
+ tvl: number;
437
+ apr: number;
438
+ maxApr: number | null;
439
+ dailyRewards: number;
440
+ maxDailyRewards: number;
441
+ tags: string[];
442
+ liveCampaigns: number;
443
+ aprRecord: {
444
+ cumulated: number;
445
+ timestamp: bigint;
446
+ breakdowns: ({
447
+ distributionType: import("@package/databases").DistributionType;
448
+ identifier: string;
449
+ type: "CAMPAIGN";
450
+ timestamp: bigint;
451
+ value: number;
452
+ } | {
453
+ identifier: string;
454
+ type: import("@package/databases").AprType;
455
+ timestamp: bigint;
456
+ value: number;
457
+ })[];
458
+ };
459
+ nativeAprRecord: {
460
+ title: string;
461
+ description: string | undefined;
462
+ value: number;
463
+ timestamp: bigint;
464
+ amount: bigint | undefined;
465
+ rewardToken: {
466
+ id: string;
467
+ name: string | null;
468
+ chainId: number;
469
+ address: string;
470
+ decimals: number;
471
+ symbol: string;
472
+ icon: string;
473
+ verified: boolean;
474
+ isNative: boolean;
475
+ isTest: boolean;
476
+ type: "POINT" | "PRETGE" | "TOKEN";
477
+ price?: number | null | undefined;
478
+ updatedAt?: number | null | undefined;
479
+ priceSource?: string | null | undefined;
480
+ displaySymbol?: string | undefined;
481
+ underlyingTokenId?: string | undefined;
482
+ priceAlertDismissedAt?: number | undefined;
483
+ priceAlertCount?: number | undefined;
484
+ } | undefined;
485
+ };
486
+ tvlRecord: {
487
+ id: string;
488
+ total: number;
489
+ timestamp: bigint;
490
+ breakdowns: {
491
+ identifier: string;
492
+ type: import("@package/databases").TvlType;
493
+ value: number;
494
+ }[];
495
+ };
496
+ rewardsRecord: {
497
+ id: string;
498
+ total: number;
499
+ timestamp: bigint;
500
+ breakdowns: {
501
+ id: string;
502
+ timestamp: bigint;
503
+ campaignId: string;
504
+ dailyRewardsRecordId: string;
505
+ token: {
506
+ id: string;
507
+ name: string | null;
508
+ chainId: number;
509
+ address: string;
510
+ decimals: number;
511
+ symbol: string;
512
+ icon: string;
513
+ verified: boolean;
514
+ isNative: boolean;
515
+ isTest: boolean;
516
+ type: "POINT" | "PRETGE" | "TOKEN";
517
+ price?: number | null | undefined;
518
+ updatedAt?: number | null | undefined;
519
+ priceSource?: string | null | undefined;
520
+ displaySymbol?: string | undefined;
521
+ underlyingTokenId?: string | undefined;
522
+ priceAlertDismissedAt?: number | undefined;
523
+ priceAlertCount?: number | undefined;
524
+ };
525
+ amount: bigint;
526
+ maxAmount: bigint;
527
+ value: number;
528
+ maxValue: number;
529
+ distributionType: import("@package/databases").DistributionType;
530
+ onChainCampaignId: string;
531
+ }[];
532
+ };
533
+ campaigns: (Omit<import("../campaign/campaign.model").CampaignWithParams<import("@package/resources/enums").CampaignType>, "createdAt" | "endTimestamp" | "manualOverrides" | "parentCampaignId" | "pauseCompute" | "pausePrecompute" | "rootCampaignId" | "startTimestamp" | "subType"> & {
534
+ subType: number | null;
535
+ startTimestamp: number;
536
+ endTimestamp: number;
537
+ createdAt: string;
538
+ parentCampaignId?: string | undefined;
539
+ rootCampaignId?: string | undefined;
540
+ pauseCompute?: string | undefined;
541
+ pausePrecompute?: string | undefined;
542
+ } & {
543
+ Opportunity: {
544
+ chainId: number;
545
+ type: string;
546
+ identifier: string;
547
+ name: string;
548
+ description: string;
549
+ howToSteps: string[];
550
+ status: import("@package/databases").Status;
551
+ action: import("@package/databases").OpportunityAction;
552
+ tvl: number;
553
+ apr: number;
554
+ maxApr: number | null;
555
+ dailyRewards: number;
556
+ maxDailyRewards: number;
557
+ tags: string[];
558
+ liveCampaigns: number;
559
+ tokens: {
560
+ id: string;
561
+ name: string | null;
562
+ chainId: number;
563
+ address: string;
564
+ decimals: number;
565
+ symbol: string;
566
+ icon: string;
567
+ verified: boolean;
568
+ isNative: boolean;
569
+ isTest: boolean;
570
+ type: "POINT" | "PRETGE" | "TOKEN";
571
+ price?: number | null | undefined;
572
+ updatedAt?: number | null | undefined;
573
+ priceSource?: string | null | undefined;
574
+ displaySymbol?: string | undefined;
575
+ underlyingTokenId?: string | undefined;
576
+ priceAlertDismissedAt?: number | undefined;
577
+ priceAlertCount?: number | undefined;
578
+ }[];
579
+ chain: {
580
+ id: number;
581
+ name: string;
582
+ icon: string;
583
+ liveCampaigns: number;
584
+ endOfDisputePeriod: number;
585
+ explorers?: {
586
+ type: "BLOCKSCOUT" | "ETHERSCAN" | "SOLSCAN";
587
+ url: string;
588
+ chainId: number;
589
+ }[] | undefined;
590
+ lastClaimsOnchainFetchTimestamp: string | null;
591
+ };
592
+ protocol: {
593
+ id: string;
594
+ tags: string[];
595
+ name: string;
596
+ description: string;
597
+ url: string;
598
+ icon: string;
599
+ banner: string | null;
600
+ opportunityBannerLight: string | null;
601
+ opportunityBannerDark: string | null;
602
+ } | undefined;
603
+ activePrograms: {
604
+ icon: string;
605
+ id: string;
606
+ name: string;
607
+ slug: string | null;
608
+ }[];
609
+ depositUrls: {
610
+ id: string;
611
+ title: string;
612
+ url: string;
613
+ subtitle?: string | undefined;
614
+ icon?: string | undefined;
615
+ priority: number;
616
+ }[] | undefined;
617
+ id: string;
618
+ hidden: true | undefined;
619
+ nativeApr: number | undefined;
620
+ depositUrl: string | undefined;
621
+ explorerAddress: string | undefined;
622
+ lastCampaignCreatedAt: number;
623
+ earliestCampaignStart: bigint | undefined;
624
+ latestCampaignStart: bigint | undefined;
625
+ earliestCampaignEnd: bigint | undefined;
626
+ latestCampaignEnd: bigint | undefined;
627
+ };
628
+ })[] | undefined;
629
+ liveCampaignsForCreator?: any;
630
+ soonCampaignsForCreator?: any;
631
+ pastCampaignsForCreator?: any;
632
+ distributedBycreator?: any;
633
+ tokens: {
634
+ id: string;
635
+ name: string | null;
636
+ chainId: number;
637
+ address: string;
638
+ decimals: number;
639
+ symbol: string;
640
+ icon: string;
641
+ verified: boolean;
642
+ isNative: boolean;
643
+ isTest: boolean;
644
+ type: "POINT" | "PRETGE" | "TOKEN";
645
+ price?: number | null | undefined;
646
+ updatedAt?: number | null | undefined;
647
+ priceSource?: string | null | undefined;
648
+ displaySymbol?: string | undefined;
649
+ underlyingTokenId?: string | undefined;
650
+ priceAlertDismissedAt?: number | undefined;
651
+ priceAlertCount?: number | undefined;
652
+ }[];
653
+ chain: {
654
+ id: number;
655
+ name: string;
656
+ icon: string;
657
+ liveCampaigns: number;
658
+ endOfDisputePeriod: number;
659
+ explorers?: {
660
+ type: "BLOCKSCOUT" | "ETHERSCAN" | "SOLSCAN";
661
+ url: string;
662
+ chainId: number;
663
+ }[] | undefined;
664
+ lastClaimsOnchainFetchTimestamp: string | null;
665
+ };
666
+ protocol: {
667
+ id: string;
668
+ tags: string[];
669
+ name: string;
670
+ description: string;
671
+ url: string;
672
+ icon: string;
673
+ banner: string | null;
674
+ opportunityBannerLight: string | null;
675
+ opportunityBannerDark: string | null;
676
+ } | undefined;
677
+ activePrograms: {
678
+ icon: string;
679
+ id: string;
680
+ name: string;
681
+ slug: string | null;
682
+ }[];
683
+ depositUrls: {
684
+ id: string;
685
+ title: string;
686
+ url: string;
687
+ subtitle?: string | undefined;
688
+ icon?: string | undefined;
689
+ priority: number;
690
+ }[] | undefined;
691
+ id: string;
692
+ hidden: true | undefined;
693
+ nativeApr: number | undefined;
694
+ depositUrl: string | undefined;
695
+ explorerAddress: string | undefined;
696
+ lastCampaignCreatedAt: number;
697
+ earliestCampaignStart: bigint | undefined;
698
+ latestCampaignStart: bigint | undefined;
699
+ earliestCampaignEnd: bigint | undefined;
700
+ latestCampaignEnd: bigint | undefined;
701
+ } | ({
702
+ id: string;
703
+ type: string;
704
+ identifier: string;
705
+ chainId: number;
706
+ name: string;
707
+ description: string;
708
+ howToSteps: string[];
709
+ status: "LIVE" | "NONE" | "PAST" | "SOON";
710
+ action: "BORROW" | "DROP" | "HOLD" | "INVALID" | "LEND" | "LONG" | "POOL" | "SHORT" | "STAKE" | "SWAP";
711
+ tags: string[];
712
+ mainProtocol?: string | undefined;
713
+ depositUrl?: string | undefined;
714
+ depositUrls?: {
715
+ id: string;
716
+ title: string;
717
+ url: string;
718
+ subtitle?: string | undefined;
719
+ icon?: string | undefined;
720
+ priority: number;
721
+ }[] | undefined;
722
+ explorerAddress?: string | undefined;
723
+ hidden?: boolean | undefined;
724
+ tvl: number;
725
+ apr: number;
726
+ dailyRewards: number;
727
+ maxDailyRewards?: number | null | undefined;
728
+ liveCampaigns: number;
729
+ lastCampaignCreatedAt: number;
730
+ earliestCampaignStart?: string | bigint | undefined;
731
+ latestCampaignStart?: string | bigint | undefined;
732
+ earliestCampaignEnd?: string | bigint | undefined;
733
+ latestCampaignEnd?: string | bigint | undefined;
734
+ nativeApr?: number | undefined;
735
+ maxApr?: number | null | undefined;
736
+ liveCampaignsForCreator?: number | undefined;
737
+ soonCampaignsForCreator?: number | undefined;
738
+ pastCampaignsForCreator?: number | undefined;
739
+ distributionType?: string | undefined;
740
+ tokens: {
741
+ id: string;
742
+ name: string | null;
743
+ chainId: number;
744
+ address: string;
745
+ decimals: number;
746
+ symbol: string;
747
+ icon: string;
748
+ verified: boolean;
749
+ isNative: boolean;
750
+ isTest: boolean;
751
+ type: "POINT" | "PRETGE" | "TOKEN";
752
+ price?: number | null | undefined;
753
+ updatedAt?: number | null | undefined;
754
+ priceSource?: string | null | undefined;
755
+ displaySymbol?: string | undefined;
756
+ underlyingTokenId?: string | undefined;
757
+ priceAlertDismissedAt?: number | undefined;
758
+ priceAlertCount?: number | undefined;
759
+ }[];
760
+ chain: {
761
+ id: number;
762
+ name: string;
763
+ icon: string;
764
+ liveCampaigns: number;
765
+ endOfDisputePeriod: number;
766
+ explorers?: {
767
+ type: "BLOCKSCOUT" | "ETHERSCAN" | "SOLSCAN";
768
+ url: string;
769
+ chainId: number;
770
+ }[] | undefined;
771
+ lastClaimsOnchainFetchTimestamp: string | null;
772
+ };
773
+ activePrograms: {
774
+ id: string;
775
+ name: string;
776
+ slug?: string | null | undefined;
777
+ description?: string | undefined;
778
+ icon?: string | undefined;
779
+ }[];
780
+ protocol?: {
781
+ id: string;
782
+ name: string;
783
+ icon: string;
784
+ tags: string[];
785
+ description: string;
786
+ url: string;
787
+ dailyRewards?: number | undefined;
788
+ numberOfLiveCampaigns?: number | undefined;
789
+ opportunityLiveTags?: string[] | undefined;
790
+ banner: string | null;
791
+ opportunityBannerLight: string | null;
792
+ opportunityBannerDark: string | null;
793
+ } | null | undefined;
794
+ aprRecord?: {
795
+ cumulated: number;
796
+ timestamp: string | bigint;
797
+ breakdowns: {
798
+ identifier: string;
799
+ type: "CAMPAIGN" | "PROTOCOL" | "TOKEN";
800
+ value: number;
801
+ timestamp: string | bigint;
802
+ distributionType?: "AAVE_NET_APR" | "AAVE_V4_NET_APR" | "DUTCH_AUCTION" | "ERC4626_APR" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "FIX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "MAX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | undefined;
803
+ }[];
804
+ } | undefined;
805
+ nativeAprRecord?: {
806
+ title: string;
807
+ description?: string | undefined;
808
+ value: number;
809
+ timestamp: string | bigint;
810
+ amount?: bigint | undefined;
811
+ rewardToken?: {
812
+ id: string;
813
+ name: string | null;
814
+ chainId: number;
815
+ address: string;
816
+ decimals: number;
817
+ symbol: string;
818
+ icon: string;
819
+ verified: boolean;
820
+ isNative: boolean;
821
+ isTest: boolean;
822
+ type: "POINT" | "PRETGE" | "TOKEN";
823
+ price?: number | null | undefined;
824
+ updatedAt?: number | null | undefined;
825
+ priceSource?: string | null | undefined;
826
+ displaySymbol?: string | undefined;
827
+ underlyingTokenId?: string | undefined;
828
+ priceAlertDismissedAt?: number | undefined;
829
+ priceAlertCount?: number | undefined;
830
+ } | undefined;
831
+ } | undefined;
832
+ tvlRecord?: {
833
+ total: number;
834
+ timestamp: string | bigint;
835
+ breakdowns: {
836
+ identifier: string;
837
+ type: "PROTOCOL" | "TOKEN";
838
+ value: number;
839
+ }[];
840
+ } | undefined;
841
+ rewardsRecord?: {
842
+ total: number;
843
+ timestamp: string | bigint;
844
+ breakdowns: {
845
+ campaignId: string;
846
+ value: number;
847
+ maxValue?: number | undefined;
848
+ timestamp: string | bigint;
849
+ token: {
850
+ id: string;
851
+ name: string | null;
852
+ chainId: number;
853
+ address: string;
854
+ decimals: number;
855
+ symbol: string;
856
+ icon: string;
857
+ verified: boolean;
858
+ isNative: boolean;
859
+ isTest: boolean;
860
+ type: "POINT" | "PRETGE" | "TOKEN";
861
+ price?: number | null | undefined;
862
+ updatedAt?: number | null | undefined;
863
+ priceSource?: string | null | undefined;
864
+ displaySymbol?: string | undefined;
865
+ underlyingTokenId?: string | undefined;
866
+ priceAlertDismissedAt?: number | undefined;
867
+ priceAlertCount?: number | undefined;
868
+ };
869
+ amount: string | bigint;
870
+ distributionType?: "AAVE_NET_APR" | "AAVE_V4_NET_APR" | "DUTCH_AUCTION" | "ERC4626_APR" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "FIX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "MAX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | undefined;
871
+ onChainCampaignId?: string | undefined;
872
+ }[];
873
+ } | undefined;
874
+ } & {
875
+ campaigns?: {
876
+ id: string;
877
+ computeChainId: number;
878
+ distributionChainId: number;
879
+ campaignId: string;
880
+ type: string;
881
+ subType?: number | null | undefined;
882
+ amount: string;
883
+ startTimestamp: string | number | bigint;
884
+ endTimestamp: string | number | bigint;
885
+ creatorAddress: string;
886
+ apr?: number | undefined;
887
+ dailyRewards?: number | undefined;
888
+ creator?: {
889
+ address: string;
890
+ tags?: string[] | undefined;
891
+ creatorId?: string | null | undefined;
892
+ } | undefined;
893
+ params: unknown;
894
+ description?: string | undefined;
895
+ chain: {
896
+ id: number;
897
+ name: string;
898
+ icon: string;
899
+ liveCampaigns: number;
900
+ endOfDisputePeriod: number;
901
+ explorers?: {
902
+ type: "BLOCKSCOUT" | "ETHERSCAN" | "SOLSCAN";
903
+ url: string;
904
+ chainId: number;
905
+ }[] | undefined;
906
+ lastClaimsOnchainFetchTimestamp: string | null;
907
+ };
908
+ rewardTokenId?: string | undefined;
909
+ rewardToken: {
910
+ id: string;
911
+ name: string | null;
912
+ chainId: number;
913
+ address: string;
914
+ decimals: number;
915
+ symbol: string;
916
+ icon: string;
917
+ verified: boolean;
918
+ isNative: boolean;
919
+ isTest: boolean;
920
+ type: "POINT" | "PRETGE" | "TOKEN";
921
+ price?: number | null | undefined;
922
+ updatedAt?: number | null | undefined;
923
+ priceSource?: string | null | undefined;
924
+ displaySymbol?: string | undefined;
925
+ underlyingTokenId?: string | undefined;
926
+ priceAlertDismissedAt?: number | undefined;
927
+ priceAlertCount?: number | undefined;
928
+ };
929
+ opportunityId?: string | undefined;
930
+ distributionChain?: {
931
+ id: number;
932
+ name: string;
933
+ icon: string;
934
+ liveCampaigns: number;
935
+ endOfDisputePeriod: number;
936
+ explorers?: {
937
+ type: "BLOCKSCOUT" | "ETHERSCAN" | "SOLSCAN";
938
+ url: string;
939
+ chainId: number;
940
+ }[] | undefined;
941
+ lastClaimsOnchainFetchTimestamp: string | null;
942
+ } | undefined;
943
+ distributionType?: "AAVE_NET_APR" | "AAVE_V4_NET_APR" | "DUTCH_AUCTION" | "ERC4626_APR" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "FIX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "MAX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | undefined;
944
+ campaignStatus: {
945
+ campaignId: string;
946
+ computedUntil: string | number;
947
+ processingStarted: string | number;
948
+ status: string;
949
+ preComputeProcessingStarted: string | number;
950
+ preComputeStatus: string;
951
+ delay?: number | undefined;
952
+ error?: string | undefined;
953
+ details?: unknown;
954
+ };
955
+ createdAt: string;
956
+ rootCampaignId?: string | null | undefined;
957
+ parentCampaignId?: string | null | undefined;
958
+ childCampaignIds?: string[] | undefined;
959
+ dailyRewardsBreakdown?: {
960
+ campaignId: string;
961
+ value: number;
962
+ maxValue?: number | undefined;
963
+ timestamp: string | bigint;
964
+ token: {
965
+ id: string;
966
+ name: string | null;
967
+ chainId: number;
968
+ address: string;
969
+ decimals: number;
970
+ symbol: string;
971
+ icon: string;
972
+ verified: boolean;
973
+ isNative: boolean;
974
+ isTest: boolean;
975
+ type: "POINT" | "PRETGE" | "TOKEN";
976
+ price?: number | null | undefined;
977
+ updatedAt?: number | null | undefined;
978
+ priceSource?: string | null | undefined;
979
+ displaySymbol?: string | undefined;
980
+ underlyingTokenId?: string | undefined;
981
+ priceAlertDismissedAt?: number | undefined;
982
+ priceAlertCount?: number | undefined;
983
+ };
984
+ amount: string | bigint;
985
+ distributionType?: "AAVE_NET_APR" | "AAVE_V4_NET_APR" | "DUTCH_AUCTION" | "ERC4626_APR" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "FIX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "FIX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_AMOUNT_PER_LIQUIDITY_VALUE" | "MAX_REWARD_VALUE_PER_LIQUIDITY_AMOUNT" | "MAX_REWARD_VALUE_PER_LIQUIDITY_VALUE" | undefined;
986
+ onChainCampaignId?: string | undefined;
987
+ }[] | undefined;
988
+ pauseCompute?: string | null | undefined;
989
+ pausePrecompute?: string | null | undefined;
990
+ hasOverrides?: boolean | undefined;
991
+ isPrivate: boolean;
992
+ campaignEncodingHash?: string | undefined;
993
+ }[] | undefined;
994
+ }) | null;
995
+ Campaigns: (Omit<import("../campaign/campaign.model").CampaignWithParams<import("@package/resources/enums").CampaignType>, "createdAt" | "endTimestamp" | "manualOverrides" | "parentCampaignId" | "pauseCompute" | "pausePrecompute" | "rootCampaignId" | "startTimestamp" | "subType"> & {
996
+ subType: number | null;
997
+ startTimestamp: number;
998
+ endTimestamp: number;
999
+ createdAt: string;
1000
+ parentCampaignId?: string | undefined;
1001
+ rootCampaignId?: string | undefined;
1002
+ pauseCompute?: string | undefined;
1003
+ pausePrecompute?: string | undefined;
1004
+ })[];
1005
+ }[]>;
297
1006
  private static fetchData;
298
1007
  /** Extracts unique campaign and token keys from temp leaves for batch prefetch. */
299
1008
  private static extractTempLeafKeys;