1use crate::{error::Error, Status};
5
6#[derive(Debug, server::Message, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)]
7#[event(Status)]
8pub struct StatusSubscribe;
9
10#[derive(Debug, server::Message, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)]
11#[response(Result<(), Error>)]
12pub struct CreateBackup;
13
14#[derive(Debug, server::Message, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)]
15#[response(Result<(), Error>)]
16pub struct CreateBackupFile {
17 pub backup_path: String,
18 pub location: fs::Location,
19}
20
21#[derive(Debug, server::Message, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)]
22#[response(Result<(), Error>)]
23pub struct RestoreBackup {
24 pub backup_path: String,
25 pub location: fs::Location,
26}
27
28#[derive(Debug, Clone, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)]
29pub enum RestoreProgress {
30 NotFound,
31 Downloading,
32 Restoring,
33 Restored,
34 Error,
35}
36
37#[derive(Debug, server::Message, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)]
38#[event(RestoreProgress)]
39pub struct SubscribeRestoreProgress;