#[allow(non_snake_case)] pub mod responses { use serde::{self, Deserialize, Serialize}; #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Error { pub statusCode: i32, pub message: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Success { pub statusCode: i32 } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Login { pub statusCode: i32, pub jwt: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct TfaSetup { pub statusCode: i32, pub secret: String, pub qrCode: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct UserInfo { pub statusCode: i32, pub name: String, pub gitlab: bool, pub tfaEnabled: bool } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct AdminUsersEntry { pub id: i32, pub gitlab: bool, pub name: String, pub role: crate::db::UserRole, pub tfaEnabled: bool } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct AdminUsers { pub statusCode: i32, pub users: Vec } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Root { pub statusCode: i32, pub rootId: i32 } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct GetNodeEntry { pub id: i32, pub name: String, pub isFile: bool, pub preview: bool, pub parent: Option, pub size: Option } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct GetNode { pub statusCode: i32, pub id: i32, pub name: String, pub isFile: bool, pub preview: bool, pub parent: Option, pub size: Option, pub children: Option> } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct NewNode { pub statusCode: i32, pub id: i32 } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct NodeExists { pub statusCode: i32, pub id: i32, pub exists: bool, pub isFile: bool } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct DownloadBase64 { pub statusCode: i32, pub data: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Type { pub statusCode: i32, #[serde(rename = "type")] pub _type: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct CreateZipDone { pub statusCode: i32, pub done: bool, pub progress: Option, pub total: Option } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct GetPathSegment { pub path: String, pub node: Option } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct GetPath { pub segments: Vec } } #[allow(non_snake_case)] pub mod requests { use serde::{self, Deserialize, Serialize}; #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Admin { pub user: i32 } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct AdminSetRole { pub user: i32, pub role: crate::db::UserRole } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct SignUp { pub username: String, pub password: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Login { pub username: String, pub password: String, pub otp: Option } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct SendRecoveryKey { pub username: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct ResetPassword { pub key: String, pub password: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct TfaSetup { pub mail: bool } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct TfaComplete { pub mail: bool, pub code: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct ChangePassword { pub oldPassword: String, pub newPassword: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct CreateNode { pub parent: i32, pub name: String } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct MoveNode { pub nodes: Vec, pub target: i32 } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct CreateZip { pub nodes: Vec } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct Download { pub jwtToken: String, pub id: i32 } #[derive(Debug, Deserialize, Serialize, Clone)] pub struct DownloadMulti { pub jwtToken: String, pub id: String } }