@igorjs/pure-ts 0.7.4 → 0.7.7

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 (143) hide show
  1. package/README.md +39 -745
  2. package/dist/async/cache.d.ts +1 -6
  3. package/dist/async/cache.d.ts.map +1 -1
  4. package/dist/async/cache.js.map +1 -1
  5. package/dist/async/circuit-breaker.d.ts +1 -6
  6. package/dist/async/circuit-breaker.d.ts.map +1 -1
  7. package/dist/async/circuit-breaker.js.map +1 -1
  8. package/dist/async/index.d.ts +56 -12
  9. package/dist/async/index.d.ts.map +1 -1
  10. package/dist/async/index.js +41 -12
  11. package/dist/async/index.js.map +1 -1
  12. package/dist/async/lazy.d.ts +6 -42
  13. package/dist/async/lazy.d.ts.map +1 -1
  14. package/dist/async/lazy.js.map +1 -1
  15. package/dist/async/pool.d.ts +1 -5
  16. package/dist/async/pool.d.ts.map +1 -1
  17. package/dist/async/pool.js +3 -3
  18. package/dist/async/pool.js.map +1 -1
  19. package/dist/async/rate-limiter.d.ts +1 -6
  20. package/dist/async/rate-limiter.d.ts.map +1 -1
  21. package/dist/async/rate-limiter.js.map +1 -1
  22. package/dist/async/retry.d.ts +7 -9
  23. package/dist/async/retry.d.ts.map +1 -1
  24. package/dist/async/retry.js.map +1 -1
  25. package/dist/async/semaphore.d.ts +2 -7
  26. package/dist/async/semaphore.d.ts.map +1 -1
  27. package/dist/async/semaphore.js.map +1 -1
  28. package/dist/async/stream.d.ts +1 -5
  29. package/dist/async/stream.d.ts.map +1 -1
  30. package/dist/async/stream.js +6 -6
  31. package/dist/async/stream.js.map +1 -1
  32. package/dist/async/task-like.d.ts +30 -0
  33. package/dist/async/task-like.d.ts.map +1 -0
  34. package/dist/async/task-like.js +13 -0
  35. package/dist/async/task-like.js.map +1 -0
  36. package/dist/async/task.d.ts +8 -62
  37. package/dist/async/task.d.ts.map +1 -1
  38. package/dist/async/task.js +1 -1
  39. package/dist/async/task.js.map +1 -1
  40. package/dist/async/timer.d.ts +1 -6
  41. package/dist/async/timer.d.ts.map +1 -1
  42. package/dist/async/timer.js +4 -4
  43. package/dist/async/timer.js.map +1 -1
  44. package/dist/client.d.ts +6 -7
  45. package/dist/client.d.ts.map +1 -1
  46. package/dist/client.js +2 -2
  47. package/dist/client.js.map +1 -1
  48. package/dist/core/index.d.ts +21 -9
  49. package/dist/core/index.d.ts.map +1 -1
  50. package/dist/core/index.js +21 -9
  51. package/dist/core/index.js.map +1 -1
  52. package/dist/core/option.d.ts +26 -68
  53. package/dist/core/option.d.ts.map +1 -1
  54. package/dist/core/option.js +7 -20
  55. package/dist/core/option.js.map +1 -1
  56. package/dist/core/pipe.d.ts +13 -0
  57. package/dist/core/pipe.d.ts.map +1 -1
  58. package/dist/core/pipe.js.map +1 -1
  59. package/dist/core/result.d.ts +45 -90
  60. package/dist/core/result.d.ts.map +1 -1
  61. package/dist/core/result.js +9 -65
  62. package/dist/core/result.js.map +1 -1
  63. package/dist/data/adt.d.ts +1 -2
  64. package/dist/data/adt.d.ts.map +1 -1
  65. package/dist/data/codec.d.ts +4 -3
  66. package/dist/data/codec.d.ts.map +1 -1
  67. package/dist/data/codec.js.map +1 -1
  68. package/dist/data/index.d.ts +24 -5
  69. package/dist/data/index.d.ts.map +1 -1
  70. package/dist/data/index.js +11 -3
  71. package/dist/data/index.js.map +1 -1
  72. package/dist/data/internals.d.ts +2 -2
  73. package/dist/data/internals.d.ts.map +1 -1
  74. package/dist/data/list.d.ts +1 -1
  75. package/dist/data/non-empty-list.d.ts +1 -1
  76. package/dist/data/record.d.ts +1 -2
  77. package/dist/data/record.d.ts.map +1 -1
  78. package/dist/data/record.js.map +1 -1
  79. package/dist/data/stable-vec.d.ts +116 -0
  80. package/dist/data/stable-vec.d.ts.map +1 -0
  81. package/dist/data/stable-vec.js +184 -0
  82. package/dist/data/stable-vec.js.map +1 -0
  83. package/dist/index.d.ts +162 -49
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.js +6 -4
  86. package/dist/index.js.map +1 -1
  87. package/dist/io/compression.d.ts +1 -6
  88. package/dist/io/compression.d.ts.map +1 -1
  89. package/dist/io/compression.js +3 -3
  90. package/dist/io/compression.js.map +1 -1
  91. package/dist/io/crypto.d.ts +1 -5
  92. package/dist/io/crypto.d.ts.map +1 -1
  93. package/dist/io/crypto.js +2 -2
  94. package/dist/io/crypto.js.map +1 -1
  95. package/dist/io/dns.d.ts +3 -7
  96. package/dist/io/dns.d.ts.map +1 -1
  97. package/dist/io/dns.js +3 -3
  98. package/dist/io/dns.js.map +1 -1
  99. package/dist/io/file.d.ts +1 -5
  100. package/dist/io/file.d.ts.map +1 -1
  101. package/dist/io/file.js +13 -13
  102. package/dist/io/file.js.map +1 -1
  103. package/dist/io/index.d.ts +36 -11
  104. package/dist/io/index.d.ts.map +1 -1
  105. package/dist/io/index.js +26 -10
  106. package/dist/io/index.js.map +1 -1
  107. package/dist/io/net.d.ts +1 -6
  108. package/dist/io/net.d.ts.map +1 -1
  109. package/dist/io/net.js +6 -6
  110. package/dist/io/net.js.map +1 -1
  111. package/dist/io/subprocess.d.ts +1 -6
  112. package/dist/io/subprocess.d.ts.map +1 -1
  113. package/dist/io/subprocess.js +4 -4
  114. package/dist/io/subprocess.js.map +1 -1
  115. package/dist/program.d.ts +137 -25
  116. package/dist/program.d.ts.map +1 -1
  117. package/dist/program.js +23 -5
  118. package/dist/program.js.map +1 -1
  119. package/dist/runtime/config.d.ts +4 -5
  120. package/dist/runtime/config.d.ts.map +1 -1
  121. package/dist/runtime/index.d.ts +23 -2
  122. package/dist/runtime/index.d.ts.map +1 -1
  123. package/dist/runtime/index.js +7 -2
  124. package/dist/runtime/index.js.map +1 -1
  125. package/dist/runtime/logger.d.ts +22 -6
  126. package/dist/runtime/logger.d.ts.map +1 -1
  127. package/dist/runtime/logger.js.map +1 -1
  128. package/dist/runtime/platform.d.ts +2 -2
  129. package/dist/runtime/platform.d.ts.map +1 -1
  130. package/dist/runtime/platform.js.map +1 -1
  131. package/dist/runtime/process.d.ts +4 -2
  132. package/dist/runtime/process.d.ts.map +1 -1
  133. package/dist/runtime/process.js.map +1 -1
  134. package/dist/types/error.d.ts +34 -61
  135. package/dist/types/error.d.ts.map +1 -1
  136. package/dist/types/error.js.map +1 -1
  137. package/dist/types/index.d.ts +15 -2
  138. package/dist/types/index.d.ts.map +1 -1
  139. package/dist/types/index.js +4 -2
  140. package/dist/types/index.js.map +1 -1
  141. package/dist/types/nominal.d.ts +1 -3
  142. package/dist/types/nominal.d.ts.map +1 -1
  143. package/package.json +1 -1
