@merkl/api 1.0.97 → 1.0.98

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.
@@ -42,25 +42,385 @@ export declare const CampaignController: Elysia<"/campaigns", {
42
42
  };
43
43
  response: {
44
44
  200: {
45
+ rewardToken: {
46
+ symbol: string;
47
+ name: string | null;
48
+ decimals: number;
49
+ address: string;
50
+ id: string;
51
+ chainId: number;
52
+ type: import("@package/databases").TokenType;
53
+ icon: string;
54
+ isNative: boolean;
55
+ isTest: boolean;
56
+ verified: boolean;
57
+ } & {
58
+ price?: number | null | undefined;
59
+ isTokenWrapper?: boolean | undefined;
60
+ tokenWrapperAddress?: string | undefined;
61
+ };
45
62
  campaignId: string;
46
- description: string | null;
63
+ description?: string | undefined;
64
+ creator?: {
65
+ address: string;
66
+ tags?: string[];
67
+ creatorId: string | null;
68
+ } | undefined;
47
69
  id: string;
48
- params: import("@prisma/client/runtime/client").JsonValue;
70
+ params: import("@prisma/client/runtime/client").JsonValue & ((import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
71
+ markets: string[];
72
+ decimalsLoanToken: string;
73
+ symbolLoanToken: string;
74
+ loanToken: string;
75
+ url?: string;
76
+ }) | import("@angleprotocol/sdk/ts").AaveCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
77
+ strategy: string;
78
+ underlyingToken: string;
79
+ symbolUnderlyingToken: string;
80
+ decimalsUnderlyingToken: number;
81
+ url?: string;
82
+ }) | import("@angleprotocol/sdk/ts").ERC20LogCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
83
+ decimalsTargetToken: number;
84
+ symbolTargetToken: string;
85
+ targetToken: string;
86
+ url?: string;
87
+ } & {
88
+ apr: string;
89
+ rewardTokenPricing: boolean;
90
+ targetTokenPricing: boolean;
91
+ }) | import("@angleprotocol/sdk/ts").ERC20RebaseCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
92
+ decimalsTargetToken: number;
93
+ symbolTargetToken: string;
94
+ targetToken: string;
95
+ url?: string;
96
+ } & {
97
+ apr: string;
98
+ rewardTokenPricing: boolean;
99
+ targetTokenPricing: boolean;
100
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
101
+ addressAsset: string;
102
+ collateralAddress?: string;
103
+ decimalsAsset: number;
104
+ decimalsCollateral?: number;
105
+ decimalsTargetToken: number;
106
+ evkAddress: string;
107
+ nameCollateral?: string;
108
+ nameTargetToken: string;
109
+ subCampaignType: import("@angleprotocol/sdk/ts").EulerSubCampaignType;
110
+ symbolAsset: string;
111
+ symbolCollateral?: string;
112
+ symbolTargetToken: string;
113
+ targetToken: string;
114
+ }) | import("@angleprotocol/sdk/ts").EventBasedCampaignParameters | import("@angleprotocol/sdk/ts").HyperDriveLogCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
115
+ tokenId: string;
116
+ decimalsTargetToken: number;
117
+ targetToken: string;
118
+ symbolTargetToken: string;
119
+ baseToken: string;
120
+ baseTokenDecimals: number;
121
+ baseTokenSymbol: string;
122
+ url?: string;
123
+ } & {
124
+ apr: string;
125
+ rewardTokenPricing: boolean;
126
+ targetTokenPricing: boolean;
127
+ }) | import("@angleprotocol/sdk/ts").MorphoBorrowCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
128
+ market: string;
129
+ decimalsLoanToken: number;
130
+ symbolLoanToken: string;
131
+ loanToken: string;
132
+ decimalsCollateralToken: number;
133
+ symbolCollateralToken: string;
134
+ collateralToken: string;
135
+ decimalsTargetToken: number;
136
+ symbolTargetToken: string;
137
+ LLTV: string;
138
+ } & {
139
+ apr: string;
140
+ rewardTokenPricing: boolean;
141
+ targetTokenPricing: boolean;
142
+ }) | import("@angleprotocol/sdk/ts").MorphoCollateralCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
143
+ market: string;
144
+ decimalsLoanToken: number;
145
+ symbolLoanToken: string;
146
+ loanToken: string;
147
+ decimalsCollateralToken: number;
148
+ symbolCollateralToken: string;
149
+ collateralToken: string;
150
+ decimalsTargetToken: number;
151
+ symbolTargetToken: string;
152
+ LLTV: string;
153
+ } & {
154
+ apr: string;
155
+ rewardTokenPricing: boolean;
156
+ targetTokenPricing: boolean;
157
+ }) | import("@angleprotocol/sdk/ts").MorphoSupplyCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
158
+ market: string;
159
+ decimalsLoanToken: number;
160
+ symbolLoanToken: string;
161
+ loanToken: string;
162
+ decimalsCollateralToken: number;
163
+ symbolCollateralToken: string;
164
+ collateralToken: string;
165
+ decimalsTargetToken: number;
166
+ symbolTargetToken: string;
167
+ LLTV: string;
168
+ } & {
169
+ apr: string;
170
+ rewardTokenPricing: boolean;
171
+ targetTokenPricing: boolean;
172
+ }) | import("@angleprotocol/sdk/ts").TargetTokenCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & ({
173
+ poolId: string;
174
+ poolManager: string;
175
+ lpFee: number;
176
+ currency0: string;
177
+ currency1: string;
178
+ decimalsCurrency0: number;
179
+ decimalsCurrency1: number;
180
+ symbolCurrency0: string;
181
+ symbolCurrency1: string;
182
+ isOutOfRangeIncentivized: boolean;
183
+ weightFees: number;
184
+ weightToken0: number;
185
+ weightToken1: number;
186
+ whitelist: string[];
187
+ blacklist: string[];
188
+ } & ({
189
+ lowerPriceTolerance?: number;
190
+ upperPriceTolerance?: number;
191
+ lowerPriceBond?: never;
192
+ upperPriceBond?: never;
193
+ } | {
194
+ lowerPriceBond?: number;
195
+ upperPriceBond?: number;
196
+ lowerPriceTolerance?: never;
197
+ upperPriceTolerance?: never;
198
+ }))) | import("@angleprotocol/sdk/ts").SyncswapVaultCampaignParameters | import("@angleprotocol/sdk/ts").MultiLogCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
199
+ subCampaignType: import("@angleprotocol/sdk/ts").AjnaSubCampaignType;
200
+ poolId: string;
201
+ collateralToken: string;
202
+ symbolCollateralToken: string;
203
+ decimalsCollateralToken: number;
204
+ quoteToken: string;
205
+ symbolQuoteToken: string;
206
+ decimalsQuoteToken: string;
207
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
208
+ poolId: string;
209
+ baseToken: string;
210
+ quoteToken: string;
211
+ poolIdx: number;
212
+ decimalsBaseToken: number;
213
+ decimalsQuoteToken: number;
214
+ symbolBaseToken: string;
215
+ symbolQuoteToken: string;
216
+ isOutOfRangeIncentivized: boolean;
217
+ weightFees: number;
218
+ weightToken0: number;
219
+ weightToken1: number;
220
+ whitelist: string[];
221
+ blacklist: string[];
222
+ url: string;
223
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
224
+ decimalsTargetToken: number;
225
+ symbolTargetToken: string;
226
+ targetToken: string;
227
+ url?: string;
228
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
229
+ amm: import("@angleprotocol/sdk/ts").AMM;
230
+ ammAlgo: import("@angleprotocol/sdk/ts").AMMAlgorithm;
231
+ decimalsToken0: number;
232
+ decimalsToken1: number;
233
+ isOutOfRangeIncentivized: boolean;
234
+ poolAddress: string;
235
+ poolFee: string;
236
+ symbolToken0: string;
237
+ symbolToken1: string;
238
+ token0: string;
239
+ token1: string;
240
+ url?: string;
241
+ weightFees: number;
242
+ weightToken0: number;
243
+ weightToken1: number;
244
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
245
+ subCampaignType: import("@angleprotocol/sdk/ts").CompoundSubCampaignType;
246
+ decimalsTargetToken: number;
247
+ compFork: import("@angleprotocol/sdk/ts").CompFork;
248
+ symbolTargetToken: string;
249
+ targetToken: string;
250
+ underlyingToken: string;
251
+ symbolUnderlyingToken: string;
252
+ decimalsUnderlyingToken: number;
253
+ }) | import("@angleprotocol/sdk/ts").CompoundV3CampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
254
+ decimalsTargetToken: number;
255
+ symbolTargetToken: string;
256
+ targetToken: string;
257
+ underlyingToken: string;
258
+ subCampaignType: import("@angleprotocol/sdk/ts").CompoundV3SubCampaignType;
259
+ url?: string;
260
+ } & {
261
+ apr: string;
262
+ rewardTokenPricing: boolean;
263
+ targetTokenPricing: boolean;
264
+ }) | import("@angleprotocol/sdk/ts").ConvexCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
265
+ subCampaignType: import("@angleprotocol/sdk/ts").DolomiteSubCampaignType;
266
+ marketIndex: number;
267
+ decimalsTargetToken: number;
268
+ symbolTargetToken: string;
269
+ targetToken: string;
270
+ }) | ((import("@angleprotocol/sdk/ts").BaseCampaignParameters & ({
271
+ poolId: string;
272
+ poolManager: string;
273
+ lpFee: number;
274
+ currency0: string;
275
+ currency1: string;
276
+ decimalsCurrency0: number;
277
+ decimalsCurrency1: number;
278
+ symbolCurrency0: string;
279
+ symbolCurrency1: string;
280
+ isOutOfRangeIncentivized: boolean;
281
+ weightFees: number;
282
+ weightToken0: number;
283
+ weightToken1: number;
284
+ whitelist: string[];
285
+ blacklist: string[];
286
+ } & ({
287
+ lowerPriceTolerance?: number;
288
+ upperPriceTolerance?: number;
289
+ lowerPriceBond?: never;
290
+ upperPriceBond?: never;
291
+ } | {
292
+ lowerPriceBond?: number;
293
+ upperPriceBond?: number;
294
+ lowerPriceTolerance?: never;
295
+ upperPriceTolerance?: never;
296
+ }))) & {
297
+ config: string;
298
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
299
+ rewardsUrl: string;
300
+ dataUrl?: string;
301
+ }) | import("@angleprotocol/sdk/ts").ERC20CampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & ({
302
+ decimalsTargetToken: number;
303
+ symbolTargetToken: string;
304
+ targetToken: string;
305
+ url?: string;
306
+ } & ({
307
+ usesBlockNumber: false;
308
+ snapshotTimestamp: number;
309
+ } | {
310
+ usesBlockNumber: true;
311
+ snapshotBlockNumber: number;
312
+ }))) | import("@angleprotocol/sdk/ts").ERC721CampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
313
+ decimalsTargetToken: number;
314
+ symbolTargetToken: string;
315
+ targetToken: string;
316
+ subCampaignType: import("@angleprotocol/sdk/ts").ERC721SubCampaignType;
317
+ extraContracts: string[];
318
+ symbolUnderlyingToken: string;
319
+ url?: string;
320
+ } & {
321
+ apr: string;
322
+ rewardTokenPricing: boolean;
323
+ targetTokenPricing: boolean;
324
+ }) | import("@angleprotocol/sdk/ts").ERC6909CampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
325
+ decimalsTargetToken: number;
326
+ symbolTargetToken: string;
327
+ targetToken: string;
328
+ tokenId: string;
329
+ url?: string;
330
+ } & {
331
+ apr: string;
332
+ rewardTokenPricing: boolean;
333
+ targetTokenPricing: boolean;
334
+ }) | import("@angleprotocol/sdk/ts").FraxLendCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
335
+ targetToken: string;
336
+ decimalsLoanToken: number;
337
+ symbolLoanToken: string;
338
+ loanToken: string;
339
+ decimalsCollateralToken: number;
340
+ symbolCollateralToken: string;
341
+ collateralToken: string;
342
+ decimalsTargetToken: number;
343
+ symbolTargetToken: string;
344
+ } & {
345
+ apr: string;
346
+ rewardTokenPricing: boolean;
347
+ targetTokenPricing: boolean;
348
+ }) | Omit<import("@angleprotocol/sdk/ts").BaseCampaignParameters, "whitelist" | "blacklist"> | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
349
+ poolId: string;
350
+ marketId: string;
351
+ decimalsBorrowToken: string;
352
+ symbolBorrowToken: string;
353
+ borrowToken: string;
354
+ decimalsCollateralToken: string;
355
+ symbolCollateralToken: string;
356
+ collateralToken: string;
357
+ symbolTargetToken: string;
358
+ decimalsTargetToken: number;
359
+ targetToken: string;
360
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
361
+ jsonUrl: string;
362
+ url?: string;
363
+ }) | import("@angleprotocol/sdk/ts").LockerCampaignParameters | import("@angleprotocol/sdk/ts").MappingCampaignParameters | import("@angleprotocol/sdk/ts").MaverickBPCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
364
+ nameTargetToken: string;
365
+ symbolTargetToken: string;
366
+ decimalsTargetToken: number;
367
+ underlyingToken: string;
368
+ symbolUnderlyingToken: string;
369
+ decimalsUnderlyingToken: number;
370
+ targetToken: string;
371
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
372
+ marketId: string;
373
+ decimalsLoanToken: string;
374
+ symbolLoanToken: string;
375
+ loanToken: string;
376
+ decimalsBorrowToken: string;
377
+ symbolBorrowToken: string;
378
+ borrowToken: string;
379
+ symbolTargetToken: string;
380
+ decimalsTargetToken: number;
381
+ targetToken: string;
382
+ LLTV: string;
383
+ }) | import("@angleprotocol/sdk/ts").EkuboPositionManagerCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
384
+ capInUSD?: string;
385
+ decimalsTargetToken: number;
386
+ poolAddressProvider?: string;
387
+ pool: string;
388
+ symbolTargetToken: string;
389
+ targetToken: string;
390
+ }) | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
391
+ decimalsTargetToken: number;
392
+ symbolTargetToken: string;
393
+ targetToken: string;
394
+ forwarders: (import("@angleprotocol/sdk/ts").BaseCampaignParameters["forwarders"][number] & Partial<{
395
+ siloAsset: string;
396
+ siloAssetSymbol: string;
397
+ }>)[];
398
+ }) | import("@angleprotocol/sdk/ts").StakeDAOCampaignParameters | import("@angleprotocol/sdk/ts").SymbioticVaultCampaignParameters | (import("@angleprotocol/sdk/ts").BaseCampaignParameters & {
399
+ url?: string;
400
+ token: string;
401
+ }));
49
402
  amount: string;
