import { StdFee } from '@cosmjs/amino';
import { EncodeObject } from '@cosmjs/proto-signing';
import { SigningStargateClient, SignerData } from '@cosmjs/stargate';
import { SigningCosmWasmClient } from '@cosmjs/cosmwasm-stargate';
import { TxRaw } from 'cosmjs-types/cosmos/tx/v1beta1/tx';
import { SignerType } from '../types';
import { Chain } from '@chain-registry/types';
export declare function getOfflineSigner(chainId: string, signerType?: SignerType): Promise<import('@cosmjs/amino').OfflineAminoSigner | import('@cosmjs/proto-signing').OfflineDirectSigner>;
export declare function sign(chainOrName: string, messages: EncodeObject[], fee?: StdFee | 'auto', signerType?: SignerType, memo?: string, explicitSignerData?: SignerData, timeoutHeight?: bigint, feeMultiplier?: number): Promise<TxRaw>;
/**
 * Allow sign using external chain object data, useful for use cases
 * where you don't have all the chains array from the beginning.
 */
export declare function sign(chainOrName: Chain, messages: EncodeObject[], fee?: StdFee | 'auto', signerType?: SignerType, memo?: string, explicitSignerData?: SignerData, timeoutHeight?: bigint, feeMultiplier?: number, signSender?: string): Promise<TxRaw>;
export declare function signCW(chainOrName: string, messages: EncodeObject[], fee?: StdFee | 'auto', signerType?: SignerType, memo?: string, explicitSignerData?: SignerData, timeoutHeight?: bigint, feeMultiplier?: number): Promise<TxRaw>;
export declare function signCW(chainOrName: Chain, messages: EncodeObject[], fee?: StdFee | 'auto', signerType?: SignerType, memo?: string, explicitSignerData?: SignerData, timeoutHeight?: bigint, feeMultiplier?: number, signSender?: string): Promise<TxRaw>;
export declare function signArbitrary(chainId: string, signer: string, data: string | Uint8Array): Promise<import('@cosmjs/amino').StdSignature>;
export declare function getSigningStargateClient(chainOrName: string, signerType: SignerType): Promise<SigningStargateClient>;
export declare function getSigningStargateClient(chainOrName: Chain, signerType: SignerType): Promise<SigningStargateClient>;
export declare function getSigningCosmWasmClient(chainOrName: string, signerType: SignerType): Promise<SigningCosmWasmClient>;
export declare function getSigningCosmWasmClient(chainOrName: Chain, signerType: SignerType): Promise<SigningCosmWasmClient>;
