diff options
Diffstat (limited to 'src/integration/types.rs')
| -rw-r--r-- | src/integration/types.rs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/integration/types.rs b/src/integration/types.rs index 8169ab98..928675f6 100644 --- a/src/integration/types.rs +++ b/src/integration/types.rs @@ -77,6 +77,12 @@ pub(crate) struct QwenInstallPaths { } #[derive(Debug)] +pub(crate) struct LettaInstallPaths { + pub hook_path: PathBuf, + pub settings_path: PathBuf, +} + +#[derive(Debug)] pub(crate) struct CursorInstallPaths { pub hook_path: PathBuf, pub hooks_path: PathBuf, @@ -134,6 +140,14 @@ pub(crate) struct QwenUninstallResult { pub updated_settings: bool, } +#[derive(Debug)] +pub(crate) struct LettaUninstallResult { + pub hook_path: PathBuf, + pub settings_path: PathBuf, + pub removed_hook_file: bool, + pub updated_settings: bool, +} + #[derive(Debug, Clone, PartialEq, Eq)] pub(crate) struct IntegrationStatus { pub target: crate::api::schema::IntegrationTarget, @@ -150,6 +164,17 @@ pub(crate) enum IntegrationStatusKind { Outdated, } +/// Status for an experimental target that is deliberately not part of the +/// frozen client endpoint `IntegrationTarget` enum. +#[derive(Debug, Clone, PartialEq, Eq)] +pub(crate) struct ExperimentalIntegrationStatus { + pub label: &'static str, + pub path: PathBuf, + pub state: IntegrationStatusKind, + pub installed_version: Option<u32>, + pub expected_version: u32, +} + #[derive(Debug, Clone, PartialEq, Eq)] pub(crate) struct IntegrationRecommendation { pub target: crate::api::schema::IntegrationTarget, |
