typewritingclass 0.2.2 → 0.2.3

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 (139) hide show
  1. package/dist/borders-pzt8w5Wv.d.cts +24 -0
  2. package/dist/borders-pzt8w5Wv.d.ts +24 -0
  3. package/dist/chunk-34VD2OBF.cjs +74 -0
  4. package/dist/chunk-6CEDQ6GF.cjs +36 -0
  5. package/dist/chunk-75ZPJI57.cjs +9 -0
  6. package/dist/chunk-ATLK64TQ.js +85 -0
  7. package/dist/chunk-BAZLFQIV.cjs +85 -0
  8. package/dist/chunk-CB7B6PHY.cjs +19 -0
  9. package/dist/chunk-EBHM46CV.cjs +25 -0
  10. package/dist/chunk-IL3LVS32.js +36 -0
  11. package/dist/chunk-JKT74FUK.js +25 -0
  12. package/dist/chunk-L3IF2OVA.cjs +354 -0
  13. package/{src/theme/animations.ts → dist/chunk-L7AJQJBR.js} +16 -8
  14. package/dist/chunk-LARVCDO3.js +113 -0
  15. package/dist/chunk-M34ZK4IV.cjs +53 -0
  16. package/dist/chunk-MLKGABMK.js +9 -0
  17. package/dist/chunk-PBQX6PVK.js +80 -0
  18. package/dist/chunk-PTY5FTFB.cjs +80 -0
  19. package/dist/chunk-T776FXQK.js +53 -0
  20. package/dist/chunk-TAAEIXRF.js +74 -0
  21. package/dist/chunk-TUUH2FJY.cjs +39 -0
  22. package/dist/chunk-U2LSMKZS.js +60 -0
  23. package/dist/chunk-UUUE7HRN.cjs +60 -0
  24. package/dist/chunk-UUVUSZJS.cjs +113 -0
  25. package/dist/chunk-XEHQXLQR.js +354 -0
  26. package/dist/chunk-YHDPOIUZ.js +39 -0
  27. package/dist/colors-MvgcZKUW.d.cts +72 -0
  28. package/dist/colors-MvgcZKUW.d.ts +72 -0
  29. package/dist/index.cjs +2922 -0
  30. package/dist/index.d.cts +3515 -0
  31. package/dist/index.d.ts +3515 -0
  32. package/dist/index.js +2922 -0
  33. package/{src/theme/inject-theme.ts → dist/inject-theme-CTzyfQH0.d.cts} +4 -20
  34. package/dist/inject-theme-CTzyfQH0.d.ts +65 -0
  35. package/dist/inject.cjs +32 -0
  36. package/dist/inject.d.cts +2 -0
  37. package/dist/inject.d.ts +2 -0
  38. package/dist/inject.js +32 -0
  39. package/dist/rule.cjs +19 -0
  40. package/{src/rule.ts → dist/rule.d.cts} +10 -79
  41. package/dist/rule.d.ts +133 -0
  42. package/dist/rule.js +19 -0
  43. package/dist/runtime.cjs +9 -0
  44. package/{src/runtime.ts → dist/runtime.d.cts} +4 -7
  45. package/dist/runtime.d.ts +33 -0
  46. package/dist/runtime.js +9 -0
  47. package/dist/shadows-CWViP1Zk.d.cts +22 -0
  48. package/dist/shadows-CWViP1Zk.d.ts +22 -0
  49. package/dist/sizes-CS9iz8YG.d.cts +46 -0
  50. package/dist/sizes-CS9iz8YG.d.ts +46 -0
  51. package/dist/theme/animations.cjs +15 -0
  52. package/dist/theme/animations.d.cts +12 -0
  53. package/dist/theme/animations.d.ts +12 -0
  54. package/dist/theme/animations.js +15 -0
  55. package/dist/theme/borders.cjs +23 -0
  56. package/dist/theme/borders.d.cts +1 -0
  57. package/dist/theme/borders.d.ts +1 -0
  58. package/dist/theme/borders.js +23 -0
  59. package/dist/theme/colors.cjs +57 -0
  60. package/dist/theme/colors.d.cts +1 -0
  61. package/dist/theme/colors.d.ts +1 -0
  62. package/dist/theme/colors.js +57 -0
  63. package/dist/theme/createTheme.cjs +7 -0
  64. package/dist/theme/createTheme.d.cts +133 -0
  65. package/dist/theme/createTheme.d.ts +133 -0
  66. package/dist/theme/createTheme.js +7 -0
  67. package/dist/theme/filters.cjs +9 -0
  68. package/dist/theme/filters.d.cts +21 -0
  69. package/dist/theme/filters.d.ts +21 -0
  70. package/dist/theme/filters.js +9 -0
  71. package/dist/theme/index.cjs +35 -0
  72. package/dist/theme/index.d.cts +18 -0
  73. package/dist/theme/index.d.ts +18 -0
  74. package/dist/theme/index.js +35 -0
  75. package/dist/theme/shadows.cjs +21 -0
  76. package/dist/theme/shadows.d.cts +1 -0
  77. package/dist/theme/shadows.d.ts +1 -0
  78. package/dist/theme/shadows.js +21 -0
  79. package/dist/theme/sizes.cjs +21 -0
  80. package/dist/theme/sizes.d.cts +1 -0
  81. package/dist/theme/sizes.d.ts +1 -0
  82. package/dist/theme/sizes.js +21 -0
  83. package/dist/theme/typography.cjs +55 -0
  84. package/dist/theme/typography.d.cts +1 -0
  85. package/dist/theme/typography.d.ts +1 -0
  86. package/dist/theme/typography.js +55 -0
  87. package/dist/types-FfRD4Hbd.d.cts +346 -0
  88. package/dist/types-FfRD4Hbd.d.ts +346 -0
  89. package/dist/typography-C8wipcCK.d.cts +87 -0
  90. package/dist/typography-C8wipcCK.d.ts +87 -0
  91. package/package.json +117 -33
  92. package/src/css.ts +0 -140
  93. package/src/cx.ts +0 -105
  94. package/src/dcx.ts +0 -79
  95. package/src/dynamic.ts +0 -117
  96. package/src/hash.ts +0 -55
  97. package/src/index.ts +0 -139
  98. package/src/inject.ts +0 -86
  99. package/src/layer.ts +0 -81
  100. package/src/modifiers/aria.ts +0 -15
  101. package/src/modifiers/colorScheme.ts +0 -32
  102. package/src/modifiers/data.ts +0 -6
  103. package/src/modifiers/direction.ts +0 -5
  104. package/src/modifiers/group.ts +0 -21
  105. package/src/modifiers/index.ts +0 -17
  106. package/src/modifiers/media.ts +0 -11
  107. package/src/modifiers/peer.ts +0 -24
  108. package/src/modifiers/pseudo.ts +0 -183
  109. package/src/modifiers/pseudoElements.ts +0 -26
  110. package/src/modifiers/responsive.ts +0 -110
  111. package/src/modifiers/supports.ts +0 -6
  112. package/src/registry.ts +0 -171
  113. package/src/theme/borders.ts +0 -9
  114. package/src/theme/colors.ts +0 -326
  115. package/src/theme/createTheme.ts +0 -238
  116. package/src/theme/filters.ts +0 -20
  117. package/src/theme/index.ts +0 -9
  118. package/src/theme/shadows.ts +0 -8
  119. package/src/theme/sizes.ts +0 -37
  120. package/src/theme/spacing.ts +0 -44
  121. package/src/theme/typography.ts +0 -72
  122. package/src/tw.ts +0 -967
  123. package/src/types.ts +0 -273
  124. package/src/utilities/accessibility.ts +0 -33
  125. package/src/utilities/backgrounds.ts +0 -87
  126. package/src/utilities/borders.ts +0 -629
  127. package/src/utilities/colors.ts +0 -151
  128. package/src/utilities/effects.ts +0 -181
  129. package/src/utilities/filters.ts +0 -113
  130. package/src/utilities/index.ts +0 -57
  131. package/src/utilities/interactivity.ts +0 -254
  132. package/src/utilities/layout.ts +0 -1194
  133. package/src/utilities/spacing.ts +0 -681
  134. package/src/utilities/svg.ts +0 -35
  135. package/src/utilities/tables.ts +0 -54
  136. package/src/utilities/transforms.ts +0 -88
  137. package/src/utilities/transitions.ts +0 -107
  138. package/src/utilities/typography.ts +0 -387
  139. package/src/when.ts +0 -63
