UNPKG

4.94 kBTypeScriptView Raw
1// Type definitions for non-npm package Node.js 11.13
2// Project: http://nodejs.org/
3// Definitions by: Microsoft TypeScript <https://github.com/Microsoft>
4// DefinitelyTyped <https://github.com/DefinitelyTyped>
5// Alberto Schiabel <https://github.com/jkomyno>
6// Alexander T. <https://github.com/a-tarasyuk>
7// Alvis HT Tang <https://github.com/alvis>
8// Andrew Makarov <https://github.com/r3nya>
9// Benjamin Toueg <https://github.com/btoueg>
10// Bruno Scheufler <https://github.com/brunoscheufler>
11// Chigozirim C. <https://github.com/smac89>
12// Christian Vaagland Tellnes <https://github.com/tellnes>
13// David Junger <https://github.com/touffy>
14// Deividas Bakanas <https://github.com/DeividasBakanas>
15// Eugene Y. Q. Shen <https://github.com/eyqs>
16// Flarna <https://github.com/Flarna>
17// Hannes Magnusson <https://github.com/Hannes-Magnusson-CK>
18// Hoàng Văn Khải <https://github.com/KSXGitHub>
19// Huw <https://github.com/hoo29>
20// Kelvin Jin <https://github.com/kjin>
21// Klaus Meinhardt <https://github.com/ajafff>
22// Lishude <https://github.com/islishude>
23// Mariusz Wiktorczyk <https://github.com/mwiktorczyk>
24// Matthieu Sieben <https://github.com/matthieusieben>
25// Mohsen Azimi <https://github.com/mohsen1>
26// Nicolas Even <https://github.com/n-e>
27// Nicolas Voigt <https://github.com/octo-sniffle>
28// Parambir Singh <https://github.com/parambirs>
29// Sebastian Silbermann <https://github.com/eps1lon>
30// Simon Schick <https://github.com/SimonSchick>
31// Thomas den Hollander <https://github.com/ThomasdenH>
32// Wilco Bakker <https://github.com/WilcoBakker>
33// wwwy3y3 <https://github.com/wwwy3y3>
34// Zane Hannan AU <https://github.com/ZaneHannanAU>
35// Jeremie Rodriguez <https://github.com/jeremiergz>
36// Samuel Ainsworth <https://github.com/samuela>
37// Kyle Uehlein <https://github.com/kuehlein>
38// Jordi Oliveras Rovira <https://github.com/j-oliveras>
39// Thanik Bhongbhibhat <https://github.com/bhongy>
40// Ivan Sieder <https://github.com/ivansieder>
41// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
42
43// NOTE: These definitions support NodeJS and TypeScript 3.2.
44
45// NOTE: TypeScript version-specific augmentations can be found in the following paths:
46// - ~/base.d.ts - Shared definitions common to all TypeScript versions
47// - ~/index.d.ts - Definitions specific to TypeScript 2.1
48// - ~/ts3.2/index.d.ts - Definitions specific to TypeScript 3.2
49
50// NOTE: Augmentations for TypeScript 3.2 and later should use individual files for overrides
51// within the respective ~/ts3.2 (or later) folder. However, this is disallowed for versions
52// prior to TypeScript 3.2, so the older definitions will be found here.
53
54// Base definitions for all NodeJS modules that are not specific to any version of TypeScript:
55/// <reference path="base.d.ts" />
56
57// TypeScript 2.1-specific augmentations:
58
59// Forward-declarations for needed types from es2015 and later (in case users are using `--lib es5`)
60// Empty interfaces are used here which merge fine with the real declarations in the lib XXX files
61// just to ensure the names are known and node typings can be sued without importing these libs.
62// if someone really needs these types the libs need to be added via --lib or in tsconfig.json
63interface MapConstructor { }
64interface WeakMapConstructor { }
65interface SetConstructor { }
66interface WeakSetConstructor { }
67interface Set<T> {}
68interface Map<K, V> {}
69interface ReadonlySet<T> {}
70interface IteratorResult<T> { }
71interface Iterable<T> { }
72interface Iterator<T> {
73 next(value?: any): IteratorResult<T>;
74}
75interface IterableIterator<T> { }
76interface AsyncIterableIterator<T> {}
77interface SymbolConstructor {
78 readonly iterator: symbol;
79 readonly asyncIterator: symbol;
80}
81declare var Symbol: SymbolConstructor;
82// even this is just a forward declaration some properties are added otherwise
83// it would be allowed to pass anything to e.g. Buffer.from()
84interface SharedArrayBuffer {
85 readonly byteLength: number;
86 slice(begin?: number, end?: number): SharedArrayBuffer;
87}
88
89declare module "util" {
90 namespace inspect {
91 const custom: symbol;
92 }
93 namespace promisify {
94 const custom: symbol;
95 }
96 namespace types {
97 function isBigInt64Array(value: any): boolean;
98 function isBigUint64Array(value: any): boolean;
99 }
100}