import { type Address } from "viem"; import { type BuildQueryFn } from "../../../../utils/buildQuery.js"; import { type ServiceResult } from "../../../../utils/entityDiagnostics.js"; import type { IEulerEarn } from "../../../../entities/EulerEarn.js"; import type { EulerEarnV3AdapterConfig } from "../eulerEarnServiceConfig.js"; import type { IEulerEarnAdapter } from "../eulerEarnService.js"; type V3Envelope = { data?: T; meta?: { total?: number; offset?: number; limit?: number; }; }; type V3ListEnvelope = { data?: T[]; meta?: { total?: number; offset?: number; limit?: number; }; }; type V3Token = { address: string; symbol?: string | null; decimals: number; name?: string | null; }; type V3EulerEarnStrategy = { address: string; vaultType?: string; symbol?: string; name?: string; decimals?: number; suppliedAssets?: string; withdrawnAssets?: string; allocatedAssets?: string; availableAssets?: string; inSupplyQueue?: boolean; inWithdrawQueue?: boolean; supplyQueueIndex?: number; withdrawQueueIndex?: number; allocationCap?: { current?: string; pending?: string; pendingValidAt?: number | string | null; }; removableAt?: number | string | null; }; type V3EulerEarnDetail = { chainId: number; address: string; name: string; symbol: string; decimals: number; asset: V3Token; totalAssets: string; totalShares: string; supplyApy?: number | null; lostAssets?: string; availableAssets?: string; strategies?: V3EulerEarnStrategy[]; governance?: { owner?: string; creator?: string; curator?: string; guardian?: string; feeReceiver?: string; timelock?: number; pendingTimelock?: number | null; pendingTimelockValidAt?: number | string | null; pendingGuardian?: string | null; pendingGuardianValidAt?: number | string | null; }; management?: { owner?: string; guardian?: string; timelockSeconds?: number; performanceFee?: string; }; snapshotTimestamp?: string; }; type V3EulerEarnListRow = { address: string; }; export declare class EulerEarnV3Adapter implements IEulerEarnAdapter { private config; constructor(config: EulerEarnV3AdapterConfig, buildQuery?: BuildQueryFn); setConfig(config: EulerEarnV3AdapterConfig): void; private getHeaders; private buildUrl; queryV3EulerEarnDetail: (endpoint: string, chainId: number, vault: Address) => Promise>; setQueryV3EulerEarnDetail(fn: typeof this.queryV3EulerEarnDetail): void; queryV3EulerEarnList: (endpoint: string, chainId: number, offset: number, limit: number) => Promise>; setQueryV3EulerEarnList(fn: typeof this.queryV3EulerEarnList): void; fetchVaults(chainId: number, vaults: Address[]): Promise>; fetchVerifiedVaultsAddresses(_chainId: number, _perspectives: Address[]): Promise; fetchAllVaults(chainId: number): Promise>; } export {}; //# sourceMappingURL=eulerEarnV3Adapter.d.ts.map