inferred-types 0.55.9 → 0.55.11

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.
@@ -3167,7 +3167,7 @@ type Container = Dictionary | readonly unknown[] | Map<unknown, unknown> | WeakM
3167
3167
  *
3168
3168
  * values/types considered to be "empty"
3169
3169
  */
3170
- type Empty = undefined | null | EmptyObject | [] | "";
3170
+ type Empty = undefined | null | ExplicitlyEmptyObject | [] | "";
3171
3171
 
3172
3172
  /**
3173
3173
  * **FalsyValue**
@@ -4142,6 +4142,12 @@ type Test<X, Y, TRUE = true, FALSE = false> = (<T>() => T extends X ? 1 : 2) ext
4142
4142
  * Type utility which tests whether two types -- `X` and `Y` -- are exactly the same type
4143
4143
  */
4144
4144
  type IsEqual<X, Y, TRUE = true, FALSE = false> = IsAny<X> extends true ? IsAny<Y> extends true ? true : false : Test<X, Y, TRUE, FALSE>;
4145
+ /**
4146
+ * **Equals**`<X,Y>`
4147
+ *
4148
+ * Type utility which tests whether two types -- `X` and `Y` -- are exactly the same type
4149
+ */
4150
+ type Equals<X, Y, TTrue = true, TFalse = false> = IsEqual<X, Y, TTrue, TFalse>;
4145
4151
 
4146
4152
  /**
4147
4153
  * **IsEmptyString**`<T>`
@@ -5862,7 +5868,7 @@ type TwTarget__Color__Light = `${TwColorTarget}-${TwTarget__ColorName}-${number}
5862
5868
  type CssNamedColors = typeof CSS_NAMED_COLORS[number];
5863
5869
  type CssColorSpace = "srgb" | "srgb-linear" | "display-p3" | "rec2020" | "a98-rgb" | "prophoto-rgb" | "xyz" | "xyz-d50" | "xyz-d65" | "hsl" | "hwb" | "lch" | "oklch";
5864
5870
  type CssRgb = `rgb(${number} ${number} ${number})` | `rgb(${number},${OptionalSpace}${number},${OptionalSpace}${number})`;
5865
- type CssRgba = `rgba(${number} ${number} ${number})` | `rgba(${number},${OptionalSpace}${number},${OptionalSpace}${number})`;
5871
+ type CssRgba = `rgba(${number} ${number} ${number} ${number})` | `rgba(${number},${OptionalSpace}${number},${OptionalSpace}${number},${OptionalSpace}${number})`;
5866
5872
  /**
5867
5873
  * Hue, Saturation, and Lightness level (**HSL** color model)
5868
5874
  */
@@ -5918,12 +5924,12 @@ interface CssTextProperties {
5918
5924
  "text-align"?: CssTextAlign;
5919
5925
  "text-align-last"?: CssTextAlign;
5920
5926
  "text-decoration-line"?: CssTextDecorationLine | `${CssTextDecorationLine} ${CssTextDecorationLine}${string}` | CssGlobal;
5921
- "text-decoration-color"?: CssColorLight | CssGlobal;
5927
+ "text-decoration-color"?: Suggest<CssColorLight | CssGlobal>;
5922
5928
  "text-decoration-thickness"?: "auto" | "from-font" | CssSizingLight | CssGlobal;
5923
5929
  "text-decoration-style"?: CssTextDecorationStyle;
5924
- "text-indent"?: CssTextIndent;
5930
+ "text-indent"?: Suggest<CssTextIndent>;
5925
5931
  "text-emphasis"?: string;
5926
- "text-justify"?: CssTextJustify;
5932
+ "text-justify"?: Suggest<CssTextJustify>;
5927
5933
  "text-orientation"?: CssTextOrientation;
5928
5934
  "text-shadow"?: `${CssSizingLight}${string}${CssColorLight}` | CssGlobal;
5929
5935
  "text-transform"?: CssTextTransform;
@@ -5960,7 +5966,7 @@ type CssGap = CssSizing | `${CssSizing} ${CssSizing}` | CssGlobal;
5960
5966
  *
5961
5967
  * a union of valid values for the **CSS** `flex-grow` property.
5962
5968
  */
5963
- type CssFlexGrow = number | CssGlobal;
5969
+ type CssFlexGrow = Suggest<"1" | "2" | "3" | CssGlobal>;
5964
5970
  /**
5965
5971
  * **CssFlexShrink**
5966
5972
  *
@@ -6092,7 +6098,7 @@ interface CssBackgroundProperties {
6092
6098
  "background-attachement"?: string;
6093
6099
  "background-blend-mode"?: string;
6094
6100
  "background-clip"?: string;
6095
- "background-color"?: CssColor;
6101
+ "background-color"?: Suggest<CssColor>;
6096
6102
  "background-image"?: string;
6097
6103
  "background-origin"?: string;
6098
6104
  "background-position"?: string;
@@ -6564,44 +6570,44 @@ interface CssTransformProperties {
6564
6570
  */
6565
6571
  type CssDefinition = {
6566
6572
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/appearance) */
6567
- "appearance"?: CssAppearance;
6573
+ "appearance"?: Suggest<CssAppearance>;
6568
6574
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter) */
6569
- "backdrop-filter"?: CssBackdropFilter;
6575
+ "backdrop-filter"?: Suggest<CssBackdropFilter>;
6570
6576
  /**
6571
6577
  * The valid values for the
6572
6578
  * [**display**](https://developer.mozilla.org/en-US/docs/Web/CSS/display)
6573
6579
  * property in CSS.
6574
6580
  */
