use crate::cli::{CompareOutputFormatArg, FailOnArg, SeverityArg};
use clap::Args;
use std::path::PathBuf;
#[derive(Args)]
pub struct ReviewOptions {
#[arg(default_value = ".")]
pub path: PathBuf,
#[arg(long)]
pub base: Option<String>,
#[arg(long)]
pub head: Option<String>,
#[arg(long)]
pub config: Option<PathBuf>,
#[arg(long)]
pub baseline: Option<PathBuf>,
#[arg(long, value_enum)]
pub fail_on: Option<FailOnArg>,
#[arg(long, value_enum, default_value = "console")]
pub format: CompareOutputFormatArg,
#[arg(short, long)]
pub output: Option<PathBuf>,
#[arg(long)]
pub max_file_loc: Option<usize>,
#[arg(long)]
pub max_directory_modules: Option<usize>,
#[arg(long)]
pub max_directory_depth: Option<usize>,
#[arg(long, value_enum)]
pub min_severity: Option<SeverityArg>,
}