import { z } from "zod/v4"; //#region src/model/opportunities.schema.d.ts /** * Runtime schemas for {@link ./opportunities.js}, see the note in * `primitives.schema.ts` on why they are written by hand. **/ /** * {@link OpportunityKind} **/ export declare const opportunityKindSchema: z.ZodUnion, z.ZodLiteral<"strategy">]>; /** * {@link PointsProgram} **/ export declare const pointsProgramSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodString; multiplier: z.ZodNullable; }, z.core.$strip>; /** * {@link TokenRewards} **/ export declare const tokenRewardsSchema: z.ZodObject<{ kind: z.ZodLiteral<"token">; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>; /** * {@link PointRewards} **/ export declare const pointRewardsSchema: z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>; /** * {@link Rewards} **/ export declare const rewardsSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ kind: z.ZodLiteral<"token">; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">; /** * {@link ApyBreakdown} **/ export declare const apyBreakdownSchema: z.ZodObject<{ totalApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>; /** * {@link OpportunityBase} **/ export declare const opportunityBaseSchema: z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; }, z.core.$strip>; /** * {@link QuotaAsset} **/ export declare const quotaAssetSchema: z.ZodObject<{ token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; quotaRate: z.ZodNumber; limit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; used: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; allocationShare: z.ZodOptional; allocatedDebt: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>; /** * {@link PoolOpportunity} **/ export declare const poolOpportunitySchema: z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"pool">; pool: z.ZodCodec>; totalSupply: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalBorrowedWithInterest: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; supplyApy: z.ZodObject<{ totalApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>; supplyApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; quotaAssets: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; quotaRate: z.ZodNumber; limit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; used: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; allocationShare: z.ZodOptional; allocatedDebt: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>>; }, z.core.$strip>; /** * {@link StrategyOpportunity} **/ export declare const strategyOpportunitySchema: z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"strategy">; creditManager: z.ZodCodec>; targetCollateral: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; totalBorrowed: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; liquidationThreshold: z.ZodNumber; liquidationPremium: z.ZodNumber; liquidationFee: z.ZodNumber; expirationDate: z.ZodNullable; collateralApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; collateralApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; borrowApy: z.ZodNumber; borrowApyAvg7D: z.ZodOptional; quotaRate: z.ZodNumber; quotaRateAvg7D: z.ZodOptional; totalValue: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; utilization: z.ZodOptional; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalSupply: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; feeInterest: z.ZodOptional; minDebt: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalDebtLimit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxBorrowAmount: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxLeverage: z.ZodNumber; }, z.core.$strip>; /** * {@link Opportunity} **/ export declare const opportunitySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"pool">; pool: z.ZodCodec>; totalSupply: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalBorrowedWithInterest: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; supplyApy: z.ZodObject<{ totalApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>; supplyApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; quotaAssets: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; quotaRate: z.ZodNumber; limit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; used: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; allocationShare: z.ZodOptional; allocatedDebt: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"strategy">; creditManager: z.ZodCodec>; targetCollateral: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; totalBorrowed: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; liquidationThreshold: z.ZodNumber; liquidationPremium: z.ZodNumber; liquidationFee: z.ZodNumber; expirationDate: z.ZodNullable; collateralApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; collateralApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; borrowApy: z.ZodNumber; borrowApyAvg7D: z.ZodOptional; quotaRate: z.ZodNumber; quotaRateAvg7D: z.ZodOptional; totalValue: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; utilization: z.ZodOptional; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalSupply: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; feeInterest: z.ZodOptional; minDebt: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalDebtLimit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxBorrowAmount: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxLeverage: z.ZodNumber; }, z.core.$strip>], "kind">; /** * {@link OpportunityFilter} **/ export declare const opportunityFilterSchema: z.ZodObject<{ kind: z.ZodOptional, z.ZodLiteral<"strategy">]>, z.ZodLiteral<"all">]>>; chainIds: z.ZodOptional>; underlyingType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>, z.ZodLiteral<"all">]>>; paused: z.ZodOptional]>>; sunset: z.ZodOptional]>>; rwa: z.ZodOptional]>>; }, z.core.$strip>; /** * {@link OpportunityFilter} as a URL can carry it: every condition is a string, * and a condition that does not narrow is absent rather than empty. **/ export declare const opportunityFilterQueryParamsSchema: z.ZodObject<{ kind: z.ZodOptional, z.ZodLiteral<"strategy">]>>; chainIds: z.ZodOptional; underlyingType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; paused: z.ZodOptional>; sunset: z.ZodOptional>; rwa: z.ZodOptional>; }, z.core.$strip>; /** * Code for {@link OpportunityFilter} to encode/decode to/from url query parameters. **/ export declare const opportunityFilterQuerySchema: z.ZodCodec, z.ZodLiteral<"strategy">]>>; chainIds: z.ZodOptional; underlyingType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; paused: z.ZodOptional>; sunset: z.ZodOptional>; rwa: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodOptional, z.ZodLiteral<"strategy">]>, z.ZodLiteral<"all">]>>; chainIds: z.ZodOptional>; underlyingType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>, z.ZodLiteral<"all">]>>; paused: z.ZodOptional]>>; sunset: z.ZodOptional]>>; rwa: z.ZodOptional]>>; }, z.core.$strip>>; /** * {@link RateCurvePoint} **/ export declare const rateCurvePointSchema: z.ZodObject<{ utilization: z.ZodNumber; supplyApy: z.ZodNumber; borrowApy: z.ZodNumber; }, z.core.$strip>; /** * {@link RateCurve} **/ export declare const rateCurveSchema: z.ZodObject<{ points: z.ZodArray>; borrowingLimitUtilization: z.ZodNullable; }, z.core.$strip>; /** * {@link PriceFeedData}. Recursive: a composite feed lists the feeds it reads. **/ export declare const priceFeedDataSchema: z.ZodObject<{ name: z.ZodString; type: z.ZodString; feedAddress: z.ZodCodec>; dependencies: z.ZodArray>; }, z.core.$strip>; /** * {@link PriceFeedSummary} **/ export declare const priceFeedSummarySchema: z.ZodObject<{ underlyingPriceInUsd: z.ZodNumber; collateralPriceInUsd: z.ZodNumber; collateralPriceInUnderlying: z.ZodNumber; underlyingFeed: z.ZodObject<{ name: z.ZodString; type: z.ZodString; feedAddress: z.ZodCodec>; dependencies: z.ZodArray>; }, z.core.$strip>; collateralFeed: z.ZodObject<{ name: z.ZodString; type: z.ZodString; feedAddress: z.ZodCodec>; dependencies: z.ZodArray>; }, z.core.$strip>; }, z.core.$strip>; /** * {@link PoolOpportunityDetail} **/ export declare const poolOpportunityDetailSchema: z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"pool">; pool: z.ZodCodec>; totalSupply: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalBorrowedWithInterest: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; supplyApy: z.ZodObject<{ totalApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>; supplyApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; quotaAssets: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; quotaRate: z.ZodNumber; limit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; used: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; allocationShare: z.ZodOptional; allocatedDebt: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>>; rateCurve: z.ZodObject<{ points: z.ZodArray>; borrowingLimitUtilization: z.ZodNullable; }, z.core.$strip>; }, z.core.$strip>; /** * {@link StrategyOpportunityDetail} **/ export declare const strategyOpportunityDetailSchema: z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"strategy">; creditManager: z.ZodCodec>; targetCollateral: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; totalBorrowed: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; liquidationThreshold: z.ZodNumber; liquidationPremium: z.ZodNumber; liquidationFee: z.ZodNumber; expirationDate: z.ZodNullable; collateralApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; collateralApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; borrowApy: z.ZodNumber; borrowApyAvg7D: z.ZodOptional; quotaRate: z.ZodNumber; quotaRateAvg7D: z.ZodOptional; totalValue: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; utilization: z.ZodOptional; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalSupply: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; feeInterest: z.ZodOptional; minDebt: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalDebtLimit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxBorrowAmount: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxLeverage: z.ZodNumber; rateCurve: z.ZodObject<{ points: z.ZodArray>; borrowingLimitUtilization: z.ZodNullable; }, z.core.$strip>; priceFeeds: z.ZodObject<{ underlyingPriceInUsd: z.ZodNumber; collateralPriceInUsd: z.ZodNumber; collateralPriceInUnderlying: z.ZodNumber; underlyingFeed: z.ZodObject<{ name: z.ZodString; type: z.ZodString; feedAddress: z.ZodCodec>; dependencies: z.ZodArray>; }, z.core.$strip>; collateralFeed: z.ZodObject<{ name: z.ZodString; type: z.ZodString; feedAddress: z.ZodCodec>; dependencies: z.ZodArray>; }, z.core.$strip>; }, z.core.$strip>; kyc: z.ZodOptional; token: z.ZodOptional>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; registrationLink: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>; /** * {@link OpportunityDetail} **/ export declare const opportunityDetailSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"pool">; pool: z.ZodCodec>; totalSupply: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalBorrowedWithInterest: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; supplyApy: z.ZodObject<{ totalApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>; supplyApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; quotaAssets: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; quotaRate: z.ZodNumber; limit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; used: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; allocationShare: z.ZodOptional; allocatedDebt: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; }, z.core.$strip>>; rateCurve: z.ZodObject<{ points: z.ZodArray>; borrowingLimitUtilization: z.ZodNullable; }, z.core.$strip>; }, z.core.$strip>, z.ZodObject<{ chainId: z.ZodNumber; name: z.ZodString; curator: z.ZodObject<{ address: z.ZodCodec>; name: z.ZodOptional>; url: z.ZodNullable; }, z.core.$strip>; underlyingToken: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; wrappedAddress: z.ZodNullable>>; }, z.core.$strip>; allowedDepositTokens: z.ZodArray>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; paused: z.ZodBoolean; rwa: z.ZodBoolean; sunset: z.ZodBoolean; kind: z.ZodLiteral<"strategy">; creditManager: z.ZodCodec>; targetCollateral: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; totalBorrowed: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; liquidationThreshold: z.ZodNumber; liquidationPremium: z.ZodNumber; liquidationFee: z.ZodNumber; expirationDate: z.ZodNullable; collateralApy: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; collateralApyAvg7D: z.ZodOptional; organicApy: z.ZodNumber; rewards: z.ZodOptional; token: z.ZodObject<{ chainId: z.ZodNumber; address: z.ZodCodec>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>; supplyApr: z.ZodOptional; borrowApr: z.ZodOptional; links: z.ZodOptional>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"point">; points: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>], "kind">>>; }, z.core.$strip>>; borrowApy: z.ZodNumber; borrowApyAvg7D: z.ZodOptional; quotaRate: z.ZodNumber; quotaRateAvg7D: z.ZodOptional; totalValue: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; utilization: z.ZodOptional; availableLiquidity: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalSupply: z.ZodOptional, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>>; feeInterest: z.ZodOptional; minDebt: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; totalDebtLimit: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxBorrowAmount: z.ZodObject<{ value: z.ZodCodec, z.ZodBigInt>; valueUsd: z.ZodNullable; }, z.core.$strip>; maxLeverage: z.ZodNumber; rateCurve: z.ZodObject<{ points: z.ZodArray>; borrowingLimitUtilization: z.ZodNullable; }, z.core.$strip>; priceFeeds: z.ZodObject<{ underlyingPriceInUsd: z.ZodNumber; collateralPriceInUsd: z.ZodNumber; collateralPriceInUnderlying: z.ZodNumber; underlyingFeed: z.ZodObject<{ name: z.ZodString; type: z.ZodString; feedAddress: z.ZodCodec>; dependencies: z.ZodArray>; }, z.core.$strip>; collateralFeed: z.ZodObject<{ name: z.ZodString; type: z.ZodString; feedAddress: z.ZodCodec>; dependencies: z.ZodArray>; }, z.core.$strip>; }, z.core.$strip>; kyc: z.ZodOptional; token: z.ZodOptional>; symbol: z.ZodString; name: z.ZodString; decimals: z.ZodNumber; assetType: z.ZodOptional, z.ZodLiteral<"ETH">, z.ZodLiteral<"BTC">]>>; }, z.core.$strip>>; registrationLink: z.ZodString; }, z.core.$strip>>>; }, z.core.$strip>], "kind">; /** * {@link PoolOpportunityKey} **/ export declare const poolOpportunityKeySchema: z.ZodObject<{ chainId: z.ZodNumber; pool: z.ZodCodec>; }, z.core.$strip>; /** * {@link StrategyOpportunityKey} **/ export declare const strategyOpportunityKeySchema: z.ZodObject<{ chainId: z.ZodNumber; creditManager: z.ZodCodec>; }, z.core.$strip>; /** * {@link OpportunityKey} **/ export declare const opportunityKeySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ chainId: z.ZodNumber; pool: z.ZodCodec>; kind: z.ZodLiteral<"pool">; }, z.core.$strip>, z.ZodObject<{ chainId: z.ZodNumber; creditManager: z.ZodCodec>; kind: z.ZodLiteral<"strategy">; }, z.core.$strip>], "kind">; /** * {@link OpportunityTotals} **/ export declare const opportunityTotalsSchema: z.ZodObject<{ tvl: z.ZodNumber; totalBorrowed: z.ZodNumber; totalSupply: z.ZodNumber; }, z.core.$strip>; //#endregion