use clap::{Parser, Subcommand};
#[derive(Parser, Debug)]
#[command(author, version, about)]
pub struct Args {
#[command(subcommand)]
pub command: Option<Commands>,
}
#[derive(Subcommand, Debug)]
pub enum Commands {
Start,
Add {
#[arg(short, long)]
url: String,
#[arg(short, long)]
dir: String,
},
Status,
Stop,
Run {
#[arg(short, long)]
url: String,
#[arg(short, long)]
output: Option<String>,
#[arg(short = 't', long)]
threads: Option<u8>,
#[arg(long)]
verify_sha256: Option<String>,
#[arg(long)]
rate_limit: Option<u32>,
#[arg(short = 'd', long)]
dir: Option<String>,
#[arg(short = 'i', long)]
input: Option<String>,
#[arg(short = 'c', long)]
concurrent_files: Option<usize>,
},
}