use std::path::PathBuf;

use indexmap::IndexSet;
use serde::{Deserialize, Serialize};

pub mod egui_mq;

#[derive(Serialize, Deserialize, Debug)]
pub enum WorkspaceClientMessage {
    AddLogEntry(LogFile),
    GetLogHistory,
}

#[derive(Serialize, Deserialize, Debug)]
pub enum WorkspaceServerMessage {
    LogHistory(IndexSet<LogFile>),
}

#[derive(Serialize, Deserialize, Hash, PartialEq, Eq, Debug)]
pub struct LogFile {
    pub name: String,
    pub path: PathBuf,
}
