1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct V1Node {
16 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
17 pub r#type: Option<models::V1NodeType>,
18 #[serde(rename = "lineBreakNode", skip_serializing_if = "Option::is_none")]
19 pub line_break_node: Option<serde_json::Value>,
20 #[serde(rename = "paragraphNode", skip_serializing_if = "Option::is_none")]
21 pub paragraph_node: Option<Box<models::V1ParagraphNode>>,
22 #[serde(rename = "codeBlockNode", skip_serializing_if = "Option::is_none")]
23 pub code_block_node: Option<Box<models::V1CodeBlockNode>>,
24 #[serde(rename = "headingNode", skip_serializing_if = "Option::is_none")]
25 pub heading_node: Option<Box<models::V1HeadingNode>>,
26 #[serde(rename = "horizontalRuleNode", skip_serializing_if = "Option::is_none")]
27 pub horizontal_rule_node: Option<Box<models::V1HorizontalRuleNode>>,
28 #[serde(rename = "blockquoteNode", skip_serializing_if = "Option::is_none")]
29 pub blockquote_node: Option<Box<models::V1BlockquoteNode>>,
30 #[serde(rename = "listNode", skip_serializing_if = "Option::is_none")]
31 pub list_node: Option<Box<models::V1ListNode>>,
32 #[serde(rename = "orderedListItemNode", skip_serializing_if = "Option::is_none")]
33 pub ordered_list_item_node: Option<Box<models::V1OrderedListItemNode>>,
34 #[serde(rename = "unorderedListItemNode", skip_serializing_if = "Option::is_none")]
35 pub unordered_list_item_node: Option<Box<models::V1UnorderedListItemNode>>,
36 #[serde(rename = "taskListItemNode", skip_serializing_if = "Option::is_none")]
37 pub task_list_item_node: Option<Box<models::V1TaskListItemNode>>,
38 #[serde(rename = "mathBlockNode", skip_serializing_if = "Option::is_none")]
39 pub math_block_node: Option<Box<models::V1MathBlockNode>>,
40 #[serde(rename = "tableNode", skip_serializing_if = "Option::is_none")]
41 pub table_node: Option<Box<models::V1TableNode>>,
42 #[serde(rename = "embeddedContentNode", skip_serializing_if = "Option::is_none")]
43 pub embedded_content_node: Option<Box<models::V1EmbeddedContentNode>>,
44 #[serde(rename = "textNode", skip_serializing_if = "Option::is_none")]
45 pub text_node: Option<Box<models::V1TextNode>>,
46 #[serde(rename = "boldNode", skip_serializing_if = "Option::is_none")]
47 pub bold_node: Option<Box<models::V1BoldNode>>,
48 #[serde(rename = "italicNode", skip_serializing_if = "Option::is_none")]
49 pub italic_node: Option<Box<models::V1ItalicNode>>,
50 #[serde(rename = "boldItalicNode", skip_serializing_if = "Option::is_none")]
51 pub bold_italic_node: Option<Box<models::V1BoldItalicNode>>,
52 #[serde(rename = "codeNode", skip_serializing_if = "Option::is_none")]
53 pub code_node: Option<Box<models::V1CodeNode>>,
54 #[serde(rename = "imageNode", skip_serializing_if = "Option::is_none")]
55 pub image_node: Option<Box<models::V1ImageNode>>,
56 #[serde(rename = "linkNode", skip_serializing_if = "Option::is_none")]
57 pub link_node: Option<Box<models::V1LinkNode>>,
58 #[serde(rename = "autoLinkNode", skip_serializing_if = "Option::is_none")]
59 pub auto_link_node: Option<Box<models::V1AutoLinkNode>>,
60 #[serde(rename = "tagNode", skip_serializing_if = "Option::is_none")]
61 pub tag_node: Option<Box<models::V1TagNode>>,
62 #[serde(rename = "strikethroughNode", skip_serializing_if = "Option::is_none")]
63 pub strikethrough_node: Option<Box<models::V1StrikethroughNode>>,
64 #[serde(rename = "escapingCharacterNode", skip_serializing_if = "Option::is_none")]
65 pub escaping_character_node: Option<Box<models::V1EscapingCharacterNode>>,
66 #[serde(rename = "mathNode", skip_serializing_if = "Option::is_none")]
67 pub math_node: Option<Box<models::V1MathNode>>,
68 #[serde(rename = "highlightNode", skip_serializing_if = "Option::is_none")]
69 pub highlight_node: Option<Box<models::V1HighlightNode>>,
70 #[serde(rename = "subscriptNode", skip_serializing_if = "Option::is_none")]
71 pub subscript_node: Option<Box<models::V1SubscriptNode>>,
72 #[serde(rename = "superscriptNode", skip_serializing_if = "Option::is_none")]
73 pub superscript_node: Option<Box<models::V1SuperscriptNode>>,
74 #[serde(rename = "referencedContentNode", skip_serializing_if = "Option::is_none")]
75 pub referenced_content_node: Option<Box<models::V1ReferencedContentNode>>,
76 #[serde(rename = "spoilerNode", skip_serializing_if = "Option::is_none")]
77 pub spoiler_node: Option<Box<models::V1SpoilerNode>>,
78 #[serde(rename = "htmlElementNode", skip_serializing_if = "Option::is_none")]
79 pub html_element_node: Option<Box<models::V1HtmlElementNode>>,
80}
81
82impl V1Node {
83 pub fn new() -> V1Node {
84 V1Node {
85 r#type: None,
86 line_break_node: None,
87 paragraph_node: None,
88 code_block_node: None,
89 heading_node: None,
90 horizontal_rule_node: None,
91 blockquote_node: None,
92 list_node: None,
93 ordered_list_item_node: None,
94 unordered_list_item_node: None,
95 task_list_item_node: None,
96 math_block_node: None,
97 table_node: None,
98 embedded_content_node: None,
99 text_node: None,
100 bold_node: None,
101 italic_node: None,
102 bold_italic_node: None,
103 code_node: None,
104 image_node: None,
105 link_node: None,
106 auto_link_node: None,
107 tag_node: None,
108 strikethrough_node: None,
109 escaping_character_node: None,
110 math_node: None,
111 highlight_node: None,
112 subscript_node: None,
113 superscript_node: None,
114 referenced_content_node: None,
115 spoiler_node: None,
116 html_element_node: None,
117 }
118 }
119}
120