import { Address, Account, Path, Hex } from "../models";
import { BaseHdWallet } from "./baseHd";
export declare abstract class WebHdWallet extends BaseHdWallet {
    abstract hasAddressBeenUsed(publicKey: Hex): Promise<boolean>;
    protected abstract formatAddress(address: Address): Address;
    getAddressFromPath(path: Path): import("../models").Keys;
    protected hasAccountBeenCreated: (accountIndex: number) => Promise<boolean>;
    protected scanAccountForAddresses: (accountIndex: number) => Promise<{
        usedAddresses: import("../models").Keys[];
        freshAddresses: import("../models").Keys[];
    }>;
    getAccount: (accountIndex: number) => Promise<Account>;
    getAccounts(start?: number): Promise<Account[]>;
    createAccount: () => Promise<Account>;
}
