use crate::{Did, IsDefault, Network};
use serde::{Deserialize, Serialize};
use std::collections::BTreeSet;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CoInviteMetadata {
pub id: String,
pub from: Did,
#[serde(with = "serde_bytes")]
pub peer: Option<Vec<u8>>,
#[serde(default, skip_serializing_if = "IsDefault::is_default")]
pub network: CoConnectivity,
}
#[derive(Debug, Default, Clone, Serialize, Deserialize, PartialEq)]
pub struct CoConnectivity {
#[serde(rename = "n", default, skip_serializing_if = "BTreeSet::is_empty")]
pub network: BTreeSet<Network>,
#[serde(rename = "p", default, skip_serializing_if = "BTreeSet::is_empty")]
pub participants: BTreeSet<Did>,
}