use std::path::PathBuf;
use texcore::Level::Meta;
use texcore::{Chapter, ElementList, Elements, Input, Metadata, Part};
use tokio::io::Result;
#[tokio::main]
async fn main() -> Result<()> {
let part = Part::new("part 1");
let chapter = Chapter::new("chapter 1");
let mut metadata = Metadata::default();
metadata.doc_class = "book".to_string();
let mut list = ElementList::new(&metadata);
list.push_array(Elements![part, chapter]);
list.async_write(PathBuf::from("main.tex")).await?;
list.async_write_split(
PathBuf::from("main.tex"),
PathBuf::from("structure.tex"),
Input::new(PathBuf::from("structure"), Meta),
)
.await?;
Ok(())
}