6575
- "display"?: CssDisplay;
6581
+ "display"?: Suggest<CssDisplay>;
6576
6582
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/position) */
6577
- "position"?: CssPosition;
6583
+ "position"?: Suggest<CssPosition>;
6578
6584
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio) */
6579
- "aspect-ratio"?: CssAspectRatio;
6585
+ "aspect-ratio"?: Suggest<CssAspectRatio>;
6580
6586
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/opacity) */
6581
- "opacity"?: CssOpacity;
6587
+ "opacity"?: Suggest<CssOpacity>;
6582
6588
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/gap) */
6583
- "gap"?: CssGap;
6589
+ "gap"?: Suggest<CssGap>;
6584
6590
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/flex) */
6585
- "flex"?: CssFlex;
6591
+ "flex"?: Suggest<CssFlex>;
6586
6592
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-grow) */
6587
- "flex-grow"?: CssFlexGrow;
6593
+ "flex-grow"?: Suggest<CssFlexGrow>;
6588
6594
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-shrink) */
6589
- "flex-shrink"?: CssFlexShrink;
6595
+ "flex-shrink"?: Suggest<CssFlexShrink>;
6590
6596
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-direction) */
6591
- "flex-direction"?: CssFlexDirection;
6597
+ "flex-direction"?: Suggest<CssFlexDirection>;
6592
6598
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-flow) */
6593
- "flex-flow"?: CssFlexFlow;
6599
+ "flex-flow"?: Suggest<CssFlexFlow>;
6594
6600
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/flex-basis) */
6595
- "flex-basis"?: CssFlexBasis;
6601
+ "flex-basis"?: Suggest<CssFlexBasis>;
6596
6602
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/float) */
6597
- "float"?: CssFloat;
6603
+ "float"?: Suggest<CssFloat>;
6598
6604
  /**
6599
6605
  * a union of valid values for the **CSS** [`list-style`](https://developer.mozilla.org/en-US/docs/Web/CSS/list-style) property.
6600
6606
  *
6601
6607
  * The list-style CSS shorthand property allows you to set all the list style properties
6602
6608
  * at once.
6603
6609
  */
6604
- "list-style"?: CssListStyle;
6610
+ "list-style"?: Suggest<CssListStyle>;
6605
6611
  /**
6606
6612
  * The block-size CSS property defines the horizontal or vertical size of an element's block,
6607
6613
  * depending on its writing mode. It corresponds to either the width or the height property,
@@ -6613,26 +6619,26 @@ type CssDefinition = {
6613
6619
  *
6614
6620
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/block-size)
6615
6621
  */
6616
- "block-size"?: CssSizing;
6622
+ "block-size"?: Suggest<CssSizing>;
6617
6623
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/border-size) */
6618
- "border-size"?: CssSizing;
6624
+ "border-size"?: Suggest<CssSizing>;
6619
6625
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/content) */
6620
- "content"?: CssContent;
6626
+ "content"?: Suggest<CssContent>;
6621
6627
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/color) */
6622
- "color"?: CssColor;
6628
+ "color"?: Suggest<CssColor>;
6623
6629
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/cursor) */
6624
- "cursor"?: CssCursor | CssGlobal;
6630
+ "cursor"?: Suggest<CssCursor | CssGlobal>;
6625
6631
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/height) */
6626
- "height"?: CssSizing;
6632
+ "height"?: Suggest<CssSizing>;
6627
6633
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/width) */
6628
- "width"?: CssSizing;
6634
+ "width"?: Suggest<CssSizing>;
6629
6635
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/perspective) */
6630
- "perspective"?: CssSizingLight | "none" | CssGlobal;
6631
- "perspective-origin"?: CssPerspectiveOrigin;
6636
+ "perspective"?: Suggest<CssSizingLight | "none" | CssGlobal>;
6637
+ "perspective-origin"?: Suggest<CssPerspectiveOrigin>;
6632
6638
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/mix-blend-mode) */
6633
- "mix-blend-mode"?: CssMixBlendMode;
6639
+ "mix-blend-mode"?: Suggest<CssMixBlendMode>;
6634
6640
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/letter-spacing) */
6635
- "letter-spacing"?: CssLetterSpacing;
6641
+ "letter-spacing"?: Suggest<CssLetterSpacing>;
6636
6642
  /**
6637
6643
  * The lighting-color CSS property defines the color of the light source for the
6638
6644
  * <feDiffuseLighting> and <feSpecularLighting> SVG lighting filter primitives within an
@@ -6640,76 +6646,147 @@ type CssDefinition = {
6640
6646
  *
6641
6647
  * - [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/lighting-color)
6642
6648
  */
