@implydata/stitches-react
Version:
The modern CSS-in-JS library
1,240 lines (1,238 loc) • 346 kB
TypeScript
/** @license MIT License
* Copyright (c) 2017-present, Fredrik Nicol
* Copyright (c) 2021-present, Jonathan Neal
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
export {}
export interface StandardLonghandProperties {
/**
* The CSS **`align-content`** property sets the distribution of space between and around content items along a flexbox's cross-axis or a grid's block axis.
*
* **Syntax**: `normal | <baseline-position> | <content-distribution> | <overflow-position>? <content-position>`
*
* **Initial value**: `normal`
*
*/
alignContent?: Property.AlignContent
/**
* The CSS **`align-items`** property sets the `align-self` value on all direct children as a group. In Flexbox, it controls the alignment of items on the Cross Axis. In Grid Layout, it controls the alignment of items on the Block Axis within their grid area.
*
* **Syntax**: `normal | stretch | <baseline-position> | [ <overflow-position>? <self-position> ]`
*
* **Initial value**: `normal`
*
*/
alignItems?: Property.AlignItems
/**
* The **`align-self`** CSS property overrides a grid or flex item's `align-items` value. In Grid, it aligns the item inside the grid area. In Flexbox, it aligns the item on the cross axis.
*
* **Syntax**: `auto | normal | stretch | <baseline-position> | <overflow-position>? <self-position>`
*
* **Initial value**: `auto`
*
*/
alignSelf?: Property.AlignSelf
/**
* The **`align-tracks`** CSS property sets the alignment in the masonry axis for grid containers that have masonry in their block axis.
*
* **Syntax**: `[ normal | <baseline-position> | <content-distribution> | <overflow-position>? <content-position> ]#`
*
* **Initial value**: `normal`
*
*/
alignTracks?: Property.AlignTracks
/**
* The **`animation-delay`** CSS property specifies the amount of time to wait from applying the animation to an element before beginning to perform the animation. The animation can start later, immediately from its beginning, or immediately and partway through the animation.
*
* **Syntax**: `<time>#`
*
* **Initial value**: `0s`
*
*/
animationDelay?: Property.AnimationDelay
/**
* The **`animation-direction`** CSS property sets whether an animation should play forward, backward, or alternate back and forth between playing the sequence forward and backward.
*
* **Syntax**: `<single-animation-direction>#`
*
* **Initial value**: `normal`
*
*/
animationDirection?: Property.AnimationDirection
/**
* The **`animation-duration`** CSS property sets the length of time that an animation takes to complete one cycle.
*
* **Syntax**: `<time>#`
*
* **Initial value**: `0s`
*
*/
animationDuration?: Property.AnimationDuration
/**
* The **`animation-fill-mode`** CSS property sets how a CSS animation applies styles to its target before and after its execution.
*
* **Syntax**: `<single-animation-fill-mode>#`
*
* **Initial value**: `none`
*
*/
animationFillMode?: Property.AnimationFillMode
/**
* The **`animation-iteration-count`** CSS property sets the number of times an animation sequence should be played before stopping.
*
* **Syntax**: `<single-animation-iteration-count>#`
*
* **Initial value**: `1`
*
*/
animationIterationCount?: Property.AnimationIterationCount
/**
* The **`animation-name`** CSS property specifies the names of one or more `@keyframes` at-rules describing the animation or animations to apply to the element.
*
* **Syntax**: `[ none | <keyframes-name> ]#`
*
* **Initial value**: `none`
*
*/
animationName?: Property.AnimationName
/**
* The **`animation-play-state`** CSS property sets whether an animation is running or paused.
*
* **Syntax**: `<single-animation-play-state>#`
*
* **Initial value**: `running`
*
*/
animationPlayState?: Property.AnimationPlayState
/**
* The **`animation-timing-function`** CSS property sets how an animation progresses through the duration of each cycle.
*
* **Syntax**: `<easing-function>#`
*
* **Initial value**: `ease`
*
*/
animationTimingFunction?: Property.AnimationTimingFunction
/**
* The `**appearance**` CSS property is used to display an element using platform-native styling, based on the operating system's theme. The **`-moz-appearance`** and **`-webkit-appearance`** properties are non-standard versions of this property, used (respectively) by Gecko (Firefox) and by WebKit-based (e.g., Safari) and Blink-based (e.g., Chrome, Opera) browsers to achieve the same thing. Note that Firefox and Edge also support **`-webkit-appearance`**, for compatibility reasons.
*
* **Syntax**: `none | auto | textfield | menulist-button | <compat-auto>`
*
* **Initial value**: `auto`
*
*/
appearance?: Property.Appearance
/**
* The **`aspect-ratio`** CSS property sets a **preferred aspect ratio** for the box, which will be used in the calculation of auto sizes and some other layout functions.
*
* **Syntax**: `auto | <ratio>`
*
* **Initial value**: `auto`
*
*/
aspectRatio?: Property.AspectRatio
/**
* The **`backdrop-filter`** CSS property lets you apply graphical effects such as blurring or color shifting to the area behind an element. Because it applies to everything _behind_ the element, to see the effect you must make the element or its background at least partially transparent.
*
* **Syntax**: `none | <filter-function-list>`
*
* **Initial value**: `none`
*
*/
backdropFilter?: Property.BackdropFilter
/**
* The **`backface-visibility`** CSS property sets whether the back face of an element is visible when turned towards the user.
*
* **Syntax**: `visible | hidden`
*
* **Initial value**: `visible`
*
*/
backfaceVisibility?: Property.BackfaceVisibility
/**
* The **`background-attachment`** CSS property sets whether a background image's position is fixed within the viewport, or scrolls with its containing block.
*
* **Syntax**: `<attachment>#`
*
* **Initial value**: `scroll`
*
*/
backgroundAttachment?: Property.BackgroundAttachment
/**
* The **`background-blend-mode`** CSS property sets how an element's background images should blend with each other and with the element's background color.
*
* **Syntax**: `<blend-mode>#`
*
* **Initial value**: `normal`
*
*/
backgroundBlendMode?: Property.BackgroundBlendMode
/**
* The **`background-clip`** CSS property sets whether an element's background extends underneath its border box, padding box, or content box.
*
* **Syntax**: `<box>#`
*
* **Initial value**: `border-box`
*
*/
backgroundClip?: Property.BackgroundClip
/**
* The **`background-color`** CSS property sets the background color of an element.
*
* **Syntax**: `<color>`
*
* **Initial value**: `transparent`
*
*/
backgroundColor?: Property.BackgroundColor
/**
* The **`background-image`** CSS property sets one or more background images on an element.
*
* **Syntax**: `<bg-image>#`
*
* **Initial value**: `none`
*
*/
backgroundImage?: Property.BackgroundImage
/**
* The **`background-origin`** CSS property sets the background's origin: from the border start, inside the border, or inside the padding.
*
* **Syntax**: `<box>#`
*
* **Initial value**: `padding-box`
*
*/
backgroundOrigin?: Property.BackgroundOrigin
/**
* The **`background-position-x`** CSS property sets the initial horizontal position for each background image. The position is relative to the position layer set by `background-origin`.
*
* **Syntax**: `[ center | [ [ left | right | x-start | x-end ]? <length-percentage>? ]! ]#`
*
* **Initial value**: `left`
*
*/
backgroundPositionX?: Property.BackgroundPositionX
/**
* The **`background-position-y`** CSS property sets the initial vertical position for each background image. The position is relative to the position layer set by `background-origin`.
*
* **Syntax**: `[ center | [ [ top | bottom | y-start | y-end ]? <length-percentage>? ]! ]#`
*
* **Initial value**: `top`
*
*/
backgroundPositionY?: Property.BackgroundPositionY
/**
* The **`background-repeat`** CSS property sets how background images are repeated. A background image can be repeated along the horizontal and vertical axes, or not repeated at all.
*
* **Syntax**: `<repeat-style>#`
*
* **Initial value**: `repeat`
*
*/
backgroundRepeat?: Property.BackgroundRepeat
/**
* The **`background-size`** CSS property sets the size of the element's background image. The image can be left to its natural size, stretched, or constrained to fit the available space.
*
* **Syntax**: `<bg-size>#`
*
* **Initial value**: `auto auto`
*
*/
backgroundSize?: Property.BackgroundSize
/**
* **Syntax**: `clip | ellipsis | <string>`
*
* **Initial value**: `clip`
*/
blockOverflow?: Property.BlockOverflow
/**
* The **`block-size`** CSS property defines the horizontal or vertical size of an element's block, depending on its writing mode. It corresponds to either the `width` or the `height` property, depending on the value of `writing-mode`.
*
* **Syntax**: `<'width'>`
*
* **Initial value**: `auto`
*
*/
blockSize?: Property.BlockSize
/**
* The **`border-block-color`** CSS property defines the color of the logical block borders of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-color` and `border-bottom-color`, or `border-right-color` and `border-left-color` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-color'>{1,2}`
*
* **Initial value**: `currentcolor`
*
*/
borderBlockColor?: Property.BorderBlockColor
/**
* The **`border-block-end-color`** CSS property defines the color of the logical block-end border of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-color`, `border-right-color`, `border-bottom-color`, or `border-left-color` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-color'>`
*
* **Initial value**: `currentcolor`
*
*/
borderBlockEndColor?: Property.BorderBlockEndColor
/**
* The **`border-block-end-style`** CSS property defines the style of the logical block-end border of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-style`, `border-right-style`, `border-bottom-style`, or `border-left-style` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-style'>`
*
* **Initial value**: `none`
*
*/
borderBlockEndStyle?: Property.BorderBlockEndStyle
/**
* The **`border-block-end-width`** CSS property defines the width of the logical block-end border of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-width`, `border-right-width`, `border-bottom-width`, or `border-left-width` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-width'>`
*
* **Initial value**: `medium`
*
*/
borderBlockEndWidth?: Property.BorderBlockEndWidth
/**
* The **`border-block-start-color`** CSS property defines the color of the logical block-start border of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-color`, `border-right-color`, `border-bottom-color`, or `border-left-color` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-color'>`
*
* **Initial value**: `currentcolor`
*
*/
borderBlockStartColor?: Property.BorderBlockStartColor
/**
* The **`border-block-start-style`** CSS property defines the style of the logical block start border of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-style`, `border-right-style`, `border-bottom-style`, or `border-left-style` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-style'>`
*
* **Initial value**: `none`
*
*/
borderBlockStartStyle?: Property.BorderBlockStartStyle
/**
* The **`border-block-start-width`** CSS property defines the width of the logical block-start border of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-width`, `border-right-width`, `border-bottom-width`, or `border-left-width` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-width'>`
*
* **Initial value**: `medium`
*
*/
borderBlockStartWidth?: Property.BorderBlockStartWidth
/**
* The **`border-block-style`** CSS property defines the style of the logical block borders of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-style` and `border-bottom-style`, or `border-left-style` and `border-right-style` properties depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-style'>`
*
* **Initial value**: `none`
*
*/
borderBlockStyle?: Property.BorderBlockStyle
/**
* The **`border-block-width`** CSS property defines the width of the logical block borders of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-width` and `border-bottom-width`, or `border-left-width`, and `border-right-width` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-width'>`
*
* **Initial value**: `medium`
*
*/
borderBlockWidth?: Property.BorderBlockWidth
/**
* The **`border-bottom-color`** CSS property sets the color of an element's bottom border. It can also be set with the shorthand CSS properties `border-color` or `border-bottom`.
*
* **Syntax**: `<'border-top-color'>`
*
* **Initial value**: `currentcolor`
*
*/
borderBottomColor?: Property.BorderBottomColor
/**
* The **`border-bottom-left-radius`** CSS property rounds the bottom-left corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderBottomLeftRadius?: Property.BorderBottomLeftRadius
/**
* The **`border-bottom-right-radius`** CSS property rounds the bottom-right corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderBottomRightRadius?: Property.BorderBottomRightRadius
/**
* The **`border-bottom-style`** CSS property sets the line style of an element's bottom `border`.
*
* **Syntax**: `<line-style>`
*
* **Initial value**: `none`
*
*/
borderBottomStyle?: Property.BorderBottomStyle
/**
* The **`border-bottom-width`** CSS property sets the width of the bottom border of an element.
*
* **Syntax**: `<line-width>`
*
* **Initial value**: `medium`
*
*/
borderBottomWidth?: Property.BorderBottomWidth
/**
* The **`border-collapse`** CSS property sets whether cells inside a `<table>` have shared or separate borders.
*
* **Syntax**: `collapse | separate`
*
* **Initial value**: `separate`
*
*/
borderCollapse?: Property.BorderCollapse
/**
* The **`border-end-end-radius`** CSS property defines a logical border radius on an element, which maps to a physical border radius that depends on the element's `writing-mode`, `direction`, and `text-orientation`. This is useful when building styles to work regardless of the text orientation and writing mode.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderEndEndRadius?: Property.BorderEndEndRadius
/**
* The **`border-end-start-radius`** CSS property defines a logical border radius on an element, which maps to a physical border radius depending on the element's `writing-mode`, `direction`, and `text-orientation`. This is useful when building styles to work regardless of the text orientation and writing mode.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderEndStartRadius?: Property.BorderEndStartRadius
/**
* The **`border-image-outset`** CSS property sets the distance by which an element's border image is set out from its border box.
*
* **Syntax**: `[ <length> | <number> ]{1,4}`
*
* **Initial value**: `0`
*
*/
borderImageOutset?: Property.BorderImageOutset
/**
* The **`border-image-repeat`** CSS property defines how the edge regions of a source image are adjusted to fit the dimensions of an element's border image.
*
* **Syntax**: `[ stretch | repeat | round | space ]{1,2}`
*
* **Initial value**: `stretch`
*
*/
borderImageRepeat?: Property.BorderImageRepeat
/**
* The **`border-image-slice`** CSS property divides the image specified by `border-image-source` into regions. These regions form the components of an element's border image.
*
* **Syntax**: `<number-percentage>{1,4} && fill?`
*
* **Initial value**: `100%`
*
*/
borderImageSlice?: Property.BorderImageSlice
/**
* The **`border-image-source`** CSS property sets the source image used to create an element's border image.
*
* **Syntax**: `none | <image>`
*
* **Initial value**: `none`
*
*/
borderImageSource?: Property.BorderImageSource
/**
* The **`border-image-width`** CSS property sets the width of an element's border image.
*
* **Syntax**: `[ <length-percentage> | <number> | auto ]{1,4}`
*
* **Initial value**: `1`
*
*/
borderImageWidth?: Property.BorderImageWidth
/**
* The **`border-inline-color`** CSS property defines the color of the logical inline borders of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-color` and `border-bottom-color`, or `border-right-color` and `border-left-color` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-color'>{1,2}`
*
* **Initial value**: `currentcolor`
*
*/
borderInlineColor?: Property.BorderInlineColor
/**
* The **`border-inline-end-color`** CSS property defines the color of the logical inline-end border of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-color`, `border-right-color`, `border-bottom-color`, or `border-left-color` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-color'>`
*
* **Initial value**: `currentcolor`
*
*/
borderInlineEndColor?: Property.BorderInlineEndColor
/**
* The **`border-inline-end-style`** CSS property defines the style of the logical inline end border of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-style`, `border-right-style`, `border-bottom-style`, or `border-left-style` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-style'>`
*
* **Initial value**: `none`
*
*/
borderInlineEndStyle?: Property.BorderInlineEndStyle
/**
* The **`border-inline-end-width`** CSS property defines the width of the logical inline-end border of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-width`, `border-right-width`, `border-bottom-width`, or `border-left-width` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-width'>`
*
* **Initial value**: `medium`
*
*/
borderInlineEndWidth?: Property.BorderInlineEndWidth
/**
* The **`border-inline-start-color`** CSS property defines the color of the logical inline start border of an element, which maps to a physical border color depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-color`, `border-right-color`, `border-bottom-color`, or `border-left-color` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-color'>`
*
* **Initial value**: `currentcolor`
*
*/
borderInlineStartColor?: Property.BorderInlineStartColor
/**
* The **`border-inline-start-style`** CSS property defines the style of the logical inline start border of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-style`, `border-right-style`, `border-bottom-style`, or `border-left-style` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-style'>`
*
* **Initial value**: `none`
*
*/
borderInlineStartStyle?: Property.BorderInlineStartStyle
/**
* The **`border-inline-start-width`** CSS property defines the width of the logical inline-start border of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-width`, `border-right-width`, `border-bottom-width`, or `border-left-width` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-width'>`
*
* **Initial value**: `medium`
*
*/
borderInlineStartWidth?: Property.BorderInlineStartWidth
/**
* The **`border-inline-style`** CSS property defines the style of the logical inline borders of an element, which maps to a physical border style depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-style` and `border-bottom-style`, or `border-left-style` and `border-right-style` properties depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-style'>`
*
* **Initial value**: `none`
*
*/
borderInlineStyle?: Property.BorderInlineStyle
/**
* The **`border-inline-width`** CSS property defines the width of the logical inline borders of an element, which maps to a physical border width depending on the element's writing mode, directionality, and text orientation. It corresponds to the `border-top-width` and `border-bottom-width`, or `border-left-width`, and `border-right-width` property depending on the values defined for `writing-mode`, `direction`, and `text-orientation`.
*
* **Syntax**: `<'border-top-width'>`
*
* **Initial value**: `medium`
*
*/
borderInlineWidth?: Property.BorderInlineWidth
/**
* The **`border-left-color`** CSS property sets the color of an element's left border. It can also be set with the shorthand CSS properties `border-color` or `border-left`.
*
* **Syntax**: `<color>`
*
* **Initial value**: `currentcolor`
*
*/
borderLeftColor?: Property.BorderLeftColor
/**
* The **`border-left-style`** CSS property sets the line style of an element's left `border`.
*
* **Syntax**: `<line-style>`
*
* **Initial value**: `none`
*
*/
borderLeftStyle?: Property.BorderLeftStyle
/**
* The **`border-left-width`** CSS property sets the width of the left border of an element.
*
* **Syntax**: `<line-width>`
*
* **Initial value**: `medium`
*
*/
borderLeftWidth?: Property.BorderLeftWidth
/**
* The **`border-right-color`** CSS property sets the color of an element's right border. It can also be set with the shorthand CSS properties `border-color` or `border-right`.
*
* **Syntax**: `<color>`
*
* **Initial value**: `currentcolor`
*
*/
borderRightColor?: Property.BorderRightColor
/**
* The **`border-right-style`** CSS property sets the line style of an element's right `border`.
*
* **Syntax**: `<line-style>`
*
* **Initial value**: `none`
*
*/
borderRightStyle?: Property.BorderRightStyle
/**
* The **`border-right-width`** CSS property sets the width of the right border of an element.
*
* **Syntax**: `<line-width>`
*
* **Initial value**: `medium`
*
*/
borderRightWidth?: Property.BorderRightWidth
/**
* The **`border-spacing`** CSS property sets the distance between the borders of adjacent `<table>` cells. This property applies only when `border-collapse` is `separate`.
*
* **Syntax**: `<length> <length>?`
*
* **Initial value**: `0`
*
*/
borderSpacing?: Property.BorderSpacing
/**
* The **`border-start-end-radius`** CSS property defines a logical border radius on an element, which maps to a physical border radius depending on the element's `writing-mode`, `direction`, and `text-orientation`. This is useful when building styles to work regardless of the text orientation and writing mode.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderStartEndRadius?: Property.BorderStartEndRadius
/**
* The **`border-start-start-radius`** CSS property defines a logical border radius on an element, which maps to a physical border radius that depends on the element's `writing-mode`, `direction`, and `text-orientation`. This is useful when building styles to work regardless of the text orientation and writing mode.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderStartStartRadius?: Property.BorderStartStartRadius
/**
* The **`border-top-color`** CSS property sets the color of an element's top border. It can also be set with the shorthand CSS properties `border-color` or `border-top`.
*
* **Syntax**: `<color>`
*
* **Initial value**: `currentcolor`
*
*/
borderTopColor?: Property.BorderTopColor
/**
* The **`border-top-left-radius`** CSS property rounds the top-left corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderTopLeftRadius?: Property.BorderTopLeftRadius
/**
* The **`border-top-right-radius`** CSS property rounds the top-right corner of an element by specifying the radius (or the radius of the semi-major and semi-minor axes) of the ellipse defining the curvature of the corner.
*
* **Syntax**: `<length-percentage>{1,2}`
*
* **Initial value**: `0`
*
*/
borderTopRightRadius?: Property.BorderTopRightRadius
/**
* The **`border-top-style`** CSS property sets the line style of an element's top `border`.
*
* **Syntax**: `<line-style>`
*
* **Initial value**: `none`
*
*/
borderTopStyle?: Property.BorderTopStyle
/**
* The **`border-top-width`** CSS property sets the width of the top border of an element.
*
* **Syntax**: `<line-width>`
*
* **Initial value**: `medium`
*
*/
borderTopWidth?: Property.BorderTopWidth
/**
* The **`bottom`** CSS property participates in setting the vertical position of a positioned element. It has no effect on non-positioned elements.
*
* **Syntax**: `<length> | <percentage> | auto`
*
* **Initial value**: `auto`
*
*/
bottom?: Property.Bottom
/**
* The **`box-decoration-break`** CSS property specifies how an element's fragments should be rendered when broken across multiple lines, columns, or pages.
*
* **Syntax**: `slice | clone`
*
* **Initial value**: `slice`
*
*/
boxDecorationBreak?: Property.BoxDecorationBreak
/**
* The **`box-shadow`** CSS property adds shadow effects around an element's frame. You can set multiple effects separated by commas. A box shadow is described by X and Y offsets relative to the element, blur and spread radius, and color.
*
* **Syntax**: `none | <shadow>#`
*
* **Initial value**: `none`
*
*/
boxShadow?: Property.BoxShadow
/**
* The **`box-sizing`** CSS property sets how the total width and height of an element is calculated.
*
* **Syntax**: `content-box | border-box`
*
* **Initial value**: `content-box`
*
*/
boxSizing?: Property.BoxSizing
/**
* The **`break-after`** CSS property sets how page, column, or region breaks should behave after a generated box. If there is no generated box, the property is ignored.
*
* **Syntax**: `auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region`
*
* **Initial value**: `auto`
*
*/
breakAfter?: Property.BreakAfter
/**
* The **`break-before`** CSS property sets how page, column, or region breaks should behave before a generated box. If there is no generated box, the property is ignored.
*
* **Syntax**: `auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region`
*
* **Initial value**: `auto`
*
*/
breakBefore?: Property.BreakBefore
/**
* The **`break-inside`** CSS property sets how page, column, or region breaks should behave inside a generated box. If there is no generated box, the property is ignored.
*
* **Syntax**: `auto | avoid | avoid-page | avoid-column | avoid-region`
*
* **Initial value**: `auto`
*
*/
breakInside?: Property.BreakInside
/**
* The **`caption-side`** CSS property puts the content of a table's `<caption>` on the specified side. The values are relative to the `writing-mode` of the table.
*
* **Syntax**: `top | bottom | block-start | block-end | inline-start | inline-end`
*
* **Initial value**: `top`
*
*/
captionSide?: Property.CaptionSide
/**
* The **`caret-color`** CSS property sets the color of the **insertion caret**, the visible marker where the next character typed will be inserted. This is sometimes referred to as the **text input cursor**. The caret appears in elements such as `<input>` or those with the `contenteditable` attribute. The caret is typically a thin vertical line that flashes to help make it more noticeable. By default, it is black, but its color can be altered with this property.
*
* **Syntax**: `auto | <color>`
*
* **Initial value**: `auto`
*
*/
caretColor?: Property.CaretColor
/**
* The **`clear`** CSS property sets whether an element must be moved below (cleared) floating elements that precede it. The `clear` property applies to floating and non-floating elements.
*
* **Syntax**: `none | left | right | both | inline-start | inline-end`
*
* **Initial value**: `none`
*
*/
clear?: Property.Clear
/**
* The `**clip-path**` CSS property creates a clipping region that sets what part of an element should be shown. Parts that are inside the region are shown, while those outside are hidden.
*
* **Syntax**: `<clip-source> | [ <basic-shape> || <geometry-box> ] | none`
*
* **Initial value**: `none`
*
*/
clipPath?: Property.ClipPath
/**
* The **`color`** CSS property sets the foreground color value of an element's text and text decorations, and sets the `<currentcolor>` value. `currentcolor` may be used as an indirect value on _other_ properties and is the default for other color properties, such as `border-color`.
*
* **Syntax**: `<color>`
*
* **Initial value**: Varies from one browser to another
*
*/
color?: Property.Color
/**
* The **`color-adjust`** CSS property sets what, if anything, the user agent may do to optimize the appearance of the element on the output device. By default, the browser is allowed to make any adjustments to the element's appearance it determines to be necessary and prudent given the type and capabilities of the output device.
*
* **Syntax**: `economy | exact`
*
* **Initial value**: `economy`
*
*/
colorAdjust?: Property.ColorAdjust
/**
* The **`color-scheme`** CSS property allows an element to indicate which color schemes it can comfortably be rendered in.
*
* **Syntax**: `normal | [ light | dark | <custom-ident> ]+`
*
* **Initial value**: `normal`
*
*/
colorScheme?: Property.ColorScheme
/**
* The **`column-count`** CSS property breaks an element's content into the specified number of columns.
*
* **Syntax**: `<integer> | auto`
*
* **Initial value**: `auto`
*
*/
columnCount?: Property.ColumnCount
/**
* The **`column-fill`** CSS property controls how an element's contents are balanced when broken into columns.
*
* **Syntax**: `auto | balance | balance-all`
*
* **Initial value**: `balance`
*
*/
columnFill?: Property.ColumnFill
/**
* The **`column-gap`** CSS property sets the size of the gap (gutter) between an element's columns.
*
* **Syntax**: `normal | <length-percentage>`
*
* **Initial value**: `normal`
*
*/
columnGap?: Property.ColumnGap
/**
* The **`column-rule-color`** CSS property sets the color of the line drawn between columns in a multi-column layout.
*
* **Syntax**: `<color>`
*
* **Initial value**: `currentcolor`
*
*/
columnRuleColor?: Property.ColumnRuleColor
/**
* The **`column-rule-style`** CSS property sets the style of the line drawn between columns in a multi-column layout.
*
* **Syntax**: `<'border-style'>`
*
* **Initial value**: `none`
*
*/
columnRuleStyle?: Property.ColumnRuleStyle
/**
* The **`column-rule-width`** CSS property sets the width of the line drawn between columns in a multi-column layout.
*
* **Syntax**: `<'border-width'>`
*
* **Initial value**: `medium`
*
*/
columnRuleWidth?: Property.ColumnRuleWidth
/**
* The **`column-span`** CSS property makes it possible for an element to span across all columns when its value is set to `all`.
*
* **Syntax**: `none | all`
*
* **Initial value**: `none`
*
*/
columnSpan?: Property.ColumnSpan
/**
* The **`column-width`** CSS property sets the ideal column width in a multi-column layout. The container will have as many columns as can fit without any of them having a width less than the `column-width` value. If the width of the container is narrower than the specified value, the single column's width will be smaller than the declared column width.
*
* **Syntax**: `<length> | auto`
*
* **Initial value**: `auto`
*
*/
columnWidth?: Property.ColumnWidth
/**
* The **`contain`** CSS property allows an author to indicate that an element and its contents are, as much as possible, _independent_ of the rest of the document tree. This allows the browser to recalculate layout, style, paint, size, or any combination of them for a limited area of the DOM and not the entire page, leading to obvious performance benefits.
*
* **Syntax**: `none | strict | content | [ size || layout || style || paint ]`
*
* **Initial value**: `none`
*
*/
contain?: Property.Contain
/**
* The **`content`** CSS property replaces an element with a generated value. Objects inserted using the `content` property are **anonymous replaced elements**_._
*
* **Syntax**: `normal | none | [ <content-replacement> | <content-list> ] [/ <string> ]?`
*
* **Initial value**: `normal`
*
*/
content?: Property.Content
/**
* The **`content-visibility`** CSS property controls whether or not an element renders its contents at all, along with forcing a strong set of containments, allowing user agents to potentially omit large swathes of layout and rendering work until it becomes needed. Basically it enables the user agent to skip an element's rendering work, including layout and painting, until it is needed, makes the initial page load much faster.
*
* **Syntax**: `visible | auto | hidden`
*
* **Initial value**: `visible`
*
*/
contentVisibility?: Property.ContentVisibility
/**
* The **`counter-increment`** CSS property increases or decreases the value of a CSS counter by a given value.
*
* **Syntax**: `[ <custom-ident> <integer>? ]+ | none`
*
* **Initial value**: `none`
*
*/
counterIncrement?: Property.CounterIncrement
/**
* The **`counter-reset`** CSS property resets a CSS counter to a given value.
*
* **Syntax**: `[ <custom-ident> <integer>? ]+ | none`
*
* **Initial value**: `none`
*
*/
counterReset?: Property.CounterReset
/**
* The **`counter-set`** CSS property sets a CSS counter to a given value. It manipulates the value of existing counters, and will only create new counters if there isn't already a counter of the given name on the element.
*
* **Syntax**: `[ <custom-ident> <integer>? ]+ | none`
*
* **Initial value**: `none`
*
*/
counterSet?: Property.CounterSet
/**
* The **`cursor`** CSS property sets the type of mouse cursor, if any, to show when the mouse pointer is over an element.
*
* **Syntax**: `[ [ <url> [ <x> <y> ]? , ]* [ auto | default | none | context-menu | help | pointer | progress | wait | cell | crosshair | text | vertical-text | alias | copy | move | no-drop | not-allowed | e-resize | n-resize | ne-resize | nw-resize | s-resize | se-resize | sw-resize | w-resize | ew-resize | ns-resize | nesw-resize | nwse-resize | col-resize | row-resize | all-scroll | zoom-in | zoom-out | grab | grabbing ] ]`
*
* **Initial value**: `auto`
*
*/
cursor?: Property.Cursor
/**
* The **`direction`** CSS property sets the direction of text, table columns, and horizontal overflow. Use `rtl` for languages written from right to left (like Hebrew or Arabic), and `ltr` for those written from left to right (like English and most other languages).
*
* **Syntax**: `ltr | rtl`
*
* **Initial value**: `ltr`
*
*/
direction?: Property.Direction
/**
* The **`display`** CSS property sets whether an element is treated as a block or inline element and the layout used for its children, such as flow layout, grid or flex.
*
* **Syntax**: `[ <display-outside> || <display-inside> ] | <display-listitem> | <display-internal> | <display-box> | <display-legacy>`
*
* **Initial value**: `inline`
*
*/
display?: Property.Display
/**
* The **`empty-cells`** CSS property sets whether borders and backgrounds appear around `<table>` cells that have no visible content.
*
* **Syntax**: `show | hide`
*
* **Initial value**: `show`
*
*/
emptyCells?: Property.EmptyCells
/**
* The **`filter`** CSS property applies graphical effects like blur or color shift to an element. Filters are commonly used to adjust the rendering of images, backgrounds, and borders.
*
* **Syntax**: `none | <filter-function-list>`
*
* **Initial value**: `none`
*
*/
filter?: Property.Filter
/**
* The **`flex-basis`** CSS property sets the initial main size of a flex item. It sets the size of the content box unless otherwise set with `box-sizing`.
*
* **Syntax**: `content | <'width'>`
*
* **Initial value**: `auto`
*
*/
flexBasis?: Property.FlexBasis
/**
* The **`flex-direction`** CSS property sets how flex items are placed in the flex container defining the main axis and the direction (normal or reversed).
*
* **Syntax**: `row | row-reverse | column | column-reverse`
*
* **Initial value**: `row`
*
*/
flexDirection?: Property.FlexDirection
/**
* The **`flex-grow`** CSS property sets the flex grow factor of a flex item main size.
*
* **Syntax**: `<number>`
*
* **Initial value**: `0`
*
*/
flexGrow?: Property.FlexGrow
/**
* The **`flex-shrink`** CSS property sets the flex shrink factor of a flex item. If the size of all flex items is larger than the flex container, items shrink to fit according to `flex-shrink`.
*
* **Syntax**: `<number>`
*
* **Initial value**: `1`
*
*/
flexShrink?: Property.FlexShrink
/**
* The **`flex-wrap`** CSS property sets whether flex items are forced onto one line or can wrap onto multiple lines. If wrapping is allowed, it sets the direction that lines are stacked.
*
* **Syntax**: `nowrap | wrap | wrap-reverse`
*
* **Initial value**: `nowrap`
*
*/
flexWrap?: Property.FlexWrap
/**
* The **`float`** CSS property places an element on the left or right side of its container, allowing text and inline elements to wrap around it. The element is removed from the normal flow of the page, though still remaining a part of the flow (in contrast to absolute positioning).
*
* **Syntax**: `left | right | none | inline-start | inline-end`
*
* **Initial value**: `none`
*
*/
float?: Property.Float
/**
* The **`font-family`** CSS property specifies a prioritized list of one or more font family names and/or generic family names for the selected element.
*
* **Syntax**: `[ <family-name> | <generic-family> ]#`
*
* **Initial value**: depends on user agent
*
*/
fontFamily?: Property.FontFamily
/**
* The **`font-feature-settings`** CSS property controls advanced typographic features in OpenType fonts.
*
* **Syntax**: `normal | <feature-tag-value>#`
*
* **Initial value**: `normal`
*
*/
fontFeatureSettings?: Property.FontFeatureSettings
/**
* The **`font-kerning`** CSS property sets the use of the kerning information stored in a font.
*
* **Syntax**: `auto | normal | none`
*
* **Initial value**: `auto`
*
*/
fontKerning?: Property.FontKerning
/**
* The **`font-language-override`** CSS property controls the use of language-specific glyphs in a typeface.
*
* **Syntax**: `normal | <string>`
*
* **Initial value**: `normal`
*
*/
fontLanguageOverride?: Property.FontLanguageOverride
/**
* The **`font-optical-sizing`** CSS property sets whether text rendering is optimized for viewing at different sizes.
*
* **Syntax**: `auto | none`
*
* **Initial value**: `auto`
*
*/
fontOpticalSizing?: Property.FontOpticalSizing
/**
* The **`font-size`** CSS property sets the size of the font. Changing the font size also updates the sizes of the font size-relative `<length>` units, such as `em`, `ex`, and so forth.
*
* **Syntax**: `<absolute-size> | <relative-size> | <length-percentage>`
*
* **Initial value**: `medium`
*
*/
fontSize?: Property.FontSize
/**
* The **`font-size-adjust`** CSS property sets the size of lower-case letters relative to the current font size (which defines the size of upper-case letters).
*
* **Syntax**: `none | <number>`
*
* **Initial value**: `none`
*
*/
fontSizeAdjust?: Property.FontSizeAdjust
/**
* The **`font-smooth`** CSS property controls the application of anti-aliasing when fonts are rendered.
*
* **Syntax**: `auto | always | <absolute-size> | <length>`
*
* **Initial value**: `auto`
*
*/
fontSmooth?: Property.FontSmooth
/**
* The **`font-stretch`** CSS property selects a normal, condensed, or expanded face from a font.
*
* **Syntax**: `<font-stretch-absolute>`
*
* **Initial value**: `normal`
*
*/
fontStretch?: Property.FontStretch
/**
* The **`font-style`** CSS property sets whether a font should be styled with a normal, italic, or oblique face from its `font-family`.
*
* **Syntax**: `normal | italic | oblique <angle>?`
*
* **Initial value**: `normal`
*
*/
fontStyle?: Property.FontStyle
/**
* The **`font-synthesis`** CSS property controls which missing typefaces, bold or italic, may be synthesized by the browser.
*
* **Syntax**: `none | [ weight || style ]`
*
* **Initial value**: `weight style`
*
*/
fontSynthesis?: Property.FontSynthesis
/**
* The **`font-variant`** CSS shorthand property allows you to set all the font variants for a font.
*
* **Syntax**: `normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || stylistic( <feature-value-name> ) || historical-forms || styleset( <feature-value-name># ) || character-variant( <feature-value-name># ) || swash( <feature-value-name> ) || ornaments( <feature-value-name> ) || annotation( <feature-value-name> ) || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <east-asian-variant-values> || <east-asian-width-values> || ruby ]`
*
* **Initial value**: `normal`
*
*/
fontVariant?: Property.FontVariant
/**
* The **`font-variant-caps`** CSS property controls the use of alternate glyphs for capital letters.
*
* **Syntax**: `normal | small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps`
*
* **Initial value**: `normal`
*
*/
fontVariantCaps?: Property.FontVariantCaps
/**
* The **`font-variant-east-asian`** CSS property controls the use of alternate glyphs for East Asian scripts, like Japanese and Chinese.
*
* **Syntax**: `normal | [ <east-asian-variant-values> || <east-asian-width-values> || ruby ]`
*
* **Initial value**: `normal`
*
*/
fontVariantEastAsian?: Property.FontVariantEastAsian
/**
* The **`font-variant-ligatures`** CSS property controls which ligatures and contextual forms are used in textual content of the elements it applies to. This leads to more harmonized forms in the resulting text.
*
* **Syntax**: `normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> ]`
*
* **Initial value**: `normal`
*
*/
fontVariantLigatures?: Property.FontVariantLigatures
/**
* The **`font-variant-numeric`** CSS property controls the usage of alternate glyphs for numbers, fractions, and ordinal markers.
*
* **Syntax**: `normal | [ <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero ]`
*
* **Initial value**: `normal`
*
*/
fontVariantNumeric?: Property.FontVariantNumeric
/**
* The **`font-variant-position`** CSS property controls the use of alternate, smaller glyphs that are positioned as superscript or subscript.
*
* **Syntax**: `normal | sub | super`
*
* **Initial value**: `normal`
*
*/
fontVariantPosition?: Property.FontVariantPosition
/**
* The **`font-variation-settings`** CSS property provides low-level control over variable font characteristics, by specifying the four letter axis names of the characteristics you want to vary, along with their values.
*
* **Syntax**: `normal | [ <string> <number> ]#`
*
* **Initial value**: `normal`
*
*/
fontVariationSettings?: Property.FontVariationSettings
/**
* The **`font-weight`** CSS property sets the weight (or boldness) of the font. The weights available depend on the `font-family` that is currently set.
*
* **Syntax**: `<font-weight-absolute> | bolder | lighter`
*
* **Initial value**: `normal`
*
*/
fontWeight?: Property.FontWeight
/**
* The **`forced-color-adjust`** CSS property allows authors to opt certain elements out of forced colors mode. This then restores the control of those values to CSS.
*
* **Syntax**: `auto | none`
*
* **Initial value**: `auto`
*
*/
forcedColorAdjust?: Property.ForcedColorAdjust
/**
* The **`grid-auto-columns`** CSS property specifies the size of an implicitly-created grid column track or pattern of tracks.
*
* **Syntax**: `<track-size>+`
*
* **Initial value**: `auto`
*
*/
gridAutoColumns?: Property.GridAutoColumns
/**
* The **`grid-auto-flow`** CSS property controls how the auto-placement algorithm works, specifying exactly how auto-placed items get flowed into the grid.
*
* **Syntax**: `[ row | column ] || dense`
*
* **Initial value**: `row`
*
*/
gridAutoFlow?: Property.GridAutoFlow
/**
* The **`grid-auto-rows`** CSS property specifies the size of an implicitly-created grid row track or pattern of tracks.
*
* **Syntax**: `<track-size>+`
*
* **Initial value**: `auto`
*
*/
gridAutoRows?: Property.GridAutoRows
/**
*