export type AccountType = | "depository" | "credit" | "other_asset" | "loan" | "other_liability"; /** * Account types that represent liquid cash or cash-equivalents. * Used for: Runway, Net Position (cash side), Balance Sheet (assets) */ export const CASH_ACCOUNT_TYPES = ["depository", "other_asset"] as const; /** * Account types that represent debt/liabilities. * Used for: Net Position (debt side), Balance Sheet (liabilities) */ export const DEBT_ACCOUNT_TYPES = ["credit", "loan"] as const; /** * Credit card account type. * Balances may be positive (Plaid, Teller) or negative (GoCardless, EnableBanking). * Always use Math.abs() when calculating debt totals. */ export const CREDIT_ACCOUNT_TYPE = "credit" as const; /** * Loan account type (business loans, lines of credit). */ export const LOAN_ACCOUNT_TYPE = "loan" as const; export function getType(type: string): AccountType { switch (type) { case "depository": return "depository"; case "credit": return "credit"; case "loan": return "loan"; default: return "other_asset"; } }