pub fn collect_hypr_data() -> Result<(Vec<(ClientId, ClientData)>, Vec<(WorkspaceId, WorkspaceData)>, Vec<(MonitorId, MonitorData)>, Option<(String, ClientId)>, WorkspaceId, MonitorId)>
pub fn collect_hypr_data() -> Result<(Vec<(ClientId, ClientData)>, Vec<(WorkspaceId, WorkspaceData)>, Vec<(MonitorId, MonitorData)>, Option<(String, ClientId)>, WorkspaceId, MonitorId)>