lib.es2015.symbol.d.ts (1649B)
1 /*! ***************************************************************************** 2 Copyright (c) Microsoft Corporation. All rights reserved. 3 Licensed under the Apache License, Version 2.0 (the "License"); you may not use 4 this file except in compliance with the License. You may obtain a copy of the 5 License at http://www.apache.org/licenses/LICENSE-2.0 6 7 THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 8 KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED 9 WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, 10 MERCHANTABLITY OR NON-INFRINGEMENT. 11 12 See the Apache Version 2.0 License for specific language governing permissions 13 and limitations under the License. 14 ***************************************************************************** */ 15 16 17 /// <reference no-default-lib="true"/> 18 19 interface SymbolConstructor { 20 /** 21 * A reference to the prototype. 22 */ 23 readonly prototype: Symbol; 24 25 /** 26 * Returns a new unique Symbol value. 27 * @param description Description of the new Symbol object. 28 */ 29 (description?: string | number): symbol; 30 31 /** 32 * Returns a Symbol object from the global symbol registry matching the given key if found. 33 * Otherwise, returns a new symbol with this key. 34 * @param key key to search for. 35 */ 36 for(key: string): symbol; 37 38 /** 39 * Returns a key from the global symbol registry matching the given Symbol if found. 40 * Otherwise, returns a undefined. 41 * @param sym Symbol to find the key for. 42 */ 43 keyFor(sym: symbol): string | undefined; 44 } 45 46 declare var Symbol: SymbolConstructor;