use clap::Parser;
use clap::Subcommand;

pub(crate) fn parse_args() -> Args {
    let args = Args::parse();

    args
}

/// A P2P smart contract execution node
#[derive(Parser)]
#[command(version, about, long_about = None)]
pub(crate) struct Args {
    #[command(subcommand)]
    pub(crate) command: Option<Commands>,
}

#[derive(Subcommand)]
pub(crate) enum Commands {
    /// Placeholder for future BTC commands
    Btc {},

    /// runs the Side Node
    Run { name: String },

    /// initializes the Side Node with a new keypair
    Init { name: String },
}
