model-layer
Version:
26 lines (20 loc) • 526 B
text/typescript
interface IMessages {
ru: string;
en: string;
}
let lang: keyof IMessages = "en";
export function setLang(newLang: keyof IMessages) {
lang = newLang;
}
export class BaseError<TData extends {[key: string]: any} = {}> extends Error {
constructor(templateData: TData) {
super();
this.message = this.getMessage(templateData)[ lang ];
}
getMessage(templateData: TData): IMessages {
return {
ru: "",
en: ""
};
}
}