import { Account, Address, PublicClient, WalletClient, Hash } from 'viem'; type PreparedContractRequest = any; export declare class Erc20Service { private readonly publicClient; private readonly walletClient?; private readonly account?; constructor(publicClient: PublicClient, walletClient?: WalletClient, account?: Account | Address); private ensureWalletClient; private ensureAccount; getTokenBalance(tokenAddress: Address, account: Address): Promise; getTokenAllowance(tokenAddress: Address, owner: Address, spender: Address): Promise; prepareApprove(tokenAddress: Address, spender: Address, amount: bigint): Promise; approve(tokenAddress: Address, spender: Address, amount: bigint): Promise; } export {};