UNPKG

intopays

Version:

Intopays - Gateway de integração bancária

66 lines (65 loc) 2.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Boleto = void 0; const FineTypeEnum_1 = require("../enums/FineTypeEnum"); const InterestEnum_1 = require("../enums/InterestEnum"); const DiscountEnum_1 = require("../enums/DiscountEnum"); /** * Representa um boleto bancário com todos os dados necessários para emissão e integração. */ class Boleto { constructor(data) { /** * Tipo de desconto aplicado: * - `NO_DISCOUNT`: Sem desconto * - `FIXED_VALUE_UNTIL_INFORMED_DATE`: Valor fixo até a data informada * - `PERCENTAGE_UNTIL_INFORMED_DATE`: Percentual até a data informada */ this.discount1Code = DiscountEnum_1.DiscountEnum.NO_DISCOUNT; /** Percentual do primeiro desconto */ this.discount1Rate = 0; /** Valor fixo do primeiro desconto */ this.discount1Value = 0; /** * Tipo de desconto aplicado: * - `NO_DISCOUNT`: Sem desconto * - `FIXED_VALUE_UNTIL_INFORMED_DATE`: Valor fixo até a data informada * - `PERCENTAGE_UNTIL_INFORMED_DATE`: Percentual até a data informada */ this.discount2Code = DiscountEnum_1.DiscountEnum.NO_DISCOUNT; /** Percentual do segundo desconto */ this.discount2Rate = 0; /** Valor fixo do segundo desconto */ this.discount2Value = 0; /** * Tipo de multa a ser aplicada: * - `NO_FINE`: Sem multa * - `AMOUNT`: Valor fixo * - `PERCENT`: Percentual sobre o valor do boleto */ this.fineCode = FineTypeEnum_1.FineTypeEnum.NO_FINE; /** Data de início da multa */ this.fineDate = null; /** Percentual da multa */ this.fineRate = 0; /** Valor fixo da multa */ this.fineValue = 0; /** * Tipo de juros aplicável ao boleto: * - `AMOUNT_PER_DAY`: Valor fixo por dia de atraso * - `MONTHLY_RATE`: Percentual mensal de juros * - `EXEMPT`: Isento de juros */ this.interestCode = InterestEnum_1.InterestEnum.EXEMPT; /** Data de início da cobrança de juros */ this.interestDate = null; /** Percentual dos juros */ this.interestRate = 0; /** Valor fixo dos juros */ this.interestValue = 0; if (data) { Object.assign(this, data); } } } exports.Boleto = Boleto;