6643
- "lighting-color"?: CssColor;
6649
+ "lighting-color"?: Suggest<CssColor>;
6644
6650
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit) */
6645
- "object-fit"?: CssObjectFit;
6651
+ "object-fit"?: Suggest<CssObjectFit>;
6646
6652
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/object-position) */
6647
- "object-position"?: CssObjectPosition;
6648
- "order"?: `${number}` | CssGlobal;
6653
+ "object-position"?: Suggest<CssObjectPosition>;
6654
+ "order"?: Suggest<`${number}` | CssGlobal>;
6649
6655
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/image-orientation) */
6650
- "image-orientation"?: CssImageOrientation;
6656
+ "image-orientation"?: Suggest<CssImageOrientation>;
6651
6657
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/image-rendering) */
6652
- "image-rendering"?: CssImageRendering;
6658
+ "image-rendering"?: Suggest<CssImageRendering>;
6653
6659
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/image-resolution) */
6654
- "image-resolution"?: CssImageResolution;
6660
+ "image-resolution"?: Suggest<CssImageResolution>;
6655
6661
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/hanging-punction) */
6656
- "hanging-punctuation"?: CssHangingPunctuation;
6662
+ "hanging-punctuation"?: Suggest<CssHangingPunctuation>;
6657
6663
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/min-height) */
6658
- "min-height"?: CssSizing;
6664
+ "min-height"?: Suggest<CssSizing>;
6659
6665
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/min-width) */
6660
- "min-width"?: CssSizing;
6666
+ "min-width"?: Suggest<CssSizing>;
6661
6667
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/min-block-size) */
6662
- "min-block-size"?: CssSizing;
6668
+ "min-block-size"?: Suggest<CssSizing>;
6663
6669
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/min-inline-size) */
6664
- "min-inline-size"?: CssSizing;
6670
+ "min-inline-size"?: Suggest<CssSizing>;
6665
6671
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/stop-color) */
6666
- "stop-color"?: CssColorLight | CssGlobal;
6672
+ "stop-color"?: Suggest<CssColorLight | CssGlobal>;
6667
6673
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/stop-opacity) */
6668
- "stop-opacity"?: `${number}` | `${number}%` | CssGlobal;
6674
+ "stop-opacity"?: Suggest<`${number}` | `${number}%` | CssGlobal>;
6669
6675
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/tab-size) */
6670
- "tab-size"?: `${number}` | CssSizingLight | CssGlobal;
6676
+ "tab-size"?: Suggest<`${number}` | CssSizingLight | CssGlobal>;
6671
6677
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/table-layout) */
6672
- "table-layout"?: "auto" | "fixed" | CssGlobal;
6678
+ "table-layout"?: Suggest<"auto" | "fixed" | CssGlobal>;
6673
6679
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/translate) */
6674
- "translate"?: CssTranslate | CssGlobal;
6680
+ "translate"?: Suggest<CssTranslate | CssGlobal>;
6675
6681
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/quotes) */
6676
- "quotes"?: string;
6682
+ "quotes"?: Suggest<string>;
6677
6683
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/r) */
6678
- "r"?: CssSizingLight | CssGlobal;
6684
+ "r"?: Suggest<CssSizingLight | CssGlobal>;
6679
6685
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events) */
6680
- "pointer-events"?: PointerEvent | CssGlobal;
6686
+ "pointer-events"?: string;
6681
6687
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/resize) */
6682
- "resize"?: "both" | "horizontal" | "vertical" | "none" | CssGlobal;
6688
+ "resize"?: Suggest<"both" | "horizontal" | "vertical" | "none" | CssGlobal>;
6683
6689
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/rotate) */
6684
- "rotate"?: CssRotation | `x ${CssRotation}` | `y ${CssRotation}` | `z ${CssRotation}` | CssGlobal;
6685
- "row-gap"?: CssSizing;
6690
+ "rotate"?: Suggest<CssRotation | `x ${CssRotation}` | `y ${CssRotation}` | `z ${CssRotation}` | CssGlobal>;
6691
+ "row-gap"?: Suggest<CssSizing>;
6686
6692
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/rx) */
6687
- "rx"?: CssSizing;
6693
+ "rx"?: Suggest<CssSizing>;
6688
6694
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/ry) */
6689
- "ry"?: CssSizing;
6695
+ "ry"?: Suggest<CssSizing>;
6690
6696
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/x) */
6691
- "x"?: CssSizing;
6697
+ "x"?: Suggest<CssSizing>;
6692
6698
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/y) */
6693
- "y"?: CssSizing;
6699
+ "y"?: Suggest<CssSizing>;
6694
6700
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/white-space) */
6695
- "white-space"?: CssWhiteSpace;
6701
+ "white-space"?: Suggest<CssWhiteSpace>;
6696
6702
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/white-space-collapse) */
6697
- "white-space-collapse"?: CssWhiteSpaceCollapse;
6703
+ "white-space-collapse"?: Suggest<CssWhiteSpaceCollapse>;
6698
6704
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/widows) */
6699
- "widows"?: string;
6705
+ "widows"?: Suggest<string>;
6700
6706
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/will-change) */
6701
- "will-change"?: string;
6707
+ "will-change"?: Suggest<string>;
6702
6708
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/word-break) */
6703
- "word-break"?: CssWordBreak;
6709
+ "word-break"?: Suggest<CssWordBreak>;
6704
6710
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/word-spacing) */
6705
- "word-spacing"?: "normal" | CssSizing;
6711
+ "word-spacing"?: Suggest<"normal" | CssSizing>;
6706
6712
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/writing-mode) */
6707
- "writing-mode"?: CssWritingMode;
6713
+ "writing-mode"?: Suggest<CssWritingMode>;
6708
6714
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/z-index) */
6709
- "z-index"?: `${number}` | "auto" | CssGlobal;
6715
+ "z-index"?: Suggest<`${number}` | "auto" | CssGlobal>;
6710
6716
  /** [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/zoom) */
