import { GetAddressByDefinePathParams, GetAvailableAddressParams } from '../types';
import { BaseWallet } from '../wallet';
export declare abstract class LedgerWebHid {
    protected abstract makeApp(): Promise<LedgerAppBase>;
    protected abstract cleanUp(): Promise<void>;
    getAddressByDefinePath(params: GetAddressByDefinePathParams): Promise<string>;
    protected abstract getWallet(): BaseWallet;
    getAvailableAddress(params: GetAvailableAddressParams): Promise<{
        index: number;
        address: string;
        path: string;
    }>;
    signPersonalMessage(transaction: any, path: string): Promise<any>;
}
