use crate::models;
use serde::{Deserialize, Serialize};
#[serde_with::serde_as]
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GroupAnnouncement {
#[serde(
rename = "authorId",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub author_id: Option<Option<String>>,
#[serde(
rename = "createdAt",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub created_at: Option<Option<chrono::DateTime<chrono::FixedOffset>>>,
#[serde(
rename = "editorId",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub editor_id: Option<Option<String>>,
#[serde(
rename = "groupId",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub group_id: Option<Option<String>>,
#[serde(
rename = "id",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub id: Option<Option<String>>,
#[serde(
rename = "imageId",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub image_id: Option<Option<String>>,
#[serde(
rename = "imageUrl",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub image_url: Option<Option<String>>,
#[serde(rename = "roleIds", skip_serializing_if = "Option::is_none")]
pub role_ids: Option<Vec<String>>,
#[serde(
rename = "text",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub text: Option<Option<String>>,
#[serde(
rename = "title",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub title: Option<Option<String>>,
#[serde(
rename = "updatedAt",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub updated_at: Option<Option<chrono::DateTime<chrono::FixedOffset>>>,
#[serde(rename = "visibility", skip_serializing_if = "Option::is_none")]
pub visibility: Option<String>,
}
impl GroupAnnouncement {
pub fn new() -> GroupAnnouncement {
GroupAnnouncement {
author_id: None,
created_at: None,
editor_id: None,
group_id: None,
id: None,
image_id: None,
image_url: None,
role_ids: None,
text: None,
title: None,
updated_at: None,
visibility: None,
}
}
}