use serde::{Deserialize, Serialize};
use chrono::{DateTime, Utc};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct File {
pub name: String,
pub path: String,
pub size: u64,
pub modified: DateTime<Utc>,
pub mime_type: String,
pub is_text: bool,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Directory {
pub name: String,
pub path: String,
pub modified: DateTime<Utc>,
pub entries: Vec<crate::services::file::DirectoryEntry>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct FileMetadata {
pub path: String,
pub size: u64,
pub modified: DateTime<Utc>,
pub created: Option<DateTime<Utc>>,
pub is_dir: bool,
pub mime_type: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct UploadResponse {
pub path: String,
pub size: u64,
pub message: String,
}