use super::*;
#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
pub struct UploadUrl {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub upload_url: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub upload_token: Option<String>,
}
#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
pub struct PostFileIdContentAttributes {
pub name: String,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub content_modified_at: Option<chrono::DateTime<chrono::Utc>>,
}
#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
pub struct CreateFileIdContentRequest {
pub attributes: PostFileIdContentAttributes,
#[serde(skip)]
pub file: Vec<u8>,
}
#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
pub struct PostFileContentAttributes {
pub name: String,
pub parent: AttributesParent,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub content_created_at: Option<chrono::DateTime<chrono::Utc>>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub content_modified_at: Option<chrono::DateTime<chrono::Utc>>,
}
#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
pub struct CreateFileContentRequest {
pub attributes: PostFileContentAttributes,
#[serde(skip)]
pub file: Vec<u8>,
}
#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
pub struct OptionFileContentRequest {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub size: Option<i64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub parent: Option<PostFileIdParent>,
}