@tenphi/tasty 2.11.1 → 3.0.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.
Files changed (76) hide show
  1. package/README.md +32 -7
  2. package/dist/astro-B53trJyX.js +156 -0
  3. package/dist/astro-B53trJyX.js.map +1 -0
  4. package/dist/babel-HlEpSZrj.d.ts +83 -0
  5. package/dist/{collector-DYA5AOwr.d.ts → collector-BPzZezAG.d.ts} +44 -7
  6. package/dist/{collector-AHZaBSv8.js → collector-D14DcZx9.js} +75 -14
  7. package/dist/collector-D14DcZx9.js.map +1 -0
  8. package/dist/{config-YDAcLaVf.js → config-CCcE_tqx.js} +2312 -1131
  9. package/dist/config-CCcE_tqx.js.map +1 -0
  10. package/dist/{config-BtK9fUaz.d.ts → config-D2INrjr_.d.ts} +252 -25
  11. package/dist/core/index.d.ts +5 -5
  12. package/dist/core/index.js +6 -6
  13. package/dist/{core-CS4bzqGu.js → core-B5d0IPi2.js} +85 -133
  14. package/dist/core-B5d0IPi2.js.map +1 -0
  15. package/dist/{css-writer-BXSANVrq.js → css-writer-B5DBoxhf.js} +54 -15
  16. package/dist/css-writer-B5DBoxhf.js.map +1 -0
  17. package/dist/{format-rules-CYriCDwq.js → format-rules-BbKDjsfO.js} +2 -2
  18. package/dist/{format-rules-CYriCDwq.js.map → format-rules-BbKDjsfO.js.map} +1 -1
  19. package/dist/{hydrate-GVTorHpU.js → hydrate-CwALW3J9.js} +3 -11
  20. package/dist/{hydrate-GVTorHpU.js.map → hydrate-CwALW3J9.js.map} +1 -1
  21. package/dist/{index-BYtnj_gA.d.ts → index-BAAbdfRs.d.ts} +228 -153
  22. package/dist/{index-B9ih23uv.d.ts → index-l_NdJSUS.d.ts} +172 -61
  23. package/dist/index.d.ts +5 -5
  24. package/dist/index.js +191 -56
  25. package/dist/index.js.map +1 -1
  26. package/dist/{keyframes-CtcSlw4k.js → keyframes-B8M1FmtE.js} +10 -181
  27. package/dist/keyframes-B8M1FmtE.js.map +1 -0
  28. package/dist/{merge-styles-D4ITH4bc.js → merge-styles--1zOSFlS.js} +2 -2
  29. package/dist/{merge-styles-D4ITH4bc.js.map → merge-styles--1zOSFlS.js.map} +1 -1
  30. package/dist/{merge-styles-BZV-XAwX.d.ts → merge-styles-NEvqayL_.d.ts} +2 -2
  31. package/dist/{resolve-recipes-llr0COs8.js → resolve-recipes-Caix5NnH.js} +3 -3
  32. package/dist/{resolve-recipes-llr0COs8.js.map → resolve-recipes-Caix5NnH.js.map} +1 -1
  33. package/dist/ssr/astro-client.js +1 -1
  34. package/dist/ssr/astro-middleware.js +1 -1
  35. package/dist/ssr/astro-middleware.js.map +1 -1
  36. package/dist/ssr/astro.d.ts +1 -5
  37. package/dist/ssr/astro.js +2 -147
  38. package/dist/ssr/index.d.ts +2 -9
  39. package/dist/ssr/index.js +4 -4
  40. package/dist/ssr/index.js.map +1 -1
  41. package/dist/ssr/next.d.ts +1 -1
  42. package/dist/ssr/next.js +5 -6
  43. package/dist/ssr/next.js.map +1 -1
  44. package/dist/static/index.d.ts +2 -2
  45. package/dist/static/index.js +1 -1
  46. package/dist/zero/babel.d.ts +2 -80
  47. package/dist/zero/babel.js +27 -23
  48. package/dist/zero/babel.js.map +1 -1
  49. package/dist/zero/index.d.ts +16 -2
  50. package/dist/zero/index.js +2 -2
  51. package/dist/zero/next.d.ts +1 -1
  52. package/dist/zero/next.js +1 -1
  53. package/dist/zero/next.js.map +1 -1
  54. package/docs/README.md +3 -1
  55. package/docs/ai-agents.md +21 -7
  56. package/docs/configuration.md +220 -30
  57. package/docs/debug.md +7 -7
  58. package/docs/design-system.md +2 -2
  59. package/docs/dsl.md +68 -8
  60. package/docs/injector.md +46 -4
  61. package/docs/methodology.md +1 -1
  62. package/docs/migration-v3.md +285 -0
  63. package/docs/pipeline.md +3 -3
  64. package/docs/plugins.md +349 -0
  65. package/docs/react-api.md +82 -3
  66. package/docs/ssr.md +40 -33
  67. package/docs/styles.md +27 -9
  68. package/docs/tasty-static.md +8 -6
  69. package/package.json +7 -7
  70. package/tasty.config.ts +4 -0
  71. package/dist/collector-AHZaBSv8.js.map +0 -1
  72. package/dist/config-YDAcLaVf.js.map +0 -1
  73. package/dist/core-CS4bzqGu.js.map +0 -1
  74. package/dist/css-writer-BXSANVrq.js.map +0 -1
  75. package/dist/keyframes-CtcSlw4k.js.map +0 -1
  76. package/dist/ssr/astro.js.map +0 -1
@@ -1,6 +1,6 @@
1
- import { Dt as StyleInjectorConfig, I as StyleValue, L as StyleValueStateMap, b as Styles, bt as KeyframesResult, ct as CacheMetrics, dt as FontFaceDescriptors, ft as FontFaceInput, gt as InjectResult, ht as GlobalInjectResult, it as StyleDetails, lt as CounterStyleDescriptors, mt as GCOptions, n as StyleResult, st as CSSProperties$1, x as StylesInterface, xt as KeyframesSteps } from "./index-B9ih23uv.js";
2
- import { g as TastyPluginFactory, x as StyleInjector } from "./config-BtK9fUaz.js";
3
- import { t as ServerStyleCollector } from "./collector-DYA5AOwr.js";
1
+ import { _ as TastyPluginFactory, w as StyleInjector } from "./config-D2INrjr_.js";
2
+ import { B as StyleValueStateMap, Ct as PropertyOptions, D as CSSMap, I as StyleHandlerResult, M as ResolvedStyleValue, Ot as StyleInjectorConfig, R as StylePropValue, at as CSSProperties$1, b as Styles, bt as KeyframesResult, dt as FunctionDefinition, gt as InjectResult, ht as GlobalInjectResult, j as RawStyleHandler, lt as FontFaceDescriptors, mt as GCOptions, n as StyleResult, nt as StyleDetails, ot as CacheMetrics, st as CounterStyleDescriptors, ut as FontFaceInput, x as StylesInterface, xt as KeyframesSteps, z as StyleValue } from "./index-l_NdJSUS.js";
3
+ import { t as ServerStyleCollector } from "./collector-BPzZezAG.js";
4
4
  import { AllHTMLAttributes, CSSProperties, ComponentType, ElementType, ForwardRefExoticComponent, JSX, PropsWithoutRef, RefAttributes } from "react";
