types.rs (1102B)
1 #[cfg(not(feature = "std"))] 2 use alloc::{string::String, vec::Vec}; 3 4 use serde::{Deserialize, Serialize}; 5 6 pub const RADROOTS_REPLICA_TRANSFER_VERSION: u32 = 1; 7 8 #[derive(Clone, Debug, Serialize, Deserialize)] 9 pub struct RadrootsReplicaEventDraft { 10 pub kind: u32, 11 pub author: String, 12 pub content: String, 13 pub tags: Vec<Vec<String>>, 14 } 15 16 #[derive(Clone, Debug, Serialize, Deserialize)] 17 pub struct RadrootsReplicaSyncBundle { 18 pub version: u32, 19 pub events: Vec<RadrootsReplicaEventDraft>, 20 } 21 22 #[derive(Clone, Debug, Serialize, Deserialize)] 23 pub struct RadrootsReplicaFarmSelector { 24 pub id: Option<String>, 25 pub d_tag: Option<String>, 26 pub pubkey: Option<String>, 27 } 28 29 #[derive(Clone, Debug, Serialize, Deserialize)] 30 pub struct RadrootsReplicaSyncOptions { 31 pub include_profiles: Option<bool>, 32 pub include_list_sets: Option<bool>, 33 pub include_membership_claims: Option<bool>, 34 } 35 36 #[derive(Clone, Debug, Serialize, Deserialize)] 37 pub struct RadrootsReplicaSyncRequest { 38 pub farm: RadrootsReplicaFarmSelector, 39 pub options: Option<RadrootsReplicaSyncOptions>, 40 }