typespeed 2.4.1 → 2.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/dist/introduction/decorator/example-import.class.js +17 -0
  2. package/dist/introduction/decorator/main-app.js +14 -0
  3. package/dist/introduction/decorator/main-decorator.js +127 -0
  4. package/dist/introduction/decorator/main-import.js +1 -0
  5. package/dist/introduction/decorator/main-reflect.js +38 -0
  6. package/dist/introduction/web-services/db-init.js +33 -0
  7. package/dist/introduction/web-services/db-singleton.js +49 -0
  8. package/dist/introduction/web-services/http-if.js +12 -0
  9. package/dist/introduction/web-services/http-init.js +7 -0
  10. package/dist/introduction/web-services/http-router.js +23 -0
  11. package/dist/{database.decorator.js → src/database.decorator.js} +2 -4
  12. package/package.json +2 -4
  13. package/src/database.decorator.ts +2 -4
  14. package/tsconfig.json +2 -1
  15. package/app/node_modules/.package-lock.json +0 -134
  16. package/app/node_modules/@types/body-parser/LICENSE +0 -21
  17. package/app/node_modules/@types/body-parser/README.md +0 -16
  18. package/app/node_modules/@types/body-parser/index.d.ts +0 -107
  19. package/app/node_modules/@types/body-parser/package.json +0 -58
  20. package/app/node_modules/@types/connect/LICENSE +0 -21
  21. package/app/node_modules/@types/connect/README.md +0 -16
  22. package/app/node_modules/@types/connect/index.d.ts +0 -93
  23. package/app/node_modules/@types/connect/package.json +0 -32
  24. package/app/node_modules/@types/express/LICENSE +0 -21
  25. package/app/node_modules/@types/express/README.md +0 -16
  26. package/app/node_modules/@types/express/index.d.ts +0 -136
  27. package/app/node_modules/@types/express/package.json +0 -45
  28. package/app/node_modules/@types/express-serve-static-core/LICENSE +0 -21
  29. package/app/node_modules/@types/express-serve-static-core/README.md +0 -16
  30. package/app/node_modules/@types/express-serve-static-core/index.d.ts +0 -1281
  31. package/app/node_modules/@types/express-serve-static-core/package.json +0 -55
  32. package/app/node_modules/@types/mime/LICENSE +0 -21
  33. package/app/node_modules/@types/mime/Mime.d.ts +0 -10
  34. package/app/node_modules/@types/mime/README.md +0 -16
  35. package/app/node_modules/@types/mime/index.d.ts +0 -35
  36. package/app/node_modules/@types/mime/lite.d.ts +0 -7
  37. package/app/node_modules/@types/mime/package.json +0 -29
  38. package/app/node_modules/@types/node/LICENSE +0 -21
  39. package/app/node_modules/@types/node/README.md +0 -16
  40. package/app/node_modules/@types/node/assert/strict.d.ts +0 -8
  41. package/app/node_modules/@types/node/assert.d.ts +0 -961
  42. package/app/node_modules/@types/node/async_hooks.d.ts +0 -518
  43. package/app/node_modules/@types/node/buffer.d.ts +0 -2323
  44. package/app/node_modules/@types/node/child_process.d.ts +0 -1399
  45. package/app/node_modules/@types/node/cluster.d.ts +0 -410
  46. package/app/node_modules/@types/node/console.d.ts +0 -412
  47. package/app/node_modules/@types/node/constants.d.ts +0 -18
  48. package/app/node_modules/@types/node/crypto.d.ts +0 -3973
  49. package/app/node_modules/@types/node/dgram.d.ts +0 -545
  50. package/app/node_modules/@types/node/diagnostics_channel.d.ts +0 -192
  51. package/app/node_modules/@types/node/dns/promises.d.ts +0 -370
  52. package/app/node_modules/@types/node/dns.d.ts +0 -660
  53. package/app/node_modules/@types/node/dom-events.d.ts +0 -126
  54. package/app/node_modules/@types/node/domain.d.ts +0 -170
  55. package/app/node_modules/@types/node/events.d.ts +0 -682
  56. package/app/node_modules/@types/node/fs/promises.d.ts +0 -1159
  57. package/app/node_modules/@types/node/fs.d.ts +0 -3976
  58. package/app/node_modules/@types/node/globals.d.ts +0 -303
  59. package/app/node_modules/@types/node/globals.global.d.ts +0 -1
  60. package/app/node_modules/@types/node/http.d.ts +0 -1714
  61. package/app/node_modules/@types/node/http2.d.ts +0 -2133
  62. package/app/node_modules/@types/node/https.d.ts +0 -542
  63. package/app/node_modules/@types/node/index.d.ts +0 -134
  64. package/app/node_modules/@types/node/inspector.d.ts +0 -2741
  65. package/app/node_modules/@types/node/module.d.ts +0 -115
  66. package/app/node_modules/@types/node/net.d.ts +0 -883
  67. package/app/node_modules/@types/node/os.d.ts +0 -473
  68. package/app/node_modules/@types/node/package.json +0 -237
  69. package/app/node_modules/@types/node/path.d.ts +0 -191
  70. package/app/node_modules/@types/node/perf_hooks.d.ts +0 -625
  71. package/app/node_modules/@types/node/process.d.ts +0 -1488
  72. package/app/node_modules/@types/node/punycode.d.ts +0 -117
  73. package/app/node_modules/@types/node/querystring.d.ts +0 -131
  74. package/app/node_modules/@types/node/readline/promises.d.ts +0 -143
  75. package/app/node_modules/@types/node/readline.d.ts +0 -653
  76. package/app/node_modules/@types/node/repl.d.ts +0 -424
  77. package/app/node_modules/@types/node/stream/consumers.d.ts +0 -12
  78. package/app/node_modules/@types/node/stream/promises.d.ts +0 -42
  79. package/app/node_modules/@types/node/stream/web.d.ts +0 -330
  80. package/app/node_modules/@types/node/stream.d.ts +0 -1440
  81. package/app/node_modules/@types/node/string_decoder.d.ts +0 -67
  82. package/app/node_modules/@types/node/test.d.ts +0 -783
  83. package/app/node_modules/@types/node/timers/promises.d.ts +0 -93
  84. package/app/node_modules/@types/node/timers.d.ts +0 -101
  85. package/app/node_modules/@types/node/tls.d.ts +0 -1111
  86. package/app/node_modules/@types/node/trace_events.d.ts +0 -171
  87. package/app/node_modules/@types/node/ts4.8/assert/strict.d.ts +0 -8
  88. package/app/node_modules/@types/node/ts4.8/assert.d.ts +0 -961
  89. package/app/node_modules/@types/node/ts4.8/async_hooks.d.ts +0 -518
  90. package/app/node_modules/@types/node/ts4.8/buffer.d.ts +0 -2323
  91. package/app/node_modules/@types/node/ts4.8/child_process.d.ts +0 -1399
  92. package/app/node_modules/@types/node/ts4.8/cluster.d.ts +0 -410
  93. package/app/node_modules/@types/node/ts4.8/console.d.ts +0 -412
  94. package/app/node_modules/@types/node/ts4.8/constants.d.ts +0 -18
  95. package/app/node_modules/@types/node/ts4.8/crypto.d.ts +0 -3972
  96. package/app/node_modules/@types/node/ts4.8/dgram.d.ts +0 -545
  97. package/app/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +0 -192
  98. package/app/node_modules/@types/node/ts4.8/dns/promises.d.ts +0 -370
  99. package/app/node_modules/@types/node/ts4.8/dns.d.ts +0 -660
  100. package/app/node_modules/@types/node/ts4.8/dom-events.d.ts +0 -126
  101. package/app/node_modules/@types/node/ts4.8/domain.d.ts +0 -170
  102. package/app/node_modules/@types/node/ts4.8/events.d.ts +0 -682
  103. package/app/node_modules/@types/node/ts4.8/fs/promises.d.ts +0 -1138
  104. package/app/node_modules/@types/node/ts4.8/fs.d.ts +0 -3875
  105. package/app/node_modules/@types/node/ts4.8/globals.d.ts +0 -302
  106. package/app/node_modules/@types/node/ts4.8/globals.global.d.ts +0 -1
  107. package/app/node_modules/@types/node/ts4.8/http.d.ts +0 -1651
  108. package/app/node_modules/@types/node/ts4.8/http2.d.ts +0 -2133
  109. package/app/node_modules/@types/node/ts4.8/https.d.ts +0 -542
  110. package/app/node_modules/@types/node/ts4.8/index.d.ts +0 -88
  111. package/app/node_modules/@types/node/ts4.8/inspector.d.ts +0 -2741
  112. package/app/node_modules/@types/node/ts4.8/module.d.ts +0 -115
  113. package/app/node_modules/@types/node/ts4.8/net.d.ts +0 -883
  114. package/app/node_modules/@types/node/ts4.8/os.d.ts +0 -473
  115. package/app/node_modules/@types/node/ts4.8/path.d.ts +0 -191
  116. package/app/node_modules/@types/node/ts4.8/perf_hooks.d.ts +0 -625
  117. package/app/node_modules/@types/node/ts4.8/process.d.ts +0 -1488
  118. package/app/node_modules/@types/node/ts4.8/punycode.d.ts +0 -117
  119. package/app/node_modules/@types/node/ts4.8/querystring.d.ts +0 -131
  120. package/app/node_modules/@types/node/ts4.8/readline/promises.d.ts +0 -143
  121. package/app/node_modules/@types/node/ts4.8/readline.d.ts +0 -653
  122. package/app/node_modules/@types/node/ts4.8/repl.d.ts +0 -424
  123. package/app/node_modules/@types/node/ts4.8/stream/consumers.d.ts +0 -12
  124. package/app/node_modules/@types/node/ts4.8/stream/promises.d.ts +0 -42
  125. package/app/node_modules/@types/node/ts4.8/stream/web.d.ts +0 -330
  126. package/app/node_modules/@types/node/ts4.8/stream.d.ts +0 -1440
  127. package/app/node_modules/@types/node/ts4.8/string_decoder.d.ts +0 -67
  128. package/app/node_modules/@types/node/ts4.8/test.d.ts +0 -784
  129. package/app/node_modules/@types/node/ts4.8/timers/promises.d.ts +0 -93
  130. package/app/node_modules/@types/node/ts4.8/timers.d.ts +0 -94
  131. package/app/node_modules/@types/node/ts4.8/tls.d.ts +0 -1111
  132. package/app/node_modules/@types/node/ts4.8/trace_events.d.ts +0 -171
  133. package/app/node_modules/@types/node/ts4.8/tty.d.ts +0 -206
  134. package/app/node_modules/@types/node/ts4.8/url.d.ts +0 -902
  135. package/app/node_modules/@types/node/ts4.8/util.d.ts +0 -2017
  136. package/app/node_modules/@types/node/ts4.8/v8.d.ts +0 -541
  137. package/app/node_modules/@types/node/ts4.8/vm.d.ts +0 -644
  138. package/app/node_modules/@types/node/ts4.8/wasi.d.ts +0 -158
  139. package/app/node_modules/@types/node/ts4.8/worker_threads.d.ts +0 -695
  140. package/app/node_modules/@types/node/ts4.8/zlib.d.ts +0 -517
  141. package/app/node_modules/@types/node/tty.d.ts +0 -206
  142. package/app/node_modules/@types/node/url.d.ts +0 -902
  143. package/app/node_modules/@types/node/util.d.ts +0 -2017
  144. package/app/node_modules/@types/node/v8.d.ts +0 -541
  145. package/app/node_modules/@types/node/vm.d.ts +0 -644
  146. package/app/node_modules/@types/node/wasi.d.ts +0 -158
  147. package/app/node_modules/@types/node/worker_threads.d.ts +0 -695
  148. package/app/node_modules/@types/node/zlib.d.ts +0 -517
  149. package/app/node_modules/@types/qs/LICENSE +0 -21
  150. package/app/node_modules/@types/qs/README.md +0 -16
  151. package/app/node_modules/@types/qs/index.d.ts +0 -62
  152. package/app/node_modules/@types/qs/package.json +0 -65
  153. package/app/node_modules/@types/range-parser/LICENSE +0 -21
  154. package/app/node_modules/@types/range-parser/README.md +0 -55
  155. package/app/node_modules/@types/range-parser/index.d.ts +0 -35
  156. package/app/node_modules/@types/range-parser/package.json +0 -25
  157. package/app/node_modules/@types/send/LICENSE +0 -21
  158. package/app/node_modules/@types/send/README.md +0 -16
  159. package/app/node_modules/@types/send/index.d.ts +0 -231
  160. package/app/node_modules/@types/send/package.json +0 -33
  161. package/app/node_modules/@types/serve-static/LICENSE +0 -21
  162. package/app/node_modules/@types/serve-static/README.md +0 -16
  163. package/app/node_modules/@types/serve-static/index.d.ts +0 -113
  164. package/app/node_modules/@types/serve-static/package.json +0 -38
  165. package/app/node_modules/colors/LICENSE +0 -25
  166. package/app/node_modules/colors/README.md +0 -221
  167. package/app/node_modules/colors/examples/normal-usage.js +0 -82
  168. package/app/node_modules/colors/examples/safe-string.js +0 -79
  169. package/app/node_modules/colors/index.d.ts +0 -136
  170. package/app/node_modules/colors/lib/colors.js +0 -211
  171. package/app/node_modules/colors/lib/custom/trap.js +0 -46
  172. package/app/node_modules/colors/lib/custom/zalgo.js +0 -110
  173. package/app/node_modules/colors/lib/extendStringPrototype.js +0 -110
  174. package/app/node_modules/colors/lib/index.js +0 -13
  175. package/app/node_modules/colors/lib/maps/america.js +0 -10
  176. package/app/node_modules/colors/lib/maps/rainbow.js +0 -12
  177. package/app/node_modules/colors/lib/maps/random.js +0 -11
  178. package/app/node_modules/colors/lib/maps/zebra.js +0 -5
  179. package/app/node_modules/colors/lib/styles.js +0 -95
  180. package/app/node_modules/colors/lib/system/has-flag.js +0 -35
  181. package/app/node_modules/colors/lib/system/supports-colors.js +0 -151
  182. package/app/node_modules/colors/package.json +0 -45
  183. package/app/node_modules/colors/safe.d.ts +0 -48
  184. package/app/node_modules/colors/safe.js +0 -10
  185. package/app/node_modules/colors/themes/generic-logging.js +0 -12
  186. package/app/node_modules/dateformat/LICENSE +0 -20
  187. package/app/node_modules/dateformat/Readme.md +0 -204
  188. package/app/node_modules/dateformat/lib/dateformat.js +0 -1
  189. package/app/node_modules/dateformat/package.json +0 -38
  190. package/app/node_modules/mkdirp/CHANGELOG.md +0 -15
  191. package/app/node_modules/mkdirp/LICENSE +0 -21
  192. package/app/node_modules/mkdirp/bin/cmd.js +0 -68
  193. package/app/node_modules/mkdirp/index.js +0 -31
  194. package/app/node_modules/mkdirp/lib/find-made.js +0 -29
  195. package/app/node_modules/mkdirp/lib/mkdirp-manual.js +0 -64
  196. package/app/node_modules/mkdirp/lib/mkdirp-native.js +0 -39
  197. package/app/node_modules/mkdirp/lib/opts-arg.js +0 -23
  198. package/app/node_modules/mkdirp/lib/path-arg.js +0 -29
  199. package/app/node_modules/mkdirp/lib/use-native.js +0 -10
  200. package/app/node_modules/mkdirp/package.json +0 -44
  201. package/app/node_modules/mkdirp/readme.markdown +0 -266
  202. package/app/node_modules/tinytim/.travis.yml +0 -5
  203. package/app/node_modules/tinytim/README.md +0 -212
  204. package/app/node_modules/tinytim/index.js +0 -1
  205. package/app/node_modules/tinytim/lib/index.js +0 -55
  206. package/app/node_modules/tinytim/lib/tinytim.js +0 -50
  207. package/app/node_modules/tinytim/package.json +0 -24
  208. package/app/node_modules/tinytim/test/files/html.tim +0 -1
  209. package/app/node_modules/tinytim/test/files/string.tim +0 -1
  210. package/app/node_modules/tinytim/test/files/string2.tim +0 -1
  211. package/app/node_modules/tinytim/test/render-file-replace.js +0 -39
  212. package/app/node_modules/tinytim/test/render-replace.js +0 -94
  213. package/app/node_modules/tinytim/test/tim-replace.js +0 -95
  214. package/app/node_modules/tracer/README.md +0 -747
  215. package/app/node_modules/tracer/lib/color_console.js +0 -15
  216. package/app/node_modules/tracer/lib/console.js +0 -165
  217. package/app/node_modules/tracer/lib/dailyfile.js +0 -92
  218. package/app/node_modules/tracer/lib/index.js +0 -10
  219. package/app/node_modules/tracer/lib/settings.js +0 -25
  220. package/app/node_modules/tracer/lib/utils.js +0 -58
  221. package/app/node_modules/tracer/package.json +0 -53
  222. package/app/node_modules/tracer/types/index.d.ts +0 -189
  223. package/dist/scaffold/templates/front-page.class.ts.tpl +0 -12
  224. package/dist/scaffold/templates/main.ts.tpl +0 -13
  225. package/dist/scaffold/templates/nodemon.json.tpl +0 -7
  226. package/dist/scaffold/templates/package.json.tpl +0 -16
  227. package/dist/scaffold/templates/tsconfig.json.tpl +0 -20
  228. /package/dist/{core.decorator.js → src/core.decorator.js} +0 -0
  229. /package/dist/{default → src/default}/default-authentication.class.js +0 -0
  230. /package/dist/{default → src/default}/express-server.class.js +0 -0
  231. /package/dist/{default → src/default}/log-default.class.js +0 -0
  232. /package/dist/{default → src/default}/node-cache.class.js +0 -0
  233. /package/dist/{default → src/default}/pages/404.html +0 -0
  234. /package/dist/{default → src/default}/pages/500.html +0 -0
  235. /package/dist/{default → src/default}/rabbitmq.class.js +0 -0
  236. /package/dist/{default → src/default}/read-write-db.class.js +0 -0
  237. /package/dist/{default → src/default}/redis.class.js +0 -0
  238. /package/dist/{default → src/default}/socket-io.class.js +0 -0
  239. /package/dist/{factory → src/factory}/authentication-factory.class.js +0 -0
  240. /package/dist/{factory → src/factory}/cache-factory.class.js +0 -0
  241. /package/dist/{factory → src/factory}/data-source-factory.class.js +0 -0
  242. /package/dist/{factory → src/factory}/log-factory.class.js +0 -0
  243. /package/dist/{factory → src/factory}/server-factory.class.js +0 -0
  244. /package/dist/{route.decorator.js → src/route.decorator.js} +0 -0
  245. /package/dist/{scaffold → src/scaffold}/command.js +0 -0
  246. /package/dist/{typespeed.js → src/typespeed.js} +0 -0
