financial-calcs
Version:
Reusable financial calculation library for FERS, Social Security, retirement savings, and mortgage amortization
39 lines • 1.35 kB
TypeScript
export interface FersPensionInput {
startYear: number;
birthYear: number;
serviceStartYear: number;
serviceEndYear: number;
retirementAge: number;
currentSalary: number;
salaryGrowthRate: number;
high3Salary: number;
colaPercent: number;
pensionMultiplier: number;
yearsToProject: number;
retirementType: 'regular' | 'mra10' | 'early' | 'deferred';
yearOverrides?: FersPensionYearOverrides;
}
export type FersPensionYearOverrides = Record<number, FersPensionOverride>;
export interface FersPensionOverride {
salary?: number;
salaryGrowthRate?: number;
colaApplied?: number;
}
export interface FersPensionProjectionRow {
year: number;
age: number;
salary?: number;
pension?: number;
monthlyPension?: number;
salaryGrowthRate: number;
colaApplied: number;
hasOverride?: boolean;
}
export interface FersPensionValidationError {
field: keyof FersPensionInput;
message: string;
}
export declare function validateFersPensionInput(input: FersPensionInput): FersPensionValidationError[];
export declare function calculateFersPensionProjection(input: FersPensionInput): FersPensionProjectionRow[];
export declare function calculateFersPensionProjectionWithOverrides(input: FersPensionInput): FersPensionProjectionRow[];
//# sourceMappingURL=fers.d.ts.map