use crate::options::sub_command::Commands;
use clap::Parser;
#[derive(Parser)]
#[clap(author, version, about, long_about = None)]
pub struct Cli {
#[clap(subcommand)]
pub command: Option<Commands>,
#[clap(short, long)]
pub domain: String,
#[clap(short, long)]
pub respect_robots_txt: bool,
#[clap(short, long)]
pub subdomains: bool,
#[clap(short, long)]
pub tld: bool,
#[clap(short, long)]
pub verbose: bool,
#[clap(short = 'D', long)]
pub delay: Option<u64>,
#[clap(short, long)]
pub blacklist_url: Option<String>,
#[clap(short, long)]
pub user_agent: Option<String>,
#[clap(short = 'B', long)]
pub budget: Option<String>,
#[clap(short = 'E', long)]
pub external_domains: Option<Vec<String>>,
}