diff options
Diffstat (limited to 'src/api/schema/integrations.rs')
| -rw-r--r-- | src/api/schema/integrations.rs | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/api/schema/integrations.rs b/src/api/schema/integrations.rs new file mode 100644 index 00000000..49b27f96 --- /dev/null +++ b/src/api/schema/integrations.rs @@ -0,0 +1,38 @@ +use serde::{Deserialize, Serialize}; + +#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] +pub struct IntegrationInstallParams { + pub target: IntegrationTarget, +} + +#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] +pub struct IntegrationUninstallParams { + pub target: IntegrationTarget, +} + +#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] +#[serde(rename_all = "snake_case")] +pub enum IntegrationTarget { + Pi, + Omp, + Claude, + Codex, + Copilot, + Droid, + Kimi, + Opencode, + Kilo, + Hermes, + Qodercli, + Cursor, +} + +#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] +pub struct IntegrationInstallResult { + pub messages: Vec<String>, +} + +#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] +pub struct IntegrationUninstallResult { + pub messages: Vec<String>, +} |
