use clap::Parser;
use std::path::PathBuf;

#[derive(Parser, Debug)]
#[command(version, author, about, long_about)]
pub struct Argument {
    /// Custom the path of config file
    #[arg(short, long)]
    config_path: Option<PathBuf>,

    /// The port will listen on
    #[arg(short, long)]
    port: Option<u16>,
}

impl Argument {
    pub fn config_path(&self) -> &Option<PathBuf> {
        &self.config_path
    }

    pub fn port(&self) -> &Option<u16> {
        &self.port
    }
}
