export function keys < T extends object , K extends string & keyof T > ( o ) { return o == null ? [ ] : ( Object . keys ( o ) . filter ( ( ea ) => ( { } . propertyIsEnumerable . call ( o , ea ) ) ) as K [ ] ) ; } export function isFunction ( obj ) { return typeof obj === "function" ; }