import {IVersion} from './types'; export interface IConfig { url: string; register: boolean; version: IVersion; } declare global { interface Window { config?: Partial; } } const config: IConfig = { url: 'unset', register: false, version: {commit: 'unknown', buildDate: 'unknown', version: 'unknown'}, ...window.config, }; export function set(key: Key, value: IConfig[Key]): void { config[key] = value; } export function get(key: K): IConfig[K] { return config[key]; }