1use serde::{Serialize, Deserialize};
9use serde_json::Value as JsonValue;
10
11#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)]
16pub enum StyleSheetOrigin {
17 #[default]
18 Injected,
19 UserAgent,
20 Inspector,
21 Regular,
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize, Default)]
27#[serde(rename_all = "camelCase")]
28pub struct PseudoElementMatches {
29 pub pseudoType: crate::dom::PseudoType,
32 #[serde(skip_serializing_if = "Option::is_none")]
35 pub pseudoIdentifier: Option<String>,
36 pub matches: Vec<RuleMatch>,
39}
40
41#[derive(Debug, Clone, Serialize, Deserialize, Default)]
44#[serde(rename_all = "camelCase")]
45pub struct CSSAnimationStyle {
46 #[serde(skip_serializing_if = "Option::is_none")]
49 pub name: Option<String>,
50 pub style: CSSStyle,
53}
54
55#[derive(Debug, Clone, Serialize, Deserialize, Default)]
58#[serde(rename_all = "camelCase")]
59pub struct InheritedStyleEntry {
60 #[serde(skip_serializing_if = "Option::is_none")]
63 pub inlineStyle: Option<CSSStyle>,
64 pub matchedCSSRules: Vec<RuleMatch>,
67}
68
69#[derive(Debug, Clone, Serialize, Deserialize, Default)]
72#[serde(rename_all = "camelCase")]
73pub struct InheritedAnimatedStyleEntry {
74 #[serde(skip_serializing_if = "Option::is_none")]
77 pub animationStyles: Option<Vec<CSSAnimationStyle>>,
78 #[serde(skip_serializing_if = "Option::is_none")]
81 pub transitionsStyle: Option<CSSStyle>,
82}
83
84#[derive(Debug, Clone, Serialize, Deserialize, Default)]
87#[serde(rename_all = "camelCase")]
88pub struct InheritedPseudoElementMatches {
89 pub pseudoElements: Vec<PseudoElementMatches>,
92}
93
94#[derive(Debug, Clone, Serialize, Deserialize, Default)]
97#[serde(rename_all = "camelCase")]
98pub struct RuleMatch {
99 pub rule: CSSRule,
102 pub matchingSelectors: Vec<i64>,
105}
106
107#[derive(Debug, Clone, Serialize, Deserialize, Default)]
110#[serde(rename_all = "camelCase")]
111pub struct ProtocolValue {
112 pub text: String,
115 #[serde(skip_serializing_if = "Option::is_none")]
118 pub range: Option<SourceRange>,
119 #[serde(skip_serializing_if = "Option::is_none")]
122 pub specificity: Option<Specificity>,
123}
124
125#[derive(Debug, Clone, Serialize, Deserialize, Default)]
129#[serde(rename_all = "camelCase")]
130pub struct Specificity {
131 pub a: i64,
134 pub b: i64,
138 pub c: i64,
141}
142
143#[derive(Debug, Clone, Serialize, Deserialize, Default)]
146#[serde(rename_all = "camelCase")]
147pub struct SelectorList {
148 pub selectors: Vec<ProtocolValue>,
151 pub text: String,
154}
155
156#[derive(Debug, Clone, Serialize, Deserialize, Default)]
159#[serde(rename_all = "camelCase")]
160pub struct CSSStyleSheetHeader {
161 pub styleSheetId: crate::dom::StyleSheetId,
164 pub frameId: crate::page::FrameId,
167 pub sourceURL: String,
172 #[serde(skip_serializing_if = "Option::is_none")]
175 pub sourceMapURL: Option<String>,
176 pub origin: StyleSheetOrigin,
179 pub title: String,
182 #[serde(skip_serializing_if = "Option::is_none")]
185 pub ownerNode: Option<crate::dom::BackendNodeId>,
186 pub disabled: bool,
189 #[serde(skip_serializing_if = "Option::is_none")]
192 pub hasSourceURL: Option<bool>,
193 pub isInline: bool,
197 pub isMutable: bool,
203 pub isConstructed: bool,
207 pub startLine: f64,
210 pub startColumn: f64,
213 pub length: f64,
216 pub endLine: f64,
219 pub endColumn: f64,
222 #[serde(skip_serializing_if = "Option::is_none")]
225 pub loadingFailed: Option<bool>,
226}
227
228#[derive(Debug, Clone, Serialize, Deserialize, Default)]
231#[serde(rename_all = "camelCase")]
232pub struct CSSRule {
233 #[serde(skip_serializing_if = "Option::is_none")]
237 pub styleSheetId: Option<crate::dom::StyleSheetId>,
238 pub selectorList: SelectorList,
241 #[serde(skip_serializing_if = "Option::is_none")]
244 pub nestingSelectors: Option<Vec<String>>,
245 pub origin: StyleSheetOrigin,
248 pub style: CSSStyle,
251 #[serde(skip_serializing_if = "Option::is_none")]
254 pub originTreeScopeNodeId: Option<crate::dom::BackendNodeId>,
255 #[serde(skip_serializing_if = "Option::is_none")]
259 pub media: Option<Vec<CSSMedia>>,
260 #[serde(skip_serializing_if = "Option::is_none")]
264 pub containerQueries: Option<Vec<CSSContainerQuery>>,
265 #[serde(skip_serializing_if = "Option::is_none")]
269 pub supports: Option<Vec<CSSSupports>>,
270 #[serde(skip_serializing_if = "Option::is_none")]
274 pub layers: Option<Vec<CSSLayer>>,
275 #[serde(skip_serializing_if = "Option::is_none")]
279 pub scopes: Option<Vec<CSSScope>>,
280 #[serde(skip_serializing_if = "Option::is_none")]
283 pub ruleTypes: Option<Vec<CSSRuleType>>,
284 #[serde(skip_serializing_if = "Option::is_none")]
288 pub startingStyles: Option<Vec<CSSStartingStyle>>,
289 #[serde(skip_serializing_if = "Option::is_none")]
293 pub navigations: Option<Vec<CSSNavigation>>,
294}
295
296#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Default)]
300pub enum CSSRuleType {
301 #[default]
302 MediaRule,
303 SupportsRule,
304 ContainerRule,
305 LayerRule,
306 ScopeRule,
307 StyleRule,
308 StartingStyleRule,
309 NavigationRule,
310}
311
312#[derive(Debug, Clone, Serialize, Deserialize, Default)]
315#[serde(rename_all = "camelCase")]
316pub struct RuleUsage {
317 pub styleSheetId: crate::dom::StyleSheetId,
321 pub startOffset: f64,
324 pub endOffset: f64,
327 pub used: bool,
330}
331
332#[derive(Debug, Clone, Serialize, Deserialize, Default)]
335#[serde(rename_all = "camelCase")]
336pub struct SourceRange {
337 pub startLine: i64,
340 pub startColumn: i64,
343 pub endLine: i64,
346 pub endColumn: i64,
349}
350
351
352#[derive(Debug, Clone, Serialize, Deserialize, Default)]
353#[serde(rename_all = "camelCase")]
354pub struct ShorthandEntry {
355 pub name: String,
358 pub value: String,
361 #[serde(skip_serializing_if = "Option::is_none")]
364 pub important: Option<bool>,
365}
366
367
368#[derive(Debug, Clone, Serialize, Deserialize, Default)]
369#[serde(rename_all = "camelCase")]
370pub struct CSSComputedStyleProperty {
371 pub name: String,
374 pub value: String,
377}
378
379
380#[derive(Debug, Clone, Serialize, Deserialize, Default)]
381#[serde(rename_all = "camelCase")]
382pub struct ComputedStyleExtraFields {
383 pub isAppearanceBase: bool,
388}
389
390#[derive(Debug, Clone, Serialize, Deserialize, Default)]
393#[serde(rename_all = "camelCase")]
394pub struct CSSStyle {
395 #[serde(skip_serializing_if = "Option::is_none")]
399 pub styleSheetId: Option<crate::dom::StyleSheetId>,
400 pub cssProperties: Vec<CSSProperty>,
403 pub shorthandEntries: Vec<ShorthandEntry>,
406 #[serde(skip_serializing_if = "Option::is_none")]
409 pub cssText: Option<String>,
410 #[serde(skip_serializing_if = "Option::is_none")]
413 pub range: Option<SourceRange>,
414}
415
416#[derive(Debug, Clone, Serialize, Deserialize, Default)]
419#[serde(rename_all = "camelCase")]
420pub struct CSSProperty {
421 pub name: String,
424 pub value: String,
427 #[serde(skip_serializing_if = "Option::is_none")]
430 pub important: Option<bool>,
431 #[serde(skip_serializing_if = "Option::is_none")]
434 pub implicit: Option<bool>,
435 #[serde(skip_serializing_if = "Option::is_none")]
438 pub text: Option<String>,
439 #[serde(skip_serializing_if = "Option::is_none")]
442 pub parsedOk: Option<bool>,
443 #[serde(skip_serializing_if = "Option::is_none")]
446 pub disabled: Option<bool>,
447 #[serde(skip_serializing_if = "Option::is_none")]
450 pub range: Option<SourceRange>,
451 #[serde(skip_serializing_if = "Option::is_none")]
455 pub longhandProperties: Option<Vec<CSSProperty>>,
456}
457
458#[derive(Debug, Clone, Serialize, Deserialize, Default)]
461#[serde(rename_all = "camelCase")]
462pub struct CSSMedia {
463 pub text: String,
466 pub source: String,
472 #[serde(skip_serializing_if = "Option::is_none")]
475 pub sourceURL: Option<String>,
476 #[serde(skip_serializing_if = "Option::is_none")]
480 pub range: Option<SourceRange>,
481 #[serde(skip_serializing_if = "Option::is_none")]
484 pub styleSheetId: Option<crate::dom::StyleSheetId>,
485 #[serde(skip_serializing_if = "Option::is_none")]
488 pub mediaList: Option<Vec<MediaQuery>>,
489}
490
491#[derive(Debug, Clone, Serialize, Deserialize, Default)]
494#[serde(rename_all = "camelCase")]
495pub struct MediaQuery {
496 pub expressions: Vec<MediaQueryExpression>,
499 pub active: bool,
502}
503
504#[derive(Debug, Clone, Serialize, Deserialize, Default)]
507#[serde(rename_all = "camelCase")]
508pub struct MediaQueryExpression {
509 pub value: f64,
512 pub unit: String,
515 pub feature: String,
518 #[serde(skip_serializing_if = "Option::is_none")]
521 pub valueRange: Option<SourceRange>,
522 #[serde(skip_serializing_if = "Option::is_none")]
525 pub computedLength: Option<f64>,
526}
527
528#[derive(Debug, Clone, Serialize, Deserialize, Default)]
531#[serde(rename_all = "camelCase")]
532pub struct CSSContainerQuery {
533 pub text: String,
536 #[serde(skip_serializing_if = "Option::is_none")]
540 pub range: Option<SourceRange>,
541 #[serde(skip_serializing_if = "Option::is_none")]
544 pub styleSheetId: Option<crate::dom::StyleSheetId>,
545 #[serde(skip_serializing_if = "Option::is_none")]
548 pub name: Option<String>,
549 #[serde(skip_serializing_if = "Option::is_none")]
552 pub physicalAxes: Option<crate::dom::PhysicalAxes>,
553 #[serde(skip_serializing_if = "Option::is_none")]
556 pub logicalAxes: Option<crate::dom::LogicalAxes>,
557 #[serde(skip_serializing_if = "Option::is_none")]
560 pub queriesScrollState: Option<bool>,
561 #[serde(skip_serializing_if = "Option::is_none")]
564 pub queriesAnchored: Option<bool>,
565}
566
567#[derive(Debug, Clone, Serialize, Deserialize, Default)]
570#[serde(rename_all = "camelCase")]
571pub struct CSSSupports {
572 pub text: String,
575 pub active: bool,
578 #[serde(skip_serializing_if = "Option::is_none")]
582 pub range: Option<SourceRange>,
583 #[serde(skip_serializing_if = "Option::is_none")]
586 pub styleSheetId: Option<crate::dom::StyleSheetId>,
587}
588
589#[derive(Debug, Clone, Serialize, Deserialize, Default)]
592#[serde(rename_all = "camelCase")]
593pub struct CSSNavigation {
594 pub text: String,
597 #[serde(skip_serializing_if = "Option::is_none")]
600 pub active: Option<bool>,
601 #[serde(skip_serializing_if = "Option::is_none")]
605 pub range: Option<SourceRange>,
606 #[serde(skip_serializing_if = "Option::is_none")]
609 pub styleSheetId: Option<crate::dom::StyleSheetId>,
610}
611
612#[derive(Debug, Clone, Serialize, Deserialize, Default)]
615#[serde(rename_all = "camelCase")]
616pub struct CSSScope {
617 pub text: String,
620 #[serde(skip_serializing_if = "Option::is_none")]
624 pub range: Option<SourceRange>,
625 #[serde(skip_serializing_if = "Option::is_none")]
628 pub styleSheetId: Option<crate::dom::StyleSheetId>,
629}
630
631#[derive(Debug, Clone, Serialize, Deserialize, Default)]
634#[serde(rename_all = "camelCase")]
635pub struct CSSLayer {
636 pub text: String,
639 #[serde(skip_serializing_if = "Option::is_none")]
643 pub range: Option<SourceRange>,
644 #[serde(skip_serializing_if = "Option::is_none")]
647 pub styleSheetId: Option<crate::dom::StyleSheetId>,
648}
649
650#[derive(Debug, Clone, Serialize, Deserialize, Default)]
653#[serde(rename_all = "camelCase")]
654pub struct CSSStartingStyle {
655 #[serde(skip_serializing_if = "Option::is_none")]
659 pub range: Option<SourceRange>,
660 #[serde(skip_serializing_if = "Option::is_none")]
663 pub styleSheetId: Option<crate::dom::StyleSheetId>,
664}
665
666#[derive(Debug, Clone, Serialize, Deserialize, Default)]
669#[serde(rename_all = "camelCase")]
670pub struct CSSLayerData {
671 pub name: String,
674 #[serde(skip_serializing_if = "Option::is_none")]
677 pub subLayers: Option<Vec<CSSLayerData>>,
678 pub order: f64,
682}
683
684#[derive(Debug, Clone, Serialize, Deserialize, Default)]
687#[serde(rename_all = "camelCase")]
688pub struct PlatformFontUsage {
689 pub familyName: String,
692 pub postScriptName: String,
695 pub isCustomFont: bool,
698 pub glyphCount: f64,
701}
702
703#[derive(Debug, Clone, Serialize, Deserialize, Default)]
706#[serde(rename_all = "camelCase")]
707pub struct FontVariationAxis {
708 pub tag: String,
711 pub name: String,
714 pub minValue: f64,
717 pub maxValue: f64,
720 pub defaultValue: f64,
723}
724
725#[derive(Debug, Clone, Serialize, Deserialize, Default)]
729#[serde(rename_all = "camelCase")]
730pub struct FontFace {
731 pub fontFamily: String,
734 pub fontStyle: String,
737 pub fontVariant: String,
740 pub fontWeight: String,
743 pub fontStretch: String,
746 pub fontDisplay: String,
749 pub unicodeRange: String,
752 pub src: String,
755 pub platformFontFamily: String,
758 #[serde(skip_serializing_if = "Option::is_none")]
761 pub fontVariationAxes: Option<Vec<FontVariationAxis>>,
762}
763
764#[derive(Debug, Clone, Serialize, Deserialize, Default)]
767#[serde(rename_all = "camelCase")]
768pub struct CSSTryRule {
769 #[serde(skip_serializing_if = "Option::is_none")]
773 pub styleSheetId: Option<crate::dom::StyleSheetId>,
774 pub origin: StyleSheetOrigin,
777 pub style: CSSStyle,
780}
781
782#[derive(Debug, Clone, Serialize, Deserialize, Default)]
785#[serde(rename_all = "camelCase")]
786pub struct CSSPositionTryRule {
787 pub name: ProtocolValue,
790 #[serde(skip_serializing_if = "Option::is_none")]
794 pub styleSheetId: Option<crate::dom::StyleSheetId>,
795 pub origin: StyleSheetOrigin,
798 pub style: CSSStyle,
801
802 pub active: bool,
803}
804
805#[derive(Debug, Clone, Serialize, Deserialize, Default)]
808#[serde(rename_all = "camelCase")]
809pub struct CSSKeyframesRule {
810 pub animationName: ProtocolValue,
813 pub keyframes: Vec<CSSKeyframeRule>,
816}
817
818#[derive(Debug, Clone, Serialize, Deserialize, Default)]
821#[serde(rename_all = "camelCase")]
822pub struct CSSPropertyRegistration {
823
824 pub propertyName: String,
825
826 #[serde(skip_serializing_if = "Option::is_none")]
827 pub initialValue: Option<ProtocolValue>,
828
829 pub inherits: bool,
830
831 pub syntax: String,
832}
833
834#[derive(Debug, Clone, Serialize, Deserialize, Default)]
837#[serde(rename_all = "camelCase")]
838pub struct CSSAtRule {
839 #[serde(rename = "type")]
842 pub type_: String,
843 #[serde(skip_serializing_if = "Option::is_none")]
846 pub subsection: Option<String>,
847 #[serde(skip_serializing_if = "Option::is_none")]
851 pub name: Option<ProtocolValue>,
852 #[serde(skip_serializing_if = "Option::is_none")]
856 pub styleSheetId: Option<crate::dom::StyleSheetId>,
857 pub origin: StyleSheetOrigin,
860 pub style: CSSStyle,
863}
864
865#[derive(Debug, Clone, Serialize, Deserialize, Default)]
868#[serde(rename_all = "camelCase")]
869pub struct CSSPropertyRule {
870 #[serde(skip_serializing_if = "Option::is_none")]
874 pub styleSheetId: Option<crate::dom::StyleSheetId>,
875 pub origin: StyleSheetOrigin,
878 pub propertyName: ProtocolValue,
881 pub style: CSSStyle,
884}
885
886#[derive(Debug, Clone, Serialize, Deserialize, Default)]
889#[serde(rename_all = "camelCase")]
890pub struct CSSFunctionParameter {
891 pub name: String,
894 #[serde(rename = "type")]
897 pub type_: String,
898}
899
900#[derive(Debug, Clone, Serialize, Deserialize, Default)]
903#[serde(rename_all = "camelCase")]
904pub struct CSSFunctionConditionNode {
905 #[serde(skip_serializing_if = "Option::is_none")]
908 pub media: Option<CSSMedia>,
909 #[serde(skip_serializing_if = "Option::is_none")]
912 pub containerQueries: Option<CSSContainerQuery>,
913 #[serde(skip_serializing_if = "Option::is_none")]
916 pub supports: Option<CSSSupports>,
917 #[serde(skip_serializing_if = "Option::is_none")]
920 pub navigation: Option<CSSNavigation>,
921 pub children: Vec<CSSFunctionNode>,
924 pub conditionText: String,
927}
928
929#[derive(Debug, Clone, Serialize, Deserialize, Default)]
932#[serde(rename_all = "camelCase")]
933pub struct CSSFunctionNode {
934 #[serde(skip_serializing_if = "Option::is_none")]
937 pub condition: Option<CSSFunctionConditionNode>,
938 #[serde(skip_serializing_if = "Option::is_none")]
941 pub style: Option<CSSStyle>,
942}
943
944#[derive(Debug, Clone, Serialize, Deserialize, Default)]
947#[serde(rename_all = "camelCase")]
948pub struct CSSFunctionRule {
949 pub name: ProtocolValue,
952 #[serde(skip_serializing_if = "Option::is_none")]
956 pub styleSheetId: Option<crate::dom::StyleSheetId>,
957 pub origin: StyleSheetOrigin,
960 pub parameters: Vec<CSSFunctionParameter>,
963 pub children: Vec<CSSFunctionNode>,
966 #[serde(skip_serializing_if = "Option::is_none")]
969 pub originTreeScopeNodeId: Option<crate::dom::BackendNodeId>,
970}
971
972#[derive(Debug, Clone, Serialize, Deserialize, Default)]
975#[serde(rename_all = "camelCase")]
976pub struct CSSKeyframeRule {
977 #[serde(skip_serializing_if = "Option::is_none")]
981 pub styleSheetId: Option<crate::dom::StyleSheetId>,
982 pub origin: StyleSheetOrigin,
985 pub keyText: ProtocolValue,
988 pub style: CSSStyle,
991}
992
993#[derive(Debug, Clone, Serialize, Deserialize, Default)]
996#[serde(rename_all = "camelCase")]
997pub struct StyleDeclarationEdit {
998 pub styleSheetId: crate::dom::StyleSheetId,
1001 pub range: SourceRange,
1004 pub text: String,
1007}
1008
1009#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1013#[serde(rename_all = "camelCase")]
1014pub struct AddRuleParams {
1015 pub styleSheetId: crate::dom::StyleSheetId,
1018 pub ruleText: String,
1021 pub location: SourceRange,
1024 #[serde(skip_serializing_if = "Option::is_none")]
1029 pub nodeForPropertySyntaxValidation: Option<crate::dom::NodeId>,
1030}
1031
1032#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1036#[serde(rename_all = "camelCase")]
1037pub struct AddRuleReturns {
1038 pub rule: CSSRule,
1041}
1042
1043#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1046#[serde(rename_all = "camelCase")]
1047pub struct CollectClassNamesParams {
1048
1049 pub styleSheetId: crate::dom::StyleSheetId,
1050}
1051
1052#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1055#[serde(rename_all = "camelCase")]
1056pub struct CollectClassNamesReturns {
1057 pub classNames: Vec<String>,
1060}
1061
1062#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1065#[serde(rename_all = "camelCase")]
1066pub struct CreateStyleSheetParams {
1067 pub frameId: crate::page::FrameId,
1070 #[serde(skip_serializing_if = "Option::is_none")]
1076 pub force: Option<bool>,
1077}
1078
1079#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1082#[serde(rename_all = "camelCase")]
1083pub struct CreateStyleSheetReturns {
1084 pub styleSheetId: crate::dom::StyleSheetId,
1087}
1088
1089#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1093#[serde(rename_all = "camelCase")]
1094pub struct ForcePseudoStateParams {
1095 pub nodeId: crate::dom::NodeId,
1098 pub forcedPseudoClasses: Vec<String>,
1101}
1102
1103#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1106#[serde(rename_all = "camelCase")]
1107pub struct ForceStartingStyleParams {
1108 pub nodeId: crate::dom::NodeId,
1111 pub forced: bool,
1114}
1115
1116
1117#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1118#[serde(rename_all = "camelCase")]
1119pub struct GetBackgroundColorsParams {
1120 pub nodeId: crate::dom::NodeId,
1123}
1124
1125
1126#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1127#[serde(rename_all = "camelCase")]
1128pub struct GetBackgroundColorsReturns {
1129 #[serde(skip_serializing_if = "Option::is_none")]
1136 pub backgroundColors: Option<Vec<String>>,
1137 #[serde(skip_serializing_if = "Option::is_none")]
1140 pub computedFontSize: Option<String>,
1141 #[serde(skip_serializing_if = "Option::is_none")]
1145 pub computedFontWeight: Option<String>,
1146}
1147
1148#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1151#[serde(rename_all = "camelCase")]
1152pub struct GetComputedStyleForNodeParams {
1153
1154 pub nodeId: crate::dom::NodeId,
1155}
1156
1157#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1160#[serde(rename_all = "camelCase")]
1161pub struct GetComputedStyleForNodeReturns {
1162 pub computedStyle: Vec<CSSComputedStyleProperty>,
1165 pub extraFields: ComputedStyleExtraFields,
1169}
1170
1171#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1184#[serde(rename_all = "camelCase")]
1185pub struct ResolveValuesParams {
1186 pub values: Vec<String>,
1189 pub nodeId: crate::dom::NodeId,
1192 #[serde(skip_serializing_if = "Option::is_none")]
1195 pub propertyName: Option<String>,
1196 #[serde(skip_serializing_if = "Option::is_none")]
1200 pub pseudoType: Option<crate::dom::PseudoType>,
1201 #[serde(skip_serializing_if = "Option::is_none")]
1204 pub pseudoIdentifier: Option<String>,
1205}
1206
1207#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1220#[serde(rename_all = "camelCase")]
1221pub struct ResolveValuesReturns {
1222
1223 pub results: Vec<String>,
1224}
1225
1226
1227#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1228#[serde(rename_all = "camelCase")]
1229pub struct GetLonghandPropertiesParams {
1230
1231 pub shorthandName: String,
1232
1233 pub value: String,
1234}
1235
1236
1237#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1238#[serde(rename_all = "camelCase")]
1239pub struct GetLonghandPropertiesReturns {
1240
1241 pub longhandProperties: Vec<CSSProperty>,
1242}
1243
1244#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1248#[serde(rename_all = "camelCase")]
1249pub struct GetInlineStylesForNodeParams {
1250
1251 pub nodeId: crate::dom::NodeId,
1252}
1253
1254#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1258#[serde(rename_all = "camelCase")]
1259pub struct GetInlineStylesForNodeReturns {
1260 #[serde(skip_serializing_if = "Option::is_none")]
1263 pub inlineStyle: Option<CSSStyle>,
1264 #[serde(skip_serializing_if = "Option::is_none")]
1267 pub attributesStyle: Option<CSSStyle>,
1268}
1269
1270#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1274#[serde(rename_all = "camelCase")]
1275pub struct GetAnimatedStylesForNodeParams {
1276
1277 pub nodeId: crate::dom::NodeId,
1278}
1279
1280#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1284#[serde(rename_all = "camelCase")]
1285pub struct GetAnimatedStylesForNodeReturns {
1286 #[serde(skip_serializing_if = "Option::is_none")]
1289 pub animationStyles: Option<Vec<CSSAnimationStyle>>,
1290 #[serde(skip_serializing_if = "Option::is_none")]
1293 pub transitionsStyle: Option<CSSStyle>,
1294 #[serde(skip_serializing_if = "Option::is_none")]
1298 pub inherited: Option<Vec<InheritedAnimatedStyleEntry>>,
1299}
1300
1301#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1304#[serde(rename_all = "camelCase")]
1305pub struct GetMatchedStylesForNodeParams {
1306
1307 pub nodeId: crate::dom::NodeId,
1308}
1309
1310#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1313#[serde(rename_all = "camelCase")]
1314pub struct GetMatchedStylesForNodeReturns {
1315 #[serde(skip_serializing_if = "Option::is_none")]
1318 pub inlineStyle: Option<CSSStyle>,
1319 #[serde(skip_serializing_if = "Option::is_none")]
1322 pub attributesStyle: Option<CSSStyle>,
1323 #[serde(skip_serializing_if = "Option::is_none")]
1326 pub matchedCSSRules: Option<Vec<RuleMatch>>,
1327 #[serde(skip_serializing_if = "Option::is_none")]
1330 pub pseudoElements: Option<Vec<PseudoElementMatches>>,
1331 #[serde(skip_serializing_if = "Option::is_none")]
1334 pub inherited: Option<Vec<InheritedStyleEntry>>,
1335 #[serde(skip_serializing_if = "Option::is_none")]
1338 pub inheritedPseudoElements: Option<Vec<InheritedPseudoElementMatches>>,
1339 #[serde(skip_serializing_if = "Option::is_none")]
1342 pub cssKeyframesRules: Option<Vec<CSSKeyframesRule>>,
1343 #[serde(skip_serializing_if = "Option::is_none")]
1346 pub cssPositionTryRules: Option<Vec<CSSPositionTryRule>>,
1347 #[serde(skip_serializing_if = "Option::is_none")]
1351 pub activePositionFallbackIndex: Option<u64>,
1352 #[serde(skip_serializing_if = "Option::is_none")]
1355 pub cssPropertyRules: Option<Vec<CSSPropertyRule>>,
1356 #[serde(skip_serializing_if = "Option::is_none")]
1359 pub cssPropertyRegistrations: Option<Vec<CSSPropertyRegistration>>,
1360 #[serde(skip_serializing_if = "Option::is_none")]
1363 pub cssAtRules: Option<Vec<CSSAtRule>>,
1364 #[serde(skip_serializing_if = "Option::is_none")]
1367 pub parentLayoutNodeId: Option<crate::dom::NodeId>,
1368 #[serde(skip_serializing_if = "Option::is_none")]
1371 pub cssFunctionRules: Option<Vec<CSSFunctionRule>>,
1372}
1373
1374#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1377#[serde(rename_all = "camelCase")]
1378pub struct GetEnvironmentVariablesReturns {
1379
1380 pub environmentVariables: serde_json::Map<String, JsonValue>,
1381}
1382
1383#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1386#[serde(rename_all = "camelCase")]
1387pub struct GetMediaQueriesReturns {
1388
1389 pub medias: Vec<CSSMedia>,
1390}
1391
1392#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1396#[serde(rename_all = "camelCase")]
1397pub struct GetPlatformFontsForNodeParams {
1398
1399 pub nodeId: crate::dom::NodeId,
1400}
1401
1402#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1406#[serde(rename_all = "camelCase")]
1407pub struct GetPlatformFontsForNodeReturns {
1408 pub fonts: Vec<PlatformFontUsage>,
1411}
1412
1413#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1416#[serde(rename_all = "camelCase")]
1417pub struct GetStyleSheetTextParams {
1418
1419 pub styleSheetId: crate::dom::StyleSheetId,
1420}
1421
1422#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1425#[serde(rename_all = "camelCase")]
1426pub struct GetStyleSheetTextReturns {
1427 pub text: String,
1430}
1431
1432#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1438#[serde(rename_all = "camelCase")]
1439pub struct GetLayersForNodeParams {
1440
1441 pub nodeId: crate::dom::NodeId,
1442}
1443
1444#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1450#[serde(rename_all = "camelCase")]
1451pub struct GetLayersForNodeReturns {
1452
1453 pub rootLayer: CSSLayerData,
1454}
1455
1456#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1460#[serde(rename_all = "camelCase")]
1461pub struct GetLocationForSelectorParams {
1462
1463 pub styleSheetId: crate::dom::StyleSheetId,
1464
1465 pub selectorText: String,
1466}
1467
1468#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1472#[serde(rename_all = "camelCase")]
1473pub struct GetLocationForSelectorReturns {
1474
1475 pub ranges: Vec<SourceRange>,
1476}
1477
1478#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1486#[serde(rename_all = "camelCase")]
1487pub struct TrackComputedStyleUpdatesForNodeParams {
1488
1489 #[serde(skip_serializing_if = "Option::is_none")]
1490 pub nodeId: Option<crate::dom::NodeId>,
1491}
1492
1493#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1501#[serde(rename_all = "camelCase")]
1502pub struct TrackComputedStyleUpdatesParams {
1503
1504 pub propertiesToTrack: Vec<CSSComputedStyleProperty>,
1505}
1506
1507#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1510#[serde(rename_all = "camelCase")]
1511pub struct TakeComputedStyleUpdatesReturns {
1512 pub nodeIds: Vec<crate::dom::NodeId>,
1515}
1516
1517#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1521#[serde(rename_all = "camelCase")]
1522pub struct SetEffectivePropertyValueForNodeParams {
1523 pub nodeId: crate::dom::NodeId,
1526
1527 pub propertyName: String,
1528
1529 pub value: String,
1530}
1531
1532#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1535#[serde(rename_all = "camelCase")]
1536pub struct SetPropertyRulePropertyNameParams {
1537
1538 pub styleSheetId: crate::dom::StyleSheetId,
1539
1540 pub range: SourceRange,
1541
1542 pub propertyName: String,
1543}
1544
1545#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1548#[serde(rename_all = "camelCase")]
1549pub struct SetPropertyRulePropertyNameReturns {
1550 pub propertyName: ProtocolValue,
1553}
1554
1555#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1558#[serde(rename_all = "camelCase")]
1559pub struct SetKeyframeKeyParams {
1560
1561 pub styleSheetId: crate::dom::StyleSheetId,
1562
1563 pub range: SourceRange,
1564
1565 pub keyText: String,
1566}
1567
1568#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1571#[serde(rename_all = "camelCase")]
1572pub struct SetKeyframeKeyReturns {
1573 pub keyText: ProtocolValue,
1576}
1577
1578#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1581#[serde(rename_all = "camelCase")]
1582pub struct SetMediaTextParams {
1583
1584 pub styleSheetId: crate::dom::StyleSheetId,
1585
1586 pub range: SourceRange,
1587
1588 pub text: String,
1589}
1590
1591#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1594#[serde(rename_all = "camelCase")]
1595pub struct SetMediaTextReturns {
1596 pub media: CSSMedia,
1599}
1600
1601#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1604#[serde(rename_all = "camelCase")]
1605pub struct SetContainerQueryTextParams {
1606
1607 pub styleSheetId: crate::dom::StyleSheetId,
1608
1609 pub range: SourceRange,
1610
1611 pub text: String,
1612}
1613
1614#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1617#[serde(rename_all = "camelCase")]
1618pub struct SetContainerQueryTextReturns {
1619 pub containerQuery: CSSContainerQuery,
1622}
1623
1624#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1627#[serde(rename_all = "camelCase")]
1628pub struct SetSupportsTextParams {
1629
1630 pub styleSheetId: crate::dom::StyleSheetId,
1631
1632 pub range: SourceRange,
1633
1634 pub text: String,
1635}
1636
1637#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1640#[serde(rename_all = "camelCase")]
1641pub struct SetSupportsTextReturns {
1642 pub supports: CSSSupports,
1645}
1646
1647#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1650#[serde(rename_all = "camelCase")]
1651pub struct SetNavigationTextParams {
1652
1653 pub styleSheetId: crate::dom::StyleSheetId,
1654
1655 pub range: SourceRange,
1656
1657 pub text: String,
1658}
1659
1660#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1663#[serde(rename_all = "camelCase")]
1664pub struct SetNavigationTextReturns {
1665 pub navigation: CSSNavigation,
1668}
1669
1670#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1673#[serde(rename_all = "camelCase")]
1674pub struct SetScopeTextParams {
1675
1676 pub styleSheetId: crate::dom::StyleSheetId,
1677
1678 pub range: SourceRange,
1679
1680 pub text: String,
1681}
1682
1683#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1686#[serde(rename_all = "camelCase")]
1687pub struct SetScopeTextReturns {
1688 pub scope: CSSScope,
1691}
1692
1693#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1696#[serde(rename_all = "camelCase")]
1697pub struct SetRuleSelectorParams {
1698
1699 pub styleSheetId: crate::dom::StyleSheetId,
1700
1701 pub range: SourceRange,
1702
1703 pub selector: String,
1704}
1705
1706#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1709#[serde(rename_all = "camelCase")]
1710pub struct SetRuleSelectorReturns {
1711 pub selectorList: SelectorList,
1714}
1715
1716#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1719#[serde(rename_all = "camelCase")]
1720pub struct SetStyleSheetTextParams {
1721
1722 pub styleSheetId: crate::dom::StyleSheetId,
1723
1724 pub text: String,
1725}
1726
1727#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1730#[serde(rename_all = "camelCase")]
1731pub struct SetStyleSheetTextReturns {
1732 #[serde(skip_serializing_if = "Option::is_none")]
1735 pub sourceMapURL: Option<String>,
1736}
1737
1738#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1741#[serde(rename_all = "camelCase")]
1742pub struct SetStyleTextsParams {
1743
1744 pub edits: Vec<StyleDeclarationEdit>,
1745 #[serde(skip_serializing_if = "Option::is_none")]
1750 pub nodeForPropertySyntaxValidation: Option<crate::dom::NodeId>,
1751}
1752
1753#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1756#[serde(rename_all = "camelCase")]
1757pub struct SetStyleTextsReturns {
1758 pub styles: Vec<CSSStyle>,
1761}
1762
1763#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1767#[serde(rename_all = "camelCase")]
1768pub struct StopRuleUsageTrackingReturns {
1769
1770 pub ruleUsage: Vec<RuleUsage>,
1771}
1772
1773#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1777#[serde(rename_all = "camelCase")]
1778pub struct TakeCoverageDeltaReturns {
1779
1780 pub coverage: Vec<RuleUsage>,
1781 pub timestamp: f64,
1784}
1785
1786#[derive(Debug, Clone, Serialize, Deserialize, Default)]
1789#[serde(rename_all = "camelCase")]
1790pub struct SetLocalFontsEnabledParams {
1791 pub enabled: bool,
1794}