package/dist/io/net.js CHANGED
@@ -13,12 +13,12 @@
13
13
  * Detects Deno (Deno.connect) first, then Node/Bun (node:net).
14
14
  * All runtime access is structural: no type declarations imported.
15
15
  */
16
+ import { makeTask } from "../async/task-like.js";
16
17
  import { Err, Ok } from "../core/result.js";
17
18
  import { ErrType } from "../types/error.js";
18
19
  // -- Error types -------------------------------------------------------------
19
20
  /** TCP connection or communication failed. */
20
21
  export const NetError = ErrType("NetError");
21
- const mkTask = (run) => ({ run });
22
22
  // -- Error helper ------------------------------------------------------------
23
23
  const netErr = (e, meta) => NetError(e instanceof Error ? e.message : String(e), meta);
24
24
  // -- Runtime detection -------------------------------------------------------
@@ -41,7 +41,7 @@ const getNodeNet = async () => {
41
41
  };
42
42
  // -- Connection wrappers -----------------------------------------------------
43
43
  const wrapDenoConn = (conn) => ({
44
- send: (data) => mkTask(async () => {
44
+ send: (data) => makeTask(async () => {
45
45
  try {
46
46
  const bytes = typeof data === "string" ? new TextEncoder().encode(data) : data;
47
47
  await conn.write(bytes);
@@ -51,7 +51,7 @@ const wrapDenoConn = (conn) => ({
51
51
  return Err(netErr(e));
52
52
  }
53
53
  }),
54
- receive: () => mkTask(async () => {
54
+ receive: () => makeTask(async () => {
55
55
  try {
56
56
  const buf = new Uint8Array(4096);
57
57
  const n = await conn.read(buf);
@@ -69,7 +69,7 @@ const wrapDenoConn = (conn) => ({
69
69
  },
70
70
  });
71
71
  const wrapNodeSocket = (socket) => ({
72
- send: (data) => mkTask(() => new Promise(resolve => {
72
+ send: (data) => makeTask(() => new Promise(resolve => {
73
73
  socket.write(data, (err) => {
74
74
  if (err !== undefined) {
75
75
  resolve(Err(netErr(err)));
@@ -79,7 +79,7 @@ const wrapNodeSocket = (socket) => ({
79
79
  }
80
80
  });
81
81
  })),
82
- receive: () => mkTask(() => new Promise(resolve => {
82
+ receive: () => makeTask(() => new Promise(resolve => {
83
83
  const onData = (chunk) => {
84
84
  cleanup();
85
85
  resolve(Ok(chunk));
@@ -159,6 +159,6 @@ const connectTcp = async (options) => {
159
159
  * ```
160
160
  */
161
161
  export const Net = {
162
- connect: (options) => mkTask(() => connectTcp(options)),
162
+ connect: (options) => makeTask(() => connectTcp(options)),
163
163
  };
164
164
  //# sourceMappingURL=net.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"net.js","sourceRoot":"","sources":["../../src/io/net.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"net.js","sourceRoot":"","sources":["../../src/io/net.ts"],"names":[],"mappings":"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"}
@@ -12,14 +12,10 @@
12
12
  * produce Err(CommandError).
13
13
  *
14
14
  */
15
- import type { Result } from "../core/result.js";
15
+ import { type TaskLike } from "../async/task-like.js";
16
16
  import { ErrType, type ErrTypeConstructor } from "../types/error.js";
17
17
  /** Subprocess execution failed (command not found, timeout, spawn error). */
18
18
  export declare const CommandError: ErrTypeConstructor<"CommandError", string>;
19
- /** Task-like interface for lazy async subprocess execution. */
20
- interface TaskLike<T, E> {
21
- readonly run: () => Promise<Result<T, E>>;
22
- }
23
19
  /** Output of a subprocess execution. */
24
20
  export interface CommandResult {
25
21
  /** The process exit code. */
@@ -65,5 +61,4 @@ export declare const Command: {
65
61
  /** Execute a command with optional arguments and options. */
66
62
  readonly exec: (cmd: string, args?: readonly string[], options?: CommandOptions) => TaskLike<CommandResult, ErrType<"CommandError">>;
67
63
  };
68
- export {};
69
64
  //# sourceMappingURL=subprocess.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subprocess.d.ts","sourceRoot":"","sources":["../../src/io/subprocess.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAIrE,6EAA6E;AAC7E,eAAO,MAAM,YAAY,EAAE,kBAAkB,CAAC,cAAc,EAAE,MAAM,CAA2B,CAAC;AAIhG,+DAA+D;AAC/D,UAAU,QAAQ,CAAC,CAAC,EAAE,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAC3C;AAMD,wCAAwC;AACxC,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,gCAAgC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,+BAA+B;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAID,wCAAwC;AACxC,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAClD,6DAA6D;IAC7D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,oDAAoD;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AA2WD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,CACb,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,CAAC,EAAE,cAAc,KACrB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;CAyBvD,CAAC"}
1
+ {"version":3,"file":"subprocess.d.ts","sourceRoot":"","sources":["../../src/io/subprocess.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGhE,OAAO,EAAE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAIrE,6EAA6E;AAC7E,eAAO,MAAM,YAAY,EAAE,kBAAkB,CAAC,cAAc,EAAE,MAAM,CAA2B,CAAC;AAIhG,wCAAwC;AACxC,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,gCAAgC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,+BAA+B;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAID,wCAAwC;AACxC,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAClD,6DAA6D;IAC7D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,oDAAoD;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AA2WD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,OAAO,EAAE;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,CACb,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,EACxB,OAAO,CAAC,EAAE,cAAc,KACrB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;CAyBvD,CAAC"}
@@ -12,12 +12,12 @@
12
12
  * produce Err(CommandError).
13
13
  *
14
14
  */
15
+ import { makeTask } from "../async/task-like.js";
15
16
  import { Err, Ok } from "../core/result.js";
16
17
  import { ErrType } from "../types/error.js";
17
18
  // -- Error types -------------------------------------------------------------
18
19
  /** Subprocess execution failed (command not found, timeout, spawn error). */
19
20
  export const CommandError = ErrType("CommandError");
20
- const mkTask = (run) => ({ run });
21
21
  // -- Helpers -----------------------------------------------------------------
22
22
  /**
23
23
  * Build a Deno/Bun spawn options object, omitting undefined properties.
@@ -57,7 +57,7 @@ const raceTimeout = (promise, ms, cleanup) => {
57
57
  });
58
58
  };
59
59
  // -- Execution strategies ----------------------------------------------------
60
- const execDeno = (denoCommand, cmd, args, options) => mkTask(async () => {
60
+ const execDeno = (denoCommand, cmd, args, options) => makeTask(async () => {
61
61
  try {
62
62
  const spawnOpts = buildSpawnOpts(options);
63
63
  const decoder = new TextDecoder();
@@ -117,7 +117,7 @@ const execDeno = (denoCommand, cmd, args, options) => mkTask(async () => {
117
117
  return Err(CommandError(e instanceof Error ? e.message : String(e), { cmd, args }));
118
118
  }
119
119
  });
120
- const execBun = (bun, cmd, args, options) => mkTask(async () => {
120
+ const execBun = (bun, cmd, args, options) => makeTask(async () => {
121
121
  try {
122
122
  const spawnOpts = buildSpawnOpts(options);
123
123
  // Use async spawn when stdin or timeout is needed
@@ -171,7 +171,7 @@ const resolveNodeExecResult = (error, stdout, stderr, cmd, args, timeout) => {
171
171
  }
172
172
  return Err(CommandError(error.message, { cmd, args, code: exitCode }));
173
173
  };
174
- const execNode = (cmd, args, options) => mkTask(async () => {
174
+ const execNode = (cmd, args, options) => makeTask(async () => {
175
175
  try {
176
176
  const cp = await Function('return import("node:child_process")')();
177
177
  // Use spawn when stdin is provided (execFile has no stdin pipe)
@@ -1 +1 @@
1
- {"version":3,"file":"subprocess.js","sourceRoot":"","sources":["../../src/io/subprocess.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subprocess.js","sourceRoot":"","sources":["../../src/io/subprocess.ts"],"names":[],"mappings":"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"}
package/dist/program.d.ts CHANGED
@@ -1,62 +1,150 @@
1
1
  /**
2
2
  * @module program
3
3
  *
4
- * Process-lifecycle wrapper for Task-based CLI programs.
4
+ * Process-lifecycle wrapper for Task-based programs.
5
5
  *
6
6
  * **Why Program instead of a bare Task.run()?**
7
- * Production CLI tools need signal handling (SIGINT/SIGTERM for graceful
8
- * shutdown), structured logging (timestamps + program name), and correct
9
- * exit codes. `Program` encapsulates all of this so the effect function
10
- * only needs to return a `Task`, not manage process lifecycle.
7
+ * Production programs need signal handling (SIGINT/SIGTERM for graceful
8
+ * shutdown), structured logging, and correct exit codes. `Program`
9
+ * encapsulates all of this so the effect function only needs to return
10
+ * a `Task`, not manage process lifecycle.
11
11
  *
12
- * **How `.run()` vs `.execute()` differs:**
13
- * `.run()` is for production: it registers signal handlers, logs to
14
- * stdout/stderr, and calls `process.exit()`. `.execute()` is for testing:
15
- * it returns the raw `Result` without any side effects, so tests can
16
- * assert on outcomes without spawning child processes.
12
+ * **Choosing between `.run()` and `.execute()`:**
13
+ *
14
+ * `.run()` is for **long-running services** (HTTP servers, workers, daemons):
15
+ * it registers signal handlers, logs lifecycle events to stdout/stderr, and
16
+ * calls `process.exit()`. The lifecycle logs ("started", "completed") confirm
17
+ * the process is alive, which is valuable for service monitoring.
18
+ *
19
+ * `.execute()` is for **CLI tools and testing**:
20
+ * - **CLI tools** manage their own output and exit codes. Lifecycle logs
21
+ * ("started"/"completed") are noise for a tool that should be silent
22
+ * unless it has something to say. `execute()` returns the raw `Result`
23
+ * so the caller controls exit codes and output.
24
+ * - **Tests** call `execute()` to get a `Result` without process lifecycle,
25
+ * enabling assertions on outcomes without spawning child processes.
26
+ *
27
+ * Both methods wire the `AbortSignal` for graceful shutdown. The difference
28
+ * is who owns the process lifecycle: `run()` does it for you, `execute()`
29
+ * lets you do it yourself.
30
+ *
31
+ * @example CLI tool using execute()
32
+ * ```ts
33
+ * const app = Program('my-cli', (signal) => cli(Deno.args));
34
+ * const result = await app.execute();
35
+ * result.match({
36
+ * Ok: (exitCode) => Deno.exit(exitCode),
37
+ * Err: (msg) => { console.error(`fatal: ${msg}`); Deno.exit(1); },
38
+ * });
39
+ * ```
40
+ *
41
+ * @example Long-running service using run()
42
+ * ```ts
43
+ * const main = Program('my-service', (signal) =>
44
+ * pipe(
45
+ * loadConfig(),
46
+ * Task.flatMap(cfg => startServer(cfg, { signal })),
47
+ * ),
48
+ * { teardownTimeoutMs: 5000 },
49
+ * );
50
+ * await main.run();
51
+ * ```
17
52
  */
18
53
  import type { Task } from "./async/task.js";
19
54
  import type { Result } from "./core/result.js";
55
+ import type { Logger } from "./runtime/logger.js";
20
56
  /**
21
57
  * A runnable program built on {@link Task}.
22
58
  *
23
- * Use `.run()` for production (handles signals, exit codes, stderr).
24
- * Use `.execute()` for testing (returns `Result`, no process lifecycle).
59
+ * **For services:** use `.run()` (handles signals, exit codes, lifecycle logging).
60
+ * **For CLI tools:** use `.execute()` (returns Result, caller owns lifecycle).
61
+ * **For tests:** use `.execute()` (no process.exit, returns Result for assertions).
25
62
  */
26
63
  export interface Program<T, E> {
27
64
  /**
28
65
  * Run with full process lifecycle management.
29
66
  *
30
- * Logs program start and errors automatically.
67
+ * Best for **long-running services** where lifecycle logging ("started",
68
+ * "completed") aids monitoring and observability.
31
69
  *
32
70
  * - SIGINT / SIGTERM fire the `AbortSignal` passed to the effect
33
71
  * - Second signal force-exits (code 130)
34
72
  * - Interrupted -> `process.exit(130)` (takes priority over Ok/Err)
35
73
  * - `Ok` -> `process.exit(0)`
36
74
  * - `Err` -> stderr + `process.exit(1)`
75
+ *
76
+ * Pass `{ silent: true }` in options to suppress lifecycle logs while
77
+ * keeping signal handling and exit code management. Error logs are
78
+ * always emitted regardless of the silent flag.
37
79
  */
38
80
  run(): Promise<void>;
39
81
  /**
40
82
  * Execute without process lifecycle. Returns the raw {@link Result}.
41
- * No logging, no signals, no exit. Use for testing.
42
83
  *
43
- * Accepts an optional `AbortSignal` for cancellation in tests.
84
+ * Best for **CLI tools** and **tests**:
85
+ * - CLI tools that manage their own output and need non-binary exit codes
86
+ * (e.g., exit 0 = success, exit 1 = found issues, exit 2 = stale)
87
+ * - Tests that need to assert on the Result without process.exit()
88
+ *
89
+ * Accepts an optional `AbortSignal` for cancellation.
90
+ *
91
+ * @example CLI tool with custom exit codes
92
+ * ```ts
93
+ * const app = Program('lint', (signal) => runLinter(args));
94
+ * const result = await app.execute();
95
+ * result.match({
96
+ * Ok: (exitCode) => process.exit(exitCode),
97
+ * Err: (msg) => { console.error(msg); process.exit(1); },
98
+ * });
99
+ * ```
100
+ *
101
+ * @example Test assertions
102
+ * ```ts
103
+ * const result = await app.execute();
104
+ * assert(result.isOk);
105
+ * assertEquals(result.unwrap(), expectedValue);
106
+ * ```
44
107
  */
45
108
  execute(signal?: AbortSignal): Promise<Result<T, E>>;
46
109
  }
110
+ /** Configuration options for Program. */
111
+ export interface ProgramOptions {
112
+ /**
113
+ * Max ms to wait for the effect to complete after an interrupt signal
114
+ * before force-exiting. Without this, only a second signal triggers
115
+ * force-exit.
116
+ */
117
+ readonly teardownTimeoutMs?: number;
118
+ /**
119
+ * Suppress lifecycle logs ("started", "completed") in `.run()`.
120
+ * Error and interrupt messages are always logged regardless.
121
+ *
122
+ * Useful for CLI tools that use `.run()` for signal handling but
123
+ * don't want service-oriented lifecycle messages in their output.
124
+ *
125
+ * Default: `false`.
126
+ */
127
+ readonly silent?: boolean;
128
+ /**
129
+ * Custom logger instance for lifecycle messages. When provided,
130
+ * Program uses `logger.info()` for "started"/"completed" and
131
+ * `logger.error()` for errors/interrupts, instead of raw
132
+ * `console.log`/`console.error`.
133
+ *
134
+ * Pass a silent logger (`Logger.create({ name, sink: Logger.silent })`)
135
+ * to suppress all output, or a JSON logger for structured production logs.
136
+ *
137
+ * Takes precedence over `silent` when both are provided.
138
+ */
139
+ readonly logger?: Logger;
140
+ }
47
141
  /**
48
142
  * Create a named {@link Program} from a {@link Task} or an effect function.
49
143
  *
50
144
  * When given a function, it receives an `AbortSignal` wired to
51
145
  * SIGINT/SIGTERM so the effect can respond to graceful shutdown.
52
146
  *
53
- * `.run()` automatically logs program start, errors, and interrupts.
54
- *
55
- * @param options.teardownTimeoutMs Max ms to wait for the effect after
56
- * interrupt before force-exiting. Without this, only a second signal
57
- * triggers force-exit.
58
- *
59
- * @example
147
+ * @example Service with lifecycle logging (default)
60
148
  * ```ts
61
149
  * const main = Program('my-service', (signal) =>
62
150
  * pipe(
@@ -70,8 +158,32 @@ export interface Program<T, E> {
70
158
  * // ... on error:
71
159
  * // [2026-03-16T10:00:01.234Z] [my-service] error: NotFound(NOT_FOUND): User not found
72
160
  * ```
161
+ *
162
+ * @example CLI tool with silent run()
163
+ * ```ts
164
+ * const app = Program('my-cli', (signal) => cli(args), { silent: true });
165
+ * await app.run();
166
+ * // No lifecycle logs, just the CLI's own output
167
+ * ```
168
+ *
169
+ * @example CLI tool with execute() (recommended for CLIs)
170
+ * ```ts
171
+ * const app = Program('my-cli', (signal) => cli(args));
172
+ * const result = await app.execute();
173
+ * result.match({
174
+ * Ok: (code) => process.exit(code),
175
+ * Err: (msg) => { console.error(`fatal: ${msg}`); process.exit(1); },
176
+ * });
177
+ * ```
178
+ *
179
+ * @example Custom logger
180
+ * ```ts
181
+ * import { Logger } from '@igorjs/pure-ts';
182
+ * const log = Logger.create({ name: 'api', sink: Logger.json });
183
+ * const main = Program('api', (signal) => startServer(signal), { logger: log });
184
+ * await main.run();
185
+ * // {"timestamp":"...","level":"info","name":"api","message":"started"}
186
+ * ```
73
187
  */
74
- export declare function Program<T, E>(name: string, effect: Task<T, E> | ((signal: AbortSignal) => Task<T, E>), options?: {
75
- readonly teardownTimeoutMs?: number;
76
- }): Program<T, E>;
188
+ export declare function Program<T, E>(name: string, effect: Task<T, E> | ((signal: AbortSignal) => Task<T, E>), options?: ProgramOptions): Program<T, E>;
77
189
  //# sourceMappingURL=program.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAuB/C;;;;;GAKG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,EAAE,CAAC;IAC3B;;;;;;;;;;OAUG;IACH,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAErB;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CACtD;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAC1D,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,GAChD,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAwDf"}
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAuBlD;;;;;;GAMG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,EAAE,CAAC;IAC3B;;;;;;;;;;;;;;;OAeG;IACH,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAErB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CACtD;AAID,yCAAyC;AACzC,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAEpC;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAC1D,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CA6Ef"}
package/dist/program.js CHANGED
@@ -17,6 +17,24 @@ export function Program(name, effect, options) {
17
17
  const toTask = typeof effect === "function" ? effect : () => effect;
18
18
  const tag = `[${name}]`;
19
19
  const teardownTimeoutMs = options?.teardownTimeoutMs;
20
+ const logger = options?.logger;
21
+ const silent = options?.silent ?? false;
22
+ const logInfo = (msg) => {
23
+ if (logger) {
24
+ logger.info(msg);
25
+ }
26
+ else if (!silent) {
27
+ console.log(`${ts()} ${tag} ${msg}`);
28
+ }
29
+ };
30
+ const logError = (msg) => {
31
+ if (logger) {
32
+ logger.error(msg);
33
+ }
34
+ else {
35
+ console.error(`${ts()} ${tag} ${msg}`);
36
+ }
37
+ };
20
38
  return {
21
39
  async run() {
22
40
  const ac = new AbortController();
@@ -26,7 +44,7 @@ export function Program(name, effect, options) {
26
44
  if (interrupted)
27
45
  process.exit(130);
28
46
  interrupted = true;
29
- console.error(`${ts()} ${tag} interrupted`);
47
+ logError("interrupted");
30
48
  ac.abort();
31
49
  if (teardownTimeoutMs !== undefined) {
32
50
  teardownTimer = setTimeout(() => process.exit(130), teardownTimeoutMs);
@@ -34,7 +52,7 @@ export function Program(name, effect, options) {
34
52
  };
35
53
  process.on("SIGINT", onSignal);
36
54
  process.on("SIGTERM", onSignal);
37
- console.log(`${ts()} ${tag} started`);
55
+ logInfo("started");
38
56
  let exitCode = 0;
39
57
  try {
40
58
  const result = await toTask(ac.signal).run();
@@ -42,15 +60,15 @@ export function Program(name, effect, options) {
42
60
  exitCode = 130;
43
61
  }
44
62
  else if (result.isOk) {
45
- console.log(`${ts()} ${tag} completed`);
63
+ logInfo("completed");
46
64
  }
47
65
  else {
48
- console.error(`${ts()} ${tag} error: ${formatError(result.unwrapErr())}`);
66
+ logError(`error: ${formatError(result.unwrapErr())}`);
49
67
  exitCode = 1;
50
68
  }
51
69
  }
52
70
  catch (unhandled) {
53
- console.error(`${ts()} ${tag} error: ${formatError(unhandled)}`);
71
+ logError(`error: ${formatError(unhandled)}`);
54
72
  exitCode = 1;
55
73
  }
56
74
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,10 @@
11
11
  */
12
12
  import type { Result } from "../core/result.js";
13
13
  import type { SchemaError, SchemaType } from "../data/schema.js";
14
- /** A schema shape where each field validates a string env value. */
15
- type ConfigShape = Record<string, SchemaType<unknown>>;
16
- /** Infer the output type from a config shape. */
17
- type InferConfig<T extends ConfigShape> = {
14
+ /** @internal A schema shape where each field validates a string env value. */
15
+ export type ConfigShape = Record<string, SchemaType<unknown>>;
16
+ /** @internal Infer the output type from a config shape. */
17
+ export type InferConfig<T extends ConfigShape> = {
18
18
  readonly [K in keyof T]: T[K] extends SchemaType<infer U> ? U : never;
19
19
  };
20
20
  /**
@@ -49,5 +49,4 @@ export declare const Config: {
49
49
  readonly shape: T;
50
50
  };
51
51
  };
52
- export {};
53
52
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIjE,oEAAoE;AACpE,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;AAEvD,iDAAiD;AACjD,KAAK,WAAW,CAAC,CAAC,SAAS,WAAW,IAAI;IACxC,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CACtE,CAAC;AAqCF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,+EAA+E;IAC/E,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,WAAW,EACnC,KAAK,EAAE,CAAC,KACL;QACH,0EAA0E;QAC1E,QAAQ,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,iEAAiE;QACjE,QAAQ,CAAC,QAAQ,EAAE,CACjB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KACpC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QACzC,4CAA4C;QAC5C,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;KACnB,CAAC;CA8BH,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIjE,8EAA8E;AAC9E,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;AAE9D,2DAA2D;AAC3D,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,WAAW,IAAI;IAC/C,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CACtE,CAAC;AAqCF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,MAAM,EAAE;IACnB,+EAA+E;IAC/E,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,WAAW,EACnC,KAAK,EAAE,CAAC,KACL;QACH,0EAA0E;QAC1E,QAAQ,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QACzD,iEAAiE;QACjE,QAAQ,CAAC,QAAQ,EAAE,CACjB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KACpC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QACzC,4CAA4C;QAC5C,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;KACnB,CAAC;CA8BH,CAAC"}
@@ -14,13 +14,34 @@
14
14
  * ```
15
15
  */
16
16
  /** Typed environment variable validation and access. */
17
+ /** Re-exported so public signatures that reference Option are visible from this entrypoint. */
18
+ export type { NoneVariant, Option, OptionMatcher, SomeVariant } from "../core/option.js";
19
+ /** Re-exported so public signatures that reference Result are visible from this entrypoint. */
20
+ /** Re-exported so public signatures that reference Ok / Err are visible from this entrypoint. */
21
+ export type { Err, Ok, Result, ResultMatcher } from "../core/result.js";
22
+ /** Re-exported so public signatures that reference SchemaError / SchemaType are visible from this entrypoint. */
23
+ export type { SchemaError, SchemaType } from "../data/schema.js";
24
+ /** Re-exported so public signatures that reference ErrType / ErrTypeConstructor are visible from this entrypoint. */
25
+ export type { ErrType, ErrTypeConstructor } from "../types/error.js";
26
+ /** Typed environment variable validation and access. */
17
27
  export { Config } from "./config.js";
28
+ /** Log severity levels, ordered from least to most severe. */
29
+ /** Options for creating a Logger instance. */
30
+ /** A structured log record passed to log sinks. */
31
+ /** Function that receives a log record and outputs it somewhere. */
32
+ export type { LoggerOptions, LogLevel, LogRecord, LogSink } from "./logger.js";
18
33
  /** Structured logger with configurable levels and formatters. */
19
34
  export { Logger } from "./logger.js";
20
35
  /** Cross-runtime OS information (hostname, arch, memory). */
21
36
  export { Os } from "./os.js";
22
- /** Cross-platform path manipulation, line endings, and platform detection. */
37
+ /** Line ending constants and normalization. */
38
+ /** OS-aware path manipulation without node:path dependency. */
39
+ /** Parsed path components (root, dir, base, ext, name). */
40
+ /** Runtime platform detection (isWindows, isPosix). */
23
41
  export { Eol, Path, type PathParts, Platform } from "./platform.js";
24
- /** Cross-runtime process info, cwd, env, and exit. */
42
+ /** Heap and RSS memory usage information. */
43
+ export type { MemoryUsage } from "./process.js";
44
+ /** Cross-runtime process info, cwd, env, args, and exit namespace. */
45
+ /** Error returned when a process operation fails. */
25
46
  export { Process, ProcessError } from "./process.js";
26
47
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,iEAAiE;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,6DAA6D;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,8EAA8E;AAC9E,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpE,sDAAsD;AACtD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wDAAwD;AAExD,+FAA+F;AAC/F,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEzF,+FAA+F;AAC/F,iGAAiG;AACjG,YAAY,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACxE,iHAAiH;AACjH,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACjE,qHAAqH;AACrH,YAAY,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACrE,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,8DAA8D;AAC9D,8CAA8C;AAC9C,mDAAmD;AACnD,oEAAoE;AACpE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/E,iEAAiE;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,6DAA6D;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,+CAA+C;AAC/C,+DAA+D;AAC/D,2DAA2D;AAC3D,uDAAuD;AACvD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpE,6CAA6C;AAC7C,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,sEAAsE;AACtE,qDAAqD;AACrD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
@@ -14,13 +14,18 @@
14
14
  * ```
15
15
  */
16
16
  /** Typed environment variable validation and access. */
17
+ /** Typed environment variable validation and access. */
17
18
  export { Config } from "./config.js";
18
19
  /** Structured logger with configurable levels and formatters. */
19
20
  export { Logger } from "./logger.js";
20
21
  /** Cross-runtime OS information (hostname, arch, memory). */
21
22
  export { Os } from "./os.js";
22
- /** Cross-platform path manipulation, line endings, and platform detection. */
23
+ /** Line ending constants and normalization. */
24
+ /** OS-aware path manipulation without node:path dependency. */
25
+ /** Parsed path components (root, dir, base, ext, name). */
26
+ /** Runtime platform detection (isWindows, isPosix). */
23
27
  export { Eol, Path, Platform } from "./platform.js";
24
- /** Cross-runtime process info, cwd, env, and exit. */
28
+ /** Cross-runtime process info, cwd, env, args, and exit namespace. */
29
+ /** Error returned when a process operation fails. */
25
30
  export { Process, ProcessError } from "./process.js";
26
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,iEAAiE;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,6DAA6D;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,8EAA8E;AAC9E,OAAO,EAAE,GAAG,EAAE,IAAI,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpE,sDAAsD;AACtD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,wDAAwD;AAYxD,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAMrC,iEAAiE;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,6DAA6D;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,+CAA+C;AAC/C,+DAA+D;AAC/D,2DAA2D;AAC3D,uDAAuD;AACvD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGpE,sEAAsE;AACtE,qDAAqD;AACrD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}