dothtml-interfaces 0.2.7 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,1484 +0,0 @@
1
-
2
-
3
- type BasicCommonValues = "inherit"|"initial"|"unset"|"revert"|"revert-layer";
4
-
5
- type ComplexType = string;
6
-
7
- // BASIC TYPES
8
- type Str = `"${string|""}"`|`'${string|""}'`; // TODO: wherever str is required, we could just inject quotes...
9
- type Int = number;
10
- type Percentage = `${number}%`;
11
- type AlphaValue = number | Percentage; // Number should be interpreted as a decimal (x/1);
12
- type Ratio = number|`${number}/${number}`;
13
-
14
- // type DigitStr = "0"|"1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9";
15
- // type HexStr = DigitStr|"A"|"B"|"C"|"D"|"E"|"F"|"a"|"b"|"c"|"d"|"e"|"f";
16
- // type Hex2 = `${HexStr}${HexStr}`;
17
- // type Hex3 = `${Hex2}${HexStr}`;
18
- // type Hex4 = `${Hex3}${HexStr}`;
19
- // type Hex5 = `${Hex4}${HexStr}`;
20
- // type Hex6 = `${Hex5}${HexStr}`;
21
- // type HexColor = `#${Hex3|Hex6}`;
22
- type HexColor = `#${ComplexType}`;
23
-
24
- // LENGTH
25
- type AbsoluteUnits = "cm"|"mm"|"in"|"px"|"pt"|"pc"|"Q";
26
- type RelativeUnits = "cap"|"ch"|"em"|"ex"|"ic"|"lh"|"rem"|"rlh"
27
- |"vh"|"vw"|"vmin"|"vmax"|"vb"|"vi"
28
- |"cqw"|"cqh"|"cqi"|"cqb"|"cqmin"|"cqmax"
29
- |"%";
30
- type AllLengthUnits = AbsoluteUnits|RelativeUnits;
31
- type NumericLength = `${number}${AllLengthUnits}`;
32
- type LengthPercentage = NumericLength|Percentage;
33
-
34
- // TIME & FREQUENCY
35
- type Time = `${number}${"s"|"ms"}`;
36
- type TimePercentage = Time|Percentage;
37
- type Frequency = `${number}${"Hz"|"kHz"}`;
38
- type FrequencyPercentage = Frequency|Percentage;
39
-
40
- // RESOLUTION
41
- type Resolution = `${number}${"dpi"|"dpcm"|"dppx"|"x"}`;
42
-
43
- // MISC ENUM TYPES
44
- type AbsoluteSize = "xx-small"|"x-small"|"small"|"medium"|"large"|"x-large"|"xx-large"|"xxx-large";
45
- type BlendMode = "normal"|"multiply"|"screen"|"overlay"|"darken"|"lighten"|"color-dodge"|"color-burn"|"hard-light"|"soft-light"|"difference"|"exclusion"|"hue"|"saturation"|"color"|"luminosity";
46
- type LineStyle = "none"|"hidden"|"dotted"|"dashed"|"solid"|"double"|"groove"|"ridge"|"inset"|"outset";
47
- type DisplayBox = "contents"|"none"
48
- type DisplayInside = "flow"|"flow-root"|"table"|"flex"|"grid"|"ruby";
49
- type DisplayInternal = "table-row-group"|"table-header-group"|"table-footer-group"|"table-row"|"table-cell"|"table-column-group"|"table-column"|"table-caption"|"ruby-base"|"ruby-text"|"ruby-base-container"|"ruby-text-container";
50
- type DisplayLegacy = "inline-block"|"inline-table"|"inline-flex"|"inline-grid";
51
- type DisplayOutside = "block"|"inline"|"run-in";
52
- type DisplayFlow = "flow"|"flow-root";
53
- type Overflow = "visible"|"hidden"|"clip"|"scroll";
54
- type RelativeSize = "smaller"|"larger";
55
-
56
- // BASIC SHAPE
57
- // TODO need a builder.
58
- // Most of these are too complex to represent as a typescript type.
59
- // Realistically they should just be constructed usign a builder rather than setting the strings.
60
- // https://developer.mozilla.org/en-US/docs/Web/CSS/basic-shape
61
- type InsetFunction = `inset(${ComplexType})`;
62
- type RectFunction = `rect(${ComplexType})`;
63
- type XywhFunction = `xywh(${ComplexType})`;
64
- type CircleFunction = `circle(${ComplexType})`;
65
- type EllipseFunction = `ellipse(${ComplexType})`;
66
- type PolygonFunction = `polygon(${ComplexType})`;
67
- type PathFunction = `path(${ComplexType})`;
68
- type BasicShape = InsetFunction|RectFunction|XywhFunction|CircleFunction|EllipseFunction|PolygonFunction|PathFunction;
69
-
70
- // ANGLES
71
- type AngleUnits = "deg"|"turn"|"rad"|"grad";
72
- type Angle = number | `${number}${AngleUnits}`; // Pure number should be interpreted as degrees.
73
- type AnglePercentage = number | Angle | Percentage; // Number should be interpreted as a decimal (x/1);
74
-
75
- // ADVANCED TYPES
76
- // Box.
77
- type VisualBox = "content-box" | "padding-box" | "border-box"; // the three <box> values
78
- type RayoutBox = VisualBox | "margin-box" // the <shape-box> values
79
- type PaintBox = VisualBox | "fill-box" | "stroke-box"
80
- type CoordBox = VisualBox | "fill-box" | "stroke-box" | "view-box"
81
- type GeometryBox = RayoutBox | "fill-box" | "stroke-box" | "view-box"
82
- type BoxEdge = VisualBox | RayoutBox | PaintBox | CoordBox | GeometryBox;
83
-
84
- // DIMENSION
85
- type Dimension = Angle|Time|Frequency|NumericLength;
86
-
87
- // Calc.
88
- type Calc = ComplexType;
89
-
90
- // It's difficult to compose calc types because they're too complex. See below.
91
- // May consider adding a builder for this, but not sure what it will look like.
92
-
93
- /*
94
- // Can't get this working because the types get too complex for TS.
95
- // type Decrement = [
96
- // never, 0, 1, 2, 3, 4, 5, 6, 7
97
- // ];
98
- // type CalcConstant = "e"|"-e"|"E"|"pi"|"-pi"|"infinity"|"-infinity"|"NaN"; // Defined on a different page. Not sure what it's for.
99
- // type CalcKeyword = 'e' | 'pi' | 'infinity' | '-infinity' | 'NaN';
100
- // type CalcValue = number | Percentage | Dimension | CalcKeyword;// | CalcSum;
101
- // type CalcProductSuffix<T extends CalcValue, Depth extends number> = Depth extends 0 ? string : `${"*"|"/"}${T}${CalcProductSuffix<T, Decrement[Depth]>}`;
102
- // type CalcSumSuffix<T extends CalcValue, Depth extends number> = Depth extends 0 ? string : `${"+"|"-"}${T}${CalcProductSuffix<T, 8>}`;
103
- // // TODO: optional space can go here.
104
- // type CalcProduct<T extends CalcValue> = T|`${T}${CalcProductSuffix<T, 8>}`;
105
- // type CalcSum<T extends CalcValue> = CalcProduct<T>|`${CalcProduct<T>}${"+"|"-"}${CalcProduct<T>}`
106
- // CalcValue type definition
107
- // Helper types for CalcProduct and CalcSum
108
- // type CalcOperation = '+' | '-' | '*' | '/';
109
- // type CalcProductPart = CalcValue | [CalcOperation, CalcValue];
110
- */
111
-
112
- // Color Interpolation.
113
- type RectangularColorSpace = "srgb"|"srgb-linear"|"display-p3"|"a98-rgb"|"prophoto-rgb"|"rec2020"|"lab"|"oklab"|"xyz"|"xyz-d50"|"xyz-d65";
114
- type PolarColorSpace = "hsl"|"hwb"|"lch"|"oklch";
115
- type HueInterpolationMethod = `${"shorter"|"longer"|"increasing"|"decreasing"} hue`
116
- type ColorInterpolationMethod = RectangularColorSpace|PolarColorSpace|`${PolarColorSpace} ${HueInterpolationMethod}`;
117
-
118
- // Color
119
- // type NamedColor = "aliceblue"|"antiquewhite"|"aqua"|"aquamarine"|"azure"|"beige"|"bisque"|"black"|"blanchedalmond"|"blue"|"blueviolet"|"brown"|"burlywood"|"cadetblue"|"chartreuse"|"chocolate"|"coral"|"cornflowerblue"|"cornsilk"|"crimson"|"cyan"|"darkblue"|"darkcyan"|"darkgoldenrod"|"darkgray"|"darkgrey"|"darkgreen"|"darkkhaki"|"darkmagenta"|"darkolivegreen"|"darkorange"|"darkorchid"|"darkred"|"darksalmon"|"darkseagreen"|"darkslateblue"|"darkslategray"|"darkslategrey"|"darkturquoise"|"darkviolet"|"deeppink"|"deepskyblue"|"dimgray"|"dimgrey"|"dodgerblue"|"firebrick"|"floralwhite"|"forestgreen"|"fuchsia"|"gainsboro"|"ghostwhite"|"gold"|"goldenrod"|"gray"|"grey"|"green"|"greenyellow"|"honeydew"|"hotpink"|"indianred"|"indigo"|"ivory"|"khaki"|"lavender"|"lavenderblush"|"lawngreen"|"lemonchiffon"|"lightblue"|"lightcoral"|"lightcyan"|"lightgoldenrodyellow"|"lightgray"|"lightgrey"|"lightgreen"|"lightpink"|"lightsalmon"|"lightseagreen"|"lightskyblue"|"lightslategray"|"lightslategrey"|"lightsteelblue"|"lightyellow"|"lime"|"limegreen"|"linen"|"magenta"|"maroon"|"mediumaquamarine"|"mediumblue"|"mediumorchid"|"mediumpurple"|"mediumseagreen"|"mediumslateblue"|"mediumspringgreen"|"mediumturquoise"|"mediumvioletred"|"midnightblue"|"mintcream"|"mistyrose"|"moccasin"|"navajowhite"|"navy"|"oldlace"|"olive"|"olivedrab"|"orange"|"orangered"|"orchid"|"palegoldenrod"|"palegreen"|"paleturquoise"|"palevioletred"|"papayawhip"|"peachpuff"|"peru"|"pink"|"plum"|"powderblue"|"purple"|"rebeccapurple"|"red"|"rosybrown"|"royalblue"|"saddlebrown"|"salmon"|"sandybrown"|"seagreen"|"seashell"|"sienna"|"silver"|"skyblue"|"slateblue"|"slategray"|"slategrey"|"snow"|"springgreen"|"steelblue"|"tan"|"teal"|"thistle"|"tomato"|"turquoise"|"violet"|"wheat"|"white"|"whitesmoke"|"yellow"|"yellowgreen";
120
- // type SystemColor = "AccentColor"|"AccentColorText"|"ActiveText"|"ButtonBorder"|"ButtonFace"|"ButtonText"|"Canvas"|"CanvasText"|"Field"|"FieldText"|"GrayText"|"Highlight"|"HighlightText"|"LinkText"|"Mark"|"MarkText"|"SelectedItem"|"SelectedItemText"|"VisitedText";
121
- // type Hue = number|Angle;
122
- // type PredefinedRgb = "srgb"|"srgb-linear"|"display-p3"|"a98-rgb"|"prophoto-rgb"|"rec2020";
123
- // type XyzSpace = "xyz"|"xyz-d50"|"xyz-d65";
124
- // type XyzParams = `${XyzSpace} ${number|Percentage|"none"} ${number|Percentage|"none"} ${number|Percentage|"none"}`
125
- // type PredefinedRgbParams = `${PredefinedRgb} ${number|Percentage|"none"} ${number|Percentage|"none"} ${number|Percentage|"none"}`
126
- // type ColorspaceParams = PredefinedRgbParams|XyzParams;
127
-
128
- // type LRgba<T extends number|AlphaValue> = `rgb(${T}, ${T}, ${T})` | `rgba(${T}, ${T}, ${T}, ${AlphaValue})`;
129
- // type MRgba = `rgb(${number|Percentage|"none"} ${number|Percentage|"none"} ${number|Percentage|"none"})` | `rgba(${number|Percentage|"none"} ${number|Percentage|"none"} ${number|Percentage|"none"} / ${AlphaValue})`;
130
- // type Rgba = LRgba<number|AlphaValue>|MRgba;
131
- // type LHsla = `hsl(${Hue}, ${Percentage}, ${Percentage})` | `hsla(${Hue}, ${Percentage}, ${Percentage}, ${AlphaValue})`;
132
- // type MHsla = `hsl(${Hue|"none"} ${Percentage|number|"none"} ${Percentage|number|"none"})` | `hsla(${Hue|"none"} ${Percentage|number|"none"} ${Percentage|number|"none"} / ${AlphaValue|"none"})`;
133
- // type Hsla = LHsla|MHsla;
134
- // type Hwb = `hwb(${Hue|"none"} ${Percentage|number|"none"} ${Percentage|number|"none"})` | `hwb(${Hue|"none"} ${Percentage|number|"none"} ${Percentage|number|"none"} / ${AlphaValue|"none"})`;
135
- // type Lab = `${"lab"|"oklab"}(${number|Percentage|"none"} ${number|Percentage|"none"} ${number|Percentage|"none"})` | `${"lab"|"oklab"}(${number|Percentage|"none"} ${number|Percentage|"none"} ${number|Percentage|"none"} / ${AlphaValue|"none"})`;
136
- // type Lch = `${"lch"|"oklch"}(${number|Percentage|"none"} ${number|Percentage|"none"} ${Hue|"none"})` | `${"lch"|"oklch"}(${number|Percentage|"none"} ${number|Percentage|"none"} ${Hue|"none"} / ${AlphaValue|"none"})`;
137
- // type ColorFunc = `color(${ColorspaceParams})`| `color(${ColorspaceParams} / ${AlphaValue|"none"})`;
138
- // type AbsoluteColorFunction = Rgba|Hsla|Hwb|Lab|Lch|ColorFunc;
139
-
140
- // type AbsoluteColorBase = HexColor|AbsoluteColorFunction|NamedColor|"transparent";
141
- // type Color = AbsoluteColorBase|SystemColor|"currentcolor";
142
- // type SimpleColor = HexColor|`${"rgb"|"rgba"|"hsl"|"hsla"|"hwb"|"lab"|"lch"|"oklab"|"oklch"|"color"}(${ComplexType})`|NamedColor|SystemColor|"currentcolor";
143
-
144
- type Color = string;
145
-
146
- // Display List Item
147
-
148
- type DisplayListItem =
149
- | 'list-item'
150
- | `${DisplayOutside} list-item`
151
- | `list-item ${DisplayOutside}`
152
- | `${DisplayFlow} list-item`
153
- | `list-item ${DisplayFlow}`
154
- | `${DisplayOutside} ${DisplayFlow} list-item`
155
- | `${DisplayOutside} list-item ${DisplayFlow}`
156
- | `${DisplayFlow} ${DisplayOutside} list-item`
157
- | `${DisplayFlow} list-item ${DisplayOutside}`
158
- | `list-item ${DisplayOutside} ${DisplayFlow}`
159
- | `list-item ${DisplayFlow} ${DisplayOutside}`;
160
-
161
- // ID
162
- type Ident = string;
163
- type CustomIdent = string;
164
- type DashedIdent = `--${string}`;
165
-
166
- // EASING FUNCTION
167
-
168
- type StepPosition = "jump-start"|"jump-end"|"jump-none"|"jump-both"|"start"|"end";
169
- type LinearStopLength = Percentage|`${Percentage} ${Percentage}`;
170
- type LinearStop = number|`${number} ${LinearStopLength}`|`${LinearStopLength} ${number}`;
171
- type LinearStopList = `${LinearStop}${`, ${LinearStop}${`, ${LinearStop}${`, ${LinearStop}${`, ${LinearStop}${ComplexType}`|""}`|""}`|""}`|""}`;
172
-
173
- type StepEasingFunction = "step-start"|"step-end"|`steps(${Int}${`, ${StepPosition}`|""})`;
174
- type CubicBezierEasingFunction = "ease"|"ease-in"|"ease-out"|"ease-in-out"|`cubic-bezier(${number}, ${number}, ${number}, ${number})`;
175
- type LinearEasingFunction = `linear(${LinearStopList})`;
176
- type EasingFunction = "linear"|LinearEasingFunction|CubicBezierEasingFunction|StepEasingFunction;
177
-
178
- // FILTER FUNCTION
179
- // TODO: don't forget to provide builders for these. Already put work into some.
180
- type SaturateFunction = `saturate(${number|Percentage|""})`;
181
- type SepiaFunction = `sepia(${number|Percentage|""})`;
182
- type OpacityFunction = `opacity(${number|Percentage|""})`;
183
- type InvertFunction = `invert(${number|Percentage|""})`;
184
- type GrayscaleFunction = `grayscale(${number|Percentage|""})`;
185
- type ContrastFunction = `contrast(${number|Percentage|""})`;
186
- type BrightnessFunction = `brightness(${number|Percentage|""})`;
187
- type BlurFunction = `blur(${NumericLength|""})`;
188
- // Regrettably, strong typing for color isn't possible due to the type complexity.
189
- // Even SimpleColor doesn't work. We use string in place of Color.
190
- type DropShadowFunction = `drop-shadow(${`${ComplexType} ${NumericLength} ${NumericLength}`
191
- |`${NumericLength} ${NumericLength} ${ComplexType}`
192
- |`${NumericLength} ${NumericLength}`
193
- |`${ComplexType} ${NumericLength} ${NumericLength} ${NumericLength}`
194
- |`${NumericLength} ${NumericLength} ${NumericLength} ${ComplexType}`
195
- |`${NumericLength} ${NumericLength} ${NumericLength}`
196
- })`;
197
- type HueRotateFunction = `hue-rotate(${Angle|""})`;
198
- type FilterFunction = SaturateFunction|SepiaFunction|OpacityFunction|InvertFunction|GrayscaleFunction|ContrastFunction|BrightnessFunction|BlurFunction|DropShadowFunction|HueRotateFunction;
199
-
200
- // FLEX
201
- type Flex = `${number}fr`;
202
-
203
- // FONT
204
-
205
- type GenericFamily = "serif" | "sans-serif" | "monospace" | "cursive" | "fantasy" | "system-ui" | "ui-serif" | "ui-sans-serif" | "ui-monospace" | "ui-rounded" | "emoji" | "math" | "fangsong";
206
-
207
- // POSITION
208
- type HorizontalPosition = "left" | "center" | "right" | LengthPercentage;
209
- type VerticalPosition = "top" | "center" | "bottom" | LengthPercentage;
210
-
211
- type Position =
212
- | HorizontalPosition
213
- | VerticalPosition
214
- | `${HorizontalPosition} ${VerticalPosition}`
215
- | `${VerticalPosition} ${HorizontalPosition}`
216
- | `${"left" | "right"} ${LengthPercentage}`
217
- | `${"top" | "bottom"} ${LengthPercentage}`
218
- | `${"left" | "right"} ${LengthPercentage} ${"top" | "bottom"} ${LengthPercentage}`
219
- | `${"top" | "bottom"} ${LengthPercentage} ${"left" | "right"} ${LengthPercentage}`;
220
-
221
- // GRADIENT
222
- // https://developer.mozilla.org/en-US/docs/Web/CSS/gradient
223
- // TODO: absolutely need a builder for this.
224
-
225
- type RadialShape = "circle"|"ellipse";
226
- type RadialExtent = "closest-corner"|"closest-side"|"farthest-corner"|"farthest-side";
227
- type SideOrCorner = "left"|"right"|"top"|"bottom"|`${"left" | "right"} ${"top" | "bottom"}`|`${"top" | "bottom"} ${"left" | "right"}`;
228
- type RadialSize = `${RadialExtent} ${NumericLength} ${LengthPercentage} ${LengthPercentage}`;
229
- type LinearColorStop = Color|`${Color} ${LengthPercentage}`;
230
- type LinearColorHint = LengthPercentage;
231
- // type LinearColorStopListItem = LinearColorStop|`${LinearColorHint}, ${LinearColorStop}`; // TOO COMPLEX :(
232
- type LinearColorStopListItem = LinearColorStop|`${ComplexType}, ${LinearColorStop}`; // TODO: this type got botched due to complexity.
233
- type ColorStopList = `${LinearColorStop}${`, ${ComplexType}`}`|`${LinearColorStop}`;
234
-
235
- type AngleOrSideOrCorner = Angle | `to ${SideOrCorner}, `;
236
- type LinearGradientSyntax = ComplexType; //`${`${AngleOrSideOrCorner} `|""}${ColorStopList}`;
237
- // type RadiatShapeOrSize = RadialShape | RadialSize | `${RadialShape} ${RadialSize}` | `${RadialSize} ${RadialShape}`;
238
- type RadiatShapeOrSize = RadialShape | RadialSize | ComplexType;//`${RadialShape} ${RadialSize}` | `${RadialSize} ${RadialShape}`;
239
- type RadialGradientSyntax = `${`${RadiatShapeOrSize} ` | ""} [ at <position> ]? , <color-stop-list>`;
240
- type LinearGradientFunction = `linear-gradient(${LinearGradientSyntax})`;
241
- type RepeatingLinearGradientFunction = `linear-gradient(${LinearGradientSyntax})`;
242
- type RadialGradientFunction = `radial-gradient(${RadialGradientSyntax})`;
243
- type RepeatingRadialGradientFunction = `radial-gradient(${RadialGradientSyntax})`;
244
- type Gradient = LinearGradientFunction | RepeatingLinearGradientFunction | RadialGradientFunction | RepeatingRadialGradientFunction;
245
-
246
- // URL
247
- type Url = `${"src"|"url"}(${Str})`;
248
-
249
- // IMAGE
250
- type Image = Url|Gradient;
251
-
252
- // TODO:
253
- // https://developer.mozilla.org/en-US/docs/Web/CSS/transform-function
254
- type TransformFunction = ComplexType;
255
-
256
- // Building blocks.
257
-
258
- // type OptionalWhitespace = ""|" ";
259
- // export type Percentage = number|`${number}%`; // Used for filters.
260
-
261
- // ts starts complaining about the complexity of the type :(
262
-
263
-
264
- // Types
265
- // TODO: look up types online and correct this.
266
- // https://developer.mozilla.org/en-US/docs/Web/CSS/absolute-size
267
-
268
- // MORE COMPLEX TYPES?
269
-
270
- type NumericLengthOrAuto = NumericLength|"auto";
271
- type NumericAngle = number|`${number}${AngleUnits}`;
272
-
273
- type AppearanceValues = BasicCommonValues|"none"|"menulist-button"|"textfield"|"button"|"searchfield"|"textarea"|"push-button"|"slider-horizontal"|"checkbox"|"radio"|"square-button"|"menulist"|"listbox"|"meter"|"progress-bar"|"scrollbarbutton-up"|"button-bevel"|"media-mute-button"|"caret";
274
- type BackgroundAttachmentValues = BasicCommonValues|"scroll"|"fixed"|"local";
275
- type BackgroundRepeatValues = BasicCommonValues|"no-repeat"|"repeat"|"space"|"round";
276
- type BackgroundOriginValues = BasicCommonValues|"padding-box"|"border-box"|"content-box";
277
- type BackgroundSizeValues = BasicCommonValues|"auto"|NumericLength|"cover"|"contain";
278
- type BackfaceVisibilityValues = BasicCommonValues|"visible"|"hidden";
279
- type BorderStyles = BasicCommonValues|"dotted"|"dashed"|"solid"|"double"|"groove"|"ridge"|"inset"|"outset"|"none"|"hidden";
280
-
281
- type DisplayValues = BasicCommonValues|"inline"|"block"|"contents"|"flex"|"grid"|"inline-block"|"inline-flex"|"inline-grid"|"inline-table"|"list-item"|"run-in"|"table"|"table-caption"|"table-column-group"|"table-header-group"|"table-footer-group"|"table-row-group"|"table-cell"|"table-column"|"table-row"|"none";
282
- type DirectionValues = BasicCommonValues|"ltr"|"rtl";
283
- type FontStyleValues = BasicCommonValues|"normal"|"italic"|"oblique";
284
- type FontVariantValues = BasicCommonValues|"normal"|"small-caps";
285
- type FontVariantCapsValues = FontVariantValues|"all-small-caps"|"petite-caps"|"all-petite-caps"|"unicase"|"titling-caps";
286
- type FontWeightValues = BasicCommonValues|number|"normal"|"bold"|"bolder"|"lighter";
287
- type LengthProp = BasicCommonValues|"maxHeight"|"minHeight"|"top"|"bottom"|"height"|"maxHidth"|"minWidth"|"right"|"left"|"width"|"margin"|"marginTop"|"marginBottom"|"marginLeft"|"marginRight"|"outlineOffset"|"padding"|"paddingTop"|"paddingBottom"|"paddingLeft"|"paddingRight"|"lineHeight"|"flexBasis"|"fontSize";
288
- type OutlineWidthValues = BasicCommonValues|"medium"|"thin"|"thick"|NumericLength;
289
- type PositionNames = BasicCommonValues|"static"|"relative"|"fixed"|"absolute"|"sticky";
290
-
291
- type FlexDirectionNames = BasicCommonValues|"row"|"row-reverse"|"column"|"column-reverse";
292
- type FlexWrapNames = BasicCommonValues|"nowrap"|"wrap"|"wrap-reverse";
293
-
294
-
295
- // Advanced formatted types.
296
-
297
- type BackgroundRepeatValues2d = BackgroundRepeatValues|"repeat-x"|"repeat-y"|`${BackgroundRepeatValues} ${BackgroundRepeatValues}`;
298
- type BorderShorthand = BasicCommonValues|`${BorderStyles}`|`${BorderStyles} ${Color}`|ComplexType;//`${number}${AllLengthUnits} ${BorderStyles} ${Color}`;
299
- type BackgroundImageFormat = BasicCommonValues|Url|`${Url}, ${Url}`;
300
- type BackgroundPositionShorthand2D = BasicCommonValues|`${BasicCommonValues|number} ${BasicCommonValues|number}`|`${number}% ${number}%`|`${"left"|"right"|"center"} ${"top"|"center"|"bottom"}`;
301
- type BackgroundShorthand = BasicCommonValues|ComplexType;//`${Color} ${Url} ${BackgroundRepeatValues} ${BackgroundPositionShorthand2D}`;
302
- type FlexFlowShorthand = BasicCommonValues|`${FlexDirectionNames} ${FlexWrapNames}`;
303
- type FlexShorthand = BasicCommonValues|`${BasicCommonValues|number} ${BasicCommonValues|number} ${BasicCommonValues|`${number}${AllLengthUnits}`}`;
304
-
305
- type AtRule = "@charset"|"@color-profile"|"@container"|"@counter-style"|"@font-face"|"@document"|"@font-feature-values"|"@font-palette-values"|"@import"|"@keyframes"|"@layer"|"@media"|"@namespace"|"@page"|"@property"|"@scope"|"@starting-style"|"@supports";
306
-
307
- interface IDotcssProp{
308
-
309
- // SPECIAL FUNCITONS COMMENTED OUT IN v6!
310
- // angleToDeg(a: number|string);
311
- // matrixMultiply3D(a: Array<number>, b: Array<number>): Array<number>;
312
- // lengthToPx(l: string|number, prop?: LengthProp, element?: Element);
313
- // angleSubtract(a, b);
314
- // url(url: string);
315
- // rgb(r: number, g: number, b: number);
316
- // rgba(r: number, g: number, b: number, a: number);
317
- // buildTransform();
318
- // scopeToEl(el: HTMLElement);
319
- // cacheScopedStaticStyles(el: HTMLElement);
320
- // clearDynamicStyles(el: HTMLElement);
321
- // unscope();
322
- // formatNumberValue(value: number, unit?: string);
323
- // hide(params?: HideParams);
324
- // show(params?: ShowParams);
325
- // fadeOut(duration: number, complete: Function);
326
- // fadeIn(duration: number, complete: Function);
327
- // END SPECIAL FUNCTIONS!
328
-
329
- // Private.
330
- //cacheScopedStaticStyles(el: HTMLElement);
331
- //clearCachedStyles(el: HTMLElement);
332
-
333
-
334
- // CSS PROPS!
335
- // backgroundColor(values: string|Array<number>): IDotcssProp;
336
- // backgroundColor(r: number, g: number, b: number, a?: number): IDotcssProp;
337
- // color(values: string|Array<number>): IDotcssProp;
338
- // color(r: number, g: number, b: number, a?: number): IDotcssProp;
339
-
340
- // display(value: string): IDotcssProp;
341
- // height: IDotcssAnimatable<string|number>;
342
- // opacity: IDotcssAnimatable<string|number>;
343
- // overflow(value: string): IDotcssProp;
344
- // width: IDotcssAnimatable<string|number>;
345
-
346
-
347
-
348
-
349
-
350
- //color:
351
- color?: Color;
352
- backgroundColor?: Color;
353
- borderBottomColor?: Color;
354
- borderColor?: Color;
355
- borderLeftColor?: Color;
356
- borderRightColor?: Color;
357
- borderTopColor?: Color;
358
- textDecorationColor?: Color;
359
- outlineColor?: Color;
360
- columnRuleColor?: Color;
361
-
362
- //length:(value:
363
- backgroundSize?: BackgroundSizeValues;
364
- backgroundSizeCm?: number;
365
- backgroundSizeCh?: number;
366
- backgroundSizeEm?: number;
367
- backgroundSizeEx?: number;
368
- backgroundSizeIn?: number;
369
- backgroundSizeMm?: number;
370
- backgroundSizeP?: number;
371
- backgroundSizePc?: number;
372
- backgroundSizePt?: number;
373
- backgroundSizePx?: number;
374
- backgroundSizeRem?: number;
375
- backgroundSizeVh?: number;
376
- backgroundSizeVw?: number;
377
- backgroundSizeVMax?: number;
378
- backgroundSizeVMin?: number;
379
-
380
- blockSize?: NumericLength;
381
- blockSizeCm?: number;
382
- blockSizeCh?: number;
383
- blockSizeEm?: number;
384
- blockSizeEx?: number;
385
- blockSizeIn?: number;
386
- blockSizeMm?: number;
387
- blockSizeP?: number;
388
- blockSizePc?: number;
389
- blockSizePt?: number;
390
- blockSizePx?: number;
391
- blockSizeRem?: number;
392
- blockSizeVh?: number;
393
- blockSizeVw?: number;
394
- blockSizeVMax?: number;
395
- blockSizeVMin?: number;
396
-
397
- borderBottomLeftRadius?: NumericLength;
398
- borderBottomLeftRadiusCm?: number;
399
- borderBottomLeftRadiusCh?: number;
400
- borderBottomLeftRadiusEm?: number;
401
- borderBottomLeftRadiusEx?: number;
402
- borderBottomLeftRadiusIn?: number;
403
- borderBottomLeftRadiusMm?: number;
404
- borderBottomLeftRadiusP?: number;
405
- borderBottomLeftRadiusPc?: number;
406
- borderBottomLeftRadiusPt?: number;
407
- borderBottomLeftRadiusPx?: number;
408
- borderBottomLeftRadiusRem?: number;
409
- borderBottomLeftRadiusVh?: number;
410
- borderBottomLeftRadiusVw?: number;
411
- borderBottomLeftRadiusVMax?: number;
412
- borderBottomLeftRadiusVMin?: number;
413
-
414
- borderBottomRightRadius?: NumericLength;
415
- borderBottomRightRadiusCm?: number;
416
- borderBottomRightRadiusCh?: number;
417
- borderBottomRightRadiusEm?: number;
418
- borderBottomRightRadiusEx?: number;
419
- borderBottomRightRadiusIn?: number;
420
- borderBottomRightRadiusMm?: number;
421
- borderBottomRightRadiusP?: number;
422
- borderBottomRightRadiusPc?: number;
423
- borderBottomRightRadiusPt?: number;
424
- borderBottomRightRadiusPx?: number;
425
- borderBottomRightRadiusRem?: number;
426
- borderBottomRightRadiusVh?: number;
427
- borderBottomRightRadiusVw?: number;
428
- borderBottomRightRadiusVMax?: number;
429
- borderBottomRightRadiusVMin?: number;
430
-
431
- borderBottomWidth?: NumericLength;
432
- borderBottomWidthCm?: number;
433
- borderBottomWidthCh?: number;
434
- borderBottomWidthEm?: number;
435
- borderBottomWidthEx?: number;
436
- borderBottomWidthIn?: number;
437
- borderBottomWidthMm?: number;
438
- borderBottomWidthP?: number;
439
- borderBottomWidthPc?: number;
440
- borderBottomWidthPt?: number;
441
- borderBottomWidthPx?: number;
442
- borderBottomWidthRem?: number;
443
- borderBottomWidthVh?: number;
444
- borderBottomWidthVw?: number;
445
- borderBottomWidthVMax?: number;
446
- borderBottomWidthVMin?: number;
447
-
448
- borderImageWidth?: NumericLength;
449
- borderImageWidthCm?: number;
450
- borderImageWidthCh?: number;
451
- borderImageWidthEm?: number;
452
- borderImageWidthEx?: number;
453
- borderImageWidthIn?: number;
454
- borderImageWidthMm?: number;
455
- borderImageWidthP?: number;
456
- borderImageWidthPc?: number;
457
- borderImageWidthPt?: number;
458
- borderImageWidthPx?: number;
459
- borderImageWidthRem?: number;
460
- borderImageWidthVh?: number;
461
- borderImageWidthVw?: number;
462
- borderImageWidthVMax?: number;
463
- borderImageWidthVMin?: number;
464
-
465
- borderLeftWidth?: NumericLength;
466
- borderLeftWidthCm?: number;
467
- borderLeftWidthCh?: number;
468
- borderLeftWidthEm?: number;
469
- borderLeftWidthEx?: number;
470
- borderLeftWidthIn?: number;
471
- borderLeftWidthMm?: number;
472
- borderLeftWidthP?: number;
473
- borderLeftWidthPc?: number;
474
- borderLeftWidthPt?: number;
475
- borderLeftWidthPx?: number;
476
- borderLeftWidthRem?: number;
477
- borderLeftWidthVh?: number;
478
- borderLeftWidthVw?: number;
479
- borderLeftWidthVMax?: number;
480
- borderLeftWidthVMin?: number;
481
-
482
- borderRadius?: NumericLength;
483
- borderRadiusCm?: number;
484
- borderRadiusCh?: number;
485
- borderRadiusEm?: number;
486
- borderRadiusEx?: number;
487
- borderRadiusIn?: number;
488
- borderRadiusMm?: number;
489
- borderRadiusP?: number;
490
- borderRadiusPc?: number;
491
- borderRadiusPt?: number;
492
- borderRadiusPx?: number;
493
- borderRadiusRem?: number;
494
- borderRadiusVh?: number;
495
- borderRadiusVw?: number;
496
- borderRadiusVMax?: number;
497
- borderRadiusVMin?: number;
498
-
499
- borderRightWidth?: NumericLength;
500
- borderRightWidthCm?: number;
501
- borderRightWidthCh?: number;
502
- borderRightWidthEm?: number;
503
- borderRightWidthEx?: number;
504
- borderRightWidthIn?: number;
505
- borderRightWidthMm?: number;
506
- borderRightWidthP?: number;
507
- borderRightWidthPc?: number;
508
- borderRightWidthPt?: number;
509
- borderRightWidthPx?: number;
510
- borderRightWidthRem?: number;
511
- borderRightWidthVh?: number;
512
- borderRightWidthVw?: number;
513
- borderRightWidthVMax?: number;
514
- borderRightWidthVMin?: number;
515
-
516
- borderTopLeftRadius?: NumericLength;
517
- borderTopLeftRadiusCm?: number;
518
- borderTopLeftRadiusCh?: number;
519
- borderTopLeftRadiusEm?: number;
520
- borderTopLeftRadiusEx?: number;
521
- borderTopLeftRadiusIn?: number;
522
- borderTopLeftRadiusMm?: number;
523
- borderTopLeftRadiusP?: number;
524
- borderTopLeftRadiusPc?: number;
525
- borderTopLeftRadiusPt?: number;
526
- borderTopLeftRadiusPx?: number;
527
- borderTopLeftRadiusRem?: number;
528
- borderTopLeftRadiusVh?: number;
529
- borderTopLeftRadiusVw?: number;
530
- borderTopLeftRadiusVMax?: number;
531
- borderTopLeftRadiusVMin?: number;
532
-
533
- borderTopRightRadius?: NumericLength;
534
- borderTopRightRadiusCm?: number;
535
- borderTopRightRadiusCh?: number;
536
- borderTopRightRadiusEm?: number;
537
- borderTopRightRadiusEx?: number;
538
- borderTopRightRadiusIn?: number;
539
- borderTopRightRadiusMm?: number;
540
- borderTopRightRadiusP?: number;
541
- borderTopRightRadiusPc?: number;
542
- borderTopRightRadiusPt?: number;
543
- borderTopRightRadiusPx?: number;
544
- borderTopRightRadiusRem?: number;
545
- borderTopRightRadiusVh?: number;
546
- borderTopRightRadiusVw?: number;
547
- borderTopRightRadiusVMax?: number;
548
- borderTopRightRadiusVMin?: number;
549
-
550
- borderTopWidth?: NumericLength;
551
- borderTopWidthCm?: number;
552
- borderTopWidthCh?: number;
553
- borderTopWidthEm?: number;
554
- borderTopWidthEx?: number;
555
- borderTopWidthIn?: number;
556
- borderTopWidthMm?: number;
557
- borderTopWidthP?: number;
558
- borderTopWidthPc?: number;
559
- borderTopWidthPt?: number;
560
- borderTopWidthPx?: number;
561
- borderTopWidthRem?: number;
562
- borderTopWidthVh?: number;
563
- borderTopWidthVw?: number;
564
- borderTopWidthVMax?: number;
565
- borderTopWidthVMin?: number;
566
-
567
- borderWidth?: NumericLength;
568
- borderWidthCm?: number;
569
- borderWidthCh?: number;
570
- borderWidthEm?: number;
571
- borderWidthEx?: number;
572
- borderWidthIn?: number;
573
- borderWidthMm?: number;
574
- borderWidthP?: number;
575
- borderWidthPc?: number;
576
- borderWidthPt?: number;
577
- borderWidthPx?: number;
578
- borderWidthRem?: number;
579
- borderWidthVh?: number;
580
- borderWidthVw?: number;
581
- borderWidthVMax?: number;
582
- borderWidthVMin?: number;
583
-
584
- bottom?: NumericLengthOrAuto;
585
- bottomCm?: number;
586
- bottomCh?: number;
587
- bottomEm?: number;
588
- bottomEx?: number;
589
- bottomIn?: number;
590
- bottomMm?: number;
591
- bottomP?: number;
592
- bottomPc?: number;
593
- bottomPt?: number;
594
- bottomPx?: number;
595
- bottomRem?: number;
596
- bottomVh?: number;
597
- bottomVw?: number;
598
- bottomVMax?: number;
599
- bottomVMin?: number;
600
-
601
- gap?: NumericLength;
602
- gapCm?: number;
603
- gapCh?: number;
604
- gapEm?: number;
605
- gapEx?: number;
606
- gapIn?: number;
607
- gapMm?: number;
608
- gapP?: number;
609
- gapPc?: number;
610
- gapPt?: number;
611
- gapPx?: number;
612
- gapRem?: number;
613
- gapVh?: number;
614
- gapVw?: number;
615
- gapVMax?: number;
616
- gapVMin?: number;
617
-
618
- height?: NumericLengthOrAuto;
619
- heightCm?: number;
620
- heightCh?: number;
621
- heightEm?: number;
622
- heightEx?: number;
623
- heightIn?: number;
624
- heightMm?: number;
625
- heightP?: number;
626
- heightPc?: number;
627
- heightPt?: number;
628
- heightPx?: number;
629
- heightRem?: number;
630
- heightVh?: number;
631
- heightVw?: number;
632
- heightVMax?: number;
633
- heightVMin?: number;
634
-
635
- left?: NumericLengthOrAuto;
636
- leftCm?: number;
637
- leftCh?: number;
638
- leftEm?: number;
639
- leftEx?: number;
640
- leftIn?: number;
641
- leftMm?: number;
642
- leftP?: number;
643
- leftPc?: number;
644
- leftPt?: number;
645
- leftPx?: number;
646
- leftRem?: number;
647
- leftVh?: number;
648
- leftVw?: number;
649
- leftVMax?: number;
650
- leftVMin?: number;
651
-
652
- margin?: NumericLengthOrAuto;
653
- marginCm?: number;
654
- marginCh?: number;
655
- marginEm?: number;
656
- marginEx?: number;
657
- marginIn?: number;
658
- marginMm?: number;
659
- marginP?: number;
660
- marginPc?: number;
661
- marginPt?: number;
662
- marginPx?: number;
663
- marginRem?: number;
664
- marginVh?: number;
665
- marginVw?: number;
666
- marginVMax?: number;
667
- marginVMin?: number;
668
-
669
- marginBottom?: NumericLengthOrAuto;
670
- marginBottomCm?: number;
671
- marginBottomCh?: number;
672
- marginBottomEm?: number;
673
- marginBottomEx?: number;
674
- marginBottomIn?: number;
675
- marginBottomMm?: number;
676
- marginBottomP?: number;
677
- marginBottomPc?: number;
678
- marginBottomPt?: number;
679
- marginBottomPx?: number;
680
- marginBottomRem?: number;
681
- marginBottomVh?: number;
682
- marginBottomVw?: number;
683
- marginBottomVMax?: number;
684
- marginBottomVMin?: number;
685
-
686
- marginLeft?: NumericLengthOrAuto;
687
- marginLeftCm?: number;
688
- marginLeftCh?: number;
689
- marginLeftEm?: number;
690
- marginLeftEx?: number;
691
- marginLeftIn?: number;
692
- marginLeftMm?: number;
693
- marginLeftP?: number;
694
- marginLeftPc?: number;
695
- marginLeftPt?: number;
696
- marginLeftPx?: number;
697
- marginLeftRem?: number;
698
- marginLeftVh?: number;
699
- marginLeftVw?: number;
700
- marginLeftVMax?: number;
701
- marginLeftVMin?: number;
702
-
703
- marginRight?: NumericLengthOrAuto;
704
- marginRightCm?: number;
705
- marginRightCh?: number;
706
- marginRightEm?: number;
707
- marginRightEx?: number;
708
- marginRightIn?: number;
709
- marginRightMm?: number;
710
- marginRightP?: number;
711
- marginRightPc?: number;
712
- marginRightPt?: number;
713
- marginRightPx?: number;
714
- marginRightRem?: number;
715
- marginRightVh?: number;
716
- marginRightVw?: number;
717
- marginRightVMax?: number;
718
- marginRightVMin?: number;
719
-
720
- marginTop?: NumericLengthOrAuto;
721
- marginTopCm?: number;
722
- marginTopCh?: number;
723
- marginTopEm?: number;
724
- marginTopEx?: number;
725
- marginTopIn?: number;
726
- marginTopMm?: number;
727
- marginTopP?: number;
728
- marginTopPc?: number;
729
- marginTopPt?: number;
730
- marginTopPx?: number;
731
- marginTopRem?: number;
732
- marginTopVh?: number;
733
- marginTopVw?: number;
734
- marginTopVMax?: number;
735
- marginTopVMin?: number;
736
-
737
- maxHeight?: NumericLengthOrAuto;
738
- maxHeightCm?: number;
739
- maxHeightCh?: number;
740
- maxHeightEm?: number;
741
- maxHeightEx?: number;
742
- maxHeightIn?: number;
743
- maxHeightMm?: number;
744
- maxHeightP?: number;
745
- maxHeightPc?: number;
746
- maxHeightPt?: number;
747
- maxHeightPx?: number;
748
- maxHeightRem?: number;
749
- maxHeightVh?: number;
750
- maxHeightVw?: number;
751
- maxHeightVMax?: number;
752
- maxHeightVMin?: number;
753
-
754
- maxWidth?: NumericLengthOrAuto;
755
- maxWidthCm?: number;
756
- maxWidthCh?: number;
757
- maxWidthEm?: number;
758
- maxWidthEx?: number;
759
- maxWidthIn?: number;
760
- maxWidthMm?: number;
761
- maxWidthP?: number;
762
- maxWidthPc?: number;
763
- maxWidthPt?: number;
764
- maxWidthPx?: number;
765
- maxWidthRem?: number;
766
- maxWidthVh?: number;
767
- maxWidthVw?: number;
768
- maxWidthVMax?: number;
769
- maxWidthVMin?: number;
770
-
771
- minHeight?: NumericLengthOrAuto;
772
- minHeightCm?: number;
773
- minHeightCh?: number;
774
- minHeightEm?: number;
775
- minHeightEx?: number;
776
- minHeightIn?: number;
777
- minHeightMm?: number;
778
- minHeightP?: number;
779
- minHeightPc?: number;
780
- minHeightPt?: number;
781
- minHeightPx?: number;
782
- minHeightRem?: number;
783
- minHeightVh?: number;
784
- minHeightVw?: number;
785
- minHeightVMax?: number;
786
- minHeightVMin?: number;
787
-
788
- minWidth?: NumericLengthOrAuto;
789
- minWidthCm?: number;
790
- minWidthCh?: number;
791
- minWidthEm?: number;
792
- minWidthEx?: number;
793
- minWidthIn?: number;
794
- minWidthMm?: number;
795
- minWidthP?: number;
796
- minWidthPc?: number;
797
- minWidthPt?: number;
798
- minWidthPx?: number;
799
- minWidthRem?: number;
800
- minWidthVh?: number;
801
- minWidthVw?: number;
802
- minWidthVMax?: number;
803
- minWidthVMin?: number;
804
-
805
- outlineOffset?: NumericLength;
806
- outlineOffsetCm?: number;
807
- outlineOffsetCh?: number;
808
- outlineOffsetEm?: number;
809
- outlineOffsetEx?: number;
810
- outlineOffsetIn?: number;
811
- outlineOffsetMm?: number;
812
- outlineOffsetP?: number;
813
- outlineOffsetPc?: number;
814
- outlineOffsetPt?: number;
815
- outlineOffsetPx?: number;
816
- outlineOffsetRem?: number;
817
- outlineOffsetVh?: number;
818
- outlineOffsetVw?: number;
819
- outlineOffsetVMax?: number;
820
- outlineOffsetVMin?: number;
821
-
822
- padding?: NumericLengthOrAuto;
823
- paddingCm?: number;
824
- paddingCh?: number;
825
- paddingEm?: number;
826
- paddingEx?: number;
827
- paddingIn?: number;
828
- paddingMm?: number;
829
- paddingP?: number;
830
- paddingPc?: number;
831
- paddingPt?: number;
832
- paddingPx?: number;
833
- paddingRem?: number;
834
- paddingVh?: number;
835
- paddingVw?: number;
836
- paddingVMax?: number;
837
- paddingVMin?: number;
838
-
839
- paddingBottom?: NumericLengthOrAuto;
840
- paddingBottomCm?: number;
841
- paddingBottomCh?: number;
842
- paddingBottomEm?: number;
843
- paddingBottomEx?: number;
844
- paddingBottomIn?: number;
845
- paddingBottomMm?: number;
846
- paddingBottomP?: number;
847
- paddingBottomPc?: number;
848
- paddingBottomPt?: number;
849
- paddingBottomPx?: number;
850
- paddingBottomRem?: number;
851
- paddingBottomVh?: number;
852
- paddingBottomVw?: number;
853
- paddingBottomVMax?: number;
854
- paddingBottomVMin?: number;
855
-
856
- paddingLeft?: NumericLengthOrAuto;
857
- paddingLeftCm?: number;
858
- paddingLeftCh?: number;
859
- paddingLeftEm?: number;
860
- paddingLeftEx?: number;
861
- paddingLeftIn?: number;
862
- paddingLeftMm?: number;
863
- paddingLeftP?: number;
864
- paddingLeftPc?: number;
865
- paddingLeftPt?: number;
866
- paddingLeftPx?: number;
867
- paddingLeftRem?: number;
868
- paddingLeftVh?: number;
869
- paddingLeftVw?: number;
870
- paddingLeftVMax?: number;
871
- paddingLeftVMin?: number;
872
-
873
- paddingRight?: NumericLengthOrAuto;
874
- paddingRightCm?: number;
875
- paddingRightCh?: number;
876
- paddingRightEm?: number;
877
- paddingRightEx?: number;
878
- paddingRightIn?: number;
879
- paddingRightMm?: number;
880
- paddingRightP?: number;
881
- paddingRightPc?: number;
882
- paddingRightPt?: number;
883
- paddingRightPx?: number;
884
- paddingRightRem?: number;
885
- paddingRightVh?: number;
886
- paddingRightVw?: number;
887
- paddingRightVMax?: number;
888
- paddingRightVMin?: number;
889
-
890
- paddingTop?: NumericLengthOrAuto;
891
- paddingTopCm?: number;
892
- paddingTopCh?: number;
893
- paddingTopEm?: number;
894
- paddingTopEx?: number;
895
- paddingTopIn?: number;
896
- paddingTopMm?: number;
897
- paddingTopP?: number;
898
- paddingTopPc?: number;
899
- paddingTopPt?: number;
900
- paddingTopPx?: number;
901
- paddingTopRem?: number;
902
- paddingTopVh?: number;
903
- paddingTopVw?: number;
904
- paddingTopVMax?: number;
905
- paddingTopVMin?: number;
906
-
907
- right?: NumericLengthOrAuto;
908
- rightCm?: number;
909
- rightCh?: number;
910
- rightEm?: number;
911
- rightEx?: number;
912
- rightIn?: number;
913
- rightMm?: number;
914
- rightP?: number;
915
- rightPc?: number;
916
- rightPt?: number;
917
- rightPx?: number;
918
- rightRem?: number;
919
- rightVh?: number;
920
- rightVw?: number;
921
- rightVMax?: number;
922
- rightVMin?: number;
923
-
924
- textIndent?: NumericLengthOrAuto;
925
- textIndentCm?: number;
926
- textIndentCh?: number;
927
- textIndentEm?: number;
928
- textIndentEx?: number;
929
- textIndentIn?: number;
930
- textIndentMm?: number;
931
- textIndentP?: number;
932
- textIndentPc?: number;
933
- textIndentPt?: number;
934
- textIndentPx?: number;
935
- textIndentRem?: number;
936
- textIndentVh?: number;
937
- textIndentVw?: number;
938
- textIndentVMax?: number;
939
- textIndentVMin?: number;
940
-
941
- top?: NumericLengthOrAuto;
942
- topCm?: number;
943
- topCh?: number;
944
- topEm?: number;
945
- topEx?: number;
946
- topIn?: number;
947
- topMm?: number;
948
- topP?: number;
949
- topPc?: number;
950
- topPt?: number;
951
- topPx?: number;
952
- topRem?: number;
953
- topVh?: number;
954
- topVw?: number;
955
- topVMax?: number;
956
- topVMin?: number;
957
-
958
- width?: NumericLengthOrAuto;
959
- widthCm?: number;
960
- widthCh?: number;
961
- widthEm?: number;
962
- widthEx?: number;
963
- widthIn?: number;
964
- widthMm?: number;
965
- widthP?: number;
966
- widthPc?: number;
967
- widthPt?: number;
968
- widthPx?: number;
969
- widthRem?: number;
970
- widthVh?: number;
971
- widthVw?: number;
972
- widthVMax?: number;
973
- widthVMin?: number;
974
-
975
- lineHeight?: NumericLength;
976
- lineHeightCm?: number;
977
- lineHeightCh?: number;
978
- lineHeightEm?: number;
979
- lineHeightEx?: number;
980
- lineHeightIn?: number;
981
- lineHeightMm?: number;
982
- lineHeightP?: number;
983
- lineHeightPc?: number;
984
- lineHeightPt?: number;
985
- lineHeightPx?: number;
986
- lineHeightRem?: number;
987
- lineHeightVh?: number;
988
- lineHeightVw?: number;
989
- lineHeightVMax?: number;
990
- lineHeightVMin?: number;
991
-
992
- fontSize?: NumericLength;
993
- fontSizeCm?: number;
994
- fontSizeCh?: number;
995
- fontSizeEm?: number;
996
- fontSizeEx?: number;
997
- fontSizeIn?: number;
998
- fontSizeMm?: number;
999
- fontSizeP?: number;
1000
- fontSizePc?: number;
1001
- fontSizePt?: number;
1002
- fontSizePx?: number;
1003
- fontSizeRem?: number;
1004
- fontSizeVh?: number;
1005
- fontSizeVw?: number;
1006
- fontSizeVMax?: number;
1007
- fontSizeVMin?: number;
1008
-
1009
- flexBasis?: NumericLengthOrAuto;
1010
- flexBasisCm?: number;
1011
- flexBasisCh?: number;
1012
- flexBasisEm?: number;
1013
- flexBasisEx?: number;
1014
- flexBasisIn?: number;
1015
- flexBasisMm?: number;
1016
- flexBasisP?: number;
1017
- flexBasisPc?: number;
1018
- flexBasisPt?: number;
1019
- flexBasisPx?: number;
1020
- flexBasisRem?: number;
1021
- flexBasisVh?: number;
1022
- flexBasisVw?: number;
1023
- flexBasisVMax?: number;
1024
- flexBasisVMin?: number;
1025
-
1026
- //url:
1027
- backgroundImage?: BackgroundImageFormat;
1028
- borderImage?: BackgroundImageFormat;
1029
- listStyleImage?: BackgroundImageFormat;
1030
- content?: BasicCommonValues|Url;
1031
-
1032
- //complex:
1033
- transform?: BasicCommonValues|ITransformationContext;
1034
- filter?: IFilterContext;
1035
- backdropFilter?: IFilterContext;
1036
-
1037
- //misc numeric:
1038
- opacity?: number|string;
1039
-
1040
- //misc:
1041
- all?: BasicCommonValues;
1042
- appearance?: AppearanceValues;
1043
- aspectRatio?: string; // TODO?: better typing on this. Low priority.
1044
-
1045
- background?: BasicCommonValues|string;
1046
- backgroundAttachment?: BackgroundAttachmentValues;
1047
- backgroundBlendMode?: BasicCommonValues|string;
1048
- backgroundPosition?: BackgroundPositionShorthand2D;
1049
- backgroundRepeat?: BackgroundRepeatValues2d;
1050
- backgroundClip?: BasicCommonValues|string;
1051
- backgroundOrigin?: BackgroundOriginValues;
1052
-
1053
- borderImageOutset?: BasicCommonValues|string;
1054
- borderImageRepeat?: BackgroundRepeatValues2d;
1055
- borderImageSlice?: BasicCommonValues|string;
1056
- borderImageSource?: BasicCommonValues|string;
1057
-
1058
- border?: BorderShorthand;
1059
- borderBottom?: BorderShorthand;
1060
- borderLeft?: BorderShorthand;
1061
- borderRight?: BorderShorthand;
1062
- borderTop?: BorderShorthand;
1063
-
1064
- borderBottomStyle?: BorderStyles;
1065
- borderLeftStyle?: BorderStyles;
1066
- borderRightStyle?: BorderStyles;
1067
- borderStyle?: BorderStyles;
1068
- borderTopStyle?: BorderStyles;
1069
-
1070
- boxDecorationBreak?: BasicCommonValues|string;
1071
- boxShadow?: BasicCommonValues|string;
1072
- clear?: BasicCommonValues|string;
1073
- clip?: BasicCommonValues|string;
1074
- display?: DisplayValues;
1075
- float?: BasicCommonValues|string;
1076
- overflow?: BasicCommonValues|string;
1077
- box?: BasicCommonValues|string;
1078
- overflowX?: BasicCommonValues|string;
1079
- overflowY?: BasicCommonValues|string;
1080
- position?: PositionNames;
1081
- visibility?: BasicCommonValues|string;
1082
- verticalAlign?: BasicCommonValues|string;
1083
- zIndex?: string|number;
1084
- alignContent?: BasicCommonValues|string;
1085
- alignItems?: BasicCommonValues|string;
1086
- alignSelf?: BasicCommonValues|string;
1087
- flex?: FlexShorthand;
1088
- // flexBasis?: FlexBasisNames;
1089
- flexDirection?: FlexDirectionNames;
1090
- flexFlow?: FlexFlowShorthand;
1091
- flexGrow?: BasicCommonValues|number;
1092
- flexShrink?: BasicCommonValues|number;
1093
- flexWrap?: FlexWrapNames;
1094
- grid?: BasicCommonValues|string;
1095
- gridArea?: BasicCommonValues|string;
1096
- gridAutoColumns?: BasicCommonValues|string;
1097
- gridautoRows?: BasicCommonValues|string;
1098
- gridColumn?: BasicCommonValues|string;
1099
- gridColumnEnd?: BasicCommonValues|string;
1100
- gridColumnGap?: BasicCommonValues|string;
1101
- gridColumnStart?: BasicCommonValues|string;
1102
- gridGap?: BasicCommonValues|string;
1103
- gridRow?: BasicCommonValues|string;
1104
- gridRowEnd?: BasicCommonValues|string;
1105
- gridRowGap?: BasicCommonValues|string;
1106
- gridRowStart?: BasicCommonValues|string;
1107
- gridTemplate?: BasicCommonValues|string;
1108
- gridTemplateAreas?: BasicCommonValues|string;
1109
- gridTemplateColumns?: BasicCommonValues|string;
1110
- gridTemplateRows?: BasicCommonValues|string;
1111
- imageOrientation?: BasicCommonValues|string;
1112
- justifyContent?: BasicCommonValues|string;
1113
- order?: BasicCommonValues|number;
1114
- hangingPunctuation?: BasicCommonValues|string;
1115
- hyphens?: BasicCommonValues|string;
1116
- letterSpacing?: BasicCommonValues|string;
1117
- lineBreak?: BasicCommonValues|string;
1118
- overflowWrap?: BasicCommonValues|string;
1119
- tabSize?: BasicCommonValues|string;
1120
- textAlign?: BasicCommonValues|string;
1121
- textAlignLast?: BasicCommonValues|string;
1122
- textCombineUpright?: BasicCommonValues|string;
1123
- textJustify?: BasicCommonValues|string;
1124
- textTransform?: BasicCommonValues|string;
1125
- whiteSpace?: BasicCommonValues|string;
1126
- wordBreak?: BasicCommonValues|string;
1127
- wordSpacing?: BasicCommonValues|string;
1128
- wordWrap?: BasicCommonValues|string;
1129
- textDecoration?: BasicCommonValues|string;
1130
- textDecorationLine?: BasicCommonValues|string;
1131
- textDecorationStyle?: BasicCommonValues|string;
1132
- textShadow?: BasicCommonValues|string;
1133
- textUnderlinePosition?: BasicCommonValues|string;
1134
- font?: BasicCommonValues|string;
1135
- fontFamily?: BasicCommonValues|string;
1136
- fontFeatureSettings?: BasicCommonValues|string;
1137
- fontKerning?: BasicCommonValues|string;
1138
- fontLanguageOverride?: BasicCommonValues|string;
1139
- fontSizeAdjust?: BasicCommonValues|string;
1140
- fontStretch?: BasicCommonValues|string;
1141
- fontStyle?: FontStyleValues;
1142
- fontSynthesis?: BasicCommonValues|string;
1143
- fontVariant?: FontVariantValues;
1144
- fontVariantAlternates?: BasicCommonValues|string;
1145
- fontVariantCaps?: FontVariantCapsValues;
1146
- fontVariantEastAsian?: BasicCommonValues|string;
1147
- fontVariantLigatures?: BasicCommonValues|string;
1148
- fontVariantNumeric?: BasicCommonValues|string;
1149
- fontVariantPosition?: BasicCommonValues|string;
1150
- fontWeight?: BasicCommonValues|string;
1151
- direction?: DirectionValues;
1152
- textOrientation?: BasicCommonValues|string;
1153
- unicodeBidi?: BasicCommonValues|string;
1154
- userSelect?: BasicCommonValues|string;
1155
- writingMode?: BasicCommonValues|string;
1156
- borderCollapse?: BasicCommonValues|string;
1157
- borderSpacing?: BasicCommonValues|string;
1158
- captionSide?: BasicCommonValues|string;
1159
- emptyCells?: BasicCommonValues|string;
1160
- tableLayout?: BasicCommonValues|string;
1161
- counterIncrement?: BasicCommonValues|string;
1162
- counterReset?: BasicCommonValues|string;
1163
- listStyle?: BasicCommonValues|string;
1164
- listStylePosition?: BasicCommonValues|string;
1165
- listStyleType?: BasicCommonValues|string;
1166
- animation?: BasicCommonValues|string;
1167
- animationDelay?: BasicCommonValues|string;
1168
- animationDirection?: BasicCommonValues|string;
1169
- animationDuration?: BasicCommonValues|string;
1170
- animationFillMode?: BasicCommonValues|string;
1171
- animationIterationCount?: BasicCommonValues|string;
1172
- animationName?: BasicCommonValues|string;
1173
- animationPlayState?: BasicCommonValues|string;
1174
- animationTimingFunction?: BasicCommonValues|string;
1175
- backfaceVisibility?: BackfaceVisibilityValues;
1176
- perspective2d?: BasicCommonValues|string;
1177
- perspectiveOrigin?: BasicCommonValues|string;
1178
- transformOrigin?: BasicCommonValues|string;
1179
- transformStyle?: BasicCommonValues|string;
1180
- transition?: BasicCommonValues|string;
1181
- transitionProperty?: BasicCommonValues|string;
1182
- transitionDuration?: BasicCommonValues|string;
1183
- transitionTimingFunction?: BasicCommonValues|string;
1184
- transitionDelay?: BasicCommonValues|string;
1185
- boxSizing?: BasicCommonValues|string;
1186
- cursor?: BasicCommonValues|string;
1187
- imeMode?: BasicCommonValues|string;
1188
- navDown?: BasicCommonValues|string;
1189
- navIndex?: BasicCommonValues|string;
1190
- navLeft?: BasicCommonValues|string;
1191
- navRight?: BasicCommonValues|string;
1192
- navUp?: BasicCommonValues|string;
1193
- outline?: BorderShorthand;
1194
- //outlineOffset?: BasicCommonValues|string; // Now animated.
1195
- outlineStyle?: BorderStyles;
1196
- outlineWidth?: OutlineWidthValues;
1197
- resize?: BasicCommonValues|string;
1198
- textOverflow?: BasicCommonValues|string;
1199
- breakAfter?: BasicCommonValues|string;
1200
- breakBefore?: BasicCommonValues|string;
1201
- breakInside?: BasicCommonValues|string;
1202
- columnCount?: BasicCommonValues|string;
1203
- columnFill?: BasicCommonValues|string;
1204
- columnGap?: BasicCommonValues|string;
1205
- columnRule?: BasicCommonValues|string;
1206
- columnRuleStyle?: BasicCommonValues|string;
1207
- columnRuleWidth?: BasicCommonValues|string;
1208
- columnSpan?: BasicCommonValues|string;
1209
- columnWidth?: BasicCommonValues|string;
1210
- columns?: BasicCommonValues|string;
1211
- widows?: BasicCommonValues|string;
1212
- orphans?: BasicCommonValues|string;
1213
- pageBreakAfter?: BasicCommonValues|string;
1214
- pageBreakBefore?: BasicCommonValues|string;
1215
- pageBreakInside?: BasicCommonValues|string;
1216
- marks?: BasicCommonValues|string;
1217
- quotes?: BasicCommonValues|string;
1218
- imageRendering?: BasicCommonValues|string;
1219
- imageResolution?: BasicCommonValues|string;
1220
- objectFit?: BasicCommonValues|string;
1221
- objectPosition?: BasicCommonValues|string;
1222
- mask?: BasicCommonValues|string;
1223
- maskType?: BasicCommonValues|string;
1224
- mark?: BasicCommonValues|string;
1225
- markAfter?: BasicCommonValues|string;
1226
- markBefore?: BasicCommonValues|string;
1227
- phonemes?: BasicCommonValues|string;
1228
- rest?: BasicCommonValues|string;
1229
- restAfter?: BasicCommonValues|string;
1230
- restBefore?: BasicCommonValues|string;
1231
- voiceBalance?: BasicCommonValues|string;
1232
- voiceDuration?: BasicCommonValues|string;
1233
- voicePitch?: BasicCommonValues|string;
1234
- voicePitchRange?: BasicCommonValues|string;
1235
- voiceRate?: BasicCommonValues|string;
1236
- voiceStress?: BasicCommonValues|string;
1237
- voiceVolume?: BasicCommonValues|string;
1238
- marqueeDirection?: BasicCommonValues|string;
1239
- marqueePlayCount?: BasicCommonValues|string;
1240
- marqueeSpeed?: BasicCommonValues|string;
1241
- marqueeStyle?: BasicCommonValues|string;
1242
- pointerEvents?: BasicCommonValues|string;
1243
- }
1244
-
1245
- export default interface IDotCss extends IDotcssProp{
1246
- // TODO: ensure each of these has test cases.
1247
- (selector: "@charset", charset: string): void;
1248
- (selector: "@color-profile", name: string, styles: IColorProfileBuilder): void;
1249
- (selector: "@container", condition: string, styles: IDotcssProp): void;
1250
- (selector: "@counter-style", name: string, styles: ICounterStyleBuilder): void;
1251
-
1252
- (selector: Array<HTMLElement>|HTMLElement|string, styles: IDotcssProp): void;
1253
- (styles: IDotcssProp): void;
1254
-
1255
- version: string;
1256
- }
1257
-
1258
- // export interface IDotcssAnimatable<T> extends IDotcssProp{
1259
- // (value: T): IDotcssProp;
1260
-
1261
- // animate(value: number|string, duration: number, style: "ease", complete: Function): IDotcssProp;
1262
- // }
1263
-
1264
- // export interface IDotcssAnimatableColor extends IDotcssProp{
1265
- // (value: Color|Array<number>): IDotcssProp;
1266
- // (r: number, g: number, b: number, a?: number): IDotcssProp;
1267
-
1268
- // animate(value: Color|Array<number>, duration: number, style: "ease", complete: Function): IDotcssProp;
1269
- // }
1270
-
1271
- export interface HideParams{
1272
- duration?: number,
1273
- complete?: Function,
1274
- hideStyle?: "normal"|"fade"|"shrink",
1275
- animationStyle?: "ease",
1276
- }
1277
-
1278
- export interface ShowParams{
1279
- duration?: number,
1280
- display?: DisplayValues, // TODO: potential to expand this.
1281
- complete?: Function,
1282
- opacity?: number,
1283
- width?: number,
1284
- height?: number,
1285
- showStyle?: "normal"|"fade"|"grow",
1286
- animationStyle?: "ease",
1287
- }
1288
-
1289
- // TODO: add tests for these. Especially the 2-parameter ones.
1290
- export type ITransformationContext = {
1291
- // a, b, c, d, tx, ty
1292
- matrix?: [number, number, number, number, number, number];
1293
- // a1, b1, c1, d1, a2, b2, c2, d2, a3, b3, c3, d3, a4, b4, c4, d4
1294
- matrix3d?: [
1295
- number, number, number, number,
1296
- number, number, number, number,
1297
- number, number, number, number,
1298
- number, number, number, number
1299
- ];
1300
-
1301
- translate: NumericLength | [NumericLength, NumericLength]
1302
- translateCm: number | [number, number]
1303
- translateCh: number | [number, number]
1304
- translateEm: number | [number, number]
1305
- translateEx: number | [number, number]
1306
- translateIn: number | [number, number]
1307
- translateMm: number | [number, number]
1308
- translateP: number | [number, number]
1309
- translatePc: number | [number, number]
1310
- translatePt: number | [number, number]
1311
- translatePx: number | [number, number]
1312
- translateRem: number | [number, number]
1313
- translateVh: number | [number, number]
1314
- translateVw: number | [number, number]
1315
- translateVMax: number | [number, number]
1316
- translateVMin: number | [number, number]
1317
- translate3d?: [NumericLength, NumericLength, NumericLength];
1318
- translate3dCm?: [number, number, number];
1319
- translate3dCh?: [number, number, number];
1320
- translate3dEm?: [number, number, number];
1321
- translate3dEx?: [number, number, number];
1322
- translate3dIn?: [number, number, number];
1323
- translate3dMm?: [number, number, number];
1324
- translate3dP?: [number, number, number];
1325
- translate3dPc?: [number, number, number];
1326
- translate3dPt?: [number, number, number];
1327
- translate3dPx?: [number, number, number];
1328
- translate3dRem?: [number, number, number];
1329
- translate3dVh?: [number, number, number];
1330
- translate3dVw?: [number, number, number];
1331
- translate3dVMax?: [number, number, number];
1332
- translate3dVMin?: [number, number, number];
1333
- translateX?: NumericLength;
1334
- translateXCm?: number;
1335
- translateXCh?: number;
1336
- translateXEm?: number;
1337
- translateXEx?: number;
1338
- translateXIn?: number;
1339
- translateXMm?: number;
1340
- translateXP?: number;
1341
- translateXPc?: number;
1342
- translateXPt?: number;
1343
- translateXPx?: number;
1344
- translateXRem?: number;
1345
- translateXVh?: number;
1346
- translateXVw?: number;
1347
- translateXVMax?: number;
1348
- translateXVMin?: number;
1349
- translateY?: NumericLength;
1350
- translateYCm?: number;
1351
- translateYCh?: number;
1352
- translateYEm?: number;
1353
- translateYEx?: number;
1354
- translateYIn?: number;
1355
- translateYMm?: number;
1356
- translateYP?: number;
1357
- translateYPc?: number;
1358
- translateYPt?: number;
1359
- translateYPx?: number;
1360
- translateYRem?: number;
1361
- translateYVh?: number;
1362
- translateYVw?: number;
1363
- translateYVMax?: number;
1364
- translateYVMin?: number;
1365
- translateZ?: NumericLength;
1366
- translateZCm?: number;
1367
- translateZCh?: number;
1368
- translateZEm?: number;
1369
- translateZEx?: number;
1370
- translateZIn?: number;
1371
- translateZMm?: number;
1372
- translateZP?: number;
1373
- translateZPc?: number;
1374
- translateZPt?: number;
1375
- translateZPx?: number;
1376
- translateZRem?: number;
1377
- translateZVh?: number;
1378
- translateZVw?: number;
1379
- translateZVMax?: number;
1380
- translateZVMin?: number;
1381
-
1382
- scale?: number | [number, number];
1383
- scale3d?: [number, number, number];
1384
- scaleX?: number;
1385
- scaleY?: number;
1386
- scaleZ?: number;
1387
-
1388
- rotate?: NumericAngle;
1389
- rotateDeg?: number;
1390
- rotateTurn?: number;
1391
- rotateRad?: number;
1392
- rotateGrad?: number;
1393
- rotate3d?: [number, number, number, NumericAngle];
1394
- rotate3dDeg?: [number, number, number, number];
1395
- rotate3dTurn?: [number, number, number, number];
1396
- rotate3dRad?: [number, number, number, number];
1397
- rotate3dGrad?: [number, number, number, number];
1398
- rotateX?: NumericAngle;
1399
- rotateXDeg?: number;
1400
- rotateXTurn?: number;
1401
- rotateXRad?: number;
1402
- rotateXGrad?: number;
1403
- rotateY?: NumericAngle;
1404
- rotateYDeg?: number;
1405
- rotateYTurn?: number;
1406
- rotateYRad?: number;
1407
- rotateYGrad?: number;
1408
- rotateZ?: NumericAngle;
1409
- rotateZDeg?: number;
1410
- rotateZTurn?: number;
1411
- rotateZRad?: number;
1412
- rotateZGrad?: number;
1413
-
1414
- skew?: NumericAngle | [NumericAngle, NumericAngle];
1415
- skewDeg?: number | [number, number];
1416
- skewTurn?: number | [number, number];
1417
- skewRad?: number | [number, number];
1418
- skewGrad?: number | [number, number];
1419
- skewX?: NumericAngle;
1420
- skewXDeg?: number;
1421
- skewXTurn?: number;
1422
- skewXRad?: number;
1423
- skewXGrad?: number;
1424
- skewY?: NumericAngle;
1425
- skewYDeg?: number;
1426
- skewYTurn?: number;
1427
- skewYRad?: number;
1428
- skewYGrad?: number;
1429
-
1430
- perspective?: NumericLength;
1431
- perspectiveCm?: number;
1432
- perspectiveCh?: number;
1433
- perspectiveEm?: number;
1434
- perspectiveEx?: number;
1435
- perspectiveIn?: number;
1436
- perspectiveMm?: number;
1437
- perspectiveP?: number;
1438
- perspectivePc?: number;
1439
- perspectivePt?: number;
1440
- perspectivePx?: number;
1441
- perspectiveRem?: number;
1442
- perspectiveVh?: number;
1443
- perspectiveVw?: number;
1444
- perspectiveVMax?: number;
1445
- perspectiveVMin?: number;
1446
- }
1447
-
1448
- type IFilterContext = {
1449
- // url(commonfilters.svg#filter); // Don't know how this works yet.
1450
- blur?: NumericLength;
1451
- brightness?: Percentage;
1452
- contrast?: Percentage;
1453
- dropShadow?: {x?: NumericLength, y?: NumericLength, blur?: NumericLength, color?: Color};
1454
- grayscale?: Percentage;
1455
- hueRotate?: AngleUnits;
1456
- invert?: Percentage;
1457
- opacity?: Percentage;
1458
- sepia?: Percentage;
1459
- saturate?: Percentage;
1460
- // url(filters.svg#filter) blur(4px) saturate(150%); // example.
1461
- }
1462
-
1463
- // AT RULE BUILDERS
1464
-
1465
- interface IColorProfileBuilder{
1466
- src?: Url;
1467
- renderingIntent?: "relative-colorimetric"|"absolute-colorimetric"|"perceptual"|"saturation";
1468
- }
1469
-
1470
- type SystemValue = "cyclic"|"numeric"|"alphabetic"|"symbolic"|"additive"|`fixed ${number}`|`extends ${string}`;
1471
- interface ICounterStyleBuilder{
1472
-
1473
- // TODO: need a testcase on this.
1474
- system?: SystemValue|["fixed", number]|["extends", string];
1475
-
1476
- symbols?: string;
1477
- additiveSymbols?: string;
1478
- negative?: string;
1479
- prefix?: string;
1480
- suffix?: string;
1481
- range?: string;
1482
- pad?: string;
1483
- speakAs?: string;
1484
- }