'use strict'; export function mapPromises(promises: {[key: string]: Promise}): Promise<{[key: string]: T}> { var p: Promise[] = []; var ret: {[key: string]: T} = {}; _.forOwn(promises, (v, k) => { p.push(v.then(r => {ret[k] = r;})); }); return Promise.all(p).then(() => ret); } export function numberArrayToMap(arr: number[]): {[key: number]: boolean} { var ret: {[key: number]: boolean} = {}; for (let v of arr) ret[v] = true; return ret; }