Giant blob of minor changes
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / prettier-eslint / node_modules / typescript / lib / lib.es2018.asynciterable.d.ts
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
18 /// <reference no-default-lib="true"/>\r
19
20
21 /// <reference lib="es2015.symbol" />\r
22 /// <reference lib="es2015.iterable" />\r
23 \r
24 interface SymbolConstructor {\r
25     /**\r
26      * A method that returns the default async iterator for an object. Called by the semantics of\r
27      * the for-await-of statement.\r
28      */\r
29     readonly asyncIterator: symbol;\r
30 }\r
31 \r
32 interface AsyncIterator<T, TReturn = any, TNext = undefined> {\r
33     // NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.\r
34     next(...args: [] | [TNext]): Promise<IteratorResult<T, TReturn>>;\r
35     return?(value?: TReturn | PromiseLike<TReturn>): Promise<IteratorResult<T, TReturn>>;\r
36     throw?(e?: any): Promise<IteratorResult<T, TReturn>>;\r
37 }\r
38 \r
39 interface AsyncIterable<T> {\r
40     [Symbol.asyncIterator](): AsyncIterator<T>;\r
41 }\r
42 \r
43 interface AsyncIterableIterator<T> extends AsyncIterator<T> {\r
44     [Symbol.asyncIterator](): AsyncIterableIterator<T>;\r
45 }