"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ProofResolver = void 0;
const options_resolver_1 = require("../options-resolver");
const proof_validator_1 = require("../validators/proof.validator");
/**
 * Proof resolver
 */
class ProofResolver {
    /**
     * Resolves an secret provided by the user.
     * @param {Options} options - Command options.
     * @param {string} altText - Alternative text.
     * @param {string} altKey - Alternative key.
     * @returns {Promise<string>}
     */
    async resolve(options, hashType, altText, altKey) {
        const resolution = await (0, options_resolver_1.OptionsResolver)(options, altKey ? altKey : 'proof', () => undefined, altText ? altText : 'Enter the original random set of bytes in hexadecimal:', 'text', new proof_validator_1.ProofValidator(hashType));
        return resolution;
    }
}
exports.ProofResolver = ProofResolver;
