import { HD } from './hd';
import { Derivation } from '../derivations';
import { EllipticCurveCryptography, PublicKey, PrivateKey } from '../eccs';
import { Seed } from '../seeds';
import { HDAddressOptionsInterface, HDOptionsInterface } from '../interfaces';
export declare class BIP32HD extends HD {
    protected ecc: EllipticCurveCryptography;
    protected seed?: Uint8Array;
    protected rootPrivateKey?: PrivateKey;
    protected rootChainCode?: Uint8Array;
    protected rootPublicKey?: PublicKey;
    protected privateKey?: PrivateKey;
    protected chainCode?: Uint8Array;
    protected publicKey?: PublicKey;
    protected publicKeyType: string;
    protected wifType: string;
    protected wifPrefix?: number;
    protected fingerprint?: Uint8Array;
    protected parentFingerprint?: Uint8Array;
    protected strict?: boolean | null;
    protected rootDepth: number;
    protected rootIndex: number;
    protected depth: number;
    protected index: number;
    constructor(options?: HDOptionsInterface);
    static getName(): string;
    fromSeed(seed: Uint8Array | string | Seed): this;
    fromXPrivateKey(xprv: string, encoded?: boolean, strict?: boolean): this;
    fromXPublicKey(xpub: string, encoded?: boolean, strict?: boolean): this;
    fromWIF(wif: string): this;
    fromPrivateKey(privateKey: string): this;
    fromPublicKey(publicKey: string): this;
    fromDerivation(derivation: Derivation): this;
    updateDerivation(derivation: Derivation): this;
    cleanDerivation(): this;
    drive(index: number): this | null | undefined;
    getSeed(): string | null;
    getRootXPrivateKey(version?: Uint8Array | number, encoded?: boolean): string | null;
    getRootXPublicKey(version?: Uint8Array | number, encoded?: boolean): string | null;
    getRootPrivateKey(): string | null;
    getRootWIF(wifType?: string): string | null;
    getRootChainCode(): string | null;
    getRootPublicKey(publicKeyType?: string): string | null;
    getXPrivateKey(version?: Uint8Array | number, encoded?: boolean): string | null;
    getXPublicKey(version?: Uint8Array | number, encoded?: boolean): string | null;
    getPrivateKey(): string | null;
    getWIF(wifType?: string): string | null;
    getWIFType(): string | null;
    getChainCode(): string | null;
    getPublicKey(publicKeyType?: string): string;
    getPublicKeyType(): string;
    getCompressed(): string;
    getUncompressed(): string;
    getHash(): string;
    getFingerprint(): string;
    getParentFingerprint(): string | null;
    getDepth(): number;
    getPath(): string;
    getIndex(): number;
    getIndexes(): number[];
    getStrict(): boolean | null;
    getAddress(options?: HDAddressOptionsInterface): string;
}
//# sourceMappingURL=bip32.d.ts.map