diff options
Diffstat (limited to 'src/protocol.rs')
-rw-r--r-- | src/protocol.rs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/protocol.rs b/src/protocol.rs new file mode 100644 index 0000000..fdd84d4 --- /dev/null +++ b/src/protocol.rs @@ -0,0 +1,30 @@ +use serde::{Deserialize, Serialize}; + +use crate::occurence::Condition; + +#[derive(Debug, Serialize, Deserialize)] +pub enum ClientboundPacket { + Handshake { version: String }, + DownloadResponse(Vec<Task>), +} + +#[derive(Debug, Serialize, Deserialize)] +pub enum ServerboundPacket { + Download, +} + +#[derive(Debug, Serialize, Deserialize)] +pub struct Task { + name: String, + description: String, + + tags: Vec<String>, + priority: f64, + + completed: u64, + scheduled: u64, + + occurence: Option<Condition>, + deadline: Option<Condition>, +} + |