use {
clap::{builder::*, *},
kutil::cli::clap::*,
std::path::*,
};
#[derive(Parser)]
#[command(
name = "credence",
version,
propagate_version = true,
disable_help_flag = true,
disable_help_subcommand = true,
disable_version_flag = true,
styles = clap_styles())
]
pub struct CLI {
#[command(subcommand)]
pub subcommand: Option<SubCommand>,
#[arg(verbatim_doc_comment)]
pub assets_paths: Vec<PathBuf>,
#[arg(long = "grace-period", short = 'g', verbatim_doc_comment, default_value_t = 10)]
pub grace_period: u64,
#[arg(long, short = 'q', verbatim_doc_comment)]
pub quiet: bool,
#[arg(long, short, verbatim_doc_comment, action = ArgAction::Count)]
pub verbose: u8,
#[arg(long, long = "log", short = 'l', verbatim_doc_comment)]
pub log_path: Option<PathBuf>,
#[arg(long = "journald", short = 'j', verbatim_doc_comment)]
pub journald: bool,
#[arg(long, short = 'h', action = ArgAction::Help)]
pub help: Option<bool>,
}
#[derive(Subcommand)]
#[command()]
pub enum SubCommand {
Version(Version),
Completion(Completion),
Manual(Manual),
}