use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Eq, Deserialize, Serialize)]
pub struct Pixel {
pub r: u8,
pub g: u8,
pub b: u8,
}
#[derive(Debug, Clone, PartialEq, Eq, Deserialize, Serialize)]
pub struct Point {
pub x: i32,
pub y: i32,
}
#[derive(Debug, Clone, PartialEq, Eq, Deserialize, Serialize)]
pub struct Resolution {
pub width: u32,
pub height: u32,
}
#[derive(Debug, Clone, PartialEq, Eq, Deserialize, Serialize)]
pub struct Modifiers {
pub shift: bool,
pub ctrl: bool,
pub alt: bool,
pub win: bool,
}
#[derive(Debug, Clone, Deserialize, Serialize)]
pub struct WindowInfo {
pub title: String,
pub process: String,
pub x: i32,
pub y: i32,
pub width: i32,
pub height: i32,
}
#[derive(Debug, Clone)]
pub struct InputState {
pub keys: Vec<String>,
pub modifiers: Modifiers,
}