/// A command that operates on individual accounts.
pub(crate)traitAccountCommand{
fnexecute(
&self,
manager: &mutAccountManager,
accounts: Vec<Arc<Mutex<SteamGuardAccount>>>,
)-> anyhow::Result<()>;
}
pub(crate)enumCommandType{
Const(Box<dynConstCommand>),
Manifest(Box<dynManifestCommand>),
Account(Box<dynAccountCommand>),
}
#[derive(Debug, Clone, Parser)]
#[clap(name="steamguard-cli", bin_name="steamguard", author, version, about = "Generate Steam 2FA codes and confirm Steam trades from the command line.", long_about = None)]
pub(crate)structArgs{
#[clap(flatten)]
pubglobal: GlobalArgs,
#[clap(subcommand)]
pubsub: Option<Subcommands>,
#[clap(flatten)]
pubcode: CodeCommand,
}
#[derive(Debug, Clone, Parser)]
pub(crate)structGlobalArgs{
#[clap(
short,
long,
conflicts_with="all",
help="Steam username, case-sensitive.",
long_help="Select the account you want by steam username. Case-sensitive. By default, the first account in the manifest is selected."
)]
pubusername: Option<String>,
#[clap(
short,
long,
conflicts_with="username",
help="Select all accounts in the manifest."
)]
puball: bool,
/// The path to the maFiles directory.
#[clap(
short,
long,
help="Specify which folder your maFiles are in. This should be a path to a folder that contains manifest.json. Default: ~/.config/steamguard-cli/maFiles"