use std::sync::Arc; use crate::services::{ ai::AiService, deep_link::DeepLinkService, desktop::{RdpService, VncService}, local_terminal::LocalTerminalService, serial::SerialService, ssh::SshService, storage::StorageService, }; /// Shared application root. Services are added here only after their lifecycle /// and cancellation semantics are defined in the domain layer. #[derive(Clone, Default)] pub struct AppState { pub ai: Arc, pub deep_links: Arc, pub local_terminal: Arc, pub serial: Arc, pub rdp: Arc, pub vnc: Arc, pub ssh: Arc, pub storage: Arc, }