UNPKG

@openfisca/json-model

Version:

Library to handle informations extracted in JSON or YAML format from OpenFisca parameters, variables, etc

38 lines (37 loc) 1.65 kB
export interface ChangingUnit extends UnitBase { units: { [date: string]: ConstantUnit; }; } export interface ConstantUnit extends UnitBase { parameter?: string; ratio?: boolean; units?: undefined; } export declare const pluralizationCategories: readonly ["zero", "one", "two", "few", "many", "other"]; type PluralizationCategoriesTuple = typeof pluralizationCategories; export type PluralizationCategory = PluralizationCategoriesTuple[number]; export type StringByPluralizationCategory = { [Property in PluralizationCategory]?: string; }; export type Unit = ChangingUnit | ConstantUnit; export interface UnitBase { label?: StringByPluralizationCategory | string; name: string; short_label?: StringByPluralizationCategory | string; units?: { [date: string]: ConstantUnit; } | undefined; } export declare function getUnitAtDate(unitByName: { [name: string]: Unit; }, name: string | undefined | null, date: string | undefined | null): Unit | undefined; export declare function getUnitLabel(unitByName: { [name: string]: Unit; }, name: string | undefined | null, date: string | undefined | null, pluralizationCategory: PluralizationCategory): string; export declare function getUnitShortLabel(unitByName: { [name: string]: Unit; }, name: string | undefined | null, date: string | undefined | null, pluralizationCategory: PluralizationCategory): string; export declare function labelFromUnit(unit: Unit, pluralizationCategory: PluralizationCategory): string; export declare function shortLabelFromUnit(unit: Unit, pluralizationCategory: PluralizationCategory): string; export {};