@stealthscale/component-disclosure 0.1.0 → 0.2.2

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
@@ -1,919 +1,2107 @@
1
- import { ComponentProps, ReactElement } from "react";
2
- import "@stealthscale/theme/authoring";
1
+ import { RecipeProps, SystemStyleObject } from "@stealthscale/theme/authoring";
2
+ import { ComponentProps, ReactElement, ReactNode } from "react";
3
+ import * as accordion from "@zag-js/accordion";
4
+ import { PresenceOptions } from "@stealthscale/hooks";
3
5
  import * as collapsible from "@zag-js/collapsible";
6
+ import * as hoverCard from "@zag-js/hover-card";
4
7
  import * as menu from "@zag-js/menu";
5
8
  import * as popover from "@zag-js/popover";
9
+ import * as steps from "@zag-js/steps";
6
10
  import * as tabs from "@zag-js/tabs";
7
11
  import * as tooltip from "@zag-js/tooltip";
12
+ //#region src/accordion/item-body.d.ts
13
+ /**
14
+ * Renders the `div` with the accordion's item body class.
15
+ */
16
+ declare const ItemBody: import("@stealthscale/theme").StyledComponent<"div", {}>;
17
+ /**
18
+ * Describes the props of the item body: the props of a `div`.
19
+ */
20
+ type ItemBodyProps = ComponentProps<typeof ItemBody>;
21
+ //#endregion
22
+ //#region src/accordion/item-content.d.ts
23
+ /**
24
+ * Renders the `div` with the accordion's item content class.
25
+ */
26
+ declare const Shown$4: import("@stealthscale/theme").StyledComponent<"div", {}>;
27
+ /**
28
+ * Describes the props of the item content: the props of a `div`.
29
+ */
30
+ type ItemContentProps = ComponentProps<typeof Shown$4>;
31
+ /**
32
+ * Renders the content with the accordion's region props and the collapsible's visibility merged
33
+ * over the caller's.
34
+ *
35
+ * @remarks
36
+ * The accordion's `hidden` and `data-state` are passed as `undefined`, which the merge skips, so
37
+ * the collapsible's values apply and the content is visible while it animates closed.
38
+ * @param props - The props of a `div`.
39
+ * @returns The `div` element.
40
+ */
41
+ declare function ItemContent(props: ItemContentProps): ReactElement;
42
+ //#endregion
43
+ //#region src/accordion/item-heading.d.ts
44
+ /**
45
+ * Renders the `h3` with the accordion's item heading class.
46
+ */
47
+ declare const ItemHeading: import("@stealthscale/theme").StyledComponent<"h3", {}>;
48
+ /**
49
+ * Describes the props of the item heading: the props of an `h3`.
50
+ */
51
+ type ItemHeadingProps = ComponentProps<typeof ItemHeading>;
52
+ //#endregion
53
+ //#region src/accordion/item-indicator.d.ts
54
+ /**
55
+ * Renders the `span` with the accordion's item indicator class.
56
+ */
57
+ declare const Turned$3: import("@stealthscale/theme").StyledComponent<"span", {}>;
58
+ /**
59
+ * Describes the props of the item indicator: the props of a `span`.
60
+ */
61
+ type ItemIndicatorProps$1 = ComponentProps<typeof Turned$3>;
62
+ /**
63
+ * Renders the indicator with the machine's indicator props merged over the caller's.
64
+ *
65
+ * @param props - The props of a `span`.
66
+ * @returns The `span` element.
67
+ */
68
+ declare function ItemIndicator$1(props: ItemIndicatorProps$1): ReactElement;
69
+ //#endregion
70
+ //#region src/accordion/item-trigger.d.ts
71
+ /**
72
+ * Renders the `button` with the accordion's item trigger class.
73
+ */
74
+ declare const Pressed$8: import("@stealthscale/theme").StyledComponent<"button", {}>;
75
+ /**
76
+ * Describes the props of the item trigger: the props of a `button`.
77
+ */
78
+ type ItemTriggerProps = ComponentProps<typeof Pressed$8>;
79
+ /**
80
+ * Renders the trigger with the machine's trigger props merged over the caller's.
81
+ *
82
+ * @param props - The props of a `button`.
83
+ * @returns The `button` element.
84
+ */
85
+ declare function ItemTrigger(props: ItemTriggerProps): ReactElement;
86
+ //#endregion
87
+ //#region src/accordion/machine.d.ts
88
+ /**
89
+ * Describes the machine settings a caller can pass to the root, all optional.
90
+ */
91
+ type AccordionOptions = Partial<accordion.Props>;
92
+ /**
93
+ * Describes what an item passes the machine: its value and whether it is disabled.
94
+ */
95
+ type ItemOptions = accordion.ItemProps;
96
+ //#endregion
97
+ //#region src/accordion/item.d.ts
98
+ /**
99
+ * Renders the `div` with the accordion's item class.
100
+ */
101
+ declare const Held$2: import("@stealthscale/theme").StyledComponent<"div", {}>;
102
+ /**
103
+ * Describes the props of an item: its value, whether it is disabled and the props of a `div`.
104
+ */
105
+ interface ItemProps$2 extends ComponentProps<typeof Held$2>, ItemOptions {}
106
+ /**
107
+ * Renders the item with the machine's item props and provides its state to the parts inside it.
108
+ *
109
+ * @remarks
110
+ * `disabled` on an item adds to the root's. The machine reads an item's `false` over the root's
111
+ * `true`, so the item passes the machine `disabled` only when it is `true`, and a disabled root
112
+ * disables every item.
113
+ * @param props - The item's value, the disabled flag and the props of a `div`.
114
+ * @returns The `div` element.
115
+ */
116
+ declare function Item$2(props: ItemProps$2): ReactElement;
117
+ //#endregion
118
+ //#region src/accordion/root.d.ts
119
+ /**
120
+ * Renders the `div` that provides the recipe's variants.
121
+ */
122
+ declare const Framed$9: import("@stealthscale/theme").StyledComponent<"div", {
123
+ readonly motion?: "fade" | "none" | "slide" | undefined;
124
+ readonly palette?: "accent" | "error" | "info" | "neutral" | "primary" | "secondary" | "success" | "warning" | undefined;
125
+ readonly size?: "lg" | "md" | "sm" | undefined;
126
+ readonly variant?: "flushed" | "outline" | "plain" | "subtle" | "surface" | undefined;
127
+ }>;
128
+ /**
129
+ * Describes the props of the root: the machine's options, the recipe's variants and the props of a
130
+ * `div`.
131
+ *
132
+ * @remarks
133
+ * `orientation` is left out, because the recipe lays the items out in a column. The element's
134
+ * `defaultValue`, `dir` and `id` are left out, because the machine takes all three.
135
+ */
136
+ interface RootProps$10 extends Omit<AccordionOptions, "orientation">, Omit<ComponentProps<typeof Framed$9>, "defaultValue" | "dir" | "id"> {}
137
+ /**
138
+ * Renders the root and provides the running machine to the items.
139
+ *
140
+ * @param props - The machine's options, the recipe's variants and the props of a `div`.
141
+ * @returns The `div` element inside the machine's provider.
142
+ */
143
+ declare function Root$10(props: RootProps$10): ReactElement;
144
+ declare namespace index_d_exports {
145
+ export { Item$2 as Item, ItemBody, ItemBodyProps, ItemContent, ItemContentProps, ItemHeading, ItemHeadingProps, ItemIndicator$1 as ItemIndicator, ItemIndicatorProps$1 as ItemIndicatorProps, ItemProps$2 as ItemProps, ItemTrigger, ItemTriggerProps, Root$10 as Root, RootProps$10 as RootProps };
146
+ }
147
+ //#endregion
8
148
  //#region src/collapsible/content.d.ts
9
149
  /**
10
- * Draws the block at the room the root states.
150
+ * Renders the `div` with the collapsible's content class.
11
151
  */
12
- declare const Shown$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
152
+ declare const Shown$3: import("@stealthscale/theme").StyledComponent<"div", {}>;
13
153
  /**
14
- * Describes what the content takes.
154
+ * Describes the props of the content: the props of a `div`.
15
155
  */
16
- type ContentProps$4 = ComponentProps<typeof Shown$1>;
156
+ type ContentProps$9 = ComponentProps<typeof Shown$3>;
17
157
  /**
18
- * Appears and goes as the trigger is pressed.
158
+ * Renders the content with the machine's content props merged over the caller's.
19
159
  *
20
- * @param props - Everything a styled div takes.
21
- * @returns The block, measured and named by the machine.
160
+ * @param props - The props of a `div`.
161
+ * @returns The `div` element.
22
162
  */
23
- declare function Content$4(props: ContentProps$4): ReactElement;
163
+ declare function Content$9(props: ContentProps$9): ReactElement;
24
164
  //#endregion
25
165
  //#region src/collapsible/indicator.d.ts
26
166
  /**
27
- * Draws the mark at the box the root states.
167
+ * Renders the `span` with the collapsible's indicator class.
28
168
  */
29
- declare const Turned$1: import("@stealthscale/theme").StyledComponent<"span", {}>;
169
+ declare const Turned$2: import("@stealthscale/theme").StyledComponent<"span", {}>;
30
170
  /**
31
- * Describes what the indicator takes.
171
+ * Describes the props of the indicator: the props of a `span`.
32
172
  */
33
- type IndicatorProps$3 = ComponentProps<typeof Turned$1>;
173
+ type IndicatorProps$5 = ComponentProps<typeof Turned$2>;
34
174
  /**
35
- * Turns half a revolution while the block is open.
175
+ * Renders the indicator, hidden from assistive technology, with the machine's indicator props.
36
176
  *
37
- * @param props - Everything a styled span takes.
38
- * @returns The mark, turned to whichever way the machine is.
177
+ * @param props - The props of a `span`.
178
+ * @returns The `span` element.
39
179
  */
40
- declare function Indicator$3(props: IndicatorProps$3): ReactElement;
180
+ declare function Indicator$5(props: IndicatorProps$5): ReactElement;
41
181
  //#endregion
42
182
  //#region src/collapsible/machine.d.ts
43
183
  /**
44
- * Describes what a caller sets on the machine, less the id it is given.
184
+ * Describes the machine settings a caller can pass to the root, all optional.
45
185
  */
46
186
  type CollapsibleOptions = Partial<collapsible.Props>;
47
187
  //#endregion
48
188
  //#region src/collapsible/root.d.ts
49
189
  /**
50
- * Draws the frame and sets the variants every part below it reads.
190
+ * Renders the `div` that provides the recipe's variants.
51
191
  */
