css_ast/values/text/
mod.rs

1// AUTO-GENERATED from w3c/csswg-drafts
2// Commit: https://github.com/w3c/csswg-drafts/commit/7e27ad7484307dfdbe9d0e18ad19d02859389688
3// Do not edit this file directly.
4#![allow(warnings)]
5//! https://drafts.csswg.org/css-text-4/
6
7mod impls;
8use super::prelude::*;
9use impls::*;
10// /// Represents the style value for `hanging-punctuation` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#hanging-punctuation).
11// ///
12// /// The hanging-punctuation CSS property puts punctuation characters outside of the box to align the text with the rest of the document.
13// ///
14// /// The grammar is defined as:
15// ///
16// /// ```text,ignore
17// /// none | [ first || [ force-end | allow-end ] || last ]
18// /// ```
19// ///
20// /// https://drafts.csswg.org/css-text-4/#hanging-punctuation
21// #[syntax(" none | [ first || [ force-end | allow-end ] || last ] ")]
22// #[derive(
23//     Parse,
24//     Peek,
25//     ToSpan,
26//     ToCursors,
27//     DeclarationMetadata,
28//     SemanticEq,
29//     Debug,
30//     Clone,
31//     PartialEq,
32//     Eq,
33//     PartialOrd,
34//     Ord,
35//     Hash,
36// )]
37// #[declaration_metadata(
38//     initial = "none",
39//     inherits,
40//     applies_to = Text,
41//     animation_type = Discrete,
42//     property_group = Text,
43//     computed_value_type = Unknown,
44//     canonical_order = "per grammar",
45// )]
46// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
47// #[cfg_attr(
48//     feature = "css_feature_data",
49//     derive(ToCSSFeature),
50//     css_feature("css.properties.hanging-punctuation")
51// )]
52// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
53// #[derive(csskit_derives::NodeWithMetadata)]
54// pub struct HangingPunctuationStyleValue;
55
56/// Represents the style value for `hyphenate-character` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#hyphenate-character).
57///
58/// The hyphenate-character CSS property sets the character or string to use at the end of a line before a line break.
59///
60/// The grammar is defined as:
61///
62/// ```text,ignore
63/// auto | <string>
64/// ```
65///
66/// https://drafts.csswg.org/css-text-4/#hyphenate-character
67#[syntax(" auto | <string> ")]
68#[derive(
69	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
70)]
71#[declaration_metadata(
72    initial = "auto",
73    inherits,
74    applies_to = Text,
75    animation_type = Discrete,
76    property_group = Text,
77    computed_value_type = Unknown,
78    canonical_order = "per grammar",
79)]
80#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
81#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.hyphenate-character"))]
82#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
83#[derive(csskit_derives::NodeWithMetadata)]
84pub struct HyphenateCharacterStyleValue;
85
86// /// Represents the style value for `hyphenate-limit-chars` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#hyphenate-limit-chars).
87// ///
88// /// The hyphenate-limit-chars CSS property sets the number of characters in a word before it is hyphenated and the minimum number of characters on either side of the hyphen.
89// ///
90// /// The grammar is defined as:
91// ///
92// /// ```text,ignore
93// /// [ auto | <integer> ]{1,3}
94// /// ```
95// ///
96// /// https://drafts.csswg.org/css-text-4/#hyphenate-limit-chars
97// #[syntax(" [ auto | <integer> ]{1,3} ")]
98// #[derive(
99//     Parse,
100//     Peek,
101//     ToSpan,
102//     ToCursors,
103//     DeclarationMetadata,
104//     SemanticEq,
105//     Debug,
106//     Clone,
107//     PartialEq,
108//     Eq,
109//     PartialOrd,
110//     Ord,
111//     Hash,
112// )]
113// #[declaration_metadata(
114//     initial = "auto",
115//     inherits,
116//     applies_to = Text,
117//     animation_type = ByComputedValue,
118//     property_group = Text,
119//     computed_value_type = Unknown,
120//     canonical_order = "per grammar",
121// )]
122// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
123// #[cfg_attr(
124//     feature = "css_feature_data",
125//     derive(ToCSSFeature),
126//     css_feature("css.properties.hyphenate-limit-chars")
127// )]
128// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
129// #[derive(csskit_derives::NodeWithMetadata)]
130// pub struct HyphenateLimitCharsStyleValue;
131
132/// Represents the style value for `hyphenate-limit-last` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#hyphenate-limit-last).
133///
134/// The grammar is defined as:
135///
136/// ```text,ignore
137/// none | always | column | page | spread
138/// ```
139///
140/// https://drafts.csswg.org/css-text-4/#hyphenate-limit-last
141#[syntax(" none | always | column | page | spread ")]
142#[derive(
143	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
144)]
145#[declaration_metadata(
146    initial = "none",
147    inherits,
148    applies_to = Block,
149    animation_type = Discrete,
150    property_group = Text,
151    computed_value_type = Unknown,
152    canonical_order = "per grammar",
153)]
154#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
155#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.hyphenate-limit-last"))]
156#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
157#[derive(csskit_derives::NodeWithMetadata)]
158pub enum HyphenateLimitLastStyleValue {}
159
160/// Represents the style value for `hyphenate-limit-lines` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#hyphenate-limit-lines).
161///
162/// The grammar is defined as:
163///
164/// ```text,ignore
165/// no-limit | <integer>
166/// ```
167///
168/// https://drafts.csswg.org/css-text-4/#hyphenate-limit-lines
169#[syntax(" no-limit | <integer> ")]
170#[derive(
171	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
172)]
173#[declaration_metadata(
174    initial = "no-limit",
175    inherits,
176    applies_to = Block,
177    animation_type = ByComputedValue,
178    property_group = Text,
179    computed_value_type = Unknown,
180    canonical_order = "per grammar",
181)]
182#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
183#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.hyphenate-limit-lines"))]
184#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
185#[derive(csskit_derives::NodeWithMetadata)]
186pub enum HyphenateLimitLinesStyleValue {}
187
188/// Represents the style value for `hyphenate-limit-zone` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#hyphenate-limit-zone).
189///
190/// The grammar is defined as:
191///
192/// ```text,ignore
193/// <length-percentage>
194/// ```
195///
196/// https://drafts.csswg.org/css-text-4/#hyphenate-limit-zone
197#[syntax(" <length-percentage> ")]
198#[derive(
199	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
200)]
201#[declaration_metadata(
202    initial = "0",
203    inherits,
204    applies_to = Block,
205    animation_type = ByComputedValue,
206    percentages = LineBox,
207    property_group = Text,
208    computed_value_type = Unknown,
209    canonical_order = "per grammar",
210)]
211#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
212#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.hyphenate-limit-zone"))]
213#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
214#[derive(csskit_derives::NodeWithMetadata)]
215pub struct HyphenateLimitZoneStyleValue;
216
217/// Represents the style value for `hyphens` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#hyphens).
218///
219/// The hyphens CSS property controls when long words are broken by line wrapping. Although called hyphens, the property applies to word-splitting behavior across languages, such as customary spelling changes or the use of other characters. Support for non-English languages varies significantly.
220///
221/// The grammar is defined as:
222///
223/// ```text,ignore
224/// none | manual | auto
225/// ```
226///
227/// https://drafts.csswg.org/css-text-4/#hyphens
228#[syntax(" none | manual | auto ")]
229#[derive(
230	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
231)]
232#[declaration_metadata(
233    initial = "manual",
234    inherits,
235    applies_to = Text,
236    animation_type = Discrete,
237    property_group = Text,
238    computed_value_type = Unknown,
239    canonical_order = "n/a",
240)]
241#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
242#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.hyphens"))]
243#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
244#[derive(csskit_derives::NodeWithMetadata)]
245pub enum HyphensStyleValue {}
246
247/// Represents the style value for `letter-spacing` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#letter-spacing).
248///
249/// The letter-spacing CSS property controls the amount of space between each letter in an element or block of text.
250///
251/// The grammar is defined as:
252///
253/// ```text,ignore
254/// normal | <length-percentage>
255/// ```
256///
257/// https://drafts.csswg.org/css-text-4/#letter-spacing
258#[syntax(" normal | <length-percentage> ")]
259#[derive(
260	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
261)]
262#[declaration_metadata(
263    initial = "normal",
264    inherits,
265    applies_to = Unknown,
266    animation_type = ByComputedValue,
267    percentages = FontSize,
268    property_group = Text,
269    computed_value_type = AbsoluteLengthOrPercentage,
270    canonical_order = "n/a",
271)]
272#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
273#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.letter-spacing"))]
274#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
275#[derive(csskit_derives::NodeWithMetadata)]
276pub enum LetterSpacingStyleValue {}
277
278/// Represents the style value for `line-break` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#line-break).
279///
280/// The line-break CSS property sets how strictly to apply rules for wrapping text to new lines, especially for symbols and punctuation.
281///
282/// The grammar is defined as:
283///
284/// ```text,ignore
285/// auto | loose | normal | strict | anywhere
286/// ```
287///
288/// https://drafts.csswg.org/css-text-4/#line-break
289#[syntax(" auto | loose | normal | strict | anywhere ")]
290#[derive(
291	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
292)]
293#[declaration_metadata(
294    initial = "auto",
295    inherits,
296    applies_to = Text,
297    animation_type = Discrete,
298    property_group = Text,
299    computed_value_type = Unknown,
300    canonical_order = "n/a",
301)]
302#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
303#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.line-break"))]
304#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
305#[derive(csskit_derives::NodeWithMetadata)]
306pub enum LineBreakStyleValue {}
307
308/// Represents the style value for `line-padding` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#line-padding).
309///
310/// The grammar is defined as:
311///
312/// ```text,ignore
313/// <length>
314/// ```
315///
316/// https://drafts.csswg.org/css-text-4/#line-padding
317#[syntax(" <length> ")]
318#[derive(
319	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
320)]
321#[declaration_metadata(
322    initial = "0",
323    inherits,
324    applies_to = Unknown,
325    animation_type = ByComputedValue,
326    property_group = Text,
327    computed_value_type = AbsoluteLength,
328    canonical_order = "per grammar",
329)]
330#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
331#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.line-padding"))]
332#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
333#[derive(csskit_derives::NodeWithMetadata)]
334pub struct LinePaddingStyleValue;
335
336/// Represents the style value for `overflow-wrap` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#overflow-wrap).
337///
338/// The overflow-wrap CSS property breaks a line of text onto multiple lines inside the targeted element in an otherwise unbreakable place to prevent overflow. The legacy property is word-wrap.
339///
340/// The grammar is defined as:
341///
342/// ```text,ignore
343/// normal | break-word | anywhere
344/// ```
345///
346/// https://drafts.csswg.org/css-text-4/#overflow-wrap
347#[syntax(" normal | break-word | anywhere ")]
348#[derive(
349	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
350)]
351#[declaration_metadata(
352    initial = "normal",
353    inherits,
354    applies_to = Text,
355    animation_type = Discrete,
356    property_group = Text,
357    computed_value_type = Unknown,
358    canonical_order = "n/a",
359)]
360#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
361#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.overflow-wrap"))]
362#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
363#[derive(csskit_derives::NodeWithMetadata)]
364pub enum OverflowWrapStyleValue {}
365
366/// Represents the style value for `tab-size` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#tab-size).
367///
368/// The tab-size CSS property sets the width of the tab character.
369///
370/// The grammar is defined as:
371///
372/// ```text,ignore
373/// <number [0,∞]> | <length [0,∞]>
374/// ```
375///
376/// https://drafts.csswg.org/css-text-4/#tab-size
377#[syntax(" <number [0,∞]> | <length [0,∞]> ")]
378#[derive(
379	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
380)]
381#[declaration_metadata(
382    initial = "8",
383    inherits,
384    applies_to = Text,
385    animation_type = ByComputedValue,
386    property_group = Text,
387    computed_value_type = SpecifiedKeywordPlusAbsoluteLength,
388    canonical_order = "n/a",
389    unitless_zero_resolves = Number,
390)]
391#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
392#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.tab-size"))]
393#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
394#[derive(csskit_derives::NodeWithMetadata)]
395pub struct TabSizeStyleValue;
396
397/// Represents the style value for `text-align` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-align).
398///
399/// The text-align CSS property sets the horizontal placement of the inner content of a block element.
400///
401/// The grammar is defined as:
402///
403/// ```text,ignore
404/// start | end | left | right | center | <string> | justify | match-parent | justify-all
405/// ```
406///
407/// https://drafts.csswg.org/css-text-4/#text-align
408#[syntax(" start | end | left | right | center | <string> | justify | match-parent | justify-all ")]
409#[derive(
410	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
411)]
412#[declaration_metadata(
413    initial = "start",
414    inherits,
415    applies_to = Block,
416    animation_type = Discrete,
417    percentages = Unknown,
418    property_group = Text,
419    computed_value_type = Unknown,
420    canonical_order = "n/a",
421)]
422#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
423#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-align"))]
424#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
425#[derive(csskit_derives::NodeWithMetadata)]
426pub enum TextAlignStyleValue {}
427
428/// Represents the style value for `text-align-all` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-align-all).
429///
430/// The grammar is defined as:
431///
432/// ```text,ignore
433/// start | end | left | right | center | <string> | justify | match-parent
434/// ```
435///
436/// https://drafts.csswg.org/css-text-4/#text-align-all
437#[syntax(" start | end | left | right | center | <string> | justify | match-parent ")]
438#[derive(
439	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
440)]
441#[declaration_metadata(
442    initial = "start",
443    inherits,
444    applies_to = Block,
445    animation_type = Discrete,
446    property_group = Text,
447    computed_value_type = Unknown,
448    canonical_order = "n/a",
449)]
450#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
451#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-align-all"))]
452#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
453#[derive(csskit_derives::NodeWithMetadata)]
454pub enum TextAlignAllStyleValue {}
455
456/// Represents the style value for `text-align-last` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-align-last).
457///
458/// The text-align-last CSS property sets the alignment of the last line of text before a forced line break.
459///
460/// The grammar is defined as:
461///
462/// ```text,ignore
463/// auto | start | end | left | right | center | justify | match-parent
464/// ```
465///
466/// https://drafts.csswg.org/css-text-4/#text-align-last
467#[syntax(" auto | start | end | left | right | center | justify | match-parent ")]
468#[derive(
469	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
470)]
471#[declaration_metadata(
472    initial = "auto",
473    inherits,
474    applies_to = Block,
475    animation_type = Discrete,
476    property_group = Text,
477    computed_value_type = Unknown,
478    canonical_order = "n/a",
479)]
480#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
481#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-align-last"))]
482#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
483#[derive(csskit_derives::NodeWithMetadata)]
484pub enum TextAlignLastStyleValue {}
485
486/// Represents the style value for `text-autospace` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-autospace).
487///
488/// The text-autospace CSS property sets whether and how to insert spaces in inter-script text (such as when mixing Latin and Chinese characters) and around punctuation.
489///
490/// The grammar is defined as:
491///
492/// ```text,ignore
493/// normal | <autospace> | auto
494/// ```
495///
496/// https://drafts.csswg.org/css-text-4/#text-autospace
497#[syntax(" normal | <autospace> | auto ")]
498#[derive(
499	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
500)]
501#[declaration_metadata(
502    initial = "normal",
503    inherits,
504    applies_to = Text,
505    animation_type = Discrete,
506    property_group = Text,
507    computed_value_type = Unknown,
508    canonical_order = "per grammar",
509)]
510#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
511#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-autospace"))]
512#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
513#[derive(csskit_derives::NodeWithMetadata)]
514pub enum TextAutospaceStyleValue {}
515
516/// Represents the style value for `text-group-align` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-group-align).
517///
518/// The grammar is defined as:
519///
520/// ```text,ignore
521/// none | start | end | left | right | center
522/// ```
523///
524/// https://drafts.csswg.org/css-text-4/#text-group-align
525#[syntax(" none | start | end | left | right | center ")]
526#[derive(
527	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
528)]
529#[declaration_metadata(
530    initial = "none",
531    applies_to = Block,
532    animation_type = Discrete,
533    property_group = Text,
534    computed_value_type = Unknown,
535    canonical_order = "per grammar",
536)]
537#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
538#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-group-align"))]
539#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
540#[derive(csskit_derives::NodeWithMetadata)]
541pub enum TextGroupAlignStyleValue {}
542
543// /// Represents the style value for `text-indent` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-indent).
544// ///
545// /// The text-indent CSS property sets the size of the empty space (indentation) at the beginning of lines in a text.
546// ///
547// /// The grammar is defined as:
548// ///
549// /// ```text,ignore
550// /// [ <length-percentage> ] && hanging? && each-line?
551// /// ```
552// ///
553// /// https://drafts.csswg.org/css-text-4/#text-indent
554// #[syntax(" [ <length-percentage> ] && hanging? && each-line? ")]
555// #[derive(
556//     Parse,
557//     Peek,
558//     ToSpan,
559//     ToCursors,
560//     DeclarationMetadata,
561//     SemanticEq,
562//     Debug,
563//     Clone,
564//     PartialEq,
565//     Eq,
566//     PartialOrd,
567//     Ord,
568//     Hash,
569// )]
570// #[declaration_metadata(
571//     initial = "0",
572//     inherits,
573//     applies_to = Block,
574//     animation_type = ByComputedValue,
575//     percentages = Unknown,
576//     property_group = Text,
577//     computed_value_type = Unknown,
578//     canonical_order = "per grammar",
579// )]
580// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
581// #[cfg_attr(
582//     feature = "css_feature_data",
583//     derive(ToCSSFeature),
584//     css_feature("css.properties.text-indent")
585// )]
586// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
587// #[derive(csskit_derives::NodeWithMetadata)]
588// pub struct TextIndentStyleValue;
589
590// /// Represents the style value for `text-justify` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-justify).
591// ///
592// /// The text-justify CSS property sets the justification method of text when text-align: justify is set.
593// ///
594// /// The grammar is defined as:
595// ///
596// /// ```text,ignore
597// /// [ auto | none | inter-word | inter-character | ruby ] || no-compress
598// /// ```
599// ///
600// /// https://drafts.csswg.org/css-text-4/#text-justify
601// #[syntax(" [ auto | none | inter-word | inter-character | ruby ] || no-compress ")]
602// #[derive(
603//     Parse,
604//     Peek,
605//     ToSpan,
606//     ToCursors,
607//     DeclarationMetadata,
608//     SemanticEq,
609//     Debug,
610//     Clone,
611//     PartialEq,
612//     Eq,
613//     PartialOrd,
614//     Ord,
615//     Hash,
616// )]
617// #[declaration_metadata(
618//     initial = "auto",
619//     inherits,
620//     applies_to = Text,
621//     animation_type = Discrete,
622//     property_group = Text,
623//     computed_value_type = Unknown,
624//     canonical_order = "n/a",
625// )]
626// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
627// #[cfg_attr(
628//     feature = "css_feature_data",
629//     derive(ToCSSFeature),
630//     css_feature("css.properties.text-justify")
631// )]
632// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
633// #[derive(csskit_derives::NodeWithMetadata)]
634// pub struct TextJustifyStyleValue;
635
636// /// Represents the style value for `text-spacing` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-spacing).
637// ///
638// /// The grammar is defined as:
639// ///
640// /// ```text,ignore
641// /// none | auto | <spacing-trim> || <autospace>
642// /// ```
643// ///
644// /// https://drafts.csswg.org/css-text-4/#text-spacing
645// #[syntax(" none | auto | <spacing-trim> || <autospace> ")]
646// #[derive(
647//     Parse,
648//     Peek,
649//     ToSpan,
650//     ToCursors,
651//     DeclarationMetadata,
652//     SemanticEq,
653//     Debug,
654//     Clone,
655//     PartialEq,
656//     Eq,
657//     PartialOrd,
658//     Ord,
659//     Hash,
660// )]
661// #[declaration_metadata(
662//     initial = "see individual properties",
663//     inherits,
664//     applies_to = Text,
665//     animation_type = Discrete,
666//     property_group = Text,
667//     computed_value_type = Unknown,
668//     canonical_order = "per grammar",
669// )]
670// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
671// #[cfg_attr(
672//     feature = "css_feature_data",
673//     derive(ToCSSFeature),
674//     css_feature("css.properties.text-spacing")
675// )]
676// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
677// #[derive(csskit_derives::NodeWithMetadata)]
678// pub struct TextSpacingStyleValue;
679
680/// Represents the style value for `text-spacing-trim` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-spacing-trim).
681///
682/// The text-spacing-trim CSS property controls spacing around CJK characters, avoiding excessive whitespace when using full-width punctuation characters.
683///
684/// The grammar is defined as:
685///
686/// ```text,ignore
687/// <spacing-trim> | auto
688/// ```
689///
690/// https://drafts.csswg.org/css-text-4/#text-spacing-trim
691#[syntax(" <spacing-trim> | auto ")]
692#[derive(
693	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
694)]
695#[declaration_metadata(
696    initial = "normal",
697    inherits,
698    applies_to = Text,
699    animation_type = Discrete,
700    property_group = Text,
701    computed_value_type = Unknown,
702    canonical_order = "per grammar",
703)]
704#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
705#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-spacing-trim"))]
706#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
707#[derive(csskit_derives::NodeWithMetadata)]
708pub struct TextSpacingTrimStyleValue;
709
710// /// Represents the style value for `text-transform` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-transform).
711// ///
712// /// The text-transform CSS property sets text case and capitalization.
713// ///
714// /// The grammar is defined as:
715// ///
716// /// ```text,ignore
717// /// none | [capitalize | uppercase | lowercase ] || full-width || full-size-kana | math-auto
718// /// ```
719// ///
720// /// https://drafts.csswg.org/css-text-4/#text-transform
721// #[syntax(
722//     " none | [capitalize | uppercase | lowercase ] || full-width || full-size-kana | math-auto "
723// )]
724// #[derive(
725//     Parse,
726//     Peek,
727//     ToSpan,
728//     ToCursors,
729//     DeclarationMetadata,
730//     SemanticEq,
731//     Debug,
732//     Clone,
733//     PartialEq,
734//     Eq,
735//     PartialOrd,
736//     Ord,
737//     Hash,
738// )]
739// #[declaration_metadata(
740//     initial = "none",
741//     inherits,
742//     applies_to = Text,
743//     animation_type = Discrete,
744//     property_group = Text,
745//     computed_value_type = Unknown,
746//     canonical_order = "n/a",
747// )]
748// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
749// #[cfg_attr(
750//     feature = "css_feature_data",
751//     derive(ToCSSFeature),
752//     css_feature("css.properties.text-transform")
753// )]
754// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
755// #[derive(csskit_derives::NodeWithMetadata)]
756// pub enum TextTransformStyleValue {}
757
758/// Represents the style value for `text-wrap` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-wrap).
759///
760/// The text-wrap CSS property sets how lines break in text that overflows the container. It is a shorthand for text-wrap-style and text-wrap-mode.
761///
762/// The grammar is defined as:
763///
764/// ```text,ignore
765/// <'text-wrap-mode'> || <'text-wrap-style'>
766/// ```
767///
768/// https://drafts.csswg.org/css-text-4/#text-wrap
769#[syntax(" <'text-wrap-mode'> || <'text-wrap-style'> ")]
770#[derive(
771	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
772)]
773#[declaration_metadata(
774    initial = "wrap",
775    inherits = Unknown,
776    applies_to = Unknown,
777    animation_type = Unknown,
778    percentages = Unknown,
779    longhands = TextWrapMode|TextWrapStyle,
780    property_group = Text,
781    computed_value_type = Unknown,
782    canonical_order = "per grammar",
783)]
784#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
785#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-wrap"))]
786#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
787#[derive(csskit_derives::NodeWithMetadata)]
788pub struct TextWrapStyleValue;
789
790/// Represents the style value for `text-wrap-mode` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-wrap-mode).
791///
792/// The text-wrap-mode CSS property sets whether lines may wrap with the values wrap and nowrap. It is a longhand property for both white-space and text-wrap.
793///
794/// The grammar is defined as:
795///
796/// ```text,ignore
797/// wrap | nowrap
798/// ```
799///
800/// https://drafts.csswg.org/css-text-4/#text-wrap-mode
801#[syntax(" wrap | nowrap ")]
802#[derive(
803	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
804)]
805#[declaration_metadata(
806    initial = "wrap",
807    inherits,
808    applies_to = Text,
809    animation_type = Discrete,
810    shorthand_group = TextWrap,
811    property_group = Text,
812    computed_value_type = Unknown,
813    canonical_order = "per grammar",
814)]
815#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
816#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-wrap-mode"))]
817#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
818#[derive(csskit_derives::NodeWithMetadata)]
819pub enum TextWrapModeStyleValue {}
820
821/// Represents the style value for `text-wrap-style` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#text-wrap-style).
822///
823/// The text-wrap-style CSS property sets how lines break in text that overflows the container. It can also be set with the text-wrap shorthand.
824///
825/// The grammar is defined as:
826///
827/// ```text,ignore
828/// auto | balance | stable | pretty | avoid-orphans
829/// ```
830///
831/// https://drafts.csswg.org/css-text-4/#text-wrap-style
832#[syntax(" auto | balance | stable | pretty | avoid-orphans ")]
833#[derive(
834	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
835)]
836#[declaration_metadata(
837    initial = "auto",
838    inherits,
839    applies_to = Unknown,
840    animation_type = Discrete,
841    shorthand_group = TextWrap,
842    property_group = Text,
843    computed_value_type = Unknown,
844    canonical_order = "per grammar",
845)]
846#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
847#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-wrap-style"))]
848#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
849#[derive(csskit_derives::NodeWithMetadata)]
850pub enum TextWrapStyleStyleValue {}
851
852// /// Represents the style value for `white-space` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#white-space).
853// ///
854// /// The white-space CSS property sets how white space is collapsed and how lines wrap. It is a shorthand for white-space-collapse and text-wrap-mode.
855// ///
856// /// The grammar is defined as:
857// ///
858// /// ```text,ignore
859// /// normal | pre | pre-wrap | pre-line | <'white-space-collapse'> || <'text-wrap-mode'> || <'white-space-trim'>
860// /// ```
861// ///
862// /// https://drafts.csswg.org/css-text-4/#white-space
863// #[syntax(
864//     " normal | pre | pre-wrap | pre-line | <'white-space-collapse'> || <'text-wrap-mode'> || <'white-space-trim'> "
865// )]
866// #[derive(
867//     Parse,
868//     Peek,
869//     ToSpan,
870//     ToCursors,
871//     DeclarationMetadata,
872//     SemanticEq,
873//     Debug,
874//     Clone,
875//     PartialEq,
876//     Eq,
877//     PartialOrd,
878//     Ord,
879//     Hash,
880// )]
881// #[declaration_metadata(
882//     initial = "normal",
883//     inherits = Unknown,
884//     applies_to = Text,
885//     animation_type = Discrete,
886//     property_group = Text,
887//     computed_value_type = Unknown,
888//     canonical_order = "n/a",
889// )]
890// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
891// #[cfg_attr(
892//     feature = "css_feature_data",
893//     derive(ToCSSFeature),
894//     css_feature("css.properties.white-space")
895// )]
896// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
897// #[derive(csskit_derives::NodeWithMetadata)]
898// pub enum WhiteSpaceStyleValue {}
899
900/// Represents the style value for `white-space-collapse` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#white-space-collapse).
901///
902/// The white-space-collapse CSS property sets whether new line characters are shown as line breaks, and whether multiple consecutive spaces are all displayed or combined.
903///
904/// The grammar is defined as:
905///
906/// ```text,ignore
907/// collapse | discard | preserve | preserve-breaks | preserve-spaces | break-spaces
908/// ```
909///
910/// https://drafts.csswg.org/css-text-4/#white-space-collapse
911#[syntax(" collapse | discard | preserve | preserve-breaks | preserve-spaces | break-spaces ")]
912#[derive(
913	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
914)]
915#[declaration_metadata(
916    initial = "collapse",
917    inherits,
918    applies_to = Text,
919    animation_type = Discrete,
920    property_group = Text,
921    computed_value_type = Unknown,
922    canonical_order = "per grammar",
923)]
924#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
925#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.white-space-collapse"))]
926#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
927#[derive(csskit_derives::NodeWithMetadata)]
928pub enum WhiteSpaceCollapseStyleValue {}
929
930// /// Represents the style value for `white-space-trim` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#white-space-trim).
931// ///
932// /// The grammar is defined as:
933// ///
934// /// ```text,ignore
935// /// none | discard-before || discard-after || discard-inner
936// /// ```
937// ///
938// /// https://drafts.csswg.org/css-text-4/#white-space-trim
939// #[syntax(" none | discard-before || discard-after || discard-inner ")]
940// #[derive(
941//     Parse,
942//     Peek,
943//     ToSpan,
944//     ToCursors,
945//     DeclarationMetadata,
946//     SemanticEq,
947//     Debug,
948//     Clone,
949//     PartialEq,
950//     Eq,
951//     PartialOrd,
952//     Ord,
953//     Hash,
954// )]
955// #[declaration_metadata(
956//     initial = "none",
957//     applies_to = Unknown,
958//     animation_type = Discrete,
959//     property_group = Text,
960//     computed_value_type = Unknown,
961//     canonical_order = "per grammar",
962// )]
963// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
964// #[cfg_attr(
965//     feature = "css_feature_data",
966//     derive(ToCSSFeature),
967//     css_feature("css.properties.white-space-trim")
968// )]
969// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
970// #[derive(csskit_derives::NodeWithMetadata)]
971// pub struct WhiteSpaceTrimStyleValue;
972
973/// Represents the style value for `word-break` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#word-break).
974///
975/// The word-break CSS property sets how lines break within words.
976///
977/// The grammar is defined as:
978///
979/// ```text,ignore
980/// normal | break-all | keep-all | manual | auto-phrase | break-word
981/// ```
982///
983/// https://drafts.csswg.org/css-text-4/#word-break
984#[syntax(" normal | break-all | keep-all | manual | auto-phrase | break-word ")]
985#[derive(
986	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
987)]
988#[declaration_metadata(
989    initial = "normal",
990    inherits,
991    applies_to = Text,
992    animation_type = Discrete,
993    property_group = Text,
994    computed_value_type = Unknown,
995    canonical_order = "n/a",
996)]
997#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
998#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.word-break"))]
999#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
1000#[derive(csskit_derives::NodeWithMetadata)]
1001pub enum WordBreakStyleValue {}
1002
1003// /// Represents the style value for `word-space-transform` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#word-space-transform).
1004// ///
1005// /// The grammar is defined as:
1006// ///
1007// /// ```text,ignore
1008// /// none | [ space | ideographic-space ] && auto-phrase?
1009// /// ```
1010// ///
1011// /// https://drafts.csswg.org/css-text-4/#word-space-transform
1012// #[syntax(" none | [ space | ideographic-space ] && auto-phrase? ")]
1013// #[derive(
1014//     Parse,
1015//     Peek,
1016//     ToSpan,
1017//     ToCursors,
1018//     DeclarationMetadata,
1019//     SemanticEq,
1020//     Debug,
1021//     Clone,
1022//     PartialEq,
1023//     Eq,
1024//     PartialOrd,
1025//     Ord,
1026//     Hash,
1027// )]
1028// #[declaration_metadata(
1029//     initial = "none",
1030//     inherits,
1031//     applies_to = Text,
1032//     animation_type = Discrete,
1033//     property_group = Text,
1034//     computed_value_type = AsSpecified,
1035//     canonical_order = "per grammar",
1036// )]
1037// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
1038// #[cfg_attr(
1039//     feature = "css_feature_data",
1040//     derive(ToCSSFeature),
1041//     css_feature("css.properties.word-space-transform")
1042// )]
1043// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
1044// #[derive(csskit_derives::NodeWithMetadata)]
1045// pub struct WordSpaceTransformStyleValue;
1046
1047/// Represents the style value for `word-spacing` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#word-spacing).
1048///
1049/// The word-spacing CSS property sets the amount of white space between words.
1050///
1051/// The grammar is defined as:
1052///
1053/// ```text,ignore
1054/// normal | <length-percentage>
1055/// ```
1056///
1057/// https://drafts.csswg.org/css-text-4/#word-spacing
1058#[syntax(" normal | <length-percentage> ")]
1059#[derive(
1060	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
1061)]
1062#[declaration_metadata(
1063    initial = "normal",
1064    inherits,
1065    applies_to = Text,
1066    animation_type = ByComputedValue,
1067    percentages = FontSize,
1068    property_group = Text,
1069    computed_value_type = AbsoluteLengthOrPercentage,
1070    canonical_order = "n/a",
1071)]
1072#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
1073#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.word-spacing"))]
1074#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
1075#[derive(csskit_derives::NodeWithMetadata)]
1076pub enum WordSpacingStyleValue {}
1077
1078/// Represents the style value for `word-wrap` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#word-wrap).
1079///
1080/// The grammar is defined as:
1081///
1082/// ```text,ignore
1083/// normal | break-word | anywhere
1084/// ```
1085///
1086/// https://drafts.csswg.org/css-text-4/#word-wrap
1087#[syntax(" normal | break-word | anywhere ")]
1088#[derive(
1089	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
1090)]
1091#[declaration_metadata(
1092    initial = "normal",
1093    inherits,
1094    applies_to = Text,
1095    animation_type = Discrete,
1096    property_group = Text,
1097    computed_value_type = Unknown,
1098    canonical_order = "n/a",
1099)]
1100#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
1101#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.word-wrap"))]
1102#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
1103#[derive(csskit_derives::NodeWithMetadata)]
1104pub enum WordWrapStyleValue {}
1105
1106/// Represents the style value for `wrap-after` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#wrap-after).
1107///
1108/// The grammar is defined as:
1109///
1110/// ```text,ignore
1111/// auto | avoid | avoid-line | avoid-flex | line | flex
1112/// ```
1113///
1114/// https://drafts.csswg.org/css-text-4/#wrap-after
1115#[syntax(" auto | avoid | avoid-line | avoid-flex | line | flex ")]
1116#[derive(
1117	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
1118)]
1119#[declaration_metadata(
1120    initial = "auto",
1121    applies_to = Unknown,
1122    animation_type = Discrete,
1123    property_group = Text,
1124    computed_value_type = Unknown,
1125    canonical_order = "per grammar",
1126)]
1127#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
1128#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.wrap-after"))]
1129#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
1130#[derive(csskit_derives::NodeWithMetadata)]
1131pub enum WrapAfterStyleValue {}
1132
1133/// Represents the style value for `wrap-before` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#wrap-before).
1134///
1135/// The grammar is defined as:
1136///
1137/// ```text,ignore
1138/// auto | avoid | avoid-line | avoid-flex | line | flex
1139/// ```
1140///
1141/// https://drafts.csswg.org/css-text-4/#wrap-before
1142#[syntax(" auto | avoid | avoid-line | avoid-flex | line | flex ")]
1143#[derive(
1144	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
1145)]
1146#[declaration_metadata(
1147    initial = "auto",
1148    applies_to = Unknown,
1149    animation_type = Discrete,
1150    property_group = Text,
1151    computed_value_type = Unknown,
1152    canonical_order = "per grammar",
1153)]
1154#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
1155#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.wrap-before"))]
1156#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
1157#[derive(csskit_derives::NodeWithMetadata)]
1158pub enum WrapBeforeStyleValue {}
1159
1160/// Represents the style value for `wrap-inside` as defined in [css-text-4](https://drafts.csswg.org/css-text-4/#wrap-inside).
1161///
1162/// The grammar is defined as:
1163///
1164/// ```text,ignore
1165/// auto | avoid
1166/// ```
1167///
1168/// https://drafts.csswg.org/css-text-4/#wrap-inside
1169#[syntax(" auto | avoid ")]
1170#[derive(
1171	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
1172)]
1173#[declaration_metadata(
1174    initial = "auto",
1175    applies_to = Unknown,
1176    animation_type = Discrete,
1177    property_group = Text,
1178    computed_value_type = Unknown,
1179    canonical_order = "per grammar",
1180)]
1181#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
1182#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.wrap-inside"))]
1183#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
1184#[derive(csskit_derives::NodeWithMetadata)]
1185pub enum WrapInsideStyleValue {}