use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, PartialEq, Eq, Serialize, Deserialize)]
pub struct TableGrid {
pub rows: u32,
pub cols: u32,
pub cells: Vec<GridCell>,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct GridCell {
pub content: String,
pub row: u32,
pub col: u32,
#[serde(default = "default_span")]
pub row_span: u32,
#[serde(default = "default_span")]
pub col_span: u32,
#[serde(default)]
pub is_header: bool,
}
fn default_span() -> u32 {
1
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TableData {
pub grid: TableGrid,
pub markdown: String,
}