use clap::{Args, Subcommand, ValueEnum};
#[derive(Subcommand, Debug)]
pub enum BuildCommand {
Robot(BuildTargetArgs),
Remote(BuildTargetArgs),
Rl(BuildTargetArgs),
}
#[derive(Debug, Clone, Copy, ValueEnum)]
pub enum VersionBump {
Patch,
Minor,
Major,
}
#[derive(Args, Debug, Clone)]
pub struct BuildTargetArgs {
#[arg(short, long)]
pub target: Option<String>,
#[arg(long, value_enum, conflicts_with = "version")]
pub bump: Option<VersionBump>,
#[arg(long, conflicts_with = "bump")]
pub version: Option<String>,
#[arg(long)]
pub dev: bool,
#[arg(long)]
pub non_interactive: bool,
}