'use strict';varGetIntrinsic=require('../GetIntrinsic');varhasSymbols=require('has-symbols')();var$TypeError=GetIntrinsic('%TypeError%');var$gOPN=GetIntrinsic('%Object.getOwnPropertyNames%');var$gOPS=hasSymbols&&GetIntrinsic('%Object.getOwnPropertySymbols%');varkeys=require('object-keys');varesType=require('./Type');// https://www.ecma-international.org/ecma-262/6.0/#sec-getownpropertykeysmodule.exports=functionGetOwnPropertyKeys(O,Type){if(esType(O)!=='Object'){thrownew$TypeError('Assertion failed: Type(O) is not Object');}if(Type==='Symbol'){return$gOPS?$gOPS(O):[];}if(Type==='String'){if(!$gOPN){returnkeys(O);}return$gOPN(O);}thrownew$TypeError('Assertion failed: `Type` must be `"String"` or `"Symbol"`');};