@merkl/api 1.0.81 → 1.0.83

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.
@@ -1531,6 +1531,9 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", {
1531
1531
  151?: {
1532
1532
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
1533
1533
  } | undefined;
1534
+ 239?: {
1535
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
1536
+ } | undefined;
1534
1537
  } | null;
1535
1538
  };
1536
1539
  };
@@ -9648,6 +9651,9 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", {
9648
9651
  151?: {
9649
9652
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
9650
9653
  } | undefined;
9654
+ 239?: {
9655
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
9656
+ } | undefined;
9651
9657
  };
9652
9658
  };
9653
9659
  };
@@ -11453,6 +11459,9 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", {
11453
11459
  151?: {
11454
11460
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
11455
11461
  } | undefined;
11462
+ 239?: {
11463
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
11464
+ } | undefined;
11456
11465
  } | null;
11457
11466
  }>>;
11458
11467
  pool: ((params: {
@@ -18668,6 +18677,9 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", {
18668
18677
  151?: {
18669
18678
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
18670
18679
  } | undefined;
18680
+ 239?: {
18681
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
18682
+ } | undefined;
18671
18683
  };
18672
18684
  }>>;
18673
18685
  };
@@ -0,0 +1,31 @@
1
+ import type { Erc20LikeCampaignEnum } from "../..";
2
+ import type { MetadataBuilder } from "../../../../../../engine/metadata/interface";
3
+ import type { CampaignWithParams } from "../../../../../../modules/v4/campaign/campaign.model";
4
+ import type { ProtocolId } from "../../../../../../modules/v4/protocol/protocol.model";
5
+ export declare class IchiMetadata implements MetadataBuilder<Erc20LikeCampaignEnum> {
6
+ /**
7
+ * @notice Protocol entity ID - must be defined in the corresponding file and created in DB
8
+ */
9
+ mainProtocol: ProtocolId;
10
+ /**
11
+ * @notice Protocol name - used to create the opportunity name
12
+ */
13
+ protocolName: string;
14
+ /**
15
+ * @notice Function to generate the deposit URL for the opportunity
16
+ */
17
+ depositUrl?: (underlyingToken: string) => string;
18
+ constructor(mainProtocol: ProtocolId, protocolName: string, depositUrl?: (underlyingToken: string) => string);
19
+ build(campaign: Omit<CampaignWithParams<Erc20LikeCampaignEnum>, "manualOverrides" | "opportunityId">, _opportunityIdentifier: string): Promise<{
20
+ action: "POOL";
21
+ mainProtocol: "splice" | "curve" | "morpho" | "compound" | "silo" | "reserve" | "gamma" | "vest" | "zero" | "uniswap" | "ambient" | "arthswap" | "base-swap" | "camelot" | "crust" | "fenix" | "horiza" | "izumi" | "kim" | "pancake-swap" | "quickswap" | "ramses" | "retro" | "stryke" | "sushi-swap" | "swapr" | "thruster" | "voltage" | "koi" | "supswap" | "zk-swap" | "thirdtrade" | "swap-x" | "velodrome" | "aerodrome" | "balancer" | "cross_curve" | "curveNPool" | "aura" | "akron" | "beefy" | "dragonswap" | "poolside" | "syncswap" | "neptune" | "zkSwapThreePool" | "rfx" | "ra" | "maverick" | "trader-joe" | "hanji" | "pinto" | "mimswap" | "ichi" | "radiant" | "aave" | "fraxlend" | "ironclad" | "euler" | "gearbox" | "sturdy" | "frax" | "ionic" | "moonwell" | "fluid" | "dolomite" | "badger" | "ajna" | "layerbank" | "ion" | "venus" | "woofi" | "reactor_fusion" | "eigenlayer" | "zerolend" | "lnd" | "dlend" | "hyperdrive" | "oku" | "hourglass" | "veda" | "kyo" | "sonex" | "lendle" | "tako-tako" | "equalizer" | "spectra" | "beraborrow" | "superlend" | "avalon" | "iguana" | "xlend" | "sake" | "sonicmarket" | "stability" | "hypurrfi" | "angles" | "enzyme" | "toros" | "vicuna" | "bunni" | "beratrax" | "concrete" | "cian" | "pendle" | "yei" | "termmax" | "filament" | "gammaswap" | "maha" | "tempest" | "uranium" | "holdstation" | "katana" | "punchswap" | "satlayer" | "puffer";
22
+ name: string;
23
+ description: string;
24
+ tokens: {
25
+ chainId: number;
26
+ address: string;
27
+ }[];
28
+ depositUrl: string;
29
+ explorerAddress: string;
30
+ }>;
31
+ }
@@ -0,0 +1,6 @@
1
+ import { type CampaignParameters, type MerklChainId } from "@angleprotocol/sdk/ts";
2
+ import type { Erc20LikeCampaignEnum } from "../../../../../../engine/implementations/Erc20/subTypes";
3
+ import type { TVLBuilder, TVLData } from "../../../../../../engine/tvl/interface";
4
+ export declare class IchiTVLBuilder implements TVLBuilder<Erc20LikeCampaignEnum> {
5
+ build(computeChainId: MerklChainId, campaigns: CampaignParameters<Erc20LikeCampaignEnum>[]): Promise<TVLData<Erc20LikeCampaignEnum>>;
6
+ }
@@ -121,5 +121,6 @@ export declare enum Erc20SubType {
121
121
  mimswap = "mimswap",
122
122
  ichi = "ichi",
123
123
  swapx = "swapx",
124
- rooster = "rooster"
124
+ rooster = "rooster",
125
+ ichi_vault = "ichi_vault"
125
126
  }
