| 1 |
|
| 2 |
|
| 3 |
use super::str_enum::impl_str_enum; |
| 4 |
use serde::{Deserialize, Serialize}; |
| 5 |
|
| 6 |
|
| 7 |
|
| 8 |
|
| 9 |
|
| 10 |
|
| 11 |
|
| 12 |
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] |
| 13 |
pub enum SyncBillingStatus { |
| 14 |
#[serde(rename = "draft")] |
| 15 |
Draft, |
| 16 |
#[serde(rename = "active")] |
| 17 |
Active, |
| 18 |
#[serde(rename = "suspended_unpaid")] |
| 19 |
SuspendedUnpaid, |
| 20 |
#[serde(rename = "canceled")] |
| 21 |
Canceled, |
| 22 |
} |
| 23 |
|
| 24 |
impl_str_enum!(SyncBillingStatus { |
| 25 |
Draft => "draft", |
| 26 |
Active => "active", |
| 27 |
SuspendedUnpaid => "suspended_unpaid", |
| 28 |
Canceled => "canceled", |
| 29 |
}); |
| 30 |
|
| 31 |
|
| 32 |
|
| 33 |
|
| 34 |
|
| 35 |
|
| 36 |
|
| 37 |
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] |
| 38 |
pub enum SyncEnforcementMode { |
| 39 |
#[serde(rename = "per_key")] |
| 40 |
PerKey, |
| 41 |
#[serde(rename = "bulk")] |
| 42 |
Bulk, |
| 43 |
} |
| 44 |
|
| 45 |
impl_str_enum!(SyncEnforcementMode { |
| 46 |
PerKey => "per_key", |
| 47 |
Bulk => "bulk", |
| 48 |
}); |
| 49 |
|
| 50 |
|
| 51 |
|
| 52 |
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] |
| 53 |
pub enum SyncOperation { |
| 54 |
#[serde(rename = "INSERT")] |
| 55 |
Insert, |
| 56 |
#[serde(rename = "UPDATE")] |
| 57 |
Update, |
| 58 |
#[serde(rename = "DELETE")] |
| 59 |
Delete, |
| 60 |
} |
| 61 |
|
| 62 |
impl_str_enum!(SyncOperation { |
| 63 |
Insert => "INSERT", |
| 64 |
Update => "UPDATE", |
| 65 |
Delete => "DELETE", |
| 66 |
}); |
| 67 |
|
| 68 |
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] |
| 69 |
#[serde(rename_all = "lowercase")] |
| 70 |
pub enum SyncPlatform { |
| 71 |
Macos, |
| 72 |
Ios, |
| 73 |
Android, |
| 74 |
Windows, |
| 75 |
Linux, |
| 76 |
Web, |
| 77 |
} |
| 78 |
|
| 79 |
impl_str_enum!(SyncPlatform { |
| 80 |
Macos => "macos", |
| 81 |
Ios => "ios", |
| 82 |
Android => "android", |
| 83 |
Windows => "windows", |
| 84 |
Linux => "linux", |
| 85 |
Web => "web", |
| 86 |
}); |
| 87 |
|