import { EPeriodicity } from './budget-wizard.models'; import { ETipoGeneracionPresupuestoFinanciacion } from '../enums/etipo-generacion-presupuesto-financiacion.enum'; /** * The Budget configuration that governs the edition of the user budget. */ export interface BudgetSetup { id: number; promCodigo: number; description: string; startDate: string; startMaxDate: string; endDate: string; currency: string; baseCurrency: string; maxTotalMoney: number; maxAnnualMoney: number; monthsPerPeriod: number; monthsPerPeriodName: string; minFinancingMonths: number; maxFinancingMonths: number; firstYearMonth: number; paymentDay: number; paymentMonthOffset: number; firstPaymentCheck: boolean; lastPaymentCheck: boolean; meetingMaxBudget: boolean; categories: CategorySetup[]; budgetType: number; } export interface CategorySetup { id: number; category: string; description: string; localizedName: string; currency: string; maxTotalPayments: number; maxAnnualPayments: number; maxTotalMoney: number; maxAnnualMoney: number; maxPeriodMoney: number; maxMonthlyMoney: number; withFamily: boolean; maxTotalMoneyWithFamily: number; maxAnnualMoneyWithFamily: number; maxPeriodMoneyWithFamily: number; maxMonthlyMoneyWithFamily: number; periodicity: EPeriodicity; periodicityMaxPayments?: number; subcategories?: Subcategory[] | null; automaticPercent?: number; periodicityFinancing: ETipoGeneracionPresupuestoFinanciacion; financingPeriod: string; } export interface Subcategory { name: string; description: string; }