1 | declare module "worker_threads" {
|
2 | import { EventEmitter } from "events";
|
3 | import { Readable, Writable } from "stream";
|
4 |
|
5 | const isMainThread: boolean;
|
6 | const parentPort: null | MessagePort;
|
7 | const threadId: number;
|
8 | const workerData: any;
|
9 |
|
10 | class MessageChannel {
|
11 | readonly port1: MessagePort;
|
12 | readonly port2: MessagePort;
|
13 | }
|
14 |
|
15 | class MessagePort extends EventEmitter {
|
16 | close(): void;
|
17 | postMessage(value: any, transferList?: ReadonlyArray<ArrayBuffer | MessagePort>): void;
|
18 | ref(): void;
|
19 | unref(): void;
|
20 | start(): void;
|
21 |
|
22 | addListener(event: "close", listener: () => void): this;
|
23 | addListener(event: "message", listener: (value: any) => void): this;
|
24 | addListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
25 |
|
26 | emit(event: "close"): boolean;
|
27 | emit(event: "message", value: any): boolean;
|
28 | emit(event: string | symbol, ...args: any[]): boolean;
|
29 |
|
30 | on(event: "close", listener: () => void): this;
|
31 | on(event: "message", listener: (value: any) => void): this;
|
32 | on(event: string | symbol, listener: (...args: any[]) => void): this;
|
33 |
|
34 | once(event: "close", listener: () => void): this;
|
35 | once(event: "message", listener: (value: any) => void): this;
|
36 | once(event: string | symbol, listener: (...args: any[]) => void): this;
|
37 |
|
38 | prependListener(event: "close", listener: () => void): this;
|
39 | prependListener(event: "message", listener: (value: any) => void): this;
|
40 | prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
41 |
|
42 | prependOnceListener(event: "close", listener: () => void): this;
|
43 | prependOnceListener(event: "message", listener: (value: any) => void): this;
|
44 | prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
45 |
|
46 | removeListener(event: "close", listener: () => void): this;
|
47 | removeListener(event: "message", listener: (value: any) => void): this;
|
48 | removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
49 |
|
50 | off(event: "close", listener: () => void): this;
|
51 | off(event: "message", listener: (value: any) => void): this;
|
52 | off(event: string | symbol, listener: (...args: any[]) => void): this;
|
53 | }
|
54 |
|
55 | interface WorkerOptions {
|
56 | eval?: boolean;
|
57 | workerData?: any;
|
58 | stdin?: boolean;
|
59 | stdout?: boolean;
|
60 | stderr?: boolean;
|
61 | }
|
62 |
|
63 | class Worker extends EventEmitter {
|
64 | readonly stdin: Writable | null;
|
65 | readonly stdout: Readable;
|
66 | readonly stderr: Readable;
|
67 | readonly threadId: number;
|
68 |
|
69 | constructor(filename: string, options?: WorkerOptions);
|
70 |
|
71 | postMessage(value: any, transferList?: ReadonlyArray<ArrayBuffer | MessagePort>): void;
|
72 | ref(): void;
|
73 | unref(): void;
|
74 | terminate(callback?: (err: any, exitCode: number) => void): void;
|
75 |
|
76 | addListener(event: "error", listener: (err: any) => void): this;
|
77 | addListener(event: "exit", listener: (exitCode: number) => void): this;
|
78 | addListener(event: "message", listener: (value: any) => void): this;
|
79 | addListener(event: "online", listener: () => void): this;
|
80 | addListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
81 |
|
82 | emit(event: "error", err: any): boolean;
|
83 | emit(event: "exit", exitCode: number): boolean;
|
84 | emit(event: "message", value: any): boolean;
|
85 | emit(event: "online"): boolean;
|
86 | emit(event: string | symbol, ...args: any[]): boolean;
|
87 |
|
88 | on(event: "error", listener: (err: any) => void): this;
|
89 | on(event: "exit", listener: (exitCode: number) => void): this;
|
90 | on(event: "message", listener: (value: any) => void): this;
|
91 | on(event: "online", listener: () => void): this;
|
92 | on(event: string | symbol, listener: (...args: any[]) => void): this;
|
93 |
|
94 | once(event: "error", listener: (err: any) => void): this;
|
95 | once(event: "exit", listener: (exitCode: number) => void): this;
|
96 | once(event: "message", listener: (value: any) => void): this;
|
97 | once(event: "online", listener: () => void): this;
|
98 | once(event: string | symbol, listener: (...args: any[]) => void): this;
|
99 |
|
100 | prependListener(event: "error", listener: (err: any) => void): this;
|
101 | prependListener(event: "exit", listener: (exitCode: number) => void): this;
|
102 | prependListener(event: "message", listener: (value: any) => void): this;
|
103 | prependListener(event: "online", listener: () => void): this;
|
104 | prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
105 |
|
106 | prependOnceListener(event: "error", listener: (err: any) => void): this;
|
107 | prependOnceListener(event: "exit", listener: (exitCode: number) => void): this;
|
108 | prependOnceListener(event: "message", listener: (value: any) => void): this;
|
109 | prependOnceListener(event: "online", listener: () => void): this;
|
110 | prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
111 |
|
112 | removeListener(event: "error", listener: (err: any) => void): this;
|
113 | removeListener(event: "exit", listener: (exitCode: number) => void): this;
|
114 | removeListener(event: "message", listener: (value: any) => void): this;
|
115 | removeListener(event: "online", listener: () => void): this;
|
116 | removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
|
117 |
|
118 | off(event: "error", listener: (err: any) => void): this;
|
119 | off(event: "exit", listener: (exitCode: number) => void): this;
|
120 | off(event: "message", listener: (value: any) => void): this;
|
121 | off(event: "online", listener: () => void): this;
|
122 | off(event: string | symbol, listener: (...args: any[]) => void): this;
|
123 | }
|
124 | }
|