@merkl/api 0.20.102 → 0.20.104
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.
- package/dist/src/eden/index.d.ts +54 -36
- package/dist/src/engine/campaignTVL/factory.d.ts +1 -1
- package/dist/src/engine/campaignTVL/factory.js +9 -3
- package/dist/src/engine/campaignTVL/implementations/Erc20/Erc20SubType.d.ts +2 -0
- package/dist/src/engine/campaignTVL/implementations/Erc20/computeSubTypes.d.ts +2 -3
- package/dist/src/engine/campaignTVL/implementations/Erc20/computeSubTypes.js +117 -0
- package/dist/src/engine/campaignTVL/implementations/Erc20/factory.d.ts +3 -0
- package/dist/src/engine/campaignTVL/implementations/Erc20/factory.js +13 -0
- package/dist/src/engine/campaignTVL/implementations/Erc20/index.d.ts +2 -2
- package/dist/src/engine/campaignTVL/implementations/Erc20/index.js +20 -1
- package/dist/src/engine/dynamicData/implementations/Erc20.d.ts +1 -1
- package/dist/src/engine/dynamicData/implementations/Erc20.js +3 -9
- package/dist/src/engine/dynamicData/implementations/Radiant.js +2 -2
- package/dist/src/engine/erc20SubTypeProcessors/GenericProcessor.d.ts +1 -2
- package/dist/src/engine/erc20SubTypeProcessors/subtypesRound1.d.ts +1 -0
- package/dist/src/engine/erc20SubTypeProcessors/subtypesRound1.js +4 -4
- package/dist/src/engine/erc20SubTypeProcessors/subtypesRound2.d.ts +1 -2
- package/dist/src/engine/opportunityMetadata/factory.js +4 -2
- package/dist/src/engine/opportunityMetadata/implementations/ERCMultiToken.d.ts +14 -2
- package/dist/src/engine/opportunityMetadata/implementations/ERCMultiToken.js +52 -2
- package/dist/src/engine/opportunityMetadata/implementations/JsonAirdrop.d.ts +2 -2
- package/dist/src/index.d.ts +18 -12
- package/dist/src/modules/v4/campaign/campaign.service.d.ts +6 -0
- package/dist/src/modules/v4/campaign/campaign.service.js +9 -0
- package/dist/src/modules/v4/campaign/campaign.test.controller.d.ts +2 -2
- package/dist/src/modules/v4/campaign/campaign.test.controller.js +1 -1
- package/dist/src/modules/v4/computedValue/computedValue.controller.js +2 -1
- package/dist/src/modules/v4/computedValue/computedValue.service.d.ts +1 -1
- package/dist/src/modules/v4/computedValue/computedValue.service.js +5 -10
- package/dist/src/modules/v4/dynamicData/dynamicData.service.js +2 -2
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +7 -7
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +3 -3
- package/dist/src/modules/v4/programPayload/programPayload.controller.d.ts +1 -1
- package/dist/src/modules/v4/protocol/protocol.controller.d.ts +2 -2
- package/dist/src/modules/v4/protocol/protocol.model.d.ts +1 -1
- package/dist/src/modules/v4/protocol/protocol.model.js +1 -0
- package/dist/src/modules/v4/router.d.ts +18 -12
- package/dist/src/modules/v4/token/token.controller.d.ts +6 -0
- package/dist/src/modules/v4/token/token.controller.js +1 -1
- package/dist/src/modules/v4/token/token.model.d.ts +3 -0
- package/dist/src/modules/v4/token/token.model.js +3 -0
- package/dist/src/modules/v4/token/token.repository.js +47 -25
- package/dist/src/modules/v4/token/token.service.d.ts +27 -6
- package/dist/src/modules/v4/token/token.service.js +29 -79
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/src/modules/v4/computedValue/index.d.ts +0 -2
- package/dist/src/modules/v4/computedValue/index.js +0 -2
@@ -8,6 +8,7 @@ import { log } from "@/utils/logger";
|
|
8
8
|
import { Campaign as CampaignEnum, NETWORK_LABELS, } from "@sdk";
|
9
9
|
import { utils } from "ethers";
|
10
10
|
import moment from "moment";
|
11
|
+
import { ComputedValueService } from "../computedValue/computedValue.service";
|
11
12
|
import { CampaignRepository } from "./campaign.repository";
|
12
13
|
export class CampaignService {
|
13
14
|
static hashId(campaign) {
|
@@ -181,6 +182,14 @@ export class CampaignService {
|
|
181
182
|
const id = typeof campaign === "string" ? campaign : CampaignService.hashId(campaign);
|
182
183
|
return await CampaignRepository.findUniqueOrThrow(id, withOpportunity);
|
183
184
|
}
|
185
|
+
static async findCampaignValue(params) {
|
186
|
+
if (params.campaignId.includes("-") && params.campaignId.startsWith("0x")) {
|
187
|
+
const [campaignId, distributionChain] = params.campaignId.split("-");
|
188
|
+
return await ComputedValueService.findCampaignValue(CampaignService.hashId({ campaignId, distributionChain: Number.parseInt(distributionChain) }), params.field);
|
189
|
+
}
|
190
|
+
const campaignId = (await CampaignService.findMany({ campaignId: params.campaignId }))[0].id;
|
191
|
+
return await ComputedValueService.findCampaignValue(campaignId, params.field);
|
192
|
+
}
|
184
193
|
static async removeManualOverride(campaign, field) {
|
185
194
|
const id = typeof campaign === "string" ? campaign : CampaignService.hashId(campaign);
|
186
195
|
return await CampaignRepository.removeManualOverride(id, field);
|
@@ -143,7 +143,7 @@ export declare const CampaignTestController: Elysia<"/campaigns", false, {
|
|
143
143
|
} & {
|
144
144
|
price?: number | null | undefined;
|
145
145
|
})[];
|
146
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
146
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
147
147
|
depositUrl: any;
|
148
148
|
explorerAddress: string | undefined;
|
149
149
|
tags: string[];
|
@@ -206,7 +206,7 @@ export declare const CampaignTestController: Elysia<"/campaigns", false, {
|
|
206
206
|
} & {
|
207
207
|
price?: number | null | undefined;
|
208
208
|
})[];
|
209
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
209
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
210
210
|
depositUrl: any;
|
211
211
|
explorerAddress: string | undefined;
|
212
212
|
tags: string[];
|
@@ -68,7 +68,7 @@ export const CampaignTestController = new Elysia({
|
|
68
68
|
},
|
69
69
|
]);
|
70
70
|
if (!engineCampaigns.length)
|
71
|
-
throw new NotFoundError("
|
71
|
+
throw new NotFoundError("Campaign not found in engine db");
|
72
72
|
return await OpportunityService.createFromCampaign(engineCampaigns[0], false, true);
|
73
73
|
}, {
|
74
74
|
query: CampaignUniqueDto,
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { AuthorizationHeadersDto, EngineGuard } from "@/guards/Engine.guard";
|
2
2
|
import { throwOnInvalidRequiredAddress } from "@/utils/throw";
|
3
3
|
import Elysia from "elysia";
|
4
|
+
import { CampaignService } from "../campaign";
|
4
5
|
import { GetCampaignComputedValue, GetUserComputedValues, UpsertCampaignComputedValue, UpsertUserComputedValues, } from "./computedValue.model";
|
5
6
|
import { ComputedValueService } from "./computedValue.service";
|
6
7
|
export const ComputedValueController = new Elysia({
|
@@ -8,7 +9,7 @@ export const ComputedValueController = new Elysia({
|
|
8
9
|
detail: { tags: ["Value"] },
|
9
10
|
})
|
10
11
|
// ─── Get a Campaign Value ──────────────────────────────────────
|
11
|
-
.get("/campaign/:campaignId/:field", async ({ params }) =>
|
12
|
+
.get("/campaign/:campaignId/:field", async ({ params }) => CampaignService.findCampaignValue(params), {
|
12
13
|
params: GetCampaignComputedValue,
|
13
14
|
detail: { description: "Gets campaign-level values computed by Merkl Engine (for example average boost)" },
|
14
15
|
})
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import type { GetCampaignComputedValueModel, GetUserComputedValuesModel, UpsertCampaignComputedValueModel, UpsertUserComputedValuesModel } from "./computedValue.model";
|
2
2
|
export declare abstract class ComputedValueService {
|
3
3
|
static hashUserComputedValueId(campaignId: string, address: string, reason: string): string;
|
4
|
-
static findCampaignValue(
|
4
|
+
static findCampaignValue(campaignId: string, field: GetCampaignComputedValueModel["field"]): Promise<{
|
5
5
|
averageBoost: number | null;
|
6
6
|
totalDistributedInUSD: number | null;
|
7
7
|
forfeitingBoost: number | null;
|
@@ -1,19 +1,14 @@
|
|
1
1
|
import { log } from "@/utils/logger";
|
2
|
-
import { CampaignService } from "../campaign";
|
3
2
|
import { ComputedValueRepository } from "./computedValue.repository";
|
4
3
|
export class ComputedValueService {
|
5
4
|
static hashUserComputedValueId(campaignId, address, reason) {
|
6
5
|
return Bun.hash(`${campaignId}${address}${reason}`).toString();
|
7
6
|
}
|
8
|
-
static async findCampaignValue(
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
}
|
13
|
-
else if (params.campaignId.startsWith("0x")) {
|
14
|
-
params.campaignId = (await CampaignService.findMany({ campaignId: params.campaignId }))[0].id;
|
15
|
-
}
|
16
|
-
return await ComputedValueRepository.findCampaignValue(params);
|
7
|
+
static async findCampaignValue(campaignId, field) {
|
8
|
+
return await ComputedValueRepository.findCampaignValue({
|
9
|
+
campaignId,
|
10
|
+
field,
|
11
|
+
});
|
17
12
|
}
|
18
13
|
static async upsertCampaignComputedValue(data) {
|
19
14
|
await ComputedValueRepository.upsertCampaignComputedValue(data);
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { campaignTVLBuilderFactory } from "@/engine/campaignTVL/factory";
|
2
2
|
import { dynamicDataBuilderFactory } from "@/engine/dynamicData/factory";
|
3
3
|
import { HttpError } from "@/errors";
|
4
4
|
import { InvalidParameter } from "@/errors/InvalidParameter.error";
|
@@ -28,7 +28,7 @@ export class DynamicDataService {
|
|
28
28
|
}
|
29
29
|
}
|
30
30
|
// 2 - If the new dynamic data builder is available, use it
|
31
|
-
const builder =
|
31
|
+
const builder = campaignTVLBuilderFactory(type);
|
32
32
|
if (!!builder) {
|
33
33
|
// 2.a - Call the builder
|
34
34
|
const records = await DynamicDataService.fetchWithRecursiveErrorHandling(builder.build, campaigns, chainId);
|
@@ -156,7 +156,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
156
156
|
} & {
|
157
157
|
price?: number | null | undefined;
|
158
158
|
})[];
|
159
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
159
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
160
160
|
depositUrl: any;
|
161
161
|
explorerAddress: string | undefined;
|
162
162
|
tags: string[];
|
@@ -220,7 +220,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
220
220
|
} & {
|
221
221
|
price?: number | null | undefined;
|
222
222
|
})[];
|
223
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
223
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
224
224
|
depositUrl: any;
|
225
225
|
explorerAddress: string | undefined;
|
226
226
|
tags: string[];
|
@@ -253,9 +253,9 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
253
253
|
mainProtocolId?: string | undefined;
|
254
254
|
campaigns?: boolean | undefined;
|
255
255
|
point?: boolean | undefined;
|
256
|
-
test?: boolean | undefined;
|
257
256
|
rewardTokenSymbol?: string | undefined;
|
258
257
|
order?: string | undefined;
|
258
|
+
test?: boolean | undefined;
|
259
259
|
minimumTvl?: number | undefined;
|
260
260
|
};
|
261
261
|
headers: unknown;
|
@@ -456,9 +456,9 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
456
456
|
mainProtocolId?: string | undefined;
|
457
457
|
campaigns?: boolean | undefined;
|
458
458
|
point?: boolean | undefined;
|
459
|
-
test?: boolean | undefined;
|
460
459
|
rewardTokenSymbol?: string | undefined;
|
461
460
|
order?: string | undefined;
|
461
|
+
test?: boolean | undefined;
|
462
462
|
minimumTvl?: number | undefined;
|
463
463
|
};
|
464
464
|
headers: unknown;
|
@@ -962,9 +962,9 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
962
962
|
mainProtocolId?: string | undefined;
|
963
963
|
campaigns?: boolean | undefined;
|
964
964
|
point?: boolean | undefined;
|
965
|
-
test?: boolean | undefined;
|
966
965
|
rewardTokenSymbol?: string | undefined;
|
967
966
|
order?: string | undefined;
|
967
|
+
test?: boolean | undefined;
|
968
968
|
minimumTvl?: number | undefined;
|
969
969
|
};
|
970
970
|
headers: unknown;
|
@@ -1005,9 +1005,9 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
1005
1005
|
mainProtocolId?: string | undefined;
|
1006
1006
|
campaigns?: boolean | undefined;
|
1007
1007
|
point?: boolean | undefined;
|
1008
|
-
test?: boolean | undefined;
|
1009
1008
|
rewardTokenSymbol?: string | undefined;
|
1010
1009
|
order?: string | undefined;
|
1010
|
+
test?: boolean | undefined;
|
1011
1011
|
minimumTvl?: number | undefined;
|
1012
1012
|
};
|
1013
1013
|
headers: unknown;
|
@@ -1049,9 +1049,9 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
1049
1049
|
mainProtocolId?: string | undefined;
|
1050
1050
|
campaigns?: boolean | undefined;
|
1051
1051
|
point?: boolean | undefined;
|
1052
|
-
test?: boolean | undefined;
|
1053
1052
|
rewardTokenSymbol?: string | undefined;
|
1054
1053
|
order?: string | undefined;
|
1054
|
+
test?: boolean | undefined;
|
1055
1055
|
minimumTvl?: number | undefined;
|
1056
1056
|
};
|
1057
1057
|
headers: unknown;
|
@@ -64,7 +64,7 @@ export declare abstract class OpportunityService {
|
|
64
64
|
} & {
|
65
65
|
price?: number | null | undefined;
|
66
66
|
})[];
|
67
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
67
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
68
68
|
depositUrl: any;
|
69
69
|
explorerAddress: string | undefined;
|
70
70
|
tags: string[];
|
@@ -137,7 +137,7 @@ export declare abstract class OpportunityService {
|
|
137
137
|
} & {
|
138
138
|
price?: number | null | undefined;
|
139
139
|
})[];
|
140
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
140
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
141
141
|
depositUrl: any;
|
142
142
|
explorerAddress: string | undefined;
|
143
143
|
tags: string[];
|
@@ -185,7 +185,7 @@ export declare abstract class OpportunityService {
|
|
185
185
|
} & {
|
186
186
|
price?: number | null | undefined;
|
187
187
|
})[];
|
188
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
188
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
189
189
|
depositUrl: any;
|
190
190
|
explorerAddress: string | undefined;
|
191
191
|
tags: string[];
|
@@ -199,9 +199,9 @@ export declare const ProgramPayloadController: Elysia<"/program-payload", false,
|
|
199
199
|
marketId?: string | undefined;
|
200
200
|
strategy?: string | undefined;
|
201
201
|
poolId?: string | undefined;
|
202
|
+
targetToken?: string | undefined;
|
202
203
|
forwarders?: (string | {})[] | undefined;
|
203
204
|
whitelist?: string[] | undefined;
|
204
|
-
targetToken?: string | undefined;
|
205
205
|
isOutOfRangeIncentivized?: boolean | undefined;
|
206
206
|
weightFees?: number | undefined;
|
207
207
|
weightToken0?: number | undefined;
|
@@ -23,8 +23,8 @@ export declare const ProtocolController: Elysia<"/protocols", false, {
|
|
23
23
|
items?: number | undefined;
|
24
24
|
tags?: string[] | undefined;
|
25
25
|
page?: number | undefined;
|
26
|
-
test?: boolean | undefined;
|
27
26
|
ids?: string[] | undefined;
|
27
|
+
test?: boolean | undefined;
|
28
28
|
opportunityTag?: string | undefined;
|
29
29
|
};
|
30
30
|
headers: unknown;
|
@@ -57,8 +57,8 @@ export declare const ProtocolController: Elysia<"/protocols", false, {
|
|
57
57
|
items?: number | undefined;
|
58
58
|
tags?: string[] | undefined;
|
59
59
|
page?: number | undefined;
|
60
|
-
test?: boolean | undefined;
|
61
60
|
ids?: string[] | undefined;
|
61
|
+
test?: boolean | undefined;
|
62
62
|
opportunityTag?: string | undefined;
|
63
63
|
};
|
64
64
|
headers: unknown;
|
@@ -9,7 +9,7 @@ export type Protocol = Resource<"Protocol", undefined, {
|
|
9
9
|
numberOfLiveCampaigns?: number;
|
10
10
|
opportunityLiveTags?: string[];
|
11
11
|
}>;
|
12
|
-
export declare const protocolIdList: readonly ["uniswap", "ambient", "arthswap", "base-swap", "camelot", "crust", "fenix", "horiza", "izumi", "kim", "pancake-swap", "quickswap", "ramses", "retro", "stryke", "sushi-swap", "swapr", "thruster", "voltage", "zero", "koi", "supswap", "zk-swap", "thirdtrade", "swap-x", "velodrome", "aerodrome", "balancer", "curve", "cross_curve", "curveNPool", "aura", "akron", "beefy", "dragonswap", "poolside", "koi", "syncswap", "neptune", "zkSwapThreePool", "syncswap", "rfx", "ra", "maverick", "trader-joe", "velodrome", "hanji", "radiant", "aave", "fraxlend", "ironclad", "euler", "gearbox", "compound", "sturdy", "frax", "ionic", "moonwell", "fluid", "silo", "morpho", "dolomite", "badger", "ajna", "layerbank", "ion", "venus", "woofi", "reactor_fusion", "eigenlayer", "vest", "zerolend", "hyperdrive", "gamma", "oku", "hourglass", "veda", "kyo", "sonex", "lendle", "tako-tako", "equalizer", "spectra", "beraborrow", "superlend", "avalon", "iguana", "xlend", "sake", "angles", "enzyme", "toros", "vicuna", "bunni", "beratrax", "concrete", "cian", "pendle", "splice", "sturdy", "yei", "filament", "gammaswap", "maha", "tempest", "uranium", "hanji", "holdstation", "katana", "satlayer"];
|
12
|
+
export declare const protocolIdList: readonly ["uniswap", "ambient", "arthswap", "base-swap", "camelot", "crust", "fenix", "horiza", "izumi", "kim", "pancake-swap", "quickswap", "ramses", "retro", "stryke", "sushi-swap", "swapr", "thruster", "voltage", "zero", "koi", "supswap", "zk-swap", "thirdtrade", "swap-x", "velodrome", "aerodrome", "balancer", "curve", "cross_curve", "curveNPool", "aura", "akron", "beefy", "dragonswap", "poolside", "koi", "syncswap", "neptune", "zkSwapThreePool", "syncswap", "rfx", "ra", "maverick", "trader-joe", "velodrome", "hanji", "radiant", "aave", "fraxlend", "ironclad", "euler", "gearbox", "compound", "sturdy", "frax", "ionic", "moonwell", "fluid", "silo", "morpho", "dolomite", "badger", "ajna", "layerbank", "ion", "venus", "woofi", "reactor_fusion", "eigenlayer", "vest", "zerolend", "hyperdrive", "gamma", "oku", "hourglass", "veda", "kyo", "sonex", "lendle", "tako-tako", "equalizer", "spectra", "beraborrow", "superlend", "avalon", "iguana", "xlend", "sake", "sonicmarket", "angles", "enzyme", "toros", "vicuna", "bunni", "beratrax", "concrete", "cian", "pendle", "splice", "sturdy", "yei", "filament", "gammaswap", "maha", "tempest", "uranium", "hanji", "holdstation", "katana", "satlayer"];
|
13
13
|
export type ProtocolId = (typeof protocolIdList)[number];
|
14
14
|
export declare const ProtocolResourceDto: import("@sinclair/typebox").TObject<{
|
15
15
|
id: import("@sinclair/typebox").TString;
|
@@ -171,7 +171,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
171
171
|
} & {
|
172
172
|
price?: number | null | undefined;
|
173
173
|
})[];
|
174
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
174
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
175
175
|
depositUrl: any;
|
176
176
|
explorerAddress: string | undefined;
|
177
177
|
tags: string[];
|
@@ -235,7 +235,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
235
235
|
} & {
|
236
236
|
price?: number | null | undefined;
|
237
237
|
})[];
|
238
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
238
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
239
239
|
depositUrl: any;
|
240
240
|
explorerAddress: string | undefined;
|
241
241
|
tags: string[];
|
@@ -268,9 +268,9 @@ export declare const v4: Elysia<"/v4", false, {
|
|
268
268
|
mainProtocolId?: string | undefined;
|
269
269
|
campaigns?: boolean | undefined;
|
270
270
|
point?: boolean | undefined;
|
271
|
-
test?: boolean | undefined;
|
272
271
|
rewardTokenSymbol?: string | undefined;
|
273
272
|
order?: string | undefined;
|
273
|
+
test?: boolean | undefined;
|
274
274
|
minimumTvl?: number | undefined;
|
275
275
|
};
|
276
276
|
headers: unknown;
|
@@ -471,9 +471,9 @@ export declare const v4: Elysia<"/v4", false, {
|
|
471
471
|
mainProtocolId?: string | undefined;
|
472
472
|
campaigns?: boolean | undefined;
|
473
473
|
point?: boolean | undefined;
|
474
|
-
test?: boolean | undefined;
|
475
474
|
rewardTokenSymbol?: string | undefined;
|
476
475
|
order?: string | undefined;
|
476
|
+
test?: boolean | undefined;
|
477
477
|
minimumTvl?: number | undefined;
|
478
478
|
};
|
479
479
|
headers: unknown;
|
@@ -977,9 +977,9 @@ export declare const v4: Elysia<"/v4", false, {
|
|
977
977
|
mainProtocolId?: string | undefined;
|
978
978
|
campaigns?: boolean | undefined;
|
979
979
|
point?: boolean | undefined;
|
980
|
-
test?: boolean | undefined;
|
981
980
|
rewardTokenSymbol?: string | undefined;
|
982
981
|
order?: string | undefined;
|
982
|
+
test?: boolean | undefined;
|
983
983
|
minimumTvl?: number | undefined;
|
984
984
|
};
|
985
985
|
headers: unknown;
|
@@ -1020,9 +1020,9 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1020
1020
|
mainProtocolId?: string | undefined;
|
1021
1021
|
campaigns?: boolean | undefined;
|
1022
1022
|
point?: boolean | undefined;
|
1023
|
-
test?: boolean | undefined;
|
1024
1023
|
rewardTokenSymbol?: string | undefined;
|
1025
1024
|
order?: string | undefined;
|
1025
|
+
test?: boolean | undefined;
|
1026
1026
|
minimumTvl?: number | undefined;
|
1027
1027
|
};
|
1028
1028
|
headers: unknown;
|
@@ -1064,9 +1064,9 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1064
1064
|
mainProtocolId?: string | undefined;
|
1065
1065
|
campaigns?: boolean | undefined;
|
1066
1066
|
point?: boolean | undefined;
|
1067
|
-
test?: boolean | undefined;
|
1068
1067
|
rewardTokenSymbol?: string | undefined;
|
1069
1068
|
order?: string | undefined;
|
1069
|
+
test?: boolean | undefined;
|
1070
1070
|
minimumTvl?: number | undefined;
|
1071
1071
|
};
|
1072
1072
|
headers: unknown;
|
@@ -1915,7 +1915,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1915
1915
|
} & {
|
1916
1916
|
price?: number | null | undefined;
|
1917
1917
|
})[];
|
1918
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
1918
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
1919
1919
|
depositUrl: any;
|
1920
1920
|
explorerAddress: string | undefined;
|
1921
1921
|
tags: string[];
|
@@ -1978,7 +1978,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1978
1978
|
} & {
|
1979
1979
|
price?: number | null | undefined;
|
1980
1980
|
})[];
|
1981
|
-
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
1981
|
+
mainProtocol: "splice" | "morpho" | "quickswap" | "euler" | "ambient" | "aura" | "poolside" | "gearbox" | "filament" | "fluid" | "compound" | "ionic" | "layerbank" | "moonwell" | "fraxlend" | "fenix" | "ra" | "syncswap" | "beefy" | "aerodrome" | "velodrome" | "curve" | "toros" | "akron" | "enzyme" | "dragonswap" | "koi" | "rfx" | "woofi" | "pendle" | "zkSwapThreePool" | "maha" | "tempest" | "holdstation" | "venus" | "reactor_fusion" | "vicuna" | "curveNPool" | "satlayer" | "veda" | "cian" | "concrete" | "hourglass" | "katana" | "gamma" | "uniswap" | "arthswap" | "base-swap" | "camelot" | "crust" | "horiza" | "izumi" | "kim" | "pancake-swap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "zero" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "balancer" | "cross_curve" | "neptune" | "maverick" | "trader-joe" | "hanji" | "radiant" | "aave" | "ironclad" | "sturdy" | "frax" | "silo" | "dolomite" | "badger" | "ajna" | "ion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | "oku" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "angles" | "bunni" | "beratrax" | "yei" | "gammaswap" | "uranium" | undefined;
|
1982
1982
|
depositUrl: any;
|
1983
1983
|
explorerAddress: string | undefined;
|
1984
1984
|
tags: string[];
|
@@ -2002,8 +2002,8 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2002
2002
|
items?: number | undefined;
|
2003
2003
|
tags?: string[] | undefined;
|
2004
2004
|
page?: number | undefined;
|
2005
|
-
test?: boolean | undefined;
|
2006
2005
|
ids?: string[] | undefined;
|
2006
|
+
test?: boolean | undefined;
|
2007
2007
|
opportunityTag?: string | undefined;
|
2008
2008
|
};
|
2009
2009
|
headers: unknown;
|
@@ -2036,8 +2036,8 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2036
2036
|
items?: number | undefined;
|
2037
2037
|
tags?: string[] | undefined;
|
2038
2038
|
page?: number | undefined;
|
2039
|
-
test?: boolean | undefined;
|
2040
2039
|
ids?: string[] | undefined;
|
2040
|
+
test?: boolean | undefined;
|
2041
2041
|
opportunityTag?: string | undefined;
|
2042
2042
|
};
|
2043
2043
|
headers: unknown;
|
@@ -2297,7 +2297,10 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2297
2297
|
query: {
|
2298
2298
|
symbol?: string | undefined;
|
2299
2299
|
id?: string[] | undefined;
|
2300
|
+
search?: string | undefined;
|
2300
2301
|
name?: string | undefined;
|
2302
|
+
items?: number | undefined;
|
2303
|
+
page?: number | undefined;
|
2301
2304
|
address?: string | undefined;
|
2302
2305
|
chainId?: number | undefined;
|
2303
2306
|
displaySymbol?: string | undefined;
|
@@ -2335,7 +2338,10 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2335
2338
|
query: {
|
2336
2339
|
symbol?: string | undefined;
|
2337
2340
|
id?: string[] | undefined;
|
2341
|
+
search?: string | undefined;
|
2338
2342
|
name?: string | undefined;
|
2343
|
+
items?: number | undefined;
|
2344
|
+
page?: number | undefined;
|
2339
2345
|
address?: string | undefined;
|
2340
2346
|
chainId?: number | undefined;
|
2341
2347
|
displaySymbol?: string | undefined;
|
@@ -4514,9 +4520,9 @@ export declare const v4: Elysia<"/v4", false, {
|
|
4514
4520
|
marketId?: string | undefined;
|
4515
4521
|
strategy?: string | undefined;
|
4516
4522
|
poolId?: string | undefined;
|
4523
|
+
targetToken?: string | undefined;
|
4517
4524
|
forwarders?: (string | {})[] | undefined;
|
4518
4525
|
whitelist?: string[] | undefined;
|
4519
|
-
targetToken?: string | undefined;
|
4520
4526
|
isOutOfRangeIncentivized?: boolean | undefined;
|
4521
4527
|
weightFees?: number | undefined;
|
4522
4528
|
weightToken0?: number | undefined;
|
@@ -148,7 +148,10 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
148
148
|
query: {
|
149
149
|
symbol?: string | undefined;
|
150
150
|
id?: string[] | undefined;
|
151
|
+
search?: string | undefined;
|
151
152
|
name?: string | undefined;
|
153
|
+
items?: number | undefined;
|
154
|
+
page?: number | undefined;
|
152
155
|
address?: string | undefined;
|
153
156
|
chainId?: number | undefined;
|
154
157
|
displaySymbol?: string | undefined;
|
@@ -186,7 +189,10 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
186
189
|
query: {
|
187
190
|
symbol?: string | undefined;
|
188
191
|
id?: string[] | undefined;
|
192
|
+
search?: string | undefined;
|
189
193
|
name?: string | undefined;
|
194
|
+
items?: number | undefined;
|
195
|
+
page?: number | undefined;
|
190
196
|
address?: string | undefined;
|
191
197
|
chainId?: number | undefined;
|
192
198
|
displaySymbol?: string | undefined;
|
@@ -61,7 +61,7 @@ export const TokenController = new Elysia({ prefix: "/tokens", detail: { tags: [
|
|
61
61
|
},
|
62
62
|
})
|
63
63
|
// ─── Get Many Tokens ─────────────────────────────────────────────────
|
64
|
-
.get("/", async ({ query }) => await TokenService.
|
64
|
+
.get("/", async ({ query }) => await TokenService.findManyOrFetch(query), {
|
65
65
|
query: GetTokenQueryDto,
|
66
66
|
detail: {
|
67
67
|
hide: true,
|
@@ -39,6 +39,9 @@ export declare const GetTokenQueryDto: import("@sinclair/typebox").TObject<{
|
|
39
39
|
isNative: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
40
40
|
address: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
41
41
|
name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
42
|
+
search: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
43
|
+
page: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
44
|
+
items: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
42
45
|
verified: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
43
46
|
test: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
44
47
|
missingIcons: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
@@ -28,6 +28,9 @@ export const GetTokenQueryDto = t.Object({
|
|
28
28
|
isNative: t.Optional(t.Boolean()),
|
29
29
|
address: t.Optional(t.String()),
|
30
30
|
name: t.Optional(t.String()),
|
31
|
+
search: t.Optional(t.String()),
|
32
|
+
page: t.Optional(t.Number()),
|
33
|
+
items: t.Optional(t.Number()),
|
31
34
|
verified: t.Optional(t.Boolean()),
|
32
35
|
test: t.Optional(t.Boolean()),
|
33
36
|
missingIcons: t.Optional(t.Boolean()),
|