use clap::Parser;
use snix_castore::{utils::ServiceUrlsGrpc, B3Digest};
#[derive(Parser)]
#[command(author, version, about)]
pub struct CliArgs {
#[clap(flatten)]
pub listen_args: tokio_listener::ListenerAddressLFlag,
#[clap(flatten)]
pub service_addrs: ServiceUrlsGrpc,
#[arg(short, long, help = "The root directory digest to serve")]
pub root_directory: B3Digest,
#[arg(
short,
long,
help = "The name of the file to serve if a client requests a directory e.g. index.html index.htm"
)]
pub index_names: Vec<String>,
#[arg(
short,
long,
help = "Whether a directory listing should be returned if a client requests a directory but none of the `index_names` matched"
)]
pub auto_index: bool,
}