1use common::parser_tools::{
4 DjotImportOptions, DocxExportOptions, EpubExportOptions, LatexExportOptions, OdtExportOptions,
5 PdfExportOptions,
6};
7use serde::{Deserialize, Serialize};
8
9#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
10pub struct ImportPlainTextDto {
11 pub plain_text: String,
12}
13#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
14pub struct ExportPlainTextDto {
15 pub plain_text: String,
16}
17#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
18pub struct ImportMarkdownDto {
19 pub markdown_text: String,
20}
21#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
22pub struct ImportMarkdownResultDto {
23 pub block_count: i64,
24}
25#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
26pub struct ExportMarkdownDto {
27 pub markdown_text: String,
28}
29#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
30pub struct ImportDjotDto {
31 pub djot_text: String,
32 pub options: DjotImportOptions,
36}
37#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
38pub struct ImportDjotResultDto {
39 pub block_count: i64,
40}
41#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
42pub struct ExportDjotDto {
43 pub djot_text: String,
44}
45#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
46pub struct ImportHtmlDto {
47 pub html_text: String,
48}
49#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
50pub struct ImportHtmlResultDto {
51 pub block_count: i64,
52}
53#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
54pub struct ExportHtmlDto {
55 pub html_text: String,
56}
57
58#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
67pub struct ExportLatexDto {
68 #[serde(default)]
69 pub options: LatexExportOptions,
70}
71#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
72pub struct ExportLatexResultDto {
73 pub latex_text: String,
74}
75#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
76pub struct ExportDocxDto {
77 pub output_path: String,
78 #[serde(default)]
82 pub options: DocxExportOptions,
83}
84#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
85pub struct ExportDocxResultDto {
86 pub file_path: String,
87 pub paragraph_count: i64,
88}
89#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
90pub struct ExportEpubDto {
91 pub output_path: String,
92 #[serde(default)]
97 pub options: EpubExportOptions,
98}
99#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
100pub struct ExportEpubResultDto {
101 pub file_path: String,
102 pub chapter_count: i64,
103}
104#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
109pub struct ExportOdtDto {
110 pub output_path: String,
111 #[serde(default)]
112 pub options: OdtExportOptions,
113}
114#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
115pub struct ExportOdtResultDto {
116 pub file_path: String,
117 pub paragraph_count: i64,
118}
119#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
120pub struct ExportPdfDto {
121 pub output_path: String,
122 #[serde(default)]
127 pub options: PdfExportOptions,
128}
129#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
130pub struct ExportPdfResultDto {
131 pub file_path: String,
132 pub page_count: i64,
133}