use std::path::PathBuf;
use clap::{Args, Parser, Subcommand};
#[derive(Debug, Parser)]
#[command(
name = "rspyts",
version,
about = "Build one Rust API for Python and TypeScript"
)]
pub(crate) struct Cli {
#[command(subcommand)]
pub(crate) command: Command,
}
#[derive(Debug, Subcommand)]
pub(crate) enum Command {
Init(InitArgs),
Build(ProjectArgs),
Watch(ProjectArgs),
Check(ProjectArgs),
}
#[derive(Debug, Args)]
pub(crate) struct InitArgs {
pub(crate) path: PathBuf,
#[arg(long, default_value = "0.1.0")]
pub(crate) version: semver::Version,
}
#[derive(Debug, Args)]
pub(crate) struct ProjectArgs {
#[arg(long)]
pub(crate) config: Option<PathBuf>,
}