import type { Abi } from "viem"; import type { IABIService } from "../../../abiService/index.js"; export interface ResolvedAccountLensAbi { abi: Abi; /** * Set when the runtime ABI could not be used and the bundled copy was * substituted, e.g. the ABI document is unreachable or is missing the * functions this SDK calls. */ fallbackReason?: string; } /** * Resolves the AccountLens ABI used for onchain reads. * * Deployment addresses are loaded from the mutable `euler-interfaces` document, * so the ABI is resolved from the same source to keep the two in step: a lens * redeployed with a changed return tuple keeps the same function selector, and * decoding it with the compiled-in ABI would silently misread the response. * * The bundled ABI remains a fallback. An unreachable, rate-limited, or * incomplete ABI document must degrade to the compiled-in copy rather than take * down every AccountLens read; callers that have a diagnostics channel should * surface `fallbackReason` on it. */ export declare function resolveAccountLensAbi(abiService: IABIService | undefined, chainId: number, requiredFunctions?: readonly string[]): Promise; //# sourceMappingURL=resolveAccountLensAbi.d.ts.map