@merkl/api 1.4.84 → 1.4.86

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 (157) hide show
  1. package/dist/src/cache/index.d.ts +0 -9
  2. package/dist/src/eden/index.d.ts +460 -228
  3. package/dist/src/engine/deprecated/dynamicData/implementations/Hyperdrive.d.ts +0 -15
  4. package/dist/src/engine/deprecated/dynamicData/utils/getContractCreationBlock.d.ts +0 -1
  5. package/dist/src/engine/deprecated/dynamicData/utils/getFixedApr.d.ts +0 -3
  6. package/dist/src/engine/deprecated/erc20SubTypeProcessors/GenericProcessor.d.ts +0 -5
  7. package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/factoryFinder.d.ts +0 -1
  8. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AaveProcessor.d.ts +0 -1
  9. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AnglesLiquid.d.ts +0 -1
  10. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AuraProcessor.d.ts +0 -1
  11. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BEXRewardGaugeProcessor.d.ts +0 -1
  12. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerGaugeProcessor.d.ts +0 -1
  13. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerPoolProcessor.d.ts +0 -1
  14. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerV3PoolProcessor.d.ts +4 -5
  15. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/CompoundProcessor.d.ts +0 -1
  16. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/FluidProcessor.d.ts +0 -1
  17. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/GearboxProcessor.d.ts +0 -1
  18. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HanjiVaultProcessor.d.ts +4 -5
  19. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HourglassProcessor.d.ts +0 -1
  20. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/MetamorphoProcessor.d.ts +0 -1
  21. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/RadiantProcessor.d.ts +0 -1
  22. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/RfxProcessor.d.ts +0 -1
  23. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/Satlayer.d.ts +0 -1
  24. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SpliceProcessor.d.ts +0 -1
  25. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/StabilityProcessor.d.ts +0 -1
  26. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SturdySiloProcessor.d.ts +0 -1
  27. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TemplateProcessor.d.ts +0 -1
  28. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TorosProcessor.d.ts +0 -1
  29. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/WoofiProcessor.d.ts +0 -1
  30. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/curveNPoolProcessor.d.ts +4 -5
  31. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/curveProcessor.d.ts +0 -1
  32. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/stakedCurveProcessor.d.ts +0 -1
  33. package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/xU308Processor.d.ts +0 -1
  34. package/dist/src/engine/implementations/Erc20/subTypes/implementations/penpiePRT/metadata.d.ts +1 -1
  35. package/dist/src/engine/implementations/Erc20/subTypes/implementations/penpiePRT/metadata.js.map +1 -1
  36. package/dist/src/engine/implementations/Erc20/subTypes/index.d.ts +2 -2
  37. package/dist/src/engine/implementations/StakingVaults/Equilibria/metadata.d.ts +2 -2
  38. package/dist/src/engine/implementations/StakingVaults/Equilibria/metadata.js.map +1 -1
  39. package/dist/src/engine/implementations/clamm/utils.d.ts +0 -1
  40. package/dist/src/engine/implementations/deprecated_clamm/metadata.d.ts +0 -1
  41. package/dist/src/engine/implementations/uniswapv4/tvl.d.ts +0 -1
  42. package/dist/src/engine/tvl/logStates.d.ts +0 -2
  43. package/dist/src/index.d.ts +471 -260
  44. package/dist/src/jobs/pendings.d.ts +0 -1
  45. package/dist/src/jobs/reward-breakdowns.d.ts +0 -1
  46. package/dist/src/jobs/reward-breakdowns.js.map +1 -1
  47. package/dist/src/jobs/rewards.d.ts +0 -1
  48. package/dist/src/libs/positions/clamm/thegraph/fetchAmmPositions.d.ts +0 -1
  49. package/dist/src/libs/positions/clamm/thegraph/index.d.ts +0 -10
  50. package/dist/src/libs/positions/index.d.ts +1 -2
  51. package/dist/src/libs/positions/prepareFetch.d.ts +1 -3
  52. package/dist/src/libs/positions/types.d.ts +0 -7
  53. package/dist/src/modules/v4/apr/apr.model.d.ts +0 -2
  54. package/dist/src/modules/v4/bucket/bucket.service.d.ts +0 -7
  55. package/dist/src/modules/v4/campaign/campaign.controller.d.ts +130 -3
  56. package/dist/src/modules/v4/campaign/campaign.formatter.d.ts +6 -3
  57. package/dist/src/modules/v4/campaign/campaign.formatter.js.map +1 -1
  58. package/dist/src/modules/v4/campaign/campaign.model.d.ts +7 -3
  59. package/dist/src/modules/v4/campaign/campaign.model.js.map +1 -1
  60. package/dist/src/modules/v4/campaign/campaign.repository.d.ts +0 -3
  61. package/dist/src/modules/v4/campaign/campaign.repository.js.map +1 -1
  62. package/dist/src/modules/v4/campaign/campaign.service.d.ts +274 -9
  63. package/dist/src/modules/v4/campaign/campaign.service.js.map +1 -1
  64. package/dist/src/modules/v4/campaign/campaign.test.controller.d.ts +74 -2
  65. package/dist/src/modules/v4/campaignBatch/campaignBatch.model.d.ts +0 -1
  66. package/dist/src/modules/v4/campaignBatch/campaignBatch.service.d.ts +0 -2
  67. package/dist/src/modules/v4/campaignStatus/campaignStatus.model.d.ts +0 -3
  68. package/dist/src/modules/v4/campaignStatus/campaignStatus.service.d.ts +2 -2
  69. package/dist/src/modules/v4/campaignToProcess/campaignToProcess.controller.d.ts +0 -1
  70. package/dist/src/modules/v4/carousel/carousel.controller.d.ts +18 -0
  71. package/dist/src/modules/v4/carousel/carousel.repository.d.ts +27 -0
  72. package/dist/src/modules/v4/carousel/carousel.service.d.ts +27 -0
  73. package/dist/src/modules/v4/chain/chain.controller.d.ts +0 -1
  74. package/dist/src/modules/v4/chain/chain.model.d.ts +0 -3
  75. package/dist/src/modules/v4/claims/claims.controller.d.ts +0 -1
  76. package/dist/src/modules/v4/claims/claims.service.d.ts +0 -1
  77. package/dist/src/modules/v4/clamm/clamm.controller.d.ts +0 -2
  78. package/dist/src/modules/v4/clamm/clamm.service.d.ts +0 -1
  79. package/dist/src/modules/v4/computedValue/computedValue.formatter.d.ts +0 -1
  80. package/dist/src/modules/v4/computedValue/computedValue.model.d.ts +0 -3
  81. package/dist/src/modules/v4/config/config.controller.d.ts +3 -0
  82. package/dist/src/modules/v4/creator/creator.controller.d.ts +131 -86
  83. package/dist/src/modules/v4/creator/creator.controller.js.map +1 -1
  84. package/dist/src/modules/v4/creator/creator.model.d.ts +205 -3
  85. package/dist/src/modules/v4/creator/creator.model.js.map +1 -1
  86. package/dist/src/modules/v4/creator/creator.repository.d.ts +0 -1
  87. package/dist/src/modules/v4/creator/creator.service.d.ts +3 -124
  88. package/dist/src/modules/v4/creator/creator.service.js.map +1 -1
  89. package/dist/src/modules/v4/enso/enso.service.d.ts +3 -0
  90. package/dist/src/modules/v4/euler/euler.controller.d.ts +0 -1
  91. package/dist/src/modules/v4/euler/euler.model.d.ts +0 -1
  92. package/dist/src/modules/v4/explorer/explorer.controller.d.ts +0 -1
  93. package/dist/src/modules/v4/github/github.model.d.ts +0 -2
  94. package/dist/src/modules/v4/interaction/interaction.controller.d.ts +3 -1
  95. package/dist/src/modules/v4/kyberzap/kyberzap.model.d.ts +0 -1
  96. package/dist/src/modules/v4/merklRoot/merklRoot.controller.d.ts +0 -1
  97. package/dist/src/modules/v4/node/node.model.d.ts +0 -1
  98. package/dist/src/modules/v4/node/node.service.d.ts +1 -3
  99. package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +6 -1
  100. package/dist/src/modules/v4/opportunity/opportunity.formatter.d.ts +71 -1
  101. package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +0 -7
  102. package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +33 -5
  103. package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +161 -12
  104. package/dist/src/modules/v4/opportunity/opportunity.service.js.map +1 -1
  105. package/dist/src/modules/v4/payload/payload.controller.d.ts +9 -0
  106. package/dist/src/modules/v4/payload/payload.model.d.ts +2 -5
  107. package/dist/src/modules/v4/payload/payload.service.d.ts +12 -0
  108. package/dist/src/modules/v4/priceSource/priceSource.controller.d.ts +0 -1
  109. package/dist/src/modules/v4/priceSource/priceSource.model.d.ts +0 -2
  110. package/dist/src/modules/v4/priceSource/priceSource.service.d.ts +0 -1
  111. package/dist/src/modules/v4/prisma/index.d.ts +2 -6
  112. package/dist/src/modules/v4/programPayload/programPayload.controller.d.ts +5789 -5790
  113. package/dist/src/modules/v4/programPayload/programPayload.model.d.ts +2 -5
  114. package/dist/src/modules/v4/programPayload/programPayload.repository.d.ts +0 -94
  115. package/dist/src/modules/v4/programPayload/subPayloads/aave.d.ts +0 -5
  116. package/dist/src/modules/v4/programPayload/subPayloads/bancor.d.ts +0 -26
  117. package/dist/src/modules/v4/programPayload/subPayloads/credix.d.ts +0 -8
  118. package/dist/src/modules/v4/programPayload/subPayloads/drip.d.ts +0 -5
  119. package/dist/src/modules/v4/programPayload/subPayloads/hypurrFi.d.ts +0 -3
  120. package/dist/src/modules/v4/programPayload/subPayloads/nibiru.d.ts +0 -18
  121. package/dist/src/modules/v4/programPayload/subPayloads/tac.d.ts +0 -59
  122. package/dist/src/modules/v4/protocol/protocol.controller.d.ts +12 -1
  123. package/dist/src/modules/v4/protocol/protocol.model.d.ts +0 -3
  124. package/dist/src/modules/v4/protocol/protocol.repository.d.ts +15 -1
  125. package/dist/src/modules/v4/protocol/protocol.service.d.ts +9 -1
  126. package/dist/src/modules/v4/referral/referral.controller.d.ts +0 -1
  127. package/dist/src/modules/v4/referral/referral.model.d.ts +0 -1
  128. package/dist/src/modules/v4/reward/reward.controller.d.ts +0 -108
  129. package/dist/src/modules/v4/reward/reward.controller.js.map +1 -1
  130. package/dist/src/modules/v4/reward/reward.model.d.ts +0 -4
  131. package/dist/src/modules/v4/reward/reward.model.js.map +1 -1
  132. package/dist/src/modules/v4/reward/reward.repository.d.ts +12 -1
  133. package/dist/src/modules/v4/reward/reward.repository.js.map +1 -1
  134. package/dist/src/modules/v4/reward/reward.service.d.ts +69 -0
  135. package/dist/src/modules/v4/router.d.ts +5501 -5290
  136. package/dist/src/modules/v4/token/token.controller.d.ts +0 -1
  137. package/dist/src/modules/v4/token/token.model.d.ts +0 -4
  138. package/dist/src/modules/v4/token/token.repository.d.ts +2 -2
  139. package/dist/src/modules/v4/token/token.service.d.ts +2 -2
  140. package/dist/src/modules/v4/transaction/transaction.model.d.ts +0 -1
  141. package/dist/src/modules/v4/turtle/turtle.controller.d.ts +0 -1
  142. package/dist/src/modules/v4/turtle/turtle.service.d.ts +0 -2
  143. package/dist/src/modules/v4/tvl/tvl.model.d.ts +0 -1
  144. package/dist/src/modules/v4/uniswap/uniswap.controller.d.ts +6 -2
  145. package/dist/src/modules/v4/uniswap/uniswap.repository.d.ts +0 -1
  146. package/dist/src/modules/v4/uniswap/uniswap.service.d.ts +3 -0
  147. package/dist/src/modules/v4/user/user.controller.d.ts +15 -0
  148. package/dist/src/modules/v4/user/user.model.d.ts +0 -3
  149. package/dist/src/modules/v4/user/user.repository.d.ts +0 -1
  150. package/dist/src/modules/v4/user/user.service.d.ts +0 -1
  151. package/dist/src/plugins/errorHandler.d.ts +0 -1
  152. package/dist/src/routes/v3/blacklist.d.ts +0 -1
  153. package/dist/src/utils/bigintToString.d.ts +0 -3
  154. package/dist/src/utils/execute.d.ts +0 -1
  155. package/dist/src/utils/pagination.d.ts +0 -1
  156. package/dist/src/utils/parseDistributionType.d.ts +20 -20
  157. package/package.json +1 -1
