mesh_api/events.rs
1use crate::Model;
2
3#[derive(Debug, Clone)]
4pub enum Event {
5 Connecting,
6 Joined { node_id: String },
7 ModelsUpdated { models: Vec<Model> },
8 TokenDelta { request_id: String, delta: String },
9 Completed { request_id: String },
10 Failed { request_id: String, error: String },
11 Disconnected { reason: String },
12}
13
14pub trait EventListener: Send + Sync + 'static {
15 fn on_event(&self, event: Event);
16}