use std::collections::HashMap;

use serde::{Deserialize, Serialize};

// Basic metadata structure
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct Metadata {
    /// Page title
    pub title: Option<String>,
    /// Page description
    pub description: Option<String>,
    /// Content tags
    pub tags: Option<Vec<String>>,
    /// Content categories
    pub categories: Option<Vec<String>>,
    /// Additional arbitrary metadata
    pub extra: Option<HashMap<String, serde_json::Value>>,
}
