@lifo-sh/core 0.1.0

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 (305) hide show
  1. package/dist/archive-D220So0m.js +192 -0
  2. package/dist/args-CG6b9cZt.js +43 -0
  3. package/dist/awk-rMPdpM91.js +118 -0
  4. package/dist/basename-C33A_Zse.js +12 -0
  5. package/dist/bc-BYiKVTNg.js +200 -0
  6. package/dist/cal-DPULSAhj.js +56 -0
  7. package/dist/cat-Crmqa4-2.js +29 -0
  8. package/dist/chmod-CcGyvoCX.js +56 -0
  9. package/dist/chown-CErsnGQX.js +28 -0
  10. package/dist/commands/archive/gunzip.d.ts +4 -0
  11. package/dist/commands/archive/gunzip.d.ts.map +1 -0
  12. package/dist/commands/archive/gzip.d.ts +4 -0
  13. package/dist/commands/archive/gzip.d.ts.map +1 -0
  14. package/dist/commands/archive/tar.d.ts +4 -0
  15. package/dist/commands/archive/tar.d.ts.map +1 -0
  16. package/dist/commands/archive/unzip.d.ts +4 -0
  17. package/dist/commands/archive/unzip.d.ts.map +1 -0
  18. package/dist/commands/archive/zip.d.ts +4 -0
  19. package/dist/commands/archive/zip.d.ts.map +1 -0
  20. package/dist/commands/fs/basename.d.ts +4 -0
  21. package/dist/commands/fs/basename.d.ts.map +1 -0
  22. package/dist/commands/fs/cat.d.ts +4 -0
  23. package/dist/commands/fs/cat.d.ts.map +1 -0
  24. package/dist/commands/fs/chmod.d.ts +4 -0
  25. package/dist/commands/fs/chmod.d.ts.map +1 -0
  26. package/dist/commands/fs/chown.d.ts +4 -0
  27. package/dist/commands/fs/chown.d.ts.map +1 -0
  28. package/dist/commands/fs/cp.d.ts +4 -0
  29. package/dist/commands/fs/cp.d.ts.map +1 -0
  30. package/dist/commands/fs/df.d.ts +4 -0
  31. package/dist/commands/fs/df.d.ts.map +1 -0
  32. package/dist/commands/fs/dirname.d.ts +4 -0
  33. package/dist/commands/fs/dirname.d.ts.map +1 -0
  34. package/dist/commands/fs/du.d.ts +4 -0
  35. package/dist/commands/fs/du.d.ts.map +1 -0
  36. package/dist/commands/fs/file.d.ts +4 -0
  37. package/dist/commands/fs/file.d.ts.map +1 -0
  38. package/dist/commands/fs/find.d.ts +4 -0
  39. package/dist/commands/fs/find.d.ts.map +1 -0
  40. package/dist/commands/fs/ln.d.ts +4 -0
  41. package/dist/commands/fs/ln.d.ts.map +1 -0
  42. package/dist/commands/fs/ls.d.ts +4 -0
  43. package/dist/commands/fs/ls.d.ts.map +1 -0
  44. package/dist/commands/fs/mkdir.d.ts +4 -0
  45. package/dist/commands/fs/mkdir.d.ts.map +1 -0
  46. package/dist/commands/fs/mktemp.d.ts +4 -0
  47. package/dist/commands/fs/mktemp.d.ts.map +1 -0
  48. package/dist/commands/fs/mv.d.ts +4 -0
  49. package/dist/commands/fs/mv.d.ts.map +1 -0
  50. package/dist/commands/fs/realpath.d.ts +4 -0
  51. package/dist/commands/fs/realpath.d.ts.map +1 -0
  52. package/dist/commands/fs/rm.d.ts +4 -0
  53. package/dist/commands/fs/rm.d.ts.map +1 -0
  54. package/dist/commands/fs/rmdir.d.ts +4 -0
  55. package/dist/commands/fs/rmdir.d.ts.map +1 -0
  56. package/dist/commands/fs/stat.d.ts +4 -0
  57. package/dist/commands/fs/stat.d.ts.map +1 -0
  58. package/dist/commands/fs/touch.d.ts +4 -0
  59. package/dist/commands/fs/touch.d.ts.map +1 -0
  60. package/dist/commands/fs/tree.d.ts +4 -0
  61. package/dist/commands/fs/tree.d.ts.map +1 -0
  62. package/dist/commands/index.d.ts +3 -0
  63. package/dist/commands/index.d.ts.map +1 -0
  64. package/dist/commands/io/printf.d.ts +4 -0
  65. package/dist/commands/io/printf.d.ts.map +1 -0
  66. package/dist/commands/io/tee.d.ts +4 -0
  67. package/dist/commands/io/tee.d.ts.map +1 -0
  68. package/dist/commands/io/xargs.d.ts +4 -0
  69. package/dist/commands/io/xargs.d.ts.map +1 -0
  70. package/dist/commands/io/yes.d.ts +4 -0
  71. package/dist/commands/io/yes.d.ts.map +1 -0
  72. package/dist/commands/net/curl.d.ts +6 -0
  73. package/dist/commands/net/curl.d.ts.map +1 -0
  74. package/dist/commands/net/dig.d.ts +4 -0
  75. package/dist/commands/net/dig.d.ts.map +1 -0
  76. package/dist/commands/net/ping.d.ts +4 -0
  77. package/dist/commands/net/ping.d.ts.map +1 -0
  78. package/dist/commands/net/wget.d.ts +4 -0
  79. package/dist/commands/net/wget.d.ts.map +1 -0
  80. package/dist/commands/registry.d.ts +13 -0
  81. package/dist/commands/registry.d.ts.map +1 -0
  82. package/dist/commands/system/bc.d.ts +4 -0
  83. package/dist/commands/system/bc.d.ts.map +1 -0
  84. package/dist/commands/system/cal.d.ts +4 -0
  85. package/dist/commands/system/cal.d.ts.map +1 -0
  86. package/dist/commands/system/date.d.ts +4 -0
  87. package/dist/commands/system/date.d.ts.map +1 -0
  88. package/dist/commands/system/env.d.ts +4 -0
  89. package/dist/commands/system/env.d.ts.map +1 -0
  90. package/dist/commands/system/free.d.ts +4 -0
  91. package/dist/commands/system/free.d.ts.map +1 -0
  92. package/dist/commands/system/help.d.ts +4 -0
  93. package/dist/commands/system/help.d.ts.map +1 -0
  94. package/dist/commands/system/hostname.d.ts +4 -0
  95. package/dist/commands/system/hostname.d.ts.map +1 -0
  96. package/dist/commands/system/kill.d.ts +4 -0
  97. package/dist/commands/system/kill.d.ts.map +1 -0
  98. package/dist/commands/system/man.d.ts +4 -0
  99. package/dist/commands/system/man.d.ts.map +1 -0
  100. package/dist/commands/system/node.d.ts +6 -0
  101. package/dist/commands/system/node.d.ts.map +1 -0
  102. package/dist/commands/system/pkg.d.ts +4 -0
  103. package/dist/commands/system/pkg.d.ts.map +1 -0
  104. package/dist/commands/system/ps.d.ts +4 -0
  105. package/dist/commands/system/ps.d.ts.map +1 -0
  106. package/dist/commands/system/sleep.d.ts +4 -0
  107. package/dist/commands/system/sleep.d.ts.map +1 -0
  108. package/dist/commands/system/top.d.ts +4 -0
  109. package/dist/commands/system/top.d.ts.map +1 -0
  110. package/dist/commands/system/uname.d.ts +4 -0
  111. package/dist/commands/system/uname.d.ts.map +1 -0
  112. package/dist/commands/system/uptime.d.ts +4 -0
  113. package/dist/commands/system/uptime.d.ts.map +1 -0
  114. package/dist/commands/system/watch.d.ts +4 -0
  115. package/dist/commands/system/watch.d.ts.map +1 -0
  116. package/dist/commands/system/which.d.ts +4 -0
  117. package/dist/commands/system/which.d.ts.map +1 -0
  118. package/dist/commands/system/whoami.d.ts +4 -0
  119. package/dist/commands/system/whoami.d.ts.map +1 -0
  120. package/dist/commands/text/awk.d.ts +4 -0
  121. package/dist/commands/text/awk.d.ts.map +1 -0
  122. package/dist/commands/text/cut.d.ts +4 -0
  123. package/dist/commands/text/cut.d.ts.map +1 -0
  124. package/dist/commands/text/diff.d.ts +4 -0
  125. package/dist/commands/text/diff.d.ts.map +1 -0
  126. package/dist/commands/text/grep.d.ts +4 -0
  127. package/dist/commands/text/grep.d.ts.map +1 -0
  128. package/dist/commands/text/head.d.ts +4 -0
  129. package/dist/commands/text/head.d.ts.map +1 -0
  130. package/dist/commands/text/nl.d.ts +4 -0
  131. package/dist/commands/text/nl.d.ts.map +1 -0
  132. package/dist/commands/text/rev.d.ts +4 -0
  133. package/dist/commands/text/rev.d.ts.map +1 -0
  134. package/dist/commands/text/sed.d.ts +4 -0
  135. package/dist/commands/text/sed.d.ts.map +1 -0
  136. package/dist/commands/text/sort.d.ts +4 -0
  137. package/dist/commands/text/sort.d.ts.map +1 -0
  138. package/dist/commands/text/tail.d.ts +4 -0
  139. package/dist/commands/text/tail.d.ts.map +1 -0
  140. package/dist/commands/text/tr.d.ts +4 -0
  141. package/dist/commands/text/tr.d.ts.map +1 -0
  142. package/dist/commands/text/uniq.d.ts +4 -0
  143. package/dist/commands/text/uniq.d.ts.map +1 -0
  144. package/dist/commands/text/wc.d.ts +4 -0
  145. package/dist/commands/text/wc.d.ts.map +1 -0
  146. package/dist/commands/types.d.ts +20 -0
  147. package/dist/commands/types.d.ts.map +1 -0
  148. package/dist/cp-CpjwiLUF.js +19 -0
  149. package/dist/cut-GfN8py4j.js +60 -0
  150. package/dist/date-C8NB8v8G.js +86 -0
  151. package/dist/df-CeZb4WOr.js +34 -0
  152. package/dist/diff-2wbVWmCT.js +129 -0
  153. package/dist/dig-BEJ8Ky96.js +69 -0
  154. package/dist/dirname-C5L53RA2.js +13 -0
  155. package/dist/du-B0shJpEL.js +77 -0
  156. package/dist/env-DXzvDKsN.js +9 -0
  157. package/dist/file-C2epVYvH.js +70 -0
  158. package/dist/find-DA-rpvsC.js +36 -0
  159. package/dist/free-DAxE4b2U.js +23 -0
  160. package/dist/grep-Bynq2w2E.js +140 -0
  161. package/dist/gunzip-B9b1Vph1.js +48 -0
  162. package/dist/gzip-CkXnPp5J.js +58 -0
  163. package/dist/head-DZJVLF1k.js +48 -0
  164. package/dist/hostname-BxU2S3nT.js +8 -0
  165. package/dist/index-Be1wosKt.js +6028 -0
  166. package/dist/index.d.ts +25 -0
  167. package/dist/index.d.ts.map +1 -0
  168. package/dist/index.js +51 -0
  169. package/dist/kernel/index.d.ts +25 -0
  170. package/dist/kernel/index.d.ts.map +1 -0
  171. package/dist/kernel/persistence/PersistenceManager.d.ts +10 -0
  172. package/dist/kernel/persistence/PersistenceManager.d.ts.map +1 -0
  173. package/dist/kernel/persistence/serializer.d.ts +13 -0
  174. package/dist/kernel/persistence/serializer.d.ts.map +1 -0
  175. package/dist/kernel/samples.d.ts +3 -0
  176. package/dist/kernel/samples.d.ts.map +1 -0
  177. package/dist/kernel/vfs/VFS.d.ts +36 -0
  178. package/dist/kernel/vfs/VFS.d.ts.map +1 -0
  179. package/dist/kernel/vfs/index.d.ts +4 -0
  180. package/dist/kernel/vfs/index.d.ts.map +1 -0
  181. package/dist/kernel/vfs/providers/DevProvider.d.ts +11 -0
  182. package/dist/kernel/vfs/providers/DevProvider.d.ts.map +1 -0
  183. package/dist/kernel/vfs/providers/ProcProvider.d.ts +14 -0
  184. package/dist/kernel/vfs/providers/ProcProvider.d.ts.map +1 -0
  185. package/dist/kernel/vfs/types.d.ts +43 -0
  186. package/dist/kernel/vfs/types.d.ts.map +1 -0
  187. package/dist/ln-Bf3f3jVA.js +11 -0
  188. package/dist/ls-CSeazevv.js +106 -0
  189. package/dist/man-CJ5pI0_W.js +122 -0
  190. package/dist/mkdir-B7p8krsP.js +27 -0
  191. package/dist/mktemp-88Nhvd7h.js +31 -0
  192. package/dist/mv-DRVvz9oK.js +19 -0
  193. package/dist/nl-G2vK3rR3.js +48 -0
  194. package/dist/node-compat/buffer.d.ts +17 -0
  195. package/dist/node-compat/buffer.d.ts.map +1 -0
  196. package/dist/node-compat/child_process.d.ts +10 -0
  197. package/dist/node-compat/child_process.d.ts.map +1 -0
  198. package/dist/node-compat/console.d.ts +21 -0
  199. package/dist/node-compat/console.d.ts.map +1 -0
  200. package/dist/node-compat/crypto.d.ts +17 -0
  201. package/dist/node-compat/crypto.d.ts.map +1 -0
  202. package/dist/node-compat/events.d.ts +19 -0
  203. package/dist/node-compat/events.d.ts.map +1 -0
  204. package/dist/node-compat/fs.d.ts +113 -0
  205. package/dist/node-compat/fs.d.ts.map +1 -0
  206. package/dist/node-compat/http.d.ts +87 -0
  207. package/dist/node-compat/http.d.ts.map +1 -0
  208. package/dist/node-compat/index.d.ts +19 -0
  209. package/dist/node-compat/index.d.ts.map +1 -0
  210. package/dist/node-compat/os.d.ts +39 -0
  211. package/dist/node-compat/os.d.ts.map +1 -0
  212. package/dist/node-compat/path.d.ts +58 -0
  213. package/dist/node-compat/path.d.ts.map +1 -0
  214. package/dist/node-compat/process.d.ts +62 -0
  215. package/dist/node-compat/process.d.ts.map +1 -0
  216. package/dist/node-compat/stream.d.ts +36 -0
  217. package/dist/node-compat/stream.d.ts.map +1 -0
  218. package/dist/node-compat/timers.d.ts +16 -0
  219. package/dist/node-compat/timers.d.ts.map +1 -0
  220. package/dist/node-compat/url.d.ts +53 -0
  221. package/dist/node-compat/url.d.ts.map +1 -0
  222. package/dist/node-compat/util.d.ts +27 -0
  223. package/dist/node-compat/util.d.ts.map +1 -0
  224. package/dist/ping-DtVEwwda.js +50 -0
  225. package/dist/pkg/PackageManager.d.ts +19 -0
  226. package/dist/pkg/PackageManager.d.ts.map +1 -0
  227. package/dist/pkg/loader.d.ts +4 -0
  228. package/dist/pkg/loader.d.ts.map +1 -0
  229. package/dist/printf-Cc2o7KZx.js +70 -0
  230. package/dist/realpath-C-kisl-F.js +24 -0
  231. package/dist/rev-9puwegeh.js +34 -0
  232. package/dist/rm-BXSq9iqP.js +37 -0
  233. package/dist/rmdir-CWgZ6q8D.js +35 -0
  234. package/dist/sandbox/HeadlessTerminal.d.ts +17 -0
  235. package/dist/sandbox/HeadlessTerminal.d.ts.map +1 -0
  236. package/dist/sandbox/Sandbox.d.ts +36 -0
  237. package/dist/sandbox/Sandbox.d.ts.map +1 -0
  238. package/dist/sandbox/SandboxCommands.d.ts +18 -0
  239. package/dist/sandbox/SandboxCommands.d.ts.map +1 -0
  240. package/dist/sandbox/SandboxFs.d.ts +38 -0
  241. package/dist/sandbox/SandboxFs.d.ts.map +1 -0
  242. package/dist/sandbox/index.d.ts +3 -0
  243. package/dist/sandbox/index.d.ts.map +1 -0
  244. package/dist/sandbox/types.d.ts +72 -0
  245. package/dist/sandbox/types.d.ts.map +1 -0
  246. package/dist/sed-BRxd2DlZ.js +90 -0
  247. package/dist/shell/Shell.d.ts +84 -0
  248. package/dist/shell/Shell.d.ts.map +1 -0
  249. package/dist/shell/completer.d.ts +19 -0
  250. package/dist/shell/completer.d.ts.map +1 -0
  251. package/dist/shell/expander.d.ts +20 -0
  252. package/dist/shell/expander.d.ts.map +1 -0
  253. package/dist/shell/history.d.ts +22 -0
  254. package/dist/shell/history.d.ts.map +1 -0
  255. package/dist/shell/interpreter.d.ts +67 -0
  256. package/dist/shell/interpreter.d.ts.map +1 -0
  257. package/dist/shell/jobs.d.ts +21 -0
  258. package/dist/shell/jobs.d.ts.map +1 -0
  259. package/dist/shell/lexer.d.ts +3 -0
  260. package/dist/shell/lexer.d.ts.map +1 -0
  261. package/dist/shell/parser.d.ts +7 -0
  262. package/dist/shell/parser.d.ts.map +1 -0
  263. package/dist/shell/pipe.d.ts +12 -0
  264. package/dist/shell/pipe.d.ts.map +1 -0
  265. package/dist/shell/terminal-stdin.d.ts +22 -0
  266. package/dist/shell/terminal-stdin.d.ts.map +1 -0
  267. package/dist/shell/test-builtin.d.ts +8 -0
  268. package/dist/shell/test-builtin.d.ts.map +1 -0
  269. package/dist/shell/types.d.ts +109 -0
  270. package/dist/shell/types.d.ts.map +1 -0
  271. package/dist/sleep-B4C3fZiR.js +19 -0
  272. package/dist/sort-B7K83hAD.js +59 -0
  273. package/dist/stat-C0qs7xMV.js +29 -0
  274. package/dist/tail-CYBTYnn3.js +47 -0
  275. package/dist/tar-mMS7gfb-.js +121 -0
  276. package/dist/tee-B8bXFHbI.js +17 -0
  277. package/dist/terminal/Terminal.d.ts +13 -0
  278. package/dist/terminal/Terminal.d.ts.map +1 -0
  279. package/dist/touch-CdAHKfLv.js +23 -0
  280. package/dist/tr-DsCiwSIu.js +60 -0
  281. package/dist/tree-BiWLXiUu.js +46 -0
  282. package/dist/uname-BCn8HlJD.js +37 -0
  283. package/dist/uniq-BZMOwoCc.js +51 -0
  284. package/dist/unzip-DP4I991d.js +82 -0
  285. package/dist/uptime-CgBJegqU.js +8 -0
  286. package/dist/utils/archive.d.ts +22 -0
  287. package/dist/utils/archive.d.ts.map +1 -0
  288. package/dist/utils/args.d.ts +12 -0
  289. package/dist/utils/args.d.ts.map +1 -0
  290. package/dist/utils/colors.d.ts +27 -0
  291. package/dist/utils/colors.d.ts.map +1 -0
  292. package/dist/utils/encoding.d.ts +4 -0
  293. package/dist/utils/encoding.d.ts.map +1 -0
  294. package/dist/utils/glob.d.ts +12 -0
  295. package/dist/utils/glob.d.ts.map +1 -0
  296. package/dist/utils/path.d.ts +12 -0
  297. package/dist/utils/path.d.ts.map +1 -0
  298. package/dist/wc-CpE5K4ZI.js +60 -0
  299. package/dist/wget-DIPI0-I3.js +53 -0
  300. package/dist/which-D3u0cwyh.js +105 -0
  301. package/dist/whoami-B1237V5e.js +8 -0
  302. package/dist/xargs-DfbCRFFd.js +35 -0
  303. package/dist/yes-DXEyHHD2.js +10 -0
  304. package/dist/zip-B_gQ6LXC.js +34 -0
  305. package/package.json +34 -0