52
- declare const Framed$4: import("@stealthscale/theme").StyledComponent<"div", {
53
- readonly motion?: "fade" | "none" | "slide";
54
- readonly size?: import("@stealthscale/theme/authoring").Scale;
55
- readonly variant?: "outline" | "plain" | "subtle" | "surface";
192
+ declare const Framed$8: import("@stealthscale/theme").StyledComponent<"div", {
193
+ readonly motion?: "fade" | "none" | "slide" | undefined;
194
+ readonly palette?: "accent" | "error" | "info" | "neutral" | "primary" | "secondary" | "success" | "warning" | undefined;
195
+ readonly size?: import("@stealthscale/theme/authoring").Scale | undefined;
196
+ readonly variant?: "outline" | "plain" | "subtle" | "surface" | undefined;
56
197
  }>;
57
198
  /**
58
- * Describes what the root takes: the machine's options, the recipe's variants, and the element's.
199
+ * Describes the props of the root: the machine's options, the recipe's variants and the props of a
200
+ * `div`.
59
201
  *
60
202
  * @remarks
61
- * The element's own `id` and `dir` are left out, because the machine states both. It builds every
62
- * ARIA reference from the id, and it reads the direction to decide which way the block opens.
203
+ * The element's `id` and `dir` are left out, because the machine takes both. It derives every
204
+ * ARIA reference from `id`.
63
205
  */
64
- interface RootProps$4 extends CollapsibleOptions, Omit<ComponentProps<typeof Framed$4>, "dir" | "id"> {}
206
+ interface RootProps$9 extends CollapsibleOptions, Omit<ComponentProps<typeof Framed$8>, "dir" | "id"> {}
65
207
  /**
66
- * Shows and hides the block beneath a control.
208
+ * Renders the root and provides the machine's api to the parts.
67
209
  *
68
- * @param props - The machine's options, the recipe's variants and the element's props together.
69
- * @returns The frame, holding the parts, under the running machine.
210
+ * @param props - The machine's options, the recipe's variants and the props of a `div`.
211
+ * @returns The `div` element inside the api provider.
70
212
  */
71
- declare function Root$4(props: RootProps$4): ReactElement;
213
+ declare function Root$9(props: RootProps$9): ReactElement;
72
214
  //#endregion
73
215
  //#region src/collapsible/trigger.d.ts
74
216
  /**
75
- * Draws the control at the size the root states.
217
+ * Renders the `button` with the collapsible's trigger class.
76
218
  */
77
- declare const Pressed$4: import("@stealthscale/theme").StyledComponent<"button", {}>;
219
+ declare const Pressed$7: import("@stealthscale/theme").StyledComponent<"button", {}>;
78
220
  /**
79
- * Describes what the trigger takes.
221
+ * Describes the props of the trigger: the props of a `button`.
80
222
  */
81
- type TriggerProps$4 = ComponentProps<typeof Pressed$4>;
223
+ type TriggerProps$8 = ComponentProps<typeof Pressed$7>;
82
224
  /**
83
- * Shows the block where it is hidden, and hides it where it is shown.
225
+ * Renders the trigger with the machine's trigger props merged over the caller's.
84
226
  *
85
- * @param props - Everything a styled button takes.
86
- * @returns The control, carrying what the machine says it does.
227
+ * @param props - The props of a `button`.
228
+ * @returns The `button` element.
87
229
  */
88
- declare function Trigger$4(props: TriggerProps$4): ReactElement;
89
- declare namespace index_d_exports {
90
- export { Content$4 as Content, ContentProps$4 as ContentProps, Indicator$3 as Indicator, IndicatorProps$3 as IndicatorProps, Root$4 as Root, RootProps$4 as RootProps, Trigger$4 as Trigger, TriggerProps$4 as TriggerProps };
230
+ declare function Trigger$8(props: TriggerProps$8): ReactElement;
231
+ declare namespace index_d_exports$1 {
232
+ export { Content$9 as Content, ContentProps$9 as ContentProps, Indicator$5 as Indicator, IndicatorProps$5 as IndicatorProps, Root$9 as Root, RootProps$9 as RootProps, Trigger$8 as Trigger, TriggerProps$8 as TriggerProps };
233
+ }
234
+ //#endregion
235
+ //#region src/details/content.d.ts
236
+ /**
237
+ * Renders the `div` with the details' content class.
238
+ */
239
+ declare const Content$8: import("@stealthscale/theme").StyledComponent<"div", {}>;
240
+ /**
241
+ * Describes the props of the content: the props of a `div`.
242
+ */
243
+ type ContentProps$8 = ComponentProps<typeof Content$8>;
244
+ //#endregion
245
+ //#region src/details/indicator.d.ts
246
+ /**
247
+ * Renders the `span` with the details' indicator class.
248
+ */
249
+ declare const Turned$1: import("@stealthscale/theme").StyledComponent<"span", {}>;
250
+ /**
251
+ * Describes the props of the indicator: the props of a `span`.
252
+ */
253
+ type IndicatorProps$4 = ComponentProps<typeof Turned$1>;
254
+ /**
255
+ * Renders the indicator, hidden from assistive technology.
256
+ *
257
+ * @param props - The props of a `span`.
258
+ * @returns The `span` element.
259
+ */
260
+ declare function Indicator$4(props: IndicatorProps$4): ReactElement;
261
+ //#endregion
262
+ //#region src/details/root.d.ts
263
+ /**
264
+ * Renders the `details` with the recipe's variants.
265
+ */
266
+ declare const Root$8: import("@stealthscale/theme").StyledComponent<"details", {
267
+ readonly palette?: "accent" | "error" | "info" | "neutral" | "primary" | "secondary" | "success" | "warning" | undefined;
268
+ readonly size?: import("@stealthscale/theme/authoring").Scale | undefined;
269
+ readonly variant?: "outline" | "plain" | "subtle" | "surface" | undefined;
270
+ }>;
271
+ /**
272
+ * Describes the props of the root: the props of a `details` and the recipe's variants.
273
+ */
274
+ type RootProps$8 = ComponentProps<typeof Root$8>;
275
+ //#endregion
276
+ //#region src/details/summary.d.ts
277
+ /**
278
+ * Renders the `summary` with the details' summary class.
279
+ */
280
+ declare const Summary: import("@stealthscale/theme").StyledComponent<"summary", {}>;
281
+ /**
282
+ * Describes the props of the summary: the props of a `summary`.
283
+ */
284
+ type SummaryProps = ComponentProps<typeof Summary>;
285
+ declare namespace index_d_exports$2 {
286
+ export { Content$8 as Content, ContentProps$8 as ContentProps, Indicator$4 as Indicator, IndicatorProps$4 as IndicatorProps, Root$8 as Root, RootProps$8 as RootProps, Summary, SummaryProps };
287
+ }
288
+ //#endregion
289
+ //#region src/hover-card/arrow-tip.d.ts
290
+ /**
291
+ * Renders the `div` with the hover card's arrow tip class.
292
+ */
293
+ declare const Drawn$20: import("@stealthscale/theme").StyledComponent<"div", {}>;
294
+ /**
295
+ * Describes the props of the arrow tip: the props of a `div`.
296
+ */
297
+ type ArrowTipProps$4 = ComponentProps<typeof Drawn$20>;
298
+ /**
299
+ * Renders the arrow tip with the machine's arrow tip props merged over the caller's.
300
+ *
301
+ * @param props - The props of a `div`.
302
+ * @returns The `div` element.
303
+ */
304
+ declare function ArrowTip$4(props: ArrowTipProps$4): ReactElement;
305
+ //#endregion
306
+ //#region src/hover-card/arrow.d.ts
307
+ /**
308
+ * Renders the `div` with the hover card's arrow class.
309
+ */
310
+ declare const Drawn$19: import("@stealthscale/theme").StyledComponent<"div", {}>;
311
+ /**
312
+ * Describes the props of the arrow: the props of a `div`.
313
+ */
314
+ type ArrowProps$4 = ComponentProps<typeof Drawn$19>;
315
+ /**
316
+ * Renders the arrow with the machine's arrow props merged over the caller's.
317
+ *
318
+ * @param props - The props of a `div`.
319
+ * @returns The `div` element.
320
+ */
321
+ declare function Arrow$4(props: ArrowProps$4): ReactElement;
322
+ //#endregion
323
+ //#region src/hover-card/content.d.ts
324
+ /**
325
+ * Renders the `div` with the hover card's content class.
326
+ */
327
+ declare const Drawn$18: import("@stealthscale/theme").StyledComponent<"div", {}>;
328
+ /**
329
+ * Describes the props of the content: the props of a `div`, without `ref`, which the presence
330
+ * takes.
331
+ */
332
+ type ContentProps$7 = Omit<ComponentProps<typeof Drawn$18>, "ref">;
333
+ /**
334
+ * Renders the panel with the machine's content props and the presence props merged over the
335
+ * caller's.
336
+ *
337
+ * @param props - The props of a `div`.
338
+ * @returns The `div` element.
339
+ */
340
+ declare function Content$7(props: ContentProps$7): ReactElement;
341
+ //#endregion
342
+ //#region src/hover-card/positioner.d.ts
343
+ /**
344
+ * Renders the `div` with the hover card's positioner class.
345
+ */
346
+ declare const Drawn$17: import("@stealthscale/theme").StyledComponent<"div", {}>;
347
+ /**
348
+ * Describes the props of the positioner: the props of a `div`.
349
+ */
350
+ type PositionerProps$4 = ComponentProps<typeof Drawn$17>;
351
+ /**
352
+ * Renders the positioner with the machine's positioner props merged over the caller's.
353
+ *
354
+ * @param props - The props of a `div`.
355
+ * @returns The `div` element, or nothing while the panel is out of the document.
356
+ */
357
+ declare function Positioner$4(props: PositionerProps$4): null | ReactElement;
358
+ //#endregion
359
+ //#region src/hover-card/machine.d.ts
360
+ /**
361
+ * Describes the machine settings a caller can pass to the root, all optional.
362
+ */
363
+ type HoverCardOptions = Partial<hoverCard.Props>;
364
+ //#endregion
365
+ //#region src/presence.d.ts
366
+ /**
367
+ * Describes when an overlay renders its content while the overlay is closed.
368
+ *
369
+ * @remarks
370
+ * The package declares the options again, because the hooks package is a peer. A specimen page
371
+ * lists only the props that the package or its runtime dependencies declare.
372
+ */
373
+ interface OverlayPresence extends Omit<PresenceOptions, "present"> {
374
+ /**
375
+ * When true, the overlay renders no content until it first opens.
376
+ *
377
+ * @defaultValue true
378
+ */
379
+ readonly lazyMount?: boolean | undefined;
380
+ /**
381
+ * Runs once the content's exit animation ends.
382
+ */
383
+ readonly onExitComplete?: (() => void) | undefined;
384
+ /**
385
+ * When true, content that is open on mount plays no entry animation.
386
+ */
387
+ readonly skipAnimationOnMount?: boolean | undefined;
388
+ /**
389
+ * When true, the overlay removes its content once the exit animation ends.
390
+ *
391
+ * @defaultValue true
392
+ */
393
+ readonly unmountOnExit?: boolean | undefined;
394
+ }
395
+ //#endregion
396
+ //#region src/hover-card/root.d.ts
397
+ /**
398
+ * Renders the `span` that provides the recipe's variants.
399
+ */
400
+ declare const Framed$7: import("@stealthscale/theme").StyledComponent<"span", {
401
+ readonly size?: "lg" | "md" | "sm" | "xs" | undefined;
402
+ readonly variant?: "elevated" | "glass" | "surface" | undefined;
403
+ }>;
404
+ /**
405
+ * Describes the props of the root: the machine's options, the panel's presence, the recipe's
406
+ * variants and the props of a `span`.
407
+ *
408
+ * @remarks
409
+ * The element's `id` and `dir` are left out, because the machine takes both. It derives every
410
+ * part's id from `id`, and reads `dir` for the placement.
411
+ */
412
+ interface RootProps$7 extends HoverCardOptions, Omit<ComponentProps<typeof Framed$7>, "dir" | "id">, OverlayPresence {}
413
+ /**
414
+ * Renders the root and provides the machine's api and the panel's presence to the parts.
415
+ *
416
+ * @param props - The machine's options, the panel's presence, the recipe's variants and the props
417
+ * of a `span`.
418
+ * @returns The `span` element inside the providers.
419
+ */
420
+ declare function Root$7({ lazyMount, onExitComplete, skipAnimationOnMount, unmountOnExit, ...props }: RootProps$7): ReactElement;
421
+ //#endregion
422
+ //#region src/hover-card/trigger.d.ts
423
+ /**
424
+ * Renders the `a` with the hover card's trigger class.
425
+ */
426
+ declare const Drawn$16: import("@stealthscale/theme").StyledComponent<"a", {}>;
427
+ /**
428
+ * Describes the props of the trigger: the props of an `a`, and the value that tells this trigger
429
+ * apart from the card's other triggers.
430
+ */
431
+ interface TriggerProps$7 extends ComponentProps<typeof Drawn$16> {
432
+ /**
433
+ * The value the root reports as `triggerValue` while this trigger opened the card. Absent for a
434
+ * card with one trigger.
435
+ */
436
+ readonly value?: string | undefined;
437
+ }
438
+ /**
439
+ * Renders the trigger with the machine's trigger props merged over the caller's.
440
+ *
441
+ * @param props - The value and the props of an `a`.
442
+ * @returns The `a` element.
443
+ */
444
+ declare function Trigger$7({ value, ...props }: TriggerProps$7): ReactElement;
445
+ declare namespace index_d_exports$3 {
446
+ export { Arrow$4 as Arrow, ArrowProps$4 as ArrowProps, ArrowTip$4 as ArrowTip, ArrowTipProps$4 as ArrowTipProps, Content$7 as Content, ContentProps$7 as ContentProps, Positioner$4 as Positioner, PositionerProps$4 as PositionerProps, Root$7 as Root, RootProps$7 as RootProps, Trigger$7 as Trigger, TriggerProps$7 as TriggerProps };
91
447
  }
92
448
  //#endregion
93
449
  //#region src/menu/arrow-tip.d.ts
94
450
  /**
95
- * Draws the square at the look the root states.
451
+ * Renders the `div` with the menu's arrow tip class.
96
452
  */
97
453
  declare const Tipped: import("@stealthscale/theme").StyledComponent<"div", {}>;
98
454
  /**
99
- * Describes what the square takes.
455
+ * Describes the props of the arrow tip: the props of a `div`.
100
456
  */
101
- type ArrowTipProps$2 = ComponentProps<typeof Tipped>;
457
+ type ArrowTipProps$3 = ComponentProps<typeof Tipped>;
102
458
  /**
103
- * Gives the point its shape.
459
+ * Renders the arrow tip with the machine's arrow tip props merged over the caller's.
104
460
  *
105
- * @param props - Everything a styled div takes.
106
- * @returns The square, carrying the place the machine measured.
461
+ * @param props - The props of a `div`.
462
+ * @returns The `div` element.
107
463
  */
108
- declare function ArrowTip$2(props: ArrowTipProps$2): ReactElement;
464
+ declare function ArrowTip$3(props: ArrowTipProps$3): ReactElement;
109
465
  //#endregion
110
466
  //#region src/menu/arrow.d.ts
111
467
  /**
112
- * Draws the point at the size the root states.
468
+ * Renders the `div` with the menu's arrow class.
113
469
  */
114
470
  declare const Pointed: import("@stealthscale/theme").StyledComponent<"div", {}>;
115
471
  /**
116
- * Describes what the point takes.
472
+ * Describes the props of the arrow: the props of a `div`.
117
473
  */
118
- type ArrowProps$2 = ComponentProps<typeof Pointed>;
474
+ type ArrowProps$3 = ComponentProps<typeof Pointed>;
119
475
  /**
120
- * Points from the panel back at the control.
476
+ * Renders the arrow with the machine's arrow props merged over the caller's.
121
477
  *
122
- * @param props - Everything a styled div takes.
123
- * @returns The point, carrying the place the machine measured.
478
+ * @param props - The props of a `div`.
479
+ * @returns The `div` element.
124
480
  */
125
- declare function Arrow$2(props: ArrowProps$2): ReactElement;
481
+ declare function Arrow$3(props: ArrowProps$3): ReactElement;
126
482
  //#endregion
127
483
  //#region src/menu/content.d.ts
128
484
  /**
129
- * Draws the panel at the size the root states.
485
+ * Renders the `div` with the menu's content class.
130
486
  */
131
- declare const Drawn$10: import("@stealthscale/theme").StyledComponent<"div", {}>;
487
+ declare const Drawn$15: import("@stealthscale/theme").StyledComponent<"div", {}>;
132
488
  /**
133
- * Describes what the panel takes.
489
+ * Describes the props of the panel: the props of a `div`, without `ref`, which the presence takes.
134
490
  */
135
- type ContentProps$3 = ComponentProps<typeof Drawn$10>;
491
+ type ContentProps$6 = Omit<ComponentProps<typeof Drawn$15>, "ref">;
136
492
  /**
137
- * Shows the rows of the menu.
493
+ * Renders the panel with the presence props, the machine's direction, placement and side, its
494
+ * depth and its nested mark, and the rows inside a scroll area whose viewport takes the machine's
495
+ * content props.
138
496
  *
139
- * @param props - Everything a styled div takes.
140
- * @returns The panel, carrying what the machine writes onto it.
497
+ * @param props - The panel's `as` and `style`, and the props of the element with `role="menu"`.
498
+ * @returns The `div` element of the panel.
141
499
  */
142
- declare function Content$3(props: ContentProps$3): ReactElement;
500
+ declare function Content$6({ as, children, style, ...rest }: ContentProps$6): ReactElement;
143
501
  //#endregion
144
502
  //#region src/menu/context-trigger.d.ts
145
503
  /**
146
- * Draws the region at the size the root states.
504
+ * Renders the `div` with the menu's context trigger class.
147
505
  */
148
- declare const Held: import("@stealthscale/theme").StyledComponent<"div", {}>;
506
+ declare const Held$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
149
507
  /**
150
- * Describes what the region takes.
508
+ * Describes the props of the context trigger: its value and the props of a `div`.
151
509
  */
152
- interface ContextTriggerProps extends ComponentProps<typeof Held> {
510
+ interface ContextTriggerProps extends ComponentProps<typeof Held$1> {
153
511
  /**
154
- * The value that identifies this region, for a menu opened from more than one.
512
+ * Value that identifies the region, for a menu opened from several.
155
513
  */
156
514
  readonly value?: string | undefined;
157
515
  }
158
516
  /**
159
- * Opens the menu where the pointer is.
517
+ * Renders the region with the machine's context trigger props merged over the caller's.
160
518
  *
161
- * @param props - The name of this region, and everything a styled div takes.
162
- * @returns The region, carrying what the machine writes onto it.
519
+ * @param props - The region's value and the props of a `div`.
520
+ * @returns The `div` element.
163
521
  */
164
522
  declare function ContextTrigger({ value, ...rest }: ContextTriggerProps): ReactElement;
165
523
  //#endregion
166
- //#region src/menu/indicator.d.ts
524
+ //#region src/menu/indicator.d.ts
525
+ /**
526
+ * Renders the `span` with the menu's indicator class.
527
+ */
528
+ declare const Marked$2: import("@stealthscale/theme").StyledComponent<"span", {}>;
529
+ /**
530
+ * Describes the props of the indicator: the props of a `span`.
531
+ */
532
+ type IndicatorProps$3 = ComponentProps<typeof Marked$2>;
533
+ /**
534
+ * Renders the indicator, hidden from assistive technology, with the machine's indicator props.
535
+ *
536
+ * @param props - The props of a `span`.
537
+ * @returns The `span` element.
538
+ */
539
+ declare function Indicator$3(props: IndicatorProps$3): ReactElement;
540
+ //#endregion
541
+ //#region src/menu/item-command.d.ts
542
+ /**
543
+ * Renders the `kbd` with the menu's item command class.
544
+ */
545
+ declare const Struck: import("@stealthscale/theme").StyledComponent<"kbd", {}>;
546
+ /**
547
+ * Describes the props of a row's shortcut: the props of a `kbd`.
548
+ */
549
+ type ItemCommandProps = ComponentProps<typeof Struck>;
550
+ /**
551
+ * Renders the shortcut, and throws when no menu is above it.
552
+ *
553
+ * @param props - The props of a `kbd`.
554
+ * @returns The `kbd` element.
555
+ */
556
+ declare function ItemCommand(props: ItemCommandProps): ReactElement;
557
+ //#endregion
558
+ //#region src/menu/item-description.d.ts
559
+ /**
560
+ * Renders the `span` with the menu's item description class.
561
+ */
562
+ declare const Described: import("@stealthscale/theme").StyledComponent<"span", {}>;
563
+ /**
564
+ * Describes the props of a row's description: the props of a `span`.
565
+ */
566
+ type ItemDescriptionProps = ComponentProps<typeof Described>;
567
+ /**
568
+ * Renders the description, and throws when no menu is above it.
569
+ *
570
+ * @param props - The props of a `span`.
571
+ * @returns The `span` element.
572
+ */
573
+ declare function ItemDescription(props: ItemDescriptionProps): ReactElement;
574
+ //#endregion
575
+ //#region src/menu/item-group-label.d.ts
576
+ /**
577
+ * Renders the `div` with the menu's item group label class.
578
+ */
579
+ declare const Titled: import("@stealthscale/theme").StyledComponent<"div", {}>;
580
+ /**
581
+ * Describes the props of a group's label: its group's value and the props of a `div`.
582
+ */
583
+ interface ItemGroupLabelProps extends ComponentProps<typeof Titled> {
584
+ /**
585
+ * Value of the group the label names.
586
+ */
587
+ readonly value: string;
588
+ }
589
+ /**
590
+ * Renders the label with the machine's item group label props merged over the caller's.
591
+ *
592
+ * @param props - The group's value and the props of a `div`.
593
+ * @returns The `div` element.
594
+ */
595
+ declare function ItemGroupLabel({ value, ...rest }: ItemGroupLabelProps): ReactElement;
596
+ //#endregion
597
+ //#region src/menu/item-group.d.ts
598
+ /**
599
+ * Renders the `div` with the menu's item group class.
600
+ */
601
+ declare const Grouped: import("@stealthscale/theme").StyledComponent<"div", {}>;
602
+ /**
603
+ * Describes the props of a group: its value and the props of a `div`.
604
+ */
605
+ interface ItemGroupProps extends ComponentProps<typeof Grouped> {
606
+ /**
607
+ * Value the group and its label share.
608
+ */
609
+ readonly value: string;
610
+ }
611
+ /**
612
+ * Renders the group with the machine's item group props merged over the caller's.
613
+ *
614
+ * @param props - The group's value and the props of a `div`.
615
+ * @returns The `div` element.
616
+ */
617
+ declare function ItemGroup({ value, ...rest }: ItemGroupProps): ReactElement;
618
+ //#endregion
619
+ //#region src/menu/item-indicator.d.ts
620
+ /**
621
+ * Renders the `span` with the menu's item indicator class.
622
+ */
623
+ declare const Marked$1: import("@stealthscale/theme").StyledComponent<"span", {}>;
624
+ /**
625
+ * Describes the props of the item indicator: the props of a `span`.
626
+ */
627
+ type ItemIndicatorProps = ComponentProps<typeof Marked$1>;
628
+ /**
629
+ * Renders the mark with the machine's item indicator props, without `hidden`.
630
+ *
631
+ * @param props - The props of a `span`.
632
+ * @returns The `span` element.
633
+ */
634
+ declare function ItemIndicator(props: ItemIndicatorProps): ReactElement;
635
+ //#endregion
636
+ //#region src/menu/item-lines.d.ts
637
+ /**
638
+ * Renders the `span` with the menu's item lines class.
639
+ */
640
+ declare const Stacked: import("@stealthscale/theme").StyledComponent<"span", {}>;
641
+ /**
642
+ * Describes the props of a row's lines: the props of a `span`.
643
+ */
644
+ type ItemLinesProps = ComponentProps<typeof Stacked>;
645
+ /**
646
+ * Renders the column, and throws when no menu is above it.
647
+ *
648
+ * @param props - The props of a `span`.
649
+ * @returns The `span` element.
650
+ */
651
+ declare function ItemLines(props: ItemLinesProps): ReactElement;
652
+ //#endregion
653
+ //#region src/menu/item-mark.d.ts
654
+ /**
655
+ * Renders the `span` with the menu's item mark class, hidden from assistive technology.
656
+ */
657
+ declare const Marked: import("@stealthscale/theme").StyledComponent<"span", {}>;
658
+ /**
659
+ * Describes the props of a row's mark: the props of a `span`.
660
+ */
661
+ type ItemMarkProps = ComponentProps<typeof Marked>;
662
+ /**
663
+ * Renders the mark, and throws when no menu is above it.
664
+ *
665
+ * @param props - The props of a `span`.
666
+ * @returns The `span` element.
667
+ */
668
+ declare function ItemMark(props: ItemMarkProps): ReactElement;
669
+ //#endregion
670
+ //#region src/menu/item-text.d.ts
671
+ /**
672
+ * Renders the `span` with the menu's item text class.
673
+ */
674
+ declare const Worded: import("@stealthscale/theme").StyledComponent<"span", {}>;
675
+ /**
676
+ * Describes the props of a row's text: the props of a `span`.
677
+ */
678
+ type ItemTextProps = ComponentProps<typeof Worded>;
679
+ /**
680
+ * Renders the text with the machine's item text props merged over the caller's.
681
+ *
682
+ * @param props - The props of a `span`.
683
+ * @returns The `span` element.
684
+ */
685
+ declare function ItemText(props: ItemTextProps): ReactElement;
686
+ //#endregion
687
+ //#region src/menu/tone.d.ts
688
+ /**
689
+ * Types the tone of a menu row.
690
+ *
691
+ * @remarks
692
+ * The tone is a prop of the row. A slot recipe resolves its variants once, at the root, and one
693
+ * row differs from the rest. The row sets the tone as `data-tone`, and the recipe's base styles
694
+ * the attribute.
695
+ */
696
+ /**
697
+ * Tone of a row: `critical` for a row that destroys or undoes something, in the error palette.
698
+ */
699
+ type Tone = "critical";
700
+ //#endregion
701
+ //#region src/menu/item.d.ts
702
+ /**
703
+ * Renders the `div` with the menu's item class.
704
+ */
705
+ declare const Chosen$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
706
+ /**
707
+ * Describes the props of a row: its value, its options, its tone and the props of a `div`.
708
+ */
709
+ interface ItemProps$1 extends Omit<ComponentProps<typeof Chosen$1>, "onSelect"> {
710
+ /**
711
+ * Whether choosing the row closes the menu. Defaults to true.
712
+ */
713
+ readonly closeOnSelect?: boolean | undefined;
714
+ /**
715
+ * Whether the row is disabled.
716
+ */
717
+ readonly disabled?: boolean | undefined;
718
+ /**
719
+ * Tone of the row, which sets its palette.
720
+ */
721
+ readonly tone?: Tone | undefined;
722
+ /**
723
+ * Value the machine identifies the row by and reports when it is chosen.
724
+ */
725
+ readonly value: string;
726
+ /**
727
+ * Text typeahead matches, when it differs from the rendered text.
728
+ */
729
+ readonly valueText?: string | undefined;
730
+ }
731
+ /**
732
+ * Renders the row with the machine's item props and `data-tone`, and provides its state.
733
+ *
734
+ * @param props - The row's value, options, tone and the props of a `div`.
735
+ * @returns The `div` element inside the item provider.
736
+ */
737
+ declare function Item$1({ closeOnSelect, disabled, tone, value, valueText, ...rest }: ItemProps$1): ReactElement;
738
+ //#endregion
739
+ //#region src/menu/option-item.d.ts
740
+ /**
741
+ * Renders the `div` with the menu's item class.
742
+ */
743
+ declare const Chosen: import("@stealthscale/theme").StyledComponent<"div", {}>;
744
+ /**
745
+ * Describes the props of a checkable row: its checked state, its type, its value and the props of a
746
+ * `div`.
747
+ */
748
+ interface OptionItemProps extends Omit<ComponentProps<typeof Chosen>, "onSelect"> {
749
+ /**
750
+ * Whether the row is checked.
751
+ */
752
+ readonly checked: boolean;
753
+ /**
754
+ * Whether choosing the row closes the menu. Defaults to true for a radio and false for a
755
+ * checkbox.
756
+ */
757
+ readonly closeOnSelect?: boolean | undefined;
758
+ /**
759
+ * Whether the row is disabled.
760
+ */
761
+ readonly disabled?: boolean | undefined;
762
+ /**
763
+ * Called with the new checked state when the row is chosen.
764
+ */
765
+ readonly onCheckedChange?: ((checked: boolean) => void) | undefined;
766
+ /**
767
+ * Tone of the row, which sets its palette.
768
+ */
769
+ readonly tone?: Tone | undefined;
770
+ /**
771
+ * Whether the row is a checkbox or a radio.
772
+ */
773
+ readonly type: "checkbox" | "radio";
774
+ /**
775
+ * Value the machine identifies the row by and reports when it is chosen.
776
+ */
777
+ readonly value: string;
778
+ /**
779
+ * Text typeahead matches, when it differs from the rendered text.
780
+ */
781
+ readonly valueText?: string | undefined;
782
+ }
783
+ /**
784
+ * Renders the row with the machine's option item props and `data-tone`, and provides its state.
785
+ *
786
+ * @param props - The row's checked state, type, value, options, tone and the props of a `div`.
787
+ * @returns The `div` element inside the item provider.
788
+ */
789
+ declare function OptionItem({ checked, closeOnSelect, disabled, onCheckedChange, tone, type, value, valueText, ...rest }: OptionItemProps): ReactElement;
790
+ //#endregion
791
+ //#region src/menu/positioner.d.ts
792
+ /**
793
+ * Renders the `div` with the menu's positioner class.
794
+ */
795
+ declare const Placed$2: import("@stealthscale/theme").StyledComponent<"div", {}>;
796
+ /**
797
+ * Describes the props of the positioner: the props of a `div`.
798
+ */
799
+ type PositionerProps$3 = ComponentProps<typeof Placed$2>;
800
+ /**
801
+ * Renders the positioner with the machine's positioner props merged over the caller's.
802
+ *
803
+ * @param props - The props of a `div`.
804
+ * @returns The `div` element, or nothing while the panel is out of the document.
805
+ */
806
+ declare function Positioner$3(props: PositionerProps$3): null | ReactElement;
807
+ //#endregion
808
+ //#region src/menu/recipe.d.ts
809
+ /**
810
+ * Defines the menu recipe: the surface look at size `md` in the neutral palette, with the tint
811
+ * highlight, by default.
812
+ */
813
+ declare const recipe: import("@stealthscale/theme/authoring").SlotRecipe<"arrow" | "arrowTip" | "content" | "contextTrigger" | "indicator" | "item" | "itemCommand" | "itemDescription" | "itemGroup" | "itemGroupLabel" | "itemIndicator" | "itemLines" | "itemMark" | "itemText" | "positioner" | "root" | "rows" | "separator" | "trigger" | "triggerItem" | "viewport", {
814
+ /**
815
+ * Look of the highlighted row.
816
+ */
817
+ readonly highlight: {
818
+ bar: Partial<Record<"item" | "triggerItem", SystemStyleObject>>;
819
+ fill: Partial<Record<"item" | "triggerItem", SystemStyleObject>>;
820
+ tint: Partial<Record<"item" | "triggerItem", SystemStyleObject>>;
821
+ };
822
+ /**
823
+ * Whether a row without a leading icon or mark starts its text after the gutter an icon takes,
824
+ * for a menu where some rows lead with an icon.
825
+ */
826
+ readonly inset: {
827
+ readonly true: {
828
+ readonly item: {
829
+ readonly "&:not(:has(> svg:first-child, > .menu__itemMark:first-child))": {
830
+ readonly paddingInlineStart: "var(--menu-gutter)";
831
+ };
832
+ };
833
+ readonly triggerItem: {
834
+ readonly "&:not(:has(> svg:first-child, > .menu__itemMark:first-child))": {
835
+ readonly paddingInlineStart: "var(--menu-gutter)";
836
+ };
837
+ };
838
+ };
839
+ };
840
+ /**
841
+ * Palette of the rows and the highlight, set on the panel, which a portalled panel keeps.
842
+ */
843
+ readonly palette: {
844
+ accent: Record<"content", SystemStyleObject>;
845
+ error: Record<"content", SystemStyleObject>;
846
+ info: Record<"content", SystemStyleObject>;
847
+ neutral: Record<"content", SystemStyleObject>;
848
+ primary: Record<"content", SystemStyleObject>;
849
+ secondary: Record<"content", SystemStyleObject>;
850
+ success: Record<"content", SystemStyleObject>;
851
+ warning: Record<"content", SystemStyleObject>;
852
+ };
853
+ /**
854
+ * Size of the panel's padding, the rows, the marks and the keys.
855
+ */
856
+ readonly size: {
857
+ "2xl": Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
858
+ "3xl": Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
859
+ "4xl": Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
860
+ lg: Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
861
+ md: Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
862
+ sm: Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
863
+ xl: Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
864
+ xs: Partial<Record<"content" | "indicator" | "item" | "itemCommand" | "itemGroupLabel" | "itemIndicator" | "itemMark" | "rows" | "separator" | "triggerItem" | "viewport", SystemStyleObject>>;
865
+ };
866
+ /**
867
+ * Surface of the panel: the popover surface inside a hairline edge, the panel surface with a
868
+ * large shadow, or the glass layer style.
869
+ *
870
+ * @remarks
871
+ * The elevated panel has a transparent hairline edge, which forced colors paint in
872
+ * `CanvasText`, so the panel keeps its outline where the shadow is not drawn.
873
+ */
874
+ readonly variant: {
875
+ readonly elevated: {
876
+ readonly arrowTip: {
877
+ borderColor: "var(--menu-surface)";
878
+ };
879
+ readonly content: {
880
+ readonly "--menu-surface": "colors.bg.panel";
881
+ readonly background: "var(--menu-surface)";
882
+ readonly borderColor: "transparent";
883
+ readonly borderRadius: "l2";
884
+ readonly borderStyle: "solid";
885
+ readonly borderWidth: "hairline";
886
+ readonly boxShadow: "lg";
887
+ };
888
+ };
889
+ readonly glass: {
890
+ readonly arrowTip: {
891
+ readonly borderColor: "border";
892
+ };
893
+ readonly content: {
894
+ readonly layerStyle: "glass";
895
+ readonly "--menu-surface": "colors.bg.popover";
896
+ readonly borderRadius: "l2";
897
+ };
898
+ };
899
+ readonly surface: {
900
+ readonly arrowTip: {
901
+ readonly borderColor: "border";
902
+ };
903
+ readonly content: {
904
+ readonly "--menu-surface": "colors.bg.popover";
905
+ readonly background: "var(--menu-surface)";
906
+ readonly borderColor: "border";
907
+ readonly borderRadius: "l2";
908
+ readonly borderWidth: "hairline";
909
+ readonly boxShadow: "md";
910
+ };
911
+ };
912
+ };
913
+ }>;
914
+ //#endregion
915
+ //#region src/menu/variants.d.ts
916
+ /**
917
+ * Describes the variants a caller sets on a menu.
918
+ */
919
+ type MenuVariants = RecipeProps<typeof recipe>;
920
+ //#endregion
921
+ //#region src/menu/machine.d.ts
922
+ /**
923
+ * Describes the machine settings a caller can pass to the root, all optional.
924
+ */
925
+ type MenuOptions = Partial<menu.Props>;
926
+ //#endregion
927
+ //#region src/menu/root.d.ts
928
+ /**
929
+ * Renders the `div` that provides the recipe's variants.
930
+ */
931
+ declare const Framed$6: import("@stealthscale/theme").StyledComponent<"div", {
932
+ readonly highlight?: import("@stealthscale/theme/authoring").Highlight | undefined;
933
+ readonly inset?: boolean | undefined;
934
+ readonly palette?: "accent" | "error" | "info" | "neutral" | "primary" | "secondary" | "success" | "warning" | undefined;
935
+ readonly size?: import("@stealthscale/theme/authoring").Scale | undefined;
936
+ readonly variant?: "elevated" | "glass" | "surface" | undefined;
937
+ }>;
938
+ /**
939
+ * Describes the props of the root: the machine's options, the panel's presence, the recipe's
940
+ * variants and the props of a `div`.
941
+ *
942
+ * @remarks
943
+ * The element's `id` and `dir` are left out, because the machine takes both. The element's
944
+ * `onSelect` is left out too, because a `div` reports a text selection under that name and the
945
+ * machine reports the chosen row.
946
+ */
947
+ interface RootProps$6 extends MenuOptions, Omit<ComponentProps<typeof Framed$6>, "dir" | "id" | "onSelect">, OverlayPresence {}
948
+ /**
949
+ * Renders the root, provides its menu level to the parts and registers a submenu with its parent.
950
+ *
951
+ * @param props - The machine's options, the panel's presence, the recipe's variants and the props
952
+ * of a `div`.
953
+ * @returns The `div` element inside the api provider.
954
+ */
955
+ declare function Root$6({ lazyMount, onExitComplete, skipAnimationOnMount, unmountOnExit, ...props }: RootProps$6): ReactElement;
956
+ //#endregion
957
+ //#region src/menu/separator.d.ts
958
+ /**
959
+ * Renders the `div` with the menu's separator class.
960
+ */
961
+ declare const Ruled: import("@stealthscale/theme").StyledComponent<"div", {}>;
962
+ /**
963
+ * Describes the props of the separator: the props of a `div`.
964
+ */
965
+ type SeparatorProps$1 = ComponentProps<typeof Ruled>;
966
+ /**
967
+ * Renders the separator with the machine's separator props merged over the caller's.
968
+ *
969
+ * @param props - The props of a `div`.
970
+ * @returns The `div` element.
971
+ */
972
+ declare function Separator$1(props: SeparatorProps$1): ReactElement;
973
+ //#endregion
974
+ //#region src/menu/trigger-item.d.ts
975
+ /**
976
+ * Renders the `button` with the menu's trigger item class.
977
+ */
978
+ declare const Pressed$6: import("@stealthscale/theme").StyledComponent<"button", {}>;
979
+ /**
980
+ * Describes the props of the trigger row: the props of a `button`.
981
+ */
982
+ type TriggerItemProps = ComponentProps<typeof Pressed$6>;
983
+ /**
984
+ * Renders the row with the parent machine's trigger item props merged over the caller's.
985
+ *
986
+ * @param props - The props of a `button`.
987
+ * @returns The `button` element.
988
+ * @throws {@link Error} When the menu it is rendered in has no parent menu.
989
+ */
990
+ declare function TriggerItem(props: TriggerItemProps): ReactElement;
991
+ //#endregion
992
+ //#region src/menu/trigger.d.ts
993
+ /**
994
+ * Renders the `button` with the menu's trigger class.
995
+ */
996
+ declare const Pressed$5: import("@stealthscale/theme").StyledComponent<"button", {}>;
997
+ /**
998
+ * Describes the props of the trigger: its value and the props of a `button`.
999
+ */
1000
+ interface TriggerProps$6 extends ComponentProps<typeof Pressed$5> {
1001
+ /**
1002
+ * Value that identifies the trigger, for a menu opened from several.
1003
+ */
1004
+ readonly value?: string | undefined;
1005
+ }
1006
+ /**
1007
+ * Renders the trigger with the machine's trigger props merged over the caller's.
1008
+ *
1009
+ * @param props - The trigger's value and the props of a `button`.
1010
+ * @returns The `button` element.
1011
+ */
1012
+ declare function Trigger$6({ value, ...rest }: TriggerProps$6): ReactElement;
1013
+ declare namespace index_d_exports$4 {
1014
+ export { Arrow$3 as Arrow, ArrowProps$3 as ArrowProps, ArrowTip$3 as ArrowTip, ArrowTipProps$3 as ArrowTipProps, Content$6 as Content, ContentProps$6 as ContentProps, ContextTrigger, ContextTriggerProps, Indicator$3 as Indicator, IndicatorProps$3 as IndicatorProps, Item$1 as Item, ItemCommand, ItemCommandProps, ItemDescription, ItemDescriptionProps, ItemGroup, ItemGroupLabel, ItemGroupLabelProps, ItemGroupProps, ItemIndicator, ItemIndicatorProps, ItemLines, ItemLinesProps, ItemMark, ItemMarkProps, ItemProps$1 as ItemProps, ItemText, ItemTextProps, OptionItem, OptionItemProps, Positioner$3 as Positioner, PositionerProps$3 as PositionerProps, Root$6 as Root, RootProps$6 as RootProps, Separator$1 as Separator, SeparatorProps$1 as SeparatorProps, Tone, Trigger$6 as Trigger, TriggerItem, TriggerItemProps, TriggerProps$6 as TriggerProps };
1015
+ }
1016
+ //#endregion
1017
+ //#region src/menubar/bar.d.ts
1018
+ /**
1019
+ * Describes what `onValueChange` receives: the value of the open menu, or an empty string once
1020
+ * every menu is closed.
1021
+ */
1022
+ interface ValueChangeDetails {
1023
+ /**
1024
+ * Value of the open menu, or an empty string.
1025
+ */
1026
+ readonly value: string;
1027
+ }
1028
+ //#endregion
1029
+ //#region src/menubar/content.d.ts
1030
+ /**
1031
+ * Describes the props of the panel: the props of the menu's panel.
1032
+ */
1033
+ type ContentProps$5 = ContentProps$6;
1034
+ /**
1035
+ * Renders the positioner and the panel, and steps the bar on the sideways arrows.
1036
+ *
1037
+ * @remarks
1038
+ * The menu opens on the render after the step, and its panel enters the document on a later
1039
+ * one, so the panel claims the step once its first row is in the document.
1040
+ * @param props - The rows and the props of the menu's panel.
1041
+ * @returns The positioner, or nothing while the panel is out of the document.
1042
+ */
1043
+ declare function Content$5({ onKeyDownCapture, ...props }: ContentProps$5): ReactElement;
1044
+ //#endregion
1045
+ //#region src/menubar/menu.d.ts
1046
+ /**
1047
+ * Describes the props of a menu: its value and the props of a menu root, whose open state the bar
1048
+ * keeps.
1049
+ */
1050
+ interface MenuProps extends Omit<RootProps$6, "defaultOpen" | "onOpenChange" | "open"> {
1051
+ /**
1052
+ * Value of the menu, which the bar reports while the menu is open.
1053
+ */
1054
+ readonly value: string;
1055
+ }
1056
+ /**
1057
+ * Renders the menu's root, opened and closed by the bar outside the folded bar's menu.
1058
+ *
1059
+ * @param props - The value, the name, the panel and the props of a menu root.
1060
+ * @returns The menu root inside the value's provider.
1061
+ */
1062
+ declare function Menu({ value, ...props }: MenuProps): ReactElement;
1063
+ //#endregion
1064
+ //#region src/menubar/root.d.ts
1065
+ /**
1066
+ * Renders the `div` that measures the row and provides the recipe's size and palette.
1067
+ */
1068
+ declare const Framed$5: import("@stealthscale/theme").StyledComponent<"div", {
1069
+ readonly palette?: "accent" | "error" | "info" | "neutral" | "primary" | "secondary" | "success" | "warning" | undefined;
1070
+ readonly size?: "lg" | "md" | "sm" | undefined;
1071
+ }>;
1072
+ /**
1073
+ * Describes the props of the root: the bar's name, value, direction, loop and fold, the menus'
1074
+ * variants, and the props of a `div`.
1075
+ */
1076
+ interface RootProps$5 extends Omit<MenuVariants, "inset" | "size">, Omit<ComponentProps<typeof Framed$5>, "defaultValue" | "dir" | "value"> {
1077
+ /**
1078
+ * Name of the bar, which a screen reader announces on reaching it.
1079
+ */
1080
+ readonly "aria-label": string;
1081
+ /**
1082
+ * Menus of the bar, each a `Menubar.Menu`.
1083
+ */
1084
+ readonly children?: ReactNode | undefined;
1085
+ /**
1086
+ * Value of the menu open at mount.
1087
+ */
1088
+ readonly defaultValue?: string | undefined;
1089
+ /**
1090
+ * Writing direction of the bar and its menus. In `rtl` the bar runs from the right, the arrows
1091
+ * along it swap, and a submenu opens to the left.
1092
+ */
1093
+ readonly dir?: "ltr" | "rtl" | undefined;
1094
+ /**
1095
+ * Words of the trigger a crowded bar folds into. Defaults to `Menu`.
1096
+ */
1097
+ readonly fold?: string | undefined;
1098
+ /**
1099
+ * Glyph before the fold trigger's words.
1100
+ */
1101
+ readonly foldIcon?: ReactNode | undefined;
1102
+ /**
1103
+ * Glyph after the words of a row of the folded menu that opens a menu of the bar.
1104
+ */
1105
+ readonly foldIndicator?: ReactNode | undefined;
1106
+ /**
1107
+ * Whether a step past one end of the bar continues at the other. Defaults to true.
1108
+ */
1109
+ readonly loop?: boolean | undefined;
1110
+ /**
1111
+ * Runs when another menu opens or every menu closes.
1112
+ */
1113
+ readonly onValueChange?: ((details: ValueChangeDetails) => void) | undefined;
1114
+ /**
1115
+ * Value of the open menu, where the caller keeps it. An empty string closes every menu.
1116
+ */
1117
+ readonly value?: string | undefined;
1118
+ }
1119
+ /**
1120
+ * Renders the root, the bar and the fold trigger, and provides the bar to its menus.
1121
+ *
1122
+ * @param props - The bar's name, value, direction, loop and fold, the menus' variants, and the
1123
+ * props of a `div`.
1124
+ * @returns The `div` element inside the bar's provider.
1125
+ */
1126
+ declare function Root$5({ "aria-label": label, children, defaultValue, dir, fold, foldIcon, foldIndicator, highlight, loop, onValueChange, palette, size, value, variant, ...rest }: RootProps$5): ReactElement;
1127
+ //#endregion
1128
+ //#region src/menubar/trigger.d.ts
1129
+ /**
1130
+ * Describes the props of a name: its words.
1131
+ */
1132
+ interface TriggerProps$5 {
1133
+ /**
1134
+ * Words of the name, after a leading icon where it has one.
1135
+ */
1136
+ readonly children?: ReactNode | undefined;
1137
+ }
1138
+ /**
1139
+ * Renders the name as the bar's item, or as the folded bar's submenu row.
1140
+ *
1141
+ * @param props - The words.
1142
+ * @returns The `button` element.
1143
+ */
1144
+ declare function Trigger$5({ children }: TriggerProps$5): ReactElement;
1145
+ declare namespace index_d_exports$5 {
1146
+ export { Content$5 as Content, ContentProps$5 as ContentProps, Menu, MenuProps, Root$5 as Root, RootProps$5 as RootProps, Trigger$5 as Trigger, TriggerProps$5 as TriggerProps, ValueChangeDetails };
1147
+ }
1148
+ //#endregion
1149
+ //#region src/popover/anchor.d.ts
1150
+ /**
1151
+ * Renders the `div` with the popover's anchor class.
1152
+ */
1153
+ declare const Drawn$14: import("@stealthscale/theme").StyledComponent<"div", {}>;
1154
+ /**
1155
+ * Describes the props of the anchor: the props of a `div`.
1156
+ */
1157
+ type AnchorProps = ComponentProps<typeof Drawn$14>;
1158
+ /**
1159
+ * Renders the anchor with the machine's anchor props merged over the caller's.
1160
+ *
1161
+ * @param props - The props of a `div`.
1162
+ * @returns The `div` element.
1163
+ */
1164
+ declare function Anchor(props: AnchorProps): ReactElement;
1165
+ //#endregion
1166
+ //#region src/popover/arrow-tip.d.ts
1167
+ /**
1168
+ * Renders the `div` with the popover's arrow tip class.
1169
+ */
1170
+ declare const Drawn$13: import("@stealthscale/theme").StyledComponent<"div", {}>;
1171
+ /**
1172
+ * Describes the props of the arrow tip: the props of a `div`.
1173
+ */
1174
+ type ArrowTipProps$2 = ComponentProps<typeof Drawn$13>;
1175
+ /**
1176
+ * Renders the arrow tip with the machine's arrow tip props merged over the caller's.
1177
+ *
1178
+ * @param props - The props of a `div`.
1179
+ * @returns The `div` element.
1180
+ */
1181
+ declare function ArrowTip$2(props: ArrowTipProps$2): ReactElement;
1182
+ //#endregion
1183
+ //#region src/popover/arrow.d.ts
1184
+ /**
1185
+ * Renders the `div` with the popover's arrow class.
1186
+ */
1187
+ declare const Drawn$12: import("@stealthscale/theme").StyledComponent<"div", {}>;
1188
+ /**
1189
+ * Describes the props of the arrow: the props of a `div`.
1190
+ */
1191
+ type ArrowProps$2 = ComponentProps<typeof Drawn$12>;
1192
+ /**
1193
+ * Renders the arrow with the machine's arrow props merged over the caller's.
1194
+ *
1195
+ * @param props - The props of a `div`.
1196
+ * @returns The `div` element.
1197
+ */
1198
+ declare function Arrow$2(props: ArrowProps$2): ReactElement;
1199
+ //#endregion
1200
+ //#region src/popover/close-trigger.d.ts
1201
+ /**
1202
+ * Renders the `button` with the popover's close trigger class.
1203
+ */
1204
+ declare const Drawn$11: import("@stealthscale/theme").StyledComponent<"button", {}>;
1205
+ /**
1206
+ * Describes the props of the close trigger: the props of a `button`.
1207
+ */
1208
+ type CloseTriggerProps$1 = ComponentProps<typeof Drawn$11>;
1209
+ /**
1210
+ * Renders the close trigger with the machine's close trigger props merged over the caller's.
1211
+ *
1212
+ * @param props - The props of a `button`.
1213
+ * @returns The `button` element.
1214
+ */
1215
+ declare function CloseTrigger$1(props: CloseTriggerProps$1): ReactElement;
1216
+ //#endregion
1217
+ //#region src/popover/content.d.ts
1218
+ /**
1219
+ * Renders the `div` with the popover's content class.
1220
+ */
1221
+ declare const Drawn$10: import("@stealthscale/theme").StyledComponent<"div", {}>;
1222
+ /**
1223
+ * Describes the props of the content: the props of a `div`, without `ref`, which the presence
1224
+ * takes.
1225
+ */
1226
+ type ContentProps$4 = Omit<ComponentProps<typeof Drawn$10>, "ref">;
1227
+ /**
1228
+ * Renders the panel with the machine's content props, the panel's names and the presence props
1229
+ * merged over the caller's.
1230
+ *
1231
+ * @param props - The props of a `div`.
1232
+ * @returns The `div` element.
1233
+ */
1234
+ declare function Content$4(props: ContentProps$4): ReactElement;
1235
+ //#endregion
1236
+ //#region src/popover/description.d.ts
1237
+ /**
1238
+ * Renders the `p` with the popover's description class.
1239
+ */
1240
+ declare const Drawn$9: import("@stealthscale/theme").StyledComponent<"p", {}>;
1241
+ /**
1242
+ * Describes the props of the description: the props of a `p`.
1243
+ */
1244
+ type DescriptionProps$1 = ComponentProps<typeof Drawn$9>;
1245
+ /**
1246
+ * Renders the description with the machine's description props merged over the caller's, and
1247
+ * reports it to the root.
1248
+ *
1249
+ * @param props - The props of a `p`.
1250
+ * @returns The `p` element.
1251
+ */
1252
+ declare function Description$1(props: DescriptionProps$1): ReactElement;
1253
+ //#endregion
1254
+ //#region src/popover/indicator.d.ts
1255
+ /**
1256
+ * Renders the `span` with the popover's indicator class.
1257
+ */
1258
+ declare const Drawn$8: import("@stealthscale/theme").StyledComponent<"span", {}>;
1259
+ /**
1260
+ * Describes the props of the indicator: the props of a `span`.
1261
+ */
1262
+ type IndicatorProps$2 = ComponentProps<typeof Drawn$8>;
1263
+ /**
1264
+ * Renders the indicator, hidden from assistive technology, with the machine's indicator props.
1265
+ *
1266
+ * @param props - The props of a `span`.
1267
+ * @returns The `span` element.
1268
+ */
1269
+ declare function Indicator$2(props: IndicatorProps$2): ReactElement;
1270
+ //#endregion
1271
+ //#region src/popover/positioner.d.ts
1272
+ /**
1273
+ * Renders the `div` with the popover's positioner class.
1274
+ */
1275
+ declare const Drawn$7: import("@stealthscale/theme").StyledComponent<"div", {}>;
1276
+ /**
1277
+ * Describes the props of the positioner: the props of a `div`.
1278
+ */
1279
+ type PositionerProps$2 = ComponentProps<typeof Drawn$7>;
1280
+ /**
1281
+ * Renders the positioner with the machine's positioner props merged over the caller's.
1282
+ *
1283
+ * @param props - The props of a `div`.
1284
+ * @returns The `div` element, or nothing while the panel is out of the document.
1285
+ */
1286
+ declare function Positioner$2(props: PositionerProps$2): null | ReactElement;
1287
+ //#endregion
1288
+ //#region src/popover/machine.d.ts
1289
+ /**
1290
+ * Describes the machine settings a caller can pass to the root, all optional.
1291
+ *
1292
+ * @remarks
1293
+ * `translations` is omitted, because a component's words are props. The close trigger takes its
1294
+ * accessible name as `aria-label` on `Popover.CloseTrigger`.
1295
+ */
1296
+ type PopoverOptions = Omit<Partial<popover.Props>, "translations">;
1297
+ //#endregion
1298
+ //#region src/popover/root.d.ts
1299
+ /**
1300
+ * Renders the `div` that provides the recipe's variants.
1301
+ */
1302
+ declare const Framed$4: import("@stealthscale/theme").StyledComponent<"div", {
1303
+ readonly size?: "lg" | "md" | "sm" | "xl" | "xs" | undefined;
1304
+ readonly variant?: "elevated" | "glass" | "surface" | undefined;
1305
+ }>;
1306
+ /**
1307
+ * Describes the props of the root: the machine's options, the panel's presence, the recipe's
1308
+ * variants and the props of a `div`.
1309
+ *
1310
+ * @remarks
1311
+ * The element's `id` and `dir` are left out, because the machine takes both. It derives every
1312
+ * part's id from `id`, and reads `dir` for the placement.
1313
+ */
1314
+ interface RootProps$4 extends Omit<ComponentProps<typeof Framed$4>, "dir" | "id">, OverlayPresence, PopoverOptions {}
1315
+ /**
1316
+ * Renders the root and provides the machine's api and the panel's presence to the parts.
1317
+ *
1318
+ * @param props - The machine's options, the panel's presence, the recipe's variants and the props
1319
+ * of a `div`.
1320
+ * @returns The `div` element inside the providers.
1321
+ */
1322
+ declare function Root$4({ lazyMount, onExitComplete, skipAnimationOnMount, unmountOnExit, ...props }: RootProps$4): ReactElement;
1323
+ //#endregion
1324
+ //#region src/popover/title.d.ts
167
1325
  /**
168
- * Draws the mark at the size the root states.
1326
+ * Renders the `h2` with the popover's title class.
169
1327
  */
170
- declare const Marked$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
1328
+ declare const Drawn$6: import("@stealthscale/theme").StyledComponent<"h2", {}>;
171
1329
  /**
172
- * Describes what the mark takes.
1330
+ * Describes the props of the title: the props of an `h2`.
173
1331
  */
174
- type IndicatorProps$2 = ComponentProps<typeof Marked$1>;
1332
+ type TitleProps$1 = ComponentProps<typeof Drawn$6>;
175
1333
  /**
176
- * Says whether the menu is open.
1334
+ * Renders the title with the machine's title props merged over the caller's, and reports it to
1335
+ * the root.
177
1336
  *
178
- * @param props - Everything a styled div takes.
179
- * @returns The mark, carrying the open state.
1337
+ * @param props - The props of an `h2`.
1338
+ * @returns The heading element.
180
1339
  */
181
- declare function Indicator$2(props: IndicatorProps$2): ReactElement;
1340
+ declare function Title$1(props: TitleProps$1): ReactElement;
182
1341
  //#endregion
183
- //#region src/menu/item-group-label.d.ts
1342
+ //#region src/popover/trigger.d.ts
184
1343
  /**
185
- * Draws the heading at the size the root states.
1344
+ * Renders the `button` with the popover's trigger class.
186
1345
  */
187
- declare const Titled: import("@stealthscale/theme").StyledComponent<"div", {}>;
1346
+ declare const Drawn$5: import("@stealthscale/theme").StyledComponent<"button", {}>;
188
1347
  /**
189
- * Describes what the heading takes.
1348
+ * Describes the props of the trigger: the props of a `button`.
190
1349
  */
191
- interface ItemGroupLabelProps extends ComponentProps<typeof Titled> {
192
- /**
193
- * Ties the heading to the set it names.
194
- */
195
- readonly value: string;
196
- }
1350
+ type TriggerProps$4 = ComponentProps<typeof Drawn$5>;
197
1351
  /**
198
- * Says what the rows below it have in common.
1352
+ * Renders the trigger with the machine's trigger props merged over the caller's.
199
1353
  *
200
- * @param props - The name the set shares, beside everything a styled div takes.
201
- * @returns The heading, carrying what the machine writes onto it.
1354
+ * @param props - The props of a `button`.
1355
+ * @returns The `button` element.
202
1356
  */
203
- declare function ItemGroupLabel({ value, ...rest }: ItemGroupLabelProps): ReactElement;
1357
+ declare function Trigger$4(props: TriggerProps$4): ReactElement;
1358
+ declare namespace index_d_exports$6 {
1359
+ export { Anchor, AnchorProps, Arrow$2 as Arrow, ArrowProps$2 as ArrowProps, ArrowTip$2 as ArrowTip, ArrowTipProps$2 as ArrowTipProps, CloseTrigger$1 as CloseTrigger, CloseTriggerProps$1 as CloseTriggerProps, Content$4 as Content, ContentProps$4 as ContentProps, Description$1 as Description, DescriptionProps$1 as DescriptionProps, Indicator$2 as Indicator, IndicatorProps$2 as IndicatorProps, Positioner$2 as Positioner, PositionerProps$2 as PositionerProps, Root$4 as Root, RootProps$4 as RootProps, Title$1 as Title, TitleProps$1 as TitleProps, Trigger$4 as Trigger, TriggerProps$4 as TriggerProps };
1360
+ }
204
1361
  //#endregion
205
- //#region src/menu/item-group.d.ts
1362
+ //#region src/steps/completed-content.d.ts
206
1363
  /**
207
- * Draws the set at the size the root states.
1364
+ * Renders the `div` with the steps' content class.
208
1365
  */
209
- declare const Grouped: import("@stealthscale/theme").StyledComponent<"div", {}>;
1366
+ declare const Shown$2: import("@stealthscale/theme").StyledComponent<"div", {}>;
210
1367
  /**
211
- * Describes what a set takes.
1368
+ * Describes the props of the completed content: the props of a `div`.
212
1369
  */
213
- interface ItemGroupProps extends ComponentProps<typeof Grouped> {
214
- /**
215
- * Ties the set to the label that names it.
216
- */
217
- readonly value: string;
218
- }
1370
+ type CompletedContentProps = ComponentProps<typeof Shown$2>;
219
1371
  /**
220
- * Groups the rows that belong together.
1372
+ * Renders the completed content with the machine's content props for the step after the last,
1373
+ * less its tab semantics, merged over the caller's.
221
1374
  *
222
- * @param props - The name the label shares, beside everything a styled div takes.
223
- * @returns The set, carrying what the machine writes onto it.
1375
+ * @param props - The props of a `div`.
1376
+ * @returns The `div` element.
224
1377
  */
225
- declare function ItemGroup({ value, ...rest }: ItemGroupProps): ReactElement;
1378
+ declare function CompletedContent(props: CompletedContentProps): ReactElement;
226
1379
  //#endregion
227
- //#region src/menu/item-indicator.d.ts
1380
+ //#region src/steps/content.d.ts
228
1381
  /**
229
- * Draws the mark at the size the root states.
1382
+ * Renders the `div` with the steps' content class.
230
1383
  */
231
- declare const Marked: import("@stealthscale/theme").StyledComponent<"span", {}>;
1384
+ declare const Shown$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
232
1385
  /**
233
- * Describes what the mark takes.
1386
+ * Describes the props of the content: the index of its step and the props of a `div`.
234
1387
  */
235
- type ItemIndicatorProps = ComponentProps<typeof Marked>;
1388
+ interface ContentProps$3 extends ComponentProps<typeof Shown$1> {
1389
+ /**
1390
+ * Index of the step the content belongs to, from zero.
1391
+ */
1392
+ readonly index: number;
1393
+ }
236
1394
  /**
237
- * Says the row is on.
1395
+ * Renders the content with the machine's content props, less its tab semantics, merged over the
1396
+ * caller's.
238
1397
  *
239
- * @param props - Everything a styled span takes.
240
- * @returns The mark, carrying the row's state.
1398
+ * @param props - The step's index and the props of a `div`.
1399
+ * @returns The `div` element.
241
1400
  */
242
- declare function ItemIndicator(props: ItemIndicatorProps): ReactElement;
1401
+ declare function Content$3({ index, ...rest }: ContentProps$3): ReactElement;
243
1402
  //#endregion
244
- //#region src/menu/item-text.d.ts
1403
+ //#region src/steps/description.d.ts
245
1404
  /**
246
- * Draws the words at the size the root states.
1405
+ * Renders the `span` with the steps' description class.
247
1406
  */
248
- declare const Worded: import("@stealthscale/theme").StyledComponent<"span", {}>;
1407
+ declare const Description: import("@stealthscale/theme").StyledComponent<"span", {}>;
249
1408
  /**
250
- * Describes what the words take.
1409
+ * Describes the props of the description: the props of a `span`.
251
1410
  */
252
- type ItemTextProps = ComponentProps<typeof Worded>;
1411
+ type DescriptionProps = ComponentProps<typeof Description>;
1412
+ //#endregion
1413
+ //#region src/steps/indicator.d.ts
253
1414
  /**
254
- * Says what the row offers.
255
- *
256
- * @param props - Everything a styled span takes.
257
- * @returns The words, carrying the row's state.
1415
+ * Renders the `span` with the steps' indicator class.
258
1416
  */
259
- declare function ItemText(props: ItemTextProps): ReactElement;
260
- //#endregion
261
- //#region src/menu/tone.d.ts
1417
+ declare const Disc: import("@stealthscale/theme").StyledComponent<"span", {}>;
262
1418
  /**
263
- * States what a row of a menu is for, which decides the ink it is drawn in.
264
- *
265
- * @remarks
266
- * This is a prop rather than an axis of the recipe, because a slot recipe resolves its variants
267
- * once at the root and a menu draws one row in a different ink from the rest. The row writes it
268
- * as a data attribute and the recipe's base styles it, which is the hook a theme extends to add
269
- * another.
1419
+ * Describes the props of the indicator: the props of a `span`.
270
1420
  */
1421
+ type IndicatorProps$1 = ComponentProps<typeof Disc>;
271
1422
  /**
272
- * Selects what a row is for.
1423
+ * Renders the indicator with the machine's indicator props merged over the caller's.
273
1424
  *
274
- * @remarks
275
- * A row that undoes something is the one case a menu draws differently, and colour is a second
276
- * reading of what its words already say rather than the only one.
1425
+ * @param props - The props of a `span`. Children replace the step's number.
1426
+ * @returns The `span` element.
277
1427
  */
278
- type Tone = "critical";
1428
+ declare function Indicator$1({ children, ...rest }: IndicatorProps$1): ReactElement;
279
1429
  //#endregion
280
- //#region src/menu/item.d.ts
1430
+ //#region src/steps/item.d.ts
281
1431
  /**
282
- * Draws the row at the size the root states.
1432
+ * Renders the `li` with the steps' item class.
283
1433
  */
284
- declare const Chosen$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
1434
+ declare const Held: import("@stealthscale/theme").StyledComponent<"li", {}>;
285
1435
  /**
286
- * Describes what a row takes.
1436
+ * Describes the props of an item: the step's index and the props of an `li`.
287
1437
  */
288
- interface ItemProps extends Omit<ComponentProps<typeof Chosen$1>, "onSelect"> {
289
- /**
290
- * Whether choosing the row closes the menu, which it does unless the row says otherwise.
291
- */
292
- readonly closeOnSelect?: boolean | undefined;
293
- /**
294
- * Whether a reader can choose the row at all.
295
- */
296
- readonly disabled?: boolean | undefined;
297
- /**
298
- * The purpose of the row, which decides the ink it is drawn in.
299
- */
300
- readonly tone?: Tone | undefined;
1438
+ interface ItemProps extends ComponentProps<typeof Held> {
301
1439
  /**
302
- * The value the machine identifies the row by and reports when the reader chooses it.
1440
+ * Index of the step, from zero.
303
1441
  */
304
- readonly value: string;
305
- /**
306
- * The words typeahead matches the row on, where they differ from what it shows.
307
- */
308
- readonly valueText?: string | undefined;
1442
+ readonly index: number;
309
1443
  }
310
1444
  /**
311
- * Offers one thing a reader can choose.
1445
+ * Renders the item with the machine's item props and provides its index to the parts inside it.
312
1446
  *
313
- * @param props - The row's name and purpose, beside everything a styled div takes.
314
- * @returns The row, carrying what the machine writes onto it.
1447
+ * @param props - The step's index and the props of an `li`.
1448
+ * @returns The `li` element.
315
1449
  */
316
- declare function Item({ closeOnSelect, disabled, tone, value, valueText, ...rest }: ItemProps): ReactElement;
1450
+ declare function Item({ index, ...rest }: ItemProps): ReactElement;
317
1451
  //#endregion
318
- //#region src/menu/option-item.d.ts
1452
+ //#region src/steps/list.d.ts
319
1453
  /**
320
- * Draws the row at the size the root states, in the same slot as a plain row.
1454
+ * Renders the `ol` with the steps' list class.
321
1455
  */
322
- declare const Chosen: import("@stealthscale/theme").StyledComponent<"div", {}>;
1456
+ declare const Listed: import("@stealthscale/theme").StyledComponent<"ol", {}>;
323
1457
  /**
324
- * Describes what a row carrying a choice takes.
1458
+ * Describes the props of the list: the props of an `ol` without `ref`.
325
1459
  */
326
- interface OptionItemProps extends Omit<ComponentProps<typeof Chosen>, "onSelect"> {
327
- /**
328
- * Whether the row is on.
329
- */
330
- readonly checked: boolean;
331
- /**
332
- * Whether choosing the row closes the menu, which it does unless the row says otherwise.
333
- */
334
- readonly closeOnSelect?: boolean | undefined;
335
- /**
336
- * Whether a reader can choose the row at all.
337
- */
338
- readonly disabled?: boolean | undefined;
339
- /**
340
- * Tells the caller the reader turned the row on or off.
341
- */
342
- readonly onCheckedChange?: ((checked: boolean) => void) | undefined;
343
- /**
344
- * The purpose of the row, which decides the ink it is drawn in.
345
- */
346
- readonly tone?: Tone | undefined;
347
- /**
348
- * Whether the row stands on its own or is one of a set.
349
- */
350
- readonly type: "checkbox" | "radio";
351
- /**
352
- * The value the machine identifies the row by and reports when the reader chooses it.
353
- */
354
- readonly value: string;
355
- /**
356
- * The words typeahead matches the row on, where they differ from what it shows.
357
- */
358
- readonly valueText?: string | undefined;
359
- }
1460
+ type ListProps$1 = Omit<ComponentProps<typeof Listed>, "ref">;
360
1461
  /**
361
- * Offers one thing a reader can turn on.
1462
+ * Renders the list with the machine's list props, less its tab semantics, and the crowded state
1463
+ * merged over the caller's.
362
1464
  *
363
- * @param props - The choice the row carries, beside everything a styled div takes.
364
- * @returns The row, carrying what the machine writes onto it.
1465
+ * @param props - The props of an `ol`.
1466
+ * @returns The `ol` element.
365
1467
  */
366
- declare function OptionItem({ checked, closeOnSelect, disabled, onCheckedChange, tone, type, value, valueText, ...rest }: OptionItemProps): ReactElement;
1468
+ declare function List$1(props: ListProps$1): ReactElement;
367
1469
  //#endregion
368
- //#region src/menu/positioner.d.ts
1470
+ //#region src/steps/next-trigger.d.ts
369
1471
  /**
370
- * Draws the box at the size the root states.
1472
+ * Renders the `button` with the steps' next trigger class.
371
1473
  */
372
- declare const Placed$2: import("@stealthscale/theme").StyledComponent<"div", {}>;
1474
+ declare const Pressed$4: import("@stealthscale/theme").StyledComponent<"button", {}>;
373
1475
  /**
374
- * Describes what the box takes.
1476
+ * Describes the props of the next trigger: the props of a `button`.
375
1477
  */
376
- type PositionerProps$2 = ComponentProps<typeof Placed$2>;
1478
+ type NextTriggerProps = ComponentProps<typeof Pressed$4>;
377
1479
  /**
378
- * Places the panel against the control.
1480
+ * Renders the next trigger with the machine's props, `aria-disabled` in place of `disabled`, merged
1481
+ * over the caller's.
379
1482
  *
380
- * @param props - Everything a styled div takes.
381
- * @returns The box, carrying the position the machine measured.
1483
+ * @param props - The props of a `button`.
1484
+ * @returns The `button` element.
382
1485
  */
383
- declare function Positioner$2(props: PositionerProps$2): ReactElement;
1486
+ declare function NextTrigger(props: NextTriggerProps): ReactElement;
384
1487
  //#endregion
385
- //#region src/menu/machine.d.ts
1488
+ //#region src/steps/prev-trigger.d.ts
386
1489
  /**
387
- * Describes what a caller sets on the machine, every setting of it optional.
1490
+ * Renders the `button` with the steps' previous trigger class.
388
1491
  */
389
- type MenuOptions = Partial<menu.Props>;
390
- //#endregion
391
- //#region src/menu/root.d.ts
1492
+ declare const Pressed$3: import("@stealthscale/theme").StyledComponent<"button", {}>;
392
1493
  /**
393
- * Draws the element that sets the variants every part below it reads, and no box.
1494
+ * Describes the props of the previous trigger: the props of a `button`.
394
1495
  */
395
- declare const Framed$3: import("@stealthscale/theme").StyledComponent<"div", {
396
- readonly highlight?: import("@stealthscale/theme/authoring").Highlight;
397
- readonly inset?: boolean;
398
- readonly size?: import("@stealthscale/theme/authoring").Scale;
399
- readonly variant?: "elevated" | "glass" | "surface";
400
- }>;
1496
+ type PrevTriggerProps = ComponentProps<typeof Pressed$3>;
401
1497
  /**
402
- * Describes what the root takes: the machine's settings, the recipe's variants, and the element's.
1498
+ * Renders the previous trigger with the machine's props, `aria-disabled` in place of `disabled`,
1499
+ * merged over the caller's.
403
1500
  *
404
- * @remarks
405
- * The element's own `id` and `dir` are left out, because the machine states both. It names every
406
- * part from the id, and it reads the direction to decide which side a submenu opens on. The
407
- * element's `onSelect` is left out too: a div reports a text selection under that name, and the
408
- * machine reports the row the reader chose.
1501
+ * @param props - The props of a `button`.
1502
+ * @returns The `button` element.
409
1503
  */
410
- interface RootProps$3 extends MenuOptions, Omit<ComponentProps<typeof Framed$3>, "dir" | "id" | "onSelect"> {}
1504
+ declare function PrevTrigger(props: PrevTriggerProps): ReactElement;
1505
+ //#endregion
1506
+ //#region src/steps/machine.d.ts
411
1507
  /**
412
- * Opens a list of things a reader chooses from, beside the control that opens it.
413
- *
414
- * @param props - The machine's settings, the recipe's variants and the element's props together.
415
- * @returns The parts, under the running machine.
1508
+ * Describes the machine settings a caller can pass to the root, all optional.
416
1509
  */
417
- declare function Root$3(props: RootProps$3): ReactElement;
1510
+ type StepsOptions = Partial<steps.Props>;
418
1511
  //#endregion
419
- //#region src/menu/separator.d.ts
1512
+ //#region src/steps/root.d.ts
420
1513
  /**
421
- * Draws the line at the size the root states.
1514
+ * Renders the `div` that provides the recipe's variants.
422
1515
  */
423
- declare const Ruled: import("@stealthscale/theme").StyledComponent<"div", {}>;
1516
+ declare const Framed$3: import("@stealthscale/theme").StyledComponent<"div", {
1517
+ readonly labelPlacement?: "below" | "beside" | undefined;
1518
+ readonly palette?: "accent" | "error" | "info" | "neutral" | "primary" | "secondary" | "success" | "warning" | undefined;
1519
+ readonly size?: "lg" | "md" | "sm" | undefined;
1520
+ readonly variant?: "solid" | "subtle" | undefined;
1521
+ }>;
424
1522
  /**
425
- * Describes what the line takes.
1523
+ * Describes the props of the root: the machine's options, the recipe's variants and the props of a
1524
+ * `div`.
1525
+ *
1526
+ * @remarks
1527
+ * The element's `dir` and `id` are left out, because the machine takes both.
426
1528
  */
427
- type SeparatorProps = ComponentProps<typeof Ruled>;
1529
+ interface RootProps$3 extends Omit<ComponentProps<typeof Framed$3>, "dir" | "id">, StepsOptions {}
428
1530
  /**
429
- * Breaks the rows into sets.
1531
+ * Renders the root and provides the running machine to the parts.
430
1532
  *
431
- * @param props - Everything a styled div takes.
432
- * @returns The line, carrying what the machine writes onto it.
1533
+ * @param props - The machine's options, the recipe's variants and the props of a `div`.
1534
+ * @returns The `div` element inside the machine's provider.
433
1535
  */
434
- declare function Separator(props: SeparatorProps): ReactElement;
1536
+ declare function Root$3(props: RootProps$3): ReactElement;
435
1537
  //#endregion
436
- //#region src/menu/trigger-item.d.ts
1538
+ //#region src/steps/separator.d.ts
437
1539
  /**
438
- * Draws the row at the size the root states.
1540
+ * Renders the `span` with the steps' separator class.
439
1541
  */
440
- declare const Pressed$3: import("@stealthscale/theme").StyledComponent<"button", {}>;
1542
+ declare const Rule: import("@stealthscale/theme").StyledComponent<"span", {}>;
441
1543
  /**
442
- * Describes what the row takes.
1544
+ * Describes the props of the separator: the props of a `span`.
443
1545
  */
444
- type TriggerItemProps = ComponentProps<typeof Pressed$3>;
1546
+ type SeparatorProps = ComponentProps<typeof Rule>;
445
1547
  /**
446
- * Opens a submenu from a row of the menu above it.
1548
+ * Renders the separator with the machine's separator props merged over the caller's, or nothing
1549
+ * after the last step.
447
1550
  *
448
- * @param props - Everything a styled button takes.
449
- * @returns The row, carrying what both machines write onto it.
450
- * @throws {@link Error} Where the menu it belongs to opens from no other menu.
1551
+ * @param props - The props of a `span`.
1552
+ * @returns The `span` element, or `null` for the last step.
451
1553
  */
452
- declare function TriggerItem(props: TriggerItemProps): ReactElement;
1554
+ declare function Separator(props: SeparatorProps): null | ReactElement;
453
1555
  //#endregion
454
- //#region src/menu/trigger.d.ts
455
- /**
456
- * Draws the control at the size the root states.
457
- */
458
- declare const Pressed$2: import("@stealthscale/theme").StyledComponent<"button", {}>;
1556
+ //#region src/steps/status.d.ts
459
1557
  /**
460
- * Describes what the control takes.
1558
+ * Describes the props of the status: the node for each state.
461
1559
  */
462
- interface TriggerProps$3 extends ComponentProps<typeof Pressed$2> {
1560
+ interface StatusProps {
463
1561
  /**
464
- * The value that identifies this control, for a menu opened from more than one.
1562
+ * Node a completed step shows, such as a check.
465
1563
  */
466
- readonly value?: string | undefined;
1564
+ readonly complete?: ReactNode;
1565
+ /**
1566
+ * Node the current step shows.
1567
+ */
1568
+ readonly current?: ReactNode;
1569
+ /**
1570
+ * Node a later step shows.
1571
+ */
1572
+ readonly incomplete?: ReactNode;
467
1573
  }
468
1574
  /**
469
- * Opens the menu.
1575
+ * Renders the prop for the step's state, or the step's number when that prop is absent.
470
1576
  *
471
- * @param props - The name of this control, and everything a styled button takes.
472
- * @returns The control, carrying what the machine writes onto it.
1577
+ * @param props - The node for each state.
1578
+ * @returns The chosen node, or the step's number.
473
1579
  */
474
- declare function Trigger$3({ value, ...rest }: TriggerProps$3): ReactElement;
475
- declare namespace index_d_exports$1 {
476
- export { Arrow$2 as Arrow, ArrowProps$2 as ArrowProps, ArrowTip$2 as ArrowTip, ArrowTipProps$2 as ArrowTipProps, Content$3 as Content, ContentProps$3 as ContentProps, ContextTrigger, ContextTriggerProps, Indicator$2 as Indicator, IndicatorProps$2 as IndicatorProps, Item, ItemGroup, ItemGroupLabel, ItemGroupLabelProps, ItemGroupProps, ItemIndicator, ItemIndicatorProps, ItemProps, ItemText, ItemTextProps, OptionItem, OptionItemProps, Positioner$2 as Positioner, PositionerProps$2 as PositionerProps, Root$3 as Root, RootProps$3 as RootProps, Separator, SeparatorProps, Tone, Trigger$3 as Trigger, TriggerItem, TriggerItemProps, TriggerProps$3 as TriggerProps };
477
- }
1580
+ declare function Status({ complete, current, incomplete }: StatusProps): ReactNode;
478
1581
  //#endregion
479
- //#region src/popover/anchor.d.ts
1582
+ //#region src/steps/title.d.ts
480
1583
  /**
481
- * Draws the part at the size the root states.
1584
+ * Renders the `span` with the steps' title class.
482
1585
  */
483
- declare const Drawn$9: import("@stealthscale/theme").StyledComponent<"div", {}>;
1586
+ declare const Named: import("@stealthscale/theme").StyledComponent<"span", {}>;
484
1587
  /**
485
- * Describes what the part takes.
1588
+ * Describes the props of the title: the words for the two announced states and the props of a
1589
+ * `span`.
486
1590
  */
487
- type AnchorProps = ComponentProps<typeof Drawn$9>;
1591
+ interface TitleProps extends ComponentProps<typeof Named> {
1592
+ /**
1593
+ * Hidden words before the name of a completed step, "Completed: " unless the caller passes
1594
+ * others.
1595
+ */
1596
+ readonly completedLabel?: string | undefined;
1597
+ /**
1598
+ * Hidden words before the name of the current step, "Current: " unless the caller passes others.
1599
+ */
1600
+ readonly currentLabel?: string | undefined;
1601
+ }
488
1602
  /**
489
- * Marks what the panel is positioned against, where that is not the control.
1603
+ * Renders the title, with the hidden words for the step's state before the caller's children.
490
1604
  *
491
- * @param props - Everything a styled div takes.
492
- * @returns The part, carrying what the machine writes onto it.
1605
+ * @param props - The words for each state and the props of a `span`.
1606
+ * @returns The `span` element.
493
1607
  */
494
- declare function Anchor(props: AnchorProps): ReactElement;
1608
+ declare function Title({ children, completedLabel, currentLabel, ...rest }: TitleProps): ReactElement;
495
1609
  //#endregion
496
- //#region src/popover/arrow-tip.d.ts
1610
+ //#region src/steps/trigger.d.ts
497
1611
  /**
498
- * Draws the part at the size the root states.
1612
+ * Renders the `button` with the steps' trigger class.
499
1613
  */
500
- declare const Drawn$8: import("@stealthscale/theme").StyledComponent<"div", {}>;
1614
+ declare const Pressed$2: import("@stealthscale/theme").StyledComponent<"button", {}>;
501
1615
  /**
502
- * Describes what the part takes.
1616
+ * Describes the props of the trigger: the props of a `button`.
503
1617
  */
504
- type ArrowTipProps$1 = ComponentProps<typeof Drawn$8>;
1618
+ type TriggerProps$3 = ComponentProps<typeof Pressed$2>;
505
1619
  /**
506
- * Draws the turned square inside the point.
1620
+ * Renders the trigger with the machine's trigger props, less its tab semantics, merged over the
1621
+ * caller's.
507
1622
  *
508
- * @param props - Everything a styled div takes.
509
- * @returns The part, carrying what the machine writes onto it.
1623
+ * @param props - The props of a `button`.
1624
+ * @returns The `button` element.
510
1625
  */
511
- declare function ArrowTip$1(props: ArrowTipProps$1): ReactElement;
1626
+ declare function Trigger$3(props: TriggerProps$3): ReactElement;
1627
+ declare namespace index_d_exports$7 {
1628
+ export { CompletedContent, CompletedContentProps, Content$3 as Content, ContentProps$3 as ContentProps, Description, DescriptionProps, Indicator$1 as Indicator, IndicatorProps$1 as IndicatorProps, Item, ItemProps, List$1 as List, ListProps$1 as ListProps, NextTrigger, NextTriggerProps, PrevTrigger, PrevTriggerProps, Root$3 as Root, RootProps$3 as RootProps, Separator, SeparatorProps, Status, StatusProps, Title, TitleProps, Trigger$3 as Trigger, TriggerProps$3 as TriggerProps };
1629
+ }
512
1630
  //#endregion
513
- //#region src/popover/arrow.d.ts
1631
+ //#region src/tabs/close-trigger.d.ts
514
1632
  /**
515
- * Draws the part at the size the root states.
1633
+ * Renders the `span` with the tabs' close trigger class.
516
1634
  */
517
- declare const Drawn$7: import("@stealthscale/theme").StyledComponent<"div", {}>;
1635
+ declare const Glyph: import("@stealthscale/theme").StyledComponent<"span", {}>;
518
1636
  /**
519
- * Describes what the part takes.
1637
+ * Describes the props of the close trigger: its title and the props of a `span`.
520
1638
  */
521
- type ArrowProps$1 = ComponentProps<typeof Drawn$7>;
1639
+ interface CloseTriggerProps extends ComponentProps<typeof Glyph> {
1640
+ /**
1641
+ * Title a pointer shows over the control. Defaults to "Close".
1642
+ */
1643
+ readonly label?: string | undefined;
1644
+ }
522
1645
  /**
523
- * Draws the point that ties the panel to its control.
1646
+ * Renders the close trigger inside a tab.
524
1647
  *
525
- * @param props - Everything a styled div takes.
526
- * @returns The part, carrying what the machine writes onto it.
1648
+ * @param props - The title and the props of a `span`.
1649
+ * @returns The `span` element.
527
1650
  */
528
- declare function Arrow$1(props: ArrowProps$1): ReactElement;
1651
+ declare function CloseTrigger({ label, ...rest }: CloseTriggerProps): ReactElement;
529
1652
  //#endregion
530
- //#region src/popover/close-trigger.d.ts
531
- /**
532
- * Draws the part at the size the root states.
533
- */
534
- declare const Drawn$6: import("@stealthscale/theme").StyledComponent<"button", {}>;
535
- /**
536
- * Describes what the part takes.
537
- */
538
- type CloseTriggerProps = ComponentProps<typeof Drawn$6>;
1653
+ //#region src/tabs/machine.d.ts
539
1654
  /**
540
- * Draws the control that shuts the panel.
1655
+ * Describes the machine settings a caller can pass to the root, all optional.
541
1656
  *
542
- * @param props - Everything a styled button takes.
543
- * @returns The part, carrying what the machine writes onto it.
1657
+ * @remarks
1658
+ * `translations` is omitted, because a component's words are props. The list takes its
1659
+ * accessible name as `aria-label` on `Tabs.List`.
544
1660
  */
545
- declare function CloseTrigger(props: CloseTriggerProps): ReactElement;
1661
+ type TabsOptions = Omit<Partial<tabs.Props>, "translations">;
546
1662
  //#endregion
547
- //#region src/popover/content.d.ts
548
- /**
549
- * Draws the part at the size the root states.
550
- */
551
- declare const Drawn$5: import("@stealthscale/theme").StyledComponent<"div", {}>;
1663
+ //#region src/tabs/closing.d.ts
552
1664
  /**
553
- * Describes what the part takes.
1665
+ * Describes a close: the value of the tab to remove.
554
1666
  */
555
- type ContentProps$2 = ComponentProps<typeof Drawn$5>;
1667
+ interface CloseDetails {
1668
+ /**
1669
+ * Value of the closed tab.
1670
+ */
1671
+ readonly value: string;
1672
+ }
556
1673
  /**
557
- * Draws the panel itself.
1674
+ * Returns the value a selection moves to when a tab closes: the tab after the closed one, else
1675
+ * the tab before it, else none.
558
1676
  *
559
- * @param props - Everything a styled div takes.
560
- * @returns The part, carrying what the machine writes onto it.
561
- */
562
- declare function Content$2(props: ContentProps$2): ReactElement;
1677
+ * @remarks
1678
+ * A closed tab that is not selected leaves the selection where it is. A caller that closes tabs
1679
+ * from outside the list, such as from a menu, passes its own values and sets the result.
1680
+ * @param values - The values of the tabs a selection may move to, in the list's order, with the
1681
+ * closed tab among them.
1682
+ * @param selected - The selected value, or null.
1683
+ * @param closed - The value of the tab that closes.
1684
+ * @returns The value to select, or null for no selection.
1685
+ */
1686
+ declare function selectionAfterClose(values: readonly string[], selected: null | string, closed: string): null | string;
563
1687
  //#endregion
564
- //#region src/popover/description.d.ts
1688
+ //#region src/tabs/content.d.ts
565
1689
  /**
566
- * Draws the part at the size the root states.
1690
+ * Renders the `div` with the tabs' content class.
567
1691
  */
568
- declare const Drawn$4: import("@stealthscale/theme").StyledComponent<"p", {}>;
1692
+ declare const Shown: import("@stealthscale/theme").StyledComponent<"div", {}>;
569
1693
  /**
570
- * Describes what the part takes.
1694
+ * Describes the props of a panel: its value and the props of a `div`.
571
1695
  */
572
- type DescriptionProps = ComponentProps<typeof Drawn$4>;
1696
+ interface ContentProps$2 extends ComponentProps<typeof Shown> {
1697
+ /**
1698
+ * Value of the tab that shows the panel.
1699
+ */
1700
+ readonly value: string;
1701
+ }
573
1702
  /**
574
- * Draws the paragraph the panel is described by.
1703
+ * Renders a panel with the machine's content props merged over the caller's.
575
1704
  *
576
- * @param props - Everything a styled p takes.
577
- * @returns The part, carrying what the machine writes onto it.
1705
+ * @param props - The tab's value and the props of a `div`.
1706
+ * @returns The `div` element.
578
1707
  */
579
- declare function Description(props: DescriptionProps): ReactElement;
1708
+ declare function Content$2({ value, ...rest }: ContentProps$2): ReactElement;
580
1709
  //#endregion
581
- //#region src/popover/indicator.d.ts
1710
+ //#region src/tabs/indicator.d.ts
582
1711
  /**
583
- * Draws the part at the size the root states.
1712
+ * Renders the `div` with the tabs' indicator class.
584
1713
  */
585
- declare const Drawn$3: import("@stealthscale/theme").StyledComponent<"span", {}>;
1714
+ declare const Bar: import("@stealthscale/theme").StyledComponent<"div", {}>;
586
1715
  /**
587
- * Describes what the part takes.
1716
+ * Describes the props of the indicator: the props of a `div`.
588
1717
  */
589
- type IndicatorProps$1 = ComponentProps<typeof Drawn$3>;
1718
+ type IndicatorProps = ComponentProps<typeof Bar>;
590
1719
  /**
591
- * Draws the mark that turns as the panel opens.
1720
+ * Renders the indicator, hidden from assistive technology, with the machine's indicator props.
592
1721
  *
593
- * @param props - Everything a styled span takes.
594
- * @returns The part, carrying what the machine writes onto it.
1722
+ * @param props - The props of a `div`.
1723
+ * @returns The `div` element.
595
1724
  */
596
- declare function Indicator$1(props: IndicatorProps$1): ReactElement;
1725
+ declare function Indicator(props: IndicatorProps): ReactElement;
597
1726
  //#endregion
598
- //#region src/popover/positioner.d.ts
1727
+ //#region src/tabs/list.d.ts
599
1728
  /**
600
- * Draws the part at the size the root states.
1729
+ * Renders the `div` with the tabs' list class.
601
1730
  */
602
- declare const Drawn$2: import("@stealthscale/theme").StyledComponent<"div", {}>;
1731
+ declare const Strip: import("@stealthscale/theme").StyledComponent<"div", {}>;
603
1732
  /**
604
- * Describes what the part takes.
1733
+ * Describes the props of the list: the props of a `div`.
605
1734
  */
606
- type PositionerProps$1 = ComponentProps<typeof Drawn$2>;
1735
+ type ListProps = ComponentProps<typeof Strip>;
607
1736
  /**
608
- * Draws the box that holds the panel in place beside its control.
1737
+ * Renders the list with the machine's list props merged over the caller's.
609
1738
  *
610
- * @param props - Everything a styled div takes.
611
- * @returns The part, carrying what the machine writes onto it.
612
- */
613
- declare function Positioner$1(props: PositionerProps$1): ReactElement;
614
- //#endregion
615
- //#region src/popover/machine.d.ts
616
- /**
617
- * Describes what a caller sets on the machine, every setting of it optional.
1739
+ * @param props - The props of a `div`.
1740
+ * @returns The `div` element.
618
1741
  */
619
- type PopoverOptions = Partial<popover.Props>;
1742
+ declare function List(props: ListProps): ReactElement;
620
1743
  //#endregion
621
- //#region src/popover/root.d.ts
1744
+ //#region src/tabs/root.d.ts
622
1745
  /**
623
- * Draws the element that sets the variants every part below it reads, and no box.
1746
+ * Renders the `div` that provides the recipe's variants.
624
1747
  */
625
1748
  declare const Framed$2: import("@stealthscale/theme").StyledComponent<"div", {
626
- readonly size?: "lg" | "md" | "sm" | "xl" | "xs";
627
- readonly variant?: "elevated" | "glass" | "surface";
1749
+ readonly fitted?: boolean | undefined;
1750
+ readonly justify?: import("@stealthscale/theme/authoring").Justify | undefined;
1751
+ readonly palette?: "accent" | "error" | "info" | "neutral" | "primary" | "secondary" | "success" | "warning" | undefined;
1752
+ readonly size?: import("@stealthscale/theme/authoring").Scale | undefined;
1753
+ readonly variant?: "enclosed" | "line" | "plain" | "subtle" | undefined;
628
1754
  }>;
629
1755
  /**
630
- * Describes what the root takes: the machine's settings, the recipe's variants, and the element's.
1756
+ * Describes the props of the root: the machine's options, the close handler, the recipe's
1757
+ * variants and the props of a `div`.
631
1758
  *
632
1759
  * @remarks
633
- * The element's own `id` and `dir` are left out, because the machine states both. It names every
634
- * part from the id, and it reads the direction to decide which side the panel opens on.
1760
+ * The element's `id` and `dir` are left out, because the machine takes both. It derives every
1761
+ * ARIA reference from `id`, and reads `dir` for the arrow keys.
635
1762
  */
636
- interface RootProps$2 extends Omit<ComponentProps<typeof Framed$2>, "dir" | "id">, PopoverOptions {}
1763
+ interface RootProps$2 extends Omit<ComponentProps<typeof Framed$2>, "defaultValue" | "dir" | "id" | "onChange" | "onClose" | "value">, TabsOptions {
1764
+ /**
1765
+ * Called with the value of a closable tab that a person closes, after the selection has moved
1766
+ * off it. The caller removes the tab and its panel.
1767
+ */
1768
+ readonly onClose?: ((details: CloseDetails) => void) | undefined;
1769
+ }
637
1770
  /**
638
- * Opens a panel beside a control.
1771
+ * Renders the root and provides the machine's api and the root's actions to the parts.
639
1772
  *
640
- * @param props - The machine's settings, the recipe's variants and the element's props together.
641
- * @returns The parts, under the running machine.
1773
+ * @param props - The machine's options, the close handler, the recipe's variants and the props of
1774
+ * a `div`.
1775
+ * @returns The `div` element inside the providers.
642
1776
  */
643
- declare function Root$2(props: RootProps$2): ReactElement;
1777
+ declare function Root$2({ onClose, ...props }: RootProps$2): ReactElement;
644
1778
  //#endregion
645
- //#region src/popover/title.d.ts
1779
+ //#region src/tabs/trigger.d.ts
646
1780
  /**
647
- * Draws the part at the size the root states.
1781
+ * Renders the `button` with the tabs' trigger class.
648
1782
  */
649
- declare const Drawn$1: import("@stealthscale/theme").StyledComponent<"h2", {}>;
1783
+ declare const Pressed$1: import("@stealthscale/theme").StyledComponent<"button", {}>;
650
1784
  /**
651
- * Describes what the part takes.
1785
+ * Describes the props of a tab: its value, whether it is disabled, whether it closes and the props
1786
+ * of a `button`.
652
1787
  */
653
- type TitleProps = ComponentProps<typeof Drawn$1>;
1788
+ interface TriggerProps$2 extends ComponentProps<typeof Pressed$1> {
1789
+ /**
1790
+ * Whether a person can close the tab: Delete while it has focus, a middle click, or a press on
1791
+ * its `Tabs.CloseTrigger`. The root's `onClose` receives the tab's value.
1792
+ */
1793
+ readonly closable?: boolean | undefined;
1794
+ /**
1795
+ * Whether the tab is disabled.
1796
+ */
1797
+ readonly disabled?: boolean | undefined;
1798
+ /**
1799
+ * Value of the panel the tab shows.
1800
+ */
1801
+ readonly value: string;
1802
+ }
654
1803
  /**
655
- * Draws the heading the panel is announced by.
1804
+ * Renders a tab with the machine's trigger props merged over the caller's.
656
1805
  *
657
- * @param props - Everything a styled h2 takes.
658
- * @returns The part, carrying what the machine writes onto it.
1806
+ * @param props - The panel's value, the disabled and closable flags and the props of a `button`.
1807
+ * @returns The `button` element.
659
1808
  */
660
- declare function Title(props: TitleProps): ReactElement;
1809
+ declare function Trigger$2({ closable, disabled, value, ...rest }: TriggerProps$2): ReactElement;
1810
+ declare namespace index_d_exports$8 {
1811
+ export { CloseDetails, CloseTrigger, CloseTriggerProps, Content$2 as Content, ContentProps$2 as ContentProps, Indicator, IndicatorProps, List, ListProps, Root$2 as Root, RootProps$2 as RootProps, Trigger$2 as Trigger, TriggerProps$2 as TriggerProps, selectionAfterClose };
1812
+ }
661
1813
  //#endregion
662
- //#region src/popover/trigger.d.ts
1814
+ //#region src/toggle-tip/arrow-tip.d.ts
663
1815
  /**
664
- * Draws the part at the size the root states.
1816
+ * Renders the `div` with the toggle tip's arrow tip class.
665
1817
  */
666
- declare const Drawn: import("@stealthscale/theme").StyledComponent<"button", {}>;
1818
+ declare const Drawn$4: import("@stealthscale/theme").StyledComponent<"div", {}>;
667
1819
  /**
668
- * Describes what the part takes.
1820
+ * Describes the props of the arrow tip: the props of a `div`.
669
1821
  */
670
- type TriggerProps$2 = ComponentProps<typeof Drawn>;
1822
+ type ArrowTipProps$1 = ComponentProps<typeof Drawn$4>;
671
1823
  /**
672
- * Draws the control that opens the panel.
1824
+ * Renders the arrow tip with the machine's arrow tip props merged over the caller's.
673
1825
  *
674
- * @param props - Everything a styled button takes.
675
- * @returns The part, carrying what the machine writes onto it.
1826
+ * @param props - The props of a `div`.
1827
+ * @returns The `div` element.
676
1828
  */
677
- declare function Trigger$2(props: TriggerProps$2): ReactElement;
678
- declare namespace index_d_exports$2 {
679
- export { Anchor, AnchorProps, Arrow$1 as Arrow, ArrowProps$1 as ArrowProps, ArrowTip$1 as ArrowTip, ArrowTipProps$1 as ArrowTipProps, CloseTrigger, CloseTriggerProps, Content$2 as Content, ContentProps$2 as ContentProps, Description, DescriptionProps, Indicator$1 as Indicator, IndicatorProps$1 as IndicatorProps, Positioner$1 as Positioner, PositionerProps$1 as PositionerProps, Root$2 as Root, RootProps$2 as RootProps, Title, TitleProps, Trigger$2 as Trigger, TriggerProps$2 as TriggerProps };
680
- }
1829
+ declare function ArrowTip$1(props: ArrowTipProps$1): ReactElement;
681
1830
  //#endregion
682
- //#region src/tabs/content.d.ts
1831
+ //#region src/toggle-tip/arrow.d.ts
683
1832
  /**
684
- * Draws the panel at the room the root states.
1833
+ * Renders the `div` with the toggle tip's arrow class.
685
1834
  */
686
- declare const Shown: import("@stealthscale/theme").StyledComponent<"div", {}>;
1835
+ declare const Drawn$3: import("@stealthscale/theme").StyledComponent<"div", {}>;
687
1836
  /**
688
- * Describes what a panel takes.
1837
+ * Describes the props of the arrow: the props of a `div`.
689
1838
  */
690
- interface ContentProps$1 extends ComponentProps<typeof Shown> {
691
- /**
692
- * Says which control shows this panel.
693
- */
694
- readonly value: string;
695
- }
1839
+ type ArrowProps$1 = ComponentProps<typeof Drawn$3>;
696
1840
  /**
697
- * Appears while the control it names is the one in force.
1841
+ * Renders the arrow with the machine's arrow props merged over the caller's.
698
1842
  *
699
- * @param props - The control it names, and everything a styled div takes.
700
- * @returns The panel, named and hidden by the machine.
1843
+ * @param props - The props of a `div`.
1844
+ * @returns The `div` element.
701
1845
  */
702
- declare function Content$1({ value, ...rest }: ContentProps$1): ReactElement;
1846
+ declare function Arrow$1(props: ArrowProps$1): ReactElement;
703
1847
  //#endregion
704
- //#region src/tabs/indicator.d.ts
1848
+ //#region src/toggle-tip/content.d.ts
705
1849
  /**
706
- * Draws the bar at the thickness the look states.
1850
+ * Renders the `div` with the toggle tip's content class.
707
1851
  */
708
- declare const Bar: import("@stealthscale/theme").StyledComponent<"div", {}>;
1852
+ declare const Drawn$2: import("@stealthscale/theme").StyledComponent<"div", {}>;
709
1853
  /**
710
- * Describes what the bar takes.
1854
+ * Describes the props of the content: the props of a `div`, without `ref`, which the presence
1855
+ * takes.
711
1856
  */
712
- type IndicatorProps = ComponentProps<typeof Bar>;
1857
+ type ContentProps$1 = Omit<ComponentProps<typeof Drawn$2>, "ref">;
713
1858
  /**
714
- * Moves to whichever control is in force.
1859
+ * Renders the note with the machine's content props, less its dialog semantics, and the presence
1860
+ * props merged over the caller's.
715
1861
  *
716
- * @param props - Everything a styled div takes.
717
- * @returns The bar, positioned by the machine.
1862
+ * @param props - The props of a `div`.
1863
+ * @returns The `div` element.
718
1864
  */
719
- declare function Indicator(props: IndicatorProps): ReactElement;
1865
+ declare function Content$1(props: ContentProps$1): ReactElement;
720
1866
  //#endregion
721
- //#region src/tabs/list.d.ts
1867
+ //#region src/toggle-tip/positioner.d.ts
722
1868
  /**
723
- * Draws the strip, which turns into a column where the set runs down.
1869
+ * Renders the `div` with the toggle tip's positioner class.
724
1870
  */
725
- declare const Strip: import("@stealthscale/theme").StyledComponent<"div", {}>;
1871
+ declare const Drawn$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
726
1872
  /**
727
- * Describes what the strip takes.
1873
+ * Describes the props of the positioner: the props of a `div`.
728
1874
  */
729
- type ListProps = ComponentProps<typeof Strip>;
1875
+ type PositionerProps$1 = ComponentProps<typeof Drawn$1>;
730
1876
  /**
731
- * Draws the controls in a row, with the bar that marks the one in force.
1877
+ * Renders the positioner with the machine's positioner props merged over the caller's.
732
1878
  *
733
- * @param props - Everything a styled div takes.
734
- * @returns The strip, carrying its role and its orientation.
735
- */
736
- declare function List(props: ListProps): ReactElement;
737
- //#endregion
738
- //#region src/tabs/machine.d.ts
739
- /**
740
- * Describes what a caller sets on the machine, every setting of it optional.
1879
+ * @param props - The props of a `div`.
1880
+ * @returns The `div` element, or nothing while the tip is out of the document.
741
1881
  */
742
- type TabsOptions = Partial<tabs.Props>;
1882
+ declare function Positioner$1(props: PositionerProps$1): null | ReactElement;
743
1883
  //#endregion
744
- //#region src/tabs/root.d.ts
1884
+ //#region src/toggle-tip/root.d.ts
745
1885
  /**
746
- * Draws the frame and sets the variants every part below it reads.
1886
+ * Renders the `span` that provides the recipe's variants.
747
1887
  */
748
- declare const Framed$1: import("@stealthscale/theme").StyledComponent<"div", {
749
- readonly fitted?: boolean;
750
- readonly justify?: import("@stealthscale/theme/authoring").Justify;
751
- readonly size?: import("@stealthscale/theme/authoring").Scale;
752
- readonly variant?: "enclosed" | "line" | "plain" | "subtle";
1888
+ declare const Framed$1: import("@stealthscale/theme").StyledComponent<"span", {
1889
+ readonly size?: import("@stealthscale/theme/authoring").Scale | undefined;
1890
+ readonly variant?: "inverted" | "surface" | undefined;
753
1891
  }>;
754
1892
  /**
755
- * Describes what the root takes: the machine's options, the recipe's variants, and the element's.
1893
+ * Describes the props of the root: the popover machine's options, the tip's presence, the recipe's
1894
+ * variants and the props of a `span`.
756
1895
  *
757
1896
  * @remarks
758
- * The element's own `id` and `dir` are left out, because the machine states both. It builds every
759
- * ARIA reference from the id, and it reads the direction to decide which arrow key moves which
760
- * way.
1897
+ * The element's `id` and `dir` are left out, because the machine takes both. It derives every
1898
+ * part's id from `id`, and reads `dir` for the placement. `autoFocus` is false by default.
761
1899
  */
762
- interface RootProps$1 extends Omit<ComponentProps<typeof Framed$1>, "defaultValue" | "dir" | "id" | "onChange" | "value">, TabsOptions {}
1900
+ interface RootProps$1 extends Omit<ComponentProps<typeof Framed$1>, "dir" | "id">, OverlayPresence, PopoverOptions {}
763
1901
  /**
764
- * Shows one panel at a time, chosen from a strip of controls.
1902
+ * Renders the root and provides the machine's api and the tip's presence to the parts.
765
1903
  *
766
- * @param props - The machine's options, the recipe's variants and the element's props together.
767
- * @returns The frame, holding the parts, under the running machine.
1904
+ * @param props - The machine's options, the tip's presence, the recipe's variants and the props of
1905
+ * a `span`.
1906
+ * @returns The `span` element inside the providers.
768
1907
  */
769
- declare function Root$1(props: RootProps$1): ReactElement;
1908
+ declare function Root$1({ autoFocus, lazyMount, onExitComplete, skipAnimationOnMount, unmountOnExit, ...props }: RootProps$1): ReactElement;
770
1909
  //#endregion
771
- //#region src/tabs/trigger.d.ts
1910
+ //#region src/toggle-tip/trigger.d.ts
772
1911
  /**
773
- * Draws the control at the size the root states.
1912
+ * Renders the `button` with the toggle tip's trigger class.
774
1913
  */
775
- declare const Pressed$1: import("@stealthscale/theme").StyledComponent<"button", {}>;
1914
+ declare const Drawn: import("@stealthscale/theme").StyledComponent<"button", {}>;
776
1915
  /**
777
- * Describes what a control takes.
1916
+ * Describes the props of the trigger: the props of a `button`.
778
1917
  */
779
- interface TriggerProps$1 extends ComponentProps<typeof Pressed$1> {
780
- /**
781
- * Whether a person can reach it at all.
782
- */
783
- readonly disabled?: boolean | undefined;
784
- /**
785
- * Says which panel this control shows.
786
- */
787
- readonly value: string;
788
- }
1918
+ type TriggerProps$1 = ComponentProps<typeof Drawn>;
789
1919
  /**
790
- * Shows the panel it names.
1920
+ * Renders the trigger with the machine's trigger props, less `aria-haspopup`, merged over the
1921
+ * caller's.
791
1922
  *
792
- * @param props - The panel it names, and everything a styled button takes.
793
- * @returns The control, carrying its role and its selection.
1923
+ * @param props - The props of a `button`.
1924
+ * @returns The `button` element.
794
1925
  */
795
- declare function Trigger$1({ disabled, value, ...rest }: TriggerProps$1): ReactElement;
796
- declare namespace index_d_exports$3 {
797
- export { Content$1 as Content, ContentProps$1 as ContentProps, Indicator, IndicatorProps, List, ListProps, Root$1 as Root, RootProps$1 as RootProps, Trigger$1 as Trigger, TriggerProps$1 as TriggerProps };
1926
+ declare function Trigger$1(props: TriggerProps$1): ReactElement;
1927
+ declare namespace index_d_exports$9 {
1928
+ export { Arrow$1 as Arrow, ArrowProps$1 as ArrowProps, ArrowTip$1 as ArrowTip, ArrowTipProps$1 as ArrowTipProps, Content$1 as Content, ContentProps$1 as ContentProps, Positioner$1 as Positioner, PositionerProps$1 as PositionerProps, Root$1 as Root, RootProps$1 as RootProps, Trigger$1 as Trigger, TriggerProps$1 as TriggerProps };
798
1929
  }
799
1930
  //#endregion
800
1931
  //#region src/tooltip/arrow-tip.d.ts
801
1932
  /**
802
- * Draws the shape the arrow shows.
1933
+ * Renders the `div` with the tooltip's arrow tip class.
803
1934
  */
804
1935
  declare const Turned: import("@stealthscale/theme").StyledComponent<"div", {}>;
805
1936
  /**
806
- * Describes what the tip takes.
1937
+ * Describes the props of the arrow tip: the props of a `div`.
807
1938
  */
808
1939
  type ArrowTipProps = ComponentProps<typeof Turned>;
809
1940
  /**
810
- * Shows one corner past the edge of the box.
1941
+ * Renders the arrow tip with the machine's arrow tip props merged over the caller's.
811
1942
  *
812
- * @param props - Everything a styled div takes.
813
- * @returns The tip, turned by the machine.
1943
+ * @param props - The props of a `div`.
1944
+ * @returns The `div` element.
814
1945
  */
815
1946
  declare function ArrowTip(props: ArrowTipProps): ReactElement;
816
1947
  //#endregion
817
1948
  //#region src/tooltip/arrow.d.ts
818
1949
  /**
819
- * Draws the outer element the machine places.
1950
+ * Renders the `div` with the tooltip's arrow class.
820
1951
  */
821
1952
  declare const Placed$1: import("@stealthscale/theme").StyledComponent<"div", {}>;
822
1953
  /**
823
- * Describes what the arrow takes.
1954
+ * Describes the props of the arrow: the props of a `div`.
824
1955
  */
825
1956
  type ArrowProps = ComponentProps<typeof Placed$1>;
826
1957
  /**
827
- * Points from the box back at the control.
1958
+ * Renders the arrow with the machine's arrow props merged over the caller's.
828
1959
  *
829
- * @param props - Everything a styled div takes.
830
- * @returns The arrow, placed by the machine.
1960
+ * @param props - The props of a `div`.
1961
+ * @returns The `div` element.
831
1962
  */
832
1963
  declare function Arrow(props: ArrowProps): ReactElement;
833
1964
  //#endregion
834
1965
  //#region src/tooltip/content.d.ts
835
1966
  /**
836
- * Draws the box at the size the root states.
1967
+ * Renders the `div` with the tooltip's content class.
837
1968
  */
838
1969
  declare const Boxed: import("@stealthscale/theme").StyledComponent<"div", {}>;
839
1970
  /**
840
- * Describes what the box takes.
1971
+ * Describes the props of the content: the props of a `div`, without `ref`, which the presence
1972
+ * takes.
841
1973
  */
842
- type ContentProps = ComponentProps<typeof Boxed>;
1974
+ type ContentProps = Omit<ComponentProps<typeof Boxed>, "ref">;
843
1975
  /**
844
- * Appears beside the control while a pointer rests on it.
1976
+ * Renders the content with the machine's content props and the presence props merged over the
1977
+ * caller's.
845
1978
  *
846
- * @param props - The recipe's variants, and everything a styled div takes.
847
- * @returns The box, named and placed by the machine.
1979
+ * @param props - The props of a `div`.
1980
+ * @returns The `div` element.
848
1981
  */
849
1982
  declare function Content(props: ContentProps): ReactElement;
850
1983
  //#endregion
851
1984
  //#region src/tooltip/positioner.d.ts
852
1985
  /**
853
- * Draws the box the machine positions.
1986
+ * Renders the `div` with the tooltip's positioner class.
854
1987
  */
855
1988
  declare const Placed: import("@stealthscale/theme").StyledComponent<"div", {}>;
856
1989
  /**
857
- * Describes what the positioner takes.
1990
+ * Describes the props of the positioner: the props of a `div`.
858
1991
  */
859
1992
  type PositionerProps = ComponentProps<typeof Placed>;
860
1993
  /**
861
- * Draws the box wherever the machine measured room for it.
1994
+ * Renders the positioner with the machine's positioner props merged over the caller's.
862
1995
  *
863
- * @param props - Everything a styled div takes.
864
- * @returns The box, positioned by the machine.
1996
+ * @param props - The props of a `div`.
1997
+ * @returns The `div` element, or nothing while the content is out of the document.
865
1998
  */
866
- declare function Positioner(props: PositionerProps): ReactElement;
1999
+ declare function Positioner(props: PositionerProps): null | ReactElement;
867
2000
  //#endregion
868
2001
  //#region src/tooltip/machine.d.ts
869
2002
  /**
870
- * Describes what a caller sets on the machine, every setting of it optional.
2003
+ * Describes the machine settings a caller can pass to the root, all optional.
871
2004
  */
872
2005
  type TooltipOptions = Partial<tooltip.Props>;
873
2006
  //#endregion
874
2007
  //#region src/tooltip/root.d.ts
875
2008
  /**
876
- * Draws the element that sets the variants every part below it reads, and no box.
2009
+ * Renders the `div` that provides the recipe's variants.
877
2010
  */
878
2011
  declare const Framed: import("@stealthscale/theme").StyledComponent<"div", {
879
- readonly size?: import("@stealthscale/theme/authoring").Scale;
880
- readonly variant?: "inverted" | "surface";
2012
+ readonly size?: import("@stealthscale/theme/authoring").Scale | undefined;
2013
+ readonly variant?: "inverted" | "surface" | undefined;
881
2014
  }>;
882
2015
  /**
883
- * Describes what the root takes: the machine's settings, the recipe's variants, and the element's.
2016
+ * Describes the props of the root: the machine's options, the content's presence, the recipe's
2017
+ * variants and the props of a `div`.
884
2018
  *
885
2019
  * @remarks
886
- * The element's own `id` and `dir` are left out, because the machine states both. It names the
887
- * box from the id so the control can point at it, and it reads the direction to decide which side
888
- * the box opens on.
2020
+ * The element's `id` and `dir` are left out, because the machine takes both. It derives the
2021
+ * content's id from `id`, and reads `dir` for the placement.
889
2022
  */
890
- interface RootProps extends Omit<ComponentProps<typeof Framed>, "dir" | "id">, TooltipOptions {}
2023
+ interface RootProps extends Omit<ComponentProps<typeof Framed>, "dir" | "id">, OverlayPresence, TooltipOptions {}
891
2024
  /**
892
- * Shows a short label beside whatever a pointer rests on.
2025
+ * Renders the root and provides the machine's api and the content's presence to the parts.
893
2026
  *
894
- * @param props - The machine's settings, the recipe's variants and the element's props together.
895
- * @returns The parts, under the running machine.
2027
+ * @param props - The machine's options, the content's presence, the recipe's variants and the
2028
+ * props of a `div`.
2029
+ * @returns The `div` element inside the providers.
896
2030
  */
897
- declare function Root(props: RootProps): ReactElement;
2031
+ declare function Root({ lazyMount, onExitComplete, skipAnimationOnMount, unmountOnExit, ...props }: RootProps): ReactElement;
898
2032
  //#endregion
899
2033
  //#region src/tooltip/trigger.d.ts
900
2034
  /**
901
- * Draws the control, styled by whatever the caller drew rather than by this recipe.
2035
+ * Renders the `button` with the tooltip's trigger class.
902
2036
  */
903
2037
  declare const Pressed: import("@stealthscale/theme").StyledComponent<"button", {}>;
904
2038
  /**
905
- * Describes what the control takes.
2039
+ * Describes the props of the trigger: the props of a `button`.
906
2040
  */
907
2041
  type TriggerProps = ComponentProps<typeof Pressed>;
908
2042
  /**
909
- * Opens the box as a pointer rests on it or focus reaches it.
2043
+ * Renders the trigger with the machine's trigger props merged over the caller's.
910
2044
  *
911
- * @param props - Everything a styled button takes.
912
- * @returns The control, carrying what the machine needs to open the box.
2045
+ * @param props - The props of a `button`.
2046
+ * @returns The `button` element.
913
2047
  */
914
2048
  declare function Trigger(props: TriggerProps): ReactElement;
915
- declare namespace index_d_exports$4 {
2049
+ declare namespace index_d_exports$10 {
916
2050
  export { Arrow, ArrowProps, ArrowTip, ArrowTipProps, Content, ContentProps, Positioner, PositionerProps, Root, RootProps, Trigger, TriggerProps };
917
2051
  }
918
2052
  //#endregion
919
- export { index_d_exports as Collapsible, index_d_exports$1 as Menu, index_d_exports$2 as Popover, index_d_exports$3 as Tabs, index_d_exports$4 as Tooltip };
2053
+ //#region src/truncate/clipped.d.ts
2054
+ /**
2055
+ * Renders the `span` with the truncate class.
2056
+ */
2057
+ declare const Spanned: import("@stealthscale/theme").StyledComponent<"span", {}>;
2058
+ /**
2059
+ * Describes the props of the clipped text: whether it is clipped, whether it takes a tab stop, its
2060
+ * line count, and the props of a `span`.
2061
+ */
2062
+ interface ClippedProps extends ComponentProps<typeof Spanned> {
2063
+ /**
2064
+ * Whether the text is cut off.
2065
+ */
2066
+ readonly clipped: boolean;
2067
+ /**
2068
+ * Whether the text takes a tab stop while it is cut off.
2069
+ */
2070
+ readonly focusable: boolean;
2071
+ /**
2072
+ * Lines the text keeps.
2073
+ */
2074
+ readonly lines: number;
2075
+ }
2076
+ //#endregion
2077
+ //#region src/truncate/truncate.d.ts
2078
+ /**
2079
+ * Describes the props of the truncated text: the text, its line count, whether it takes a tab stop
2080
+ * while clipped, and the props of a `span`.
2081
+ */
2082
+ interface TruncateProps extends Omit<ClippedProps, "children" | "clipped" | "focusable" | "lines" | "ref"> {
2083
+ /**
2084
+ * Whole text, as a string.
2085
+ */
2086
+ readonly children: string;
2087
+ /**
2088
+ * Whether the text takes a tab stop while it is clipped, false unless stated.
2089
+ *
2090
+ * @remarks
2091
+ * A keyboard opens the tooltip only from a tab stop. Text that fits takes none either way.
2092
+ */
2093
+ readonly focusable?: boolean | undefined;
2094
+ /**
2095
+ * Lines the text keeps, 1 unless stated.
2096
+ */
2097
+ readonly lines?: number | undefined;
2098
+ }
2099
+ /**
2100
+ * Renders the text, clipped, and the tooltip with the whole text.
2101
+ *
2102
+ * @param props - The text, its line count, the tab stop and the props of a `span`.
2103
+ * @returns The tooltip's root around the text.
2104
+ */
2105
+ export declare function Truncate({ children, focusable, lines, ...props }: TruncateProps): ReactElement;
2106
+ //#endregion
2107
+ export { index_d_exports as Accordion, index_d_exports$1 as Collapsible, index_d_exports$2 as Details, index_d_exports$3 as HoverCard, index_d_exports$4 as Menu, index_d_exports$5 as Menubar, index_d_exports$6 as Popover, index_d_exports$7 as Steps, index_d_exports$8 as Tabs, index_d_exports$9 as ToggleTip, index_d_exports$10 as Tooltip, type TruncateProps };