/**
 * Unlike `Object.entries` native method, returns an iterable, not an array.
 * Iterates using a for-in loop.
 */ export const objectEntries = function * < T > ( source ) : Iterable < [ Extract < keyof T , string > , T [ Extract < keyof T , string > ] ] > { for ( const key in source ) { yield [ key , source [ key ] ] ; } } ;