50
- startTimestamp: bigint;
403
+ startTimestamp: number;
51
404
  type: string;
52
405
  computeChainId: number;
53
406
  distributionChainId: number;
54
- endTimestamp: bigint;
407
+ endTimestamp: number;
408
+ campaignStatus?: import("../status/status.model").Status["model"] | undefined;
409
+ chain: {
410
+ name: string;
411
+ id: number;
412
+ icon: string;
413
+ } & {};
414
+ Opportunity?: import("../opportunity/opportunity.model").OpportunityLight["model"] | undefined;
55
415
  distributionType: import("@package/databases").DistributionType;
56
416
  subType: number | null;
57
417
  rewardTokenId: string;
58
418
  opportunityId: string;
59
419
  creatorAddress: string;
60
- manualOverrides: import("@package/databases").CampaignManualOverride[];
61
- createdAt: Date;
62
- rootCampaignId: string | null;
63
- parentCampaignId: string | null;
420
+ createdAt: string;
421
+ rootCampaignId?: string | undefined;
422
+ parentCampaignId?: string | undefined;
423
+ distributionChain?: import("../../../modules/v4/chain/chain.model").Chain["model"] | undefined;
64
424
  } | {
65
425
  id: string;
66
426
  chainId: number;
@@ -134,7 +494,7 @@ export declare const CampaignController: Elysia<"/campaigns", {
134
494
  dailyRewards: number;
135
495
  tags: string[];
136
496
  lastCampaignCreatedAt: Date;
137
- } | undefined;
497
+ };
138
498
  422: {
139
499
  type: "validation";
140
500
  on: string;
@@ -895,7 +1255,17 @@ export declare const CampaignController: Elysia<"/campaigns", {
895
1255
  authorization: string;
896
1256
  };
897
1257
  response: {
898
- 200: unknown[];
1258
+ 200: {
1259
+ campaignId: string;
1260
+ apr: import("../apr/apr.model").AprRecord["model"];
1261
+ tvl: import("../tvl/tvl.model").TvlRecord["model"];
1262
+ dailyRewards: import("../reward/reward.model").DailyRewardsRecord["model"];
1263
+ }[] | {
1264
+ opportunityId: string;
1265
+ apr: import("../apr/apr.model").AprRecord["model"];
1266
+ tvl: import("../tvl/tvl.model").TvlRecord["model"];
1267
+ dailyRewards: import("../reward/reward.model").DailyRewardsRecord["model"];
1268
+ }[];
899
1269
  422: {
900
1270
  type: "validation";
901
1271
  on: string;
@@ -1,9 +1,10 @@
1
1
  import { type CampaignParameters, Campaign as CampaignType } from "@angleprotocol/sdk/ts";
2
- import type { CampaignWithParams } from "../../../modules/v4/campaign/campaign.model";
2
+ import type { CampaignWithParams, CreateCampaignModel } from "../../../modules/v4/campaign/campaign.model";
3
3
  import type { OpportunityService } from "../../../modules/v4/opportunity/opportunity.service";
4
4
  export declare abstract class CampaignTypeConvertor {
5
5
  static toNumber(campaignType: string): CampaignType;
6
6
  }
7
7
  export declare abstract class CampaignConvertor {
8
8
  static convertToV3<C extends CampaignType>(campaign: Exclude<Awaited<ReturnType<(typeof OpportunityService)["findMany"]>>[number]["campaigns"], undefined>[number] | Omit<CampaignWithParams<C>, "manualOverrides" | "opportunityId">, opportunityIdentifier?: string): CampaignParameters<C>;
9
+ static convertToCreationModel<C extends CampaignType>(campaign: CampaignParameters<C>): Omit<CreateCampaignModel, "id">;
9
10
  }
@@ -211,27 +211,7 @@ export declare abstract class CampaignService {
211
211
  parentCampaignId: string | null;
212
212
  })[]>;
213
213
  static countLives(query?: findCampaignWithStatusModel): Promise<number>;
214
- static create(body: Omit<CreateCampaignModel, "id">, dryRun?: boolean): Promise<{
215
- campaignId: string;
216
- description: string | null;
217
- id: string;
218
- params: import("@prisma/client/runtime/client").JsonValue;
219
- amount: string;
220
- startTimestamp: bigint;
221
- type: string;
222
- computeChainId: number;
223
- distributionChainId: number;
224
- endTimestamp: bigint;
225
- distributionType: import("@package/databases").DistributionType;
226
- subType: number | null;
227
- rewardTokenId: string;
228
- opportunityId: string;
229
- creatorAddress: string;
230
- manualOverrides: import("@package/databases").CampaignManualOverride[];
231
- createdAt: Date;
232
- rootCampaignId: string | null;
233
- parentCampaignId: string | null;
234
- } | {
214
+ static create(body: Omit<CreateCampaignModel, "id">, dryRun?: boolean): Promise<Omit<CampaignWithParams, "manualOverrides"> | {
235
215
  id: string;
236
216
  chainId: number;
237
217
  type: string;
@@ -305,7 +285,7 @@ export declare abstract class CampaignService {
305
285
  dailyRewards: number;
306
286
  tags: string[];
307
287
  lastCampaignCreatedAt: Date;
308
- }) | undefined>;
288
+ })>;
309
289
  static getCampaignIdsFromCreationTxHash(query: TransactionModel): Promise<string[]>;
310
290
  /**
311
291
  * @dev back-office function for manual overrides