use serde::{Deserialize, Serialize};
use uuid::Uuid;
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(tag = "type")]
pub enum QuantumMessage {
NodeAnnounce {
node_id: String,
location: String,
qubit_count: usize,
capabilities: Vec<String>,
},
RequestEntanglement {
request_id: Uuid,
from: String,
to: String,
num_pairs: usize,
},
EntanglementReady {
request_id: Uuid,
pairs: Vec<(usize, usize)>, },
TeleportationCorrections {
target_node: String,
target_qubit: usize,
m1: u8,
m2: u8,
},
ClassicalData {
from: String,
to: String,
data: Vec<u8>,
},
}