use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Docset {
pub id: i64,
pub name: String,
pub version: Option<String>,
pub path: Option<String>,
pub is_favorite: bool,
}
#[derive(Debug, Clone)]
pub struct SearchEntry {
pub id: i64,
pub docset_id: i64,
pub name: String,
pub entry_type: String,
pub path: String,
pub usage_count: i32,
pub docset_name: String,
pub docset_version: Option<String>,
}
#[derive(Debug, Clone)]
pub struct PageContent {
pub markdown: String,
}
#[derive(Debug, Clone)]
pub struct FavoriteEntry {
pub entry_id: i64,
pub entry_name: String,
pub entry_type: String,
pub entry_path: String,
pub docset_id: i64,
pub docset_name: String,
}
#[derive(Debug, Clone, Deserialize)]
pub struct DocsetEntry {
pub name: String,
pub version: String,
pub urls: Vec<String>,
}
#[derive(Deserialize)]
pub struct SourceList {
pub source: Vec<DocsetEntry>,
}