UNPKG

784 BTypeScriptView Raw
1declare module 'node:domain' {
2 export * from 'domain';
3}
4
5declare module 'domain' {
6 import EventEmitter = require('node:events');
7
8 global {
9 namespace NodeJS {
10 interface Domain extends EventEmitter {
11 run<T>(fn: (...args: any[]) => T, ...args: any[]): T;
12 add(emitter: EventEmitter | Timer): void;
13 remove(emitter: EventEmitter | Timer): void;
14 bind<T extends Function>(cb: T): T;
15 intercept<T extends Function>(cb: T): T;
16 }
17 }
18 }
19
20 interface Domain extends NodeJS.Domain {}
21 class Domain extends EventEmitter {
22 members: Array<EventEmitter | NodeJS.Timer>;
23 enter(): void;
24 exit(): void;
25 }
26
27 function create(): Domain;
28}
29
\No newline at end of file