@@ -74,7 +74,71 @@ export declare abstract class OpportunityFormatter {
74
74
  distributionType: import("@package/databases").DistributionType;
75
75
  }[];
76
76
  };
77
- campaigns: Omit<import("../campaign/campaign.model").CampaignWithParams, "manualOverrides">[] | undefined;
77
+ campaigns: (Omit<import("../campaign/campaign.model").CampaignWithParams<import("@package/resources/enums").CampaignType>, "manualOverrides"> & {
78
+ Opportunity: {
79
+ chainId: number;
80
+ type: string;
81
+ identifier: string;
82
+ name: string;
83
+ description: string;
84
+ howToSteps: string[];
85
+ status: import("@package/databases").Status;
86
+ action: import("@package/databases").OpportunityAction;
87
+ tvl: number;
88
+ apr: number;
89
+ maxApr: number | null;
90
+ dailyRewards: number;
91
+ tags: string[];
92
+ liveCampaigns: number;
93
+ tokens: ({
94
+ address: string;
95
+ chainId: number;
96
+ decimals: number;
97
+ icon: string;
98
+ id: string;
99
+ isNative: boolean;
100
+ isTest: boolean;
101
+ name: string | null;
102
+ symbol: string;
103
+ type: import("@package/databases").TokenType;
104
+ verified: boolean;
105
+ } & {
106
+ price?: number | null | undefined;
107
+ updatedAt?: number | null | undefined;
108
+ priceSource?: string | null | undefined;
109
+ isTokenWrapper?: boolean | undefined;
110
+ tokenWrapperAddress?: string | undefined;
111
+ })[];
112
+ chain: {
113
+ id: number;
114
+ name: string;
115
+ icon: string;
116
+ liveCampaigns: number;
117
+ endOfDisputePeriod: number;
118
+ };
119
+ protocol: {
120
+ id: string;
121
+ tags: string[];
122
+ name: string;
123
+ description: string;
124
+ url: string;
125
+ icon: string;
126
+ banner: string | null;
127
+ opportunityBannerLight: string | null;
128
+ opportunityBannerDark: string | null;
129
+ } | undefined;
130
+ activePrograms: {
131
+ icon: string;
132
+ id: string;
133
+ name: string;
134
+ slug: string | null;
135
+ }[];
136
+ id: string;
137
+ depositUrl: string | undefined;
138
+ explorerAddress: string | undefined;
139
+ lastCampaignCreatedAt: number;
140
+ };
141
+ })[] | undefined;
78
142
  liveCampaignsForCreator?: any;
