use serde::{ Deserialize, Serialize };
use crate::key::KeyId;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
pub enum KeyState {
Down,
Up,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct KeyEvent {
pub key: KeyId,
pub state: KeyState,
pub ts_ms: u64,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub enum InputEvent {
Key(KeyEvent),
Tick(u64),
}