UNPKG

@storm-software/workspace-tools

Version:

Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.

283 lines (248 loc) • 4.16 kB
// Generated by @storm-software/untyped // Do not edit this file directly export interface NapiExecutorSchema { /** * Output Path * * The path to the output directory * * @default "{sourceRoot}" * * @format path */ outputPath: string, /** * Package Name * * Build the specified library or the one at cwd * */ package: string, /** * Toolchain * * The type of toolchain to use for the build * * @default "stable" * * @enum stable,beta,nightly */ toolchain?: string, /** * Target Triple * * Build for the target triple, bypassed to `cargo build --target` * */ target?: string, /** * All Targets * * Build all targets * */ allTargets?: boolean, /** * Cargo Profile * * Build artifacts with the specified profile * */ profile?: string, /** * Release Mode * * Build in release mode * */ release?: boolean, /** * Cargo Features * * List of features to activate * */ features?: Array<string>, /** * All Features * * Activate all available features * */ allFeatures?: boolean, /** * JS Binding File * * The path to the output JavaScript file * * @default "binding.js" */ jsBinding: string, /** * DTS Binding File * * The path to the output TypeScript declaration file * * @default "binding.d.ts" */ dts: string, /** * Manifest Path * * The path to the Cargo.toml manifest file * * * @format path */ manifestPath: string, /** * Working Directory * * Working directory where napi command will be executed; other paths are relative to this * * * @format path */ cwd?: string, /** * NAPI Config Path * * Path to napi config JSON file * * * @format path */ configPath?: string, /** * package.json Path * * Path to package.json * * * @format path */ packageJsonPath?: string, /** * Cargo Target Dir * * Directory for all crate generated artifacts (cargo build --target-dir) * * * @format path */ targetDir?: string, /** * Platform Suffix * * Add platform triple to generated Node.js binding file, e.g. [name].linux-x64-gnu.node * * @default true */ platform?: boolean, /** * JS Package Name * * Package name in generated JS binding file. Works only with --platform * */ jsPackageName?: string, /** * Const Enum * * Whether to generate const enum for TypeScript bindings * */ constEnum?: boolean, /** * Disable JS Binding * * Disable generation of JS binding file. Works only with --platform * */ noJsBinding?: boolean, /** * DTS Header * * Custom file header for generated type def file (requires typedef feature) * */ dtsHeader?: string, /** * Disable Default DTS Header * * Disable default file header for generated type def file (requires typedef feature) * */ noDtsHeader?: boolean, /** * Enable DTS Cache * * Enable the DTS cache * * @default true */ dtsCache?: boolean, /** * ESM Output * * Emit an ESM JS binding file instead of CJS (works only with --platform) * */ esm?: boolean, /** * Strip Binary * * Strip the library to minimize file size * */ strip?: boolean, /** * Verbose * * Verbosely log build command trace * */ verbose?: boolean, /** * Binary * * Build only the specified binary * */ bin?: string, /** * Cross Compile * * [experimental] Cross-compile for the specified target with cargo-xwin on Windows and cargo-zigbuild on other platforms * */ crossCompile?: boolean, /** * Use cross * * [experimental] Use cross (https://github.com/cross-rs/cross) instead of cargo * */ useCross?: boolean, /** * Use @napi-rs/cross-toolchain * * [experimental] Use @napi-rs/cross-toolchain to cross-compile Linux arm/arm64/x64 gnu targets * */ useNapiCross?: boolean, /** * Watch * * Watch crate changes and build continuously with cargo-watch * */ watch?: boolean, /** * No Default Features * * Do not activate the default feature * */ noDefaultFeatures?: boolean, }