use std::path::PathBuf;
use clap::{Parser, Subcommand};
use clap_complete::Shell;
#[derive(Parser)]
#[command(version, about)]
pub struct Cli {
#[command(subcommand)]
pub command: Commands,
}
#[derive(Subcommand)]
pub enum Commands {
Init {
url: String,
#[arg(long)]
name: Option<String>,
#[arg(long)]
path: Option<PathBuf>,
},
Add {
branch: String,
#[arg(long)]
base: Option<String>,
#[arg(long)]
path: Option<PathBuf>,
},
#[command(alias = "ls")]
List {
#[arg(long)]
compact: bool,
},
#[command(alias = "rm")]
Remove {
name: String,
#[arg(long)]
delete_branch: bool,
#[arg(long)]
force: bool,
},
Completions {
shell: Shell,
},
}