mutiny_rs/model/
invite.rs1use serde::{Deserialize, Serialize};
2use crate::model::channel::ChannelId;
3
4#[derive(Debug, Clone, Deserialize, Serialize)]
5#[serde(tag = "type")]
6pub enum InviteKind {
7 Group(Group),
8 ServerInvite(ServerInvite),
9}
10#[derive(Debug, Clone, Deserialize, Serialize)]
11pub struct Invite {
12 #[serde(rename = "_id")]
13 pub id: String,
14 pub channel: ChannelId,
15 pub creator: String,
16 #[serde(flatten)]
17 pub kind: InviteKind,
18}
19#[derive(Debug, Clone, Deserialize, Serialize)]
20pub struct Group {
21
22}
23#[derive(Debug, Clone, Deserialize, Serialize)]
24pub struct ServerInvite {
25 pub server: String,
26}