openapi_nexus_config/
cli.rs1use clap::Parser;
4
5use crate::global_config::GlobalConfig;
6use crate::typescript_config::TypeScriptConfig;
7
8#[derive(Debug, Parser)]
10#[command(name = "openapi-nexus")]
11#[command(about = "Generate code from OpenAPI 3.1 specifications")]
12#[command(version)]
13pub struct CliArgs {
14 #[command(subcommand)]
15 pub command: Commands,
16}
17
18#[derive(Debug, Parser)]
19pub enum Commands {
20 Generate {
22 #[arg(long, env = "OPENAPI_NEXUS_CONFIG")]
24 config: Option<String>,
25
26 #[arg(short, long)]
28 verbose: bool,
29
30 #[command(flatten)]
32 global: GlobalConfig,
33
34 #[command(flatten)]
36 typescript: TypeScriptConfig,
37 },
38}