@depup/bun-types 1.3.11-depup.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.
- package/CLAUDE.md +105 -0
- package/README.md +25 -0
- package/bun.d.ts +8712 -0
- package/bun.ns.d.ts +5 -0
- package/bundle.d.ts +74 -0
- package/changes.json +5 -0
- package/deprecated.d.ts +184 -0
- package/devserver.d.ts +187 -0
- package/docs/README.md +28 -0
- package/docs/bundler/bytecode.mdx +447 -0
- package/docs/bundler/css.mdx +1024 -0
- package/docs/bundler/esbuild.mdx +304 -0
- package/docs/bundler/executables.mdx +1318 -0
- package/docs/bundler/fullstack.mdx +1086 -0
- package/docs/bundler/hot-reloading.mdx +229 -0
- package/docs/bundler/html-static.mdx +498 -0
- package/docs/bundler/index.mdx +1840 -0
- package/docs/bundler/loaders.mdx +451 -0
- package/docs/bundler/macros.mdx +328 -0
- package/docs/bundler/minifier.mdx +1286 -0
- package/docs/bundler/plugins.mdx +477 -0
- package/docs/bundler/standalone-html.mdx +314 -0
- package/docs/feedback.mdx +75 -0
- package/docs/guides/binary/arraybuffer-to-array.mdx +29 -0
- package/docs/guides/binary/arraybuffer-to-blob.mdx +26 -0
- package/docs/guides/binary/arraybuffer-to-buffer.mdx +27 -0
- package/docs/guides/binary/arraybuffer-to-string.mdx +17 -0
- package/docs/guides/binary/arraybuffer-to-typedarray.mdx +41 -0
- package/docs/guides/binary/blob-to-arraybuffer.mdx +16 -0
- package/docs/guides/binary/blob-to-dataview.mdx +16 -0
- package/docs/guides/binary/blob-to-stream.mdx +16 -0
- package/docs/guides/binary/blob-to-string.mdx +17 -0
- package/docs/guides/binary/blob-to-typedarray.mdx +16 -0
- package/docs/guides/binary/buffer-to-arraybuffer.mdx +16 -0
- package/docs/guides/binary/buffer-to-blob.mdx +16 -0
- package/docs/guides/binary/buffer-to-readablestream.mdx +43 -0
- package/docs/guides/binary/buffer-to-string.mdx +27 -0
- package/docs/guides/binary/buffer-to-typedarray.mdx +16 -0
- package/docs/guides/binary/dataview-to-string.mdx +17 -0
- package/docs/guides/binary/typedarray-to-arraybuffer.mdx +27 -0
- package/docs/guides/binary/typedarray-to-blob.mdx +18 -0
- package/docs/guides/binary/typedarray-to-buffer.mdx +16 -0
- package/docs/guides/binary/typedarray-to-dataview.mdx +16 -0
- package/docs/guides/binary/typedarray-to-readablestream.mdx +43 -0
- package/docs/guides/binary/typedarray-to-string.mdx +18 -0
- package/docs/guides/deployment/aws-lambda.mdx +204 -0
- package/docs/guides/deployment/digital-ocean.mdx +161 -0
- package/docs/guides/deployment/google-cloud-run.mdx +194 -0
- package/docs/guides/deployment/railway.mdx +145 -0
- package/docs/guides/deployment/render.mdx +82 -0
- package/docs/guides/deployment/vercel.mdx +97 -0
- package/docs/guides/ecosystem/astro.mdx +82 -0
- package/docs/guides/ecosystem/discordjs.mdx +80 -0
- package/docs/guides/ecosystem/docker.mdx +151 -0
- package/docs/guides/ecosystem/drizzle.mdx +195 -0
- package/docs/guides/ecosystem/elysia.mdx +31 -0
- package/docs/guides/ecosystem/express.mdx +43 -0
- package/docs/guides/ecosystem/gel.mdx +261 -0
- package/docs/guides/ecosystem/hono.mdx +47 -0
- package/docs/guides/ecosystem/mongoose.mdx +92 -0
- package/docs/guides/ecosystem/neon-drizzle.mdx +234 -0
- package/docs/guides/ecosystem/neon-serverless-postgres.mdx +60 -0
- package/docs/guides/ecosystem/nextjs.mdx +103 -0
- package/docs/guides/ecosystem/nuxt.mdx +96 -0
- package/docs/guides/ecosystem/pm2.mdx +55 -0
- package/docs/guides/ecosystem/prisma-postgres.mdx +169 -0
- package/docs/guides/ecosystem/prisma.mdx +164 -0
- package/docs/guides/ecosystem/qwik.mdx +114 -0
- package/docs/guides/ecosystem/react.mdx +52 -0
- package/docs/guides/ecosystem/remix.mdx +97 -0
- package/docs/guides/ecosystem/sentry.mdx +54 -0
- package/docs/guides/ecosystem/solidstart.mdx +62 -0
- package/docs/guides/ecosystem/ssr-react.mdx +49 -0
- package/docs/guides/ecosystem/stric.mdx +54 -0
- package/docs/guides/ecosystem/sveltekit.mdx +138 -0
- package/docs/guides/ecosystem/systemd.mdx +114 -0
- package/docs/guides/ecosystem/tanstack-start.mdx +791 -0
- package/docs/guides/ecosystem/upstash.mdx +87 -0
- package/docs/guides/ecosystem/vite.mdx +77 -0
- package/docs/guides/html-rewriter/extract-links.mdx +71 -0
- package/docs/guides/html-rewriter/extract-social-meta.mdx +97 -0
- package/docs/guides/http/cluster.mdx +69 -0
- package/docs/guides/http/fetch-unix.mdx +35 -0
- package/docs/guides/http/fetch.mdx +26 -0
- package/docs/guides/http/file-uploads.mdx +97 -0
- package/docs/guides/http/hot.mdx +28 -0
- package/docs/guides/http/proxy.mdx +50 -0
- package/docs/guides/http/server.mdx +48 -0
- package/docs/guides/http/simple.mdx +20 -0
- package/docs/guides/http/sse.mdx +91 -0
- package/docs/guides/http/stream-file.mdx +50 -0
- package/docs/guides/http/stream-iterator.mdx +49 -0
- package/docs/guides/http/stream-node-streams-in-bun.mdx +22 -0
- package/docs/guides/http/tls.mdx +32 -0
- package/docs/guides/index.mdx +10 -0
- package/docs/guides/install/add-dev.mdx +28 -0
- package/docs/guides/install/add-git.mdx +40 -0
- package/docs/guides/install/add-optional.mdx +27 -0
- package/docs/guides/install/add-peer.mdx +45 -0
- package/docs/guides/install/add-tarball.mdx +35 -0
- package/docs/guides/install/add.mdx +44 -0
- package/docs/guides/install/azure-artifacts.mdx +76 -0
- package/docs/guides/install/cicd.mdx +43 -0
- package/docs/guides/install/custom-registry.mdx +32 -0
- package/docs/guides/install/from-npm-install-to-bun-install.mdx +230 -0
- package/docs/guides/install/git-diff-bun-lockfile.mdx +48 -0
- package/docs/guides/install/jfrog-artifactory.mdx +28 -0
- package/docs/guides/install/npm-alias.mdx +25 -0
- package/docs/guides/install/registry-scope.mdx +40 -0
- package/docs/guides/install/trusted.mdx +52 -0
- package/docs/guides/install/workspaces.mdx +70 -0
- package/docs/guides/install/yarnlock.mdx +51 -0
- package/docs/guides/process/argv.mdx +66 -0
- package/docs/guides/process/ctrl-c.mdx +18 -0
- package/docs/guides/process/ipc.mdx +69 -0
- package/docs/guides/process/nanoseconds.mdx +15 -0
- package/docs/guides/process/os-signals.mdx +31 -0
- package/docs/guides/process/spawn-stderr.mdx +34 -0
- package/docs/guides/process/spawn-stdout.mdx +28 -0
- package/docs/guides/process/spawn.mdx +43 -0
- package/docs/guides/process/stdin.mdx +62 -0
- package/docs/guides/read-file/arraybuffer.mdx +30 -0
- package/docs/guides/read-file/buffer.mdx +21 -0
- package/docs/guides/read-file/exists.mdx +18 -0
- package/docs/guides/read-file/json.mdx +19 -0
- package/docs/guides/read-file/mime.mdx +22 -0
- package/docs/guides/read-file/stream.mdx +28 -0
- package/docs/guides/read-file/string.mdx +24 -0
- package/docs/guides/read-file/uint8array.mdx +23 -0
- package/docs/guides/read-file/watch.mdx +66 -0
- package/docs/guides/runtime/build-time-constants.mdx +295 -0
- package/docs/guides/runtime/cicd.mdx +45 -0
- package/docs/guides/runtime/codesign-macos-executable.mdx +61 -0
- package/docs/guides/runtime/define-constant.mdx +149 -0
- package/docs/guides/runtime/delete-directory.mdx +39 -0
- package/docs/guides/runtime/delete-file.mdx +21 -0
- package/docs/guides/runtime/heap-snapshot.mdx +28 -0
- package/docs/guides/runtime/import-html.mdx +15 -0
- package/docs/guides/runtime/import-json.mdx +46 -0
- package/docs/guides/runtime/import-json5.mdx +74 -0
- package/docs/guides/runtime/import-toml.mdx +32 -0
- package/docs/guides/runtime/import-yaml.mdx +104 -0
- package/docs/guides/runtime/read-env.mdx +37 -0
- package/docs/guides/runtime/set-env.mdx +51 -0
- package/docs/guides/runtime/shell.mdx +42 -0
- package/docs/guides/runtime/timezone.mdx +38 -0
- package/docs/guides/runtime/tsconfig-paths.mdx +31 -0
- package/docs/guides/runtime/typescript.mdx +51 -0
- package/docs/guides/runtime/vscode-debugger.mdx +47 -0
- package/docs/guides/runtime/web-debugger.mdx +103 -0
- package/docs/guides/streams/node-readable-to-arraybuffer.mdx +13 -0
- package/docs/guides/streams/node-readable-to-blob.mdx +13 -0
- package/docs/guides/streams/node-readable-to-json.mdx +14 -0
- package/docs/guides/streams/node-readable-to-string.mdx +14 -0
- package/docs/guides/streams/node-readable-to-uint8array.mdx +13 -0
- package/docs/guides/streams/to-array.mdx +16 -0
- package/docs/guides/streams/to-arraybuffer.mdx +16 -0
- package/docs/guides/streams/to-blob.mdx +16 -0
- package/docs/guides/streams/to-buffer.mdx +17 -0
- package/docs/guides/streams/to-json.mdx +16 -0
- package/docs/guides/streams/to-string.mdx +16 -0
- package/docs/guides/streams/to-typedarray.mdx +24 -0
- package/docs/guides/test/bail.mdx +24 -0
- package/docs/guides/test/concurrent-test-glob.mdx +146 -0
- package/docs/guides/test/coverage-threshold.mdx +67 -0
- package/docs/guides/test/coverage.mdx +49 -0
- package/docs/guides/test/happy-dom.mdx +73 -0
- package/docs/guides/test/migrate-from-jest.mdx +125 -0
- package/docs/guides/test/mock-clock.mdx +50 -0
- package/docs/guides/test/mock-functions.mdx +70 -0
- package/docs/guides/test/rerun-each.mdx +16 -0
- package/docs/guides/test/run-tests.mdx +116 -0
- package/docs/guides/test/skip-tests.mdx +43 -0
- package/docs/guides/test/snapshot.mdx +102 -0
- package/docs/guides/test/spy-on.mdx +49 -0
- package/docs/guides/test/svelte-test.mdx +113 -0
- package/docs/guides/test/testing-library.mdx +93 -0
- package/docs/guides/test/timeout.mdx +17 -0
- package/docs/guides/test/todo-tests.mdx +74 -0
- package/docs/guides/test/update-snapshots.mdx +49 -0
- package/docs/guides/test/watch-mode.mdx +24 -0
- package/docs/guides/util/base64.mdx +17 -0
- package/docs/guides/util/deep-equals.mdx +41 -0
- package/docs/guides/util/deflate.mdx +20 -0
- package/docs/guides/util/detect-bun.mdx +28 -0
- package/docs/guides/util/entrypoint.mdx +19 -0
- package/docs/guides/util/escape-html.mdx +24 -0
- package/docs/guides/util/file-url-to-path.mdx +16 -0
- package/docs/guides/util/gzip.mdx +20 -0
- package/docs/guides/util/hash-a-password.mdx +56 -0
- package/docs/guides/util/import-meta-dir.mdx +15 -0
- package/docs/guides/util/import-meta-file.mdx +15 -0
- package/docs/guides/util/import-meta-path.mdx +15 -0
- package/docs/guides/util/javascript-uuid.mdx +25 -0
- package/docs/guides/util/main.mdx +43 -0
- package/docs/guides/util/path-to-file-url.mdx +16 -0
- package/docs/guides/util/sleep.mdx +24 -0
- package/docs/guides/util/upgrade.mdx +93 -0
- package/docs/guides/util/version.mdx +23 -0
- package/docs/guides/util/which-path-to-executable-bin.mdx +17 -0
- package/docs/guides/websocket/compression.mdx +33 -0
- package/docs/guides/websocket/context.mdx +79 -0
- package/docs/guides/websocket/pubsub.mdx +43 -0
- package/docs/guides/websocket/simple.mdx +38 -0
- package/docs/guides/write-file/append.mdx +54 -0
- package/docs/guides/write-file/basic.mdx +46 -0
- package/docs/guides/write-file/blob.mdx +30 -0
- package/docs/guides/write-file/cat.mdx +19 -0
- package/docs/guides/write-file/file-cp.mdx +18 -0
- package/docs/guides/write-file/filesink.mdx +54 -0
- package/docs/guides/write-file/response.mdx +19 -0
- package/docs/guides/write-file/stdout.mdx +23 -0
- package/docs/guides/write-file/stream.mdx +19 -0
- package/docs/guides/write-file/unlink.mdx +18 -0
- package/docs/index.mdx +133 -0
- package/docs/installation.mdx +372 -0
- package/docs/pm/bunx.mdx +91 -0
- package/docs/pm/catalogs.mdx +292 -0
- package/docs/pm/cli/add.mdx +179 -0
- package/docs/pm/cli/audit.mdx +60 -0
- package/docs/pm/cli/info.mdx +70 -0
- package/docs/pm/cli/install.mdx +591 -0
- package/docs/pm/cli/link.mdx +61 -0
- package/docs/pm/cli/outdated.mdx +197 -0
- package/docs/pm/cli/patch.mdx +69 -0
- package/docs/pm/cli/pm.mdx +323 -0
- package/docs/pm/cli/publish.mdx +131 -0
- package/docs/pm/cli/remove.mdx +16 -0
- package/docs/pm/cli/update.mdx +140 -0
- package/docs/pm/cli/why.mdx +84 -0
- package/docs/pm/filter.mdx +127 -0
- package/docs/pm/global-cache.mdx +72 -0
- package/docs/pm/isolated-installs.mdx +220 -0
- package/docs/pm/lifecycle.mdx +64 -0
- package/docs/pm/lockfile.mdx +64 -0
- package/docs/pm/npmrc.mdx +245 -0
- package/docs/pm/overrides.mdx +83 -0
- package/docs/pm/scopes-registries.mdx +35 -0
- package/docs/pm/security-scanner-api.mdx +95 -0
- package/docs/pm/workspaces.mdx +115 -0
- package/docs/project/benchmarking.mdx +296 -0
- package/docs/project/bindgen.mdx +223 -0
- package/docs/project/building-windows.mdx +143 -0
- package/docs/project/contributing.mdx +366 -0
- package/docs/project/feedback.mdx +20 -0
- package/docs/project/license.mdx +78 -0
- package/docs/project/roadmap.mdx +8 -0
- package/docs/quickstart.mdx +251 -0
- package/docs/runtime/archive.mdx +452 -0
- package/docs/runtime/auto-install.mdx +97 -0
- package/docs/runtime/binary-data.mdx +846 -0
- package/docs/runtime/bun-apis.mdx +60 -0
- package/docs/runtime/bunfig.mdx +765 -0
- package/docs/runtime/c-compiler.mdx +204 -0
- package/docs/runtime/child-process.mdx +659 -0
- package/docs/runtime/color.mdx +267 -0
- package/docs/runtime/console.mdx +67 -0
- package/docs/runtime/cookies.mdx +454 -0
- package/docs/runtime/cron.mdx +358 -0
- package/docs/runtime/csrf.mdx +171 -0
- package/docs/runtime/debugger.mdx +335 -0
- package/docs/runtime/environment-variables.mdx +231 -0
- package/docs/runtime/ffi.mdx +567 -0
- package/docs/runtime/file-io.mdx +306 -0
- package/docs/runtime/file-system-router.mdx +118 -0
- package/docs/runtime/file-types.mdx +482 -0
- package/docs/runtime/glob.mdx +181 -0
- package/docs/runtime/globals.mdx +72 -0
- package/docs/runtime/hashing.mdx +315 -0
- package/docs/runtime/html-rewriter.mdx +333 -0
- package/docs/runtime/http/cookies.mdx +79 -0
- package/docs/runtime/http/error-handling.mdx +40 -0
- package/docs/runtime/http/metrics.mdx +36 -0
- package/docs/runtime/http/routing.mdx +289 -0
- package/docs/runtime/http/server.mdx +672 -0
- package/docs/runtime/http/tls.mdx +101 -0
- package/docs/runtime/http/websockets.mdx +414 -0
- package/docs/runtime/index.mdx +223 -0
- package/docs/runtime/json5.mdx +271 -0
- package/docs/runtime/jsonl.mdx +188 -0
- package/docs/runtime/jsx.mdx +115 -0
- package/docs/runtime/markdown.mdx +381 -0
- package/docs/runtime/module-resolution.mdx +374 -0
- package/docs/runtime/networking/dns.mdx +111 -0
- package/docs/runtime/networking/fetch.mdx +484 -0
- package/docs/runtime/networking/tcp.mdx +239 -0
- package/docs/runtime/networking/udp.mdx +180 -0
- package/docs/runtime/node-api.mdx +19 -0
- package/docs/runtime/nodejs-compat.mdx +468 -0
- package/docs/runtime/plugins.mdx +419 -0
- package/docs/runtime/redis.mdx +583 -0
- package/docs/runtime/repl.mdx +176 -0
- package/docs/runtime/s3.mdx +881 -0
- package/docs/runtime/secrets.mdx +340 -0
- package/docs/runtime/semver.mdx +57 -0
- package/docs/runtime/shell.mdx +637 -0
- package/docs/runtime/sql.mdx +1404 -0
- package/docs/runtime/sqlite.mdx +721 -0
- package/docs/runtime/streams.mdx +232 -0
- package/docs/runtime/templating/create.mdx +269 -0
- package/docs/runtime/templating/init.mdx +58 -0
- package/docs/runtime/toml.mdx +238 -0
- package/docs/runtime/transpiler.mdx +288 -0
- package/docs/runtime/typescript.mdx +58 -0
- package/docs/runtime/utils.mdx +1010 -0
- package/docs/runtime/watch-mode.mdx +161 -0
- package/docs/runtime/web-apis.mdx +29 -0
- package/docs/runtime/workers.mdx +314 -0
- package/docs/runtime/yaml.mdx +470 -0
- package/docs/snippets/cli/add.mdx +166 -0
- package/docs/snippets/cli/build.mdx +197 -0
- package/docs/snippets/cli/bunx.mdx +49 -0
- package/docs/snippets/cli/feedback.mdx +17 -0
- package/docs/snippets/cli/init.mdx +84 -0
- package/docs/snippets/cli/install.mdx +173 -0
- package/docs/snippets/cli/link.mdx +163 -0
- package/docs/snippets/cli/outdated.mdx +140 -0
- package/docs/snippets/cli/patch.mdx +171 -0
- package/docs/snippets/cli/publish.mdx +198 -0
- package/docs/snippets/cli/remove.mdx +146 -0
- package/docs/snippets/cli/run.mdx +305 -0
- package/docs/snippets/cli/test.mdx +105 -0
- package/docs/snippets/cli/update.mdx +144 -0
- package/docs/test/code-coverage.mdx +409 -0
- package/docs/test/configuration.mdx +574 -0
- package/docs/test/dates-times.mdx +129 -0
- package/docs/test/discovery.mdx +90 -0
- package/docs/test/dom.mdx +226 -0
- package/docs/test/index.mdx +409 -0
- package/docs/test/lifecycle.mdx +366 -0
- package/docs/test/mocks.mdx +637 -0
- package/docs/test/reporters.mdx +126 -0
- package/docs/test/runtime-behavior.mdx +342 -0
- package/docs/test/snapshots.mdx +434 -0
- package/docs/test/writing-tests.mdx +672 -0
- package/docs/typescript.mdx +54 -0
- package/extensions.d.ts +40 -0
- package/fetch.d.ts +79 -0
- package/ffi.d.ts +1154 -0
- package/globals.d.ts +2067 -0
- package/html-rewriter.d.ts +186 -0
- package/index.d.ts +32 -0
- package/jsc.d.ts +233 -0
- package/jsx.d.ts +11 -0
- package/overrides.d.ts +376 -0
- package/package.json +53 -0
- package/redis.d.ts +3352 -0
- package/s3.d.ts +1354 -0
- package/security.d.ts +101 -0
- package/serve.d.ts +1296 -0
- package/shell.d.ts +380 -0
- package/sql.d.ts +887 -0
- package/sqlite.d.ts +1322 -0
- package/test-globals.d.ts +22 -0
- package/test.d.ts +2392 -0
- package/vendor/expect-type/branding.d.ts +283 -0
- package/vendor/expect-type/index.d.ts +1207 -0
- package/vendor/expect-type/messages.d.ts +395 -0
- package/vendor/expect-type/overloads.d.ts +669 -0
- package/vendor/expect-type/utils.d.ts +431 -0
- package/wasm.d.ts +193 -0
package/shell.d.ts
ADDED
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
declare module "bun" {
|
|
2
|
+
type ShellExpression =
|
|
3
|
+
| { toString(): string }
|
|
4
|
+
| Array<ShellExpression>
|
|
5
|
+
| string
|
|
6
|
+
| { raw: string }
|
|
7
|
+
| Subprocess<SpawnOptions.Writable, SpawnOptions.Readable, SpawnOptions.Readable>
|
|
8
|
+
| SpawnOptions.Readable
|
|
9
|
+
| SpawnOptions.Writable
|
|
10
|
+
| ReadableStream;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* The [Bun shell](https://bun.com/docs/runtime/shell) is a powerful tool for running shell commands.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* const result = await $`echo "Hello, world!"`.text();
|
|
18
|
+
* console.log(result); // "Hello, world!"
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @category Process Management
|
|
22
|
+
*/
|
|
23
|
+
function $(strings: TemplateStringsArray, ...expressions: ShellExpression[]): $.ShellPromise;
|
|
24
|
+
|
|
25
|
+
type $ = typeof $;
|
|
26
|
+
|
|
27
|
+
namespace $ {
|
|
28
|
+
/**
|
|
29
|
+
* Perform bash-like brace expansion on the given pattern.
|
|
30
|
+
* @param pattern - Brace pattern to expand
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```js
|
|
34
|
+
* const result = braces('index.{js,jsx,ts,tsx}');
|
|
35
|
+
* console.log(result) // ['index.js', 'index.jsx', 'index.ts', 'index.tsx']
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
function braces(pattern: string): string[];
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Escape strings for input into shell commands.
|
|
42
|
+
* @param input
|
|
43
|
+
*/
|
|
44
|
+
function escape(input: string): string;
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
*
|
|
48
|
+
* Change the default environment variables for shells created by this instance.
|
|
49
|
+
*
|
|
50
|
+
* @param newEnv Default environment variables to use for shells created by this instance.
|
|
51
|
+
* @default process.env
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```js
|
|
55
|
+
* import {$} from 'bun';
|
|
56
|
+
* $.env({ BUN: "bun" });
|
|
57
|
+
* await $`echo $BUN`;
|
|
58
|
+
* // "bun"
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
function env(newEnv?: Record<string, string | undefined> | NodeJS.Dict<string> | undefined): $;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
*
|
|
65
|
+
* @param newCwd Default working directory to use for shells created by this instance.
|
|
66
|
+
*/
|
|
67
|
+
function cwd(newCwd?: string): $;
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Configure the shell to not throw an exception on non-zero exit codes.
|
|
71
|
+
*/
|
|
72
|
+
function nothrow(): $;
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Configure whether or not the shell should throw an exception on non-zero exit codes.
|
|
76
|
+
*/
|
|
77
|
+
function throws(shouldThrow: boolean): $;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* The `Bun.$.ShellPromise` class represents a shell command that gets executed
|
|
81
|
+
* once awaited, or called with `.text()`, `.json()`, etc.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```ts
|
|
85
|
+
* const myShellPromise = $`echo "Hello, world!"`;
|
|
86
|
+
* const result = await myShellPromise.text();
|
|
87
|
+
* console.log(result); // "Hello, world!"
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
class ShellPromise extends Promise<ShellOutput> {
|
|
91
|
+
get stdin(): WritableStream;
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Change the current working directory of the shell.
|
|
95
|
+
* @param newCwd - The new working directory
|
|
96
|
+
*/
|
|
97
|
+
cwd(newCwd: string): this;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Set environment variables for the shell.
|
|
101
|
+
* @param newEnv - The new environment variables
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* await $`echo $FOO`.env({ ...process.env, FOO: "LOL!" })
|
|
106
|
+
* expect(stdout.toString()).toBe("LOL!");
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
env(newEnv: Record<string, string | undefined> | NodeJS.Dict<string> | undefined): this;
|
|
110
|
+
|
|
111
|
+
/**
|
|
112
|
+
* By default, the shell will write to the current process's stdout and stderr, as well as buffering that output.
|
|
113
|
+
*
|
|
114
|
+
* This configures the shell to only buffer the output.
|
|
115
|
+
* @param isQuiet - Whether to suppress output. Defaults to true.
|
|
116
|
+
*/
|
|
117
|
+
quiet(isQuiet?: boolean): this;
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Read from stdout as a string, line by line
|
|
121
|
+
*
|
|
122
|
+
* Automatically calls {@link quiet} to disable echoing to stdout.
|
|
123
|
+
*/
|
|
124
|
+
lines(): AsyncIterable<string>;
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* Read from stdout as a string.
|
|
128
|
+
*
|
|
129
|
+
* Automatically calls {@link quiet} to disable echoing to stdout.
|
|
130
|
+
*
|
|
131
|
+
* @param encoding - The encoding to use when decoding the output
|
|
132
|
+
* @returns A promise that resolves with stdout as a string
|
|
133
|
+
*
|
|
134
|
+
* @example
|
|
135
|
+
* **Read as UTF-8 string**
|
|
136
|
+
* ```ts
|
|
137
|
+
* const output = await $`echo hello`.text();
|
|
138
|
+
* console.log(output); // "hello\n"
|
|
139
|
+
* ```
|
|
140
|
+
*
|
|
141
|
+
* **Read as base64 string**
|
|
142
|
+
* ```ts
|
|
143
|
+
* const output = await $`echo ${atob("hello")}`.text("base64");
|
|
144
|
+
* console.log(output); // "hello\n"
|
|
145
|
+
* ```
|
|
146
|
+
*/
|
|
147
|
+
text(encoding?: BufferEncoding): Promise<string>;
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Read from stdout as a JSON object
|
|
151
|
+
*
|
|
152
|
+
* Automatically calls {@link quiet}
|
|
153
|
+
*
|
|
154
|
+
* @returns A promise that resolves with stdout as a JSON object
|
|
155
|
+
* @example
|
|
156
|
+
*
|
|
157
|
+
* ```ts
|
|
158
|
+
* const output = await $`echo '{"hello": 123}'`.json();
|
|
159
|
+
* console.log(output); // { hello: 123 }
|
|
160
|
+
* ```
|
|
161
|
+
*
|
|
162
|
+
*/
|
|
163
|
+
json(): Promise<any>;
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Read from stdout as an ArrayBuffer
|
|
167
|
+
*
|
|
168
|
+
* Automatically calls {@link quiet}
|
|
169
|
+
* @returns A promise that resolves with stdout as an ArrayBuffer
|
|
170
|
+
* @example
|
|
171
|
+
*
|
|
172
|
+
* ```ts
|
|
173
|
+
* const output = await $`echo hello`.arrayBuffer();
|
|
174
|
+
* console.log(output); // ArrayBuffer { byteLength: 6 }
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
arrayBuffer(): Promise<ArrayBuffer>;
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Read from stdout as a Blob
|
|
181
|
+
*
|
|
182
|
+
* Automatically calls {@link quiet}
|
|
183
|
+
* @returns A promise that resolves with stdout as a Blob
|
|
184
|
+
* @example
|
|
185
|
+
* ```ts
|
|
186
|
+
* const output = await $`echo hello`.blob();
|
|
187
|
+
* console.log(output); // Blob { size: 6, type: "" }
|
|
188
|
+
* ```
|
|
189
|
+
*/
|
|
190
|
+
blob(): Promise<Blob>;
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* Configure the shell to not throw an exception on non-zero exit codes. Throwing can be re-enabled with `.throws(true)`.
|
|
194
|
+
*
|
|
195
|
+
* By default, the shell with throw an exception on commands which return non-zero exit codes.
|
|
196
|
+
*/
|
|
197
|
+
nothrow(): this;
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* Configure whether or not the shell should throw an exception on non-zero exit codes.
|
|
201
|
+
*
|
|
202
|
+
* By default, this is configured to `true`.
|
|
203
|
+
*/
|
|
204
|
+
throws(shouldThrow: boolean): this;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* ShellError represents an error that occurred while executing a shell command with [the Bun Shell](https://bun.com/docs/runtime/shell).
|
|
209
|
+
*
|
|
210
|
+
* @example
|
|
211
|
+
* ```ts
|
|
212
|
+
* try {
|
|
213
|
+
* const result = await $`exit 1`;
|
|
214
|
+
* } catch (error) {
|
|
215
|
+
* if (error instanceof $.ShellError) {
|
|
216
|
+
* console.log(error.exitCode); // 1
|
|
217
|
+
* }
|
|
218
|
+
* }
|
|
219
|
+
* ```
|
|
220
|
+
*/
|
|
221
|
+
class ShellError extends Error implements ShellOutput {
|
|
222
|
+
readonly stdout: Buffer;
|
|
223
|
+
readonly stderr: Buffer;
|
|
224
|
+
readonly exitCode: number;
|
|
225
|
+
|
|
226
|
+
/**
|
|
227
|
+
* Read from stdout as a string
|
|
228
|
+
*
|
|
229
|
+
* @param encoding - The encoding to use when decoding the output
|
|
230
|
+
* @returns Stdout as a string with the given encoding
|
|
231
|
+
*
|
|
232
|
+
* @example
|
|
233
|
+
* **Read as UTF-8 string**
|
|
234
|
+
* ```ts
|
|
235
|
+
* const output = await $`echo hello`;
|
|
236
|
+
* console.log(output.text()); // "hello\n"
|
|
237
|
+
* ```
|
|
238
|
+
*
|
|
239
|
+
* **Read as base64 string**
|
|
240
|
+
* ```ts
|
|
241
|
+
* const output = await $`echo ${atob("hello")}`;
|
|
242
|
+
* console.log(output.text("base64")); // "hello\n"
|
|
243
|
+
* ```
|
|
244
|
+
*/
|
|
245
|
+
text(encoding?: BufferEncoding): string;
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Read from stdout as a JSON object
|
|
249
|
+
*
|
|
250
|
+
* @returns Stdout as a JSON object
|
|
251
|
+
* @example
|
|
252
|
+
*
|
|
253
|
+
* ```ts
|
|
254
|
+
* const output = await $`echo '{"hello": 123}'`;
|
|
255
|
+
* console.log(output.json()); // { hello: 123 }
|
|
256
|
+
* ```
|
|
257
|
+
*
|
|
258
|
+
*/
|
|
259
|
+
json(): any;
|
|
260
|
+
|
|
261
|
+
/**
|
|
262
|
+
* Read from stdout as an ArrayBuffer
|
|
263
|
+
*
|
|
264
|
+
* @returns Stdout as an ArrayBuffer
|
|
265
|
+
* @example
|
|
266
|
+
*
|
|
267
|
+
* ```ts
|
|
268
|
+
* const output = await $`echo hello`;
|
|
269
|
+
* console.log(output.arrayBuffer()); // ArrayBuffer { byteLength: 6 }
|
|
270
|
+
* ```
|
|
271
|
+
*/
|
|
272
|
+
arrayBuffer(): ArrayBuffer;
|
|
273
|
+
|
|
274
|
+
/**
|
|
275
|
+
* Read from stdout as a Blob
|
|
276
|
+
*
|
|
277
|
+
* @returns Stdout as a blob
|
|
278
|
+
* @example
|
|
279
|
+
* ```ts
|
|
280
|
+
* const output = await $`echo hello`;
|
|
281
|
+
* console.log(output.blob()); // Blob { size: 6, type: "" }
|
|
282
|
+
* ```
|
|
283
|
+
*/
|
|
284
|
+
blob(): Blob;
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Read from stdout as an Uint8Array
|
|
288
|
+
*
|
|
289
|
+
* @returns Stdout as an Uint8Array
|
|
290
|
+
* @example
|
|
291
|
+
*```ts
|
|
292
|
+
* const output = await $`echo hello`;
|
|
293
|
+
* console.log(output.bytes()); // Uint8Array { byteLength: 6 }
|
|
294
|
+
* ```
|
|
295
|
+
*/
|
|
296
|
+
bytes(): Uint8Array<ArrayBuffer>;
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
interface ShellOutput {
|
|
300
|
+
readonly stdout: Buffer;
|
|
301
|
+
readonly stderr: Buffer;
|
|
302
|
+
readonly exitCode: number;
|
|
303
|
+
|
|
304
|
+
/**
|
|
305
|
+
* Read from stdout as a string
|
|
306
|
+
*
|
|
307
|
+
* @param encoding - The encoding to use when decoding the output
|
|
308
|
+
* @returns Stdout as a string with the given encoding
|
|
309
|
+
*
|
|
310
|
+
* @example
|
|
311
|
+
* **Read as UTF-8 string**
|
|
312
|
+
* ```ts
|
|
313
|
+
* const output = await $`echo hello`;
|
|
314
|
+
* console.log(output.text()); // "hello\n"
|
|
315
|
+
* ```
|
|
316
|
+
*
|
|
317
|
+
* **Read as base64 string**
|
|
318
|
+
* ```ts
|
|
319
|
+
* const output = await $`echo ${atob("hello")}`;
|
|
320
|
+
* console.log(output.text("base64")); // "hello\n"
|
|
321
|
+
* ```
|
|
322
|
+
*/
|
|
323
|
+
text(encoding?: BufferEncoding): string;
|
|
324
|
+
|
|
325
|
+
/**
|
|
326
|
+
* Read from stdout as a JSON object
|
|
327
|
+
*
|
|
328
|
+
* @returns Stdout as a JSON object
|
|
329
|
+
* @example
|
|
330
|
+
*
|
|
331
|
+
* ```ts
|
|
332
|
+
* const output = await $`echo '{"hello": 123}'`;
|
|
333
|
+
* console.log(output.json()); // { hello: 123 }
|
|
334
|
+
* ```
|
|
335
|
+
*
|
|
336
|
+
*/
|
|
337
|
+
json(): any;
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Read from stdout as an ArrayBuffer
|
|
341
|
+
*
|
|
342
|
+
* @returns Stdout as an ArrayBuffer
|
|
343
|
+
* @example
|
|
344
|
+
*
|
|
345
|
+
* ```ts
|
|
346
|
+
* const output = await $`echo hello`;
|
|
347
|
+
* console.log(output.arrayBuffer()); // ArrayBuffer { byteLength: 6 }
|
|
348
|
+
* ```
|
|
349
|
+
*/
|
|
350
|
+
arrayBuffer(): ArrayBuffer;
|
|
351
|
+
|
|
352
|
+
/**
|
|
353
|
+
* Read from stdout as an Uint8Array
|
|
354
|
+
*
|
|
355
|
+
* @returns Stdout as an Uint8Array
|
|
356
|
+
* @example
|
|
357
|
+
*
|
|
358
|
+
* ```ts
|
|
359
|
+
* const output = await $`echo hello`;
|
|
360
|
+
* console.log(output.bytes()); // Uint8Array { byteLength: 6 }
|
|
361
|
+
* ```
|
|
362
|
+
*/
|
|
363
|
+
bytes(): Uint8Array<ArrayBuffer>;
|
|
364
|
+
|
|
365
|
+
/**
|
|
366
|
+
* Read from stdout as a Blob
|
|
367
|
+
*
|
|
368
|
+
* @returns Stdout as a blob
|
|
369
|
+
* @example
|
|
370
|
+
* ```ts
|
|
371
|
+
* const output = await $`echo hello`;
|
|
372
|
+
* console.log(output.blob()); // Blob { size: 6, type: "" }
|
|
373
|
+
* ```
|
|
374
|
+
*/
|
|
375
|
+
blob(): Blob;
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
const Shell: new () => $;
|
|
379
|
+
}
|
|
380
|
+
}
|