@@ -0,0 +1,346 @@
1
+ /**
2
+ * A wrapper around a runtime-changeable CSS value.
3
+ *
4
+ * Instead of baking the value directly into the generated CSS, a
5
+ * `DynamicValue` is replaced with a CSS custom property reference
6
+ * (`var(--twc-dN)`). The actual value is applied at runtime through an
7
+ * inline `style` attribute, allowing it to change without regenerating
8
+ * the stylesheet.
9
+ *
10
+ * Create instances with the {@link dynamic} factory -- do not construct
11
+ * this interface manually.
12
+ *
13
+ * @typeParam T - The underlying value type, constrained to `string | number`.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * import { dynamic, bg, dcx } from 'typewritingclass'
18
+ *
19
+ * const color = dynamic('#e11d48')
20
+ * // color._tag => 'DynamicValue'
21
+ * // color.__value => '#e11d48'
22
+ * // color.__id => '--twc-d0'
23
+ *
24
+ * const { className, style } = dcx(bg(color))
25
+ * // Generated CSS uses var(--twc-d0) instead of the literal color.
26
+ * // style maps '--twc-d0' to '#e11d48' for the inline style attribute.
27
+ * ```
28
+ */
29
+ interface DynamicValue<T extends string | number = string | number> {
30
+ /** Discriminant tag for runtime type checking. Always `'DynamicValue'`. */
31
+ _tag: 'DynamicValue';
32
+ /** The current runtime value (e.g. `'#e11d48'` or `16`). */
33
+ __value: T;
34
+ /** The generated CSS custom property name (e.g. `'--twc-d0'`). */
35
+ __id: string;
36
+ }
37
+ /**
38
+ * Wraps a value so it becomes a runtime-dynamic CSS custom property.
39
+ *
40
+ * The returned {@link DynamicValue} can be passed to any utility that
41
+ * accepts `DynamicValue` (e.g. `bg`, `p`, `textColor`, `rounded`). When
42
+ * composed via {@link dcx}, the value is not inlined into the CSS rule;
43
+ * instead a `var(--twc-dN)` reference is emitted, and the concrete value
44
+ * is placed in the `style` object so it can be changed at runtime without
45
+ * touching the stylesheet.
46
+ *
47
+ * Each call to `dynamic` allocates a new, globally unique custom property
48
+ * name (`--twc-d0`, `--twc-d1`, ...).
49
+ *
50
+ * @typeParam T - Inferred from the provided value; constrained to `string | number`.
51
+ * @param value - The initial CSS value (e.g. a color hex string, a pixel value, etc.).
52
+ * @returns A {@link DynamicValue} wrapping the given value with a unique CSS
53
+ * custom property identifier.
54
+ *
55
+ * @example Dynamic background color in React
56
+ * ```ts
57
+ * import { dcx, bg, p, dynamic } from 'typewritingclass'
58
+ *
59
+ * function Banner({ color }: { color: string }) {
60
+ * const { className, style } = dcx(p(4), bg(dynamic(color)))
61
+ * return <div className={className} style={style} />
62
+ * }
63
+ * // CSS: ._xyz { background-color: var(--twc-d0); padding: 1rem; }
64
+ * // Inline style: --twc-d0: <whatever `color` is at render time>
65
+ * ```
66
+ *
67
+ * @example Dynamic spacing
68
+ * ```ts
69
+ * import { dcx, p, dynamic } from 'typewritingclass'
70
+ *
71
+ * const spacing = dynamic('2.5rem')
72
+ * const { className, style } = dcx(p(spacing))
73
+ * // className => "_a1b2c"
74
+ * // style => { '--twc-d0': '2.5rem' }
75
+ * // CSS: ._a1b2c { padding: var(--twc-d0); }
76
+ * ```
77
+ */
78
+ declare function dynamic<T extends string | number>(value: T): DynamicValue<T>;
79
+ /**
80
+ * Type-guard that checks whether an unknown value is a {@link DynamicValue}.
81
+ *
82
+ * Useful inside utilities and the `css` tagged-template implementation to
83
+ * decide whether to emit a `var()` reference or inline the value directly.
84
+ *
85
+ * @param v - Any value to test.
86
+ * @returns `true` if `v` is a `DynamicValue`, narrowing its type accordingly.
87
+ *
88
+ * @example
89
+ * ```ts
90
+ * import { dynamic, isDynamic } from 'typewritingclass'
91
+ *
92
+ * const val = dynamic('#ff0000')
93
+ * isDynamic(val) // => true
94
+ * isDynamic('#ff0000') // => false
95
+ * isDynamic(42) // => false
96
+ * isDynamic(null) // => false
97
+ * ```
98
+ */
99
+ declare function isDynamic(v: unknown): v is DynamicValue;
100
+
101
+ declare const __brand: unique symbol;
102
+ /**
103
+ * Creates a nominal/branded type from a base type.
104
+ *
105
+ * Branded types look like their base type at runtime but are distinct at the
106
+ * type level, preventing accidental misuse (e.g. passing a color where a
107
+ * spacing value is expected).
108
+ *
109
+ * @example
110
+ * ```ts
111
+ * type Meters = Brand<number, 'meters'>
112
+ * type Seconds = Brand<number, 'seconds'>
113
+ *
114
+ * const d: Meters = 5 as Meters
115
+ * const t: Seconds = d // Type error — distinct brands!
116
+ * ```
117
+ */
118
+ type Brand<T, B extends string> = T & {
119
+ readonly [__brand]: B;
120
+ };
121
+ /**
122
+ * A branded CSS color value — hex, `rgb()`, `hsl()`, CSS variable, etc.
123
+ *
124
+ * Theme color tokens (e.g. `blue[500]`) carry this brand. Raw color strings
125
+ * are also accepted alongside `CSSColor` since utility functions accept both.
126
+ */
127
+ type CSSColor = Brand<string, 'css-color'>;
128
+ /**
129
+ * A branded CSS length value — `rem`, `px`, `em`, `%`, `vh`, `vw`, etc.
130
+ *
131
+ * Theme spacing, size, and border-radius tokens carry this brand.
132
+ */
133
+ type CSSLength = Brand<string, 'css-length'>;
134
+ /**
135
+ * A branded CSS shadow value — `box-shadow` definition string.
136
+ *
137
+ * Theme shadow tokens (e.g. `lg` from `theme/shadows`) carry this brand.
138
+ */
139
+ type CSSShadow = Brand<string, 'css-shadow'>;
140
+ /**
141
+ * A branded CSS font-weight value — numeric string like `'400'` or `'700'`.
142
+ *
143
+ * Theme font weight tokens (e.g. `bold`, `semibold`) carry this brand.
144
+ */
145
+ type CSSFontWeight = Brand<string, 'css-font-weight'>;
146
+ /** Shorthand for any DynamicValue — used in utility input types. */
147
+ type DynamicValueAny = DynamicValue;
148
+ /**
149
+ * Input type for color utilities ({@link bg}, {@link textColor}, {@link borderColor}).
150
+ *
151
+ * Accepts theme color tokens (`CSSColor`), raw CSS color strings, or dynamic values.
152
+ */
153
+ type ColorInput = CSSColor | string | DynamicValueAny;
154
+ /**
155
+ * Input type for spacing utilities ({@link p}, {@link m}, {@link gap}).
156
+ *
157
+ * Accepts a theme scale number (`4` → `1rem`), a raw CSS length string
158
+ * (`'1.5rem'`), a theme length token, or a dynamic value.
159
+ */
160
+ type SpacingInput = number | CSSLength | string | DynamicValueAny;
161
+ /**
162
+ * Input type for size utilities ({@link w}, {@link h}, {@link minW}).
163
+ *
164
+ * Accepts a theme scale number, a raw CSS string (`'100%'`), a theme size
165
+ * token (`full`, `screen`), or a dynamic value.
166
+ */
167
+ type SizeInput = number | CSSLength | string | DynamicValueAny;
168
+ /**
169
+ * Input type for border-radius utilities ({@link rounded}).
170
+ *
171
+ * Accepts a theme radius token (`lg`), a raw CSS string, or a dynamic value.
172
+ */
173
+ type RadiusInput = CSSLength | string | DynamicValueAny;
174
+ /**
175
+ * Input type for shadow utilities ({@link shadow}).
176
+ *
177
+ * Accepts a theme shadow token (`lg`), a raw CSS string, or a dynamic value.
178
+ */
179
+ type ShadowInput = CSSShadow | string | DynamicValueAny;
180
+ /**
181
+ * A self-contained CSS rule produced by utility functions, the {@link css}
182
+ * helper, or modifier composition.
183
+ *
184
+ * `StyleRule` is the fundamental unit of the typewritingclass system. Every
185
+ * utility (`p`, `bg`, `rounded`, ...) returns a `StyleRule`, and composing
186
+ * functions like `cx` and `dcx` consume them to generate class names and
187
+ * register CSS in the global stylesheet.
188
+ *
189
+ * You rarely need to construct a `StyleRule` by hand -- use the provided
190
+ * utilities or the `css` tagged-template helper instead.
191
+ *
192
+ * @example Inspecting a rule returned by a utility
193
+ * ```ts
194
+ * import { p } from 'typewritingclass'
195
+ *
196
+ * const rule = p(4)
197
+ * // rule.declarations => { padding: '1rem' }
198
+ * // rule.selectors => []
199
+ * // rule.mediaQueries => []
200
+ * ```
201
+ *
202
+ * @example A rule wrapped with a modifier
203
+ * ```ts
204
+ * import { p, hover } from 'typewritingclass'
205
+ *
206
+ * const rule = hover(p(4))
207
+ * // rule.selectors => [':hover']
208
+ * // CSS: .className:hover { padding: 1rem; }
209
+ * ```
210
+ */
211
+ interface StyleRule {
212
+ /** Discriminant tag used for runtime type narrowing. Always `'StyleRule'`. */
213
+ _tag: 'StyleRule';
214
+ /**
215
+ * A map of CSS property-value pairs that this rule will emit.
216
+ *
217
+ * Keys are CSS property names (e.g. `'padding'`, `'background-color'`),
218
+ * and values are their corresponding CSS values (e.g. `'1rem'`, `'#3b82f6'`).
219
+ */
220
+ declarations: Record<string, string>;
221
+ /**
222
+ * Pseudo-class or pseudo-element selectors appended to the generated
223
+ * class name (e.g. `[':hover']`, `[':focus', ':active']`).
224
+ *
225
+ * An empty array means the rule applies unconditionally.
226
+ */
227
+ selectors: string[];
228
+ /**
229
+ * Media query strings that wrap the generated rule
230
+ * (e.g. `['(min-width: 768px)']`).
231
+ *
232
+ * An empty array means no `@media` wrapper is emitted.
233
+ */
234
+ mediaQueries: string[];
235
+ /**
236
+ * CSS custom property bindings for dynamic (runtime-changeable) values.
237
+ *
238
+ * When present, the generated CSS references `var(--twc-dN)` and these
239
+ * bindings must be applied as inline `style` on the element (via `dcx`).
240
+ * Keys are CSS custom property names (e.g. `'--twc-d0'`), values are
241
+ * the current runtime values (e.g. `'#ff0000'`).
242
+ */
243
+ dynamicBindings?: Record<string, string>;
244
+ /**
245
+ * `@supports` query strings that wrap the generated rule
246
+ * (e.g. `['(display: grid)']`).
247
+ *
248
+ * An empty array means no `@supports` wrapper is emitted.
249
+ */
250
+ supportsQueries: string[];
251
+ /**
252
+ * Optional selector template that wraps the generated class name in a
253
+ * more complex selector pattern. The `&` character is replaced with the
254
+ * generated `.className` at render time.
255
+ *
256
+ * Used for utilities like `spaceX`/`spaceY` (child combinator selectors),
257
+ * `group-*` / `peer-*` modifiers, and `rtl`/`ltr` direction modifiers.
258
+ *
259
+ * @example
260
+ * ```ts
261
+ * // spaceX uses: '& > :not([hidden]) ~ :not([hidden])'
262
+ * // group-hover uses: '.group:hover &'
263
+ * ```
264
+ */
265
+ selectorTemplate?: string;
266
+ }
267
+ /**
268
+ * A function that accepts a design-token value and returns a {@link StyleRule}.
269
+ *
270
+ * Every spacing, color, typography, and layout helper (`p`, `bg`, `text`, ...)
271
+ * satisfies this signature. The `value` parameter is intentionally `any` so
272
+ * that individual utilities can narrow it to their own accepted types
273
+ * (e.g. `number | string | DynamicValue`).
274
+ *
275
+ * @param value - The design-token or raw CSS value to apply.
276
+ * @returns A {@link StyleRule} containing the appropriate CSS declarations.
277
+ *
278
+ * @example
279
+ * ```ts
280
+ * import type { Utility } from 'typewritingclass'
281
+ * import { p } from 'typewritingclass'
282
+ *
283
+ * // `p` satisfies the Utility signature:
284
+ * const myUtility: Utility = p
285
+ * const rule = myUtility(4)
286
+ * // CSS: padding: 1rem;
287
+ * ```
288
+ */
289
+ type Utility = (value: any) => StyleRule;
290
+ /**
291
+ * A function that transforms a {@link StyleRule} by wrapping it with a
292
+ * pseudo-class selector or a media query.
293
+ *
294
+ * Modifiers are composable -- you can chain them via {@link when} to build
295
+ * multi-condition rules (e.g. "on hover, at medium breakpoint").
296
+ *
297
+ * @param rule - The source {@link StyleRule} to transform.
298
+ * @returns A new {@link StyleRule} with additional selectors or media queries.
299
+ *
300
+ * @example
301
+ * ```ts
302
+ * import type { Modifier } from 'typewritingclass'
303
+ * import { hover, md } from 'typewritingclass'
304
+ *
305
+ * // `hover` and `md` are both Modifiers:
306
+ * const hoverMod: Modifier = hover
307
+ * const mdMod: Modifier = md
308
+ * ```
309
+ */
310
+ type Modifier = (rule: StyleRule) => StyleRule;
311
+ /**
312
+ * The return value of {@link dcx}, containing both a class string and an
313
+ * inline `style` object for dynamic CSS custom-property bindings.
314
+ *
315
+ * Use this when your styles include runtime-changeable values created with
316
+ * {@link dynamic}. The `className` goes on the element's class attribute, and
317
+ * `style` must be spread onto the element's inline style so the CSS custom
318
+ * properties are set.
319
+ *
320
+ * @example
321
+ * ```ts
322
+ * import { dcx, bg, dynamic } from 'typewritingclass'
323
+ *
324
+ * const color = dynamic('#ff0000')
325
+ * const result = dcx(bg(color))
326
+ * // result.className => "_a1b2c"
327
+ * // result.style => { '--twc-d0': '#ff0000' }
328
+ *
329
+ * // In JSX:
330
+ * // <div className={result.className} style={result.style} />
331
+ * // CSS: .\_a1b2c { background-color: var(--twc-d0); }
332
+ * ```
333
+ */
334
+ interface DynamicResult {
335
+ /** A space-separated string of generated CSS class names, ready for `className` or `class`. */
336
+ className: string;
337
+ /**
338
+ * An object of CSS custom property assignments to apply as inline styles.
339
+ *
340
+ * Keys are custom property names (e.g. `'--twc-d0'`), values are the
341
+ * current runtime values (e.g. `'#ff0000'`, `'1.5rem'`).
342
+ */
343
+ style: Record<string, string>;
344
+ }
345
+
346
+ export { type Brand as B, type CSSColor as C, type DynamicResult as D, type Modifier as M, type RadiusInput as R, type StyleRule as S, type Utility as U, type DynamicValue as a, type CSSFontWeight as b, type CSSLength as c, type CSSShadow as d, type ColorInput as e, type ShadowInput as f, type SizeInput as g, type SpacingInput as h, dynamic as i, isDynamic as j };
@@ -0,0 +1,87 @@
1
+ interface TextSize {
2
+ fontSize: string;
3
+ lineHeight: string;
4
+ }
5
+ declare const xs: TextSize;
6
+ declare const sm: TextSize;
7
+ declare const base: TextSize;
8
+ declare const lg: TextSize;
9
+ declare const xl: TextSize;
10
+ declare const _2xl: TextSize;
11
+ declare const _3xl: TextSize;
12
+ declare const _4xl: TextSize;
13
+ declare const _5xl: TextSize;
14
+ declare const _6xl: TextSize;
15
+ declare const _7xl: TextSize;
16
+ declare const _8xl: TextSize;
17
+ declare const _9xl: TextSize;
18
+ declare const thin = "100";
19
+ declare const extralight = "200";
20
+ declare const light = "300";
21
+ declare const normal = "400";
22
+ declare const medium = "500";
23
+ declare const semibold = "600";
24
+ declare const bold = "700";
25
+ declare const extrabold = "800";
26
+ declare const black_ = "900";
27
+ declare const fontFamilies: {
28
+ readonly sans: "ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"";
29
+ readonly serif: "ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif";
30
+ readonly mono: "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace";
31
+ };
32
+ declare const letterSpacings: {
33
+ readonly tighter: "-0.05em";
34
+ readonly tight: "-0.025em";
35
+ readonly normal: "0em";
36
+ readonly wide: "0.025em";
37
+ readonly wider: "0.05em";
38
+ readonly widest: "0.1em";
39
+ };
40
+ declare const lineHeights: {
41
+ readonly none: "1";
42
+ readonly tight: "1.25";
43
+ readonly snug: "1.375";
44
+ readonly normal: "1.5";
45
+ readonly relaxed: "1.625";
46
+ readonly loose: "2";
47
+ readonly '3': ".75rem";
48
+ readonly '4': "1rem";
49
+ readonly '5': "1.25rem";
50
+ readonly '6': "1.5rem";
51
+ readonly '7': "1.75rem";
52
+ readonly '8': "2rem";
53
+ readonly '9': "2.25rem";
54
+ readonly '10': "2.5rem";
55
+ };
56
+
57
+ type typography_TextSize = TextSize;
58
+ declare const typography__2xl: typeof _2xl;
59
+ declare const typography__3xl: typeof _3xl;
60
+ declare const typography__4xl: typeof _4xl;
61
+ declare const typography__5xl: typeof _5xl;
62
+ declare const typography__6xl: typeof _6xl;
63
+ declare const typography__7xl: typeof _7xl;
64
+ declare const typography__8xl: typeof _8xl;
65
+ declare const typography__9xl: typeof _9xl;
66
+ declare const typography_base: typeof base;
67
+ declare const typography_black_: typeof black_;
68
+ declare const typography_bold: typeof bold;
69
+ declare const typography_extrabold: typeof extrabold;
70
+ declare const typography_extralight: typeof extralight;
71
+ declare const typography_fontFamilies: typeof fontFamilies;
72
+ declare const typography_letterSpacings: typeof letterSpacings;
73
+ declare const typography_lg: typeof lg;
74
+ declare const typography_light: typeof light;
75
+ declare const typography_lineHeights: typeof lineHeights;
76
+ declare const typography_medium: typeof medium;
77
+ declare const typography_normal: typeof normal;
78
+ declare const typography_semibold: typeof semibold;
79
+ declare const typography_sm: typeof sm;
80
+ declare const typography_thin: typeof thin;
81
+ declare const typography_xl: typeof xl;
82
+ declare const typography_xs: typeof xs;
83
+ declare namespace typography {
84
+ export { type typography_TextSize as TextSize, typography__2xl as _2xl, typography__3xl as _3xl, typography__4xl as _4xl, typography__5xl as _5xl, typography__6xl as _6xl, typography__7xl as _7xl, typography__8xl as _8xl, typography__9xl as _9xl, typography_base as base, typography_black_ as black_, typography_bold as bold, typography_extrabold as extrabold, typography_extralight as extralight, typography_fontFamilies as fontFamilies, typography_letterSpacings as letterSpacings, typography_lg as lg, typography_light as light, typography_lineHeights as lineHeights, typography_medium as medium, typography_normal as normal, typography_semibold as semibold, typography_sm as sm, typography_thin as thin, typography_xl as xl, typography_xs as xs };
85
+ }
86
+
87
+ export { type TextSize as T, _2xl as _, _3xl as a, _4xl as b, _5xl as c, _6xl as d, _7xl as e, _8xl as f, _9xl as g, base as h, black_ as i, bold as j, extrabold as k, extralight as l, fontFamilies as m, letterSpacings as n, lg as o, light as p, lineHeights as q, medium as r, normal as s, typography as t, semibold as u, sm as v, thin as w, xl as x, xs as y };
@@ -0,0 +1,87 @@
1
+ interface TextSize {
2
+ fontSize: string;
3
+ lineHeight: string;
4
+ }
5
+ declare const xs: TextSize;
6
+ declare const sm: TextSize;
7
+ declare const base: TextSize;
8
+ declare const lg: TextSize;
9
+ declare const xl: TextSize;
10
+ declare const _2xl: TextSize;
11
+ declare const _3xl: TextSize;
12
+ declare const _4xl: TextSize;
13
+ declare const _5xl: TextSize;
14
+ declare const _6xl: TextSize;
15
+ declare const _7xl: TextSize;
16
+ declare const _8xl: TextSize;
17
+ declare const _9xl: TextSize;
18
+ declare const thin = "100";
19
+ declare const extralight = "200";
20
+ declare const light = "300";
21
+ declare const normal = "400";
22
+ declare const medium = "500";
23
+ declare const semibold = "600";
24
+ declare const bold = "700";
25
+ declare const extrabold = "800";
26
+ declare const black_ = "900";
27
+ declare const fontFamilies: {
28
+ readonly sans: "ui-sans-serif, system-ui, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"";
29
+ readonly serif: "ui-serif, Georgia, Cambria, \"Times New Roman\", Times, serif";
30
+ readonly mono: "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace";
31
+ };
32
+ declare const letterSpacings: {
33
+ readonly tighter: "-0.05em";
34
+ readonly tight: "-0.025em";
35
+ readonly normal: "0em";
36
+ readonly wide: "0.025em";
37
+ readonly wider: "0.05em";
38
+ readonly widest: "0.1em";
39
+ };
40
+ declare const lineHeights: {
41
+ readonly none: "1";
42
+ readonly tight: "1.25";
43
+ readonly snug: "1.375";
44
+ readonly normal: "1.5";
45
+ readonly relaxed: "1.625";
46
+ readonly loose: "2";
47
+ readonly '3': ".75rem";
48
+ readonly '4': "1rem";
49
+ readonly '5': "1.25rem";
50
+ readonly '6': "1.5rem";
51
+ readonly '7': "1.75rem";
52
+ readonly '8': "2rem";
53
+ readonly '9': "2.25rem";
54
+ readonly '10': "2.5rem";
55
+ };
56
+
57
+ type typography_TextSize = TextSize;
58
+ declare const typography__2xl: typeof _2xl;
59
+ declare const typography__3xl: typeof _3xl;
60
+ declare const typography__4xl: typeof _4xl;
61
+ declare const typography__5xl: typeof _5xl;
62
+ declare const typography__6xl: typeof _6xl;
63
+ declare const typography__7xl: typeof _7xl;
64
+ declare const typography__8xl: typeof _8xl;
65
+ declare const typography__9xl: typeof _9xl;
66
+ declare const typography_base: typeof base;
67
+ declare const typography_black_: typeof black_;
68
+ declare const typography_bold: typeof bold;
69
+ declare const typography_extrabold: typeof extrabold;
70
+ declare const typography_extralight: typeof extralight;
71
+ declare const typography_fontFamilies: typeof fontFamilies;
72
+ declare const typography_letterSpacings: typeof letterSpacings;
73
+ declare const typography_lg: typeof lg;
74
+ declare const typography_light: typeof light;
75
+ declare const typography_lineHeights: typeof lineHeights;
76
+ declare const typography_medium: typeof medium;
77
+ declare const typography_normal: typeof normal;
78
+ declare const typography_semibold: typeof semibold;
79
+ declare const typography_sm: typeof sm;
80
+ declare const typography_thin: typeof thin;
81
+ declare const typography_xl: typeof xl;
82
+ declare const typography_xs: typeof xs;
83
+ declare namespace typography {
84
+ export { type typography_TextSize as TextSize, typography__2xl as _2xl, typography__3xl as _3xl, typography__4xl as _4xl, typography__5xl as _5xl, typography__6xl as _6xl, typography__7xl as _7xl, typography__8xl as _8xl, typography__9xl as _9xl, typography_base as base, typography_black_ as black_, typography_bold as bold, typography_extrabold as extrabold, typography_extralight as extralight, typography_fontFamilies as fontFamilies, typography_letterSpacings as letterSpacings, typography_lg as lg, typography_light as light, typography_lineHeights as lineHeights, typography_medium as medium, typography_normal as normal, typography_semibold as semibold, typography_sm as sm, typography_thin as thin, typography_xl as xl, typography_xs as xs };
85
+ }
86
+
87
+ export { type TextSize as T, _2xl as _, _3xl as a, _4xl as b, _5xl as c, _6xl as d, _7xl as e, _8xl as f, _9xl as g, base as h, black_ as i, bold as j, extrabold as k, extralight as l, fontFamilies as m, letterSpacings as n, lg as o, light as p, lineHeights as q, medium as r, normal as s, typography as t, semibold as u, sm as v, thin as w, xl as x, xs as y };