import { EncodeObject, Registry } from "@cosmjs/proto-signing";
import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
import { SignAndBroadcastOptions } from "../common";
export interface LedgerWalletInterface {
    getAddress(): Promise<string>;
    sign(message: string): Promise<Uint8Array>;
    getPublicKey(): Promise<Uint8Array>;
    getAddressAndPublicKey(): Promise<{
        address: string;
        publicKey: Uint8Array;
    }>;
    showAddressOnDevice(): Promise<void>;
}
export declare function signFromLedger(ledger: LedgerWalletInterface, messages: EncodeObject[], option: SignAndBroadcastOptions, registry: Registry): Promise<TxRaw>;
