use serde::{Deserialize, Serialize}; #[derive(Serialize, Debug)] #[allow(non_snake_case)] pub struct NewShareRequest { name: String, validity: u32, description: Option, maxViews: u32, password: Option, } impl NewShareRequest { pub fn new( name: impl Into, description: Option>, max_views: u32, ) -> Self { Self { name: name.into(), validity: 0, description: description.map(Into::into), maxViews: max_views, password: None, } } } #[derive(Deserialize, Debug)] pub struct NewShareResponse { pub success: bool, pub message: String, pub id: String, } #[derive(Deserialize, Debug)] #[allow(dead_code)] pub struct NotifyShareResponse { pub success: bool, pub message: String, }