///
import { ArchwayClient, SigningArchwayClient } from '@archwayhq/arch3.js';
import { CosmWasmClient, SigningCosmWasmClient } from "@cosmjs/cosmwasm-stargate";
import { SecretNetworkClient } from "secretjs";
import { Coin } from "secretjs/dist/protobuf/cosmos/base/v1beta1/coin";
import { Account, ChainType, Network, TxnStdFee } from "../types";
export declare function getClient(network: Network): Promise;
export declare function getSigningClient(network: Network, account: Account): Promise;
export declare function getChainFromAccount(network: Network): ChainType;
export declare function storeCode(network: Network, signingClient: SecretNetworkClient | SigningCosmWasmClient | SigningArchwayClient, sender: string, contractName: string, wasmFileContent: Buffer, customFees?: TxnStdFee, source?: string, builder?: string): Promise<{
codeId: number;
contractCodeHash: {
code_hash: string;
};
}>;
export declare function instantiateContract(network: Network, signingClient: SecretNetworkClient | SigningCosmWasmClient | SigningArchwayClient, codeId: number, sender: string, contractName: string, contractCodeHash: string, initArgs: Record, label: string, transferAmount?: Coin[], customFees?: TxnStdFee, contractAdmin?: string | undefined): Promise;
export declare function executeTransaction(network: Network, signingClient: SecretNetworkClient | SigningCosmWasmClient | SigningArchwayClient, sender: string, contractAddress: string, contractCodeHash: string, msgData: Record, transferAmount?: readonly Coin[], customFees?: TxnStdFee, memo?: string): Promise;
export declare function sendQuery(client: SecretNetworkClient | CosmWasmClient | ArchwayClient, network: Network, msgData: Record, contractAddress: string, contractHash: string): Promise;
export declare function getBalance(client: SecretNetworkClient | CosmWasmClient | ArchwayClient, accountAddress: string, network: Network): Promise;