use crate::utils::input_bam::InputBam;
use clap::Args;
use std::fmt::Debug;
#[derive(Args, Debug)]
pub struct ExtractOptions {
#[clap(flatten)]
pub input: InputBam,
#[clap(short, long, default_value = "true",
default_value_ifs([
("molecular", "true", "false"),
("molecular", "false", "true"),
]))
]
pub reference: bool,
#[clap(long, default_value = "false")]
pub molecular: bool,
#[clap(long)]
pub m6a: Option<String>,
#[clap(short, long)]
pub cpg: Option<String>,
#[clap(long)]
pub msp: Option<String>,
#[clap(short, long)]
pub nuc: Option<String>,
#[clap(short, long)]
pub all: Option<String>,
#[clap(short, long, help_heading = "All-Format-Options")]
pub quality: bool,
#[clap(short, long, help_heading = "All-Format-Options")]
pub simplify: bool,
}