@@ -6,7 +6,7 @@ type campaignType = Campaign.MORPHOCOLLATERAL | Campaign.MORPHOCOLLATERAL_FIXAPR
6
6
  * @dev important: using the most recent state save with current prices
7
7
  * it's only an estimate
8
8
  */
9
- export declare function computeMorphoCollateralTVLFromMostRecentStateSave(computeChainId: MerklChainId, market: string, campaign: CampaignParameters<campaignType | Campaign.MORPHOCOLLATERAL_SINGLETOKEN>): Promise<{
9
+ export declare function computeMorphoCollateralTVLFromMostRecentStateSave(computeChainId: MerklChainId, market: string, campaign: CampaignParameters<campaignType | Campaign.MORPHOCOLLATERAL_SINGLETOKEN>, computeMethod?: string): Promise<{
10
10
  totalCollateral: bigint;
11
11
  blockNumber: number;
12
12
  }>;
@@ -1532,6 +1532,9 @@ declare const app: Elysia<"", {
1532
1532
  151?: {
1533
1533
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
1534
1534
  } | undefined;
1535
+ 239?: {
1536
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
1537
+ } | undefined;
1535
1538
  } | null;
1536
1539
  };
1537
1540
  };
@@ -9649,6 +9652,9 @@ declare const app: Elysia<"", {
9649
9652
  151?: {
9650
9653
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
9651
9654
  } | undefined;
9655
+ 239?: {
9656
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
9657
+ } | undefined;
9652
9658
  };
9653
9659
  };
9654
9660
  };
