use std::path::PathBuf;
use clap::{Parser, ValueEnum};
#[derive(Parser, Debug)]
pub struct Args {
#[arg(long, conflicts_with = "file")]
pub generate_template: bool,
#[arg(short, long, required_unless_present = "generate_template")]
pub file: Option<String>,
#[arg(short, long, value_enum, default_value_t = OutputFormat::Table, requires = "file")]
pub mode: OutputFormat,
#[arg(short, long)]
pub output: Option<PathBuf>,
}
#[derive(Debug, Clone, ValueEnum)]
pub enum OutputFormat {
Text,
Table,
Json,
}