# @types/shell-quote

> TypeScript definitions for shell-quote

Latest version **1.7.5** (published 2023-11-21) · MIT license · 0 weekly downloads

## Install

```sh
npm install @types/shell-quote
pnpm add @types/shell-quote
yarn add @types/shell-quote
bun add @types/shell-quote
```

## Health

**Score 45/100 (D)** — status: abandoned.

Positive: has types; no vulnerabilities; high maintenance score; popular repo; extremely popular.

Warnings: low downloads; no esm support.

Negative: abandoned.

## Facts

| | |
|---|---|
| Version | 1.7.5 |
| Published | 2023-11-21 |
| First published | 2017-07-14 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 5.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 51445 |
| Maintainers | types |

## Links

- npm: https://www.npmjs.com/package/@types/shell-quote
- Repository: https://github.com/DefinitelyTyped/DefinitelyTyped
- Homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/shell-quote
- npm.io page: https://npm.io/package/@types/shell-quote

## Recent versions

- 1.7.5 (latest) — 2023-11-21
- 1.7.1 (ts3.6) — 2021-07-06
- 1.7.0 (ts3.0) — 2020-06-24
- 1.6.1 (ts2.2) — 2019-01-25
- 1.7.4 — 2023-11-07
- 1.7.3 — 2023-10-18
- 1.7.2 — 2023-09-25
- 1.6.2 — 2020-05-15
- 1.6.0 — 2017-07-14

## README

# Installation
> `npm install --save @types/shell-quote`

# Summary
This package contains type definitions for shell-quote (https://github.com/substack/node-shell-quote).

# Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/shell-quote.
## [index.d.ts](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/shell-quote/index.d.ts)
````ts
export type ControlOperator = "||" | "&&" | ";;" | "|&" | "<(" | ">>" | ">&" | "&" | ";" | "(" | ")" | "|" | "<" | ">";

export type ParseEntry =
    | string
    | { op: ControlOperator }
    | { op: "glob"; pattern: string }
    | { comment: string };

export interface ParseOptions {
    /**
     * Custom escape character, default value is `\`
     */
    escape?: string | undefined;
}

/**
 * Return a quoted string for the array `args` suitable for using in shell commands.
 */
export function quote(args: readonly string[]): string;

/**
 * Return an array of arguments from the quoted string `cmd`.
 *
 * Interpolate embedded bash-style `$VARNAME` and `${VARNAME}` variables with the `env` object which like bash will replace undefined variables with `""`.
 */
export function parse(
    cmd: string,
    env?: { readonly [key: string]: string | undefined },
    opts?: ParseOptions,
): ParseEntry[];

/**
 * Return an array of arguments from the quoted string `cmd`.
 *
 * Interpolate embedded bash-style `$VARNAME` and `${VARNAME}` variables
 * with the `env` object which like bash will replace undefined variables with `""`.
 *
 * @param env
 *   A function to perform lookups.
 *   When env(key) returns a string, its result will be output just like env[key] would.
 *   When env(key) returns an object, it will be inserted into the result array like the operator objects.
 */
export function parse<T extends object | string>(
    cmd: string,
    env: (key: string) => T | undefined,
    opts?: ParseOptions,
): Array<ParseEntry | T>;

````

### Additional Details
 * Last updated: Mon, 20 Nov 2023 23:36:24 GMT
 * Dependencies: none

# Credits
These definitions were written by [Jason Cheatham](https://github.com/jason0x43), [Cameron Diver](https://github.com/CameronDiver), and [Opportunity Liu](https://github.com/OpportunityLiu).

---
_Source: https://npm.io/package/@types/shell-quote · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