@@ -365,8 +365,8 @@ export declare abstract class CampaignService {
365
365
  static getDailyAmount<T extends bigint | number>(start: T, end: T, amount: bigint): bigint;
366
366
  static createFakeCampaign<C extends CampaignType>(body: CampaignConfigMinimalModel): CampaignParameters<C>;
367
367
  static createFakeCampaignEngine(body: CampaignConfigMinimalModel): {
368
- computeChainId: ChainId.ARBITRUM | ChainId.AVALANCHE | ChainId.BASE | ChainId.BSC | ChainId.CELO | ChainId.CORE | ChainId.FANTOM | ChainId.FUSE | ChainId.XLAYER | ChainId.GNOSIS | ChainId.LINEA | ChainId.MAINNET | ChainId.MANTLE | ChainId.OPTIMISM | ChainId.POLYGON | ChainId.POLYGONZKEVM | ChainId.THUNDERCORE | ChainId.ZKSYNC | ChainId.SCROLL | ChainId.MANTA | ChainId.IMMUTABLE | ChainId.BLAST | ChainId.MODE | ChainId.ASTAR | ChainId.ROOTSTOCK | ChainId.TAIKO | ChainId.SEI | ChainId.MOONBEAM | ChainId.SKALE | ChainId.FRAXTAL | ChainId.BOB | ChainId.WORLDCHAIN | ChainId.ETHERLINK | ChainId.LISK | ChainId.UNICHAIN | ChainId.BERACHAIN | ChainId.SWELL | ChainId.ARTHERA | ChainId.SONIC | ChainId.CORN | ChainId.SONEIUM | ChainId.INK | ChainId.RONIN | ChainId.FLOW | ChainId.NIBIRU | ChainId.APECHAIN | ChainId.HYPEREVM | ChainId.ZIRCUIT | ChainId.HEMI | ChainId.SAGA_EVM | ChainId.PLUME | ChainId.XDC | ChainId.KATANA | ChainId.REDBELLY;
369
- chainId: ChainId.ARBITRUM | ChainId.AVALANCHE | ChainId.BASE | ChainId.BSC | ChainId.CELO | ChainId.CORE | ChainId.FANTOM | ChainId.FUSE | ChainId.XLAYER | ChainId.GNOSIS | ChainId.LINEA | ChainId.MAINNET | ChainId.MANTLE | ChainId.OPTIMISM | ChainId.POLYGON | ChainId.POLYGONZKEVM | ChainId.THUNDERCORE | ChainId.ZKSYNC | ChainId.SCROLL | ChainId.MANTA | ChainId.IMMUTABLE | ChainId.BLAST | ChainId.MODE | ChainId.ASTAR | ChainId.ROOTSTOCK | ChainId.TAIKO | ChainId.SEI | ChainId.MOONBEAM | ChainId.SKALE | ChainId.FRAXTAL | ChainId.BOB | ChainId.WORLDCHAIN | ChainId.ETHERLINK | ChainId.LISK | ChainId.UNICHAIN | ChainId.BERACHAIN | ChainId.SWELL | ChainId.ARTHERA | ChainId.SONIC | ChainId.CORN | ChainId.SONEIUM | ChainId.INK | ChainId.RONIN | ChainId.FLOW | ChainId.NIBIRU | ChainId.APECHAIN | ChainId.HYPEREVM | ChainId.ZIRCUIT | ChainId.HEMI | ChainId.SAGA_EVM | ChainId.PLUME | ChainId.XDC | ChainId.KATANA | ChainId.REDBELLY;
368
+ computeChainId: ChainId.ARBITRUM | ChainId.AVALANCHE | ChainId.BASE | ChainId.BSC | ChainId.CELO | ChainId.CORE | ChainId.FANTOM | ChainId.FUSE | ChainId.XLAYER | ChainId.GNOSIS | ChainId.LINEA | ChainId.MAINNET | ChainId.MANTLE | ChainId.OPTIMISM | ChainId.POLYGON | ChainId.POLYGONZKEVM | ChainId.THUNDERCORE | ChainId.ZKSYNC | ChainId.SCROLL | ChainId.MANTA | ChainId.IMMUTABLE | ChainId.BLAST | ChainId.MODE | ChainId.ASTAR | ChainId.ROOTSTOCK | ChainId.TAIKO | ChainId.SEI | ChainId.MOONBEAM | ChainId.SKALE | ChainId.FRAXTAL | ChainId.BOB | ChainId.WORLDCHAIN | ChainId.ETHERLINK | ChainId.LISK | ChainId.UNICHAIN | ChainId.BERACHAIN | ChainId.SWELL | ChainId.ARTHERA | ChainId.SONIC | ChainId.CORN | ChainId.SONEIUM | ChainId.INK | ChainId.RONIN | ChainId.FLOW | ChainId.NIBIRU | ChainId.APECHAIN | ChainId.HYPEREVM | ChainId.ZIRCUIT | ChainId.HEMI | ChainId.SAGA_EVM | ChainId.PLUME | ChainId.XDC | ChainId.KATANA | ChainId.REDBELLY | ChainId.TAC;
369
+ chainId: ChainId.ARBITRUM | ChainId.AVALANCHE | ChainId.BASE | ChainId.BSC | ChainId.CELO | ChainId.CORE | ChainId.FANTOM | ChainId.FUSE | ChainId.XLAYER | ChainId.GNOSIS | ChainId.LINEA | ChainId.MAINNET | ChainId.MANTLE | ChainId.OPTIMISM | ChainId.POLYGON | ChainId.POLYGONZKEVM | ChainId.THUNDERCORE | ChainId.ZKSYNC | ChainId.SCROLL | ChainId.MANTA | ChainId.IMMUTABLE | ChainId.BLAST | ChainId.MODE | ChainId.ASTAR | ChainId.ROOTSTOCK | ChainId.TAIKO | ChainId.SEI | ChainId.MOONBEAM | ChainId.SKALE | ChainId.FRAXTAL | ChainId.BOB | ChainId.WORLDCHAIN | ChainId.ETHERLINK | ChainId.LISK | ChainId.UNICHAIN | ChainId.BERACHAIN | ChainId.SWELL | ChainId.ARTHERA | ChainId.SONIC | ChainId.CORN | ChainId.SONEIUM | ChainId.INK | ChainId.RONIN | ChainId.FLOW | ChainId.NIBIRU | ChainId.APECHAIN | ChainId.HYPEREVM | ChainId.ZIRCUIT | ChainId.HEMI | ChainId.SAGA_EVM | ChainId.PLUME | ChainId.XDC | ChainId.KATANA | ChainId.REDBELLY | ChainId.TAC;
370
370
  campaignId: string;
371
371
  creator: string;
372
372
  type: CampaignType;
@@ -8081,6 +8081,9 @@ export declare const v4: Elysia<"/v4", {
8081
8081
  151?: {
8082
8082
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
8083
8083
  } | undefined;
8084
+ 239?: {
8085
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
8086
+ } | undefined;
8084
8087
  };
8085
8088
  };
8086
8089
  };
