/static/node_modules/typescript/lib/lib.es2015.iterable.d.ts
https://gitlab.com/garbotron/goshots2 · TypeScript Typings · 461 lines · 164 code · 62 blank · 235 comment · 2 complexity · 00894e7132957ea8885ce84fbad5dbc1 MD5 · raw file
- /*! *****************************************************************************
- Copyright (c) Microsoft Corporation. All rights reserved.
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
- this file except in compliance with the License. You may obtain a copy of the
- License at http://www.apache.org/licenses/LICENSE-2.0
-
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
- MERCHANTABLITY OR NON-INFRINGEMENT.
-
- See the Apache Version 2.0 License for specific language governing permissions
- and limitations under the License.
- ***************************************************************************** */
- /// <reference no-default-lib="true"/>
- /// <reference path="lib.es2015.symbol.d.ts" />
- interface SymbolConstructor {
- /**
- * A method that returns the default iterator for an object. Called by the semantics of the
- * for-of statement.
- */
- readonly iterator: symbol;
- }
- interface IteratorResult<T> {
- done: boolean;
- value: T;
- }
- interface Iterator<T> {
- next(value?: any): IteratorResult<T>;
- return?(value?: any): IteratorResult<T>;
- throw?(e?: any): IteratorResult<T>;
- }
- interface Iterable<T> {
- [Symbol.iterator](): Iterator<T>;
- }
- interface IterableIterator<T> extends Iterator<T> {
- [Symbol.iterator](): IterableIterator<T>;
- }
- interface Array<T> {
- /** Iterator */
- [Symbol.iterator](): IterableIterator<T>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, T]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<T>;
- }
- interface ArrayConstructor {
- /**
- * Creates an array from an iterable object.
- * @param iterable An iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from<T, U>(iterable: Iterable<T>, mapfn: (v: T, k: number) => U, thisArg?: any): Array<U>;
-
- /**
- * Creates an array from an iterable object.
- * @param iterable An iterable object to convert to an array.
- */
- from<T>(iterable: Iterable<T>): Array<T>;
- }
- interface ReadonlyArray<T> {
- /** Iterator */
- [Symbol.iterator](): IterableIterator<T>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, T]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<T>;
- }
- interface IArguments {
- /** Iterator */
- [Symbol.iterator](): IterableIterator<any>;
- }
- interface Map<K, V> {
- [Symbol.iterator](): IterableIterator<[K,V]>;
- entries(): IterableIterator<[K, V]>;
- keys(): IterableIterator<K>;
- values(): IterableIterator<V>;
- }
- interface MapConstructor {
- new <K, V>(iterable: Iterable<[K, V]>): Map<K, V>;
- }
- interface WeakMap<K, V> { }
- interface WeakMapConstructor {
- new <K, V>(iterable: Iterable<[K, V]>): WeakMap<K, V>;
- }
- interface Set<T> {
- [Symbol.iterator](): IterableIterator<T>;
- entries(): IterableIterator<[T, T]>;
- keys(): IterableIterator<T>;
- values(): IterableIterator<T>;
- }
- interface SetConstructor {
- new <T>(iterable: Iterable<T>): Set<T>;
- }
- interface WeakSet<T> { }
- interface WeakSetConstructor {
- new <T>(iterable: Iterable<T>): WeakSet<T>;
- }
- interface Promise<T> { }
- interface PromiseConstructor {
- /**
- * Creates a Promise that is resolved with an array of results when all of the provided Promises
- * resolve, or rejected when any Promise is rejected.
- * @param values An array of Promises.
- * @returns A new Promise.
- */
- all<TAll>(values: Iterable<TAll | PromiseLike<TAll>>): Promise<TAll[]>;
-
- /**
- * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
- * or rejected.
- * @param values An array of Promises.
- * @returns A new Promise.
- */
- race<T>(values: Iterable<T | PromiseLike<T>>): Promise<T>;
- }
- declare namespace Reflect {
- function enumerate(target: any): IterableIterator<any>;
- }
- interface String {
- /** Iterator */
- [Symbol.iterator](): IterableIterator<string>;
- }
- /**
- * A typed array of 8-bit integer values. The contents are initialized to 0. If the requested
- * number of bytes could not be allocated an exception is raised.
- */
- interface Int8Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Int8ArrayConstructor {
- new (elements: Iterable<number>): Int8Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int8Array;
- }
- /**
- * A typed array of 8-bit unsigned integer values. The contents are initialized to 0. If the
- * requested number of bytes could not be allocated an exception is raised.
- */
- interface Uint8Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Uint8ArrayConstructor {
- new (elements: Iterable<number>): Uint8Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint8Array;
- }
- /**
- * A typed array of 8-bit unsigned integer (clamped) values. The contents are initialized to 0.
- * If the requested number of bytes could not be allocated an exception is raised.
- */
- interface Uint8ClampedArray {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Uint8ClampedArrayConstructor {
- new (elements: Iterable<number>): Uint8ClampedArray;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint8ClampedArray;
- }
- /**
- * A typed array of 16-bit signed integer values. The contents are initialized to 0. If the
- * requested number of bytes could not be allocated an exception is raised.
- */
- interface Int16Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Int16ArrayConstructor {
- new (elements: Iterable<number>): Int16Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int16Array;
- }
- /**
- * A typed array of 16-bit unsigned integer values. The contents are initialized to 0. If the
- * requested number of bytes could not be allocated an exception is raised.
- */
- interface Uint16Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Uint16ArrayConstructor {
- new (elements: Iterable<number>): Uint16Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint16Array;
- }
- /**
- * A typed array of 32-bit signed integer values. The contents are initialized to 0. If the
- * requested number of bytes could not be allocated an exception is raised.
- */
- interface Int32Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Int32ArrayConstructor {
- new (elements: Iterable<number>): Int32Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int32Array;
- }
- /**
- * A typed array of 32-bit unsigned integer values. The contents are initialized to 0. If the
- * requested number of bytes could not be allocated an exception is raised.
- */
- interface Uint32Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Uint32ArrayConstructor {
- new (elements: Iterable<number>): Uint32Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint32Array;
- }
- /**
- * A typed array of 32-bit float values. The contents are initialized to 0. If the requested number
- * of bytes could not be allocated an exception is raised.
- */
- interface Float32Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Float32ArrayConstructor {
- new (elements: Iterable<number>): Float32Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Float32Array;
- }
- /**
- * A typed array of 64-bit float values. The contents are initialized to 0. If the requested
- * number of bytes could not be allocated an exception is raised.
- */
- interface Float64Array {
- [Symbol.iterator](): IterableIterator<number>;
- /**
- * Returns an array of key, value pairs for every entry in the array
- */
- entries(): IterableIterator<[number, number]>;
- /**
- * Returns an list of keys in the array
- */
- keys(): IterableIterator<number>;
- /**
- * Returns an list of values in the array
- */
- values(): IterableIterator<number>;
- }
- interface Float64ArrayConstructor {
- new (elements: Iterable<number>): Float64Array;
- /**
- * Creates an array from an array-like or iterable object.
- * @param arrayLike An array-like or iterable object to convert to an array.
- * @param mapfn A mapping function to call on every element of the array.
- * @param thisArg Value of 'this' used to invoke the mapfn.
- */
- from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Float64Array;
- }