export interface MortgageData {
    loanAmount: number;
    interestRate: number;
    rateTerm: number;
    amortization: number;
    paymentFrequency: 'monthly' | 'biweekly' | 'weekly';
    loanType: 'regular' | 'interest only';
    compounding: 'daily' | 'weekly' | 'bi-weekly' | 'monthly' | 'quarterly' | 'semi-annual';
    paymentIncrease: number;
    paymentIncreaseType: 'dollar' | 'percentage';
    oneTimePrePayment: number;
    annualPrePayment: number;
}
export interface MortgageResults {
    mortgagePayment: number;
    principal: number;
    interest: number;
    totalInterest: number;
    totalCost: number;
    loanAmount: number;
    balanceEndOfTerm: number;
    fiveYearBreakdown: {
        totalPaid: number;
        interestPaid: number;
        principalPaid: number;
        balanceRemaining: number;
    };
    acceleratedResults?: {
        adjustedPayment: number;
        payoffYears: number;
        totalInterestSaved: number;
        timeSaved: string;
        balanceComparison: Array<{
            year: number;
            regularBalance: number;
            acceleratedBalance: number;
        }>;
    };
}
export interface AmortizationPayment {
    year: number;
    balanceRemaining: number;
    annualInterestPaid: number;
    annualPrincipalPaid: number;
    annualTotalPaid: number;
    totalInterestPaid: number;
    totalPrincipalPaid: number;
    totalPaid: number;
}
export declare function formatCurrency(amount: number): string;
export declare function formatCurrencyDecimal(amount: number): string;
export declare function formatNumber(num: number): string;
export declare function parseCurrency(value: string): number;
export declare function calculateMortgage(data: MortgageData): MortgageResults;
