@storm-software/workspace-tools
Version:
Tools for managing a Storm workspace, including various Nx generators and executors for common development tasks.
48 lines (45 loc) • 1.52 kB
TypeScript
import { CreateDependencies, CreateNodesV2 } from '@nx/devkit';
declare const name = "storm-software/rust";
declare const description = "Plugin for parsing Cargo.toml files";
type CargoPluginProfileMap = Record<string, string> & {
development?: string;
production?: string;
};
declare const DefaultCargoPluginProfileMap: {
development: string;
production: string;
};
/**
* Options for configuring the Storm Rust Nx plugin
*/
interface CargoPluginOptions {
/**
* Whether to include Rust applications as projects in the workspace
*/
includeApps?: boolean;
/**
* Whether to skip generating documentation for the projects
*/
skipDocs?: boolean;
/**
* The Rust toolchain to use for executing cargo commands
*/
toolchain?: "stable" | "beta" | "nightly";
/**
* Custom profile mappings for cargo build profiles
*/
profiles?: CargoPluginProfileMap;
}
/**
* Create nodes for Rust projects based on Cargo.toml files
*/
declare const createNodesV2: CreateNodesV2<CargoPluginOptions | undefined>;
/**
* Create dependencies between Rust projects based on Cargo metadata
*
* @param options - The user provided plugin options
* @param context - The plugin context
* @returns An array of project graph dependencies
*/
declare const createDependencies: CreateDependencies<CargoPluginOptions>;
export { type CargoPluginOptions, type CargoPluginProfileMap, DefaultCargoPluginProfileMap, createDependencies, createNodesV2, description, name };