1use clap::{Args, Subcommand};
2#[derive(Debug, Args)]
4#[clap(args_conflicts_with_subcommands = true)]
5pub struct Wallet {
6 #[clap(subcommand)]
7 pub command: Option<WalletCommands>,
8}
9
10#[derive(Debug, Subcommand)]
11pub enum WalletCommands {
12 Rename(WalletRename),
14 New(WalletNew),
16 Add(WalletAdd),
18 List,
20 Del,
22}
23
24#[derive(Debug, Args)]
25pub struct WalletNew {
26 #[clap(short, long)]
27 pub name: Option<String>,
28}
29
30#[derive(Debug, Args)]
31pub struct WalletRename {
32 #[clap(short, long)]
33 pub old_name: Option<String>,
34 #[clap(short, long)]
35 pub new_name: Option<String>,
36}
37
38#[derive(Debug, Args)]
39pub struct WalletAdd {
40 #[clap(short, long)]
41 pub private_key: Option<String>,
42 #[clap(short, long)]
43 pub seed: Option<String>,
44 #[clap(short, long)]
45 pub name: Option<String>,
46}