nym_cli_commands/validator/mixnet/operators/nymnode/
mod.rs

1// Copyright 2024 - Nym Technologies SA <contact@nymtech.net>
2// SPDX-License-Identifier: Apache-2.0
3
4use clap::{Args, Subcommand};
5
6pub mod bond_nymnode;
7pub mod keys;
8pub mod nymnode_bonding_sign_payload;
9pub mod pledge;
10pub mod rewards;
11pub mod settings;
12pub mod unbond_nymnode;
13
14#[derive(Debug, Args)]
15#[clap(args_conflicts_with_subcommands = true, subcommand_required = true)]
16pub struct MixnetOperatorsNymNode {
17    #[clap(subcommand)]
18    pub command: MixnetOperatorsNymNodeCommands,
19}
20
21#[derive(Debug, Subcommand)]
22pub enum MixnetOperatorsNymNodeCommands {
23    /// Operations for Nym Node keys
24    Keys(keys::MixnetOperatorsNymNodeKeys),
25
26    /// Manage your Nym Node operator rewards
27    Rewards(rewards::MixnetOperatorsNymNodeRewards),
28
29    /// Manage your Nym Node settings stored in the directory
30    Settings(settings::MixnetOperatorsNymNodeSettings),
31
32    /// Manage your Nym Node pledge
33    Pledge(pledge::MixnetOperatorsNymNodePledge),
34
35    /// Bond to a Nym Node
36    Bond(bond_nymnode::Args),
37
38    /// Unbond from a Nym Node
39    Unbond(unbond_nymnode::Args),
40
41    /// Create base58-encoded payload required for producing valid bonding signature.
42    CreateNodeBondingSignPayload(nymnode_bonding_sign_payload::Args),
43}