use clap::{Parser, Subcommand};
#[derive(Parser, Debug)]
pub struct Args {
#[command(subcommand)]
pub command: Commands,
}
#[derive(Subcommand, Debug, Clone, PartialEq, Eq)]
pub enum Commands {
Env {
#[command(subcommand)]
command: EnvCommand,
},
Activate {
#[command(subcommand)]
command: ActivateCommand,
},
Pkg {
#[command(subcommand)]
command: PkgCommand,
},
}
#[derive(Subcommand, Debug, Clone, PartialEq, Eq)]
pub enum ActivateCommand {
Sh,
Bash,
Zsh,
Nu,
}
#[derive(Subcommand, Debug, Clone, PartialEq, Eq)]
pub enum EnvCommand {
Add { path: String },
Remove { path: String },
Set { path: String },
}
#[derive(Subcommand, Debug, Clone, PartialEq, Eq)]
pub enum PkgCommand {
Add { path: String },
Remove { path: String },
}