UNPKG

node-debt-snowball

Version:

Node script to calculate debt repayment using the snowball method

53 lines (52 loc) 1.62 kB
import Account from './Account'; import Results from './Results'; import { AccountObjectKeys, OrderDirection, type AccountObject } from './types'; declare class Snowball { accounts: Account[]; additionalPayment: number; balanceStart: number; currentBalance: number; snowballAmount: number; strategy: string; constructor(accounts: AccountObject[], additionalPayment?: number, strategy?: string); parseAccounts(accounts: AccountObject[]): { name: string; balance: number; interest: number; minPayment: number; }[]; sortAccounts(accounts: AccountObject[], key?: AccountObjectKeys, order?: OrderDirection): AccountObject[]; getSortKeyAndOrder(): { key: AccountObjectKeys; order: OrderDirection; }; setAccounts(accounts: AccountObject[]): Account[]; getCurrentBalance(): number; makePaymentForAccount(account: Account): { balanceStart: number; balanceEnd: number; accruedInterest: number; additionalPayment: number; paymentAmount: number; minPayment: number; name: string; }; makePaymentsForMonth(): { balance: number; accounts: { balanceStart: number; balanceEnd: number; accruedInterest: number; additionalPayment: number; paymentAmount: number; minPayment: number; name: string; }[]; }; /** * Generates a payment plan * @returns {Payment[]} - An array of payments */ createPaymentPlan(): Results; } export = Snowball;