6711
- "zoom"?: `${number}` | `${number}%` | "normal" | "reset" | CssGlobal;
6712
- } & CssBorderProperties & CssBackgroundProperties & CssAbsolutionPositioningProperties & CssOffsetProperties & CssBreakProperties & CssBoxProperties & CssTextProperties & CssStrokeProperties & CssJustifyProperties & CssAlignProperties & CssPlaceProperties & CssAnimationProperties & CssMarginProperties & CssPaddingProperties & CssOutlineProperties & CssOverflowProperties & CssOffsetProperties & CssTransformProperties;
6717
+ "zoom"?: Suggest<`${number}` | `${number}%` | "normal" | "reset" | CssGlobal>;
6718
+ } & CssBorderProperties & CssBackgroundProperties & CssAbsolutionPositioningProperties & CssOffsetProperties & CssBreakProperties & CssBoxProperties & CssTextProperties & CssStrokeProperties & CssJustifyProperties & CssAlignProperties & CssPlaceProperties & CssAnimationProperties & CssMarginProperties & CssPaddingProperties & CssOutlineProperties & CssOverflowProperties & CssOffsetProperties & CssTransformProperties & CssFontProperties;
6719
+
6720
+ type CssFontFamily = `"${string}"` | "serif" | "san-serif" | "monospace" | "cursive" | "fantasy" | "system-ui" | "ui-serif" | "ui-sans-serif" | "ui-monospace" | "ui-rounded" | "emoji" | "math" | "fansong";
6721
+ type CssFontFeatureSetting = "normal" | "liga" | "tnum" | "smcp";
6722
+ type CssFontKerning = "auto" | "normal" | "none" | CssGlobal;
6723
+ type CssFontPalette = "normal" | "light" | "dark" | `--${string}` | `palette-mix(in ${ColorGamut},${string})`;
6724
+ type CssFontWidth = "normal" | "ultra-condensed" | "extra-condensed" | "condensed" | "semi-condensed" | "expanded" | "extra-expanded" | "ultra-expanded" | `${number}%` | CssGlobal;
6725
+ type CssFontStyle = "normal" | "italic" | "oblique" | `oblique ${CssRotation}` | CssGlobal;
6726
+ type CssFontSynthesis = "none" | "weight" | "style" | "position" | "small-caps";
6727
+ type CssFontWeight = "normal" | "bold" | "100" | "200" | "300" | "400" | "500" | "600" | "700" | "800" | "900" | "lighter" | "bolder" | CssGlobal;
6728
+ /**
6729
+ * The font-language-override CSS property controls the use of language-specific glyphs in a typeface.
6730
+ *
6731
+ * By default, HTML's lang attribute tells browsers to display glyphs designed specifically
6732
+ * for that language. For example, a lot of fonts have a special character for the digraph
6733
+ * fi that merge the dot on the "i" with the "f." However, if the language is set to Turkish
6734
+ * the typeface will likely know not to use the merged glyph; Turkish has two versions of
6735
+ * the "i," one with a dot (i) and one without (ı), and using the ligature would incorrectly
6736
+ * transform a dotted "i" into a dotless "i."
6737
+ *
6738
+ * The font-language-override property lets you override the typeface behavior for a specific
6739
+ * language. This is useful, for example, when the typeface you're using lacks proper support
6740
+ * for the language. For instance, if a typeface doesn't have proper rules for the Azeri
6741
+ * language, you can force the font to use Turkish glyphs, which follow similar rules.
6742
+ */
6743
+ type CssFontLanguageOverride = string;
6744
+ interface CssFontProperties {
6745
+ "font-family"?: CssFontFamily | `${CssFontFamily}, ${CssFontFamily}${string}` | CssGlobal;
6746
+ "font-feature-settings"?: CssFontFeatureSetting | `${CssFontFeatureSetting} ${number | "on" | "off"}` | `${CssFontFeatureSetting} ${number | "on" | "off"},${string}`;
6747
+ "font-kerning"?: CssFontKerning;
6748
+ "font-language-override"?: CssFontLanguageOverride;
6749
+ "font-size"?: CssSizing | "xx-small" | "x-small" | "small" | "medium" | "large" | "x-large" | "xx-large" | "xxx-large";
6750
+ /**
6751
+ * The font-size-adjust CSS property provides a way to modify the size of lowercase
6752
+ * letters relative to the size of uppercase letters, which defines the overall
6753
+ * font-size. This property is useful for situations where font fallback can
6754
+ * occur.
6755
+ *
6756
+ * - [Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/font-size-adjust)
6757
+ */
6758
+ "font-size-adjust"?: CssSizingLight | "none" | `${number}` | `from-font${Opt$1<` ${CssSizingLight}`>}` | `cap-height${Opt$1<` ${CssSizingLight}`>}` | `ex-height${Opt$1<` ${CssSizingLight}`>}` | `ch-width${Opt$1<` ${CssSizingLight}`>}` | `ic-width${Opt$1<` ${CssSizingLight}`>}` | `ic-height${Opt$1<` ${CssSizingLight}`>}`;
6759
+ /**
6760
+ * The font-palette CSS property allows specifying one of the many palettes contained in a
6761
+ * color font that a user agent may use for the font. Users can also override the values in
6762
+ * a palette or create a new palette by using the @font-palette-values at-rule.
6763
+ *
6764
+ * - [Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/font-palette)
6765
+ */
6766
+ "font-palette"?: CssFontPalette;
6767
+ /**
6768
+ * An alias for `font-width`
6769
+ */
6770
+ "font-stretch"?: CssFontWidth;
6771
+ /**
6772
+ * The font-stretch CSS property selects a normal, condensed, or expanded face from a font.
6773
+ *
6774
+ * - [Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/font-width)
6775
+ */
6776
+ "font-width"?: CssFontWidth;
6777
+ /** [Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/font-style) */
6778
+ "font-style"?: CssFontStyle;
6779
+ /**
6780
+ * The `font-synthesis` shorthand CSS property lets you specify whether or not the browser
6781
+ * may synthesize the bold, italic, small-caps, and/or subscript and superscript typefaces
6782
+ * when they are missing in the specified font-family.
6783
+ *
6784
+ * - [Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/font-synthesis)
6785
+ */
6786
+ "font-synthesis"?: CssFontSynthesis | `${CssFontSynthesis} ${CssFontSynthesis}` | `${CssFontSynthesis} ${CssFontSynthesis} ${CssFontSynthesis}${string}` | CssGlobal;
6787
+ /** [Reference](https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight) */
6788
+ "font-weight"?: CssFontWeight;
6789
+ }
6713
6790
  type HtmlTableElement = "col" | "colgroup" | "hgroup" | "table" | "tbody" | "td" | "tfoot" | "th" | "thead" | "time" | "tr";
6714
6791
  type HtmlSymantecElement = "abbr" | "acronym" | "address" | "area" | "article" | "aside" | "blockquote" | "caption" | "cite" | "details" | "dfn" | "dialog" | "fieldset" | "figure" | "figcaption" | "header" | "footer" | "legend" | "nav" | "menu" | "search" | "summary" | "section";
6715
6792
  type HtmlInputElement = "button" | "form" | "label" | "optgroup" | "option" | "select" | "input" | "textarea";
