use common::parser_tools::{
DjotImportOptions, DocxExportOptions, EpubExportOptions, PdfExportOptions,
};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ImportPlainTextDto {
pub plain_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportPlainTextDto {
pub plain_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ImportMarkdownDto {
pub markdown_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ImportMarkdownResultDto {
pub block_count: i64,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportMarkdownDto {
pub markdown_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ImportDjotDto {
pub djot_text: String,
pub options: DjotImportOptions,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ImportDjotResultDto {
pub block_count: i64,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportDjotDto {
pub djot_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ImportHtmlDto {
pub html_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ImportHtmlResultDto {
pub block_count: i64,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportHtmlDto {
pub html_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportLatexDto {
pub document_class: String,
pub include_preamble: bool,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportLatexResultDto {
pub latex_text: String,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportDocxDto {
pub output_path: String,
#[serde(default)]
pub options: DocxExportOptions,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportDocxResultDto {
pub file_path: String,
pub paragraph_count: i64,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportEpubDto {
pub output_path: String,
#[serde(default)]
pub options: EpubExportOptions,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportEpubResultDto {
pub file_path: String,
pub chapter_count: i64,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportPdfDto {
pub output_path: String,
#[serde(default)]
pub options: PdfExportOptions,
}
#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
pub struct ExportPdfResultDto {
pub file_path: String,
pub page_count: i64,
}