@salemcobalt/ui 0.2.0-rc.0 → 0.2.0-rc.1

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.
package/dist/index.d.ts CHANGED
@@ -4,6 +4,10 @@ import { useRender } from '@base-ui/react/use-render';
4
4
  import { Dialog as Dialog$1 } from '@base-ui/react/dialog';
5
5
  import * as _base_ui_react from '@base-ui/react';
6
6
  import { Menu as Menu$1 } from '@base-ui/react/menu';
7
+ import { Checkbox as Checkbox$1 } from '@base-ui/react/checkbox';
8
+ import { Switch as Switch$1 } from '@base-ui/react/switch';
9
+ import { Tabs as Tabs$1 } from '@base-ui/react/tabs';
10
+ import { Toolbar as Toolbar$1 } from '@base-ui/react/toolbar';
7
11
 
8
12
  type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'danger';
9
13
  type ButtonSize = 'sm' | 'md' | 'lg';
@@ -63,7 +67,7 @@ type SpacingSize = 'none' | '3xs' | '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '
63
67
 
64
68
  type StackAlign = 'stretch' | 'start' | 'center' | 'end';
65
69
  type StackJustify = 'start' | 'center' | 'end' | 'between';
66
- type StackElement = 'div' | 'section' | 'ul' | 'ol' | 'nav' | 'form';
70
+ type StackElement = 'div' | 'section' | 'article' | 'ul' | 'ol' | 'li' | 'nav' | 'form' | 'fieldset' | 'header' | 'footer' | 'main' | 'aside' | 'dl';
67
71
  interface StackProps extends ComponentPropsWithRef<'div'> {
68
72
  /** Gap from the spacing scale. Default `sm` (12px). */
69
73
  gap?: SpacingSize | undefined;
@@ -71,7 +75,7 @@ interface StackProps extends ComponentPropsWithRef<'div'> {
71
75
  align?: StackAlign | undefined;
72
76
  /** Main-axis distribution. Default `start`. */
73
77
  justify?: StackJustify | undefined;
74
- /** Element to render. Use `ul`/`ol` for lists so semantics survive the layout. */
78
+ /** Element to render. Use `ul`/`ol` for lists and `li` for an item that stacks its own content, so semantics survive the layout. */
75
79
  as?: StackElement | undefined;
76
80
  /** Lays out as `inline-flex`. */
77
81
  inline?: boolean | undefined;
@@ -369,7 +373,7 @@ declare function Stack({ gap, align, justify, as, inline, className, ...rest }:
369
373
 
370
374
  type InlineAlign = 'center' | 'start' | 'end' | 'baseline' | 'stretch';
371
375
  type InlineJustify = 'start' | 'center' | 'end' | 'between';
372
- type InlineElement = 'div' | 'span' | 'ul' | 'nav';
376
+ type InlineElement = 'div' | 'span' | 'ul' | 'ol' | 'li' | 'nav' | 'header' | 'footer' | 'p' | 'label' | 'dd';
373
377
  interface InlineProps extends ComponentPropsWithRef<'div'> {
374
378
  /** Gap from the spacing scale. Default `xs` (8px). */
375
379
  gap?: SpacingSize | undefined;
@@ -379,7 +383,7 @@ interface InlineProps extends ComponentPropsWithRef<'div'> {
379
383
  justify?: InlineJustify | undefined;
380
384
  /** Wraps by default; `false` for toolbars that scroll. */
381
385
  wrap?: boolean | undefined;
382
- /** Element to render. */
386
+ /** Element to render. Use `ul`/`ol` for a row of items and `li` for an item laid out as a row. */
383
387
  as?: InlineElement | undefined;
384
388
  children?: ReactNode | undefined;
385
389
  }
@@ -702,7 +706,7 @@ interface DialogRootProps {
702
706
  children?: ReactNode | undefined;
703
707
  }
704
708
  /** Owns the open state. Wrap a `Dialog.Trigger` and a `Dialog.Content`. */
705
- declare function Root$1({ dismissible, onOpenChange, open, defaultOpen, children }: DialogRootProps): react.JSX.Element;
709
+ declare function Root$3({ dismissible, onOpenChange, open, defaultOpen, children }: DialogRootProps): react.JSX.Element;
706
710
  interface DialogContentProps extends Omit<Dialog$1.Popup.Props, 'className'> {
707
711
  /** `sm` 400px for yes/no, `md` 560px (default) for a short form, `lg` 720px rarely. */
708
712
  size?: DialogSize | undefined;
@@ -733,7 +737,7 @@ interface DialogCloseProps extends Omit<Dialog$1.Close.Props, 'className'> {
733
737
  declare function Close({ className, children, render, ...rest }: DialogCloseProps): react.JSX.Element;
734
738
  /** A modal that interrupts for a decision or a short form. Built on Base UI's Dialog. */
735
739
  declare const Dialog: {
736
- Root: typeof Root$1;
740
+ Root: typeof Root$3;
737
741
  Trigger: Dialog$1.Trigger;
738
742
  Content: typeof Content$1;
739
743
  Title: typeof Title;
@@ -931,7 +935,7 @@ interface MenuRootProps {
931
935
  children?: ReactNode | undefined;
932
936
  }
933
937
  /** Owns the open state. Wrap a `Menu.Trigger` and a `Menu.Content`. */
934
- declare function Root({ open, defaultOpen, onOpenChange, disabled, modal, children }: MenuRootProps): react.JSX.Element;
938
+ declare function Root$2({ open, defaultOpen, onOpenChange, disabled, modal, children }: MenuRootProps): react.JSX.Element;
935
939
  interface MenuTriggerProps extends Omit<Menu$1.Trigger.Props, 'className'> {
936
940
  className?: string | undefined;
937
941
  }
@@ -1005,15 +1009,15 @@ interface MenuGroupProps extends Omit<Menu$1.Group.Props, 'className'> {
1005
1009
  className?: string | undefined;
1006
1010
  }
1007
1011
  /** Labels a run of items. */
1008
- declare function Group({ label, className, children, ...rest }: MenuGroupProps): react.JSX.Element;
1012
+ declare function Group$1({ label, className, children, ...rest }: MenuGroupProps): react.JSX.Element;
1009
1013
  interface MenuSeparatorProps extends Omit<Menu$1.Separator.Props, 'className'> {
1010
1014
  className?: string | undefined;
1011
1015
  }
1012
1016
  /** A hairline between runs of items. */
1013
- declare function Separator({ className, ...rest }: MenuSeparatorProps): react.JSX.Element;
1017
+ declare function Separator$1({ className, ...rest }: MenuSeparatorProps): react.JSX.Element;
1014
1018
  /** A dropdown of actions on a trigger, with full keyboard support. Built on Base UI's Menu. */
1015
1019
  declare const Menu: {
1016
- Root: typeof Root;
1020
+ Root: typeof Root$2;
1017
1021
  Trigger: typeof Trigger;
1018
1022
  Content: typeof Content;
1019
1023
  Item: typeof Item;
@@ -1021,11 +1025,593 @@ declare const Menu: {
1021
1025
  CheckboxItem: typeof CheckboxItem;
1022
1026
  RadioGroup: typeof RadioGroup;
1023
1027
  RadioItem: typeof RadioItem;
1028
+ Group: typeof Group$1;
1029
+ Separator: typeof Separator$1;
1030
+ };
1031
+
1032
+ type ControlSize = 'sm' | 'md' | 'lg';
1033
+ /** Props shared by every labelled form control: Input, Textarea, Select. */
1034
+ interface FieldProps {
1035
+ /** Required. The visible label; use `hideLabel` to keep it for assistive tech only. */
1036
+ label: ReactNode;
1037
+ /** Visually hides the label (a search box with an icon, a table filter). */
1038
+ hideLabel?: boolean | undefined;
1039
+ /** Help text under the control, wired with `aria-describedby`. */
1040
+ description?: ReactNode | undefined;
1041
+ /** The error message. When given the control is invalid and the message is announced. */
1042
+ error?: ReactNode | undefined;
1043
+ /** Marks the control invalid without a message. */
1044
+ invalid?: boolean | undefined;
1045
+ /** Shows a mark after the label and sets the native `required`. */
1046
+ required?: boolean | undefined;
1047
+ disabled?: boolean | undefined;
1048
+ /** Identifies the value when a form is submitted. */
1049
+ name?: string | undefined;
1050
+ /** Control height: 32, 40 (default) or 48px. Compact density shrinks each by one step. */
1051
+ size?: ControlSize | undefined;
1052
+ /** Class on the wrapper, not the control. */
1053
+ className?: string | undefined;
1054
+ }
1055
+
1056
+ interface InputProps extends Omit<ComponentPropsWithRef<'input'>, 'size' | 'name' | 'disabled' | 'required' | 'className'>, FieldProps {
1057
+ /** A 16px icon inside the start edge, for search and URL fields. Decorative. */
1058
+ iconStart?: ReactNode | undefined;
1059
+ /** A 16px icon inside the end edge. Decorative; use an `IconButton` outside the field for an action. */
1060
+ iconEnd?: ReactNode | undefined;
1061
+ /** Called with the string value on every change, beside the native `onChange`. */
1062
+ onValueChange?: ((value: string) => void) | undefined;
1063
+ }
1064
+ /** A labelled single-line text field. Renders a native `<input>` inside Base UI's Field. */
1065
+ declare function Input({ label, hideLabel, description, error, invalid, required, disabled, name, size, className, iconStart, iconEnd, onValueChange, ...rest }: InputProps): react.JSX.Element;
1066
+
1067
+ interface TextareaProps extends Omit<ComponentPropsWithRef<'textarea'>, 'name' | 'disabled' | 'required' | 'className'>, Omit<FieldProps, 'size'> {
1068
+ /** Visible lines. Default 3. */
1069
+ rows?: number | undefined;
1070
+ /** `vertical` (default) lets the user drag it taller; `none` fixes the height. */
1071
+ resize?: 'vertical' | 'none' | undefined;
1072
+ /** Called with the string value on every change, beside the native `onChange`. */
1073
+ onValueChange?: ((value: string) => void) | undefined;
1074
+ }
1075
+ /** A labelled multi-line text field. Renders a native `<textarea>` inside Base UI's Field. */
1076
+ declare function Textarea({ label, hideLabel, description, error, invalid, required, disabled, name, className, rows, resize, onValueChange, ...rest }: TextareaProps): react.JSX.Element;
1077
+
1078
+ interface SelectOption<Value extends string = string> {
1079
+ value: Value;
1080
+ label: ReactNode;
1081
+ disabled?: boolean | undefined;
1082
+ }
1083
+ interface SelectGroup<Value extends string = string> {
1084
+ /** Heading shown above the group's options. */
1085
+ label: ReactNode;
1086
+ options: SelectOption<Value>[];
1087
+ }
1088
+ interface SelectProps<Value extends string = string> extends FieldProps {
1089
+ /** Flat options, or groups of options with a heading. */
1090
+ options: Array<SelectOption<Value> | SelectGroup<Value>>;
1091
+ /** Controlled value; `null` for none. */
1092
+ value?: Value | null | undefined;
1093
+ /** Initial value when uncontrolled. */
1094
+ defaultValue?: Value | null | undefined;
1095
+ /** Called with the chosen value. */
1096
+ onValueChange?: ((value: Value | null) => void) | undefined;
1097
+ /** Shown in the trigger while nothing is chosen. */
1098
+ placeholder?: ReactNode | undefined;
1099
+ /** Prevents choosing a different option. */
1100
+ readOnly?: boolean | undefined;
1101
+ /** Stretches the trigger to the container. */
1102
+ fullWidth?: boolean | undefined;
1103
+ id?: string | undefined;
1104
+ }
1105
+ /**
1106
+ * A labelled single-choice dropdown. Built on Base UI's Select so the list is styled and keyboard
1107
+ * complete; submits like a native select through `name`.
1108
+ */
1109
+ declare function Select<Value extends string = string>({ label, hideLabel, description, error, invalid, required, disabled, name, size, className, options, value, defaultValue, onValueChange, placeholder, readOnly, fullWidth, id, }: SelectProps<Value>): react.JSX.Element;
1110
+
1111
+ interface CheckboxProps extends Omit<Checkbox$1.Root.Props, 'className' | 'onCheckedChange' | 'render' | 'children'> {
1112
+ /** Required. The visible label; clicking it toggles the box. */
1113
+ label: ReactNode;
1114
+ /** Help text under the label, wired with `aria-describedby`. */
1115
+ description?: ReactNode | undefined;
1116
+ /** Called with the next checked state. */
1117
+ onCheckedChange?: ((checked: boolean) => void) | undefined;
1118
+ className?: string | undefined;
1119
+ }
1120
+ /** A labelled checkbox. `indeterminate` shows a dash for "some of these". Built on Base UI's Checkbox. */
1121
+ declare function Checkbox({ label, description, onCheckedChange, className, disabled, ...rest }: CheckboxProps): react.JSX.Element;
1122
+
1123
+ interface SwitchProps extends Omit<Switch$1.Root.Props, 'className' | 'onCheckedChange' | 'render' | 'children'> {
1124
+ /** Required. The visible label; clicking it flips the switch. */
1125
+ label: ReactNode;
1126
+ /** Help text under the label, wired with `aria-describedby`. */
1127
+ description?: ReactNode | undefined;
1128
+ /** Called with the next checked state. */
1129
+ onCheckedChange?: ((checked: boolean) => void) | undefined;
1130
+ /** `end` (default) puts the switch before the label; `start` puts the label first and the switch at the row's end. */
1131
+ labelPosition?: 'start' | 'end' | undefined;
1132
+ className?: string | undefined;
1133
+ }
1134
+ /** A labelled on/off switch for settings that apply at once. Built on Base UI's Switch. */
1135
+ declare function Switch({ label, description, onCheckedChange, labelPosition, className, disabled, ...rest }: SwitchProps): react.JSX.Element;
1136
+
1137
+ interface TabsRootProps extends Omit<Tabs$1.Root.Props, 'className' | 'value' | 'defaultValue' | 'onValueChange'> {
1138
+ /** Controlled active tab. */
1139
+ value?: string | undefined;
1140
+ /** Initial active tab when uncontrolled. Defaults to the first enabled tab. */
1141
+ defaultValue?: string | undefined;
1142
+ /** Called with the value of the newly active tab. */
1143
+ onValueChange?: ((value: string) => void) | undefined;
1144
+ className?: string | undefined;
1145
+ }
1146
+ /** Owns the active tab. Wrap a `Tabs.List` and one `Tabs.Panel` per tab. */
1147
+ declare function Root$1({ className, onValueChange, ...rest }: TabsRootProps): react.JSX.Element;
1148
+ interface TabsListProps extends Omit<Tabs$1.List.Props, 'className'> {
1149
+ /** Names the set of tabs for assistive tech: "Inbox sections". */
1150
+ 'aria-label': string;
1151
+ /** Tabs share the width equally instead of sizing to their labels. */
1152
+ fill?: boolean | undefined;
1153
+ className?: string | undefined;
1154
+ }
1155
+ /** The row of tabs with the sliding indicator. Arrow keys move between tabs; Enter or Space activates. */
1156
+ declare function List({ fill, className, children, ...rest }: TabsListProps): react.JSX.Element;
1157
+ interface TabsTabProps extends Omit<Tabs$1.Tab.Props, 'className' | 'value'> {
1158
+ value: string;
1159
+ /** A 16px icon before the label. */
1160
+ icon?: ReactNode | undefined;
1161
+ /** A count after the label, muted: `12`. */
1162
+ count?: ReactNode | undefined;
1163
+ className?: string | undefined;
1164
+ }
1165
+ /** One tab. */
1166
+ declare function Tab({ icon, count, className, children, ...rest }: TabsTabProps): react.JSX.Element;
1167
+ interface TabsPanelProps extends Omit<Tabs$1.Panel.Props, 'className' | 'value'> {
1168
+ value: string;
1169
+ className?: string | undefined;
1170
+ }
1171
+ /** The content of one tab. Unmounted while hidden unless `keepMounted`. */
1172
+ declare function Panel({ className, ...rest }: TabsPanelProps): react.JSX.Element;
1173
+ /** Switches between sections of one view. Built on Base UI's Tabs. */
1174
+ declare const Tabs: {
1175
+ Root: typeof Root$1;
1176
+ List: typeof List;
1177
+ Tab: typeof Tab;
1178
+ Panel: typeof Panel;
1179
+ };
1180
+
1181
+ interface ToolbarRootProps extends Omit<Toolbar$1.Root.Props, 'className'> {
1182
+ /** Required. Names the toolbar for assistive tech: "Inbox actions". */
1183
+ 'aria-label': string;
1184
+ /** Wraps onto new lines on narrow widths (default). `false` keeps one line that overflows. */
1185
+ wrap?: boolean | undefined;
1186
+ /** Gap between items and groups. Default `xs`. */
1187
+ gap?: SpacingSize | undefined;
1188
+ className?: string | undefined;
1189
+ }
1190
+ /**
1191
+ * A row of controls with one tab stop: Tab enters, arrow keys move between items, Tab leaves. Put every
1192
+ * control through `Toolbar.Button` (`render={<IconButton … />}`) so it joins the roving focus.
1193
+ */
1194
+ declare function Root({ wrap, gap, className, ...rest }: ToolbarRootProps): react.JSX.Element;
1195
+ interface ToolbarGroupProps extends Omit<Toolbar$1.Group.Props, 'className'> {
1196
+ /** Names the group: "Playback". */
1197
+ 'aria-label'?: string | undefined;
1198
+ /** Gap inside the group. Default `2xs`. */
1199
+ gap?: SpacingSize | undefined;
1200
+ className?: string | undefined;
1201
+ }
1202
+ /** Keeps related controls together with a tighter gap. */
1203
+ declare function Group({ gap, className, ...rest }: ToolbarGroupProps): react.JSX.Element;
1204
+ interface ToolbarSeparatorProps extends Omit<Toolbar$1.Separator.Props, 'className'> {
1205
+ className?: string | undefined;
1206
+ }
1207
+ /** A hairline between groups. */
1208
+ declare function Separator({ className, ...rest }: ToolbarSeparatorProps): react.JSX.Element;
1209
+ interface ToolbarButtonProps extends Omit<Toolbar$1.Button.Props, 'className'> {
1210
+ className?: string | undefined;
1211
+ }
1212
+ interface ToolbarSpacerProps {
1213
+ className?: string | undefined;
1214
+ }
1215
+ /** Pushes what follows to the far end. */
1216
+ declare function Spacer({ className }: ToolbarSpacerProps): react.JSX.Element;
1217
+ /** A horizontal container of controls. Built on Base UI's Toolbar. */
1218
+ declare const Toolbar: {
1219
+ Root: typeof Root;
1024
1220
  Group: typeof Group;
1025
1221
  Separator: typeof Separator;
1222
+ Button: react.ForwardRefExoticComponent<Omit<_base_ui_react.ToolbarButtonProps, "ref"> & react.RefAttributes<HTMLButtonElement>>;
1223
+ Spacer: typeof Spacer;
1026
1224
  };
1027
1225
 
1226
+ type BannerTone = 'info' | 'success' | 'warning' | 'danger' | 'neutral';
1227
+ interface BannerProps extends ComponentPropsWithRef<'div'> {
1228
+ /** Colour and default icon. `warning` and `danger` are announced as alerts; the rest as status. */
1229
+ tone?: BannerTone | undefined;
1230
+ /** Replaces the tone's icon; `false` removes it. */
1231
+ icon?: ReactNode | false | undefined;
1232
+ /** One Button, usually `variant="ghost" size="sm"`, at the end of the strip. */
1233
+ action?: ReactNode | undefined;
1234
+ /** Shows a close button that hides the banner. */
1235
+ dismissible?: boolean | undefined;
1236
+ /** Called when the close button is pressed. */
1237
+ onDismiss?: (() => void) | undefined;
1238
+ /** Controlled visibility when dismissible. */
1239
+ open?: boolean | undefined;
1240
+ /** Accessible name of the close button. Default "Dismiss". */
1241
+ dismissLabel?: string | undefined;
1242
+ }
1243
+ /** A single-line status strip across the top of a view: paused, offline, "3 new since you looked". */
1244
+ declare function Banner({ tone, icon, action, dismissible, onDismiss, open, dismissLabel, role, className, children, ...rest }: BannerProps): react.JSX.Element | null;
1245
+
1246
+ interface SpinnerProps extends ComponentPropsWithRef<'span'> {
1247
+ /** `xs` 12, `sm` 14, `md` 16 (default), `lg` 20, `xl` 24, or `em` to follow the font size. */
1248
+ size?: IconSize | undefined;
1249
+ /** What is happening, announced once as a status. Default "Loading". */
1250
+ label?: string | undefined;
1251
+ /** Hides it from assistive tech when the text beside it already says what is happening. */
1252
+ decorative?: boolean | undefined;
1253
+ }
1254
+ /** An indeterminate activity indicator in `currentColor`. Slows down, never stops, under reduced motion. */
1255
+ declare function Spinner({ size, label, decorative, className, ...rest }: SpinnerProps): react.JSX.Element;
1256
+
1257
+ type ProgressTone = 'accent' | 'success' | 'warning' | 'danger' | 'neutral';
1258
+ type ProgressSize = 'sm' | 'md';
1259
+ type ProgressVariant = 'bar' | 'inline';
1260
+ interface ProgressProps extends Omit<ComponentPropsWithRef<'div'>, 'children'> {
1261
+ /** Current value. Omit or pass `null` while the amount of work is unknown (indeterminate). */
1262
+ value?: number | null | undefined;
1263
+ /** Default 100. Pass the total so `value` can be a count: `value={460} max={859}`. */
1264
+ max?: number | undefined;
1265
+ /** Default 0. */
1266
+ min?: number | undefined;
1267
+ /** What is happening: "Verifying". Visible, and names the bar for assistive tech. */
1268
+ label?: ReactNode | undefined;
1269
+ /** Detail at the end: "460 of 859 · 3 min elapsed". A string also becomes `aria-valuetext`. */
1270
+ valueText?: ReactNode | undefined;
1271
+ /** Shows the percentage when `valueText` is not given. */
1272
+ showValue?: boolean | undefined;
1273
+ /** Fill colour. Default `accent`; `success` when done, `danger` when it failed. */
1274
+ tone?: ProgressTone | undefined;
1275
+ /** Bar thickness: `sm` 4px, `md` 8px (default). Inline uses the text size. */
1276
+ size?: ProgressSize | undefined;
1277
+ /** `bar` (default) is label, value and a track; `inline` is a Spinner beside the text for toolbars and buttons. */
1278
+ variant?: ProgressVariant | undefined;
1279
+ /** Names the bar when there is no `label`. */
1280
+ 'aria-label'?: string | undefined;
1281
+ }
1282
+ /**
1283
+ * Says that something is processing and, when known, how far along it is. Built on Base UI's Progress:
1284
+ * `role="progressbar"` with the aria value attributes, or none while indeterminate.
1285
+ */
1286
+ declare function Progress({ value, max, min, label, valueText, showValue, tone, size, variant, className, ...rest }: ProgressProps): react.JSX.Element;
1287
+
1288
+ type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
1289
+ type HeadingSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl';
1290
+ type HeadingElement = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'div' | 'span' | 'p';
1291
+ type TextTone = 'default' | 'muted' | 'subtle' | 'accent' | 'success' | 'warning' | 'danger' | 'info';
1292
+ interface HeadingProps extends ComponentPropsWithRef<'h2'> {
1293
+ /** The outline level, rendered as `h1`–`h6`. Default 2. */
1294
+ level?: HeadingLevel | undefined;
1295
+ /** Visual size from the type scale, independent of the level. Defaults by level: 3xl, 2xl, xl, lg, md, sm. */
1296
+ size?: HeadingSize | undefined;
1297
+ /** Render a different element and keep the look; `div`/`span` for a card title that is not an outline entry. */
1298
+ as?: HeadingElement | undefined;
1299
+ /** Colour. Default is the text colour. */
1300
+ tone?: TextTone | undefined;
1301
+ /** One line with an ellipsis. */
1302
+ truncate?: boolean | undefined;
1303
+ }
1304
+ /** A heading from the type scale. `level` is the semantics, `size` the look; they are set separately on purpose. */
1305
+ declare function Heading({ level, size, as, tone, truncate, className, ...rest }: HeadingProps): react.DetailedReactHTMLElement<{
1306
+ ref?: react.Ref<HTMLHeadingElement> | undefined;
1307
+ key?: react.Key | null | undefined;
1308
+ defaultChecked?: boolean | undefined;
1309
+ defaultValue?: string | number | readonly string[] | undefined;
1310
+ suppressContentEditableWarning?: boolean | undefined;
1311
+ suppressHydrationWarning?: boolean | undefined;
1312
+ accessKey?: string | undefined;
1313
+ autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {});
1314
+ autoFocus?: boolean | undefined;
1315
+ contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
1316
+ contextMenu?: string | undefined;
1317
+ dir?: string | undefined;
1318
+ draggable?: (boolean | "true" | "false") | undefined;
1319
+ enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
1320
+ hidden?: boolean | undefined;
1321
+ id?: string | undefined;
1322
+ lang?: string | undefined;
1323
+ nonce?: string | undefined;
1324
+ slot?: string | undefined;
1325
+ spellCheck?: (boolean | "true" | "false") | undefined;
1326
+ style?: react.CSSProperties | undefined;
1327
+ tabIndex?: number | undefined;
1328
+ title?: string | undefined;
1329
+ translate?: "yes" | "no" | undefined;
1330
+ radioGroup?: string | undefined;
1331
+ role?: react.AriaRole | undefined;
1332
+ about?: string | undefined;
1333
+ content?: string | undefined;
1334
+ datatype?: string | undefined;
1335
+ inlist?: any;
1336
+ prefix?: string | undefined;
1337
+ property?: string | undefined;
1338
+ rel?: string | undefined;
1339
+ resource?: string | undefined;
1340
+ rev?: string | undefined;
1341
+ typeof?: string | undefined;
1342
+ vocab?: string | undefined;
1343
+ autoCorrect?: string | undefined;
1344
+ autoSave?: string | undefined;
1345
+ color?: string | undefined;
1346
+ itemProp?: string | undefined;
1347
+ itemScope?: boolean | undefined;
1348
+ itemType?: string | undefined;
1349
+ itemID?: string | undefined;
1350
+ itemRef?: string | undefined;
1351
+ results?: number | undefined;
1352
+ security?: string | undefined;
1353
+ unselectable?: "on" | "off" | undefined;
1354
+ popover?: "" | "auto" | "manual" | "hint" | undefined;
1355
+ popoverTargetAction?: "toggle" | "show" | "hide" | undefined;
1356
+ popoverTarget?: string | undefined;
1357
+ inert?: boolean | undefined;
1358
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
1359
+ is?: string | undefined;
1360
+ exportparts?: string | undefined;
1361
+ part?: string | undefined;
1362
+ "aria-activedescendant"?: string | undefined;
1363
+ "aria-atomic"?: (boolean | "true" | "false") | undefined;
1364
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
1365
+ "aria-braillelabel"?: string | undefined;
1366
+ "aria-brailleroledescription"?: string | undefined;
1367
+ "aria-busy"?: (boolean | "true" | "false") | undefined;
1368
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
1369
+ "aria-colcount"?: number | undefined;
1370
+ "aria-colindex"?: number | undefined;
1371
+ "aria-colindextext"?: string | undefined;
1372
+ "aria-colspan"?: number | undefined;
1373
+ "aria-controls"?: string | undefined;
1374
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined;
1375
+ "aria-describedby"?: string | undefined;
1376
+ "aria-description"?: string | undefined;
1377
+ "aria-details"?: string | undefined;
1378
+ "aria-disabled"?: (boolean | "true" | "false") | undefined;
1379
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
1380
+ "aria-errormessage"?: string | undefined;
1381
+ "aria-expanded"?: (boolean | "true" | "false") | undefined;
1382
+ "aria-flowto"?: string | undefined;
1383
+ "aria-grabbed"?: (boolean | "true" | "false") | undefined;
1384
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
1385
+ "aria-hidden"?: (boolean | "true" | "false") | undefined;
1386
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
1387
+ "aria-keyshortcuts"?: string | undefined;
1388
+ "aria-label"?: string | undefined;
1389
+ "aria-labelledby"?: string | undefined;
1390
+ "aria-level"?: number | undefined;
1391
+ "aria-live"?: "off" | "assertive" | "polite" | undefined;
1392
+ "aria-modal"?: (boolean | "true" | "false") | undefined;
1393
+ "aria-multiline"?: (boolean | "true" | "false") | undefined;
1394
+ "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
1395
+ "aria-orientation"?: "horizontal" | "vertical" | undefined;
1396
+ "aria-owns"?: string | undefined;
1397
+ "aria-placeholder"?: string | undefined;
1398
+ "aria-posinset"?: number | undefined;
1399
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
1400
+ "aria-readonly"?: (boolean | "true" | "false") | undefined;
1401
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
1402
+ "aria-required"?: (boolean | "true" | "false") | undefined;
1403
+ "aria-roledescription"?: string | undefined;
1404
+ "aria-rowcount"?: number | undefined;
1405
+ "aria-rowindex"?: number | undefined;
1406
+ "aria-rowindextext"?: string | undefined;
1407
+ "aria-rowspan"?: number | undefined;
1408
+ "aria-selected"?: (boolean | "true" | "false") | undefined;
1409
+ "aria-setsize"?: number | undefined;
1410
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
1411
+ "aria-valuemax"?: number | undefined;
1412
+ "aria-valuemin"?: number | undefined;
1413
+ "aria-valuenow"?: number | undefined;
1414
+ "aria-valuetext"?: string | undefined;
1415
+ children?: react.ReactNode | undefined;
1416
+ dangerouslySetInnerHTML?: {
1417
+ __html: string | TrustedHTML;
1418
+ } | undefined;
1419
+ onCopy?: react.ClipboardEventHandler<HTMLHeadingElement> | undefined;
1420
+ onCopyCapture?: react.ClipboardEventHandler<HTMLHeadingElement> | undefined;
1421
+ onCut?: react.ClipboardEventHandler<HTMLHeadingElement> | undefined;
1422
+ onCutCapture?: react.ClipboardEventHandler<HTMLHeadingElement> | undefined;
1423
+ onPaste?: react.ClipboardEventHandler<HTMLHeadingElement> | undefined;
1424
+ onPasteCapture?: react.ClipboardEventHandler<HTMLHeadingElement> | undefined;
1425
+ onCompositionEnd?: react.CompositionEventHandler<HTMLHeadingElement> | undefined;
1426
+ onCompositionEndCapture?: react.CompositionEventHandler<HTMLHeadingElement> | undefined;
1427
+ onCompositionStart?: react.CompositionEventHandler<HTMLHeadingElement> | undefined;
1428
+ onCompositionStartCapture?: react.CompositionEventHandler<HTMLHeadingElement> | undefined;
1429
+ onCompositionUpdate?: react.CompositionEventHandler<HTMLHeadingElement> | undefined;
1430
+ onCompositionUpdateCapture?: react.CompositionEventHandler<HTMLHeadingElement> | undefined;
1431
+ onFocus?: react.FocusEventHandler<HTMLHeadingElement> | undefined;
1432
+ onFocusCapture?: react.FocusEventHandler<HTMLHeadingElement> | undefined;
1433
+ onBlur?: react.FocusEventHandler<HTMLHeadingElement> | undefined;
1434
+ onBlurCapture?: react.FocusEventHandler<HTMLHeadingElement> | undefined;
1435
+ onChange?: react.ChangeEventHandler<HTMLHeadingElement, Element> | undefined;
1436
+ onChangeCapture?: react.ChangeEventHandler<HTMLHeadingElement, Element> | undefined;
1437
+ onBeforeInput?: react.InputEventHandler<HTMLHeadingElement> | undefined;
1438
+ onBeforeInputCapture?: react.InputEventHandler<HTMLHeadingElement> | undefined;
1439
+ onInput?: react.InputEventHandler<HTMLHeadingElement> | undefined;
1440
+ onInputCapture?: react.InputEventHandler<HTMLHeadingElement> | undefined;
1441
+ onReset?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1442
+ onResetCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1443
+ onSubmit?: react.SubmitEventHandler<HTMLHeadingElement> | undefined;
1444
+ onSubmitCapture?: react.SubmitEventHandler<HTMLHeadingElement> | undefined;
1445
+ onInvalid?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1446
+ onInvalidCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1447
+ onLoad?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1448
+ onLoadCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1449
+ onError?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1450
+ onErrorCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1451
+ onKeyDown?: react.KeyboardEventHandler<HTMLHeadingElement> | undefined;
1452
+ onKeyDownCapture?: react.KeyboardEventHandler<HTMLHeadingElement> | undefined;
1453
+ onKeyPress?: react.KeyboardEventHandler<HTMLHeadingElement> | undefined;
1454
+ onKeyPressCapture?: react.KeyboardEventHandler<HTMLHeadingElement> | undefined;
1455
+ onKeyUp?: react.KeyboardEventHandler<HTMLHeadingElement> | undefined;
1456
+ onKeyUpCapture?: react.KeyboardEventHandler<HTMLHeadingElement> | undefined;
1457
+ onAbort?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1458
+ onAbortCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1459
+ onCanPlay?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1460
+ onCanPlayCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1461
+ onCanPlayThrough?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1462
+ onCanPlayThroughCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1463
+ onDurationChange?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1464
+ onDurationChangeCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1465
+ onEmptied?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1466
+ onEmptiedCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1467
+ onEncrypted?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1468
+ onEncryptedCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1469
+ onEnded?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1470
+ onEndedCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1471
+ onLoadedData?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1472
+ onLoadedDataCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1473
+ onLoadedMetadata?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1474
+ onLoadedMetadataCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1475
+ onLoadStart?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1476
+ onLoadStartCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1477
+ onPause?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1478
+ onPauseCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1479
+ onPlay?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1480
+ onPlayCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1481
+ onPlaying?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1482
+ onPlayingCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1483
+ onProgress?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1484
+ onProgressCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1485
+ onRateChange?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1486
+ onRateChangeCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1487
+ onSeeked?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1488
+ onSeekedCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1489
+ onSeeking?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1490
+ onSeekingCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1491
+ onStalled?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1492
+ onStalledCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1493
+ onSuspend?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1494
+ onSuspendCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1495
+ onTimeUpdate?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1496
+ onTimeUpdateCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1497
+ onVolumeChange?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1498
+ onVolumeChangeCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1499
+ onWaiting?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1500
+ onWaitingCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1501
+ onAuxClick?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1502
+ onAuxClickCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1503
+ onClick?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1504
+ onClickCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1505
+ onContextMenu?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1506
+ onContextMenuCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1507
+ onDoubleClick?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1508
+ onDoubleClickCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1509
+ onDrag?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1510
+ onDragCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1511
+ onDragEnd?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1512
+ onDragEndCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1513
+ onDragEnter?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1514
+ onDragEnterCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1515
+ onDragExit?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1516
+ onDragExitCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1517
+ onDragLeave?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1518
+ onDragLeaveCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1519
+ onDragOver?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1520
+ onDragOverCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1521
+ onDragStart?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1522
+ onDragStartCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1523
+ onDrop?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1524
+ onDropCapture?: react.DragEventHandler<HTMLHeadingElement> | undefined;
1525
+ onMouseDown?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1526
+ onMouseDownCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1527
+ onMouseEnter?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1528
+ onMouseLeave?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1529
+ onMouseMove?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1530
+ onMouseMoveCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1531
+ onMouseOut?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1532
+ onMouseOutCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1533
+ onMouseOver?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1534
+ onMouseOverCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1535
+ onMouseUp?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1536
+ onMouseUpCapture?: react.MouseEventHandler<HTMLHeadingElement> | undefined;
1537
+ onSelect?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1538
+ onSelectCapture?: react.ReactEventHandler<HTMLHeadingElement> | undefined;
1539
+ onTouchCancel?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1540
+ onTouchCancelCapture?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1541
+ onTouchEnd?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1542
+ onTouchEndCapture?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1543
+ onTouchMove?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1544
+ onTouchMoveCapture?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1545
+ onTouchStart?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1546
+ onTouchStartCapture?: react.TouchEventHandler<HTMLHeadingElement> | undefined;
1547
+ onPointerDown?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1548
+ onPointerDownCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1549
+ onPointerMove?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1550
+ onPointerMoveCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1551
+ onPointerUp?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1552
+ onPointerUpCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1553
+ onPointerCancel?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1554
+ onPointerCancelCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1555
+ onPointerEnter?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1556
+ onPointerLeave?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1557
+ onPointerOver?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1558
+ onPointerOverCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1559
+ onPointerOut?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1560
+ onPointerOutCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1561
+ onGotPointerCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1562
+ onGotPointerCaptureCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1563
+ onLostPointerCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1564
+ onLostPointerCaptureCapture?: react.PointerEventHandler<HTMLHeadingElement> | undefined;
1565
+ onScroll?: react.UIEventHandler<HTMLHeadingElement> | undefined;
1566
+ onScrollCapture?: react.UIEventHandler<HTMLHeadingElement> | undefined;
1567
+ onScrollEnd?: react.UIEventHandler<HTMLHeadingElement> | undefined;
1568
+ onScrollEndCapture?: react.UIEventHandler<HTMLHeadingElement> | undefined;
1569
+ onWheel?: react.WheelEventHandler<HTMLHeadingElement> | undefined;
1570
+ onWheelCapture?: react.WheelEventHandler<HTMLHeadingElement> | undefined;
1571
+ onAnimationStart?: react.AnimationEventHandler<HTMLHeadingElement> | undefined;
1572
+ onAnimationStartCapture?: react.AnimationEventHandler<HTMLHeadingElement> | undefined;
1573
+ onAnimationEnd?: react.AnimationEventHandler<HTMLHeadingElement> | undefined;
1574
+ onAnimationEndCapture?: react.AnimationEventHandler<HTMLHeadingElement> | undefined;
1575
+ onAnimationIteration?: react.AnimationEventHandler<HTMLHeadingElement> | undefined;
1576
+ onAnimationIterationCapture?: react.AnimationEventHandler<HTMLHeadingElement> | undefined;
1577
+ onToggle?: react.ToggleEventHandler<HTMLHeadingElement> | undefined;
1578
+ onBeforeToggle?: react.ToggleEventHandler<HTMLHeadingElement> | undefined;
1579
+ onTransitionCancel?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1580
+ onTransitionCancelCapture?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1581
+ onTransitionEnd?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1582
+ onTransitionEndCapture?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1583
+ onTransitionRun?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1584
+ onTransitionRunCapture?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1585
+ onTransitionStart?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1586
+ onTransitionStartCapture?: react.TransitionEventHandler<HTMLHeadingElement> | undefined;
1587
+ className: string;
1588
+ 'data-size': HeadingSize;
1589
+ 'data-tone': TextTone;
1590
+ 'data-truncate': true | undefined;
1591
+ }, HTMLHeadingElement>;
1592
+
1593
+ type TextSize = 'xs' | 'sm' | 'md' | 'lg';
1594
+ type TextWeight = 'regular' | 'medium' | 'semibold';
1595
+ type TextAlign = 'start' | 'center' | 'end';
1596
+ type TextElement = 'p' | 'span' | 'div' | 'label' | 'li' | 'dt' | 'dd' | 'strong' | 'em' | 'small' | 'time' | 'figcaption' | 'legend';
1597
+ interface TextProps extends ComponentPropsWithRef<'p'> {
1598
+ /** Element to render. Default `p`; `span` inside other text. */
1599
+ as?: TextElement | undefined;
1600
+ /** `xs` 12 captions, `sm` 14 UI text (default), `md` body copy, `lg` lede. */
1601
+ size?: TextSize | undefined;
1602
+ /** Colour. `muted` for metadata, `subtle` for placeholders, status tones for inline status. */
1603
+ tone?: TextTone | undefined;
1604
+ weight?: TextWeight | undefined;
1605
+ align?: TextAlign | undefined;
1606
+ /** `true` keeps one line with an ellipsis; a number clamps to that many lines. */
1607
+ truncate?: boolean | number | undefined;
1608
+ /** Tabular figures, for numbers that line up in columns. */
1609
+ numeric?: boolean | undefined;
1610
+ }
1611
+ /** Running text and labels from the type scale. Parents own spacing: Text has no margins. */
1612
+ declare function Text({ as, size, tone, weight, align, truncate, numeric, className, style, ...rest }: TextProps): ReactElement;
1613
+
1028
1614
  declare const version = "0.1.1";
1029
1615
 
1030
- export { ArchiveIcon, ArrowLeftIcon, ArrowRightIcon, Badge, BellIcon, BriefcaseIcon, Button, CalendarIcon, Card, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CircleCheckIcon, CircleXIcon, ClockIcon, CopyIcon, Dialog, DocumentIcon, DownloadIcon, EditIcon, ExternalLinkIcon, EyeIcon, FilterIcon, FlagIcon, Icon, IconButton, InboxIcon, InfoIcon, Inline, Kbd, LinkIcon, MailIcon, MapPinIcon, Menu, MenuIcon, MinusIcon, MoonIcon, MoreHorizontalIcon, MoreVerticalIcon, PauseIcon, PlayIcon, PlusIcon, RefreshIcon, SearchIcon, SettingsIcon, Stack, StarIcon, SunIcon, ThumbsDownIcon, ThumbsUpIcon, Tooltip, TrashIcon, UndoIcon, UserIcon, WarningIcon, XIcon, iconNames, version };
1031
- export type { BadgeProps, BadgeSize, BadgeTone, BadgeVariant, ButtonProps, ButtonSize, ButtonVariant, CardElement, CardPadding, CardProps, CardVariant, DialogActionsProps, DialogBodyProps, DialogCloseProps, DialogContentProps, DialogDescriptionProps, DialogRootProps, DialogSize, DialogTitleProps, IconButtonProps, IconGlyphProps, IconName, IconProps, IconSize, InlineAlign, InlineElement, InlineJustify, InlineProps, KbdGroupProps, KbdProps, MenuAlign, MenuCheckboxItemProps, MenuContentProps, MenuGroupProps, MenuItemProps, MenuItemTone, MenuLinkItemProps, MenuRadioGroupProps, MenuRadioItemProps, MenuRootProps, MenuSeparatorProps, MenuSide, MenuTriggerProps, SpacingSize, StackAlign, StackElement, StackJustify, StackProps, TooltipAlign, TooltipProps, TooltipSide };
1616
+ export { ArchiveIcon, ArrowLeftIcon, ArrowRightIcon, Badge, Banner, BellIcon, BriefcaseIcon, Button, CalendarIcon, Card, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CircleCheckIcon, CircleXIcon, ClockIcon, CopyIcon, Dialog, DocumentIcon, DownloadIcon, EditIcon, ExternalLinkIcon, EyeIcon, FilterIcon, FlagIcon, Heading, Icon, IconButton, InboxIcon, InfoIcon, Inline, Input, Kbd, LinkIcon, MailIcon, MapPinIcon, Menu, MenuIcon, MinusIcon, MoonIcon, MoreHorizontalIcon, MoreVerticalIcon, PauseIcon, PlayIcon, PlusIcon, Progress, RefreshIcon, SearchIcon, Select, SettingsIcon, Spinner, Stack, StarIcon, SunIcon, Switch, Tabs, Text, Textarea, ThumbsDownIcon, ThumbsUpIcon, Toolbar, Tooltip, TrashIcon, UndoIcon, UserIcon, WarningIcon, XIcon, iconNames, version };
1617
+ export type { BadgeProps, BadgeSize, BadgeTone, BadgeVariant, BannerProps, BannerTone, ButtonProps, ButtonSize, ButtonVariant, CardElement, CardPadding, CardProps, CardVariant, CheckboxProps, ControlSize, DialogActionsProps, DialogBodyProps, DialogCloseProps, DialogContentProps, DialogDescriptionProps, DialogRootProps, DialogSize, DialogTitleProps, FieldProps, HeadingElement, HeadingLevel, HeadingProps, HeadingSize, IconButtonProps, IconGlyphProps, IconName, IconProps, IconSize, InlineAlign, InlineElement, InlineJustify, InlineProps, InputProps, KbdGroupProps, KbdProps, MenuAlign, MenuCheckboxItemProps, MenuContentProps, MenuGroupProps, MenuItemProps, MenuItemTone, MenuLinkItemProps, MenuRadioGroupProps, MenuRadioItemProps, MenuRootProps, MenuSeparatorProps, MenuSide, MenuTriggerProps, ProgressProps, ProgressSize, ProgressTone, ProgressVariant, SelectGroup, SelectOption, SelectProps, SpacingSize, SpinnerProps, StackAlign, StackElement, StackJustify, StackProps, SwitchProps, TabsListProps, TabsPanelProps, TabsRootProps, TabsTabProps, TextAlign, TextElement, TextProps, TextSize, TextTone, TextWeight, TextareaProps, ToolbarButtonProps, ToolbarGroupProps, ToolbarRootProps, ToolbarSeparatorProps, ToolbarSpacerProps, TooltipAlign, TooltipProps, TooltipSide };