use clap::Parser;
use std::path::PathBuf;
use crate::{OutputFormat, RootArgs, parse_kind_filter_arg};
#[derive(Debug, Clone, Parser)]
pub(crate) struct CheckArgs {
#[command(flatten)]
pub(crate) root: RootArgs,
#[arg(long)]
pub(crate) config: Option<PathBuf>,
#[arg(long)]
pub(crate) compat: bool,
#[arg(long, value_parser = parse_kind_filter_arg)]
pub(crate) kind: Option<String>,
#[arg(long)]
pub(crate) include_untracked: bool,
#[arg(long, value_enum, default_value_t = OutputFormat::Human)]
pub(crate) format: OutputFormat,
#[arg(long)]
pub(crate) output: Option<PathBuf>,
#[arg(long)]
pub(crate) receipt: Option<PathBuf>,
#[arg(long, value_parser = ["audit", "no-new", "strict", "release"])]
pub(crate) mode: Option<String>,
}