co_primitives/types/
invite.rs1use crate::{Did, IsDefault, Network};
5use serde::{Deserialize, Serialize};
6use std::collections::BTreeSet;
7
8#[derive(Debug, Clone, Serialize, Deserialize)]
9pub struct CoInviteMetadata {
10 pub id: String,
12
13 pub from: Did,
15
16 #[serde(with = "serde_bytes")]
18 pub peer: Option<Vec<u8>>,
19
20 #[serde(default, skip_serializing_if = "IsDefault::is_default")]
22 pub network: CoConnectivity,
23}
24
25#[derive(Debug, Default, Clone, Serialize, Deserialize, PartialEq)]
26pub struct CoConnectivity {
27 #[serde(rename = "n", default, skip_serializing_if = "BTreeSet::is_empty")]
30 pub network: BTreeSet<Network>,
31
32 #[serde(rename = "p", default, skip_serializing_if = "BTreeSet::is_empty")]
36 pub participants: BTreeSet<Did>,
37}