79
143
  tokens: ({
80
144
  address: string;
@@ -109,6 +173,9 @@ export declare abstract class OpportunityFormatter {
109
173
  description: string;
110
174
  url: string;
111
175
  icon: string;
176
+ banner: string | null;
177
+ opportunityBannerLight: string | null;
178
+ opportunityBannerDark: string | null;
112
179
  } | undefined;
113
180
  activePrograms: {
114
181
  icon: string;
@@ -169,6 +236,9 @@ export declare abstract class OpportunityFormatter {
169
236
  description: string;
170
237
  url: string;
171
238
  icon: string;
239
+ banner: string | null;
240
+ opportunityBannerLight: string | null;
241
+ opportunityBannerDark: string | null;
172
242
  } | undefined;
173
243
  activePrograms: {
174
244
  icon: string;
@@ -9,14 +9,12 @@ import { type Token } from "../../../modules/v4/token/token.model";
9
9
  import { type TvlRecord } from "../../../modules/v4/tvl/tvl.model";
10
10
  import { type Program } from "../program/program.model";
11
11
  import type { OpportunityRepository } from "./opportunity.repository";
12
- // ─── Schemas ─────────────────────────────────────────────────────────────────
13
12
  /**
14
13
  * Light Opportunity
15
14
  * @description Target description of rewards campaigns
16
15
  * @see {@link ResourceAPI}
17
16
  */
18
17
  export type OpportunityLight = ResourceAPI<"Opportunity", "manualOverrides" | "mainProtocolId", {
19
- // Light Opportunity properties
20
18
  depositUrl?: string;
21
19
  explorerAddress?: string;
22
20
  lastCampaignCreatedAt: number;
@@ -30,14 +28,12 @@ export type OpportunityLight = ResourceAPI<"Opportunity", "manualOverrides" | "m
30
28
  * @see {@link ResourceAPI}
31
29
  */
32
30
  export type Opportunity = ResourceAPI<"Opportunity", "manualOverrides" | "mainProtocolId", {
33
- // Light Opportunity properties
34
31
  depositUrl?: string;
35
32
  explorerAddress?: string;
36
33
  lastCampaignCreatedAt: number;
37
34
  mainProtocolId?: string;
38
35
  liveCampaigns: number;
39
36
  liveCampaignsForCreator?: number;
40
- // Full Opportunity properties (nested relations)
41
37
  chain: Chain["model"];
42
38
  tokens: Token["model"][];
43
39
  protocol?: Protocol["model"];
@@ -54,7 +50,6 @@ export type OpportunityUnique = {
54
50
  type: string;
55
51
  identifier: string;
56
52
  };
57
- // ─── DTOs ────────────────────────────────────────────────────────────────────
58
53
  export declare const OpportunityWithoutRecordsDto: import("@sinclair/typebox").TObject<{
59
54
  id: import("@sinclair/typebox").TString;
60
55
  type: import("@sinclair/typebox").TString;
@@ -753,7 +748,6 @@ export declare const FindManyOpportunityDto: import("@sinclair/typebox").TObject
753
748
  search: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
754
749
  campaignId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
755
750
  creatorSlug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
756
- //TODO: find a systemic way of handling query param arrays
757
751
  chainId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRegExp>;
758
752
  action: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
759
753
  tokenTypes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TEnum<{
@@ -879,7 +873,6 @@ export declare const OpportunityDeleteOverrideDto: import("@sinclair/typebox").T
879
873
  export declare const UpdateOpportunityDto: import("@sinclair/typebox").TObject<{
880
874
  tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
881
875
  }>;
882
- // ─── Static Types ────────────────────────────────────────────────────────────
883
876
  export type FindManyOpportunityModel = typeof FindManyOpportunityDto.static;
884
877
  export type FindOpportunityOptionsModel = typeof FindOpportunityDto.static;
885
878
  export type CreateOpportunityModel = typeof CreateOpportunityDto.static;
@@ -8,7 +8,6 @@ import type { TvlRecord } from "../../../modules/v4/tvl/tvl.model";
8
8
  import type { CreateOpportunityModel, FindManyOpportunityModel, FindOpportunityOptionsModel } from "./opportunity.model";
9
9
  export declare abstract class OpportunityRepository {
10
10
  #private;
11
- // ─── Create ──────────────────────────────────────────────────────────
12
11
  static create(newOpp: CreateOpportunityModel & {
13
12
  id: string;
14
13
  }, upsert?: boolean): Promise<{
@@ -19,6 +18,9 @@ export declare abstract class OpportunityRepository {
19
18
  description: string;
20
19
  url: string;
21
20
  icon: string;
21
+ banner: string | null;
22
+ opportunityBannerLight: string | null;
23
+ opportunityBannerDark: string | null;
22
24
  }[];
23
25
  Tokens: {
24
26
  id: string;
@@ -59,7 +61,6 @@ export declare abstract class OpportunityRepository {
59
61
  manualOverrides: import("@package/databases").OpportunityManualOverride[];
60
62
  liveCampaigns: number;
61
63
  }>;
62
- // ─── Find ────────────────────────────────────────────────────────────
63
64
  static findUnique(id: string): Promise<({
64
65
  ActivePrograms: {
65
66
  icon: string;
@@ -182,6 +183,9 @@ export declare abstract class OpportunityRepository {
182
183
  description: string;
183
184
  url: string;
184
185
  icon: string;
186
+ banner: string | null;
187
+ opportunityBannerLight: string | null;
188
+ opportunityBannerDark: string | null;
185
189
  } | null;
186
190
  Protocols: {
187
191
  id: string;
@@ -190,6 +194,9 @@ export declare abstract class OpportunityRepository {
190
194
  description: string;
191
195
  url: string;
192
196
  icon: string;
197
+ banner: string | null;
198
+ opportunityBannerLight: string | null;
199
+ opportunityBannerDark: string | null;
193
200
  }[];
194
201
  Tokens: {
195
202
  id: string;
@@ -242,7 +249,6 @@ export declare abstract class OpportunityRepository {
242
249
  manualOverrides: import("@package/databases").OpportunityManualOverride[];
243
250
  liveCampaigns: number;
244
251
  }) | null>;
245
- // wrong return type if you include campaigns (RewardToken is missing from the return type)
246
252
  static findUniqueOrThrow(id: string, query: FindOpportunityOptionsModel): Promise<{
247
253
  ActivePrograms: {
248
254
  icon: string;
@@ -347,6 +353,9 @@ export declare abstract class OpportunityRepository {
347
353
  description: string;
348
354
  url: string;
349
355
  icon: string;
356
+ banner: string | null;
357
+ opportunityBannerLight: string | null;
358
+ opportunityBannerDark: string | null;
350
359
  } | null;
351
360
  Protocols: {
352
361
  id: string;
@@ -355,6 +364,9 @@ export declare abstract class OpportunityRepository {
355
364
  description: string;
356
365
  url: string;
357
366
  icon: string;
367
+ banner: string | null;
368
+ opportunityBannerLight: string | null;
369
+ opportunityBannerDark: string | null;
358
370
  }[];
359
371
  Tokens: {
360
372
  id: string;
@@ -611,6 +623,9 @@ export declare abstract class OpportunityRepository {
611
623
  description: string;
612
624
  url: string;
613
625
  icon: string;
626
+ banner: string | null;
627
+ opportunityBannerLight: string | null;
628
+ opportunityBannerDark: string | null;
614
629
  } | null;
615
630
  Protocols: {
616
631
  id: string;
@@ -619,6 +634,9 @@ export declare abstract class OpportunityRepository {
619
634
  description: string;
620
635
  url: string;
621
636
  icon: string;
637
+ banner: string | null;
638
+ opportunityBannerLight: string | null;
639
+ opportunityBannerDark: string | null;
622
640
  }[];
623
641
  Tokens: {
624
642
  id: string;
@@ -782,6 +800,9 @@ export declare abstract class OpportunityRepository {
782
800
  description: string;
783
801
  url: string;
784
802
  icon: string;
803
+ banner: string | null;
804
+ opportunityBannerLight: string | null;
805
+ opportunityBannerDark: string | null;
785
806
  } | null;
786
807
  Protocols: {
787
808
  id: string;
@@ -790,6 +811,9 @@ export declare abstract class OpportunityRepository {
790
811
  description: string;
791
812
  url: string;
792
813
  icon: string;
814
+ banner: string | null;
815
+ opportunityBannerLight: string | null;
816
+ opportunityBannerDark: string | null;
793
817
  }[];
794
818
  Tokens: {
795
819
  id: string;
@@ -1056,6 +1080,9 @@ export declare abstract class OpportunityRepository {
1056
1080
  description: string;
1057
1081
  url: string;
1058
1082
  icon: string;
1083
+ banner: string | null;
1084
+ opportunityBannerLight: string | null;
1085
+ opportunityBannerDark: string | null;
1059
1086
  } | null;
1060
1087
  Protocols: {
1061
1088
  id: string;
@@ -1064,6 +1091,9 @@ export declare abstract class OpportunityRepository {
1064
1091
  description: string;
1065
1092
  url: string;
1066
1093
  icon: string;
1094
+ banner: string | null;
1095
+ opportunityBannerLight: string | null;
1096
+ opportunityBannerDark: string | null;
1067
1097
  }[];
1068
1098
  Tokens: {
1069
1099
  id: string;
@@ -1116,7 +1146,6 @@ export declare abstract class OpportunityRepository {
1116
1146
  manualOverrides: import("@package/databases").OpportunityManualOverride[];
1117
1147
  liveCampaigns: number;
1118
1148
  })[]>;
1119
- // ─── Update ──────────────────────────────────────────────────────────
1120
1149
  /**
1121
1150
  * Updates Apr, Tvl and DailyRewards records
1122
1151
  * @param opportunityId
@@ -1206,7 +1235,6 @@ export declare abstract class OpportunityRepository {
1206
1235
  liveCampaigns: number;
1207
1236
  }>;
1208
1237
  static updateMany(ids: string[], data: OpportunityUpdateArgs["data"]): Promise<Prisma.BatchPayload>;
1209
- // ─── Aggregation ─────────────────────────────────────────────────────
1210
1238
  static aggregateSum(field: keyof Prisma.OpportunitySumAggregateInputType, query: FindManyOpportunityModel): Promise<{
1211
1239
  sum: string;
1212
1240
  }>;
@@ -1,11 +1,26 @@
1
1
  import type { OpportunityUpdateArgs } from "@package/databases";
2
2
  import { DistributionType, type OpportunityAction, type OpportunityManualOverride, type Prisma, Status, TokenType } from "@package/databases/api";
3
- import { type ChainId } from "@package/resources/enums";
3
+ import { CampaignType, type ChainId } from "@package/resources/enums";
4
4
  import type { CampaignWithParams, FindCampaignModel } from "../../../modules/v4/campaign/campaign.model";
5
5
  import type { Protocol } from "../protocol/protocol.model";
6
6
  import type { Token } from "../token/token.model";
7
7
  import type { FindManyOpportunityModel, FindOpportunityOptionsModel, Opportunity, OpportunityOverrideModel, OpportunityResourceModel, OpportunityUnique, OpportunityWithCampaignsResourceModel } from "./opportunity.model";
8
8
  export declare abstract class OpportunityService {
9
+ /**
10
+ * Filters an array of opportunities based on query parameters
11
+ * @param opportunities Array of opportunities to filter
12
+ * @param query Query parameters containing filter criteria
13
+ * @returns Filtered array of opportunities
14
+ */
15
+ static filterOpportunities<T extends OpportunityResourceModel>(opportunities: T[], query: FindManyOpportunityModel): T[];
16
+ /**
17
+ * Sorts an array of opportunities based on query parameters
18
+ * @param opportunities Array of opportunities to sort
19
+ * @param query Query parameters containing sort criteria
20
+ * @returns Sorted array of opportunities
21
+ */
22
+ static sortOpportunities<T extends OpportunityResourceModel>(opportunities: T[], query: FindManyOpportunityModel): T[];
23
+ static paginateOpportunities<T extends OpportunityResourceModel>(opportunities: T[], query: FindManyOpportunityModel): Promise<T[]>;
9
24
  static transformQueryToTestAndTokenTypes(query: {
10
25
  tokenTypes?: TokenType[] | undefined;
11
26
  point?: boolean | undefined;
@@ -84,9 +99,6 @@ export declare abstract class OpportunityService {
84
99
  mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "elyx" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "levva" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "penpie" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "snap" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "steer" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
85
100
  description: string;
86
101
  howToSteps: string[];
87
- // If creator has specified a deposit URL, use it
88
- // Else if we have the specific logic to handle the deposit URL, use it
89
- // Else if the protocol has a deposit URL, use it
90
102
  depositUrl: string | undefined;
91
103
  explorerAddress: string | undefined;
92
104
  tags: string[];
@@ -98,6 +110,9 @@ export declare abstract class OpportunityService {
98
110
  description: string;
99
111
  url: string;
100
112
  icon: string;
113
+ banner: string | null;
114
+ opportunityBannerLight: string | null;
115
+ opportunityBannerDark: string | null;
101
116
  }[];
102
117
  Tokens: {
103
118
  id: string;
@@ -173,9 +188,6 @@ export declare abstract class OpportunityService {
173
188
  mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "elyx" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "levva" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "penpie" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "snap" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "steer" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
174
189
  description: string;
175
190
  howToSteps: string[];
176
- // If creator has specified a deposit URL, use it
177
- // Else if we have the specific logic to handle the deposit URL, use it
178
- // Else if the protocol has a deposit URL, use it
179
191
  depositUrl: string | undefined;
180
192
  explorerAddress: string | undefined;
181
193
  tags: string[];
@@ -187,6 +199,9 @@ export declare abstract class OpportunityService {
187
199
  description: string;
188
200
  url: string;
189
201
  icon: string;
202
+ banner: string | null;
203
+ opportunityBannerLight: string | null;
204
+ opportunityBannerDark: string | null;
190
205
  }[];
191
206
  Tokens: {
192
207
  id: string;
@@ -261,9 +276,6 @@ export declare abstract class OpportunityService {
261
276
  mainProtocol: "aave" | "aerodrome" | "ajna" | "akron" | "ambient" | "angles" | "arrakis" | "arthswap" | "aura" | "avalon" | "badger" | "balancer" | "base-swap" | "beefy" | "beraborrow" | "beratrax" | "bunni" | "camelot" | "cian" | "compound" | "concrete" | "cross_curve" | "crust" | "curve" | "curveNPool" | "dlend" | "dolomite" | "dragonswap" | "eigenlayer" | "ekubo" | "elyx" | "enzyme" | "equalizer" | "equilibria" | "euler" | "fenix" | "filament" | "fluid" | "frax" | "fraxlend" | "gamma" | "gammaswap" | "gearbox" | "hanji" | "holdstation" | "horiza" | "hourglass" | "hybra-pair" | "hyperdrive" | "hypurrfi" | "ichi" | "iguana" | "ion" | "ionic" | "ironclad" | "izumi" | "katana" | "kim" | "koi" | "kyo" | "lagoon" | "layerbank" | "lendle" | "levva" | "lnd" | "maha" | "mangrove" | "maverick" | "mimswap" | "moonwell" | "morpho" | "neptune" | "oku" | "oxium" | "pancake-swap" | "pendle" | "penpie" | "pinto" | "poolside" | "puffer" | "punchswap" | "quickswap" | "ra" | "radiant" | "ramses" | "reactor_fusion" | "reserve" | "retro" | "rfx" | "sake" | "satlayer" | "satoshi" | "silo" | "snap" | "sonex" | "sonicmarket" | "spectra" | "splice" | "stability" | "stabull" | "steer" | "stryke" | "sturdy" | "summerfinance" | "superlend" | "supswap" | "sushi-swap" | "swap-x" | "swapr" | "syncswap" | "tako-tako" | "teller" | "tempest" | "termmax" | "thirdtrade" | "thruster" | "toros" | "trader-joe" | "uniswap" | "uranium" | "veda" | "velodrome" | "venus" | "vest" | "vicuna" | "voltage" | "woofi" | "xlend" | "yei" | "zero" | "zerolend" | "zk-swap" | "zkSwapThreePool" | undefined;
262
277
  description: string;
263
278
  howToSteps: string[];
264
- // If creator has specified a deposit URL, use it
265
- // Else if we have the specific logic to handle the deposit URL, use it
266
- // Else if the protocol has a deposit URL, use it
267
279
  depositUrl: string | undefined;
268
280
  explorerAddress: string | undefined;
269
281
  tags: string[];
@@ -275,6 +287,9 @@ export declare abstract class OpportunityService {
275
287
  description: string;
276
288
  url: string;
277
289
  icon: string;
290
+ banner: string | null;
291
+ opportunityBannerLight: string | null;
292
+ opportunityBannerDark: string | null;
278
293
  }[];
279
294
  Tokens: {
280
295
  id: string;
@@ -624,7 +639,71 @@ export declare abstract class OpportunityService {
624
639
  distributionType: DistributionType;
625
640
  }[];
626
641
  };
627
- campaigns: Omit<CampaignWithParams, "manualOverrides">[] | undefined;
642
+ campaigns: (Omit<CampaignWithParams<CampaignType>, "manualOverrides"> & {
643
+ Opportunity: {
644
+ chainId: number;
645
+ type: string;
646
+ identifier: string;
647
+ name: string;
648
+ description: string;
649
+ howToSteps: string[];
650
+ status: Status;
651
+ action: OpportunityAction;
652
+ tvl: number;
653
+ apr: number;
654
+ maxApr: number | null;
655
+ dailyRewards: number;
656
+ tags: string[];
657
+ liveCampaigns: number;
658
+ tokens: ({
659
+ address: string;
660
+ chainId: number;
661
+ decimals: number;
662
+ icon: string;
663
+ id: string;
664
+ isNative: boolean;
665
+ isTest: boolean;
666
+ name: string | null;
667
+ symbol: string;
668
+ type: TokenType;
669
+ verified: boolean;
670
+ } & {
671
+ price?: number | null | undefined;
672
+ updatedAt?: number | null | undefined;
673
+ priceSource?: string | null | undefined;
674
+ isTokenWrapper?: boolean | undefined;
675
+ tokenWrapperAddress?: string | undefined;
676
+ })[];
677
+ chain: {
678
+ id: number;
679
+ name: string;
680
+ icon: string;
681
+ liveCampaigns: number;
682
+ endOfDisputePeriod: number;
683
+ };
684
+ protocol: {
685
+ id: string;
686
+ tags: string[];
687
+ name: string;
688
+ description: string;
689
+ url: string;
690
+ icon: string;
691
+ banner: string | null;
692
+ opportunityBannerLight: string | null;
693
+ opportunityBannerDark: string | null;
694
+ } | undefined;
695
+ activePrograms: {
696
+ icon: string;
697
+ id: string;
698
+ name: string;
699
+ slug: string | null;
700
+ }[];
701
+ id: string;
702
+ depositUrl: string | undefined;
703
+ explorerAddress: string | undefined;
704
+ lastCampaignCreatedAt: number;
705
+ };
706
+ })[] | undefined;
628
707
  liveCampaignsForCreator?: any;
629
708
  tokens: ({
630
709
  address: string;
@@ -659,6 +738,9 @@ export declare abstract class OpportunityService {
659
738
  description: string;
660
739
  url: string;
661
740
  icon: string;
741
+ banner: string | null;
742
+ opportunityBannerLight: string | null;
743
+ opportunityBannerDark: string | null;
662
744
  } | undefined;
663
745
  activePrograms: {
664
746
  icon: string;
@@ -772,7 +854,71 @@ export declare abstract class OpportunityService {
772
854
  distributionType: DistributionType;
773
855
  }[];
774
856
  };
775
- campaigns: Omit<CampaignWithParams, "manualOverrides">[] | undefined;
857
+ campaigns: (Omit<CampaignWithParams<CampaignType>, "manualOverrides"> & {
858
+ Opportunity: {
859
+ chainId: number;
860
+ type: string;
861
+ identifier: string;
862
+ name: string;
863
+ description: string;
864
+ howToSteps: string[];
865
+ status: Status;
866
+ action: OpportunityAction;
867
+ tvl: number;
868
+ apr: number;
869
+ maxApr: number | null;
870
+ dailyRewards: number;
871
+ tags: string[];
872
+ liveCampaigns: number;
873
+ tokens: ({
874
+ address: string;
875
+ chainId: number;
876
+ decimals: number;
877
+ icon: string;
878
+ id: string;
879
+ isNative: boolean;
880
+ isTest: boolean;
881
+ name: string | null;
882
+ symbol: string;
883
+ type: TokenType;
884
+ verified: boolean;
885
+ } & {
886
+ price?: number | null | undefined;
887
+ updatedAt?: number | null | undefined;
888
+ priceSource?: string | null | undefined;
889
+ isTokenWrapper?: boolean | undefined;
890
+ tokenWrapperAddress?: string | undefined;
891
+ })[];
892
+ chain: {
893
+ id: number;
894
+ name: string;
895
+ icon: string;
896
+ liveCampaigns: number;
897
+ endOfDisputePeriod: number;
898
+ };
899
+ protocol: {
900
+ id: string;
901
+ tags: string[];
902
+ name: string;
903
+ description: string;
904
+ url: string;
905
+ icon: string;
906
+ banner: string | null;
907
+ opportunityBannerLight: string | null;
908
+ opportunityBannerDark: string | null;
909
+ } | undefined;
910
+ activePrograms: {
911
+ icon: string;
912
+ id: string;
913
+ name: string;
914
+ slug: string | null;
915
+ }[];
916
+ id: string;
917
+ depositUrl: string | undefined;
918
+ explorerAddress: string | undefined;
919
+ lastCampaignCreatedAt: number;
920
+ };
921
+ })[] | undefined;
776
922
  liveCampaignsForCreator?: any;
777
923
  tokens: ({
778
924
  address: string;
@@ -807,6 +953,9 @@ export declare abstract class OpportunityService {
807
953
  description: string;
808
954
  url: string;
809
955
  icon: string;
956
+ banner: string | null;
957
+ opportunityBannerLight: string | null;
958
+ opportunityBannerDark: string | null;
810
959
  } | undefined;
811
960
  activePrograms: {
812
961
  icon: string;
@@ -1 +1 @@
1
- {"version":3,"file":"opportunity.service.js","sourceRoot":"","sources":["../../../../../../../apps/api/src/modules/v4/opportunity/opportunity.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opportunity.service.js","sourceRoot":"","sources":["../../../../../../../apps/api/src/modules/v4/opportunity/opportunity.service.ts"],"names":[],"mappings":"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"}