import type { DataLoader } from "@macalinao/dataloader-es";
import type { QueryKey } from "@tanstack/react-query";
import type { Account, Address, Decoder, EncodedAccount } from "gill";
/**
 * Create a query key for the account query
 * @param address - The address of the account
 * @returns The query key
 */
export declare const createAccountQueryKey: (address: Address) => QueryKey;
/**
 * Fetch and decode an account using the DataLoader
 * @param address - The address of the account to fetch
 * @param accountLoader - The DataLoader instance for batching account requests
 * @param decoder - Optional decoder for the account data
 * @returns The account data or null if not found
 */
export declare function fetchAndDecodeAccount<TDecodedData extends object = Uint8Array>(address: Address | null | undefined, accountLoader: DataLoader<Address, EncodedAccount | null>, decoder?: Decoder<TDecodedData>): Promise<Account<TDecodedData> | null>;
//# sourceMappingURL=account-helpers.d.ts.map