import { type PublicClient, type Chain, type Transport } from 'viem'; import { type SupportedChainName, type AggregatedBalanceResult } from '@azeth/common'; export interface BalanceResult { /** Smart account ETH balance (primary identity) */ eth: bigint; ethFormatted: string; /** Smart account USDC balance */ usdc: bigint; usdcFormatted: string; /** Smart account tracked token balances */ tokens: Record; /** EOA balances (for gas management) */ eoa: { eth: bigint; ethFormatted: string; }; } /** Get ETH and token balances for a smart account and its owner EOA. * * Primary balances (eth, usdc, tokens) reflect the smart account. * The eoa field shows the EOA's ETH balance for gas management. */ export declare function getBalance(publicClient: PublicClient, chainName: SupportedChainName, smartAccount: `0x${string}`, eoaAddress: `0x${string}`): Promise; /** Get all balances for an owner's EOA + all smart accounts with USD values. * * **Primary path:** Single RPC call via AzethFactory.getOwnerBalancesAndUSD(owner) * which queries AzethOracle for Chainlink-powered USD aggregation. * * **Fallback path:** If the aggregated oracle call reverts (e.g. due to a Chainlink * feed issue or contract-level bug), falls back to individual balance queries. * The fallback returns raw token balances WITHOUT USD values (usdValue = 0). * * Returns: EOA at index 0, smart accounts at index 1+. * Each account has per-token balances with USD values and a total. * Grand total USD sums across all accounts. */ export declare function getAllBalances(publicClient: PublicClient, chainName: SupportedChainName, factoryAddress: `0x${string}`, owner: `0x${string}`): Promise; //# sourceMappingURL=balance.d.ts.map