@work-rjkashyap/unified-ui 0.1.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 (60) hide show
  1. package/CHANGELOG.md +152 -0
  2. package/README.md +365 -0
  3. package/dist/chunk-2JFREULQ.cjs +29 -0
  4. package/dist/chunk-2RGLRX6K.cjs +279 -0
  5. package/dist/chunk-3HHJAYQI.cjs +469 -0
  6. package/dist/chunk-5S5DMH5G.cjs +5983 -0
  7. package/dist/chunk-BIW2RPDU.cjs +73 -0
  8. package/dist/chunk-CWETOWRM.mjs +456 -0
  9. package/dist/chunk-ECIGDEAH.cjs +140 -0
  10. package/dist/chunk-EO4WROWH.mjs +432 -0
  11. package/dist/chunk-EZ2L3XPS.mjs +83 -0
  12. package/dist/chunk-I74E52C5.mjs +271 -0
  13. package/dist/chunk-ITBG42M5.mjs +133 -0
  14. package/dist/chunk-IWJ5VMZ7.mjs +323 -0
  15. package/dist/chunk-KHON2AEM.cjs +342 -0
  16. package/dist/chunk-LSNKPQP7.cjs +58 -0
  17. package/dist/chunk-M2LNQWOB.mjs +63 -0
  18. package/dist/chunk-NMPHV6ZD.mjs +27 -0
  19. package/dist/chunk-QXR4VY7Q.cjs +268 -0
  20. package/dist/chunk-SSGN5QDC.mjs +248 -0
  21. package/dist/chunk-X2WCY4VB.mjs +5836 -0
  22. package/dist/chunk-XCKK6P46.cjs +91 -0
  23. package/dist/chunk-ZBN26FLO.mjs +46 -0
  24. package/dist/chunk-ZPIPKY2J.cjs +478 -0
  25. package/dist/components.cjs +477 -0
  26. package/dist/components.d.cts +3077 -0
  27. package/dist/components.d.ts +3077 -0
  28. package/dist/components.mjs +4 -0
  29. package/dist/index.cjs +1027 -0
  30. package/dist/index.d.cts +30 -0
  31. package/dist/index.d.ts +30 -0
  32. package/dist/index.mjs +17 -0
  33. package/dist/motion-D9wQbcKL.d.cts +80 -0
  34. package/dist/motion-D9wQbcKL.d.ts +80 -0
  35. package/dist/motion.cjs +216 -0
  36. package/dist/motion.d.cts +104 -0
  37. package/dist/motion.d.ts +104 -0
  38. package/dist/motion.mjs +3 -0
  39. package/dist/primitives.cjs +57 -0
  40. package/dist/primitives.d.cts +390 -0
  41. package/dist/primitives.d.ts +390 -0
  42. package/dist/primitives.mjs +4 -0
  43. package/dist/theme.cjs +38 -0
  44. package/dist/theme.d.cts +117 -0
  45. package/dist/theme.d.ts +117 -0
  46. package/dist/theme.mjs +5 -0
  47. package/dist/tokens.cjs +137 -0
  48. package/dist/tokens.d.cts +30 -0
  49. package/dist/tokens.d.ts +30 -0
  50. package/dist/tokens.mjs +4 -0
  51. package/dist/typography-DlvVjEdE.d.cts +146 -0
  52. package/dist/typography-DlvVjEdE.d.ts +146 -0
  53. package/dist/utils.cjs +164 -0
  54. package/dist/utils.d.cts +521 -0
  55. package/dist/utils.d.ts +521 -0
  56. package/dist/utils.mjs +3 -0
  57. package/dist/z-index-B_nTQ3qo.d.cts +422 -0
  58. package/dist/z-index-B_nTQ3qo.d.ts +422 -0
  59. package/package.json +183 -0
  60. package/styles.css +500 -0
