use serde::Deserialize; #[derive(Debug, Deserialize)] pub struct TelegramResponse { pub ok: bool, pub result: Option, pub description: Option, } #[derive(Debug, Deserialize)] pub struct Update { pub update_id: i64, pub message: Option, pub channel_post: Option, pub edited_message: Option, pub edited_channel_post: Option, } #[derive(Debug, Deserialize)] pub struct Message { pub message_id: i64, pub chat: Chat, pub text: Option, pub document: Option, pub photo: Option>, pub date: Option, pub reply_to_message: Option>, } #[derive(Debug, Deserialize)] pub struct Chat { pub id: i64, pub username: Option, } #[derive(Debug, Deserialize)] pub struct Document { pub file_id: String, pub file_name: Option, pub file_size: Option, } #[derive(Debug, Deserialize)] #[allow(dead_code)] pub struct PhotoSize { pub file_id: String, pub file_size: Option, pub width: Option, pub height: Option, } #[derive(Debug, Deserialize)] #[allow(dead_code)] pub struct TelegramFile { pub file_id: String, pub file_path: Option, } #[derive(Debug, Deserialize)] #[allow(dead_code)] pub struct BotUser { pub username: Option, }