export interface Dictionary < TValue > { [ id ] : TValue ; } export function dictionaryToArray < TValue > ( dict ) { return Object . keys ( dict ) . map ( ( key ) => dict [ key ] ) ; } export type DeepPartial < T > = { [ P in keyof T ] ? : DeepPartial < T [ P ] > ; } ; export function isDefined < T > ( argument ) { return argument !== undefined && argument !== null ; }