source: trip-planner-front/node_modules/@types/node/worker_threads.d.ts@ 188ee53

Last change on this file since 188ee53 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 9.5 KB
Line 
1declare module 'worker_threads' {
2 import { Context } from 'vm';
3 import EventEmitter = require('events');
4 import { Readable, Writable } from 'stream';
5 import { promises } from 'fs';
6
7 const isMainThread: boolean;
8 const parentPort: null | MessagePort;
9 const resourceLimits: ResourceLimits;
10 const SHARE_ENV: unique symbol;
11 const threadId: number;
12 const workerData: any;
13
14 class MessageChannel {
15 readonly port1: MessagePort;
16 readonly port2: MessagePort;
17 }
18
19 type TransferListItem = ArrayBuffer | MessagePort | promises.FileHandle;
20
21 class MessagePort extends EventEmitter {
22 close(): void;
23 postMessage(value: any, transferList?: ReadonlyArray<TransferListItem>): void;
24 ref(): void;
25 unref(): void;
26 start(): void;
27
28 addListener(event: "close", listener: () => void): this;
29 addListener(event: "message", listener: (value: any) => void): this;
30 addListener(event: string | symbol, listener: (...args: any[]) => void): this;
31
32 emit(event: "close"): boolean;
33 emit(event: "message", value: any): boolean;
34 emit(event: string | symbol, ...args: any[]): boolean;
35
36 on(event: "close", listener: () => void): this;
37 on(event: "message", listener: (value: any) => void): this;
38 on(event: string | symbol, listener: (...args: any[]) => void): this;
39
40 once(event: "close", listener: () => void): this;
41 once(event: "message", listener: (value: any) => void): this;
42 once(event: string | symbol, listener: (...args: any[]) => void): this;
43
44 prependListener(event: "close", listener: () => void): this;
45 prependListener(event: "message", listener: (value: any) => void): this;
46 prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
47
48 prependOnceListener(event: "close", listener: () => void): this;
49 prependOnceListener(event: "message", listener: (value: any) => void): this;
50 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
51
52 removeListener(event: "close", listener: () => void): this;
53 removeListener(event: "message", listener: (value: any) => void): this;
54 removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
55
56 off(event: "close", listener: () => void): this;
57 off(event: "message", listener: (value: any) => void): this;
58 off(event: string | symbol, listener: (...args: any[]) => void): this;
59 }
60
61 interface WorkerOptions {
62 eval?: boolean | undefined;
63 env?: NodeJS.ProcessEnv | typeof SHARE_ENV | undefined;
64 workerData?: any;
65 stdin?: boolean | undefined;
66 stdout?: boolean | undefined;
67 stderr?: boolean | undefined;
68 execArgv?: string[] | undefined;
69 resourceLimits?: ResourceLimits | undefined;
70 /**
71 * Additional data to send in the first worker message.
72 */
73 transferList?: TransferListItem[] | undefined;
74 trackUnmanagedFds?: boolean | undefined;
75 }
76
77 interface ResourceLimits {
78 /**
79 * The maximum size of a heap space for recently created objects.
80 */
81 maxYoungGenerationSizeMb?: number | undefined;
82 /**
83 * The maximum size of the main heap in MB.
84 */
85 maxOldGenerationSizeMb?: number | undefined;
86 /**
87 * The size of a pre-allocated memory range used for generated code.
88 */
89 codeRangeSizeMb?: number | undefined;
90 /**
91 * The default maximum stack size for the thread. Small values may lead to unusable Worker instances.
92 * @default 4
93 */
94 stackSizeMb?: number | undefined;
95 }
96
97 class Worker extends EventEmitter {
98 readonly stdin: Writable | null;
99 readonly stdout: Readable;
100 readonly stderr: Readable;
101 readonly threadId: number;
102 readonly resourceLimits?: ResourceLimits | undefined;
103
104 constructor(filename: string, options?: WorkerOptions);
105
106 postMessage(value: any, transferList?: ReadonlyArray<TransferListItem>): void;
107 ref(): void;
108 unref(): void;
109 /**
110 * Stop all JavaScript execution in the worker thread as soon as possible.
111 * Returns a Promise for the exit code that is fulfilled when the `exit` event is emitted.
112 */
113 terminate(): Promise<number>;
114
115 addListener(event: "error", listener: (err: Error) => void): this;
116 addListener(event: "exit", listener: (exitCode: number) => void): this;
117 addListener(event: "message", listener: (value: any) => void): this;
118 addListener(event: "messageerror", listener: (error: Error) => void): this;
119 addListener(event: "online", listener: () => void): this;
120 addListener(event: string | symbol, listener: (...args: any[]) => void): this;
121
122 emit(event: "error", err: Error): boolean;
123 emit(event: "exit", exitCode: number): boolean;
124 emit(event: "message", value: any): boolean;
125 emit(event: "messageerror", error: Error): boolean;
126 emit(event: "online"): boolean;
127 emit(event: string | symbol, ...args: any[]): boolean;
128
129 on(event: "error", listener: (err: Error) => void): this;
130 on(event: "exit", listener: (exitCode: number) => void): this;
131 on(event: "message", listener: (value: any) => void): this;
132 on(event: "messageerror", listener: (error: Error) => void): this;
133 on(event: "online", listener: () => void): this;
134 on(event: string | symbol, listener: (...args: any[]) => void): this;
135
136 once(event: "error", listener: (err: Error) => void): this;
137 once(event: "exit", listener: (exitCode: number) => void): this;
138 once(event: "message", listener: (value: any) => void): this;
139 once(event: "messageerror", listener: (error: Error) => void): this;
140 once(event: "online", listener: () => void): this;
141 once(event: string | symbol, listener: (...args: any[]) => void): this;
142
143 prependListener(event: "error", listener: (err: Error) => void): this;
144 prependListener(event: "exit", listener: (exitCode: number) => void): this;
145 prependListener(event: "message", listener: (value: any) => void): this;
146 prependListener(event: "messageerror", listener: (error: Error) => void): this;
147 prependListener(event: "online", listener: () => void): this;
148 prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
149
150 prependOnceListener(event: "error", listener: (err: Error) => void): this;
151 prependOnceListener(event: "exit", listener: (exitCode: number) => void): this;
152 prependOnceListener(event: "message", listener: (value: any) => void): this;
153 prependOnceListener(event: "messageerror", listener: (error: Error) => void): this;
154 prependOnceListener(event: "online", listener: () => void): this;
155 prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
156
157 removeListener(event: "error", listener: (err: Error) => void): this;
158 removeListener(event: "exit", listener: (exitCode: number) => void): this;
159 removeListener(event: "message", listener: (value: any) => void): this;
160 removeListener(event: "messageerror", listener: (error: Error) => void): this;
161 removeListener(event: "online", listener: () => void): this;
162 removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
163
164 off(event: "error", listener: (err: Error) => void): this;
165 off(event: "exit", listener: (exitCode: number) => void): this;
166 off(event: "message", listener: (value: any) => void): this;
167 off(event: "messageerror", listener: (error: Error) => void): this;
168 off(event: "online", listener: () => void): this;
169 off(event: string | symbol, listener: (...args: any[]) => void): this;
170 }
171
172 /**
173 * Mark an object as not transferable.
174 * If `object` occurs in the transfer list of a `port.postMessage()` call, it will be ignored.
175 *
176 * In particular, this makes sense for objects that can be cloned, rather than transferred,
177 * and which are used by other objects on the sending side. For example, Node.js marks
178 * the `ArrayBuffer`s it uses for its Buffer pool with this.
179 *
180 * This operation cannot be undone.
181 */
182 function markAsUntransferable(object: object): void;
183
184 /**
185 * Transfer a `MessagePort` to a different `vm` Context. The original `port`
186 * object will be rendered unusable, and the returned `MessagePort` instance will
187 * take its place.
188 *
189 * The returned `MessagePort` will be an object in the target context, and will
190 * inherit from its global `Object` class. Objects passed to the
191 * `port.onmessage()` listener will also be created in the target context
192 * and inherit from its global `Object` class.
193 *
194 * However, the created `MessagePort` will no longer inherit from
195 * `EventEmitter`, and only `port.onmessage()` can be used to receive
196 * events using it.
197 */
198 function moveMessagePortToContext(port: MessagePort, context: Context): MessagePort;
199
200 /**
201 * Receive a single message from a given `MessagePort`. If no message is available,
202 * `undefined` is returned, otherwise an object with a single `message` property
203 * that contains the message payload, corresponding to the oldest message in the
204 * `MessagePort`’s queue.
205 */
206 function receiveMessageOnPort(port: MessagePort): { message: any } | undefined;
207}
Note: See TracBrowser for help on using the repository browser.