use std::{collections::HashMap, str::FromStr}; mod build_xml; mod comments; mod comments_extended; mod content_types; mod custom_item; mod custom_item_property; mod custom_item_rels; mod doc_props; mod document; mod document_rels; mod elements; mod font_table; mod footer; mod footer_id; mod header; mod header_id; mod history_id; mod numberings; mod paragraph_id; mod pic_id; mod rels; mod settings; mod styles; mod taskpanes; mod taskpanes_rels; mod web_settings; mod webextension; mod xml_docx; pub(crate) use build_xml::BuildXML; pub(crate) use history_id::HistoryId; pub(crate) use paragraph_id::*; pub(crate) use pic_id::*; pub use comments::*; pub use comments_extended::*; pub use content_types::*; pub use custom_item::*; pub use custom_item_property::*; pub use custom_item_rels::*; pub use doc_props::*; pub use document::*; pub use document_rels::*; pub use elements::*; pub use font_table::*; pub use footer::*; pub use footer_id::*; pub use header::*; pub use header_id::*; pub use numberings::*; pub use rels::*; pub use settings::*; pub use styles::*; pub use taskpanes::*; pub use taskpanes_rels::*; pub use web_settings::*; pub use webextension::*; pub use xml_docx::*; use serde::Serialize; #[derive(Debug, Clone, Serialize)] #[serde(rename_all = "camelCase")] pub struct Docx { pub content_type: ContentTypes, pub rels: Rels, pub document_rels: DocumentRels, pub doc_props: DocProps, pub styles: Styles, pub document: Document, pub comments: Comments, pub numberings: Numberings, pub settings: Settings, pub font_table: FontTable, pub media: Vec<(usize, Vec)>, pub header: Option
, pub footer: Option