@@ -9061,6 +9138,23 @@ type UnionToTuple<U, Last = LastInUnion<U>> = [U] extends [never] ? [] : [...Uni
9061
9138
  */
9062
9139
  type UnionArrayToTuple<T> = T extends any[] ? UnionToTuple<ElementOf<T>> : never;
9063
9140
 
9141
+ type RemoveEmptyObject<T extends readonly unknown[], R extends readonly unknown[] = []> = [] extends T ? RemoveNever<R>[number] : RemoveEmptyObject<AfterFirst<T>, [
9142
+ ...R,
9143
+ First<T> extends Dictionary ? Equals<Keys<First<T>>["length"], number> extends true ? never : First<T> : First<T>
9144
+ ]>;
9145
+ /**
9146
+ * **UnionFilter**`<U, E>`
9147
+ *
9148
+ * A type utility which receives a union type `U` and then eliminates
9149
+ * all elements of the union which _extend_ `E`.
9150
+ *
9151
+ * **Note:** _this is very much like `Exclude<U,E>` utility but can handle
9152
+ * unions of containers as well as just scalar values._
9153
+ *
9154
+ * **Related:** `UnionRetain`
9155
+ */
9156
+ type UnionFilter<U, E> = [U] extends [never] ? never : IsUnion<U> extends true ? Some<UnionToTuple$1<E>, "extends", EmptyObject> extends true ? Exclude<RemoveEmptyObject<UnionToTuple$1<U>>, RemoveEmptyObject<UnionToTuple$1<E>>> : Exclude<U, E> : U;
9157
+
9064
9158
  /**
9065
9159
  * **UnionToIntersection**`<U>`
9066
9160
  *
@@ -11943,12 +12037,16 @@ declare function createCssKeyframe<TName extends string, TKeyframes extends CssK
11943
12037
  css: `@keyframes ${TName} ${FrameToCSS<HandleDoneFn<ReturnType<TKeyframes>>, {}>}`;
11944
12038
  };
11945
12039
 
12040
+ interface CssFromDefnOption {
12041
+ indent?: string;
12042
+ inline?: boolean;
12043
+ }
11946
12044
  /**
11947
- * **cssFromDefinition**`(defn, [indent], [inline])`
12045
+ * **cssFromDefinition**`(defn, [opt])`
11948
12046
  *
11949
12047
  * converts a `CssDefinition` into a CSS string
11950
12048
  */
11951
- declare function cssFromDefinition<T extends CssDefinition>(defn: T, indent?: string, inline?: boolean): string;
12049
+ declare function cssFromDefinition<T extends CssDefinition, O extends CssFromDefnOption>(defn: T, opt?: O): string;
11952
12050
  declare function defineCss<T extends CssDefinition>(defn: T): {
11953
12051
  defn: T;
11954
12052
  } & (<S extends string>(selector?: S) => string);
@@ -12478,6 +12576,16 @@ declare function createFixedLengthArray<T extends Narrowable, C extends number>(
12478
12576
 
12479
12577
  declare const filter = "NOT READY";
12480
12578
 
12579
+ type NotEmpty$1<T extends readonly unknown[], R extends readonly unknown[] = []> = [] extends T ? RemoveNever<R> : NotEmpty$1<AfterFirst<T>, [
12580
+ ...R,
12581
+ First<T> extends Empty ? never : UnionFilter<First<T>, Empty>
12582
+ ]>;
12583
+ /**
12584
+ * Filters an array/tuple down to elements which are _not empty_ and
12585
+ * preserves as much of the type as possible.
12586
+ */
12587
+ declare function filterEmpty<T extends readonly N[], N extends Narrowable>(...val: T): NotEmpty$1<T>;
12588
+
12481
12589
  /**
12482
12590
  * **Finder**
12483
12591
  *
@@ -14373,6 +14481,18 @@ declare function isEmail(val: unknown): val is Email;
14373
14481
  * - empty object
14374
14482
  */
14375
14483
  declare function isEmpty<T>(val: T): val is T & Empty;
14484
+ type NotEmpty<T> = UnionFilter<T, Empty> extends T ? UnionFilter<T, Empty> : T;
14485
+ /**
14486
+ * **isNotEmpty**(val)
14487
+ *
14488
+ * type guard which validates that `val` is **not** an `Empty` value:
14489
+ *
14490
+ * - `null` or `undefined`
14491
+ * - empty string
14492
+ * - empty array
14493
+ * - empty object
14494
+ */
14495
+ declare function isNotEmpty<T>(val: T): val is NotEmpty<T>;
14376
14496
 
14377
14497
  /**
14378
14498
  * **isErrorCondition**(value)
@@ -15502,4 +15622,4 @@ declare function isVueRef(val: unknown): val is VueRef;
15502
15622
  */
15503
15623
  declare function asVueRef<T extends Narrowable>(value: T): VueRef<T>;
15504
15624
 
15505
- export { type AsClassSelector, type AsList, type BoxValue, type BoxedFnParams, type ConfigRestApi, type CssKeyframeCallback, type CssSelectorOptions, type CsvFormat, type DictionaryWithValueFilter, type DictionaryWithoutValueFilter, type DoesExtendTypeguard, type EndingWithTypeGuard, type EndpointGenerator, type EqualTo, type Finder, type FnParam, type FnParams, type GenParam, type GenParams, type GetEachOptions, type GetInference, type GetInferenceProps, type GetOptions, type Joiner, type KeyframeApi, type Mapper, type Rtn, ShapeApiImplementation, type SingletonClosure, type StartingWithTypeGuard, type StripSurroundConfigured, type SurroundWith, type ToKeyValueSort, type TokenContainerClosure, type TokenFunctionClosure, type TokenSetClosure, type TypeOfTypeGuard, type Unbox, type UndefinedArrayIsUnknown, type UnionClosure, type UrlMeta, type YouTubeMeta, addFnToProps, addPropsToFn, and, asApi, asArray, asChars, asDate, asEscapeFunction, asIsoDate, asOptionalParamFunction, asPhoneFormat, asRecord, asString, asStringLiteral, asType, asTypeToken, asVueRef, box, boxDictionaryValues, capitalize, cardType, choices, createConverter, createCssKeyframe, createCssSelector, createErrorCondition, createFifoQueue, createFixedLengthArray, createFnWithProps, createFnWithPropsExplicit, createLifoQueue, createMapper, createObjectMap, createTypeToken, cssColor, cssFromDefinition, csv, defineCss, defineObj, defineObject, defineObjectApi, defineTuple, doesExtend, endsWith, ensureLeading, ensureSurround, ensureTrailing, entries, errCondition, filter, find, fnMeta, fromDefineObject, fromKeyValue, get, getDaysBetween, getEach, getPhoneCountryCode, getTailwindModifiers, getToday, getTokenKind, getTomorrow, getTypeSubtype, getUrlBase, getUrlDefaultPort, getUrlDynamics, getUrlPath, getUrlPort, getUrlProtocol, getUrlQueryParams, getUrlSource, getWeekNumber, getYesterday, getYouTubePageType, handleDoneFn, hasCountryCode, hasDefaultValue, hasIndexOf, hasKeys, hasOverlappingKeys, hasProtocol, hasProtocolPrefix, hasUrlPort, hasUrlQueryParameter, hasWhiteSpace, idLiteral, idTypeGuard, identity, ifArray, ifArrayPartial, ifBoolean, ifChar, ifContainer, ifDefined, ifFalse, ifFunction, ifHasKey, ifLength, ifLowercaseChar, ifNotNull, ifNull, ifNumber, ifObject, ifSameType, ifScalar, ifString, ifTrue, ifUndefined, ifUppercaseChar, indexOf, infer, intersect, intersection, ip6GroupExpansion, ip6Prefix, isAccelerationMetric, isAccelerationUom, isAlpha, isAmazonUrl, isAmericanExpress, isApi, isApiSurface, isAppleUrl, isAreaMetric, isAreaUom, isArray, isArrayToken, isAtomicKind, isAtomicToken, isAustralianNewsUrl, isBelgiumNewsUrl, isBestBuyUrl, isBitbucketUrl, isBoolean, isBooleanLike, isBox, isCanadianNewsUrl, isChineseNewsUrl, isCodeCommitUrl, isConstant, isContainer, isContainerToken, isCostCoUrl, isCountryAbbrev, isCountryCode2, isCountryCode3, isCountryName, isCreditCard, isCssAspectRatio, isCsv, isCurrentMetric, isCurrentUom, isCvsUrl, isDanishNewsUrl, isDate, isDefineObject, isDefined, isDellUrl, isDistanceMetric, isDistanceUom, isDomainName, isDoneFn, isDutchNewsUrl, isEbayUrl, isEmail, isEmpty, isEnergyMetric, isEnergyUom, isEqual, isErrorCondition, isEscapeFunction, isEtsyUrl, isFalse, isFalsy, isFnBasedKind, isFnBasedToken, isFnWithParams, isFrenchNewsUrl, isFrequencyMetric, isFrequencyUom, isFunction, isGermanNewsUrl, isGithubIssueUrl, isGithubIssuesListUrl, isGithubOrgUrl, isGithubProjectUrl, isGithubProjectsListUrl, isGithubReleaseTagUrl, isGithubReleasesListUrl, isGithubRepoReleaseTagUrl, isGithubRepoReleasesUrl, isGithubRepoUrl, isGithubUrl, isHexadecimal, isHmUrl, isHomeDepotUrl, isHtmlElement, isIkeaUrl, isIndexable, isIndianNewsUrl, isInlineSvg, isIp4Address, isIp6Address, isIpAddress, isIso3166Alpha2, isIso3166Alpha3, isIso3166CountryCode, isIso3166CountryName, isIsoDate, isIsoDateTime, isIsoExplicitDate, isIsoExplicitTime, isIsoImplicitDate, isIsoImplicitTime, isIsoTime, isIsoYear, isItalianNewsUrl, isJapaneseNewsUrl, isKrogersUrl, isLeapYear, isLength, isLikeRegExp, isLowesUrl, isLuminosityMetric, isLuminosityUom, isLuxonDateTime, isMacysUrl, isMap, isMapToken, isMassMetric, isMassUom, isMastercard, isMetric, isMexicanNewsUrl, isMoment, isNarrowableObject, isNever, isNewsUrl, isNikeUrl, isNorwegianNewsUrl, isNotNull, isNothing, isNull, isNumber, isNumberLike, isNumericArray, isNumericString, isObject, isObjectToken, isOptionalParamFunction, isPhoneNumber, isPowerMetric, isPowerUom, isPressureMetric, isPressureUom, isProtocol, isProtocolPrefix, isReadonlyArray, isRecordToken, isRef, isRegExp, isRepoSource, isRepoUrl, isResistance, isResistanceUom, isRetailUrl, isSameTypeOf, isScalar, isSemanticVersion, isSet, isSetBasedKind, isSetBasedToken, isSetContainer, isSetToken, isShape, isShapeCallback, isSimpleContainerToken, isSimpleContainerTokenTuple, isSimpleScalarToken, isSimpleScalarTokenTuple, isSimpleToken, isSimpleTokenTuple, isSingletonKind, isSingletonToken, isSocialMediaProfileUrl, isSocialMediaUrl, isSouthKoreanNewsUrl, isSpanishNewsUrl, isSpecificConstant, isSpeedMetric, isSpeedUom, isString, isStringArray, isSwissNewsUrl, isSymbol, isTailwindColor, isTailwindColorClass, isTailwindColorName, isTailwindColorTarget, isTailwindColorWithLuminosity, isTailwindColorWithLuminosityAndOpacity, isTailwindModifier, isTargetUrl, isTemperatureMetric, isTemperatureUom, isThenable, isThisMonth, isThisWeek, isThisYear, isTimeMetric, isTimeUom, isToday, isTomorrow, isTrimable, isTrue, isTruthy, isTuple, isTupleToken, isTurkishNewsUrl, isTypeOf, isTypeSubtype, isTypeToken, isTypeTokenKind, isTypeTuple, isUkNewsUrl, isUndefined, isUnset, isUom, isUri, isUrl, isUrlPath, isUrlSource, isUsNewsUrl, isUsPhoneNumber, isUsStateAbbreviation, isUsStateName, isVariable, isVisa, isVisaMastercard, isVoltageMetric, isVoltageUom, isVolumeMetric, isVolumeUom, isVueRef, isWalgreensUrl, isWalmartUrl, isWayfairUrl, isWholeFoodsUrl, isYesterday, isYouTubeCreatorUrl, isYouTubeFeedHistoryUrl, isYouTubeFeedUrl, isYouTubePlaylistUrl, isYouTubePlaylistsUrl, isYouTubeShareUrl, isYouTubeSubscriptionsUrl, isYouTubeTrendingUrl, isYouTubeUrl, isYouTubeVideoUrl, isYouTubeVideosInPlaylist, isZaraUrl, isZipCode, isZipCode5, isZipPlus4, joinWith, jsonValue, jsonValues, keysOf, kindLiteral, last, list, literal, logicalReturns, lookupCountryAlpha2, lookupCountryAlpha3, lookupCountryCode, lookupCountryName, lowercase, maybePhoneNumber, mergeObjects, mergeScalars, mergeTuples, nameLiteral, narrow, narrowObjectTo, narrowObjectToType, never, objectToApi, objectValues, omit, optional, optionalOrNull, or, orNull, pathJoin, pluralize, removePhoneCountryCode, removeTailwindModifiers, removeUrlProtocol, result, retain, retainAfter, retainAfterInclusive, retainChars, retainUntil, retainUntilInclusive, retainWhile, reverse, rightWhitespace, shape, sharedKeys, shift, simpleContainerToken, simpleContainerTokenToTypeToken, simpleContainerType, simpleScalarToken, simpleScalarTokenToTypeToken, simpleScalarType, simpleToken, simpleType, simpleUnionTokenToTypeToken, slice, split, startsWith, stripAfter, stripBefore, stripChars, stripLeading, stripParenthesis, stripSurround, stripTrailing, stripUntil, stripWhile, surround, takeNumericCharacters, takeProp, toCamelCase, toKebabCase, toKeyValue, toNumber, toNumericArray, toPascalCase, toSnakeCase, toString, toUppercase, trim, trimEnd, trimLeft, trimRight, trimStart, truncate, tuple, twColor, unbox, uncapitalize, union, unionize, unique, uniqueKeys, unset, uppercase, urlMeta, valuesOf, widen, withDefaults, withKeys, withValue, withoutKeys, withoutValue, wrapFn, youtubeEmbed, youtubeMeta };
15625
+ export { type AsClassSelector, type AsList, type BoxValue, type BoxedFnParams, type ConfigRestApi, type CssFromDefnOption, type CssKeyframeCallback, type CssSelectorOptions, type CsvFormat, type DictionaryWithValueFilter, type DictionaryWithoutValueFilter, type DoesExtendTypeguard, type EndingWithTypeGuard, type EndpointGenerator, type EqualTo, type Finder, type FnParam, type FnParams, type GenParam, type GenParams, type GetEachOptions, type GetInference, type GetInferenceProps, type GetOptions, type Joiner, type KeyframeApi, type Mapper, type Rtn, ShapeApiImplementation, type SingletonClosure, type StartingWithTypeGuard, type StripSurroundConfigured, type SurroundWith, type ToKeyValueSort, type TokenContainerClosure, type TokenFunctionClosure, type TokenSetClosure, type TypeOfTypeGuard, type Unbox, type UndefinedArrayIsUnknown, type UnionClosure, type UrlMeta, type YouTubeMeta, addFnToProps, addPropsToFn, and, asApi, asArray, asChars, asDate, asEscapeFunction, asIsoDate, asOptionalParamFunction, asPhoneFormat, asRecord, asString, asStringLiteral, asType, asTypeToken, asVueRef, box, boxDictionaryValues, capitalize, cardType, choices, createConverter, createCssKeyframe, createCssSelector, createErrorCondition, createFifoQueue, createFixedLengthArray, createFnWithProps, createFnWithPropsExplicit, createLifoQueue, createMapper, createObjectMap, createTypeToken, cssColor, cssFromDefinition, csv, defineCss, defineObj, defineObject, defineObjectApi, defineTuple, doesExtend, endsWith, ensureLeading, ensureSurround, ensureTrailing, entries, errCondition, filter, filterEmpty, find, fnMeta, fromDefineObject, fromKeyValue, get, getDaysBetween, getEach, getPhoneCountryCode, getTailwindModifiers, getToday, getTokenKind, getTomorrow, getTypeSubtype, getUrlBase, getUrlDefaultPort, getUrlDynamics, getUrlPath, getUrlPort, getUrlProtocol, getUrlQueryParams, getUrlSource, getWeekNumber, getYesterday, getYouTubePageType, handleDoneFn, hasCountryCode, hasDefaultValue, hasIndexOf, hasKeys, hasOverlappingKeys, hasProtocol, hasProtocolPrefix, hasUrlPort, hasUrlQueryParameter, hasWhiteSpace, idLiteral, idTypeGuard, identity, ifArray, ifArrayPartial, ifBoolean, ifChar, ifContainer, ifDefined, ifFalse, ifFunction, ifHasKey, ifLength, ifLowercaseChar, ifNotNull, ifNull, ifNumber, ifObject, ifSameType, ifScalar, ifString, ifTrue, ifUndefined, ifUppercaseChar, indexOf, infer, intersect, intersection, ip6GroupExpansion, ip6Prefix, isAccelerationMetric, isAccelerationUom, isAlpha, isAmazonUrl, isAmericanExpress, isApi, isApiSurface, isAppleUrl, isAreaMetric, isAreaUom, isArray, isArrayToken, isAtomicKind, isAtomicToken, isAustralianNewsUrl, isBelgiumNewsUrl, isBestBuyUrl, isBitbucketUrl, isBoolean, isBooleanLike, isBox, isCanadianNewsUrl, isChineseNewsUrl, isCodeCommitUrl, isConstant, isContainer, isContainerToken, isCostCoUrl, isCountryAbbrev, isCountryCode2, isCountryCode3, isCountryName, isCreditCard, isCssAspectRatio, isCsv, isCurrentMetric, isCurrentUom, isCvsUrl, isDanishNewsUrl, isDate, isDefineObject, isDefined, isDellUrl, isDistanceMetric, isDistanceUom, isDomainName, isDoneFn, isDutchNewsUrl, isEbayUrl, isEmail, isEmpty, isEnergyMetric, isEnergyUom, isEqual, isErrorCondition, isEscapeFunction, isEtsyUrl, isFalse, isFalsy, isFnBasedKind, isFnBasedToken, isFnWithParams, isFrenchNewsUrl, isFrequencyMetric, isFrequencyUom, isFunction, isGermanNewsUrl, isGithubIssueUrl, isGithubIssuesListUrl, isGithubOrgUrl, isGithubProjectUrl, isGithubProjectsListUrl, isGithubReleaseTagUrl, isGithubReleasesListUrl, isGithubRepoReleaseTagUrl, isGithubRepoReleasesUrl, isGithubRepoUrl, isGithubUrl, isHexadecimal, isHmUrl, isHomeDepotUrl, isHtmlElement, isIkeaUrl, isIndexable, isIndianNewsUrl, isInlineSvg, isIp4Address, isIp6Address, isIpAddress, isIso3166Alpha2, isIso3166Alpha3, isIso3166CountryCode, isIso3166CountryName, isIsoDate, isIsoDateTime, isIsoExplicitDate, isIsoExplicitTime, isIsoImplicitDate, isIsoImplicitTime, isIsoTime, isIsoYear, isItalianNewsUrl, isJapaneseNewsUrl, isKrogersUrl, isLeapYear, isLength, isLikeRegExp, isLowesUrl, isLuminosityMetric, isLuminosityUom, isLuxonDateTime, isMacysUrl, isMap, isMapToken, isMassMetric, isMassUom, isMastercard, isMetric, isMexicanNewsUrl, isMoment, isNarrowableObject, isNever, isNewsUrl, isNikeUrl, isNorwegianNewsUrl, isNotEmpty, isNotNull, isNothing, isNull, isNumber, isNumberLike, isNumericArray, isNumericString, isObject, isObjectToken, isOptionalParamFunction, isPhoneNumber, isPowerMetric, isPowerUom, isPressureMetric, isPressureUom, isProtocol, isProtocolPrefix, isReadonlyArray, isRecordToken, isRef, isRegExp, isRepoSource, isRepoUrl, isResistance, isResistanceUom, isRetailUrl, isSameTypeOf, isScalar, isSemanticVersion, isSet, isSetBasedKind, isSetBasedToken, isSetContainer, isSetToken, isShape, isShapeCallback, isSimpleContainerToken, isSimpleContainerTokenTuple, isSimpleScalarToken, isSimpleScalarTokenTuple, isSimpleToken, isSimpleTokenTuple, isSingletonKind, isSingletonToken, isSocialMediaProfileUrl, isSocialMediaUrl, isSouthKoreanNewsUrl, isSpanishNewsUrl, isSpecificConstant, isSpeedMetric, isSpeedUom, isString, isStringArray, isSwissNewsUrl, isSymbol, isTailwindColor, isTailwindColorClass, isTailwindColorName, isTailwindColorTarget, isTailwindColorWithLuminosity, isTailwindColorWithLuminosityAndOpacity, isTailwindModifier, isTargetUrl, isTemperatureMetric, isTemperatureUom, isThenable, isThisMonth, isThisWeek, isThisYear, isTimeMetric, isTimeUom, isToday, isTomorrow, isTrimable, isTrue, isTruthy, isTuple, isTupleToken, isTurkishNewsUrl, isTypeOf, isTypeSubtype, isTypeToken, isTypeTokenKind, isTypeTuple, isUkNewsUrl, isUndefined, isUnset, isUom, isUri, isUrl, isUrlPath, isUrlSource, isUsNewsUrl, isUsPhoneNumber, isUsStateAbbreviation, isUsStateName, isVariable, isVisa, isVisaMastercard, isVoltageMetric, isVoltageUom, isVolumeMetric, isVolumeUom, isVueRef, isWalgreensUrl, isWalmartUrl, isWayfairUrl, isWholeFoodsUrl, isYesterday, isYouTubeCreatorUrl, isYouTubeFeedHistoryUrl, isYouTubeFeedUrl, isYouTubePlaylistUrl, isYouTubePlaylistsUrl, isYouTubeShareUrl, isYouTubeSubscriptionsUrl, isYouTubeTrendingUrl, isYouTubeUrl, isYouTubeVideoUrl, isYouTubeVideosInPlaylist, isZaraUrl, isZipCode, isZipCode5, isZipPlus4, joinWith, jsonValue, jsonValues, keysOf, kindLiteral, last, list, literal, logicalReturns, lookupCountryAlpha2, lookupCountryAlpha3, lookupCountryCode, lookupCountryName, lowercase, maybePhoneNumber, mergeObjects, mergeScalars, mergeTuples, nameLiteral, narrow, narrowObjectTo, narrowObjectToType, never, objectToApi, objectValues, omit, optional, optionalOrNull, or, orNull, pathJoin, pluralize, removePhoneCountryCode, removeTailwindModifiers, removeUrlProtocol, result, retain, retainAfter, retainAfterInclusive, retainChars, retainUntil, retainUntilInclusive, retainWhile, reverse, rightWhitespace, shape, sharedKeys, shift, simpleContainerToken, simpleContainerTokenToTypeToken, simpleContainerType, simpleScalarToken, simpleScalarTokenToTypeToken, simpleScalarType, simpleToken, simpleType, simpleUnionTokenToTypeToken, slice, split, startsWith, stripAfter, stripBefore, stripChars, stripLeading, stripParenthesis, stripSurround, stripTrailing, stripUntil, stripWhile, surround, takeNumericCharacters, takeProp, toCamelCase, toKebabCase, toKeyValue, toNumber, toNumericArray, toPascalCase, toSnakeCase, toString, toUppercase, trim, trimEnd, trimLeft, trimRight, trimStart, truncate, tuple, twColor, unbox, uncapitalize, union, unionize, unique, uniqueKeys, unset, uppercase, urlMeta, valuesOf, widen, withDefaults, withKeys, withValue, withoutKeys, withoutValue, wrapFn, youtubeEmbed, youtubeMeta };
@@ -2192,15 +2192,17 @@ ${frameToCss(frames)}
2192
2192
  };
2193
2193
  }
