use clap::{Parser, Subcommand};
#[derive(Parser)]
#[command(name = "ffmpuzzle", about = "The daily FFmpeg encoding puzzle")]
pub struct Cli {
#[command(subcommand)]
pub command: Option<Commands>,
#[arg(long)]
pub offline: bool,
#[arg(long, default_value = "https://ffmpuzzle.com")]
pub api_url: String,
}
#[derive(Subcommand)]
pub enum Commands {
Guess {
#[arg(long)]
codec: Option<String>,
#[arg(long)]
crf: Option<String>,
#[arg(long)]
bitrate: Option<String>,
#[arg(long, alias = "res")]
resolution: Option<String>,
#[arg(long)]
audio: Option<String>,
#[arg(long)]
container: Option<String>,
#[arg(long)]
preset: Option<String>,
},
Status,
Share {
#[arg(long)]
copy: bool,
},
Stats,
Leaderboard,
}