import { IContractCall } from "../interfaces/ethereum-contract";
import { Waas } from "../waas";
/**
 * Returns a TypeScript function to call an Ethereum smart contract function.
 * This is is mainly a helper to handle the repetitive overloading variants
 * in {@link EthereumContract} and {@link EthContractWallet}.
 * @param waas - Current WaaS instance
 * @param contractAddress - Address of the contract whose function is to be executed
 * @param [walletName] - Name of the wallet on whose behalf the contract function is to be executed
 */
export declare function callContractFunction(waas: Waas, contractAddress: string, walletName?: string): (config: IContractCall | string, types?: string[] | undefined) => Promise<{
    type: string;
    value: string;
}[]>;