2194
2194
 
2195
- // src/css/defineCss.ts
2196
- function cssFromDefinition(defn, indent = "", inline = false) {
2195
+ // src/css/cssFromDefinition.ts
2196
+ function cssFromDefinition(defn, opt) {
2197
+ const inline = isDefined(opt?.inline) ? opt.inline : true;
2198
+ const indent = isString(opt?.indent) ? opt.indent : "";
2197
2199
  const nextDefn = inline ? " " : "\n";
2198
- return Object.keys(defn).map((key) => `${indent}${key}: ${ensureTrailing(defn[key], ";")}${nextDefn}`).join("");
2200
+ return Object.keys(defn).map((key) => `${indent}${key}: ${ensureTrailing(defn[key], ";")}`).join(nextDefn);
2199
2201
  }
2200
2202
  function defineCss(defn) {
2201
2203
  const fn2 = (selector) => {
2202
2204
  return selector ? `${selector} {
2203
- ${cssFromDefinition(defn, " ")}}
2205
+ ${cssFromDefinition(defn, { indent: " " })}}
2204
2206
  ` : cssFromDefinition(defn);
2205
2207
  };
2206
2208
  return createFnWithProps(
@@ -2644,6 +2646,11 @@ function createFixedLengthArray(content, quantity) {
2644
2646
  // src/lists/filter.ts
2645
2647
  var filter = "NOT READY";
2646
2648
 
2649
+ // src/lists/filterEmpty.ts
2650
+ function filterEmpty(...val) {
2651
+ return val.filter((i) => isNotEmpty(i));
2652
+ }
2653
+
2647
2654
  // src/lists/find.ts
2648
2655
  function find(list2, deref = null) {
2649
2656
  return (comparator) => {
@@ -4526,6 +4533,9 @@ function isEmail(val) {
4526
4533
  function isEmpty(val) {
4527
4534
  return isUndefined(val) || isNull(val) || isString(val) && val.length === 0 || isObject(val) && Object.keys(val).length === 0 || isArray(val) && val.length === 0;
4528
4535
  }
4536
+ function isNotEmpty(val) {
4537
+ return !(isUndefined(val) || isNull(val) || isString(val) && val.length === 0 || isObject(val) && Object.keys(val).length === 0 || isArray(val) && (val?.length === 0 || val?.length === void 0));
4538
+ }
4529
4539
 
4530
4540
  // src/type-guards/isErrorCondition.ts
4531
4541
  function isErrorCondition(value, kind = null) {
@@ -5685,6 +5695,7 @@ export {
5685
5695
  entries,
5686
5696
  errCondition,
5687
5697
  filter,
5698
+ filterEmpty,
5688
5699
  find,
5689
5700
  fnMeta,
5690
5701
  fromDefineObject,
@@ -5875,6 +5886,7 @@ export {
5875
5886
  isNewsUrl,
5876
5887
  isNikeUrl,
5877
5888
  isNorwegianNewsUrl,
5889
+ isNotEmpty,
5878
5890
  isNotNull,
5879
5891
  isNothing,
5880
5892
  isNull,