use anyhow::Result;
use clap::Subcommand;
#[derive(Subcommand)]
pub enum DbCommands {
Create {
name: String,
#[arg(long, value_parser = ["redis", "sql", "graph"])]
r#type: String,
#[arg(long)]
scope: Option<String>,
#[arg(long)]
memory_mb: Option<u32>,
#[arg(long)]
idle_timeout: Option<String>,
#[arg(long)]
sleep_timeout: Option<String>,
},
List {
#[arg(long)]
scope: Option<String>,
},
Show {
name: String,
#[arg(long)]
url: bool,
#[arg(long)]
password: bool,
#[arg(long)]
env_vars: bool,
},
Shell {
name: String,
command: Option<String>,
},
Destroy {
name: String,
#[arg(short, long)]
yes: bool,
},
Wake {
name: String,
},
Token {
name: String,
#[arg(long)]
read_only: bool,
#[arg(long)]
expires: Option<String>,
},
}
pub async fn run(_command: DbCommands, _api_url: &str, _json: bool) -> Result<()> {
anyhow::bail!("database commands not yet implemented (Phase Meridian Step b)")
}