export class Dictionary { dict: any constructor(dict?: any) { this.dict = dict || {} } set(key: string, value: any) { this.dict[key] = value } has(key: string): boolean { return !!this.dict[key] } missing(key: string): boolean { return !this.dict[key] } get(key: string): any { return this.dict[key] ? this.dict[key] : undefined } keys(): string[] { return Object.keys(this.dict) } data() { return this.dict } }