import type { Language } from '../language/Language'; import { languageFromJson, languageToJson } from '../language/Language'; export class FeeItem { title: Map; value: string; constructor(title: Map, value: string) { this.title = title; this.value = value; } } export function feeItemFromJson(json: { [key: string]: any }): FeeItem { const titleMap = new Map( Object.entries(json.title).map(([key, value]) => [ languageFromJson(key), value as string, ]) ); return new FeeItem(titleMap, json.value); } export function feeItemToJson(feeItem: FeeItem): { [key: string]: any } { const titleMap: { [key: string]: any } = {}; feeItem.title.forEach((value, key) => { titleMap[languageToJson(key)] = value; }); return { title: titleMap, value: feeItem.value, }; }