import type { SpokeChainKey } from '@sodax/sdk';
import { useQuery, type UseQueryResult } from '@tanstack/react-query';
import { type Address, isAddress } from 'viem';
import { useSodaxContext } from '../shared/useSodaxContext.js';
import type { ReadHookParams } from '../shared/types.js';
export type UseATokensBalancesParams = ReadHookParams<
Map
,
{
aTokens: readonly Address[];
spokeChainKey: SpokeChainKey | undefined;
userAddress: string | undefined;
}
>;
/**
* React hook to fetch aToken balances for a list of addresses in a single multicall.
* Derives the user's hub wallet via `EvmHubProvider.getUserHubWalletAddress` from the
* spoke `chainKey` + spoke wallet `userAddress`.
*/
export function useATokensBalances({
params,
queryOptions,
}: UseATokensBalancesParams = {}): UseQueryResult