
<!-- Generated by @storm-software/untyped -->
<!-- Do not edit this file directly -->

# Napi Executor

## `outputPath`
- **Type**: `string`
- **Default**: `"{sourceRoot}"`

> Output Path


The path to the output directory


## `package`
- **Type**: `string`

> Package Name


Build the specified library or the one at cwd


## `toolchain`
- **Type**: `string`
- **Default**: `"stable"`

> Toolchain


The type of toolchain to use for the build


## `target`
- **Type**: `string`

> Target Triple


Build for the target triple, bypassed to `cargo build --target`


## `allTargets`
- **Type**: `boolean`

> All Targets


Build all targets


## `profile`
- **Type**: `string`

> Cargo Profile


Build artifacts with the specified profile


## `release`
- **Type**: `boolean`

> Release Mode


Build in release mode


## `features`
- **Type**: `array`

> Cargo Features


List of features to activate


## `allFeatures`
- **Type**: `boolean`

> All Features


Activate all available features


## `jsBinding`
- **Type**: `string`
- **Default**: `"binding.js"`

> JS Binding File


The path to the output JavaScript file


## `dts`
- **Type**: `string`
- **Default**: `"binding.d.ts"`

> DTS Binding File


The path to the output TypeScript declaration file


## `manifestPath`
- **Type**: `string`

> Manifest Path


The path to the Cargo.toml manifest file


## `cwd`
- **Type**: `string`

> Working Directory


Working directory where napi command will be executed; other paths are relative to this


## `configPath`
- **Type**: `string`

> NAPI Config Path


Path to napi config JSON file


## `packageJsonPath`
- **Type**: `string`

> package.json Path


Path to package.json


## `targetDir`
- **Type**: `string`

> Cargo Target Dir


Directory for all crate generated artifacts (cargo build --target-dir)


## `platform`
- **Type**: `boolean`
- **Default**: `true`

> Platform Suffix


Add platform triple to generated Node.js binding file, e.g. [name].linux-x64-gnu.node


## `jsPackageName`
- **Type**: `string`

> JS Package Name


Package name in generated JS binding file. Works only with --platform


## `constEnum`
- **Type**: `boolean`

> Const Enum


Whether to generate const enum for TypeScript bindings


## `noJsBinding`
- **Type**: `boolean`

> Disable JS Binding


Disable generation of JS binding file. Works only with --platform


## `dtsHeader`
- **Type**: `string`

> DTS Header


Custom file header for generated type def file (requires typedef feature)


## `noDtsHeader`
- **Type**: `boolean`

> Disable Default DTS Header


Disable default file header for generated type def file (requires typedef feature)


## `dtsCache`
- **Type**: `boolean`
- **Default**: `true`

> Enable DTS Cache


Enable the DTS cache


## `esm`
- **Type**: `boolean`

> ESM Output


Emit an ESM JS binding file instead of CJS (works only with --platform)


## `strip`
- **Type**: `boolean`

> Strip Binary


Strip the library to minimize file size


## `verbose`
- **Type**: `boolean`

> Verbose


Verbosely log build command trace


## `bin`
- **Type**: `string`

> Binary


Build only the specified binary


## `crossCompile`
- **Type**: `boolean`

> Cross Compile


[experimental] Cross-compile for the specified target with cargo-xwin on Windows and cargo-zigbuild on other platforms


## `useCross`
- **Type**: `boolean`

> Use cross


[experimental] Use cross (https://github.com/cross-rs/cross) instead of cargo


## `useNapiCross`
- **Type**: `boolean`

> Use @napi-rs/cross-toolchain


[experimental] Use @napi-rs/cross-toolchain to cross-compile Linux arm/arm64/x64 gnu targets


## `watch`
- **Type**: `boolean`

> Watch


Watch crate changes and build continuously with cargo-watch


## `noDefaultFeatures`
- **Type**: `boolean`

> No Default Features


Do not activate the default feature