5
5
 
6
6
  //#region src/utils/name-prefix.d.ts
@@ -44,9 +44,6 @@ declare const OUTER_STYLES: readonly ["gridArea", "order", "gridColumn", "gridRo
44
44
  declare const INNER_STYLES: readonly ["display", "font", "preset", "hide", "whiteSpace", "opacity", "transition", "color", "fill", "fade", "image", "padding", "paddingInline", "paddingBlock", "overflow", "scrollbar", "textAlign", "flow", "place", "placeItems", "placeContent", "alignItems", "alignContent", "justifyItems", "justifyContent", "align", "justify", "gap", "columnGap", "rowGap", "gridColumns", "gridRows", "gridTemplate", "gridAreas"];
45
45
  //#endregion
46
46
  //#region src/types.d.ts
47
- interface GlobalStyledProps {
48
- breakpoints?: number[];
49
- }
50
47
  /**
51
48
  * Extensible interface for theme names.
52
49
  * Augment this interface to register project-specific theme names for autocomplete.
@@ -64,6 +61,42 @@ interface GlobalStyledProps {
64
61
  interface TastyThemeNames {}
65
62
  type ThemeNameKey = Extract<keyof TastyThemeNames, string>;
66
63
  type ThemeName = [ThemeNameKey] extends [never] ? string : ThemeNameKey;
64
+ /**
65
+ * Extensible interface for custom props added via `configure({ propHandlers })`.
66
+ * Augment it to type those props on every tasty component.
67
+ *
68
+ * @example
69
+ * ```typescript
70
+ * declare module '@tenphi/tasty' {
71
+ * interface TastyCustomProps {
72
+ * glaze: 'soft' | 'strong' | { tone: string; intensity?: number };
73
+ * }
74
+ * }
75
+ * ```
76
+ */
77
+ interface TastyCustomProps {}
78
+ /**
79
+ * Extensible interface for style names promoted via
80
+ * `configure({ baseStyleProps })`. Set each name to `true`; the prop is then typed
81
+ * exactly like the style it names.
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * declare module '@tenphi/tasty' {
86
+ * interface TastyBaseStylePropNames {
87
+ * radius: true;
88
+ * shadow: true;
89
+ * }
90
+ * }
91
+ * ```
92
+ */
93
+ interface TastyBaseStylePropNames {}
94
+ /**
95
+ * Props contributed by `configure({ baseStyleProps })`, each typed like the style
96
+ * it names. Intersecting with `keyof StylesInterface` makes a name that isn't a
97
+ * real style inert rather than `never`-typed.
98
+ */
99
+ type ExtraBaseStyleProps = { [key in keyof TastyBaseStylePropNames & keyof StylesInterface]?: StylePropValue<StylesInterface[key]> };
67
100
  /** Allowed mod value types */
68
101
  type ModValue = boolean | string | number | undefined | null;
69
102
  /**
@@ -101,20 +134,14 @@ interface BasePropsWithoutChildren<K extends TagName = TagName> extends Pick<All
101
134
  element?: `${Caps}${string}`;
102
135
  /** The style map */
103
136
  styles?: Styles;
104
- /** The list of responsive points in pixels */
105
- breakpoints?: number[];
106
- /** Whether the element has the block layout outside */
107
- block?: boolean;
108
- /** Whether the element has the inline layout outside */
109
- inline?: boolean;
110
137
  /** The list of element modifiers **/
111
138
  mods?: Mods;
112
139
  /** Whether the element is hidden (`hidden` attribute is set) */
113
140
  isHidden?: boolean;
114
141
  /** Whether the element is disabled (`disabled` attribute is set) */
115
142
  isDisabled?: boolean;
116
- /** Plain css for the element */
117
- css?: string;
143
+ /** Whether the element is checked (`checked` attribute is set) */
144
+ isChecked?: boolean;
118
145
  /** The CSS style map */
119
146
  style?: CSSProperties$1 | (CSSProperties$1 & Record<string, string | number | null | undefined>);
120
147
  /** User-defined theme for the element. Mapped to `data-theme` attribute. Augment `TastyThemeNames` to register project-specific themes for autocomplete. */
@@ -142,7 +169,6 @@ interface ShortGridStyles {
142
169
  rows?: Styles['gridRows'];
143
170
  areas?: Styles['gridAreas'];
144
171
  }
145
- type Props = Record<string, any>;
146
172
  type TagName = keyof HTMLElementTagNameMap;
147
173
  /**
148
174
  * Configuration type for tasty.config.ts files.
@@ -187,7 +213,7 @@ interface TastyExtensionConfig {
187
213
  * Set to `false` to disable function validation (overrides parent).
188
214
  * @example ['clamp', 'double']
189
215
  */
190
- funcs?: false | string[];
216
+ functions?: false | string[];
191
217
  /**
192
218
  * State alias names for autocomplete.
193
219
  * Must start with @ prefix.
@@ -244,9 +270,10 @@ type TokenPropsMap = Readonly<Record<string, TokenPropKey>>;
244
270
  type TokenPropsInput = TokenPropsList | TokenPropsMap;
245
271
  /** Resolve a `tokenProps` definition to the component prop types it adds. */
246
272
  type ResolveTokenProps<TP extends TokenPropsInput> = TP extends readonly (infer K)[] ? Partial<Record<K & string, TokenValue>> : TP extends Record<string, TokenPropKey> ? Partial<Record<keyof TP & string, TokenValue>> : {};
273
+ type AnyProps = Record<string, any>;
247
274
  type PropsWithStyles = {
248
275
  styles?: Styles;
249
- } & Omit<Props, 'styles'>;
276
+ } & Omit<Record<string, any>, 'styles'>;
250
277
  type VariantMap = Record<string, Styles>;
