import { StdFee } from "@interchainjs/cosmos-types"; import { Message, IBroadcastResult } from "@interchainjs/types"; export interface ISigningClient { /** * register converters */ addConverters?: (converters: (AminoConverter)[]) => void; /** * register encoders */ addEncoders?: (encoders: (Encoder)[]) => void; /** * sign and broadcast */ signAndBroadcast: (signerAddress: string, message: readonly Message[], fee: StdFee | "auto", memo?: string) => Promise; } export interface Encoder { readonly typeUrl: string; fromPartial: (object: any) => T | any; encode: (message: T, writer?: any) => any; } export interface AminoConverter { readonly typeUrl: string; readonly aminoType?: string; fromAmino?: (amino: any) => T; toAmino?: (message: T) => any; } export declare function isISigningClient(client: unknown): client is ISigningClient;