"use strict";
// SPDX-License-Identifier: Apache-2.0
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.EquityDetails = void 0;
const ValidatedArgs_1 = __importDefault(require("../../../core/validation/ValidatedArgs"));
const Equity_1 = require("./Equity");
class EquityDetails extends ValidatedArgs_1.default {
    votingRight;
    informationRight;
    liquidationRight;
    subscriptionRight;
    conversionRight;
    redemptionRight;
    putRight;
    dividendRight;
    currency;
    nominalValue;
    nominalValueDecimals;
    constructor(votingRight, informationRight, liquidationRight, subscriptionRight, conversionRight, redemptionRight, putRight, dividendRight, currency, nominalValue, nominalValueDecimals) {
        super({
            dividendRight: (val) => {
                return Equity_1.Equity.checkDividend(val);
            },
        });
        this.votingRight = votingRight;
        this.informationRight = informationRight;
        this.liquidationRight = liquidationRight;
        this.subscriptionRight = subscriptionRight;
        this.conversionRight = conversionRight;
        this.redemptionRight = redemptionRight;
        this.putRight = putRight;
        this.dividendRight = dividendRight;
        this.currency = currency;
        this.nominalValue = nominalValue;
        this.nominalValueDecimals = nominalValueDecimals;
        ValidatedArgs_1.default.handleValidation(EquityDetails.name, this);
    }
}
exports.EquityDetails = EquityDetails;