@@ -0,0 +1,53 @@
1
+ declare const _URL: {
2
+ new (url: string | URL, base?: string | URL): URL;
3
+ prototype: URL;
4
+ canParse(url: string | URL, base?: string | URL): boolean;
5
+ createObjectURL(obj: Blob | MediaSource): string;
6
+ parse(url: string | URL, base?: string | URL): URL | null;
7
+ revokeObjectURL(url: string): void;
8
+ };
9
+ declare const _URLSearchParams: {
10
+ new (init?: string[][] | Record<string, string> | string | URLSearchParams): URLSearchParams;
11
+ prototype: URLSearchParams;
12
+ };
13
+ export { _URL as URL, _URLSearchParams as URLSearchParams };
14
+ export declare function parse(urlString: string): {
15
+ protocol: string | null;
16
+ hostname: string | null;
17
+ port: string | null;
18
+ pathname: string;
19
+ search: string | null;
20
+ hash: string | null;
21
+ host: string | null;
22
+ href: string;
23
+ path: string;
24
+ query: string | null;
25
+ };
26
+ export declare function format(urlObj: {
27
+ protocol?: string;
28
+ hostname?: string;
29
+ port?: string | number;
30
+ pathname?: string;
31
+ search?: string;
32
+ hash?: string;
33
+ }): string;
34
+ export declare function resolve(from: string, to: string): string;
35
+ declare const _default: {
36
+ URL: {
37
+ new (url: string | URL, base?: string | URL): URL;
38
+ prototype: URL;
39
+ canParse(url: string | URL, base?: string | URL): boolean;
40
+ createObjectURL(obj: Blob | MediaSource): string;
41
+ parse(url: string | URL, base?: string | URL): URL | null;
42
+ revokeObjectURL(url: string): void;
43
+ };
44
+ URLSearchParams: {
45
+ new (init?: string[][] | Record<string, string> | string | URLSearchParams): URLSearchParams;
46
+ prototype: URLSearchParams;
47
+ };
48
+ parse: typeof parse;
49
+ format: typeof format;
50
+ resolve: typeof resolve;
51
+ };
52
+ export default _default;
53
+ //# sourceMappingURL=url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../src/node-compat/url.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,IAAI;;;;;;;CAAiB,CAAC;AAC5B,QAAA,MAAM,gBAAgB;;;CAA6B,CAAC;AAEpD,OAAO,EAAE,IAAI,IAAI,GAAG,EAAE,gBAAgB,IAAI,eAAe,EAAE,CAAC;AAE5D,wBAAgB,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG;IACxC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CA6BA;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAS1J;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAExD;;;;;;;;;;;;;;;;;;AAED,wBAAgE"}
@@ -0,0 +1,27 @@
1
+ export declare function format(fmt: string, ...args: unknown[]): string;
2
+ export declare function inspect(obj: unknown, opts?: {
3
+ depth?: number;
4
+ colors?: boolean;
5
+ }): string;
6
+ export declare function promisify<T>(fn: (...args: [...unknown[], (err: unknown, result: T) => void]) => void): (...args: unknown[]) => Promise<T>;
7
+ export declare function inherits(ctor: {
8
+ prototype: object;
9
+ }, superCtor: {
10
+ prototype: object;
11
+ }): void;
12
+ export declare function deprecate<T extends (...args: unknown[]) => unknown>(fn: T, msg: string): T;
13
+ export declare function types(): {
14
+ isDate: (v: unknown) => v is Date;
15
+ isRegExp: (v: unknown) => v is RegExp;
16
+ isArray: (arg: any) => arg is any[];
17
+ };
18
+ declare const _default: {
19
+ format: typeof format;
20
+ inspect: typeof inspect;
21
+ promisify: typeof promisify;
22
+ inherits: typeof inherits;
23
+ deprecate: typeof deprecate;
24
+ types: typeof types;
25
+ };
26
+ export default _default;
27
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/node-compat/util.ts"],"names":[],"mappings":"AAAA,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CA2B9D;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAGzF;AAqCD,wBAAgB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAOzI;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,SAAS,EAAE;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAE5F;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,CAS1F;AAED,wBAAgB,KAAK;gBAEL,OAAO;kBACL,OAAO;;EAGxB;;;;;;;;;AAED,wBAA0E"}
@@ -0,0 +1,50 @@
1
+ const h = async (t) => {
2
+ let n = 4, r;
3
+ const m = t.args;
4
+ for (let e = 0; e < m.length; e++) {
5
+ const i = m[e];
6
+ i === "-c" ? (n = parseInt(m[++e] ?? "4", 10), (isNaN(n) || n < 1) && (n = 4)) : i.startsWith("-") || (r = i);
7
+ }
8
+ if (!r)
9
+ return t.stderr.write(`ping: missing host
10
+ `), t.stderr.write(`Usage: ping [-c count] host
11
+ `), 1;
12
+ let a = r;
13
+ !a.startsWith("http://") && !a.startsWith("https://") && (a = "https://" + a), t.stdout.write(`PING ${r}: ${n} requests
14
+ `);
15
+ const o = [];
16
+ let d = 0;
17
+ for (let e = 0; e < n && !t.signal.aborted; e++) {
18
+ const i = performance.now();
19
+ try {
20
+ await fetch(a, { method: "HEAD", mode: "no-cors", signal: t.signal });
21
+ const s = performance.now() - i;
22
+ o.push(s), t.stdout.write(`Response from ${r}: time=${s.toFixed(1)}ms
23
+ `);
24
+ } catch {
25
+ const s = performance.now() - i;
26
+ if (t.signal.aborted) break;
27
+ d++, t.stdout.write(`Request to ${r}: timeout (${s.toFixed(1)}ms)
28
+ `);
29
+ }
30
+ e < n - 1 && !t.signal.aborted && await new Promise((s) => {
31
+ const c = setTimeout(s, 1e3), g = () => {
32
+ clearTimeout(c), s();
33
+ };
34
+ t.signal.addEventListener("abort", g, { once: !0 });
35
+ });
36
+ }
37
+ const l = o.length + d, u = l > 0 ? (d / l * 100).toFixed(0) : "0";
38
+ if (t.stdout.write(`
39
+ --- ${r} ping statistics ---
40
+ `), t.stdout.write(`${l} packets transmitted, ${o.length} received, ${u}% packet loss
41
+ `), o.length > 0) {
42
+ const e = Math.min(...o), i = Math.max(...o), s = o.reduce((c, g) => c + g, 0) / o.length;
43
+ t.stdout.write(`rtt min/avg/max = ${e.toFixed(1)}/${s.toFixed(1)}/${i.toFixed(1)} ms
44
+ `);
45
+ }
46
+ return d === l ? 1 : 0;
47
+ };
48
+ export {
49
+ h as default
50
+ };
@@ -0,0 +1,19 @@
1
+ import { VFS } from '../kernel/vfs/index.js';
2
+ export interface PackageInfo {
3
+ name: string;
4
+ url: string;
5
+ installedAt: number;
6
+ size: number;
7
+ }
8
+ export declare class PackageManager {
9
+ private vfs;
10
+ constructor(vfs: VFS);
11
+ private readMetadata;
12
+ private writeMetadata;
13
+ private ensureDirs;
14
+ install(url: string, name?: string): Promise<PackageInfo>;
15
+ remove(name: string): boolean;
16
+ list(): PackageInfo[];
17
+ info(name: string): PackageInfo | null;
18
+ }
19
+ //# sourceMappingURL=PackageManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PackageManager.d.ts","sourceRoot":"","sources":["../../src/pkg/PackageManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAMlD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAMD,qBAAa,cAAc;IACb,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,GAAG;IAE5B,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,UAAU;IAKZ,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAoC/D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAqB7B,IAAI,IAAI,WAAW,EAAE;IAKrB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;CAIvC"}
@@ -0,0 +1,4 @@
1
+ import { VFS } from '../kernel/vfs/index.js';
2
+ import { CommandRegistry } from '../commands/registry.js';
3
+ export declare function loadInstalledPackages(vfs: VFS, registry: CommandRegistry): void;
4
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/pkg/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAM/D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAyB/E"}
@@ -0,0 +1,70 @@
1
+ function i(e, t) {
2
+ let s = "", n = 0, r = 0;
3
+ for (; r < e.length; )
4
+ if (e[r] === "\\") {
5
+ if (r++, r < e.length) {
6
+ switch (e[r]) {
7
+ case "n":
8
+ s += `
9
+ `;
10
+ break;
11
+ case "t":
12
+ s += " ";
13
+ break;
14
+ case "\\":
15
+ s += "\\";
16
+ break;
17
+ case "r":
18
+ s += "\r";
19
+ break;
20
+ case "0":
21
+ s += "\0";
22
+ break;
23
+ default:
24
+ s += "\\" + e[r];
25
+ break;
26
+ }
27
+ r++;
28
+ }
29
+ } else if (e[r] === "%") {
30
+ if (r++, r >= e.length) break;
31
+ if (e[r] === "%") {
32
+ s += "%", r++;
33
+ continue;
34
+ }
35
+ const a = t[n++] || "";
36
+ switch (e[r]) {
37
+ case "s":
38
+ s += a;
39
+ break;
40
+ case "d":
41
+ s += String(parseInt(a, 10) || 0);
42
+ break;
43
+ case "f":
44
+ s += String(parseFloat(a) || 0);
45
+ break;
46
+ case "x":
47
+ s += (parseInt(a, 10) || 0).toString(16);
48
+ break;
49
+ case "o":
50
+ s += (parseInt(a, 10) || 0).toString(8);
51
+ break;
52
+ default:
53
+ s += "%" + e[r];
54
+ break;
55
+ }
56
+ r++;
57
+ } else
58
+ s += e[r], r++;
59
+ return s;
60
+ }
61
+ const c = async (e) => {
62
+ if (e.args.length === 0)
63
+ return e.stderr.write(`printf: missing format string
64
+ `), 1;
65
+ const t = e.args[0], s = e.args.slice(1), n = i(t, s);
66
+ return e.stdout.write(n), 0;
67
+ };
68
+ export {
69
+ c as default
70
+ };
@@ -0,0 +1,24 @@
1
+ import { r as o, V as n } from "./index-Be1wosKt.js";
2
+ const d = async (r) => {
3
+ if (r.args.length === 0)
4
+ return r.stderr.write(`realpath: missing operand
5
+ `), 1;
6
+ let s = 0;
7
+ for (const t of r.args) {
8
+ const a = o(r.cwd, t);
9
+ try {
10
+ r.vfs.stat(a), r.stdout.write(a + `
11
+ `);
12
+ } catch (e) {
13
+ if (e instanceof n)
14
+ r.stderr.write(`realpath: ${t}: ${e.message}
15
+ `), s = 1;
16
+ else
17
+ throw e;
18
+ }
19
+ }
20
+ return s;
21
+ };
22
+ export {
23
+ d as default
24
+ };
@@ -0,0 +1,34 @@
1
+ import { r as i, V as a } from "./index-Be1wosKt.js";
2
+ function s(r) {
3
+ return r.split(`
4
+ `).map((n) => [...n].reverse().join("")).join(`
5
+ `);
6
+ }
7
+ const f = async (r) => {
8
+ if (r.args.length === 0) {
9
+ if (r.stdin) {
10
+ const t = await r.stdin.readAll();
11
+ return r.stdout.write(s(t)), 0;
12
+ }
13
+ return r.stderr.write(`rev: missing operand
14
+ `), 1;
15
+ }
16
+ let n = 0;
17
+ for (const t of r.args) {
18
+ const o = i(r.cwd, t);
19
+ try {
20
+ const e = r.vfs.readFileString(o);
21
+ r.stdout.write(s(e));
22
+ } catch (e) {
23
+ if (e instanceof a)
24
+ r.stderr.write(`rev: ${t}: ${e.message}
25
+ `), n = 1;
26
+ else
27
+ throw e;
28
+ }
29
+ }
30
+ return n;
31
+ };
32
+ export {
33
+ f as default
34
+ };
@@ -0,0 +1,37 @@
1
+ import { p as f } from "./args-CG6b9cZt.js";
2
+ import { r as m, V as p } from "./index-Be1wosKt.js";
3
+ const l = {
4
+ recursive: { type: "boolean", short: "r" },
5
+ Recursive: { type: "boolean", short: "R" },
6
+ force: { type: "boolean", short: "f" }
7
+ }, v = async (r) => {
8
+ const { flags: s, positional: i } = f(r.args, l), a = s.recursive || s.Recursive, c = s.force;
9
+ if (i.length === 0)
10
+ return r.stderr.write(`rm: missing operand
11
+ `), 1;
12
+ let o = 0;
13
+ for (const t of i) {
14
+ const n = m(r.cwd, t);
15
+ try {
16
+ if (r.vfs.stat(n).type === "directory") {
17
+ if (!a) {
18
+ r.stderr.write(`rm: cannot remove '${t}': Is a directory
19
+ `), o = 1;
20
+ continue;
21
+ }
22
+ r.vfs.rmdirRecursive(n);
23
+ } else
24
+ r.vfs.unlink(n);
25
+ } catch (e) {
26
+ if (e instanceof p)
27
+ c || (r.stderr.write(`rm: ${t}: ${e.message}
28
+ `), o = 1);
29
+ else
30
+ throw e;
31
+ }
32
+ }
33
+ return o;
34
+ };
35
+ export {
36
+ v as default
37
+ };
@@ -0,0 +1,35 @@
1
+ import { p } from "./args-CG6b9cZt.js";
2
+ import { r as d, d as n, V as m } from "./index-Be1wosKt.js";
3
+ const f = {
4
+ parents: { type: "boolean", short: "p" }
5
+ }, g = async (e) => {
6
+ const { flags: i, positional: s } = p(e.args, f);
7
+ if (s.length === 0)
8
+ return e.stderr.write(`rmdir: missing operand
9
+ `), 1;
10
+ let t = 0;
11
+ for (const a of s) {
12
+ const o = d(e.cwd, a);
13
+ try {
14
+ if (e.vfs.rmdir(o), i.parents) {
15
+ let r = n(o);
16
+ for (; r !== "/" && r !== "."; )
17
+ try {
18
+ e.vfs.rmdir(r), r = n(r);
19
+ } catch {
20
+ break;
21
+ }
22
+ }
23
+ } catch (r) {
24
+ if (r instanceof m)
25
+ e.stderr.write(`rmdir: ${a}: ${r.message}
26
+ `), t = 1;
27
+ else
28
+ throw r;
29
+ }
30
+ }
31
+ return t;
32
+ };
33
+ export {
34
+ g as default
35
+ };
@@ -0,0 +1,17 @@
1
+ /**
2
+ * A Terminal-shaped class that captures output without xterm.js.
3
+ * Used for headless/programmatic Sandbox usage (AI agents, tests, etc.)
4
+ */
5
+ export declare class HeadlessTerminal {
6
+ private dataCallback;
7
+ write(_data: string): void;
8
+ writeln(_data: string): void;
9
+ onData(cb: (data: string) => void): void;
10
+ get cols(): number;
11
+ get rows(): number;
12
+ focus(): void;
13
+ clear(): void;
14
+ /** Send data as if typed on keyboard (used internally for stdin) */
15
+ sendData(data: string): void;
16
+ }
17
+ //# sourceMappingURL=HeadlessTerminal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeadlessTerminal.d.ts","sourceRoot":"","sources":["../../src/sandbox/HeadlessTerminal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAAyC;IAE7D,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI1B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI5B,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIxC,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,KAAK,IAAI,IAAI;IAEb,KAAK,IAAI,IAAI;IAEb,oEAAoE;IACpE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAG7B"}
@@ -0,0 +1,36 @@
1
+ import { Kernel } from '../kernel/index.js';
2
+ import { Shell } from '../shell/Shell.js';
3
+ import { SandboxOptions, SandboxCommands, SandboxFs } from './types.js';
4
+ export declare class Sandbox {
5
+ /** Programmatic command execution */
6
+ readonly commands: SandboxCommands;
7
+ /** Filesystem operations */
8
+ readonly fs: SandboxFs;
9
+ /** Environment variables */
10
+ readonly env: Record<string, string>;
11
+ readonly kernel: Kernel;
12
+ readonly shell: Shell;
13
+ private _destroyed;
14
+ private constructor();
15
+ /** Current working directory */
16
+ get cwd(): string;
17
+ set cwd(path: string);
18
+ /**
19
+ * Create a new Sandbox instance.
20
+ * Orchestrates all boot steps: Kernel, VFS, Registry, Shell, config sourcing.
21
+ */
22
+ static create(options?: SandboxOptions): Promise<Sandbox>;
23
+ /**
24
+ * Attach a headless sandbox to a DOM element, enabling visual mode.
25
+ */
26
+ attach(container: HTMLElement): Promise<void>;
27
+ /**
28
+ * Detach from visual mode.
29
+ */
30
+ detach(): void;
31
+ /**
32
+ * Destroy the sandbox, releasing all resources.
33
+ */
34
+ destroy(): void;
35
+ }
36
+ //# sourceMappingURL=Sandbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sandbox.d.ts","sourceRoot":"","sources":["../../src/sandbox/Sandbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAY1C,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAK7E,qBAAa,OAAO;IAClB,qCAAqC;IACrC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAGrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAEtB,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO;IAcP,gCAAgC;IAChC,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAEnB;IAED;;;OAGG;WACU,MAAM,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;IA6E/D;;OAEG;IACG,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnD;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;OAEG;IACH,OAAO,IAAI,IAAI;CAGhB"}
@@ -0,0 +1,18 @@
1
+ import { Shell } from '../shell/Shell.js';
2
+ import { CommandRegistry } from '../commands/registry.js';
3
+ import { Command } from '../commands/types.js';
4
+ import { SandboxCommands as ISandboxCommands, RunOptions, CommandResult } from './types.js';
5
+ /**
6
+ * Wraps Shell.execute() and serializes concurrent calls.
7
+ * Concurrent commands.run() calls are queued (matches real shell behavior).
8
+ */
9
+ export declare class SandboxCommandsImpl implements ISandboxCommands {
10
+ private shell;
11
+ private registry;
12
+ private queue;
13
+ constructor(shell: Shell, registry: CommandRegistry);
14
+ run(cmd: string, options?: RunOptions): Promise<CommandResult>;
15
+ register(name: string, handler: Command): void;
16
+ private executeWithOptions;
17
+ }
18
+ //# sourceMappingURL=SandboxCommands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SandboxCommands.d.ts","sourceRoot":"","sources":["../../src/sandbox/SandboxCommands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,IAAI,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEjG;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,gBAAgB;IAIxD,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ;IAJlB,OAAO,CAAC,KAAK,CAAoC;gBAGvC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe;IAGnC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC;IAe9D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;YAIhC,kBAAkB;CAqCjC"}
@@ -0,0 +1,38 @@
1
+ import { VFS } from '../kernel/vfs/index.js';
2
+ import { SandboxFs as ISandboxFs } from './types.js';
3
+ /**
4
+ * Async wrapper around VFS that matches the industry-standard filesystem API.
5
+ * Sync VFS behind async interface future-proofs for async persistence.
6
+ */
7
+ export declare class SandboxFsImpl implements ISandboxFs {
8
+ private vfs;
9
+ private getCwd;
10
+ constructor(vfs: VFS, getCwd: () => string);
11
+ private resolvePath;
12
+ readFile(path: string): Promise<string>;
13
+ readFile(path: string, encoding: null): Promise<Uint8Array>;
14
+ writeFile(path: string, content: string | Uint8Array): Promise<void>;
15
+ readdir(path: string): Promise<Array<{
16
+ name: string;
17
+ type: 'file' | 'directory';
18
+ }>>;
19
+ stat(path: string): Promise<{
20
+ type: 'file' | 'directory';
21
+ size: number;
22
+ mtime: number;
23
+ }>;
24
+ mkdir(path: string, options?: {
25
+ recursive?: boolean;
26
+ }): Promise<void>;
27
+ rm(path: string, options?: {
28
+ recursive?: boolean;
29
+ }): Promise<void>;
30
+ exists(path: string): Promise<boolean>;
31
+ rename(oldPath: string, newPath: string): Promise<void>;
32
+ cp(src: string, dest: string): Promise<void>;
33
+ writeFiles(files: Array<{
34
+ path: string;
35
+ content: string | Uint8Array;
36
+ }>): Promise<void>;
37
+ }
38
+ //# sourceMappingURL=SandboxFs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SandboxFs.d.ts","sourceRoot":"","sources":["../../src/sandbox/SandboxFs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,YAAY,CAAC;AAG1D;;;GAGG;AACH,qBAAa,aAAc,YAAW,UAAU;IAE5C,OAAO,CAAC,GAAG;IACX,OAAO,CAAC,MAAM;gBADN,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,MAAM;IAG9B,OAAO,CAAC,WAAW;IAInB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IASrD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;KAAE,CAAC,CAAC;IAKnF,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAMxF,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAclE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKtC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvD,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5C,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAK9F"}
@@ -0,0 +1,3 @@
1
+ export { Sandbox } from './Sandbox.js';
2
+ export type { SandboxOptions, RunOptions, CommandResult, SandboxCommands, SandboxFs, } from './types.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sandbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,YAAY,EACV,cAAc,EACd,UAAU,EACV,aAAa,EACb,eAAe,EACf,SAAS,GACV,MAAM,YAAY,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { Command } from '../commands/types.js';
2
+ import { Kernel } from '../kernel/index.js';
3
+ import { Shell } from '../shell/Shell.js';
4
+ export interface SandboxOptions {
5
+ /** Enable IndexedDB persistence (default: false) */
6
+ persist?: boolean;
7
+ /** Extra environment variables (merged with defaults) */
8
+ env?: Record<string, string>;
9
+ /** Initial working directory (default: /home/user) */
10
+ cwd?: string;
11
+ /** Pre-populate files: path → content */
12
+ files?: Record<string, string | Uint8Array>;
13
+ /** Attach to a DOM element for visual mode (CSS selector or element) */
14
+ terminal?: string | HTMLElement;
15
+ }
16
+ export interface RunOptions {
17
+ /** Working directory for this command */
18
+ cwd?: string;
19
+ /** Extra environment variables for this command */
20
+ env?: Record<string, string>;
21
+ /** Abort signal to cancel the command */
22
+ signal?: AbortSignal;
23
+ /** Timeout in milliseconds */
24
+ timeout?: number;
25
+ /** Streaming stdout callback */
26
+ onStdout?: (data: string) => void;
27
+ /** Streaming stderr callback */
28
+ onStderr?: (data: string) => void;
29
+ /** Provide stdin content */
30
+ stdin?: string;
31
+ }
32
+ export interface CommandResult {
33
+ stdout: string;
34
+ stderr: string;
35
+ exitCode: number;
36
+ }
37
+ export interface SandboxCommands {
38
+ run(cmd: string, options?: RunOptions): Promise<CommandResult>;
39
+ register(name: string, handler: Command): void;
40
+ }
41
+ export interface SandboxFs {
42
+ readFile(path: string): Promise<string>;
43
+ readFile(path: string, encoding: null): Promise<Uint8Array>;
44
+ writeFile(path: string, content: string | Uint8Array): Promise<void>;
45
+ readdir(path: string): Promise<Array<{
46
+ name: string;
47
+ type: 'file' | 'directory';
48
+ }>>;
49
+ stat(path: string): Promise<{
50
+ type: 'file' | 'directory';
51
+ size: number;
52
+ mtime: number;
53
+ }>;
54
+ mkdir(path: string, options?: {
55
+ recursive?: boolean;
56
+ }): Promise<void>;
57
+ rm(path: string, options?: {
58
+ recursive?: boolean;
59
+ }): Promise<void>;
60
+ exists(path: string): Promise<boolean>;
61
+ rename(oldPath: string, newPath: string): Promise<void>;
62
+ cp(src: string, dest: string): Promise<void>;
63
+ writeFiles(files: Array<{
64
+ path: string;
65
+ content: string | Uint8Array;
66
+ }>): Promise<void>;
67
+ }
68
+ export interface SandboxInternals {
69
+ kernel: Kernel;
70
+ shell: Shell;
71
+ }
72
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sandbox/types.ts"],"names":[],"mappings":"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"}