use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
#[serde(tag = "tool_type")]
pub enum ToolValue {
#[serde(rename="flowmodule")]
Flowmodule(Box<models::FlowModuleTool>),
#[serde(rename="mcp")]
Mcp(Box<models::McpToolValue>),
#[serde(rename="websearch")]
Websearch(Box<models::WebsearchToolValue>),
}
impl Default for ToolValue {
fn default() -> Self {
Self::Flowmodule(Default::default())
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Language {
#[serde(rename = "deno")]
Deno,
#[serde(rename = "bun")]
Bun,
#[serde(rename = "python3")]
Python3,
#[serde(rename = "go")]
Go,
#[serde(rename = "bash")]
Bash,
#[serde(rename = "powershell")]
Powershell,
#[serde(rename = "postgresql")]
Postgresql,
#[serde(rename = "mysql")]
Mysql,
#[serde(rename = "bigquery")]
Bigquery,
#[serde(rename = "snowflake")]
Snowflake,
#[serde(rename = "mssql")]
Mssql,
#[serde(rename = "oracledb")]
Oracledb,
#[serde(rename = "graphql")]
Graphql,
#[serde(rename = "nativets")]
Nativets,
#[serde(rename = "php")]
Php,
#[serde(rename = "rust")]
Rust,
#[serde(rename = "ansible")]
Ansible,
#[serde(rename = "csharp")]
Csharp,
#[serde(rename = "nu")]
Nu,
#[serde(rename = "java")]
Java,
#[serde(rename = "ruby")]
Ruby,
#[serde(rename = "rlang")]
Rlang,
#[serde(rename = "duckdb")]
Duckdb,
}
impl Default for Language {
fn default() -> Language {
Self::Deno
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Type {
#[serde(rename = "aiagent")]
Aiagent,
}
impl Default for Type {
fn default() -> Type {
Self::Aiagent
}
}