@tenphi/tasty 0.0.0-snapshot.01d8a9e → 0.0.0-snapshot.047dfbb

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 (342) hide show
  1. package/README.md +13 -8
  2. package/dist/{ssr/async-storage.js → async-storage-DKK-wTD4.js} +2 -2
  3. package/dist/async-storage-DKK-wTD4.js.map +1 -0
  4. package/dist/{ssr/collector.d.ts → collector-CddJZDOr.d.ts} +17 -3
  5. package/dist/{ssr/collector.js → collector-J6LwZR0N.js} +53 -43
  6. package/dist/collector-J6LwZR0N.js.map +1 -0
  7. package/dist/config-C3F4Ogo1.js +10993 -0
  8. package/dist/config-C3F4Ogo1.js.map +1 -0
  9. package/dist/config-C3SKYuxY.d.ts +945 -0
  10. package/dist/{ssr/context.js → context-CA8YKeMn.js} +11 -3
  11. package/dist/context-CA8YKeMn.js.map +1 -0
  12. package/dist/core/index.d.ts +5 -34
  13. package/dist/core/index.js +6 -27
  14. package/dist/core-DxHmF6S9.js +1598 -0
  15. package/dist/core-DxHmF6S9.js.map +1 -0
  16. package/dist/{zero/extractor.js → css-writer-IC7tdnIf.js} +98 -13
  17. package/dist/css-writer-IC7tdnIf.js.map +1 -0
  18. package/dist/{ssr/format-global-rules.js → format-global-rules-DklyaXv-.js} +2 -2
  19. package/dist/format-global-rules-DklyaXv-.js.map +1 -0
  20. package/dist/format-rules-DTLY39Hm.js +143 -0
  21. package/dist/format-rules-DTLY39Hm.js.map +1 -0
  22. package/dist/{ssr/hydrate.js → hydrate-8Zglgy_C.js} +3 -3
  23. package/dist/hydrate-8Zglgy_C.js.map +1 -0
  24. package/dist/index-ByBYTH9l.d.ts +1778 -0
  25. package/dist/index-C5owZ15q.d.ts +1293 -0
  26. package/dist/index.d.ts +5 -51
  27. package/dist/index.js +732 -36
  28. package/dist/index.js.map +1 -0
  29. package/dist/keyframes-DgGkipNK.js +595 -0
  30. package/dist/keyframes-DgGkipNK.js.map +1 -0
  31. package/dist/{utils/merge-styles.js → merge-styles-CAdKaHxh.js} +3 -4
  32. package/dist/merge-styles-CAdKaHxh.js.map +1 -0
  33. package/dist/{utils/merge-styles.d.ts → merge-styles-CvUi7SOD.d.ts} +3 -3
  34. package/dist/{utils/resolve-recipes.js → resolve-recipes-BQNdunBd.js} +4 -6
  35. package/dist/resolve-recipes-BQNdunBd.js.map +1 -0
  36. package/dist/ssr/astro-client.js +1 -1
  37. package/dist/ssr/astro-client.js.map +1 -1
  38. package/dist/ssr/astro-middleware.js.map +1 -1
  39. package/dist/ssr/astro.d.ts +1 -12
  40. package/dist/ssr/astro.js +7 -9
  41. package/dist/ssr/astro.js.map +1 -1
  42. package/dist/ssr/index.d.ts +44 -4
  43. package/dist/ssr/index.js +4 -4
  44. package/dist/ssr/index.js.map +1 -1
  45. package/dist/ssr/next.d.ts +2 -3
  46. package/dist/ssr/next.js +6 -6
  47. package/dist/ssr/next.js.map +1 -1
  48. package/dist/static/index.d.ts +91 -5
  49. package/dist/static/index.js +49 -3
  50. package/dist/static/index.js.map +1 -0
  51. package/dist/static/inject.js.map +1 -1
  52. package/dist/zero/babel.d.ts +2 -3
  53. package/dist/zero/babel.js +22 -10
  54. package/dist/zero/babel.js.map +1 -1
  55. package/dist/zero/index.d.ts +67 -3
  56. package/dist/zero/index.js +1 -2
  57. package/dist/zero/next.js.map +1 -1
  58. package/docs/README.md +2 -2
  59. package/docs/configuration.md +44 -0
  60. package/docs/debug.md +11 -9
  61. package/docs/dsl.md +124 -13
  62. package/docs/injector.md +2 -2
  63. package/docs/methodology.md +26 -0
  64. package/docs/pipeline.md +744 -0
  65. package/docs/react-api.md +24 -0
  66. package/docs/ssr.md +5 -3
  67. package/docs/styles.md +25 -8
  68. package/docs/tasty-static.md +15 -0
  69. package/package.json +22 -12
  70. package/tasty.config.ts +2 -0
  71. package/dist/_virtual/_rolldown/runtime.js +0 -7
  72. package/dist/chunks/cacheKey.d.ts +0 -1
  73. package/dist/chunks/cacheKey.js +0 -77
  74. package/dist/chunks/cacheKey.js.map +0 -1
  75. package/dist/chunks/definitions.d.ts +0 -37
  76. package/dist/chunks/definitions.js +0 -258
  77. package/dist/chunks/definitions.js.map +0 -1
  78. package/dist/chunks/index.d.ts +0 -1
  79. package/dist/chunks/renderChunk.d.ts +0 -1
  80. package/dist/chunks/renderChunk.js +0 -59
  81. package/dist/chunks/renderChunk.js.map +0 -1
  82. package/dist/compute-styles.d.ts +0 -31
  83. package/dist/compute-styles.js +0 -336
  84. package/dist/compute-styles.js.map +0 -1
  85. package/dist/config.d.ts +0 -407
  86. package/dist/config.js +0 -591
  87. package/dist/config.js.map +0 -1
  88. package/dist/counter-style/index.js +0 -51
  89. package/dist/counter-style/index.js.map +0 -1
  90. package/dist/debug.d.ts +0 -89
  91. package/dist/debug.js +0 -453
  92. package/dist/debug.js.map +0 -1
  93. package/dist/font-face/index.js +0 -63
  94. package/dist/font-face/index.js.map +0 -1
  95. package/dist/hooks/index.d.ts +0 -7
  96. package/dist/hooks/useCounterStyle.d.ts +0 -36
  97. package/dist/hooks/useCounterStyle.js +0 -65
  98. package/dist/hooks/useCounterStyle.js.map +0 -1
  99. package/dist/hooks/useFontFace.d.ts +0 -45
  100. package/dist/hooks/useFontFace.js +0 -66
  101. package/dist/hooks/useFontFace.js.map +0 -1
  102. package/dist/hooks/useGlobalStyles.d.ts +0 -46
  103. package/dist/hooks/useGlobalStyles.js +0 -88
  104. package/dist/hooks/useGlobalStyles.js.map +0 -1
  105. package/dist/hooks/useKeyframes.d.ts +0 -58
  106. package/dist/hooks/useKeyframes.js +0 -55
  107. package/dist/hooks/useKeyframes.js.map +0 -1
  108. package/dist/hooks/useProperty.d.ts +0 -81
  109. package/dist/hooks/useProperty.js +0 -96
  110. package/dist/hooks/useProperty.js.map +0 -1
  111. package/dist/hooks/useRawCSS.d.ts +0 -22
  112. package/dist/hooks/useRawCSS.js +0 -103
  113. package/dist/hooks/useRawCSS.js.map +0 -1
  114. package/dist/hooks/useStyles.d.ts +0 -40
  115. package/dist/hooks/useStyles.js +0 -31
  116. package/dist/hooks/useStyles.js.map +0 -1
  117. package/dist/injector/index.d.ts +0 -182
  118. package/dist/injector/index.js +0 -185
  119. package/dist/injector/index.js.map +0 -1
  120. package/dist/injector/injector.d.ts +0 -198
  121. package/dist/injector/injector.js +0 -651
  122. package/dist/injector/injector.js.map +0 -1
  123. package/dist/injector/sheet-manager.d.ts +0 -132
  124. package/dist/injector/sheet-manager.js +0 -699
  125. package/dist/injector/sheet-manager.js.map +0 -1
  126. package/dist/injector/types.d.ts +0 -235
  127. package/dist/keyframes/index.js +0 -206
  128. package/dist/keyframes/index.js.map +0 -1
  129. package/dist/parser/classify.js +0 -319
  130. package/dist/parser/classify.js.map +0 -1
  131. package/dist/parser/const.js +0 -60
  132. package/dist/parser/const.js.map +0 -1
  133. package/dist/parser/lru.js +0 -109
  134. package/dist/parser/lru.js.map +0 -1
  135. package/dist/parser/parser.d.ts +0 -25
  136. package/dist/parser/parser.js +0 -115
  137. package/dist/parser/parser.js.map +0 -1
  138. package/dist/parser/tokenizer.js +0 -69
  139. package/dist/parser/tokenizer.js.map +0 -1
  140. package/dist/parser/types.d.ts +0 -51
  141. package/dist/parser/types.js +0 -46
  142. package/dist/parser/types.js.map +0 -1
  143. package/dist/pipeline/conditions.d.ts +0 -134
  144. package/dist/pipeline/conditions.js +0 -406
  145. package/dist/pipeline/conditions.js.map +0 -1
  146. package/dist/pipeline/exclusive.js +0 -283
  147. package/dist/pipeline/exclusive.js.map +0 -1
  148. package/dist/pipeline/index.d.ts +0 -55
  149. package/dist/pipeline/index.js +0 -708
  150. package/dist/pipeline/index.js.map +0 -1
  151. package/dist/pipeline/materialize.js +0 -1157
  152. package/dist/pipeline/materialize.js.map +0 -1
  153. package/dist/pipeline/parseStateKey.d.ts +0 -15
  154. package/dist/pipeline/parseStateKey.js +0 -446
  155. package/dist/pipeline/parseStateKey.js.map +0 -1
  156. package/dist/pipeline/simplify.js +0 -690
  157. package/dist/pipeline/simplify.js.map +0 -1
  158. package/dist/pipeline/warnings.js +0 -18
  159. package/dist/pipeline/warnings.js.map +0 -1
  160. package/dist/plugins/index.d.ts +0 -2
  161. package/dist/plugins/okhsl-plugin.d.ts +0 -35
  162. package/dist/plugins/okhsl-plugin.js +0 -97
  163. package/dist/plugins/okhsl-plugin.js.map +0 -1
  164. package/dist/plugins/types.d.ts +0 -87
  165. package/dist/properties/index.js +0 -222
  166. package/dist/properties/index.js.map +0 -1
  167. package/dist/properties/property-type-resolver.d.ts +0 -24
  168. package/dist/properties/property-type-resolver.js +0 -90
  169. package/dist/properties/property-type-resolver.js.map +0 -1
  170. package/dist/rsc-cache.js +0 -79
  171. package/dist/rsc-cache.js.map +0 -1
  172. package/dist/ssr/async-storage.d.ts +0 -17
  173. package/dist/ssr/async-storage.js.map +0 -1
  174. package/dist/ssr/collect-auto-properties.js +0 -58
  175. package/dist/ssr/collect-auto-properties.js.map +0 -1
  176. package/dist/ssr/collector.js.map +0 -1
  177. package/dist/ssr/context.js.map +0 -1
  178. package/dist/ssr/format-global-rules.js.map +0 -1
  179. package/dist/ssr/format-keyframes.js +0 -69
  180. package/dist/ssr/format-keyframes.js.map +0 -1
  181. package/dist/ssr/format-property.js +0 -49
  182. package/dist/ssr/format-property.js.map +0 -1
  183. package/dist/ssr/format-rules.js +0 -73
  184. package/dist/ssr/format-rules.js.map +0 -1
  185. package/dist/ssr/hydrate.d.ts +0 -29
  186. package/dist/ssr/hydrate.js.map +0 -1
  187. package/dist/ssr/ssr-collector-ref.js +0 -29
  188. package/dist/ssr/ssr-collector-ref.js.map +0 -1
  189. package/dist/states/index.d.ts +0 -49
  190. package/dist/states/index.js +0 -170
  191. package/dist/states/index.js.map +0 -1
  192. package/dist/static/tastyStatic.d.ts +0 -46
  193. package/dist/static/tastyStatic.js +0 -30
  194. package/dist/static/tastyStatic.js.map +0 -1
  195. package/dist/static/types.d.ts +0 -49
  196. package/dist/static/types.js +0 -24
  197. package/dist/static/types.js.map +0 -1
  198. package/dist/styles/border.d.ts +0 -25
  199. package/dist/styles/border.js +0 -120
  200. package/dist/styles/border.js.map +0 -1
  201. package/dist/styles/color.d.ts +0 -14
  202. package/dist/styles/color.js +0 -26
  203. package/dist/styles/color.js.map +0 -1
  204. package/dist/styles/const.js +0 -17
  205. package/dist/styles/const.js.map +0 -1
  206. package/dist/styles/createStyle.js +0 -79
  207. package/dist/styles/createStyle.js.map +0 -1
  208. package/dist/styles/dimension.js +0 -109
  209. package/dist/styles/dimension.js.map +0 -1
  210. package/dist/styles/directional.js +0 -133
  211. package/dist/styles/directional.js.map +0 -1
  212. package/dist/styles/display.d.ts +0 -30
  213. package/dist/styles/display.js +0 -73
  214. package/dist/styles/display.js.map +0 -1
  215. package/dist/styles/fade.d.ts +0 -15
  216. package/dist/styles/fade.js +0 -62
  217. package/dist/styles/fade.js.map +0 -1
  218. package/dist/styles/fill.d.ts +0 -42
  219. package/dist/styles/fill.js +0 -51
  220. package/dist/styles/fill.js.map +0 -1
  221. package/dist/styles/flow.d.ts +0 -16
  222. package/dist/styles/flow.js +0 -12
  223. package/dist/styles/flow.js.map +0 -1
  224. package/dist/styles/gap.d.ts +0 -31
  225. package/dist/styles/gap.js +0 -38
  226. package/dist/styles/gap.js.map +0 -1
  227. package/dist/styles/height.d.ts +0 -17
  228. package/dist/styles/height.js +0 -19
  229. package/dist/styles/height.js.map +0 -1
  230. package/dist/styles/index.d.ts +0 -1
  231. package/dist/styles/index.js +0 -8
  232. package/dist/styles/index.js.map +0 -1
  233. package/dist/styles/inset.d.ts +0 -24
  234. package/dist/styles/inset.js +0 -34
  235. package/dist/styles/inset.js.map +0 -1
  236. package/dist/styles/list.d.ts +0 -16
  237. package/dist/styles/list.js +0 -100
  238. package/dist/styles/list.js.map +0 -1
  239. package/dist/styles/margin.d.ts +0 -24
  240. package/dist/styles/margin.js +0 -32
  241. package/dist/styles/margin.js.map +0 -1
  242. package/dist/styles/outline.d.ts +0 -29
  243. package/dist/styles/outline.js +0 -55
  244. package/dist/styles/outline.js.map +0 -1
  245. package/dist/styles/padding.d.ts +0 -24
  246. package/dist/styles/padding.js +0 -32
  247. package/dist/styles/padding.js.map +0 -1
  248. package/dist/styles/placement.d.ts +0 -37
  249. package/dist/styles/placement.js +0 -74
  250. package/dist/styles/placement.js.map +0 -1
  251. package/dist/styles/predefined.d.ts +0 -71
  252. package/dist/styles/predefined.js +0 -237
  253. package/dist/styles/predefined.js.map +0 -1
  254. package/dist/styles/preset.d.ts +0 -52
  255. package/dist/styles/preset.js +0 -127
  256. package/dist/styles/preset.js.map +0 -1
  257. package/dist/styles/radius.d.ts +0 -12
  258. package/dist/styles/radius.js +0 -83
  259. package/dist/styles/radius.js.map +0 -1
  260. package/dist/styles/scrollMargin.d.ts +0 -24
  261. package/dist/styles/scrollMargin.js +0 -32
  262. package/dist/styles/scrollMargin.js.map +0 -1
  263. package/dist/styles/scrollbar.d.ts +0 -25
  264. package/dist/styles/scrollbar.js +0 -51
  265. package/dist/styles/scrollbar.js.map +0 -1
  266. package/dist/styles/shadow.d.ts +0 -14
  267. package/dist/styles/shadow.js +0 -25
  268. package/dist/styles/shadow.js.map +0 -1
  269. package/dist/styles/shared.js +0 -17
  270. package/dist/styles/shared.js.map +0 -1
  271. package/dist/styles/transition.d.ts +0 -14
  272. package/dist/styles/transition.js +0 -159
  273. package/dist/styles/transition.js.map +0 -1
  274. package/dist/styles/types.d.ts +0 -564
  275. package/dist/styles/width.d.ts +0 -17
  276. package/dist/styles/width.js +0 -19
  277. package/dist/styles/width.js.map +0 -1
  278. package/dist/tasty.d.ts +0 -134
  279. package/dist/tasty.js +0 -248
  280. package/dist/tasty.js.map +0 -1
  281. package/dist/types.d.ts +0 -184
  282. package/dist/utils/cache-wrapper.js +0 -21
  283. package/dist/utils/cache-wrapper.js.map +0 -1
  284. package/dist/utils/case-converter.js +0 -8
  285. package/dist/utils/case-converter.js.map +0 -1
  286. package/dist/utils/color-math.d.ts +0 -46
  287. package/dist/utils/color-math.js +0 -749
  288. package/dist/utils/color-math.js.map +0 -1
  289. package/dist/utils/color-space.d.ts +0 -5
  290. package/dist/utils/color-space.js +0 -228
  291. package/dist/utils/color-space.js.map +0 -1
  292. package/dist/utils/colors.d.ts +0 -5
  293. package/dist/utils/colors.js +0 -10
  294. package/dist/utils/colors.js.map +0 -1
  295. package/dist/utils/css-types.d.ts +0 -7
  296. package/dist/utils/deps-equal.js +0 -15
  297. package/dist/utils/deps-equal.js.map +0 -1
  298. package/dist/utils/dotize.d.ts +0 -26
  299. package/dist/utils/dotize.js +0 -122
  300. package/dist/utils/dotize.js.map +0 -1
  301. package/dist/utils/filter-base-props.d.ts +0 -15
  302. package/dist/utils/filter-base-props.js +0 -45
  303. package/dist/utils/filter-base-props.js.map +0 -1
  304. package/dist/utils/get-display-name.d.ts +0 -7
  305. package/dist/utils/get-display-name.js +0 -10
  306. package/dist/utils/get-display-name.js.map +0 -1
  307. package/dist/utils/has-keys.js +0 -13
  308. package/dist/utils/has-keys.js.map +0 -1
  309. package/dist/utils/hash.js +0 -14
  310. package/dist/utils/hash.js.map +0 -1
  311. package/dist/utils/is-dev-env.js +0 -19
  312. package/dist/utils/is-dev-env.js.map +0 -1
  313. package/dist/utils/is-valid-element-type.js +0 -15
  314. package/dist/utils/is-valid-element-type.js.map +0 -1
  315. package/dist/utils/merge-styles.js.map +0 -1
  316. package/dist/utils/mod-attrs.d.ts +0 -6
  317. package/dist/utils/mod-attrs.js +0 -20
  318. package/dist/utils/mod-attrs.js.map +0 -1
  319. package/dist/utils/process-tokens.d.ts +0 -17
  320. package/dist/utils/process-tokens.js +0 -83
  321. package/dist/utils/process-tokens.js.map +0 -1
  322. package/dist/utils/resolve-recipes.d.ts +0 -17
  323. package/dist/utils/resolve-recipes.js.map +0 -1
  324. package/dist/utils/selector-transform.js +0 -32
  325. package/dist/utils/selector-transform.js.map +0 -1
  326. package/dist/utils/string.js +0 -8
  327. package/dist/utils/string.js.map +0 -1
  328. package/dist/utils/styles.d.ts +0 -99
  329. package/dist/utils/styles.js +0 -220
  330. package/dist/utils/styles.js.map +0 -1
  331. package/dist/utils/typography.d.ts +0 -58
  332. package/dist/utils/typography.js +0 -51
  333. package/dist/utils/typography.js.map +0 -1
  334. package/dist/utils/warnings.d.ts +0 -16
  335. package/dist/utils/warnings.js +0 -16
  336. package/dist/utils/warnings.js.map +0 -1
  337. package/dist/zero/css-writer.d.ts +0 -45
  338. package/dist/zero/css-writer.js +0 -73
  339. package/dist/zero/css-writer.js.map +0 -1
  340. package/dist/zero/extractor.d.ts +0 -24
  341. package/dist/zero/extractor.js.map +0 -1
  342. package/docs/PIPELINE.md +0 -519