251
278
  interface WithVariant<V extends VariantMap> {
252
279
  variant?: keyof V;
@@ -303,7 +330,7 @@ type TastyBaseProps<K extends StyleList, V extends VariantMap, E extends Element
303
330
  tokens?: Tokens; /** Sub-element definitions for compound components */
304
331
  elements?: E;
305
332
  } & Pick<BaseProps, 'qa' | 'qaVal'> & WithVariant<V>;
306
- type TastyProps<K extends StyleList, V extends VariantMap, E extends ElementsDefinition = Record<string, never>, DefaultProps = Props, M extends ModPropsInput = readonly never[], TP extends TokenPropsInput = readonly never[]> = TastyBaseProps<K, V, E, M, TP> & {
333
+ type TastyProps<K extends StyleList, V extends VariantMap, E extends ElementsDefinition = Record<string, never>, DefaultProps = AnyProps, M extends ModPropsInput = readonly never[], TP extends TokenPropsInput = readonly never[]> = TastyBaseProps<K, V, E, M, TP> & {
307
334
  /** The tag name of the element or a React component. */as?: string | ComponentType<any>;
308
335
  } & Partial<Omit<DefaultProps, 'as' | 'styles' | 'styleProps' | 'modProps' | 'tokenProps' | 'tokens'>>;
309
336
  /**
@@ -319,18 +346,18 @@ type ResolveAsProps<AsType extends ElementType> = AsType extends keyof JSX.Intri
319
346
  * element type from the `as` prop — both for intrinsic tags and for React
320
347
  * components (so the wrapped component's prop API is preserved).
321
348
  *
322
- * Note: Uses a separate index signature with `unknown` instead of inheriting
323
- * from Props (which has `any`) to ensure strict type checking for styles.
349
+ * Note: Uses a separate index signature with `unknown` instead of an `any`
350
+ * record to ensure strict type checking for styles.
324
351
  */
325
352
  type TastyElementOptions<K extends StyleList, V extends VariantMap, E extends ElementsDefinition = Record<string, never>, AsType extends ElementType = 'div', M extends ModPropsInput = readonly never[], TP extends TokenPropsInput = readonly never[]> = TastyBaseProps<K, V, E, M, TP> & {
326
353
  /** The tag name of the element or a React component. */as?: AsType;
327
354
  } & Record<string, unknown>;
328
- type AllBasePropsWithMods<K extends StyleList, M extends ModPropsInput = readonly never[], TP extends TokenPropsInput = readonly never[]> = AllBaseProps & { [key in K[number]]?: StyleValue<StylesInterface[key]> | StyleValueStateMap<StylesInterface[key]> } & BaseStyleProps & ResolveModProps<M> & ResolveTokenProps<TP>;
355
+ type AllBasePropsWithMods<K extends StyleList, M extends ModPropsInput = readonly never[], TP extends TokenPropsInput = readonly never[]> = AllBaseProps & { [key in K[number]]?: StyleValue<StylesInterface[key]> | StyleValueStateMap<StylesInterface[key]> } & BaseStyleProps & ExtraBaseStyleProps & Partial<TastyCustomProps> & ResolveModProps<M> & ResolveTokenProps<TP>;
329
356
  /**
330
357
  * Keys from BasePropsWithoutChildren that should be omitted from HTML attributes.
331
358
  * This excludes event handlers so they can be properly typed from JSX.IntrinsicElements.
332
359
  */
333
- type TastySpecificKeys = 'as' | 'qa' | 'qaVal' | 'element' | 'styles' | 'breakpoints' | 'block' | 'inline' | 'mods' | 'isHidden' | 'isDisabled' | 'css' | 'style' | 'theme' | 'tokens' | 'ref' | 'color';
360
+ type TastySpecificKeys = 'as' | 'qa' | 'qaVal' | 'element' | 'styles' | 'mods' | 'isHidden' | 'isDisabled' | 'isChecked' | 'style' | 'theme' | 'tokens' | 'ref' | 'color';
334
361
  /** Extract prop key names from a ModPropsInput (array elements or object keys). */
335
362
  type ModPropsKeys<M extends ModPropsInput> = M extends readonly (infer K)[] ? K & string : keyof M & string;
336
363
  /** Extract prop key names from a TokenPropsInput (array elements or object keys). */
@@ -351,7 +378,7 @@ type TokenPropsKeys<TP extends TokenPropsInput> = TP extends readonly (infer K)[
351
378
  * baseline is preserved so generic HTML attributes still work even when `as`
352
379
  * is a component type with a narrower prop API.
353
380
  */
354
- type TastyElementProps<K extends StyleList, V extends VariantMap, AsType extends ElementType = 'div', M extends ModPropsInput = readonly never[], TP extends TokenPropsInput = readonly never[]> = Omit<AllBasePropsWithMods<K, M, TP>, Exclude<keyof ResolveAsProps<AsType>, TastySpecificKeys | K[number] | ModPropsKeys<M> | TokenPropsKeys<TP>>> & WithVariant<V> & Omit<Omit<AllHTMLAttributes<HTMLElement>, keyof ResolveAsProps<AsType>> & ResolveAsProps<AsType>, TastySpecificKeys | K[number] | ModPropsKeys<M> | TokenPropsKeys<TP>>;
381
+ type TastyElementProps<K extends StyleList, V extends VariantMap, AsType extends ElementType = 'div', M extends ModPropsInput = readonly never[], TP extends TokenPropsInput = readonly never[]> = Omit<AllBasePropsWithMods<K, M, TP>, Exclude<keyof ResolveAsProps<AsType>, TastySpecificKeys | keyof TastyCustomProps | keyof ExtraBaseStyleProps | K[number] | ModPropsKeys<M> | TokenPropsKeys<TP>>> & WithVariant<V> & Omit<Omit<AllHTMLAttributes<HTMLElement>, keyof ResolveAsProps<AsType>> & ResolveAsProps<AsType>, TastySpecificKeys | keyof TastyCustomProps | keyof ExtraBaseStyleProps | K[number] | ModPropsKeys<M> | TokenPropsKeys<TP>>;
355
382
  type TastyComponentPropsWithDefaults<Props extends PropsWithStyles, DefaultProps extends Partial<Props>> = keyof DefaultProps extends never ? Props : { [key in Extract<keyof Props, keyof DefaultProps>]?: Props[key] } & { [key in keyof Omit<Props, keyof DefaultProps>]: Props[key] };
356
383
  /**
357
384
  * The component type returned by the `tasty(options)` element-factory overload.
@@ -372,11 +399,6 @@ declare function tasty<Props extends PropsWithStyles, DefaultProps extends Parti
372
399
  declare const Element$1: TastyPolymorphicComponent<"div", StyleList, VariantMap, readonly never[], readonly never[]> & SubElementComponents<Record<string, never>>;
373
400
  //#endregion
374
401
  //#region src/hooks/useStyles.d.ts
375
- /**
376
- * Tasty styles object to generate CSS classes for.
377
- * Can be undefined or empty object for no styles.
378
- */
379
- type UseStylesOptions = Styles | undefined;
380
402
  interface UseStylesResult {
381
403
  /**
382
404
  * Generated className(s) to apply to the element.
@@ -405,7 +427,7 @@ interface UseStylesResult {
405
427
  * }
406
428
  * ```
407
429
  */
408
- declare function useStyles(styles: UseStylesOptions, options?: {
430
+ declare function useStyles(styles: Styles | undefined, options?: {
409
431
  root?: Document | ShadowRoot;
410
432
  }): UseStylesResult;
411
433
  //#endregion
@@ -434,6 +456,10 @@ interface UseGlobalStylesOptions {
434
456
  * Use the `id` option for update tracking when styles change over the
435
457
  * component lifecycle.
436
458
  *
459
+ * Update tracking is per-slot and per-root: a slot (`id`, or the selector when
460
+ * no `id` is given) holds exactly one injection per `root`. Changing the styles
461
+ * replaces it; rendering styles that produce no CSS clears it.
462
+ *
437
463
  * @param selector - CSS selector to apply styles to (e.g., '.my-class', ':root', 'body')
438
464
  * @param styles - Tasty styles object
439
465
  * @param options - Optional settings including `id` for update tracking
@@ -456,9 +482,8 @@ declare function useGlobalStyles(selector: string, styles?: Styles, options?: Us
456
482
  //#region src/hooks/useRawCSS.d.ts
457
483
  interface UseRawCSSOptions {
458
484
  /**
459
- * Shadow root or document to inject into.
460
- * Note: `root` is not part of the update-tracking comparison changing
461
- * only the root for the same id/content will not re-inject.
485
+ * Shadow root or document to inject into. Update tracking is per-root: the
486
+ * same id in two roots holds a separate injection in each.
462
487
  */
463
488
  root?: Document | ShadowRoot;
464
489
  /**
@@ -484,6 +509,11 @@ interface UseKeyframesOptions {
484
509
  *
485
510
  * Works in all environments: client, SSR with collector, and React Server Components.
486
511
  *
512
+ * Passing `name` claims a slot owned by that one call site (like `useRawCSS`'s
513
+ * `id`): when its steps change, the previous injection is disposed and the name
514
+ * is reused, so the rules don't accumulate. Anonymous keyframes are permanent
515
+ * and shared by content.
516
+ *
487
517
  * @example Basic usage - steps object is the dependency
488
518
  * ```tsx
489
519
  * function MyComponent() {
@@ -528,28 +558,11 @@ declare function useKeyframes(steps: KeyframesSteps, options?: UseKeyframesOptio
528
558
  declare function useKeyframes(factory: () => KeyframesSteps, deps: readonly unknown[], options?: UseKeyframesOptions): string;
529
559
  //#endregion
530
560
  //#region src/hooks/useProperty.d.ts
531
- interface UsePropertyOptions {
532
- /**
533
- * CSS syntax string for the property (e.g., '<color>', '<length>', '<angle>').
534
- * For color tokens (#name), this is auto-set to '<color>' and cannot be overridden.
535
- * @see https://developer.mozilla.org/en-US/docs/Web/CSS/@property/syntax
536
- */
537
- syntax?: string;
538
- /**
539
- * Whether the property inherits from parent elements
540
- * @default true
541
- */
542
- inherits?: boolean;
543
- /**
544
- * Initial value for the property.
545
- * For color tokens (#name), this defaults to 'transparent' if not specified.
546
- */
547
- initialValue?: string | number;
548
- /**
549
- * Shadow root or document to inject into
550
- */
551
- root?: Document | ShadowRoot;
552
- }
561
+ /**
562
+ * Options for {@link useProperty}. Extends the shared {@link PropertyOptions}
563
+ * (which is `PropertyDefinition` plus an optional injection `root`).
564
+ */
565
+ type UsePropertyOptions = PropertyOptions;
553
566
  /**
554
567
  * Register a CSS @property custom property.
555
568
  * This enables advanced features like animating custom properties.
@@ -679,6 +692,42 @@ interface UseCounterStyleOptions {
679
692
  */
680
693
  declare function useCounterStyle(descriptors: CounterStyleDescriptors, options?: UseCounterStyleOptions): string;
681
694
  //#endregion
695
+ //#region src/hooks/useFunction.d.ts
696
+ interface UseFunctionOptions {
697
+ /** Shadow root or document to inject into. */
698
+ root?: Document | ShadowRoot;
699
+ }
700
+ /**
701
+ * Register a CSS @function (custom function).
702
+ *
703
+ * @function rules are global and persistent once defined. The hook ensures the
704
+ * function is only registered once per root (deduplicated by function name).
705
+ *
706
+ * Accepts tasty token syntax for the function name:
707
+ * - `$$name` → defines `--name` (matches the call site `$$name(...)`)
708
+ * - `$name` / `--name` → also accepted
709
+ *
710
+ * Works in all environments: client, SSR with collector, and React Server Components.
711
+ *
712
+ * @param name - The function name token (`$$name`, `$name`, or `--name`)
713
+ * @param definition - Function definition (args, returns, result, local vars)
714
+ *
715
+ * Call the function through the Tasty DSL, not a raw `style` prop: an inline
716
+ * `style` value reaches the browser unparsed, so the `$$name(...)` sugar is never
717
+ * expanded and `polyfills.functions` cannot rewrite it either.
718
+ *
719
+ * @example
720
+ * ```tsx
721
+ * const Box = tasty({ styles: { marginTop: '$$negative(10px)' } });
722
+ *
723
+ * function Layout() {
724
+ * useFunction('$$negative', { args: ['$value'], result: '(-1 * $value)' });
725
+ * return <Box />;
726
+ * }
727
+ * ```
728
+ */
729
+ declare function useFunction(name: string, definition: FunctionDefinition, options?: UseFunctionOptions): void;
730
+ //#endregion
682
731
  //#region src/utils/get-display-name.d.ts
683
732
  declare function getDisplayName<T>(Component: ElementType<T>, fallbackName?: string): string;
684
733
  //#endregion
@@ -692,7 +741,7 @@ declare module './utils/css-types' {
692
741
  * The okhsl function handler for tasty parser.
693
742
  * Receives parsed style groups and returns an RGB color string.
694
743
  */
695
- declare const okhslFunc: (groups: StyleDetails[]) => string;
744
+ declare const okhslFunction: (groups: StyleDetails[]) => string;
696
745
  /**
697
746
  * OKHSL Plugin for Tasty.
698
747
  *
@@ -722,7 +771,7 @@ declare const okhslPlugin: TastyPluginFactory;
722
771
  * The okhst function handler for tasty parser.
723
772
  * Receives parsed style groups and returns an RGB color string.
724
773
  */
725
- declare const okhstFunc: (groups: StyleDetails[]) => string;
774
+ declare const okhstFunction: (groups: StyleDetails[]) => string;
726
775
  /**
727
776
  * OKHST Plugin for Tasty.
728
777
  *
@@ -747,47 +796,69 @@ declare const okhstFunc: (groups: StyleDetails[]) => string;
747
796
  */
748
797
  declare const okhstPlugin: TastyPluginFactory;
749
798
  //#endregion
750
- //#region src/chunks/definitions.d.ts
799
+ //#region src/plugins/color-func.d.ts
751
800
  /**
752
- * Style chunk definitions for CSS chunking optimization.
753
- *
754
- * Styles are grouped into chunks based on:
755
- * 1. Handler dependencies - styles that share a handler MUST be in the same chunk
756
- * 2. Logical grouping - related styles grouped for better cache reuse
801
+ * Creates a color function handler for the tasty parser.
757
802
  *
758
- * See STYLE_CHUNKING_SPEC.md for detailed rationale.
803
+ * A color function is a custom `functions` entry that converts its arguments
804
+ * to an `rgb(...)` string (an already-supported color), so it needs no special
805
+ * core integration — registering it as a parse function is enough.
759
806
  *
760
- * ============================================================================
761
- * ⚠️ CRITICAL ARCHITECTURAL CONSTRAINT: NO CROSS-CHUNK HANDLER DEPENDENCIES
762
- * ============================================================================
807
+ * @param name The name of the color function (e.g., 'okhsl', 'okhst')
808
+ * @param convert Converts the parsed first three channel values (after angle/
809
+ * percent normalization) to sRGB `[r, g, b]` in the 0-1 range
810
+ * @param label Optional diagnostic label shown in dev warnings when the wrong
811
+ * number of arguments is supplied (e.g., 'H S L'). Has no effect on parsing
812
+ * or output.
813
+ */
814
+ declare function createColorFunc(name: string, convert: (h: number, c2: number, c3: number) => [number, number, number], label?: string): (groups: StyleDetails[]) => string;
815
+ //#endregion
816
+ //#region src/utils/function-color.d.ts
817
+ /**
818
+ * Resolve a `name(...)` value produced by a registered custom parse function
819
+ * into its concrete color output.
763
820
  *
764
- * Style handlers declare their dependencies via `__lookupStyles` array.
765
- * This creates a dependency graph where handlers read multiple style props.
821
+ * A color function is just a `functions` entry whose output is an already
822
+ * supported color (`rgb`, `hsl`, `#…`, `oklch`, …). This helper delegates the
823
+ * value to the global parser (which already runs the registered parse function)
824
+ * and returns the result only when it looks like a color. Returns `null` when
825
+ * `str` is not a registered custom function or its output is not a color.
766
826
  *
767
- * **ALL styles in a handler's `__lookupStyles` MUST be in the SAME chunk.**
827
+ * This is the generic replacement for the previously hardcoded okhsl/okhst
828
+ * conversion branches scattered across `strToRgb`, `resolveToRgbaValues`, and
829
+ * the `#token.alpha` injection path.
830
+ */
831
+ declare function resolveFunctionColor(str: string): string | null;
832
+ //#endregion
833
+ //#region src/chunks/style-chunk-map.d.ts
834
+ /**
835
+ * Chunk names, the built-in chunk style lists, and the style→chunk lookup.
768
836
  *
769
- * Why this matters:
770
- * 1. Each chunk computes a cache key from ONLY its own style values
771
- * 2. If a handler reads a style from another chunk, that value isn't in the cache key
772
- * 3. Changing the cross-chunk style won't invalidate this chunk's cache
773
- * 4. Result: stale CSS output or incorrect cache hits
837
+ * This is a **leaf module with no imports**. It exists separately from
838
+ * `definitions.ts` for two reasons:
774
839
  *
775
- * Example of a violation:
776
- * ```
777
- * // flowStyle.__lookupStyles = ['display', 'flow']
778
- * // If 'display' is in DISPLAY chunk and 'flow' is in LAYOUT chunk:
779
- * // - User sets { display: 'grid', flow: 'column' }
780
- * // - LAYOUT chunk caches CSS with flow=column, display=grid
781
- * // - User changes to { display: 'flex', flow: 'column' }
782
- * // - LAYOUT chunk cache key unchanged (only has 'flow')
783
- * // - Returns stale CSS computed with display=grid!
784
- * ```
840
+ * 1. The style handler registry (`styles/predefined.ts`) needs to assign chunk
841
+ * membership for custom handlers. Reaching for `definitions.ts` would create an
842
+ * import cycle (`definitions` -> `pipeline` -> `styles` -> `predefined`).
843
+ * 2. `STYLE_TO_CHUNK` is populated as a side effect of module load, so it must be
844
+ * populated by the module that *owns* it. Otherwise an importer that only pulls
845
+ * in this module would see an empty map and misclassify every style as `misc`.
785
846
  *
786
- * Before adding/moving styles, verify:
787
- * 1. Find all handlers that use this style (grep for the style name in __lookupStyles)
788
- * 2. Ensure ALL styles from each handler's __lookupStyles are in the same chunk
789
- * ============================================================================
847
+ * `definitions.ts` re-exports everything here, so existing import paths and the
848
+ * public API surface are unchanged.
790
849
  */
850
+ declare const CHUNK_NAMES: {
851
+ /** Special chunk for styles that cannot be split */readonly COMBINED: "combined";
852
+ readonly SUBCOMPONENTS: "subcomponents";
853
+ readonly APPEARANCE: "appearance";
854
+ readonly FONT: "font";
855
+ readonly DIMENSION: "dimension";
856
+ readonly DISPLAY: "display";
857
+ readonly LAYOUT: "layout";
858
+ readonly POSITION: "position";
859
+ readonly MISC: "misc";
860
+ };
861
+ type ChunkName = (typeof CHUNK_NAMES)[keyof typeof CHUNK_NAMES];
791
862
  /**
792
863
  * Appearance chunk - visual styling with independent handlers
793
864
  *
@@ -841,24 +912,15 @@ declare const LAYOUT_CHUNK_STYLES: readonly ["placeItems", "placeContent", "alig
841
912
  */
842
913
  /** @public */
843
914
  declare const POSITION_CHUNK_STYLES: readonly ["position", "inset", "insetBlock", "insetInline", "top", "right", "bottom", "left", "zIndex", "gridArea", "gridColumn", "gridRow", "order", "placeSelf", "alignSelf", "justifySelf", "transform", "transition", "animation"];
844
- declare const CHUNK_NAMES: {
845
- /** Special chunk for styles that cannot be split */readonly COMBINED: "combined";
846
- readonly SUBCOMPONENTS: "subcomponents";
847
- readonly APPEARANCE: "appearance";
848
- readonly FONT: "font";
849
- readonly DIMENSION: "dimension";
850
- readonly DISPLAY: "display";
851
- readonly LAYOUT: "layout";
852
- readonly POSITION: "position";
853
- readonly MISC: "misc";
854
- };
855
- type ChunkName = (typeof CHUNK_NAMES)[keyof typeof CHUNK_NAMES];
856
915
  /**
857
- * Pre-computed map for O(1) style-to-chunk lookup.
858
- * Built once at module load time.
916
+ * Map for O(1) style-to-chunk lookup. Seeded with the built-in lists above and
917
+ * extended by {@link assignStyleChunk} when a custom handler declares style names
918
+ * the built-in lists don't know.
859
919
  */
860
920
  declare const STYLE_TO_CHUNK: Map<string, ChunkName>;
861
- interface ChunkInfo$1 {
921
+ //#endregion
922
+ //#region src/chunks/definitions.d.ts
923
+ interface ChunkInfo {
862
924
  /** Name of the chunk */
863
925
  name: ChunkName | string;
864
926
  /** Style keys belonging to this chunk */
@@ -1223,7 +1285,7 @@ declare function presetStyle({
1223
1285
  fontStyle,
1224
1286
  fontFamily,
1225
1287
  font
1226
- }: PresetStyleProps): Styles | null;
1288
+ }: PresetStyleProps): CSSMap | null;
1227
1289
  declare namespace presetStyle {
1228
1290
  var __lookupStyles: string[];
1229
1291
  }
@@ -1370,6 +1432,36 @@ declare const styleHandlers: {
1370
1432
  readonly width: typeof widthStyle;
1371
1433
  };
1372
1434
  //#endregion
1435
+ //#region src/styles/define-handler.d.ts
1436
+ /**
1437
+ * Declare a multi-dependency style handler with its dependency names inferred
1438
+ * into the handler's parameter type.
1439
+ *
1440
+ * Without it, the multi-dependency tuple form needs a hand-written parameter
1441
+ * annotation that can silently drift from the dependency list:
1442
+ *
1443
+ * ```ts
1444
+ * // Annotation and dependency list are maintained separately.
1445
+ * handlers: {
1446
+ * spacing: [['gap', 'padding'], ({ gap, padding }: { gap?: string; padding?: string }) => …],
1447
+ * }
1448
+ *
1449
+ * // Both come from the same array; a typo in the destructure is a type error.
1450
+ * handlers: {
1451
+ * spacing: defineHandler(['gap', 'padding'], ({ gap, padding }) => …),
1452
+ * }
1453
+ * ```
1454
+ *
1455
+ * Values arrive **state-resolved but unparsed** — the raw authored DSL string
1456
+ * (`'2x'`, `'#purple.5'`), so call `parseStyle()` / `parseColor()` as needed. The
1457
+ * result is a kebab-case CSS declaration map (or an array of them); the reserved
1458
+ * `$` key applies the declarations to a nested selector.
1459
+ *
1460
+ * All names must belong to the same chunk. Names the built-in chunk lists don't
1461
+ * know are pulled into their handler's chunk automatically at registration.
1462
+ */
1463
+ declare function defineHandler<const TDeps extends readonly string[]>(deps: TDeps, handler: (props: Partial<Record<TDeps[number], ResolvedStyleValue>>) => StyleHandlerResult): [readonly string[], RawStyleHandler];
1464
+ //#endregion
1373
1465
  //#region src/compute-styles.d.ts
1374
1466
  interface ComputeStylesResult {
1375
1467
  className: string;
@@ -1482,26 +1574,6 @@ declare function keyframes(steps: KeyframesSteps, nameOrOptions?: string | {
1482
1574
  root?: Document | ShadowRoot;
1483
1575
  name?: string;
1484
1576
  }): KeyframesResult;
1485
- interface PropertyOptions {
1486
- /**
1487
- * CSS syntax string for the property (e.g., '<color>', '<length>', '<angle>')
1488
- * @see https://developer.mozilla.org/en-US/docs/Web/CSS/@property/syntax
1489
- */
1490
- syntax?: string;
1491
- /**
1492
- * Whether the property inherits from parent elements
1493
- * @default true
1494
- */
1495
- inherits?: boolean;
1496
- /**
1497
- * Initial value for the property
1498
- */
1499
- initialValue?: string | number;
1500
- /**
1501
- * Shadow root or document to inject into
1502
- */
1503
- root?: Document | ShadowRoot;
1504
- }
1505
1577
  /**
1506
1578
  * Define a CSS @property custom property.
1507
1579
  * This enables advanced features like animating custom properties.
@@ -1528,7 +1600,7 @@ interface PropertyOptions {
1528
1600
  * });
1529
1601
  * ```
1530
1602
  */
1531
- declare function property$1(name: string, options?: PropertyOptions): void;
1603
+ declare function property(name: string, options?: PropertyOptions): void;
1532
1604
  /**
1533
1605
  * Check if a CSS @property has already been defined
1534
1606
  *
@@ -1550,23 +1622,44 @@ declare function fontFace(family: string, descriptors: FontFaceDescriptors, opti
1550
1622
  /**
1551
1623
  * Inject a CSS @counter-style rule.
1552
1624
  *
1553
- * Permanent and global — no dispose or ref-counting.
1554
- * Deduplicates by name (first definition wins).
1625
+ * Permanent and global — no dispose or ref-counting. Deduplicates by name and
1626
+ * overrides an existing rule by default. Pass `weak: true` for global
1627
+ * `configure()` definitions, which never clobber an existing rule.
1555
1628
  */
1556
1629
  declare function counterStyle(name: string, descriptors: CounterStyleDescriptors, options?: {
1557
1630
  root?: Document | ShadowRoot;
1631
+ weak?: boolean;
1632
+ }): void;
1633
+ /**
1634
+ * Inject a CSS @function rule (custom function).
1635
+ *
1636
+ * Permanent and global — no dispose or ref-counting. Deduplicates by function
1637
+ * name and overrides an existing rule by default. Pass `weak: true` for global
1638
+ * `configure()` definitions, which never clobber an existing rule.
1639
+ *
1640
+ * @param name - The function name (`$$name`, `$name`, or `--name`)
1641
+ * @param definition - Function definition (args, returns, result, local vars)
1642
+ *
1643
+ * @example
1644
+ * ```ts
1645
+ * func('$$negative', { args: ['$value'], result: '(-1 * $value)' });
1646
+ * ```
1647
+ */
1648
+ declare function func(name: string, definition: FunctionDefinition, options?: {
1649
+ root?: Document | ShadowRoot;
1650
+ weak?: boolean;
1558
1651
  }): void;
1559
1652
  /**
1560
1653
  * Get CSS text from all sheets (for SSR)
1561
1654
  */
1562
- declare function getCssText(options?: {
1655
+ declare function getCSSText(options?: {
1563
1656
  root?: Document | ShadowRoot;
1564
1657
  }): string;
1565
1658
  /**
1566
1659
  * Collect only CSS used by a rendered subtree (like jest-styled-components).
1567
1660
  * Pass the container returned by render(...).
1568
1661
  */
1569
- declare function getCssTextForNode(node: ParentNode | Element | DocumentFragment, options?: {
1662
+ declare function getCSSTextForNode(node: ParentNode | Element | DocumentFragment, options?: {
1570
1663
  root?: Document | ShadowRoot;
1571
1664
  }): string;
1572
1665
  /**
@@ -1589,10 +1682,6 @@ declare function touch(className: string, options?: {
1589
1682
  * @returns Number of styles evicted.
1590
1683
  */
1591
1684
  declare function gc(options?: GCOptions): number;
1592
- /**
1593
- * Check if we're currently running in a test environment
1594
- */
1595
- declare function getIsTestEnvironment(): boolean;
1596
1685
  /**
1597
1686
  * Get the global injector instance for debugging
1598
1687
  */
@@ -1664,20 +1753,6 @@ declare const dotize: {
1664
1753
  */
1665
1754
  declare function resolveRecipes(styles: Styles): Styles;
1666
1755
  //#endregion
1667
- //#region src/utils/warnings.d.ts
1668
- declare function warn(...args: unknown[]): void;
1669
- declare function deprecationWarning(condition: unknown, {
1670
- property,
1671
- name,
1672
- betterAlternative,
1673
- reason
1674
- }: {
1675
- property: string;
1676
- name: string;
1677
- betterAlternative: (() => string) | string;
1678
- reason?: (() => string) | string;
1679
- }): void;
1680
- //#endregion
1681
1756
  //#region src/utils/process-tokens.d.ts
1682
1757
  /**
1683
1758
  * Process tokens object into inline style properties.
@@ -1701,19 +1776,19 @@ interface DebugOptions {
1701
1776
  /** Suppress console logging and return data only (default: false) */
1702
1777
  raw?: boolean;
1703
1778
  }
1704
- interface CssOptions extends DebugOptions {
1779
+ interface CSSOptions extends DebugOptions {
1705
1780
  prettify?: boolean;
1706
1781
  /** Read from stored source CSS (dev-mode only) instead of live CSSOM */
1707
1782
  source?: boolean;
1708
1783
  }
1709
- interface ChunkInfo {
1784
+ interface DebugChunkInfo {
1710
1785
  className: string;
1711
1786
  chunkName: string | null;
1712
1787
  }
1713
1788
  interface InspectResult {
1714
1789
  element?: Element | null;
1715
1790
  classes: string[];
1716
- chunks: ChunkInfo[];
1791
+ chunks: DebugChunkInfo[];
1717
1792
  css: string;
1718
1793
  size: number;
1719
1794
  rules: number;
@@ -1762,7 +1837,7 @@ interface Summary {
1762
1837
  chunkBreakdown: ChunkBreakdown;
1763
1838
  }
1764
1839
  declare const tastyDebug: {
1765
- css(target: CSSTarget, opts?: CssOptions): string;
1840
+ css(target: CSSTarget, opts?: CSSOptions): string;
1766
1841
  inspect(target: string | Element, opts?: DebugOptions): InspectResult;
1767
1842
  summary(opts?: DebugOptions): Summary;
1768
1843
  chunks(opts?: DebugOptions): ChunkBreakdown;
@@ -1774,5 +1849,5 @@ declare const tastyDebug: {
1774
1849
  install(): void;
1775
1850
  };
1776
1851
  //#endregion
1777
- export { UsePropertyOptions as $, BLOCK_OUTER_STYLES as $t, chunkSheetRegistry as A, BlockInnerStyleProps as At, DISPLAY_CHUNK_STYLES as B, Mods as Bt, injectRawCSS as C, VariantMap as Ct, property$1 as D, BaseProps as Dt, keyframes as E, AllBaseProps as Et, APPEARANCE_CHUNK_STYLES as F, DimensionStyleProps as Ft, categorizeStyleKeys as G, TagName as Gt, LAYOUT_CHUNK_STYLES as H, PositionStyleProps as Ht, CHUNK_NAMES as I, FlowStyleProps as It, okhslFunc as J, TextStyleProps as Jt, okhstFunc as K, TastyExtensionConfig as Kt, ChunkInfo$1 as L, GlobalStyledProps as Lt, ComputeStylesResult as M, BlockStyleProps as Mt, computeStyles as N, ColorStyleProps as Nt, touch as O, BasePropsWithoutChildren as Ot, styleHandlers as P, ContainerStyleProps as Pt, useFontFace as Q, BLOCK_INNER_STYLES as Qt, ChunkName as R, InnerStyleProps as Rt, injectGlobal as S, TokenPropsInput as St, isPropertyDefined as T, tasty as Tt, POSITION_CHUNK_STYLES as U, Props as Ut, FONT_CHUNK_STYLES as V, OuterStyleProps as Vt, STYLE_TO_CHUNK as W, ShortGridStyles as Wt, getDisplayName as X, Tokens as Xt, okhslPlugin as Y, TokenValue as Yt, useCounterStyle as Z, BASE_STYLES as Zt, getCssText as _, SubElementProps as _t, resolveRecipes as a, INNER_STYLES as an, UseStylesResult as at, getRawCSSText as b, TastyPolymorphicComponent as bt, color$1 as c, TEXT_STYLES as cn, Element$1 as ct, cleanup as d, ModPropsInput as dt, BLOCK_STYLES as en, useProperty as et, counterStyle as f, ResolveAsProps as ft, gc as g, SubElementDefinition as gt, fontFace as h, ResolveTokenProps as ht, warn as i, FLOW_STYLES as in, UseStylesOptions as it, ComputeStylesOptions as j, BlockOuterStyleProps as jt, ChunkSheetRegistry as k, BaseStyleProps as kt, filterBaseProps as l, DEFAULT_NAME_PREFIX as ln, ElementsDefinition as lt, destroy as m, ResolveModProps as mt, processTokens as n, CONTAINER_STYLES as nn, useRawCSS as nt, dotize as o, OUTER_STYLES as on, useStyles as ot, createInjector as p, ResolveModPropDef as pt, okhstPlugin as q, TastyThemeNames as qt, deprecationWarning as r, DIMENSION_STYLES as rn, useGlobalStyles as rt, _modAttrs as s, POSITION_STYLES as sn, AllBasePropsWithMods as st, tastyDebug as t, COLOR_STYLES as tn, useKeyframes as tt, PropertyOptions as u, DEFAULT_ZERO_NAME_PREFIX as un, ModPropDef as ut, getCssTextForNode as v, TastyElementOptions as vt, injector as w, WithVariant as wt, inject as x, TastyProps as xt, getIsTestEnvironment as y, TastyElementProps as yt, DIMENSION_CHUNK_STYLES as z, ModValue as zt };
1778
- //# sourceMappingURL=index-BYtnj_gA.d.ts.map
1852
+ export { okhstFunction as $, TagName as $t, keyframes as A, TastyProps as At, ChunkInfo as B, BlockOuterStyleProps as Bt, getCSSTextForNode as C, ResolveTokenProps as Ct, injectRawCSS as D, TastyElementOptions as Dt, injectGlobal as E, TastyComponentPropsWithDefaults as Et, ComputeStylesOptions as F, AllBaseProps as Ft, DIMENSION_CHUNK_STYLES as G, ExtraBaseStyleProps as Gt, APPEARANCE_CHUNK_STYLES as H, ColorStyleProps as Ht, ComputeStylesResult as I, BaseProps as It, LAYOUT_CHUNK_STYLES as J, ModValue as Jt, DISPLAY_CHUNK_STYLES as K, FlowStyleProps as Kt, computeStyles as L, BasePropsWithoutChildren as Lt, touch as M, VariantMap as Mt, ChunkSheetRegistry as N, WithVariant as Nt, injector as O, TastyElementProps as Ot, chunkSheetRegistry as P, tasty as Pt, createColorFunc as Q, ShortGridStyles as Qt, defineHandler as R, BaseStyleProps as Rt, getCSSText as S, ResolveModProps as St, inject as T, SubElementProps as Tt, CHUNK_NAMES as U, ContainerStyleProps as Ut, categorizeStyleKeys as V, BlockStyleProps as Vt, ChunkName as W, DimensionStyleProps as Wt, STYLE_TO_CHUNK as X, OuterStyleProps as Xt, POSITION_CHUNK_STYLES as Y, Mods as Yt, resolveFunctionColor as Z, PositionStyleProps as Zt, createInjector as _, POSITION_STYLES as _n, ElementsDefinition as _t, DebugOptions as a, TokenValue as an, useFunction as at, func as b, DEFAULT_ZERO_NAME_PREFIX as bn, ResolveAsProps as bt, tastyDebug as c, BLOCK_INNER_STYLES as cn, UsePropertyOptions as ct, dotize as d, COLOR_STYLES as dn, useRawCSS as dt, TastyBaseStylePropNames as en, okhstPlugin as et, _modAttrs as f, CONTAINER_STYLES as fn, useGlobalStyles as ft, counterStyle as g, OUTER_STYLES as gn, Element$1 as gt, cleanup as h, INNER_STYLES as hn, AllBasePropsWithMods as ht, DebugChunkInfo as i, TextStyleProps as in, UseFunctionOptions as it, property as j, TokenPropsInput as jt, isPropertyDefined as k, TastyPolymorphicComponent as kt, processTokens as l, BLOCK_OUTER_STYLES as ln, useProperty as lt, filterBaseProps as m, FLOW_STYLES as mn, useStyles as mt, CacheStatus as n, TastyExtensionConfig as nn, okhslPlugin as nt, InspectResult as o, Tokens as on, useCounterStyle as ot, color$1 as p, DIMENSION_STYLES as pn, UseStylesResult as pt, FONT_CHUNK_STYLES as q, InnerStyleProps as qt, ChunkBreakdown as r, TastyThemeNames as rn, getDisplayName as rt, Summary as s, BASE_STYLES as sn, useFontFace as st, CSSOptions as t, TastyCustomProps as tn, okhslFunction as tt, resolveRecipes as u, BLOCK_STYLES as un, useKeyframes as ut, destroy as v, TEXT_STYLES as vn, ModPropDef as vt, getRawCSSText as w, SubElementDefinition as wt, gc as x, ResolveModPropDef as xt, fontFace as y, DEFAULT_NAME_PREFIX as yn, ModPropsInput as yt, styleHandlers as z, BlockInnerStyleProps as zt };
1853
+ //# sourceMappingURL=index-BAAbdfRs.d.ts.map