/**
 * Financial metrics and calculations
 */
import type { FinancialMetrics, FinancialStatement, Currency } from './types.js';
/**
 * Calculate financial metrics from basic inputs
 *
 * @example
 * ```ts
 * const metrics = financials({
 *   revenue: 1000000,
 *   cogs: 300000,
 *   operatingExpenses: 500000,
 *   currency: 'USD',
 *   period: 'monthly',
 * })
 *
 * console.log(metrics.grossMargin) // 70%
 * console.log(metrics.operatingMargin) // 20%
 * console.log(metrics.netMargin) // 20%
 * ```
 */
export declare function financials(metrics: Partial<FinancialMetrics>): FinancialMetrics;
/**
 * Calculate gross margin
 */
export declare function calculateGrossMargin(revenue: number, cogs: number): number;
/**
 * Calculate operating margin
 */
export declare function calculateOperatingMargin(revenue: number, cogs: number, operatingExpenses: number): number;
/**
 * Calculate net margin
 */
export declare function calculateNetMargin(revenue: number, netIncome: number): number;
/**
 * Calculate EBITDA margin
 */
export declare function calculateEBITDAMargin(revenue: number, ebitda: number): number;
/**
 * Calculate burn rate (monthly cash burn)
 */
export declare function calculateBurnRate(cashStart: number, cashEnd: number, months: number): number;
/**
 * Calculate runway (months until cash runs out)
 */
export declare function calculateRunway(cash: number, monthlyBurnRate: number): number;
/**
 * Calculate customer acquisition cost (CAC)
 */
export declare function calculateCAC(marketingSpend: number, newCustomers: number): number;
/**
 * Calculate customer lifetime value (LTV)
 */
export declare function calculateLTV(averageRevenuePerCustomer: number, averageCustomerLifetimeMonths: number, grossMarginPercent: number): number;
/**
 * Calculate LTV:CAC ratio
 */
export declare function calculateLTVtoCAC(ltv: number, cac: number): number;
/**
 * Calculate payback period (months to recover CAC)
 */
export declare function calculatePaybackPeriod(cac: number, monthlyRevPerCustomer: number): number;
/**
 * Calculate annual recurring revenue (ARR)
 */
export declare function calculateARR(mrr: number): number;
/**
 * Calculate monthly recurring revenue (MRR)
 */
export declare function calculateMRR(arr: number): number;
/**
 * Calculate revenue growth rate
 */
export declare function calculateGrowthRate(currentRevenue: number, previousRevenue: number): number;
/**
 * Calculate compound annual growth rate (CAGR)
 */
export declare function calculateCAGR(beginningValue: number, endingValue: number, years: number): number;
/**
 * Calculate return on investment (ROI)
 */
export declare function calculateROI(gain: number, cost: number): number;
/**
 * Calculate return on equity (ROE)
 */
export declare function calculateROE(netIncome: number, shareholderEquity: number): number;
/**
 * Calculate return on assets (ROA)
 */
export declare function calculateROA(netIncome: number, totalAssets: number): number;
/**
 * Calculate quick ratio (liquidity)
 */
export declare function calculateQuickRatio(currentAssets: number, inventory: number, currentLiabilities: number): number;
/**
 * Calculate current ratio (liquidity)
 */
export declare function calculateCurrentRatio(currentAssets: number, currentLiabilities: number): number;
/**
 * Calculate debt-to-equity ratio
 */
export declare function calculateDebtToEquity(totalDebt: number, totalEquity: number): number;
/**
 * Format currency value
 */
export declare function formatCurrency(amount: number, currency?: Currency): string;
/**
 * Create a financial statement
 */
export declare function createStatement(type: FinancialStatement['type'], period: string, lineItems: Record<string, number>, currency?: Currency): FinancialStatement;
/**
 * Get line item from financial statement
 */
export declare function getLineItem(statement: FinancialStatement, name: string): number;
/**
 * Compare financial metrics between periods
 */
export declare function compareMetrics(current: FinancialMetrics, previous: FinancialMetrics): Record<string, {
    change: number;
    changePercent: number;
}>;
/**
 * Validate financial metrics
 */
export declare function validateFinancials(metrics: FinancialMetrics): {
    valid: boolean;
    errors: string[];
};
//# sourceMappingURL=financials.d.ts.map