| 12345678910111213141516171819202122 | 'use strict';var $ = require('../internals/export');var ReflectMetadataModule = require('../internals/reflect-metadata');var anObject = require('../internals/an-object');var toMetadataKey = ReflectMetadataModule.toKey;var getOrCreateMetadataMap = ReflectMetadataModule.getMap;var store = ReflectMetadataModule.store;// `Reflect.deleteMetadata` method// https://github.com/rbuckton/reflect-metadata$({ target: 'Reflect', stat: true }, {  deleteMetadata: function deleteMetadata(metadataKey, target /* , targetKey */) {    var targetKey = arguments.length < 3 ? undefined : toMetadataKey(arguments[2]);    var metadataMap = getOrCreateMetadataMap(anObject(target), targetKey, false);    if (metadataMap === undefined || !metadataMap['delete'](metadataKey)) return false;    if (metadataMap.size) return true;    var targetMetadata = store.get(target);    targetMetadata['delete'](targetKey);    return !!targetMetadata.size || store['delete'](target);  }});
 |