aboutsummaryrefslogtreecommitdiff
path: root/src/protocol.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/protocol.rs')
-rw-r--r--src/protocol.rs30
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>,
+}
+