import { Abi, Address, GetContractReturnType, PublicClient, WalletClient } from 'viem'; import { Contract } from '../common/types'; import { Multicall, MulticallFuncs } from '../multicall/multicall'; export declare abstract class BaseContractHelper = Contract> { abstract abi(): abi; protected contract: MulticallFuncs; protected client: PublicClient; rawContract: T; address: Address; walletContract?: GetContractReturnType; constructor(address: Address, { client, multicall }: { client: PublicClient; multicall: Multicall | undefined; }, walletClient?: WalletClient); }