in lib/index.ts [82:98]
function getKeysOfObject(obj: object) {
let keys: string[] = [];
let chain: {} = obj;
do {
if (chain == null) break;
keys = keys.concat(Object.getOwnPropertyNames(chain));
chain = Object.getPrototypeOf(chain);
} while (chain !== Object.prototype && chain !== Function.prototype);
keys = Array.from(new Set(keys));
keys = keys.filter(s => isVisitableName(s));
if (typeof obj === 'function') {
keys = keys.filter(k => reservedFunctionProperties.indexOf(k) < 0);
}
keys.sort();
return keys;
}