declare type StringMap<T> = {[key: string]: T};
declare type NumberMap<T> = {[key: number]: T};