use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct Greeting {
#[serde(rename = "QMP")]
pub qmp: QmpInfo,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct QmpInfo {
pub version: QmpVersion,
#[serde(default)]
pub capabilities: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct QmpVersion {
pub qemu: QmpVersionNumber,
#[serde(default)]
pub package: String,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct QmpVersionNumber {
pub major: u64,
pub minor: u64,
pub micro: u64,
}