@@ -262,6 +262,9 @@ export declare const UniswapController: Elysia<"uniswap", {
262
262
  151?: {
263
263
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
264
264
  } | undefined;
265
+ 239?: {
266
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
267
+ } | undefined;
265
268
  };
266
269
  };
267
270
  };
@@ -1335,6 +1335,9 @@ export declare const v3: Elysia<"/v3", {
1335
1335
  151?: {
1336
1336
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
1337
1337
  } | undefined;
1338
+ 239?: {
1339
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
1340
+ } | undefined;
1338
1341
  } | null;
1339
1342
  };
1340
1343
  };
@@ -184,6 +184,9 @@ declare const _default: (app: Elysia) => Elysia<"", {
184
184
  151?: {
185
185
  [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
186
186
  } | undefined;
187
+ 239?: {
188
+ [poolId: string]: import("@angleprotocol/sdk/ts").UniswapV4PoolType;
189
+ } | undefined;
187
190
  } | null;
188
191
  };
189
192
  };
@@ -59,6 +59,7 @@ export declare const providers: {
59
59
  50: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
60
60
  747474: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
61
61
  151: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
62
+ 239: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
62
63
  };
63
64
  export declare const archiveProviders: {
64
65
  42161: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
@@ -119,6 +120,7 @@ export declare const archiveProviders: {
119
120
  50: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
120
121
  747474: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
121
122
  151: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
123
+ 239: ethers.providers.StaticJsonRpcProvider | ethers.providers.InfuraProvider;
122
124
  };
123
125
  export declare const multicalls: {
124
126
  [chainId: number]: Multicall;