@@ -1,126 +0,0 @@
1
- export {}; // Don't export anything!
2
-
3
- //// DOM-like Events
4
- // NB: The Event / EventTarget / EventListener implementations below were copied
5
- // from lib.dom.d.ts, then edited to reflect Node's documentation at
6
- // https://nodejs.org/api/events.html#class-eventtarget.
7
- // Please read that link to understand important implementation differences.
8
-
9
- // This conditional type will be the existing global Event in a browser, or
10
- // the copy below in a Node environment.
11
- type __Event = typeof globalThis extends { onmessage: any, Event: any }
12
- ? {}
13
- : {
14
- /** This is not used in Node.js and is provided purely for completeness. */
15
- readonly bubbles: boolean;
16
- /** Alias for event.stopPropagation(). This is not used in Node.js and is provided purely for completeness. */
17
- cancelBubble: () => void;
18
- /** True if the event was created with the cancelable option */
19
- readonly cancelable: boolean;
20
- /** This is not used in Node.js and is provided purely for completeness. */
21
- readonly composed: boolean;
22
- /** Returns an array containing the current EventTarget as the only entry or empty if the event is not being dispatched. This is not used in Node.js and is provided purely for completeness. */
23
- composedPath(): [EventTarget?]
24
- /** Alias for event.target. */
25
- readonly currentTarget: EventTarget | null;
26
- /** Is true if cancelable is true and event.preventDefault() has been called. */
27
- readonly defaultPrevented: boolean;
28
- /** This is not used in Node.js and is provided purely for completeness. */
29
- readonly eventPhase: 0 | 2;
30
- /** The `AbortSignal` "abort" event is emitted with `isTrusted` set to `true`. The value is `false` in all other cases. */
31
- readonly isTrusted: boolean;
32
- /** Sets the `defaultPrevented` property to `true` if `cancelable` is `true`. */
33
- preventDefault(): void;
34
- /** This is not used in Node.js and is provided purely for completeness. */
35
- returnValue: boolean;
36
- /** Alias for event.target. */
37
- readonly srcElement: EventTarget | null;
38
- /** Stops the invocation of event listeners after the current one completes. */
39
- stopImmediatePropagation(): void;
40
- /** This is not used in Node.js and is provided purely for completeness. */
41
- stopPropagation(): void;
42
- /** The `EventTarget` dispatching the event */
43
- readonly target: EventTarget | null;
44
- /** The millisecond timestamp when the Event object was created. */
45
- readonly timeStamp: number;
46
- /** Returns the type of event, e.g. "click", "hashchange", or "submit". */
47
- readonly type: string;
48
- };
49
-
50
- // See comment above explaining conditional type
51
- type __EventTarget = typeof globalThis extends { onmessage: any, EventTarget: any }
52
- ? {}
53
- : {
54
- /**
55
- * Adds a new handler for the `type` event. Any given `listener` is added only once per `type` and per `capture` option value.
56
- *
57
- * If the `once` option is true, the `listener` is removed after the next time a `type` event is dispatched.
58
- *
59
- * The `capture` option is not used by Node.js in any functional way other than tracking registered event listeners per the `EventTarget` specification.
60
- * Specifically, the `capture` option is used as part of the key when registering a `listener`.
61
- * Any individual `listener` may be added once with `capture = false`, and once with `capture = true`.
62
- */
63
- addEventListener(
64
- type: string,
65
- listener: EventListener | EventListenerObject,
66
- options?: AddEventListenerOptions | boolean,
67
- ): void;
68
- /** Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise. */
69
- dispatchEvent(event: Event): boolean;
70
- /** Removes the event listener in target's event listener list with the same type, callback, and options. */
71
- removeEventListener(
72
- type: string,
73
- listener: EventListener | EventListenerObject,
74
- options?: EventListenerOptions | boolean,
75
- ): void;
76
- };
77
-
78
- interface EventInit {
79
- bubbles?: boolean;
80
- cancelable?: boolean;
81
- composed?: boolean;
82
- }
83
-
84
- interface EventListenerOptions {
85
- /** Not directly used by Node.js. Added for API completeness. Default: `false`. */
86
- capture?: boolean;
87
- }
88
-
89
- interface AddEventListenerOptions extends EventListenerOptions {
90
- /** When `true`, the listener is automatically removed when it is first invoked. Default: `false`. */
91
- once?: boolean;
92
- /** When `true`, serves as a hint that the listener will not call the `Event` object's `preventDefault()` method. Default: false. */
93
- passive?: boolean;
94
- }
95
-
96
- interface EventListener {
97
- (evt: Event): void;
98
- }
99
-
100
- interface EventListenerObject {
101
- handleEvent(object: Event): void;
102
- }
103
-
104
- import {} from 'events'; // Make this an ambient declaration
105
- declare global {
106
- /** An event which takes place in the DOM. */
107
- interface Event extends __Event {}
108
- var Event: typeof globalThis extends { onmessage: any, Event: infer T }
109
- ? T
110
- : {
111
- prototype: __Event;
112
- new (type: string, eventInitDict?: EventInit): __Event;
113
- };
114
-
115
- /**
116
- * EventTarget is a DOM interface implemented by objects that can
117
- * receive events and may have listeners for them.
118
- */
119
- interface EventTarget extends __EventTarget {}
120
- var EventTarget: typeof globalThis extends { onmessage: any, EventTarget: infer T }
121
- ? T
122
- : {
123
- prototype: __EventTarget;
124
- new (): __EventTarget;
125
- };
126
- }
@@ -1,170 +0,0 @@
1
- /**
2
- * **This module is pending deprecation.** Once a replacement API has been
3
- * finalized, this module will be fully deprecated. Most developers should
4
- * **not** have cause to use this module. Users who absolutely must have
5
- * the functionality that domains provide may rely on it for the time being
6
- * but should expect to have to migrate to a different solution
7
- * in the future.
8
- *
9
- * Domains provide a way to handle multiple different IO operations as a
10
- * single group. If any of the event emitters or callbacks registered to a
11
- * domain emit an `'error'` event, or throw an error, then the domain object
12
- * will be notified, rather than losing the context of the error in the`process.on('uncaughtException')` handler, or causing the program to
13
- * exit immediately with an error code.
14
- * @deprecated Since v1.4.2 - Deprecated
15
- * @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/domain.js)
16
- */
17
- declare module 'domain' {
18
- import EventEmitter = require('node:events');
19
- /**
20
- * The `Domain` class encapsulates the functionality of routing errors and
21
- * uncaught exceptions to the active `Domain` object.
22
- *
23
- * To handle the errors that it catches, listen to its `'error'` event.
24
- */
25
- class Domain extends EventEmitter {
26
- /**
27
- * An array of timers and event emitters that have been explicitly added
28
- * to the domain.
29
- */
30
- members: Array<EventEmitter | NodeJS.Timer>;
31
- /**
32
- * The `enter()` method is plumbing used by the `run()`, `bind()`, and`intercept()` methods to set the active domain. It sets `domain.active` and`process.domain` to the domain, and implicitly
33
- * pushes the domain onto the domain
34
- * stack managed by the domain module (see {@link exit} for details on the
35
- * domain stack). The call to `enter()` delimits the beginning of a chain of
36
- * asynchronous calls and I/O operations bound to a domain.
37
- *
38
- * Calling `enter()` changes only the active domain, and does not alter the domain
39
- * itself. `enter()` and `exit()` can be called an arbitrary number of times on a
40
- * single domain.
41
- */
42
- enter(): void;
43
- /**
44
- * The `exit()` method exits the current domain, popping it off the domain stack.
45
- * Any time execution is going to switch to the context of a different chain of
46
- * asynchronous calls, it's important to ensure that the current domain is exited.
47
- * The call to `exit()` delimits either the end of or an interruption to the chain
48
- * of asynchronous calls and I/O operations bound to a domain.
49
- *
50
- * If there are multiple, nested domains bound to the current execution context,`exit()` will exit any domains nested within this domain.
51
- *
52
- * Calling `exit()` changes only the active domain, and does not alter the domain
53
- * itself. `enter()` and `exit()` can be called an arbitrary number of times on a
54
- * single domain.
55
- */
56
- exit(): void;
57
- /**
58
- * Run the supplied function in the context of the domain, implicitly
59
- * binding all event emitters, timers, and lowlevel requests that are
60
- * created in that context. Optionally, arguments can be passed to
61
- * the function.
62
- *
63
- * This is the most basic way to use a domain.
64
- *
65
- * ```js
66
- * const domain = require('domain');
67
- * const fs = require('fs');
68
- * const d = domain.create();
69
- * d.on('error', (er) => {
70
- * console.error('Caught error!', er);
71
- * });
72
- * d.run(() => {
73
- * process.nextTick(() => {
74
- * setTimeout(() => { // Simulating some various async stuff
75
- * fs.open('non-existent file', 'r', (er, fd) => {
76
- * if (er) throw er;
77
- * // proceed...
78
- * });
79
- * }, 100);
80
- * });
81
- * });
82
- * ```
83
- *
84
- * In this example, the `d.on('error')` handler will be triggered, rather
85
- * than crashing the program.
86
- */
87
- run<T>(fn: (...args: any[]) => T, ...args: any[]): T;
88
- /**
89
- * Explicitly adds an emitter to the domain. If any event handlers called by
90
- * the emitter throw an error, or if the emitter emits an `'error'` event, it
91
- * will be routed to the domain's `'error'` event, just like with implicit
92
- * binding.
93
- *
94
- * This also works with timers that are returned from `setInterval()` and `setTimeout()`. If their callback function throws, it will be caught by
95
- * the domain `'error'` handler.
96
- *
97
- * If the Timer or `EventEmitter` was already bound to a domain, it is removed
98
- * from that one, and bound to this one instead.
99
- * @param emitter emitter or timer to be added to the domain
100
- */
101
- add(emitter: EventEmitter | NodeJS.Timer): void;
102
- /**
103
- * The opposite of {@link add}. Removes domain handling from the
104
- * specified emitter.
105
- * @param emitter emitter or timer to be removed from the domain
106
- */
107
- remove(emitter: EventEmitter | NodeJS.Timer): void;
108
- /**
109
- * The returned function will be a wrapper around the supplied callback
110
- * function. When the returned function is called, any errors that are
111
- * thrown will be routed to the domain's `'error'` event.
112
- *
113
- * ```js
114
- * const d = domain.create();
115
- *
116
- * function readSomeFile(filename, cb) {
117
- * fs.readFile(filename, 'utf8', d.bind((er, data) => {
118
- * // If this throws, it will also be passed to the domain.
119
- * return cb(er, data ? JSON.parse(data) : null);
120
- * }));
121
- * }
122
- *
123
- * d.on('error', (er) => {
124
- * // An error occurred somewhere. If we throw it now, it will crash the program
125
- * // with the normal line number and stack message.
126
- * });
127
- * ```
128
- * @param callback The callback function
129
- * @return The bound function
130
- */
131
- bind<T extends Function>(callback: T): T;
132
- /**
133
- * This method is almost identical to {@link bind}. However, in
134
- * addition to catching thrown errors, it will also intercept `Error` objects sent as the first argument to the function.
135
- *
136
- * In this way, the common `if (err) return callback(err);` pattern can be replaced
137
- * with a single error handler in a single place.
138
- *
139
- * ```js
140
- * const d = domain.create();
141
- *
142
- * function readSomeFile(filename, cb) {
143
- * fs.readFile(filename, 'utf8', d.intercept((data) => {
144
- * // Note, the first argument is never passed to the
145
- * // callback since it is assumed to be the 'Error' argument
146
- * // and thus intercepted by the domain.
147
- *
148
- * // If this throws, it will also be passed to the domain
149
- * // so the error-handling logic can be moved to the 'error'
150
- * // event on the domain instead of being repeated throughout
151
- * // the program.
152
- * return cb(null, JSON.parse(data));
153
- * }));
154
- * }
155
- *
156
- * d.on('error', (er) => {
157
- * // An error occurred somewhere. If we throw it now, it will crash the program
158
- * // with the normal line number and stack message.
159
- * });
160
- * ```
161
- * @param callback The callback function
162
- * @return The intercepted function
163
- */
164
- intercept<T extends Function>(callback: T): T;
165
- }
166
- function create(): Domain;
167
- }
168
- declare module 'node:domain' {
169
- export * from 'domain';
170
- }