1use serde::{Deserialize, Serialize};
2#[doc = "Fired when `Element`'s attribute is modified.\n[attributeModified](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified)"]
3#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct AttributeModifiedParams {
5 #[doc = "Id of the node that has changed."]
6 #[serde(rename = "nodeId")]
7 pub node_id: Box<super::types::NodeId>,
8 #[doc = "Attribute name."]
9 #[serde(rename = "name")]
10 pub name: String,
11 #[doc = "Attribute value."]
12 #[serde(rename = "value")]
13 pub value: String,
14}
15#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
16pub enum AttributeModifiedMethod {
17 #[serde(rename = "DOM.attributeModified")]
18 AttributeModified,
19}
20#[doc = "Fired when `Element`'s attribute is modified.\n[attributeModified](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeModified)"]
21#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
22pub struct AttributeModified {
23 pub method: AttributeModifiedMethod,
24 pub params: AttributeModifiedParams,
25}
26impl AttributeModified {
27 pub const IDENTIFIER: &'static str = "DOM.attributeModified";
28 pub fn identifier(&self) -> &'static str {
29 Self::IDENTIFIER
30 }
31}
32#[doc = "Fired when `Element`'s adoptedStyleSheets are modified.\n[adoptedStyleSheetsModified](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-adoptedStyleSheetsModified)"]
33#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
34pub struct AdoptedStyleSheetsModifiedParams {
35 #[doc = "Id of the node that has changed."]
36 #[serde(rename = "nodeId")]
37 pub node_id: Box<super::types::NodeId>,
38 #[doc = "New adoptedStyleSheets array."]
39 #[serde(rename = "adoptedStyleSheets")]
40 #[serde(skip_serializing_if = "Vec::is_empty")]
41 pub adopted_style_sheets: Vec<super::types::StyleSheetId>,
42}
43#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
44pub enum AdoptedStyleSheetsModifiedMethod {
45 #[serde(rename = "DOM.adoptedStyleSheetsModified")]
46 AdoptedStyleSheetsModified,
47}
48#[doc = "Fired when `Element`'s adoptedStyleSheets are modified.\n[adoptedStyleSheetsModified](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-adoptedStyleSheetsModified)"]
49#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
50pub struct AdoptedStyleSheetsModified {
51 pub method: AdoptedStyleSheetsModifiedMethod,
52 pub params: AdoptedStyleSheetsModifiedParams,
53}
54impl AdoptedStyleSheetsModified {
55 pub const IDENTIFIER: &'static str = "DOM.adoptedStyleSheetsModified";
56 pub fn identifier(&self) -> &'static str {
57 Self::IDENTIFIER
58 }
59}
60#[doc = "Fired when `Element`'s attribute is removed.\n[attributeRemoved](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved)"]
61#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
62pub struct AttributeRemovedParams {
63 #[doc = "Id of the node that has changed."]
64 #[serde(rename = "nodeId")]
65 pub node_id: Box<super::types::NodeId>,
66 #[doc = "A ttribute name."]
67 #[serde(rename = "name")]
68 pub name: String,
69}
70#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
71pub enum AttributeRemovedMethod {
72 #[serde(rename = "DOM.attributeRemoved")]
73 AttributeRemoved,
74}
75#[doc = "Fired when `Element`'s attribute is removed.\n[attributeRemoved](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-attributeRemoved)"]
76#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
77pub struct AttributeRemoved {
78 pub method: AttributeRemovedMethod,
79 pub params: AttributeRemovedParams,
80}
81impl AttributeRemoved {
82 pub const IDENTIFIER: &'static str = "DOM.attributeRemoved";
83 pub fn identifier(&self) -> &'static str {
84 Self::IDENTIFIER
85 }
86}
87#[doc = "Mirrors `DOMCharacterDataModified` event.\n[characterDataModified](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified)"]
88#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
89pub struct CharacterDataModifiedParams {
90 #[doc = "Id of the node that has changed."]
91 #[serde(rename = "nodeId")]
92 pub node_id: Box<super::types::NodeId>,
93 #[doc = "New text value."]
94 #[serde(rename = "characterData")]
95 pub character_data: String,
96}
97#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
98pub enum CharacterDataModifiedMethod {
99 #[serde(rename = "DOM.characterDataModified")]
100 CharacterDataModified,
101}
102#[doc = "Mirrors `DOMCharacterDataModified` event.\n[characterDataModified](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-characterDataModified)"]
103#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
104pub struct CharacterDataModified {
105 pub method: CharacterDataModifiedMethod,
106 pub params: CharacterDataModifiedParams,
107}
108impl CharacterDataModified {
109 pub const IDENTIFIER: &'static str = "DOM.characterDataModified";
110 pub fn identifier(&self) -> &'static str {
111 Self::IDENTIFIER
112 }
113}
114#[doc = "Fired when `Container`'s child node count has changed.\n[childNodeCountUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated)"]
115#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
116pub struct ChildNodeCountUpdatedParams {
117 #[doc = "Id of the node that has changed."]
118 #[serde(rename = "nodeId")]
119 pub node_id: Box<super::types::NodeId>,
120 #[doc = "New node count."]
121 #[serde(rename = "childNodeCount")]
122 pub child_node_count: i64,
123}
124#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
125pub enum ChildNodeCountUpdatedMethod {
126 #[serde(rename = "DOM.childNodeCountUpdated")]
127 ChildNodeCountUpdated,
128}
129#[doc = "Fired when `Container`'s child node count has changed.\n[childNodeCountUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeCountUpdated)"]
130#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
131pub struct ChildNodeCountUpdated {
132 pub method: ChildNodeCountUpdatedMethod,
133 pub params: ChildNodeCountUpdatedParams,
134}
135impl ChildNodeCountUpdated {
136 pub const IDENTIFIER: &'static str = "DOM.childNodeCountUpdated";
137 pub fn identifier(&self) -> &'static str {
138 Self::IDENTIFIER
139 }
140}
141#[doc = "Mirrors `DOMNodeInserted` event.\n[childNodeInserted](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted)"]
142#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
143pub struct ChildNodeInsertedParams {
144 #[doc = "Id of the node that has changed."]
145 #[serde(rename = "parentNodeId")]
146 pub parent_node_id: super::types::NodeId,
147 #[doc = "Id of the previous sibling."]
148 #[serde(rename = "previousNodeId")]
149 pub previous_node_id: super::types::NodeId,
150 #[doc = "Inserted node data."]
151 #[serde(rename = "node")]
152 pub node: Box<super::types::Node>,
153}
154#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
155pub enum ChildNodeInsertedMethod {
156 #[serde(rename = "DOM.childNodeInserted")]
157 ChildNodeInserted,
158}
159#[doc = "Mirrors `DOMNodeInserted` event.\n[childNodeInserted](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeInserted)"]
160#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
161pub struct ChildNodeInserted {
162 pub method: ChildNodeInsertedMethod,
163 pub params: ChildNodeInsertedParams,
164}
165impl ChildNodeInserted {
166 pub const IDENTIFIER: &'static str = "DOM.childNodeInserted";
167 pub fn identifier(&self) -> &'static str {
168 Self::IDENTIFIER
169 }
170}
171#[doc = "Mirrors `DOMNodeRemoved` event.\n[childNodeRemoved](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved)"]
172#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
173pub struct ChildNodeRemovedParams {
174 #[doc = "Parent id."]
175 #[serde(rename = "parentNodeId")]
176 pub parent_node_id: super::types::NodeId,
177 #[doc = "Id of the node that has been removed."]
178 #[serde(rename = "nodeId")]
179 pub node_id: Box<super::types::NodeId>,
180}
181#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
182pub enum ChildNodeRemovedMethod {
183 #[serde(rename = "DOM.childNodeRemoved")]
184 ChildNodeRemoved,
185}
186#[doc = "Mirrors `DOMNodeRemoved` event.\n[childNodeRemoved](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-childNodeRemoved)"]
187#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
188pub struct ChildNodeRemoved {
189 pub method: ChildNodeRemovedMethod,
190 pub params: ChildNodeRemovedParams,
191}
192impl ChildNodeRemoved {
193 pub const IDENTIFIER: &'static str = "DOM.childNodeRemoved";
194 pub fn identifier(&self) -> &'static str {
195 Self::IDENTIFIER
196 }
197}
198#[doc = "Called when distribution is changed.\n[distributedNodesUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated)"]
199#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
200pub struct DistributedNodesUpdatedParams {
201 #[doc = "Insertion point where distributed nodes were updated."]
202 #[serde(rename = "insertionPointId")]
203 pub insertion_point_id: super::types::NodeId,
204 #[doc = "Distributed nodes for given insertion point."]
205 #[serde(rename = "distributedNodes")]
206 #[serde(skip_serializing_if = "Vec::is_empty")]
207 pub distributed_nodes: Vec<super::types::BackendNode>,
208}
209#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
210pub enum DistributedNodesUpdatedMethod {
211 #[serde(rename = "DOM.distributedNodesUpdated")]
212 DistributedNodesUpdated,
213}
214#[doc = "Called when distribution is changed.\n[distributedNodesUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-distributedNodesUpdated)"]
215#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
216pub struct DistributedNodesUpdated {
217 pub method: DistributedNodesUpdatedMethod,
218 pub params: DistributedNodesUpdatedParams,
219}
220impl DistributedNodesUpdated {
221 pub const IDENTIFIER: &'static str = "DOM.distributedNodesUpdated";
222 pub fn identifier(&self) -> &'static str {
223 Self::IDENTIFIER
224 }
225}
226#[doc = "Fired when `Document` has been totally updated. Node ids are no longer valid.\n[documentUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-documentUpdated)"]
227#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
228pub struct DocumentUpdatedParams {}
229#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
230pub enum DocumentUpdatedMethod {
231 #[serde(rename = "DOM.documentUpdated")]
232 DocumentUpdated,
233}
234#[doc = "Fired when `Document` has been totally updated. Node ids are no longer valid.\n[documentUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-documentUpdated)"]
235#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
236pub struct DocumentUpdated {
237 pub method: DocumentUpdatedMethod,
238 pub params: DocumentUpdatedParams,
239}
240impl DocumentUpdated {
241 pub const IDENTIFIER: &'static str = "DOM.documentUpdated";
242 pub fn identifier(&self) -> &'static str {
243 Self::IDENTIFIER
244 }
245}
246#[doc = "Fired when `Element`'s inline style is modified via a CSS property modification.\n[inlineStyleInvalidated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated)"]
247#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
248pub struct InlineStyleInvalidatedParams {
249 #[doc = "Ids of the nodes for which the inline styles have been invalidated."]
250 #[serde(rename = "nodeIds")]
251 #[serde(skip_serializing_if = "Vec::is_empty")]
252 pub node_ids: Vec<super::types::NodeId>,
253}
254#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
255pub enum InlineStyleInvalidatedMethod {
256 #[serde(rename = "DOM.inlineStyleInvalidated")]
257 InlineStyleInvalidated,
258}
259#[doc = "Fired when `Element`'s inline style is modified via a CSS property modification.\n[inlineStyleInvalidated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-inlineStyleInvalidated)"]
260#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
261pub struct InlineStyleInvalidated {
262 pub method: InlineStyleInvalidatedMethod,
263 pub params: InlineStyleInvalidatedParams,
264}
265impl InlineStyleInvalidated {
266 pub const IDENTIFIER: &'static str = "DOM.inlineStyleInvalidated";
267 pub fn identifier(&self) -> &'static str {
268 Self::IDENTIFIER
269 }
270}
271#[doc = "Called when a pseudo element is added to an element.\n[pseudoElementAdded](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementAdded)"]
272#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
273pub struct PseudoElementAddedParams {
274 #[doc = "Pseudo element's parent element id."]
275 #[serde(rename = "parentId")]
276 pub parent_id: super::types::NodeId,
277 #[doc = "The added pseudo element."]
278 #[serde(rename = "pseudoElement")]
279 pub pseudo_element: super::types::Node,
280}
281#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
282pub enum PseudoElementAddedMethod {
283 #[serde(rename = "DOM.pseudoElementAdded")]
284 PseudoElementAdded,
285}
286#[doc = "Called when a pseudo element is added to an element.\n[pseudoElementAdded](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementAdded)"]
287#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
288pub struct PseudoElementAdded {
289 pub method: PseudoElementAddedMethod,
290 pub params: PseudoElementAddedParams,
291}
292impl PseudoElementAdded {
293 pub const IDENTIFIER: &'static str = "DOM.pseudoElementAdded";
294 pub fn identifier(&self) -> &'static str {
295 Self::IDENTIFIER
296 }
297}
298#[doc = "Called when top layer elements are changed.\n[topLayerElementsUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-topLayerElementsUpdated)"]
299#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
300pub struct TopLayerElementsUpdatedParams {}
301#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
302pub enum TopLayerElementsUpdatedMethod {
303 #[serde(rename = "DOM.topLayerElementsUpdated")]
304 TopLayerElementsUpdated,
305}
306#[doc = "Called when top layer elements are changed.\n[topLayerElementsUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-topLayerElementsUpdated)"]
307#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
308pub struct TopLayerElementsUpdated {
309 pub method: TopLayerElementsUpdatedMethod,
310 pub params: TopLayerElementsUpdatedParams,
311}
312impl TopLayerElementsUpdated {
313 pub const IDENTIFIER: &'static str = "DOM.topLayerElementsUpdated";
314 pub fn identifier(&self) -> &'static str {
315 Self::IDENTIFIER
316 }
317}
318#[doc = "Fired when a node's scrollability state changes.\n[scrollableFlagUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-scrollableFlagUpdated)"]
319#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
320pub struct ScrollableFlagUpdatedParams {
321 #[doc = "The id of the node."]
322 #[serde(rename = "nodeId")]
323 pub node_id: Box<super::types::NodeId>,
324 #[doc = "If the node is scrollable."]
325 #[serde(rename = "isScrollable")]
326 pub is_scrollable: bool,
327}
328#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
329pub enum ScrollableFlagUpdatedMethod {
330 #[serde(rename = "DOM.scrollableFlagUpdated")]
331 ScrollableFlagUpdated,
332}
333#[doc = "Fired when a node's scrollability state changes.\n[scrollableFlagUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-scrollableFlagUpdated)"]
334#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
335pub struct ScrollableFlagUpdated {
336 pub method: ScrollableFlagUpdatedMethod,
337 pub params: ScrollableFlagUpdatedParams,
338}
339impl ScrollableFlagUpdated {
340 pub const IDENTIFIER: &'static str = "DOM.scrollableFlagUpdated";
341 pub fn identifier(&self) -> &'static str {
342 Self::IDENTIFIER
343 }
344}
345#[doc = "Fired when a node's ad related state changes.\n[adRelatedStateUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-adRelatedStateUpdated)"]
346#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
347pub struct AdRelatedStateUpdatedParams {
348 #[doc = "The id of the node."]
349 #[serde(rename = "nodeId")]
350 pub node_id: Box<super::types::NodeId>,
351 #[doc = "If the node is ad related."]
352 #[serde(rename = "isAdRelated")]
353 pub is_ad_related: bool,
354}
355#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
356pub enum AdRelatedStateUpdatedMethod {
357 #[serde(rename = "DOM.adRelatedStateUpdated")]
358 AdRelatedStateUpdated,
359}
360#[doc = "Fired when a node's ad related state changes.\n[adRelatedStateUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-adRelatedStateUpdated)"]
361#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
362pub struct AdRelatedStateUpdated {
363 pub method: AdRelatedStateUpdatedMethod,
364 pub params: AdRelatedStateUpdatedParams,
365}
366impl AdRelatedStateUpdated {
367 pub const IDENTIFIER: &'static str = "DOM.adRelatedStateUpdated";
368 pub fn identifier(&self) -> &'static str {
369 Self::IDENTIFIER
370 }
371}
372#[doc = "Fired when a node's starting styles changes.\n[affectedByStartingStylesFlagUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-affectedByStartingStylesFlagUpdated)"]
373#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
374pub struct AffectedByStartingStylesFlagUpdatedParams {
375 #[doc = "The id of the node."]
376 #[serde(rename = "nodeId")]
377 pub node_id: Box<super::types::NodeId>,
378 #[doc = "If the node has starting styles."]
379 #[serde(rename = "affectedByStartingStyles")]
380 pub affected_by_starting_styles: bool,
381}
382#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
383pub enum AffectedByStartingStylesFlagUpdatedMethod {
384 #[serde(rename = "DOM.affectedByStartingStylesFlagUpdated")]
385 AffectedByStartingStylesFlagUpdated,
386}
387#[doc = "Fired when a node's starting styles changes.\n[affectedByStartingStylesFlagUpdated](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-affectedByStartingStylesFlagUpdated)"]
388#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
389pub struct AffectedByStartingStylesFlagUpdated {
390 pub method: AffectedByStartingStylesFlagUpdatedMethod,
391 pub params: AffectedByStartingStylesFlagUpdatedParams,
392}
393impl AffectedByStartingStylesFlagUpdated {
394 pub const IDENTIFIER: &'static str = "DOM.affectedByStartingStylesFlagUpdated";
395 pub fn identifier(&self) -> &'static str {
396 Self::IDENTIFIER
397 }
398}
399#[doc = "Called when a pseudo element is removed from an element.\n[pseudoElementRemoved](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementRemoved)"]
400#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
401pub struct PseudoElementRemovedParams {
402 #[doc = "Pseudo element's parent element id."]
403 #[serde(rename = "parentId")]
404 pub parent_id: super::types::NodeId,
405 #[doc = "The removed pseudo element id."]
406 #[serde(rename = "pseudoElementId")]
407 pub pseudo_element_id: super::types::NodeId,
408}
409#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
410pub enum PseudoElementRemovedMethod {
411 #[serde(rename = "DOM.pseudoElementRemoved")]
412 PseudoElementRemoved,
413}
414#[doc = "Called when a pseudo element is removed from an element.\n[pseudoElementRemoved](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-pseudoElementRemoved)"]
415#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
416pub struct PseudoElementRemoved {
417 pub method: PseudoElementRemovedMethod,
418 pub params: PseudoElementRemovedParams,
419}
420impl PseudoElementRemoved {
421 pub const IDENTIFIER: &'static str = "DOM.pseudoElementRemoved";
422 pub fn identifier(&self) -> &'static str {
423 Self::IDENTIFIER
424 }
425}
426#[doc = "Fired when backend wants to provide client with the missing DOM structure. This happens upon\nmost of the calls requesting node ids.\n[setChildNodes](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes)"]
427#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
428pub struct SetChildNodesParams {
429 #[doc = "Parent node id to populate with children."]
430 #[serde(rename = "parentId")]
431 pub parent_id: super::types::NodeId,
432 #[doc = "Child nodes array."]
433 #[serde(rename = "nodes")]
434 #[serde(skip_serializing_if = "Vec::is_empty")]
435 pub nodes: Vec<super::types::Node>,
436}
437#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
438pub enum SetChildNodesMethod {
439 #[serde(rename = "DOM.setChildNodes")]
440 SetChildNodes,
441}
442#[doc = "Fired when backend wants to provide client with the missing DOM structure. This happens upon\nmost of the calls requesting node ids.\n[setChildNodes](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-setChildNodes)"]
443#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
444pub struct SetChildNodes {
445 pub method: SetChildNodesMethod,
446 pub params: SetChildNodesParams,
447}
448impl SetChildNodes {
449 pub const IDENTIFIER: &'static str = "DOM.setChildNodes";
450 pub fn identifier(&self) -> &'static str {
451 Self::IDENTIFIER
452 }
453}
454#[doc = "Called when shadow root is popped from the element.\n[shadowRootPopped](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPopped)"]
455#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
456pub struct ShadowRootPoppedParams {
457 #[doc = "Host element id."]
458 #[serde(rename = "hostId")]
459 pub host_id: super::types::NodeId,
460 #[doc = "Shadow root id."]
461 #[serde(rename = "rootId")]
462 pub root_id: super::types::NodeId,
463}
464#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
465pub enum ShadowRootPoppedMethod {
466 #[serde(rename = "DOM.shadowRootPopped")]
467 ShadowRootPopped,
468}
469#[doc = "Called when shadow root is popped from the element.\n[shadowRootPopped](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPopped)"]
470#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
471pub struct ShadowRootPopped {
472 pub method: ShadowRootPoppedMethod,
473 pub params: ShadowRootPoppedParams,
474}
475impl ShadowRootPopped {
476 pub const IDENTIFIER: &'static str = "DOM.shadowRootPopped";
477 pub fn identifier(&self) -> &'static str {
478 Self::IDENTIFIER
479 }
480}
481#[doc = "Called when shadow root is pushed into the element.\n[shadowRootPushed](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPushed)"]
482#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
483pub struct ShadowRootPushedParams {
484 #[doc = "Host element id."]
485 #[serde(rename = "hostId")]
486 pub host_id: super::types::NodeId,
487 #[doc = "Shadow root."]
488 #[serde(rename = "root")]
489 pub root: super::types::Node,
490}
491#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
492pub enum ShadowRootPushedMethod {
493 #[serde(rename = "DOM.shadowRootPushed")]
494 ShadowRootPushed,
495}
496#[doc = "Called when shadow root is pushed into the element.\n[shadowRootPushed](https://chromedevtools.github.io/devtools-protocol/tot/DOM/#event-shadowRootPushed)"]
497#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
498pub struct ShadowRootPushed {
499 pub method: ShadowRootPushedMethod,
500 pub params: ShadowRootPushedParams,
501}
502impl ShadowRootPushed {
503 pub const IDENTIFIER: &'static str = "DOM.shadowRootPushed";
504 pub fn identifier(&self) -> &'static str {
505 Self::IDENTIFIER
506 }
507}
508group_enum ! (DomEvents { AttributeModified (AttributeModified) , AdoptedStyleSheetsModified (AdoptedStyleSheetsModified) , AttributeRemoved (AttributeRemoved) , CharacterDataModified (CharacterDataModified) , ChildNodeCountUpdated (ChildNodeCountUpdated) , ChildNodeInserted (ChildNodeInserted) , ChildNodeRemoved (ChildNodeRemoved) , DistributedNodesUpdated (DistributedNodesUpdated) , DocumentUpdated (DocumentUpdated) , InlineStyleInvalidated (InlineStyleInvalidated) , PseudoElementAdded (PseudoElementAdded) , TopLayerElementsUpdated (TopLayerElementsUpdated) , ScrollableFlagUpdated (ScrollableFlagUpdated) , AdRelatedStateUpdated (AdRelatedStateUpdated) , AffectedByStartingStylesFlagUpdated (AffectedByStartingStylesFlagUpdated) , PseudoElementRemoved (PseudoElementRemoved) , SetChildNodes (SetChildNodes) , ShadowRootPopped (ShadowRootPopped) , ShadowRootPushed (ShadowRootPushed) } + identifiable);