43 lines
781 B
Rust

use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(tag = "type")]
pub enum DocumentBlock {
Heading {
id: String,
level: u8,
text: String,
},
Paragraph {
id: String,
text: String,
},
List {
id: String,
ordered: bool,
items: Vec<String>,
},
CodeBlock {
id: String,
language: Option<String>,
code: String,
},
Quote {
id: String,
text: String,
},
Table {
id: String,
headers: Vec<String>,
rows: Vec<Vec<String>>,
},
Image {
id: String,
src: String,
alt: Option<String>,
},
HorizontalRule {
id: String,
},
}