import { readFileSync } from "fs"; /** * Configuration helper * * @author Pierre HUBERT */ export interface DatabaseConfiguration { host : string, dbName : string, user : string, password : string, dbPrefix : string } export interface Configuration { port: number, storageURL : string, storagePath : string, database : DatabaseConfiguration, } export class ConfigurationHelper { private static conf : Configuration; public static getConf() : Configuration { return this.conf; } /** * Load configuration from a specified configuration file * * @param fileName Configuration file to load */ public static loadConf(fileName : string) { this.conf = JSON.parse(readFileSync(fileName, {encoding: "utf-8"})); } } /** * Get project configuration */ export function conf() : Configuration { return ConfigurationHelper.getConf(); }