@@ -1,198 +0,0 @@
1
- import { CacheMetrics, CounterStyleDescriptors, FontFaceDescriptors, GCOptions, GlobalInjectResult, InjectResult, KeyframesResult, KeyframesSteps, PropertyDefinition, RawCSSResult, StyleInjectorConfig } from "./types.js";
2
- import { StyleResult } from "../pipeline/index.js";
3
- import { SheetManager } from "./sheet-manager.js";
4
-
5
- //#region src/injector/injector.d.ts
6
- declare class StyleInjector {
7
- private sheetManager;
8
- private config;
9
- private globalRuleCounter;
10
- private pendingGCHandle;
11
- /** @internal — exposed for debug utilities only */
12
- get _sheetManager(): SheetManager;
13
- constructor(config?: StyleInjectorConfig);
14
- /**
15
- * Check if `className` was hydrated from server-rendered styles and,
16
- * if so, wire the cacheKey mapping. Returns true on hit.
17
- */
18
- private tryHydratedHit;
19
- /**
20
- * Allocate a className for a cacheKey without injecting styles yet.
21
- * This allows separating className allocation (render phase) from style injection (insertion phase).
22
- */
23
- allocateClassName(cacheKey: string, options?: {
24
- root?: Document | ShadowRoot;
25
- }): {
26
- className: string;
27
- isNewAllocation: boolean;
28
- };
29
- /**
30
- * Inject styles from StyleResult objects
31
- */
32
- inject(rules: StyleResult[], options?: {
33
- root?: Document | ShadowRoot;
34
- cacheKey?: string;
35
- }): InjectResult;
36
- /**
37
- * Inject global styles (rules without a generated tasty class selector)
38
- * This ensures we don't reserve a tasty class name (t{number}) for global rules,
39
- * which could otherwise collide with element-level styles and break lookups.
40
- */
41
- injectGlobal(rules: StyleResult[], options?: {
42
- root?: Document | ShadowRoot;
43
- }): GlobalInjectResult;
44
- /**
45
- * Inject raw CSS text directly without parsing
46
- * This is a low-overhead alternative to createGlobalStyle for raw CSS
47
- * The CSS is inserted into a separate style element to avoid conflicts with tasty's chunking
48
- */
49
- injectRawCSS(css: string, options?: {
50
- root?: Document | ShadowRoot;
51
- }): RawCSSResult;
52
- /**
53
- * Get raw CSS text for SSR
54
- */
55
- getRawCSSText(options?: {
56
- root?: Document | ShadowRoot;
57
- }): string;
58
- /**
59
- * Increment refCount for an already-injected cacheKey and return a dispose.
60
- * Used by useStyles on cache hits (hydration or runtime reuse) where
61
- * the pipeline was skipped but refCount tracking is still needed.
62
- * Returns null if the cacheKey is not found.
63
- */
64
- trackRef(cacheKey: string, options?: {
65
- root?: Document | ShadowRoot;
66
- }): InjectResult | null;
67
- /**
68
- * Dispose of a className (decrements refCount only).
69
- */
70
- private dispose;
71
- /**
72
- * Force bulk cleanup of unused styles
73
- */
74
- cleanup(root?: Document | ShadowRoot): void;
75
- /**
76
- * Get CSS text from all sheets (for SSR)
77
- */
78
- getCssText(options?: {
79
- root?: Document | ShadowRoot;
80
- }): string;
81
- /**
82
- * Get CSS only for the provided tasty classNames (e.g., ["t0","t3"])
83
- */
84
- getCssTextForClasses(classNames: Iterable<string>, options?: {
85
- root?: Document | ShadowRoot;
86
- }): string;
87
- /**
88
- * Get cache performance metrics
89
- */
90
- getMetrics(options?: {
91
- root?: Document | ShadowRoot;
92
- }): CacheMetrics | null;
93
- /**
94
- * Reset cache performance metrics
95
- */
96
- resetMetrics(options?: {
97
- root?: Document | ShadowRoot;
98
- }): void;
99
- /**
100
- * Define a CSS @property custom property.
101
- *
102
- * Accepts tasty token syntax for the property name:
103
- * - `$name` → defines `--name`
104
- * - `#name` → defines `--name-color` (auto-sets syntax: '<color>', defaults initialValue: 'transparent')
105
- * - `--name` → defines `--name` (legacy format)
106
- *
107
- * Example:
108
- * @property --rotation { syntax: "<angle>"; inherits: false; initial-value: 45deg; }
109
- *
110
- * Note: No caching or dispose — this defines a global property.
111
- *
112
- * If the same property is registered with different options, a warning is emitted
113
- * but the original definition is preserved (CSS @property cannot be redefined).
114
- */
115
- property(name: string, options?: PropertyDefinition & {
116
- root?: Document | ShadowRoot;
117
- }): void;
118
- /**
119
- * Check whether a given @property name was already injected by this injector.
120
- *
121
- * Accepts tasty token syntax:
122
- * - `$name` → checks `--name`
123
- * - `#name` → checks `--name-color`
124
- * - `--name` → checks `--name` (legacy format)
125
- */
126
- isPropertyDefined(name: string, options?: {
127
- root?: Document | ShadowRoot;
128
- }): boolean;
129
- /**
130
- * Inject a CSS @font-face rule.
131
- *
132
- * Permanent and global — no dispose or ref-counting.
133
- * Deduplicates by content hash (family + descriptors).
134
- */
135
- fontFace(family: string, descriptors: FontFaceDescriptors, options?: {
136
- root?: Document | ShadowRoot;
137
- }): void;
138
- /**
139
- * Inject a CSS @counter-style rule.
140
- *
141
- * Permanent and global — no dispose or ref-counting.
142
- * Deduplicates by name (first definition wins).
143
- */
144
- counterStyle(name: string, descriptors: CounterStyleDescriptors, options?: {
145
- root?: Document | ShadowRoot;
146
- }): void;
147
- /**
148
- * Inject keyframes and return object with toString() and dispose()
149
- *
150
- * Keyframes are cached by content (steps). If the same content is injected
151
- * multiple times with different provided names, the first injected name is reused.
152
- *
153
- * If the same name is provided with different content (collision), a unique
154
- * name is generated to avoid overwriting the existing keyframes.
155
- */
156
- keyframes(steps: KeyframesSteps, nameOrOptions?: string | {
157
- root?: Document | ShadowRoot;
158
- name?: string;
159
- }): KeyframesResult;
160
- /**
161
- * Dispose keyframes
162
- */
163
- private disposeKeyframes;
164
- private static readonly TASTY_CLASS_RE;
165
- /**
166
- * Record a render-time usage hit for one or more classNames.
167
- * Handles space-separated multi-chunk classNames.
168
- * When the global touch counter reaches `touchInterval`, schedules a GC
169
- * via `requestIdleCallback`.
170
- * No-op on the server.
171
- */
172
- touch(className: string, options?: {
173
- root?: Document | ShadowRoot;
174
- }): void;
175
- /**
176
- * Schedule a GC via `requestIdleCallback` (or synchronously as fallback).
177
- * Runs GC on all active roots. Avoids double-scheduling via `pendingGCHandle`.
178
- */
179
- private scheduleGC;
180
- /**
181
- * Synchronous garbage collection.
182
- *
183
- * 1. Quick upper-bound check: skip if unused count can't exceed capacity.
184
- * 2. Scans the DOM for live tasty classNames (safety guard).
185
- * 3. With `force: true`: deletes all unused entries inline.
186
- * Without `force`: collects unused, sorts oldest-first, evicts over capacity.
187
- *
188
- * @returns Number of styles evicted.
189
- */
190
- gc(options?: GCOptions): number;
191
- /**
192
- * Destroy all resources for a root
193
- */
194
- destroy(root?: Document | ShadowRoot): void;
195
- }
196
- //#endregion
197
- export { StyleInjector };
198
- //# sourceMappingURL=injector.d.ts.map