import { parseUnits, maxUint256 } from "viem"; import type { LendingPosition, SupportedChain } from "../../types/index.js"; /** * Fetch the fully-resolved Aave V3 lending position on a single chain. * Returns null if the user has no Aave activity OR the RPC returned empty data for any of * the required reads (batching mis-handling, rate-limit, transient). The caller treats a * null result as "no position on this chain" — safer than exploding the whole portfolio. */ export declare function getAaveLendingPosition(wallet: `0x${string}`, chain: SupportedChain): Promise; /** * Simulate a delta to the lending position and return the projected health factor. * We work in USD space: newHF = (newCollateral × liqThreshold) / newDebt. */ export declare function simulateHealthFactorChange(base: LendingPosition, action: "add_collateral" | "remove_collateral" | "borrow" | "repay", deltaUsd: number): { newHealthFactor: number; newCollateralUsd: number; newDebtUsd: number; safe: boolean; }; /** Export a tiny helper for action builders. */ export declare function getAavePoolAddress(chain: SupportedChain): Promise<`0x${string}`>; export { maxUint256, parseUnits };