objectiveai-cli 2.0.5

ObjectiveAI command-line interface and embeddable library
// THIS FILE IS AUTO-GENERATED. DO NOT EDIT.
// Generated by objectiveai-cli-builder from objectiveai-json-schema/.

use clap::Subcommand;

#[derive(Subcommand)]
#[command(rename_all = "verbatim")]
pub enum GetCommand {
    #[command(name = "get")]
    Get,
}

#[derive(Subcommand)]
#[command(rename_all = "verbatim")]
pub enum Commands {
    #[command(name = "list")]
    List,
    AgentsConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    ApiConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    ApiHeadersConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    ApiLocalConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    ApiMode {
        #[command(subcommand)]
        command: GetCommand,
    },
    ApiRemoteConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    Config {
        #[command(subcommand)]
        command: GetCommand,
    },
    Favorite {
        #[command(subcommand)]
        command: GetCommand,
    },
    FunctionsConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    FunctionsInventionsConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    FunctionsProfilesConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    FunctionsProfilesPairsConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    PairFavorite {
        #[command(subcommand)]
        command: GetCommand,
    },
    SwarmsConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    ViewerConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    ViewerLocalConfig {
        #[command(subcommand)]
        command: GetCommand,
    },
    ViewerMode {
        #[command(subcommand)]
        command: GetCommand,
    },
    ViewerSecretSignaturePair {
        #[command(subcommand)]
        command: GetCommand,
    },
}

impl Commands {
    pub async fn handle(self, handle: &objectiveai_cli_sdk::output::Handle) -> Result<(), crate::error::Error> {
        match self {
            Commands::List => {
                const NAMES: &[&str] = &["AgentsConfig", "ApiConfig", "ApiHeadersConfig", "ApiLocalConfig", "ApiMode", "ApiRemoteConfig", "Config", "Favorite", "FunctionsConfig", "FunctionsInventionsConfig", "FunctionsProfilesConfig", "FunctionsProfilesPairsConfig", "PairFavorite", "SwarmsConfig", "ViewerConfig", "ViewerLocalConfig", "ViewerMode", "ViewerSecretSignaturePair"];
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schemas>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schemas {
                            schemas: NAMES.iter().map(|s| s.to_string()).collect(),
                        },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::AgentsConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.AgentsConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ApiConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ApiConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ApiHeadersConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ApiHeadersConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ApiLocalConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ApiLocalConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ApiMode { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ApiMode.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ApiRemoteConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ApiRemoteConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::Config { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.Config.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::Favorite { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.Favorite.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::FunctionsConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.FunctionsConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::FunctionsInventionsConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.FunctionsInventionsConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::FunctionsProfilesConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.FunctionsProfilesConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::FunctionsProfilesPairsConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.FunctionsProfilesPairsConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::PairFavorite { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.PairFavorite.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::SwarmsConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.SwarmsConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ViewerConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ViewerConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ViewerLocalConfig { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ViewerLocalConfig.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ViewerMode { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ViewerMode.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
            Commands::ViewerSecretSignaturePair { .. } => {
                let schema: serde_json::Value = serde_json::from_str(
                    include_str!("../../../../../objectiveai-json-schema/filesystem.config.ViewerSecretSignaturePair.json"),
                ).expect("embedded JSON Schema must parse");
                objectiveai_cli_sdk::output::Output::<objectiveai_cli_sdk::output::Schema>::Notification(
                    objectiveai_cli_sdk::output::Notification {
                        value: objectiveai_cli_sdk::output::Schema { schema },
                    },
                ).emit(handle).await;
                Ok(())
            }
        }
    }
}