@@ -0,0 +1,104 @@
1
+ export { D as Duration, E as Easing, S as Spring, a as Stagger, d as duration, b as durationCSS, c as durationSeconds, e as easing, f as easingCSS, s as spring, g as stagger } from './motion-D9wQbcKL.js';
2
+ import { ReactNode } from 'react';
3
+ import { Variants, Transition, TargetAndTransition } from 'framer-motion';
4
+
5
+ interface MotionPreset {
6
+ variants: Variants;
7
+ transition: Transition;
8
+ }
9
+ interface MotionPropsResult {
10
+ variants: Variants;
11
+ initial: string;
12
+ animate: string;
13
+ exit: string;
14
+ }
15
+ declare function motionProps(preset: MotionPreset): MotionPropsResult;
16
+ declare const fadeIn: MotionPreset;
17
+ declare const fadeInSlow: MotionPreset;
18
+ declare const fadeInFast: MotionPreset;
19
+ declare const scaleIn: MotionPreset;
20
+ declare const scaleInSpring: MotionPreset;
21
+ declare const scaleInLg: MotionPreset;
22
+ declare const slideUp: MotionPreset;
23
+ declare const slideUpSm: MotionPreset;
24
+ declare const slideUpLg: MotionPreset;
25
+ declare const slideUpSpring: MotionPreset;
26
+ declare const slideDown: MotionPreset;
27
+ declare const slideDownSm: MotionPreset;
28
+ declare const slideLeft: MotionPreset;
29
+ declare const slideRight: MotionPreset;
30
+ declare const slideInFromRight: MotionPreset;
31
+ declare const slideInFromLeft: MotionPreset;
32
+ declare const slideInFromBottom: MotionPreset;
33
+ declare const expandHeight: MotionPreset;
34
+ declare const expandHeightSlow: MotionPreset;
35
+ declare const pop: MotionPreset;
36
+ declare const popSubtle: MotionPreset;
37
+ declare const blurIn: MotionPreset;
38
+ declare const blurInSubtle: MotionPreset;
39
+ declare const staggerContainer: MotionPreset;
40
+ declare const staggerContainerFast: MotionPreset;
41
+ declare const staggerContainerSlow: MotionPreset;
42
+ declare const overlayBackdrop: MotionPreset;
43
+ declare const modalContent: MotionPreset;
44
+ declare const modalContentSpring: MotionPreset;
45
+ declare const toastSlideIn: MotionPreset;
46
+ declare const toastSlideUp: MotionPreset;
47
+ /** Subtle press-down effect for buttons */
48
+ declare const press: MotionPreset;
49
+ /** Tap animation target — use with whileTap */
50
+ declare const tapScale: TargetAndTransition;
51
+ /** Hover animation target — use with whileHover */
52
+ declare const hoverScale: TargetAndTransition;
53
+ /** Hover lift effect — use with whileHover for cards */
54
+ declare const hoverLift: TargetAndTransition;
55
+ declare const pulse: MotionPreset;
56
+ declare const spin: MotionPreset;
57
+ /**
58
+ * Returns a preset that only uses opacity (no transform) for users who
59
+ * prefer reduced motion. Falls back to the original preset otherwise.
60
+ *
61
+ * @param preset - The original motion preset
62
+ * @returns A reduced-motion-safe version of the preset
63
+ */
64
+ declare function reduceMotion(preset: MotionPreset): MotionPreset;
65
+ /**
66
+ * Conditionally returns the full or reduced preset based on a boolean flag.
67
+ * Use with Framer Motion's `useReducedMotion()` hook.
68
+ *
69
+ * @example
70
+ * ```tsx
71
+ * const shouldReduce = useReducedMotion();
72
+ * const animation = withReducedMotion(slideUp, shouldReduce);
73
+ * ```
74
+ */
75
+ declare function withReducedMotion(preset: MotionPreset, prefersReduced: boolean | null): MotionPreset;
76
+
77
+ declare function useReducedMotion(): boolean;
78
+ declare function useMotion(preset: MotionPreset): MotionPreset;
79
+ declare function useMotionProps(preset: MotionPreset): MotionPropsResult;
80
+ interface SpringConfig {
81
+ stiffness?: number;
82
+ damping?: number;
83
+ mass?: number;
84
+ duration?: number;
85
+ }
86
+ declare function useMotionSpringConfig(config: SpringConfig): SpringConfig;
87
+ interface MotionSafeProps {
88
+ /**
89
+ * Content to render when motion is allowed.
90
+ * Can be a ReactNode or a render function that receives the
91
+ * `prefersReduced` boolean.
92
+ */
93
+ children: ReactNode | ((prefersReduced: boolean) => ReactNode);
94
+ /**
95
+ * Content to render when the user prefers reduced motion.
96
+ * Only used when `children` is a ReactNode (not a render function).
97
+ * If not provided and children is a ReactNode, children are rendered
98
+ * regardless (you should use `useMotion` inside instead).
99
+ */
100
+ fallback?: ReactNode;
101
+ }
102
+ declare function MotionSafe({ children, fallback }: MotionSafeProps): ReactNode;
103
+
104
+ export { type MotionPreset, type MotionPropsResult, MotionSafe, type MotionSafeProps, type SpringConfig, blurIn, blurInSubtle, expandHeight, expandHeightSlow, fadeIn, fadeInFast, fadeInSlow, hoverLift, hoverScale, modalContent, modalContentSpring, motionProps, overlayBackdrop, pop, popSubtle, press, pulse, reduceMotion, scaleIn, scaleInLg, scaleInSpring, slideDown, slideDownSm, slideInFromBottom, slideInFromLeft, slideInFromRight, slideLeft, slideRight, slideUp, slideUpLg, slideUpSm, slideUpSpring, spin, staggerContainer, staggerContainerFast, staggerContainerSlow, tapScale, toastSlideIn, toastSlideUp, useMotion, useMotionProps, useMotionSpringConfig, useReducedMotion, withReducedMotion };
@@ -0,0 +1,3 @@
1
+ "use client";
2
+ export { MotionSafe, blurIn, blurInSubtle, expandHeight, expandHeightSlow, fadeIn, fadeInFast, fadeInSlow, hoverLift, hoverScale, modalContent, modalContentSpring, motionProps, overlayBackdrop, pop, popSubtle, press, pulse, reduceMotion, scaleIn, scaleInLg, scaleInSpring, slideDown, slideDownSm, slideInFromBottom, slideInFromLeft, slideInFromRight, slideLeft, slideRight, slideUp, slideUpLg, slideUpSm, slideUpSpring, spin, staggerContainer, staggerContainerFast, staggerContainerSlow, tapScale, toastSlideIn, toastSlideUp, useMotion, useMotionProps, useMotionSpringConfig, useReducedMotion, withReducedMotion } from './chunk-EO4WROWH.mjs';
3
+ export { duration, durationCSS, durationSeconds, easing, easingCSS, spring, stagger } from './chunk-EZ2L3XPS.mjs';
@@ -0,0 +1,57 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var chunk3HHJAYQI_cjs = require('./chunk-3HHJAYQI.cjs');
5
+ require('./chunk-ECIGDEAH.cjs');
6
+ require('./chunk-BIW2RPDU.cjs');
7
+
8
+
9
+
10
+ Object.defineProperty(exports, "Body", {
11
+ enumerable: true,
12
+ get: function () { return chunk3HHJAYQI_cjs.Body; }
13
+ });
14
+ Object.defineProperty(exports, "Caption", {
15
+ enumerable: true,
16
+ get: function () { return chunk3HHJAYQI_cjs.Caption; }
17
+ });
18
+ Object.defineProperty(exports, "Container", {
19
+ enumerable: true,
20
+ get: function () { return chunk3HHJAYQI_cjs.Container; }
21
+ });
22
+ Object.defineProperty(exports, "Divider", {
23
+ enumerable: true,
24
+ get: function () { return chunk3HHJAYQI_cjs.Divider; }
25
+ });
26
+ Object.defineProperty(exports, "Grid", {
27
+ enumerable: true,
28
+ get: function () { return chunk3HHJAYQI_cjs.Grid; }
29
+ });
30
+ Object.defineProperty(exports, "Heading", {
31
+ enumerable: true,
32
+ get: function () { return chunk3HHJAYQI_cjs.Heading; }
33
+ });
34
+ Object.defineProperty(exports, "InlineCode", {
35
+ enumerable: true,
36
+ get: function () { return chunk3HHJAYQI_cjs.InlineCode; }
37
+ });
38
+ Object.defineProperty(exports, "Label", {
39
+ enumerable: true,
40
+ get: function () { return chunk3HHJAYQI_cjs.Label; }
41
+ });
42
+ Object.defineProperty(exports, "Overline", {
43
+ enumerable: true,
44
+ get: function () { return chunk3HHJAYQI_cjs.Overline; }
45
+ });
46
+ Object.defineProperty(exports, "Stack", {
47
+ enumerable: true,
48
+ get: function () { return chunk3HHJAYQI_cjs.Stack; }
49
+ });
50
+ Object.defineProperty(exports, "Subheading", {
51
+ enumerable: true,
52
+ get: function () { return chunk3HHJAYQI_cjs.Subheading; }
53
+ });
54
+ Object.defineProperty(exports, "Typography", {
55
+ enumerable: true,
56
+ get: function () { return chunk3HHJAYQI_cjs.Typography; }
57
+ });
@@ -0,0 +1,390 @@
1
+ import * as react from 'react';
2
+ import { ElementType, ReactNode } from 'react';
3
+ import { a as FontFamilyKey } from './typography-DlvVjEdE.cjs';
4
+
5
+ declare const sizeClassMap: {
6
+ /** 640px — narrow forms, single-column content */
7
+ readonly xs: "max-w-screen-sm";
8
+ /** 768px — articles, focused reading content */
9
+ readonly sm: "max-w-screen-md";
10
+ /** 1024px — dashboards, multi-column layouts */
11
+ readonly md: "max-w-screen-lg";
12
+ /** 1280px — default, full-width page content */
13
+ readonly lg: "max-w-7xl";
14
+ /** No max-width constraint — full bleed */
15
+ readonly full: "max-w-full";
16
+ };
17
+ declare const paddingClassMap: {
18
+ /** No horizontal padding */
19
+ readonly none: "";
20
+ /** Tighter padding: px-3 → px-4 → px-6 */
21
+ readonly tight: "px-3 sm:px-4 lg:px-6";
22
+ /** Standard padding: px-4 → px-6 → px-8 (project default) */
23
+ readonly default: "px-4 sm:px-6 lg:px-8";
24
+ /** Wider padding: px-6 → px-8 → px-10 */
25
+ readonly wide: "px-6 sm:px-8 lg:px-10";
26
+ };
27
+ type ContainerSize = keyof typeof sizeClassMap;
28
+ type ContainerPadding = keyof typeof paddingClassMap;
29
+ interface ContainerProps extends React.HTMLAttributes<HTMLElement> {
30
+ /**
31
+ * Max-width constraint for the container.
32
+ * @default "lg" (1280px / max-w-7xl)
33
+ */
34
+ size?: ContainerSize;
35
+ /**
36
+ * Horizontal padding preset. Responsive by default.
37
+ * @default "default" (px-4 → px-6 → px-8)
38
+ */
39
+ padding?: ContainerPadding;
40
+ /**
41
+ * Center the container horizontally. Almost always true.
42
+ * @default true
43
+ */
44
+ centered?: boolean;
45
+ /**
46
+ * The HTML element to render as.
47
+ * @default "div"
48
+ */
49
+ as?: ElementType;
50
+ /** Content to render inside the container. */
51
+ children?: ReactNode;
52
+ /** Additional CSS classes to merge. */
53
+ className?: string;
54
+ }
55
+ /**
56
+ * Container — constrains content width and applies responsive horizontal padding.
57
+ *
58
+ * This is the primary layout wrapper for page-level content. It enforces the
59
+ * design system's max-width and padding guidelines so you never need to
60
+ * remember the responsive padding breakpoints.
61
+ *
62
+ * @example
63
+ * ```tsx
64
+ * // Standard page container (1280px max, responsive padding)
65
+ * <Container>
66
+ * <h1>Page Title</h1>
67
+ * <p>Content here is properly constrained and padded.</p>
68
+ * </Container>
69
+ *
70
+ * // Narrow container for a form
71
+ * <Container size="xs" padding="tight">
72
+ * <form>...</form>
73
+ * </Container>
74
+ *
75
+ * // Full-bleed section with no padding
76
+ * <Container size="full" padding="none" as="section">
77
+ * <div className="bg-ds-surface py-10">...</div>
78
+ * </Container>
79
+ * ```
80
+ */
81
+ declare const Container: react.ForwardRefExoticComponent<ContainerProps & react.RefAttributes<HTMLElement>>;
82
+
83
+ interface DividerProps extends React.HTMLAttributes<HTMLHRElement> {
84
+ /**
85
+ * Vertical margin above and below (horizontal) or horizontal margin
86
+ * left and right (vertical) of the divider, using Tailwind spacing scale.
87
+ * @default 4
88
+ */
89
+ spacing?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | 12;
90
+ /**
91
+ * Orientation of the divider.
92
+ * @default "horizontal"
93
+ */
94
+ orientation?: "horizontal" | "vertical";
95
+ /** Additional CSS classes. */
96
+ className?: string;
97
+ }
98
+ /**
99
+ * Divider — a visual separator line that uses design system border tokens.
100
+ *
101
+ * @example
102
+ * ```tsx
103
+ * <Divider />
104
+ * <Divider spacing={6} />
105
+ * <Divider orientation="vertical" />
106
+ * ```
107
+ */
108
+ declare const Divider: react.ForwardRefExoticComponent<DividerProps & react.RefAttributes<HTMLHRElement>>;
109
+
110
+ type SpacingToken = 0 | 0.5 | 1 | 1.5 | 2 | 2.5 | 3 | 3.5 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 14 | 16 | 20 | 24;
111
+ declare const directionClassMap: {
112
+ readonly vertical: "flex-col";
113
+ readonly horizontal: "flex-row";
114
+ };
115
+ declare const alignClassMap: {
116
+ readonly start: "items-start";
117
+ readonly center: "items-center";
118
+ readonly end: "items-end";
119
+ readonly stretch: "items-stretch";
120
+ readonly baseline: "items-baseline";
121
+ };
122
+ declare const justifyClassMap: {
123
+ readonly start: "justify-start";
124
+ readonly center: "justify-center";
125
+ readonly end: "justify-end";
126
+ readonly between: "justify-between";
127
+ readonly around: "justify-around";
128
+ readonly evenly: "justify-evenly";
129
+ };
130
+ type StackDirection = keyof typeof directionClassMap;
131
+ type StackAlign = keyof typeof alignClassMap;
132
+ type StackJustify = keyof typeof justifyClassMap;
133
+ interface StackProps extends React.HTMLAttributes<HTMLElement> {
134
+ /**
135
+ * Spacing between children. Uses the design system's spacing token scale.
136
+ * Each unit = 4px (e.g. gap={4} → 16px).
137
+ * @default 4
138
+ */
139
+ gap?: SpacingToken;
140
+ /**
141
+ * Layout direction.
142
+ * @default "vertical"
143
+ */
144
+ direction?: StackDirection;
145
+ /**
146
+ * Cross-axis alignment (align-items).
147
+ * @default "stretch"
148
+ */
149
+ align?: StackAlign;
150
+ /**
151
+ * Main-axis distribution (justify-content).
152
+ * @default "start"
153
+ */
154
+ justify?: StackJustify;
155
+ /**
156
+ * Whether children should wrap when they overflow.
157
+ * @default false
158
+ */
159
+ wrap?: boolean;
160
+ /**
161
+ * The HTML element to render as.
162
+ * @default "div"
163
+ */
164
+ as?: ElementType;
165
+ /** Content to render. */
166
+ children?: ReactNode;
167
+ /** Additional CSS classes. */
168
+ className?: string;
169
+ }
170
+ /**
171
+ * Stack — arranges children with consistent spacing along a single axis.
172
+ *
173
+ * Built on CSS Flexbox. All gap values come from the design system's
174
+ * 4px grid spacing tokens, ensuring visual rhythm is maintained.
175
+ *
176
+ * @example
177
+ * ```tsx
178
+ * // Vertical stack with 16px gap (default)
179
+ * <Stack gap={4}>
180
+ * <Heading level={1}>Title</Heading>
181
+ * <Body>Description</Body>
182
+ * </Stack>
183
+ *
184
+ * // Horizontal stack with center alignment
185
+ * <Stack direction="horizontal" gap={3} align="center">
186
+ * <Avatar />
187
+ * <Body>Username</Body>
188
+ * </Stack>
189
+ *
190
+ * // Space-between row
191
+ * <Stack direction="horizontal" justify="between" align="center">
192
+ * <Body>Left</Body>
193
+ * <Button>Right</Button>
194
+ * </Stack>
195
+ * ```
196
+ */
197
+ declare const Stack: react.ForwardRefExoticComponent<StackProps & react.RefAttributes<HTMLElement>>;
198
+ interface GridProps extends React.HTMLAttributes<HTMLElement> {
199
+ /**
200
+ * Number of columns at the base (mobile) breakpoint.
201
+ * @default 1
202
+ */
203
+ cols?: 1 | 2 | 3 | 4 | 5 | 6;
204
+ /** Columns at the sm breakpoint (640px+). */
205
+ colsSm?: 1 | 2 | 3 | 4;
206
+ /** Columns at the md breakpoint (768px+). */
207
+ colsMd?: 1 | 2 | 3 | 4;
208
+ /** Columns at the lg breakpoint (1024px+). */
209
+ colsLg?: 1 | 2 | 3 | 4 | 5 | 6;
210
+ /**
211
+ * Gap between grid cells. Uses the spacing token scale.
212
+ * @default 4
213
+ */
214
+ gap?: SpacingToken;
215
+ /**
216
+ * The HTML element to render as.
217
+ * @default "div"
218
+ */
219
+ as?: ElementType;
220
+ /** Content to render. */
221
+ children?: ReactNode;
222
+ /** Additional CSS classes. */
223
+ className?: string;
224
+ }
225
+ /**
226
+ * Grid — CSS Grid wrapper with responsive column control.
227
+ *
228
+ * @example
229
+ * ```tsx
230
+ * // Responsive 3-column grid (1 on mobile, 2 on tablet, 3 on desktop)
231
+ * <Grid cols={1} colsMd={2} colsLg={3} gap={4}>
232
+ * <Card /><Card /><Card />
233
+ * </Grid>
234
+ * ```
235
+ */
236
+ declare const Grid: react.ForwardRefExoticComponent<GridProps & react.RefAttributes<HTMLElement>>;
237
+
238
+ type TypographyFont = FontFamilyKey;
239
+ type TypographyVariant = "heading1" | "heading2" | "heading3" | "subheading" | "body" | "bodySm" | "caption" | "label" | "overline" | "code";
240
+ type TypographyColor = "default" | "foreground" | "muted" | "primary" | "success" | "warning" | "danger" | "info" | "inherit";
241
+ type TypographyAlign = "left" | "center" | "right";
242
+ interface TypographyOwnProps {
243
+ /** The typographic variant to render. Determines size, weight, and default element. */
244
+ variant?: TypographyVariant;
245
+ /**
246
+ * Font family to use. Overrides the variant's default font.
247
+ *
248
+ * - `"sans"` — primary UI typeface (Outfit)
249
+ * - `"display"` — display/heading typeface (Inter)
250
+ * - `"serif"` — long-form reading typeface (Lora)
251
+ * - `"mono"` — code/technical typeface (JetBrains Mono)
252
+ * - `"inherit"` — inherit from parent element
253
+ *
254
+ * If not specified, the variant's default font is used (e.g. `code` → `"mono"`,
255
+ * all others → `"sans"`).
256
+ */
257
+ font?: TypographyFont;
258
+ /** Semantic text color. Overrides the variant's default color. */
259
+ color?: TypographyColor;
260
+ /** Text alignment. */
261
+ align?: TypographyAlign;
262
+ /**
263
+ * Override the rendered HTML element. By default, each variant renders
264
+ * as its semantically appropriate element (e.g. heading1 → <h1>).
265
+ */
266
+ as?: ElementType;
267
+ /**
268
+ * Truncate text with an ellipsis after a single line.
269
+ * Mutually exclusive with `lineClamp`.
270
+ */
271
+ truncate?: boolean;
272
+ /**
273
+ * Clamp text to the specified number of lines with an ellipsis.
274
+ * Mutually exclusive with `truncate`.
275
+ */
276
+ lineClamp?: 1 | 2 | 3 | 4 | 5 | 6;
277
+ /** If true, removes the default bottom margin. */
278
+ noMargin?: boolean;
279
+ /** Additional CSS classes to merge. */
280
+ className?: string;
281
+ /** Content to render. */
282
+ children?: ReactNode;
283
+ }
284
+ type TypographyProps = TypographyOwnProps & Omit<React.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps>;
285
+ /**
286
+ * Typography — the foundational text rendering primitive for the Unified UI
287
+ * design system.
288
+ *
289
+ * Enforces consistent typographic styling through variant-based presets
290
+ * derived from the token layer. Supports polymorphic rendering, multi-font
291
+ * families, semantic colors, truncation, and line clamping.
292
+ *
293
+ * @example
294
+ * ```tsx
295
+ * <Typography variant="heading1">Welcome</Typography>
296
+ * <Typography variant="heading1" font="display">Marketing Hero</Typography>
297
+ * <Typography variant="body" color="muted">Some description text.</Typography>
298
+ * <Typography variant="body" font="serif">Long editorial paragraph.</Typography>
299
+ * <Typography variant="caption" truncate>Very long text that might overflow...</Typography>
300
+ * <Typography variant="label" as="span">Inline label</Typography>
301
+ * ```
302
+ */
303
+ declare const Typography: react.ForwardRefExoticComponent<TypographyOwnProps & Omit<react.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps> & react.RefAttributes<HTMLElement>>;
304
+ interface HeadingProps extends Omit<TypographyOwnProps, "variant"> {
305
+ /** Heading level: 1, 2, or 3. Maps to heading1, heading2, heading3 variants. */
306
+ level?: 1 | 2 | 3;
307
+ }
308
+ type HeadingComponentProps = HeadingProps & Omit<React.HTMLAttributes<HTMLHeadingElement>, keyof HeadingProps>;
309
+ /**
310
+ * Heading — renders an <h1>, <h2>, or <h3> with the appropriate typographic preset.
311
+ *
312
+ * @example
313
+ * ```tsx
314
+ * <Heading level={1}>Page Title</Heading>
315
+ * <Heading level={1} font="display">Marketing Title</Heading>
316
+ * <Heading level={2}>Section Title</Heading>
317
+ * <Heading level={3} color="muted">Subsection</Heading>
318
+ * ```
319
+ */
320
+ declare const Heading: react.ForwardRefExoticComponent<HeadingProps & Omit<react.HTMLAttributes<HTMLHeadingElement>, keyof HeadingProps> & react.RefAttributes<HTMLHeadingElement>>;
321
+ type SubheadingProps = Omit<TypographyOwnProps, "variant"> & Omit<React.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps>;
322
+ /**
323
+ * Subheading — renders an <h4> with the subheading typographic preset.
324
+ */
325
+ declare const Subheading: react.ForwardRefExoticComponent<Omit<TypographyOwnProps, "variant"> & Omit<react.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps> & react.RefAttributes<HTMLElement>>;
326
+ type BodyProps = Omit<TypographyOwnProps, "variant"> & {
327
+ /** Use the smaller body variant (14px instead of 16px). */
328
+ small?: boolean;
329
+ } & Omit<React.HTMLAttributes<HTMLParagraphElement>, keyof TypographyOwnProps | "small">;
330
+ /**
331
+ * Body — renders a <p> with the body or bodySm typographic preset.
332
+ *
333
+ * @example
334
+ * ```tsx
335
+ * <Body>Standard body text at 16px.</Body>
336
+ * <Body small>Compact body text at 14px.</Body>
337
+ * <Body font="serif">Editorial long-form content.</Body>
338
+ * ```
339
+ */
340
+ declare const Body: react.ForwardRefExoticComponent<Omit<TypographyOwnProps, "variant"> & {
341
+ /** Use the smaller body variant (14px instead of 16px). */
342
+ small?: boolean;
343
+ } & Omit<react.HTMLAttributes<HTMLParagraphElement>, "small" | keyof TypographyOwnProps> & react.RefAttributes<HTMLParagraphElement>>;
344
+ type CaptionProps = Omit<TypographyOwnProps, "variant"> & Omit<React.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps>;
345
+ /**
346
+ * Caption — renders a <span> with the caption typographic preset.
347
+ * Default color is muted.
348
+ */
349
+ declare const Caption: react.ForwardRefExoticComponent<Omit<TypographyOwnProps, "variant"> & Omit<react.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps> & react.RefAttributes<HTMLElement>>;
350
+ type LabelProps = Omit<TypographyOwnProps, "variant"> & {
351
+ /** The form element this label is for. Maps to the htmlFor attribute. */
352
+ htmlFor?: string;
353
+ } & Omit<React.LabelHTMLAttributes<HTMLLabelElement>, keyof TypographyOwnProps | "htmlFor">;
354
+ /**
355
+ * Label — renders a <label> with the label typographic preset.
356
+ *
357
+ * @example
358
+ * ```tsx
359
+ * <Label htmlFor="email">Email address</Label>
360
+ * ```
361
+ */
362
+ declare const Label: react.ForwardRefExoticComponent<Omit<TypographyOwnProps, "variant"> & {
363
+ /** The form element this label is for. Maps to the htmlFor attribute. */
364
+ htmlFor?: string;
365
+ } & Omit<react.LabelHTMLAttributes<HTMLLabelElement>, "htmlFor" | keyof TypographyOwnProps> & react.RefAttributes<HTMLLabelElement>>;
366
+ type OverlineProps = Omit<TypographyOwnProps, "variant"> & Omit<React.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps>;
367
+ /**
368
+ * Overline — renders a <span> with the overline typographic preset.
369
+ * Text is automatically uppercased via the variant's CSS.
370
+ *
371
+ * @example
372
+ * ```tsx
373
+ * <Overline>Getting started</Overline>
374
+ * ```
375
+ */
376
+ declare const Overline: react.ForwardRefExoticComponent<Omit<TypographyOwnProps, "variant"> & Omit<react.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps> & react.RefAttributes<HTMLElement>>;
377
+ type InlineCodeProps = Omit<TypographyOwnProps, "variant"> & Omit<React.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps>;
378
+ /**
379
+ * InlineCode — renders a <code> element with the code typographic preset.
380
+ * Includes a subtle background for visual distinction from body text.
381
+ * Automatically uses the mono font family.
382
+ *
383
+ * @example
384
+ * ```tsx
385
+ * <Body>Run <InlineCode>npm install</InlineCode> to get started.</Body>
386
+ * ```
387
+ */
388
+ declare const InlineCode: react.ForwardRefExoticComponent<Omit<TypographyOwnProps, "variant"> & Omit<react.HTMLAttributes<HTMLElement>, keyof TypographyOwnProps> & react.RefAttributes<HTMLElement>>;
389
+
390
+ export { Body, type BodyProps, Caption, type CaptionProps, Container, type ContainerPadding, type ContainerProps, type ContainerSize, Divider, type DividerProps, Grid, type GridProps, Heading, type HeadingComponentProps, type HeadingProps, InlineCode, type InlineCodeProps, Label, type LabelProps, Overline, type OverlineProps, Stack, type StackAlign, type StackDirection, type StackJustify, type StackProps, Subheading, type SubheadingProps, Typography, type TypographyAlign, type TypographyColor, type TypographyFont, type TypographyOwnProps, type TypographyProps, type TypographyVariant };