use std::path::PathBuf;
use clap::Parser;
#[derive(Debug, Parser)]
pub struct CliCommand {
#[arg(default_value = "./dist")]
pub serve_dir: PathBuf,
#[arg(short = 'a', long = "address", default_value = "0.0.0.0")]
pub address: String,
#[arg(short = 'p', long = "port", default_value = "8080")]
pub port: usize,
#[arg(long = "spa")]
pub spa: bool,
#[arg(short = 'c', long = "cache-time", default_value = "0")]
pub cache_time: usize,
#[arg(short = 'Z', long = "compress")]
pub compress: bool,
#[arg(short = 'H', long = "header")]
pub headers: Vec<String>,
#[arg(long = "auth")]
pub basic_auth: Vec<String>,
#[arg(long = "cors")]
pub cors: bool,
#[arg(short = 'S', long = "shared-array-buffer")]
pub sab: bool,
#[arg(short = 'Q', long = "quiet")]
pub quiet: bool,
#[arg(short = 'w', long = "watch")]
pub watch: bool,
#[arg(long = "watch-dir")]
pub watch_dir: Option<PathBuf>,
#[arg(long = "no-watch-inject")]
pub no_watch_inject: bool,
#[arg(long = "stream-buffer-size", default_value = "4000")]
pub stream_buffer_size: usize,
}