use clap::{ArgAction, Parser};
use std::path::PathBuf;
#[derive(Debug, Parser)]
#[command(version)]
pub struct Args {
#[arg(short, long, action(ArgAction::Count))]
pub verbose: u8,
#[arg(long, group = "action")]
pub check_config: bool,
#[arg(long, group = "action")]
pub keygen: bool,
#[arg(long, group = "action")]
pub derive_pubkey: Option<PathBuf>,
#[arg(short, long)]
pub config: Option<PathBuf>,
#[arg(
long,
env = "REBUILDERD_SIGNING_KEY",
default_value = "./rebuilderd.sign.key"
)]
pub signing_key: PathBuf,
}