I have some JavaScript code that uses objects as dictionaries; for example a \'person\' object will hold a some personal details keyed off the email address.
You can use templated interfaces like this:
interface Map { [K: string]: T; } let dict: Map = {}; dict["one"] = 1;