"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Address = void 0;
const crypto_identities_1 = require("@arkecosystem/crypto-identities");
const helpers_1 = require("./helpers");
class Address {
    static fromPassphrase(passphrase, networkVersion) {
        return crypto_identities_1.Address.fromPassphrase(passphrase, { pubKeyHash: helpers_1.getPubKeyHash(networkVersion) });
    }
    static fromPublicKey(publicKey, networkVersion) {
        return crypto_identities_1.Address.fromPublicKey(publicKey, { pubKeyHash: helpers_1.getPubKeyHash(networkVersion) });
    }
    static fromWIF(wif, network) {
        return crypto_identities_1.Address.fromWIF(wif, {
            pubKeyHash: helpers_1.getPubKeyHashFromNetwork(network),
            wif: helpers_1.getWifFromNetwork(network),
        });
    }
    static fromMultiSignatureAsset(asset, networkVersion) {
        return crypto_identities_1.Address.fromMultiSignatureAsset(asset, { pubKeyHash: helpers_1.getPubKeyHash(networkVersion) });
    }
    static fromPrivateKey(privateKey, networkVersion) {
        return crypto_identities_1.Address.fromPrivateKey(privateKey, { pubKeyHash: helpers_1.getPubKeyHash(networkVersion) });
    }
    static fromBuffer(buff) {
        return crypto_identities_1.Address.fromBuffer(buff);
    }
    static toBuffer(address, networkVersion) {
        return crypto_identities_1.Address.toBuffer(address, { pubKeyHash: helpers_1.getPubKeyHash(networkVersion) });
    }
    static validate(address, networkVersion) {
        return crypto_identities_1.Address.validate(address, { pubKeyHash: helpers_1.getPubKeyHash(networkVersion) });
    }
}
exports.Address = Address;
//# sourceMappingURL=address.js.map