@zylem/ui 0.9.6 → 0.9.8

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/etc/ui.api.md ADDED
@@ -0,0 +1,1938 @@
1
+ ## API Report File for "@zylem/ui"
2
+
3
+ > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
4
+
5
+ ```ts
6
+
7
+ import { Accessor } from 'solid-js';
8
+ import { Component } from 'solid-js';
9
+ import { JSX } from 'solid-js';
10
+
11
+ // @public
12
+ export function Accordion(props: AccordionProps): JSX.Element;
13
+
14
+ // @public (undocumented)
15
+ export interface AccordionItemConfig {
16
+ // (undocumented)
17
+ content: () => JSX.Element;
18
+ // (undocumented)
19
+ id: string;
20
+ // (undocumented)
21
+ title: JSX.Element;
22
+ }
23
+
24
+ // @public (undocumented)
25
+ export interface AccordionProps {
26
+ // (undocumented)
27
+ class?: string;
28
+ // (undocumented)
29
+ collapsible?: boolean;
30
+ contentClass?: string;
31
+ // (undocumented)
32
+ defaultValue?: string[];
33
+ headingLevel?: HeadingLevel;
34
+ // (undocumented)
35
+ items: AccordionItemConfig[];
36
+ // (undocumented)
37
+ multiple?: boolean;
38
+ // (undocumented)
39
+ onChange?: (value: string[]) => void;
40
+ stack?: boolean;
41
+ // (undocumented)
42
+ value?: string[];
43
+ }
44
+
45
+ // @public
46
+ export function AddTile(props: AddTileProps): JSX;
47
+
48
+ // @public (undocumented)
49
+ export interface AddTileProps {
50
+ // (undocumented)
51
+ class?: string;
52
+ // (undocumented)
53
+ disabled?: boolean;
54
+ label?: string;
55
+ // (undocumented)
56
+ onClick?: (event: MouseEvent) => void;
57
+ variant?: AddTileVariant;
58
+ }
59
+
60
+ // @public (undocumented)
61
+ export type AddTileVariant = 'square' | 'tall' | 'fill';
62
+
63
+ // @public
64
+ export function arcPath(cx: number, cy: number, radius: number, from: number, to: number): string;
65
+
66
+ // @public (undocumented)
67
+ export const ART_TOOL_ICONS: Record<ArtTool, IconComponent>;
68
+
69
+ // @public (undocumented)
70
+ export const ART_TOOL_LABELS: Record<ArtTool, string>;
71
+
72
+ // @public
73
+ export const ART_TOOLS: readonly ArtTool[];
74
+
75
+ // @public
76
+ export type ArtTool = 'pencil' | 'fill' | 'eraser' | 'rectangle' | 'ellipse' | 'select' | 'eyedropper' | 'move';
77
+
78
+ // @public
79
+ export function Badge(props: BadgeProps): JSX.Element;
80
+
81
+ // @public (undocumented)
82
+ export interface BadgeProps {
83
+ // (undocumented)
84
+ children: JSX.Element;
85
+ // (undocumented)
86
+ class?: string;
87
+ // (undocumented)
88
+ tone?: BadgeTone;
89
+ }
90
+
91
+ // @public (undocumented)
92
+ export type BadgeTone = 'info' | 'warning' | 'error' | 'success' | 'neutral';
93
+
94
+ // @public (undocumented)
95
+ export const BUILD_LABEL_ID = "zylem-build-label";
96
+
97
+ // @public
98
+ export function BuildLabel(props: BuildLabelProps): JSX;
99
+
100
+ // @public (undocumented)
101
+ export interface BuildLabelModel {
102
+ packages?: Record<string, string>;
103
+ prefer?: string;
104
+ version?: string;
105
+ }
106
+
107
+ // @public (undocumented)
108
+ export type BuildLabelProps = BuildLabelModel;
109
+
110
+ // @public
111
+ export function Button(props: ButtonProps): JSX.Element;
112
+
113
+ // @public (undocumented)
114
+ export interface ButtonProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> {
115
+ icon?: JSX.Element | undefined;
116
+ on?: boolean | undefined;
117
+ // (undocumented)
118
+ size?: ButtonSize;
119
+ // (undocumented)
120
+ variant?: ButtonVariant;
121
+ }
122
+
123
+ // @public (undocumented)
124
+ export type ButtonSize = 'sm' | 'md' | 'lg' | 'icon';
125
+
126
+ // @public (undocumented)
127
+ export type ButtonVariant = 'default' | 'primary' | 'active' | 'danger' | 'ghost';
128
+
129
+ // @public
130
+ export function Callout(props: CalloutProps): JSX.Element;
131
+
132
+ // @public (undocumented)
133
+ export interface CalloutProps {
134
+ // (undocumented)
135
+ children: JSX.Element;
136
+ // (undocumented)
137
+ class?: string;
138
+ title?: JSX.Element;
139
+ // (undocumented)
140
+ tone?: CalloutTone;
141
+ }
142
+
143
+ // @public (undocumented)
144
+ export type CalloutTone = 'info' | 'warning' | 'error' | 'success';
145
+
146
+ // @public (undocumented)
147
+ export const CAMERA_ICONS: readonly [{
148
+ readonly name: "perspective";
149
+ readonly label: "Perspective";
150
+ readonly Icon: Component<ZylemIconProps>;
151
+ }, {
152
+ readonly name: "sideview-perspective";
153
+ readonly label: "Side view";
154
+ readonly Icon: Component<ZylemIconProps>;
155
+ }, {
156
+ readonly name: "top-down-perspective";
157
+ readonly label: "Top down";
158
+ readonly Icon: Component<ZylemIconProps>;
159
+ }, {
160
+ readonly name: "isometric-perspective";
161
+ readonly label: "Isometric";
162
+ readonly Icon: Component<ZylemIconProps>;
163
+ }, {
164
+ readonly name: "free-perspective";
165
+ readonly label: "Free / orbit";
166
+ readonly Icon: Component<ZylemIconProps>;
167
+ }, {
168
+ readonly name: "game-camera";
169
+ readonly label: "Game camera";
170
+ readonly Icon: Component<ZylemIconProps>;
171
+ }];
172
+
173
+ // @public
174
+ export const CAMERA_VIEWS: readonly [{
175
+ readonly name: "view-iso-left-top";
176
+ readonly label: "Iso left/top";
177
+ readonly Icon: Component<ZylemIconProps>;
178
+ }, {
179
+ readonly name: "view-top";
180
+ readonly label: "Top";
181
+ readonly Icon: Component<ZylemIconProps>;
182
+ }, {
183
+ readonly name: "view-iso-right-top";
184
+ readonly label: "Iso right/top";
185
+ readonly Icon: Component<ZylemIconProps>;
186
+ }, {
187
+ readonly name: "view-right";
188
+ readonly label: "Right";
189
+ readonly Icon: Component<ZylemIconProps>;
190
+ }, {
191
+ readonly name: "view-iso-right-bottom";
192
+ readonly label: "Iso right/bottom";
193
+ readonly Icon: Component<ZylemIconProps>;
194
+ }, {
195
+ readonly name: "view-bottom";
196
+ readonly label: "Bottom";
197
+ readonly Icon: Component<ZylemIconProps>;
198
+ }, {
199
+ readonly name: "view-iso-left-bottom";
200
+ readonly label: "Iso left/bottom";
201
+ readonly Icon: Component<ZylemIconProps>;
202
+ }, {
203
+ readonly name: "view-left";
204
+ readonly label: "Left";
205
+ readonly Icon: Component<ZylemIconProps>;
206
+ }];
207
+
208
+ // @public (undocumented)
209
+ export type CameraIcon = Component<ZylemIconProps>;
210
+
211
+ // @public (undocumented)
212
+ export type CameraIconName = keyof typeof cameraIconNodes;
213
+
214
+ // @public (undocumented)
215
+ export const cameraIconNodes: {
216
+ readonly perspective: IconNode;
217
+ readonly 'sideview-perspective': IconNode;
218
+ readonly 'top-down-perspective': IconNode;
219
+ readonly 'isometric-perspective': IconNode;
220
+ readonly 'free-perspective': IconNode;
221
+ readonly 'game-camera': IconNode;
222
+ readonly 'view-left': IconNode;
223
+ readonly 'view-iso-left-top': IconNode;
224
+ readonly 'view-top': IconNode;
225
+ readonly 'view-iso-right-top': IconNode;
226
+ readonly 'view-right': IconNode;
227
+ readonly 'view-iso-right-bottom': IconNode;
228
+ readonly 'view-bottom': IconNode;
229
+ readonly 'view-iso-left-bottom': IconNode;
230
+ };
231
+
232
+ // @public
233
+ export function Card(props: CardProps): JSX.Element;
234
+
235
+ // @public (undocumented)
236
+ export interface CardProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, 'title'> {
237
+ children?: JSX.Element;
238
+ // (undocumented)
239
+ description?: JSX.Element;
240
+ headingLevel?: HeadingLevel;
241
+ interactive?: boolean;
242
+ media?: JSX.Element;
243
+ // (undocumented)
244
+ selected?: boolean;
245
+ // (undocumented)
246
+ title?: JSX.Element;
247
+ }
248
+
249
+ // @public
250
+ export function cellStart(beats: number, snap: number | undefined, length: number): number;
251
+
252
+ // @public
253
+ export function Checkbox(props: CheckboxProps): JSX;
254
+
255
+ // @public (undocumented)
256
+ export interface CheckboxProps {
257
+ 'aria-label'?: string;
258
+ // (undocumented)
259
+ checked?: boolean;
260
+ // (undocumented)
261
+ class?: string;
262
+ // (undocumented)
263
+ defaultChecked?: boolean;
264
+ // (undocumented)
265
+ disabled?: boolean;
266
+ // (undocumented)
267
+ label?: string;
268
+ // (undocumented)
269
+ name?: string;
270
+ // (undocumented)
271
+ onChange?: (checked: boolean) => void;
272
+ }
273
+
274
+ // @public (undocumented)
275
+ export interface ClipBounds {
276
+ // (undocumented)
277
+ length: number;
278
+ // (undocumented)
279
+ start: number;
280
+ }
281
+
282
+ // @public
283
+ export function ColorPalette(props: ColorPaletteProps): JSX;
284
+
285
+ // @public (undocumented)
286
+ export interface ColorPaletteProps {
287
+ // (undocumented)
288
+ class?: string;
289
+ // (undocumented)
290
+ colors: readonly string[];
291
+ includeTransparent?: boolean;
292
+ onAdd?: () => void;
293
+ // (undocumented)
294
+ onSelect?: (color: string) => void;
295
+ value?: string;
296
+ }
297
+
298
+ // @public (undocumented)
299
+ export function computePeaks(source: PeakSource | Float32Array, bins: number): Float32Array;
300
+
301
+ // @public
302
+ export function ConfirmDialog(props: ConfirmDialogProps): JSX.Element;
303
+
304
+ // @public (undocumented)
305
+ export interface ConfirmDialogProps {
306
+ // (undocumented)
307
+ cancelLabel?: string;
308
+ // (undocumented)
309
+ confirmLabel?: string;
310
+ // (undocumented)
311
+ danger?: boolean;
312
+ // (undocumented)
313
+ message: JSX.Element;
314
+ // (undocumented)
315
+ onConfirm: () => void;
316
+ // (undocumented)
317
+ onOpenChange: (open: boolean) => void;
318
+ // (undocumented)
319
+ open: boolean;
320
+ // (undocumented)
321
+ title?: JSX.Element;
322
+ }
323
+
324
+ // @public
325
+ function Console_2(props: ConsoleProps): JSX.Element;
326
+ export { Console_2 as Console }
327
+
328
+ // @public (undocumented)
329
+ export interface ConsoleProps {
330
+ actions?: JSX.Element;
331
+ // (undocumented)
332
+ class?: string;
333
+ label?: string;
334
+ // (undocumented)
335
+ onClear?: () => void;
336
+ onInput?: (value: string) => void;
337
+ // (undocumented)
338
+ readOnly?: boolean;
339
+ value: string;
340
+ }
341
+
342
+ // @public
343
+ export function createDismissGuard(): DismissGuard;
344
+
345
+ // @public
346
+ export function createZylemIcon(name: string, iconNode: IconNode, options?: ZylemIconOptions): Component<ZylemIconProps>;
347
+
348
+ // @public
349
+ export function Dialog(props: DialogProps): JSX.Element;
350
+
351
+ // @public (undocumented)
352
+ export interface DialogProps {
353
+ 'aria-describedby'?: string;
354
+ 'aria-label'?: string;
355
+ bodyClass?: string;
356
+ // (undocumented)
357
+ children: JSX.Element;
358
+ class?: string;
359
+ footer?: JSX.Element;
360
+ headerExtra?: JSX.Element;
361
+ // (undocumented)
362
+ onOpenChange?: (open: boolean) => void;
363
+ // (undocumented)
364
+ open?: boolean;
365
+ role?: 'dialog' | 'alertdialog';
366
+ // (undocumented)
367
+ size?: DialogSize;
368
+ subtitle?: JSX.Element;
369
+ // (undocumented)
370
+ title?: JSX.Element;
371
+ }
372
+
373
+ // @public
374
+ export type DialogSize = 'md' | 'lg' | 'fullscreen';
375
+
376
+ // @public
377
+ export interface DismissalEvent {
378
+ // (undocumented)
379
+ detail: {
380
+ originalEvent: Event;
381
+ };
382
+ // (undocumented)
383
+ preventDefault: () => void;
384
+ }
385
+
386
+ // @public (undocumented)
387
+ export interface DismissGuard {
388
+ onInteractOutside: (event: DismissalEvent) => void;
389
+ ref: (element: HTMLElement) => void;
390
+ }
391
+
392
+ // @public
393
+ export const Dock: Component<ZylemIconProps>;
394
+
395
+ // @public
396
+ export interface DockOption {
397
+ // (undocumented)
398
+ id: DockPosition;
399
+ // (undocumented)
400
+ label: string;
401
+ }
402
+
403
+ // @public
404
+ export type DockPosition = 'left' | 'right' | 'top' | 'float' | 'bottom';
405
+
406
+ // @public
407
+ export function DropdownMenu(props: DropdownMenuProps): JSX.Element;
408
+
409
+ // @public (undocumented)
410
+ export interface DropdownMenuItemConfig {
411
+ checked?: boolean;
412
+ closeOnSelect?: boolean;
413
+ // (undocumented)
414
+ danger?: boolean;
415
+ // (undocumented)
416
+ disabled?: boolean;
417
+ // (undocumented)
418
+ id: string;
419
+ // (undocumented)
420
+ label: JSX.Element;
421
+ // (undocumented)
422
+ onSelect?: () => void;
423
+ separatorAbove?: boolean;
424
+ // (undocumented)
425
+ shortcut?: string;
426
+ }
427
+
428
+ // @public (undocumented)
429
+ export interface DropdownMenuProps {
430
+ // (undocumented)
431
+ items: DropdownMenuItemConfig[];
432
+ // (undocumented)
433
+ placement?: 'bottom-start' | 'bottom-end' | 'bottom' | 'top-start' | 'top-end' | 'top' | 'right-start' | 'left-start';
434
+ trigger: JSX.Element;
435
+ triggerClass?: string;
436
+ triggerLabel?: string;
437
+ }
438
+
439
+ // @public
440
+ export function EmptyState(props: EmptyStateProps): JSX.Element;
441
+
442
+ // @public (undocumented)
443
+ export interface EmptyStateProps {
444
+ action?: JSX.Element;
445
+ // (undocumented)
446
+ children?: JSX.Element;
447
+ // (undocumented)
448
+ class?: string;
449
+ // (undocumented)
450
+ title?: JSX.Element;
451
+ }
452
+
453
+ // @public
454
+ export function ensureLayerContainer(node: Node | null | undefined): HTMLElement;
455
+
456
+ // @public
457
+ export function filterItems<T extends PickerItem>(items: T[], query: string): T[];
458
+
459
+ // @public
460
+ export function formatBeats(beats: number, beatsPerBar?: number): string;
461
+
462
+ // @public
463
+ export function formatBuildLabel(version: string): string;
464
+
465
+ // @public
466
+ export function formatClock(seconds: number): string;
467
+
468
+ // @public
469
+ export function formatDb(value: number, floor?: number): string;
470
+
471
+ // @public
472
+ export function formatPan(value: number): string;
473
+
474
+ // @public
475
+ export function formatSeconds(seconds: number): string;
476
+
477
+ // @public
478
+ export function formatTransportTime(time: number, unit: TimeUnit, beatsPerBar?: number): string;
479
+
480
+ // @public
481
+ export function FrameActions(props: FrameActionsProps): JSX.Element;
482
+
483
+ // @public (undocumented)
484
+ export interface FrameActionsProps {
485
+ // (undocumented)
486
+ canDelete?: boolean;
487
+ // (undocumented)
488
+ canDuplicate?: boolean;
489
+ // (undocumented)
490
+ canMoveLeft?: boolean;
491
+ // (undocumented)
492
+ canMoveRight?: boolean;
493
+ // (undocumented)
494
+ canNext?: boolean;
495
+ // (undocumented)
496
+ canPrev?: boolean;
497
+ // (undocumented)
498
+ class?: string;
499
+ // (undocumented)
500
+ onDelete?: () => void;
501
+ // (undocumented)
502
+ onDuplicate?: () => void;
503
+ onMoveLeft?: () => void;
504
+ onMoveRight?: () => void;
505
+ // (undocumented)
506
+ onNext?: () => void;
507
+ // (undocumented)
508
+ onPrev?: () => void;
509
+ }
510
+
511
+ // @public
512
+ export function FrameStrip(props: FrameStripProps): JSX.Element;
513
+
514
+ // @public (undocumented)
515
+ export interface FrameStripProps extends JSX.HTMLAttributes<HTMLDivElement> {
516
+ children: JSX.Element;
517
+ label?: string;
518
+ title?: string;
519
+ }
520
+
521
+ // @public
522
+ export function FrameThumb(props: FrameThumbProps): JSX.Element;
523
+
524
+ // @public (undocumented)
525
+ export interface FrameThumbProps {
526
+ children?: JSX.Element;
527
+ // (undocumented)
528
+ class?: string;
529
+ index: number;
530
+ // (undocumented)
531
+ label?: string;
532
+ // (undocumented)
533
+ onClick?: (event: MouseEvent) => void;
534
+ // (undocumented)
535
+ selected?: boolean;
536
+ }
537
+
538
+ // @public (undocumented)
539
+ export const FreePerspective: Component<ZylemIconProps>;
540
+
541
+ // @public
542
+ export const GameCamera: Component<ZylemIconProps>;
543
+
544
+ // @public
545
+ export function groupItems<T extends PickerItem>(items: T[]): PickerGroup<T>[];
546
+
547
+ // @public
548
+ export type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
549
+
550
+ // @public (undocumented)
551
+ export type IconComponent = Component<JSX.SvgSVGAttributes<SVGSVGElement>>;
552
+
553
+ // @public
554
+ export type IconNode = [
555
+ elementName: 'rect' | 'path',
556
+ attributes: Record<string, string>
557
+ ][];
558
+
559
+ // @public
560
+ export function intervalTicks(intervals: number, min: number, max: number): number[];
561
+
562
+ // @public (undocumented)
563
+ export function isBlackKey(pitch: number): boolean;
564
+
565
+ // @public
566
+ export const IsometricPerspective: Component<ZylemIconProps>;
567
+
568
+ // @public
569
+ export function ItemPicker<T extends PickerItem>(props: ItemPickerProps<T>): JSX.Element;
570
+
571
+ // @public (undocumented)
572
+ export interface ItemPickerProps<T extends PickerItem = PickerItem> {
573
+ autoFocus?: boolean | undefined;
574
+ // (undocumented)
575
+ class?: string | undefined;
576
+ emptyMessage?: JSX.Element | undefined;
577
+ // (undocumented)
578
+ items: T[];
579
+ // (undocumented)
580
+ onSelect: (item: T) => void;
581
+ searchable?: boolean | undefined;
582
+ // (undocumented)
583
+ searchPlaceholder?: string | undefined;
584
+ selectedId?: string | null | undefined;
585
+ }
586
+
587
+ // @public
588
+ export function Kbd(props: KbdProps): JSX.Element;
589
+
590
+ // @public (undocumented)
591
+ export interface KbdProps {
592
+ // (undocumented)
593
+ children: JSX.Element;
594
+ // (undocumented)
595
+ class?: string;
596
+ }
597
+
598
+ // @public
599
+ export function KeyframeMarker(props: KeyframeMarkerProps): JSX.Element;
600
+
601
+ // @public (undocumented)
602
+ export interface KeyframeMarkerProps {
603
+ // (undocumented)
604
+ class?: string;
605
+ // (undocumented)
606
+ color?: string;
607
+ // (undocumented)
608
+ disabled?: boolean;
609
+ // (undocumented)
610
+ label?: string;
611
+ onChange?: (time: number) => void;
612
+ onCommit?: (time: number) => void;
613
+ // (undocumented)
614
+ onDoubleClick?: () => void;
615
+ onSelect?: (event: MouseEvent | KeyboardEvent) => void;
616
+ // (undocumented)
617
+ selected?: boolean;
618
+ shape?: 'diamond' | 'pin';
619
+ // (undocumented)
620
+ time: number;
621
+ }
622
+
623
+ // @public
624
+ export function Knob(props: KnobProps): JSX;
625
+
626
+ // @public (undocumented)
627
+ export interface KnobProps {
628
+ 'aria-label'?: string;
629
+ bipolar?: boolean;
630
+ // (undocumented)
631
+ class?: string;
632
+ defaultValue?: number;
633
+ // (undocumented)
634
+ disabled?: boolean;
635
+ format?: (value: number) => string;
636
+ label?: string;
637
+ // (undocumented)
638
+ max?: number;
639
+ // (undocumented)
640
+ min?: number;
641
+ // (undocumented)
642
+ onChange?: (value: number) => void;
643
+ onCommit?: (value: number) => void;
644
+ // (undocumented)
645
+ size?: number;
646
+ // (undocumented)
647
+ step?: number;
648
+ // (undocumented)
649
+ value: number;
650
+ }
651
+
652
+ // @public
653
+ export const LAYER_PORTAL_CLASS = "zylem-layer-portals";
654
+
655
+ // @public
656
+ export function LayerProvider(props: LayerProviderProps): JSX.Element;
657
+
658
+ // @public (undocumented)
659
+ export interface LayerProviderProps {
660
+ // (undocumented)
661
+ children: JSX.Element;
662
+ }
663
+
664
+ // @public
665
+ export function LayerScope(props: LayerScopeProps): JSX.Element;
666
+
667
+ // @public (undocumented)
668
+ export interface LayerScopeProps {
669
+ // (undocumented)
670
+ children: JSX.Element;
671
+ // (undocumented)
672
+ class?: string | undefined;
673
+ // (undocumented)
674
+ style?: JSX.CSSProperties | undefined;
675
+ }
676
+
677
+ // @public
678
+ export type LayerTier = 'base' | 'panel' | 'modal' | 'popover' | 'tooltip' | 'menu';
679
+
680
+ // @public
681
+ export function majorTickTimes(options: RulerTickOptions): number[];
682
+
683
+ // @public
684
+ export function markerPercent(t: number, min: number, max: number): number;
685
+
686
+ // @public
687
+ export function Menubar(props: MenubarProps): JSX.Element;
688
+
689
+ // @public (undocumented)
690
+ export interface MenubarMenuConfig {
691
+ // (undocumented)
692
+ disabled?: boolean;
693
+ // (undocumented)
694
+ id: string;
695
+ items: DropdownMenuItemConfig[] | (() => DropdownMenuItemConfig[]);
696
+ // (undocumented)
697
+ label: JSX.Element;
698
+ }
699
+
700
+ // @public (undocumented)
701
+ export interface MenubarProps {
702
+ // (undocumented)
703
+ 'aria-label'?: string;
704
+ // (undocumented)
705
+ class?: string;
706
+ // (undocumented)
707
+ menus: MenubarMenuConfig[];
708
+ triggerClass?: string;
709
+ }
710
+
711
+ // @public
712
+ export function MenuButton(props: MenuButtonProps): JSX.Element;
713
+
714
+ // @public (undocumented)
715
+ export interface MenuButtonProps {
716
+ children: JSX.Element;
717
+ // (undocumented)
718
+ class?: string | undefined;
719
+ // (undocumented)
720
+ disabled?: boolean | undefined;
721
+ label: string;
722
+ menu: (close: () => void) => JSX.Element;
723
+ on?: boolean | undefined;
724
+ onAction?: (() => void) | undefined;
725
+ // (undocumented)
726
+ onOpenChange?: ((open: boolean) => void) | undefined;
727
+ open?: boolean | undefined;
728
+ // (undocumented)
729
+ placement?: 'bottom-start' | 'bottom-end' | 'bottom' | 'top-start' | 'top-end' | 'top' | undefined;
730
+ selected?: boolean | undefined;
731
+ tooltip?: string | null | undefined;
732
+ }
733
+
734
+ // @public
735
+ export function MenuItems(props: {
736
+ items: DropdownMenuItemConfig[];
737
+ }): JSX.Element;
738
+
739
+ // @public
740
+ export function MixerStrip(props: MixerStripProps): JSX;
741
+
742
+ // @public (undocumented)
743
+ export interface MixerStripProps {
744
+ // (undocumented)
745
+ class?: string;
746
+ // (undocumented)
747
+ color?: string;
748
+ // (undocumented)
749
+ disabled?: boolean;
750
+ level?: number;
751
+ master?: boolean;
752
+ // (undocumented)
753
+ maxVolume?: number;
754
+ // (undocumented)
755
+ minVolume?: number;
756
+ muted?: boolean;
757
+ // (undocumented)
758
+ name: string;
759
+ // (undocumented)
760
+ onPanChange?: (pan: number) => void;
761
+ // (undocumented)
762
+ onPanCommit?: (pan: number) => void;
763
+ onSelect?: () => void;
764
+ // (undocumented)
765
+ onToggleMute?: () => void;
766
+ // (undocumented)
767
+ onToggleSolo?: () => void;
768
+ // (undocumented)
769
+ onVolumeChange?: (volume: number) => void;
770
+ // (undocumented)
771
+ onVolumeCommit?: (volume: number) => void;
772
+ pan?: number;
773
+ // (undocumented)
774
+ selected?: boolean;
775
+ // (undocumented)
776
+ solo?: boolean;
777
+ volume: number;
778
+ }
779
+
780
+ // @public
781
+ export function mountBuildLabel(model: BuildLabelModel, parent?: ParentNode): HTMLElement;
782
+
783
+ // @public (undocumented)
784
+ export interface NoteDragOptions {
785
+ deltaBeats: number;
786
+ deltaRows: number;
787
+ length: number;
788
+ // (undocumented)
789
+ maxPitch: number;
790
+ // (undocumented)
791
+ minDuration?: number;
792
+ // (undocumented)
793
+ minPitch: number;
794
+ // (undocumented)
795
+ mode: 'move' | 'resize';
796
+ origin: readonly PianoRollNote[];
797
+ // (undocumented)
798
+ snap?: number;
799
+ }
800
+
801
+ // @public
802
+ export function NumberField(props: NumberFieldProps): JSX;
803
+
804
+ // @public (undocumented)
805
+ export interface NumberFieldProps {
806
+ 'aria-label'?: string;
807
+ // (undocumented)
808
+ class?: string;
809
+ // (undocumented)
810
+ disabled?: boolean;
811
+ // (undocumented)
812
+ error?: string;
813
+ // (undocumented)
814
+ label?: string;
815
+ // (undocumented)
816
+ maxValue?: number;
817
+ // (undocumented)
818
+ minValue?: number;
819
+ // (undocumented)
820
+ name?: string;
821
+ onChange?: (value: number) => void;
822
+ onCommit?: (value: number) => void;
823
+ // (undocumented)
824
+ placeholder?: string;
825
+ // (undocumented)
826
+ step?: number;
827
+ // (undocumented)
828
+ value?: number;
829
+ }
830
+
831
+ // @public
832
+ export function Panel(props: PanelProps): JSX.Element;
833
+
834
+ // @public (undocumented)
835
+ export interface PanelProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, 'title'> {
836
+ bodyClass?: string;
837
+ borderless?: boolean;
838
+ // (undocumented)
839
+ children?: JSX.Element;
840
+ flush?: boolean;
841
+ headerActions?: JSX.Element;
842
+ headingLevel?: HeadingLevel;
843
+ title?: JSX.Element;
844
+ window?: boolean;
845
+ }
846
+
847
+ // @public
848
+ export function peaksFromAudioBuffer(buffer: {
849
+ numberOfChannels: number;
850
+ getChannelData(channel: number): Float32Array;
851
+ }, bins: number): Float32Array;
852
+
853
+ // @public
854
+ export interface PeakSource {
855
+ channels: readonly Float32Array[];
856
+ }
857
+
858
+ // @public
859
+ export const Perspective: Component<ZylemIconProps>;
860
+
861
+ // @public
862
+ export function PianoRoll(props: PianoRollProps): JSX;
863
+
864
+ // @public (undocumented)
865
+ export interface PianoRollNote {
866
+ duration: number;
867
+ // (undocumented)
868
+ id: string;
869
+ pitch: number;
870
+ start: number;
871
+ velocity?: number;
872
+ }
873
+
874
+ // @public (undocumented)
875
+ export interface PianoRollProps {
876
+ // (undocumented)
877
+ beatsPerBar?: number;
878
+ // (undocumented)
879
+ class?: string;
880
+ // (undocumented)
881
+ disabled?: boolean;
882
+ length: number;
883
+ maxPitch?: number;
884
+ minPitch?: number;
885
+ newNoteDuration?: number;
886
+ // (undocumented)
887
+ notes: readonly PianoRollNote[];
888
+ onAddNote?: (note: {
889
+ pitch: number;
890
+ start: number;
891
+ duration: number;
892
+ }) => void;
893
+ onChangeNotes?: (notes: PianoRollNote[]) => void;
894
+ onCommitNotes?: (notes: PianoRollNote[]) => void;
895
+ onDeleteNotes?: (ids: string[]) => void;
896
+ onPreviewPitch?: (pitch: number) => void;
897
+ // (undocumented)
898
+ onSelect?: (ids: string[]) => void;
899
+ // (undocumented)
900
+ pixelsPerBeat?: number;
901
+ // (undocumented)
902
+ playhead?: number;
903
+ // (undocumented)
904
+ rowHeight?: number;
905
+ // (undocumented)
906
+ selectedIds?: readonly string[];
907
+ showVelocity?: boolean;
908
+ snap?: number;
909
+ }
910
+
911
+ // @public (undocumented)
912
+ export interface PickerGroup<T extends PickerItem = PickerItem> {
913
+ // (undocumented)
914
+ group: string;
915
+ // (undocumented)
916
+ items: T[];
917
+ }
918
+
919
+ // @public
920
+ export interface PickerItem {
921
+ description?: string | undefined;
922
+ // (undocumented)
923
+ disabled?: boolean | undefined;
924
+ group?: string | undefined;
925
+ icon?: string | undefined;
926
+ // (undocumented)
927
+ id: string;
928
+ // (undocumented)
929
+ label: string;
930
+ tags?: string[] | undefined;
931
+ }
932
+
933
+ // @public
934
+ export function pitchName(pitch: number): string;
935
+
936
+ // @public
937
+ export function PixelGrid(props: PixelGridProps): JSX.Element;
938
+
939
+ // @public (undocumented)
940
+ export interface PixelGridProps extends JSX.HTMLAttributes<HTMLDivElement> {
941
+ checkerCell?: number;
942
+ children?: JSX.Element;
943
+ height: number;
944
+ width: number;
945
+ zoom?: number;
946
+ }
947
+
948
+ // @public
949
+ export function PlaybackControls(props: PlaybackControlsProps): JSX.Element;
950
+
951
+ // @public (undocumented)
952
+ export interface PlaybackControlsProps {
953
+ children?: JSX.Element;
954
+ // (undocumented)
955
+ class?: string;
956
+ // (undocumented)
957
+ disabled?: boolean;
958
+ loop?: boolean;
959
+ // (undocumented)
960
+ onFastForward?: () => void;
961
+ // (undocumented)
962
+ onRewind?: () => void;
963
+ // (undocumented)
964
+ onToggleLoop?: () => void;
965
+ // (undocumented)
966
+ onTogglePlay: () => void;
967
+ // (undocumented)
968
+ playing: boolean;
969
+ }
970
+
971
+ // @public
972
+ export function Progress(props: ProgressProps): JSX;
973
+
974
+ // @public (undocumented)
975
+ export interface ProgressProps {
976
+ 'aria-label'?: string;
977
+ // (undocumented)
978
+ class?: string;
979
+ // (undocumented)
980
+ indeterminate?: boolean;
981
+ // (undocumented)
982
+ label?: string;
983
+ // (undocumented)
984
+ maxValue?: number;
985
+ // (undocumented)
986
+ minValue?: number;
987
+ // (undocumented)
988
+ showValue?: boolean;
989
+ // (undocumented)
990
+ value?: number;
991
+ }
992
+
993
+ // @public
994
+ export function PropertyList(props: PropertyListProps): JSX.Element;
995
+
996
+ // @public (undocumented)
997
+ export interface PropertyListProps {
998
+ // (undocumented)
999
+ children: JSX.Element;
1000
+ // (undocumented)
1001
+ class?: string;
1002
+ labelWidth?: string;
1003
+ }
1004
+
1005
+ // @public
1006
+ export function PropertyRow(props: PropertyRowProps): JSX.Element;
1007
+
1008
+ // @public (undocumented)
1009
+ export interface PropertyRowProps {
1010
+ children?: JSX.Element | undefined;
1011
+ isPath?: boolean | undefined;
1012
+ // (undocumented)
1013
+ label: string;
1014
+ maxPathSegments?: number | undefined;
1015
+ onPathClick?: ((fullValue: string) => void) | undefined;
1016
+ value?: string | number | JSX.Element | undefined;
1017
+ // (undocumented)
1018
+ valueClass?: string | undefined;
1019
+ }
1020
+
1021
+ // @public
1022
+ export function resolveBuildVersion(model: BuildLabelModel): string;
1023
+
1024
+ // @public
1025
+ export function resolveClipDrag(options: ResolveClipDragOptions): ClipBounds;
1026
+
1027
+ // @public (undocumented)
1028
+ export interface ResolveClipDragOptions {
1029
+ delta: number;
1030
+ length: number;
1031
+ // (undocumented)
1032
+ minLength?: number;
1033
+ // (undocumented)
1034
+ mode: 'move' | 'start' | 'end';
1035
+ // (undocumented)
1036
+ origin: ClipBounds;
1037
+ // (undocumented)
1038
+ snap?: number;
1039
+ }
1040
+
1041
+ // @public (undocumented)
1042
+ export interface ResolvedLayer {
1043
+ anchorRef: (element: Element) => void;
1044
+ mount: Accessor<HTMLElement | undefined>;
1045
+ zIndex: Accessor<string>;
1046
+ }
1047
+
1048
+ // @public
1049
+ export function resolveLayerRoot(node: Node | null | undefined): ShadowRoot | HTMLElement;
1050
+
1051
+ // @public
1052
+ export function resolveNoteDrag(options: NoteDragOptions): PianoRollNote[];
1053
+
1054
+ // @public (undocumented)
1055
+ export interface RulerTick {
1056
+ label?: string;
1057
+ // (undocumented)
1058
+ major: boolean;
1059
+ // (undocumented)
1060
+ time: number;
1061
+ }
1062
+
1063
+ // @public (undocumented)
1064
+ export interface RulerTickOptions {
1065
+ length: number;
1066
+ minLabelSpacing?: number;
1067
+ minMinorSpacing?: number;
1068
+ // (undocumented)
1069
+ scale: TimeScale;
1070
+ }
1071
+
1072
+ // @public
1073
+ export function rulerTicks(options: RulerTickOptions): RulerTick[];
1074
+
1075
+ // @public
1076
+ export function ScrollArea(props: ScrollAreaProps): JSX.Element;
1077
+
1078
+ // @public (undocumented)
1079
+ export interface ScrollAreaProps extends JSX.HTMLAttributes<HTMLDivElement> {
1080
+ // (undocumented)
1081
+ children?: JSX.Element;
1082
+ direction?: 'vertical' | 'horizontal' | 'both';
1083
+ }
1084
+
1085
+ // @public
1086
+ export function SearchInput(props: SearchInputProps): JSX.Element;
1087
+
1088
+ // @public (undocumented)
1089
+ export interface SearchInputProps {
1090
+ // (undocumented)
1091
+ 'aria-label'?: string;
1092
+ // (undocumented)
1093
+ class?: string;
1094
+ // (undocumented)
1095
+ onInput?: (value: string) => void;
1096
+ // (undocumented)
1097
+ onKeyDown?: JSX.EventHandlerUnion<HTMLInputElement, KeyboardEvent>;
1098
+ // (undocumented)
1099
+ placeholder?: string;
1100
+ ref?: (element: HTMLInputElement) => void;
1101
+ // (undocumented)
1102
+ value?: string;
1103
+ }
1104
+
1105
+ // @public
1106
+ export function Select(props: SelectProps): JSX;
1107
+
1108
+ // @public (undocumented)
1109
+ export interface SelectOption {
1110
+ // (undocumented)
1111
+ disabled?: boolean;
1112
+ // (undocumented)
1113
+ label: string;
1114
+ // (undocumented)
1115
+ value: string;
1116
+ }
1117
+
1118
+ // @public (undocumented)
1119
+ export interface SelectProps {
1120
+ 'aria-label'?: string;
1121
+ // (undocumented)
1122
+ class?: string;
1123
+ // (undocumented)
1124
+ disabled?: boolean;
1125
+ // (undocumented)
1126
+ label?: string;
1127
+ // (undocumented)
1128
+ name?: string;
1129
+ // (undocumented)
1130
+ onChange?: (value: string | null) => void;
1131
+ // (undocumented)
1132
+ options: SelectOption[];
1133
+ // (undocumented)
1134
+ placeholder?: string;
1135
+ // (undocumented)
1136
+ value?: string;
1137
+ }
1138
+
1139
+ // @public
1140
+ export function Separator(props: SeparatorProps): JSX;
1141
+
1142
+ // @public (undocumented)
1143
+ export interface SeparatorProps {
1144
+ // (undocumented)
1145
+ class?: string;
1146
+ // (undocumented)
1147
+ orientation?: 'horizontal' | 'vertical';
1148
+ }
1149
+
1150
+ // @public
1151
+ export function Sidebar(props: SidebarProps): JSX.Element;
1152
+
1153
+ // @public (undocumented)
1154
+ export namespace Sidebar {
1155
+ var // (undocumented)
1156
+ Section: typeof SidebarSection;
1157
+ var // (undocumented)
1158
+ Item: typeof SidebarItem;
1159
+ }
1160
+
1161
+ // @public (undocumented)
1162
+ export function SidebarItem(props: SidebarItemProps): JSX.Element;
1163
+
1164
+ // @public
1165
+ export const sidebarItemClass = "sidebar-item";
1166
+
1167
+ // @public (undocumented)
1168
+ export interface SidebarItemProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> {
1169
+ active?: boolean;
1170
+ // (undocumented)
1171
+ children?: JSX.Element;
1172
+ }
1173
+
1174
+ // @public (undocumented)
1175
+ export interface SidebarProps extends JSX.HTMLAttributes<HTMLElement> {
1176
+ as?: 'aside' | 'nav';
1177
+ borderless?: boolean;
1178
+ // (undocumented)
1179
+ children?: JSX.Element;
1180
+ }
1181
+
1182
+ // @public
1183
+ export function SidebarSection(props: SidebarSectionProps): JSX.Element;
1184
+
1185
+ // @public (undocumented)
1186
+ export interface SidebarSectionProps {
1187
+ // (undocumented)
1188
+ children?: JSX.Element;
1189
+ // (undocumented)
1190
+ class?: string;
1191
+ headingLevel?: HeadingLevel;
1192
+ // (undocumented)
1193
+ title?: JSX.Element;
1194
+ }
1195
+
1196
+ // @public
1197
+ export const SideviewPerspective: Component<ZylemIconProps>;
1198
+
1199
+ // @public
1200
+ export function Slider(props: SliderProps): JSX;
1201
+
1202
+ // @public (undocumented)
1203
+ export interface SliderProps {
1204
+ 'aria-label'?: string;
1205
+ // (undocumented)
1206
+ class?: string;
1207
+ // (undocumented)
1208
+ disabled?: boolean;
1209
+ // (undocumented)
1210
+ label?: string;
1211
+ // (undocumented)
1212
+ maxValue?: number;
1213
+ // (undocumented)
1214
+ minValue?: number;
1215
+ // (undocumented)
1216
+ onChange?: (value: number) => void;
1217
+ onCommit?: (value: number) => void;
1218
+ // (undocumented)
1219
+ showValue?: boolean;
1220
+ // (undocumented)
1221
+ step?: number;
1222
+ // (undocumented)
1223
+ value?: number;
1224
+ }
1225
+
1226
+ // @public (undocumented)
1227
+ export interface SnapOptions {
1228
+ // (undocumented)
1229
+ max: number;
1230
+ // (undocumented)
1231
+ min: number;
1232
+ // (undocumented)
1233
+ step: number;
1234
+ }
1235
+
1236
+ // @public
1237
+ export function snapSize(value: number, options: SnapOptions): number;
1238
+
1239
+ // @public
1240
+ export function snapTime(t: number, snap?: number): number;
1241
+
1242
+ // @public
1243
+ export const SPRITE_SIZE_PRESETS: readonly number[];
1244
+
1245
+ // @public
1246
+ export interface SpriteSize {
1247
+ // (undocumented)
1248
+ height: number;
1249
+ // (undocumented)
1250
+ width: number;
1251
+ }
1252
+
1253
+ // @public
1254
+ export function SpriteSizePicker(props: SpriteSizePickerProps): JSX;
1255
+
1256
+ // @public (undocumented)
1257
+ export interface SpriteSizePickerProps {
1258
+ // (undocumented)
1259
+ class?: string;
1260
+ // (undocumented)
1261
+ height: number;
1262
+ max?: number;
1263
+ min?: number;
1264
+ // (undocumented)
1265
+ onChange: (size: SpriteSize) => void;
1266
+ presets?: readonly number[];
1267
+ showFields?: boolean;
1268
+ stageSize?: number;
1269
+ step?: number;
1270
+ // (undocumented)
1271
+ width: number;
1272
+ }
1273
+
1274
+ // @public
1275
+ export function Swatch(props: SwatchProps): JSX;
1276
+
1277
+ // @public (undocumented)
1278
+ export interface SwatchProps {
1279
+ // (undocumented)
1280
+ class?: string;
1281
+ color: string;
1282
+ // (undocumented)
1283
+ disabled?: boolean;
1284
+ label?: string;
1285
+ // (undocumented)
1286
+ onClick?: (event: MouseEvent) => void;
1287
+ // (undocumented)
1288
+ selected?: boolean;
1289
+ }
1290
+
1291
+ // @public
1292
+ export function Switch(props: SwitchProps): JSX;
1293
+
1294
+ // @public (undocumented)
1295
+ export interface SwitchProps {
1296
+ 'aria-label'?: string;
1297
+ // (undocumented)
1298
+ checked?: boolean;
1299
+ // (undocumented)
1300
+ class?: string;
1301
+ // (undocumented)
1302
+ defaultChecked?: boolean;
1303
+ // (undocumented)
1304
+ disabled?: boolean;
1305
+ // (undocumented)
1306
+ label?: string;
1307
+ // (undocumented)
1308
+ name?: string;
1309
+ // (undocumented)
1310
+ onChange?: (checked: boolean) => void;
1311
+ }
1312
+
1313
+ // @public
1314
+ export function Tabs(props: TabsProps): JSX.Element;
1315
+
1316
+ // @public (undocumented)
1317
+ export namespace Tabs {
1318
+ var // (undocumented)
1319
+ List: typeof TabsList;
1320
+ var // (undocumented)
1321
+ Trigger: typeof TabsTrigger;
1322
+ var // (undocumented)
1323
+ Content: typeof TabsContent;
1324
+ }
1325
+
1326
+ // @public (undocumented)
1327
+ export function TabsContent(props: {
1328
+ value: string;
1329
+ children: JSX.Element;
1330
+ class?: string;
1331
+ }): JSX.Element;
1332
+
1333
+ // @public (undocumented)
1334
+ export function TabsList(props: {
1335
+ children: JSX.Element;
1336
+ class?: string;
1337
+ }): JSX.Element;
1338
+
1339
+ // @public (undocumented)
1340
+ export interface TabsProps {
1341
+ // (undocumented)
1342
+ 'aria-label'?: string;
1343
+ // (undocumented)
1344
+ children: JSX.Element;
1345
+ // (undocumented)
1346
+ class?: string;
1347
+ // (undocumented)
1348
+ defaultValue?: string;
1349
+ // (undocumented)
1350
+ onChange?: (value: string) => void;
1351
+ // (undocumented)
1352
+ value?: string;
1353
+ }
1354
+
1355
+ // @public (undocumented)
1356
+ export function TabsTrigger(props: TabsTriggerProps): JSX.Element;
1357
+
1358
+ // @public (undocumented)
1359
+ export interface TabsTriggerProps {
1360
+ // (undocumented)
1361
+ children: JSX.Element;
1362
+ // (undocumented)
1363
+ class?: string;
1364
+ closeLabel?: string;
1365
+ dirty?: boolean;
1366
+ // (undocumented)
1367
+ disabled?: boolean;
1368
+ onClose?: () => void;
1369
+ // (undocumented)
1370
+ value: string;
1371
+ }
1372
+
1373
+ // @public
1374
+ export function TextField(props: TextFieldProps): JSX.Element;
1375
+
1376
+ // @public (undocumented)
1377
+ export interface TextFieldProps {
1378
+ 'aria-label'?: string;
1379
+ // (undocumented)
1380
+ autofocus?: boolean;
1381
+ // (undocumented)
1382
+ class?: string;
1383
+ // (undocumented)
1384
+ disabled?: boolean;
1385
+ // (undocumented)
1386
+ error?: string;
1387
+ // (undocumented)
1388
+ label?: string;
1389
+ // (undocumented)
1390
+ multiline?: boolean;
1391
+ // (undocumented)
1392
+ name?: string;
1393
+ // (undocumented)
1394
+ onBlur?: JSX.EventHandlerUnion<HTMLInputElement | HTMLTextAreaElement, FocusEvent>;
1395
+ onChange?: (value: string) => void;
1396
+ onCommit?: (value: string) => void;
1397
+ // (undocumented)
1398
+ onInput?: JSX.EventHandlerUnion<HTMLInputElement | HTMLTextAreaElement, InputEvent>;
1399
+ // (undocumented)
1400
+ onKeyDown?: JSX.EventHandlerUnion<HTMLInputElement | HTMLTextAreaElement, KeyboardEvent>;
1401
+ // (undocumented)
1402
+ placeholder?: string;
1403
+ // (undocumented)
1404
+ readOnly?: boolean;
1405
+ // (undocumented)
1406
+ required?: boolean;
1407
+ // (undocumented)
1408
+ rows?: number;
1409
+ // (undocumented)
1410
+ type?: string;
1411
+ // (undocumented)
1412
+ value?: string;
1413
+ }
1414
+
1415
+ // @public
1416
+ export function TimelineClip(props: TimelineClipProps): JSX.Element;
1417
+
1418
+ // @public (undocumented)
1419
+ export interface TimelineClipChange extends ClipBounds {
1420
+ startDelta: number;
1421
+ }
1422
+
1423
+ // @public (undocumented)
1424
+ export interface TimelineClipProps {
1425
+ blend?: number;
1426
+ children?: JSX.Element;
1427
+ // (undocumented)
1428
+ class?: string;
1429
+ color?: string;
1430
+ // (undocumented)
1431
+ disabled?: boolean;
1432
+ // (undocumented)
1433
+ label?: string;
1434
+ // (undocumented)
1435
+ length: number;
1436
+ // (undocumented)
1437
+ minLength?: number;
1438
+ // (undocumented)
1439
+ movable?: boolean;
1440
+ onChange?: (change: TimelineClipChange) => void;
1441
+ onCommit?: (change: TimelineClipChange) => void;
1442
+ // (undocumented)
1443
+ onDoubleClick?: () => void;
1444
+ onSelect?: (event: MouseEvent | KeyboardEvent) => void;
1445
+ // (undocumented)
1446
+ resizable?: boolean;
1447
+ // (undocumented)
1448
+ selected?: boolean;
1449
+ // (undocumented)
1450
+ start: number;
1451
+ }
1452
+
1453
+ // @public (undocumented)
1454
+ export interface TimelineContextValue {
1455
+ deltaToTime: (dx: number) => number;
1456
+ // (undocumented)
1457
+ disabled: Accessor<boolean>;
1458
+ // (undocumented)
1459
+ headerWidth: Accessor<number>;
1460
+ length: Accessor<number>;
1461
+ pxToTime: (px: number) => number;
1462
+ // (undocumented)
1463
+ scale: Accessor<TimeScale>;
1464
+ // (undocumented)
1465
+ snap: Accessor<number | undefined>;
1466
+ // (undocumented)
1467
+ snapTime: (time: number) => number;
1468
+ // (undocumented)
1469
+ timeToPx: (time: number) => number;
1470
+ }
1471
+
1472
+ // @public (undocumented)
1473
+ export function TimelineLane(props: TimelineLaneProps): JSX.Element;
1474
+
1475
+ // @public
1476
+ export function TimelineLaneGroup(props: TimelineLaneGroupProps): JSX.Element;
1477
+
1478
+ // @public (undocumented)
1479
+ export interface TimelineLaneGroupProps {
1480
+ // (undocumented)
1481
+ children?: JSX.Element;
1482
+ // (undocumented)
1483
+ class?: string;
1484
+ // (undocumented)
1485
+ collapsed?: boolean;
1486
+ header?: JSX.Element;
1487
+ }
1488
+
1489
+ // @public (undocumented)
1490
+ export interface TimelineLaneProps {
1491
+ // (undocumented)
1492
+ children?: JSX.Element;
1493
+ // (undocumented)
1494
+ class?: string;
1495
+ dimmed?: boolean;
1496
+ header?: JSX.Element;
1497
+ // (undocumented)
1498
+ height?: number;
1499
+ onCreate?: (time: number) => void;
1500
+ onSelectEmpty?: () => void;
1501
+ // (undocumented)
1502
+ selected?: boolean;
1503
+ }
1504
+
1505
+ // @public
1506
+ export function TimelineLanes(props: TimelineLanesProps): JSX.Element;
1507
+
1508
+ // @public (undocumented)
1509
+ export interface TimelineLanesProps {
1510
+ // (undocumented)
1511
+ children?: JSX.Element;
1512
+ // (undocumented)
1513
+ class?: string;
1514
+ corner?: JSX.Element;
1515
+ // (undocumented)
1516
+ disabled?: boolean;
1517
+ headerWidth?: number;
1518
+ length: number;
1519
+ // (undocumented)
1520
+ maxPixelsPerUnit?: number;
1521
+ // (undocumented)
1522
+ minPixelsPerUnit?: number;
1523
+ onSeek?: (time: number) => void;
1524
+ onZoom?: (pixelsPerUnit: number) => void;
1525
+ // (undocumented)
1526
+ playhead?: number;
1527
+ range?: TimelineRange;
1528
+ // (undocumented)
1529
+ ref?: (element: HTMLDivElement) => void;
1530
+ // (undocumented)
1531
+ scale: TimeScale;
1532
+ snap?: number;
1533
+ }
1534
+
1535
+ // @public (undocumented)
1536
+ export interface TimelineRange {
1537
+ // (undocumented)
1538
+ end: number;
1539
+ // (undocumented)
1540
+ start: number;
1541
+ }
1542
+
1543
+ // @public
1544
+ export function TimelineTrack(props: TimelineTrackProps): JSX;
1545
+
1546
+ // @public (undocumented)
1547
+ export interface TimelineTrackProps {
1548
+ 'aria-label'?: string;
1549
+ // (undocumented)
1550
+ class?: string;
1551
+ // (undocumented)
1552
+ disabled?: boolean;
1553
+ intervals?: number;
1554
+ keyframes?: readonly number[];
1555
+ // (undocumented)
1556
+ label?: string;
1557
+ // (undocumented)
1558
+ max: number;
1559
+ // (undocumented)
1560
+ min?: number;
1561
+ // (undocumented)
1562
+ onChange?: (value: number) => void;
1563
+ // (undocumented)
1564
+ onKeyframeClick?: (time: number) => void;
1565
+ showTime?: boolean;
1566
+ // (undocumented)
1567
+ step?: number;
1568
+ ticks?: readonly number[];
1569
+ // (undocumented)
1570
+ value: number;
1571
+ valueText?: (value: number) => string;
1572
+ }
1573
+
1574
+ // @public (undocumented)
1575
+ export interface TimeScale {
1576
+ beatsPerBar?: number;
1577
+ pixelsPerUnit: number;
1578
+ // (undocumented)
1579
+ unit: TimeUnit;
1580
+ }
1581
+
1582
+ // @public
1583
+ export type TimeUnit = 'seconds' | 'beats';
1584
+
1585
+ // @public
1586
+ export function TitleBar(props: TitleBarProps): JSX.Element;
1587
+
1588
+ // @public (undocumented)
1589
+ export interface TitleBarProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, 'title' | 'onClose'>, WindowControlsProps {
1590
+ children?: JSX.Element;
1591
+ compact?: boolean;
1592
+ draggable?: boolean;
1593
+ headingLevel?: HeadingLevel;
1594
+ // (undocumented)
1595
+ title?: JSX.Element;
1596
+ }
1597
+
1598
+ // @public
1599
+ export function Toast(props: ToastProps): JSX.Element;
1600
+
1601
+ // @public (undocumented)
1602
+ export interface ToastProps {
1603
+ // (undocumented)
1604
+ class?: string;
1605
+ message?: JSX.Element | null | false;
1606
+ position?: 'top' | 'bottom';
1607
+ // (undocumented)
1608
+ tone?: ToastTone;
1609
+ }
1610
+
1611
+ // @public (undocumented)
1612
+ export type ToastTone = 'info' | 'success' | 'error';
1613
+
1614
+ // @public
1615
+ export function Toolbar(props: ToolbarProps): JSX.Element;
1616
+
1617
+ // @public
1618
+ export function ToolbarButton(props: ToolbarButtonProps): JSX.Element;
1619
+
1620
+ // @public (undocumented)
1621
+ export interface ToolbarButtonProps {
1622
+ // (undocumented)
1623
+ children: JSX.Element;
1624
+ // (undocumented)
1625
+ class?: string;
1626
+ danger?: boolean;
1627
+ // (undocumented)
1628
+ disabled?: boolean;
1629
+ // (undocumented)
1630
+ label: string;
1631
+ on?: boolean;
1632
+ // (undocumented)
1633
+ onClick?: (event: MouseEvent) => void;
1634
+ pressed?: boolean;
1635
+ selected?: boolean;
1636
+ }
1637
+
1638
+ // @public (undocumented)
1639
+ export interface ToolbarDropdownItem {
1640
+ icon: Component<{
1641
+ class?: string;
1642
+ }>;
1643
+ // (undocumented)
1644
+ id: string;
1645
+ // (undocumented)
1646
+ label: string;
1647
+ }
1648
+
1649
+ // @public
1650
+ export function ToolbarDropdownMenu(props: ToolbarDropdownMenuProps): JSX;
1651
+
1652
+ // @public (undocumented)
1653
+ export interface ToolbarDropdownMenuProps {
1654
+ items: readonly ToolbarDropdownItem[];
1655
+ on?: boolean | undefined;
1656
+ onAction?: (() => void) | undefined;
1657
+ // (undocumented)
1658
+ onChange: (id: string) => void;
1659
+ placement?: MenuButtonProps['placement'];
1660
+ // (undocumented)
1661
+ value: string;
1662
+ }
1663
+
1664
+ // @public (undocumented)
1665
+ export interface ToolbarProps extends JSX.HTMLAttributes<HTMLDivElement> {
1666
+ // (undocumented)
1667
+ children?: JSX.Element;
1668
+ // (undocumented)
1669
+ orientation?: 'horizontal' | 'vertical';
1670
+ }
1671
+
1672
+ // @public
1673
+ export function ToolboxButton(props: ToolboxButtonProps): JSX.Element;
1674
+
1675
+ // @public (undocumented)
1676
+ export interface ToolboxButtonProps {
1677
+ children: JSX.Element;
1678
+ // (undocumented)
1679
+ class?: string;
1680
+ // (undocumented)
1681
+ disabled?: boolean;
1682
+ // (undocumented)
1683
+ label: string;
1684
+ on?: boolean;
1685
+ // (undocumented)
1686
+ onClick?: (event: MouseEvent) => void;
1687
+ selected?: boolean;
1688
+ size?: ToolboxSize;
1689
+ }
1690
+
1691
+ // @public
1692
+ export function ToolboxGrid(props: ToolboxGridProps): JSX.Element;
1693
+
1694
+ // @public (undocumented)
1695
+ export interface ToolboxGridProps extends JSX.HTMLAttributes<HTMLDivElement> {
1696
+ // (undocumented)
1697
+ children: JSX.Element;
1698
+ columns?: number;
1699
+ label?: string;
1700
+ size?: ToolboxSize;
1701
+ }
1702
+
1703
+ // @public
1704
+ export type ToolboxSize = 'md' | 'lg' | 'xl';
1705
+
1706
+ // @public
1707
+ export function ToolButton(props: ToolButtonProps): JSX.Element;
1708
+
1709
+ // @public (undocumented)
1710
+ export interface ToolButtonProps {
1711
+ // (undocumented)
1712
+ class?: string;
1713
+ // (undocumented)
1714
+ disabled?: boolean;
1715
+ label?: string;
1716
+ // (undocumented)
1717
+ onClick?: (event: MouseEvent) => void;
1718
+ // (undocumented)
1719
+ selected?: boolean;
1720
+ shortcut?: string;
1721
+ // (undocumented)
1722
+ tool: ArtTool;
1723
+ }
1724
+
1725
+ // @public
1726
+ export function ToolGroup(props: ToolGroupProps): JSX.Element;
1727
+
1728
+ // @public (undocumented)
1729
+ export interface ToolGroupProps extends JSX.HTMLAttributes<HTMLDivElement> {
1730
+ // (undocumented)
1731
+ children: JSX.Element;
1732
+ label: string;
1733
+ }
1734
+
1735
+ // @public
1736
+ export function Tooltip(props: TooltipProps): JSX.Element;
1737
+
1738
+ // @public (undocumented)
1739
+ export interface TooltipProps {
1740
+ children: JSX.Element;
1741
+ content: JSX.Element;
1742
+ // (undocumented)
1743
+ openDelay?: number;
1744
+ // (undocumented)
1745
+ placement?: 'top' | 'bottom' | 'left' | 'right';
1746
+ }
1747
+
1748
+ // @public
1749
+ export const TopDownPerspective: Component<ZylemIconProps>;
1750
+
1751
+ // @public
1752
+ export function TrackHeader(props: TrackHeaderProps): JSX.Element;
1753
+
1754
+ // @public (undocumented)
1755
+ export interface TrackHeaderProps {
1756
+ actions?: JSX.Element;
1757
+ // (undocumented)
1758
+ class?: string;
1759
+ color?: string;
1760
+ detail?: string;
1761
+ // (undocumented)
1762
+ disabled?: boolean;
1763
+ icon?: JSX.Element;
1764
+ // (undocumented)
1765
+ locked?: boolean;
1766
+ muted?: boolean;
1767
+ // (undocumented)
1768
+ name: string;
1769
+ onRename?: (name: string) => void;
1770
+ onSelect?: () => void;
1771
+ // (undocumented)
1772
+ onToggleLock?: () => void;
1773
+ // (undocumented)
1774
+ onToggleMute?: () => void;
1775
+ // (undocumented)
1776
+ onToggleSolo?: () => void;
1777
+ // (undocumented)
1778
+ selected?: boolean;
1779
+ // (undocumented)
1780
+ solo?: boolean;
1781
+ }
1782
+
1783
+ // @public
1784
+ export const TRANSPARENT = "transparent";
1785
+
1786
+ // @public
1787
+ export function TransportBar(props: TransportBarProps): JSX.Element;
1788
+
1789
+ // @public (undocumented)
1790
+ export interface TransportBarProps {
1791
+ beatsPerBar?: number;
1792
+ bpm?: number;
1793
+ children?: JSX.Element;
1794
+ // (undocumented)
1795
+ class?: string;
1796
+ // (undocumented)
1797
+ disabled?: boolean;
1798
+ length: number;
1799
+ // (undocumented)
1800
+ loop?: boolean;
1801
+ // (undocumented)
1802
+ onBpmChange?: (bpm: number) => void;
1803
+ // (undocumented)
1804
+ onFastForward?: () => void;
1805
+ // (undocumented)
1806
+ onRewind?: () => void;
1807
+ // (undocumented)
1808
+ onSeek?: (time: number) => void;
1809
+ onStop?: () => void;
1810
+ // (undocumented)
1811
+ onTimeSignatureChange?: (signature: TransportTimeSignature) => void;
1812
+ // (undocumented)
1813
+ onToggleLoop?: () => void;
1814
+ // (undocumented)
1815
+ onTogglePlay: () => void;
1816
+ // (undocumented)
1817
+ playing: boolean;
1818
+ time: number;
1819
+ timeSignature?: TransportTimeSignature;
1820
+ // (undocumented)
1821
+ unit?: TimeUnit;
1822
+ }
1823
+
1824
+ // @public (undocumented)
1825
+ export interface TransportTimeSignature {
1826
+ // (undocumented)
1827
+ denominator: number;
1828
+ // (undocumented)
1829
+ numerator: number;
1830
+ }
1831
+
1832
+ // @public
1833
+ export const UNGROUPED_LABEL = "Other";
1834
+
1835
+ // @public
1836
+ export function useLayer(tier: LayerTier, rank?: Accessor<number> | number): ResolvedLayer;
1837
+
1838
+ // @public
1839
+ export function useTimeline(): TimelineContextValue;
1840
+
1841
+ // @public
1842
+ export const ViewBottom: Component<ZylemIconProps>;
1843
+
1844
+ // @public
1845
+ export const ViewIsoLeftBottom: Component<ZylemIconProps>;
1846
+
1847
+ // @public
1848
+ export const ViewIsoLeftTop: Component<ZylemIconProps>;
1849
+
1850
+ // @public
1851
+ export const ViewIsoRightBottom: Component<ZylemIconProps>;
1852
+
1853
+ // @public
1854
+ export const ViewIsoRightTop: Component<ZylemIconProps>;
1855
+
1856
+ // @public
1857
+ export const ViewLeft: Component<ZylemIconProps>;
1858
+
1859
+ // @public
1860
+ export const ViewRight: Component<ZylemIconProps>;
1861
+
1862
+ // @public
1863
+ export const ViewTop: Component<ZylemIconProps>;
1864
+
1865
+ // @public
1866
+ export function Waveform(props: WaveformProps): JSX;
1867
+
1868
+ // @public (undocumented)
1869
+ export interface WaveformProps {
1870
+ buffer?: {
1871
+ duration: number;
1872
+ numberOfChannels: number;
1873
+ getChannelData(channel: number): Float32Array;
1874
+ };
1875
+ // (undocumented)
1876
+ class?: string;
1877
+ color?: string;
1878
+ // (undocumented)
1879
+ disabled?: boolean;
1880
+ duration?: number;
1881
+ // (undocumented)
1882
+ height?: number;
1883
+ // (undocumented)
1884
+ onRegionChange?: (region: WaveformRegion) => void;
1885
+ // (undocumented)
1886
+ onRegionCommit?: (region: WaveformRegion) => void;
1887
+ onSeek?: (seconds: number) => void;
1888
+ peaks?: ArrayLike<number>;
1889
+ playhead?: number;
1890
+ region?: WaveformRegion;
1891
+ }
1892
+
1893
+ // @public (undocumented)
1894
+ export interface WaveformRegion {
1895
+ // (undocumented)
1896
+ end: number;
1897
+ start: number;
1898
+ }
1899
+
1900
+ // @public
1901
+ export function WindowControls(props: WindowControlsProps): JSX;
1902
+
1903
+ // @public (undocumented)
1904
+ export interface WindowControlsProps {
1905
+ closeLabel?: string | undefined;
1906
+ closeTestId?: string | undefined;
1907
+ collapsed?: boolean | undefined;
1908
+ dock?: DockPosition | undefined;
1909
+ dockOptions?: readonly DockOption[] | undefined;
1910
+ // (undocumented)
1911
+ onClose?: (() => void) | undefined;
1912
+ // (undocumented)
1913
+ onCollapse?: (() => void) | undefined;
1914
+ onDock?: ((position: DockPosition) => void) | undefined;
1915
+ }
1916
+
1917
+ // @public (undocumented)
1918
+ export interface ZylemIconOptions {
1919
+ className?: string;
1920
+ filled?: boolean;
1921
+ viewBox?: string;
1922
+ }
1923
+
1924
+ // @public (undocumented)
1925
+ export interface ZylemIconProps extends JSX.SvgSVGAttributes<SVGSVGElement> {
1926
+ // (undocumented)
1927
+ absoluteStrokeWidth?: boolean;
1928
+ // (undocumented)
1929
+ color?: string;
1930
+ // (undocumented)
1931
+ size?: string | number;
1932
+ // (undocumented)
1933
+ strokeWidth?: string | number;
1934
+ }
1935
+
1936
+ // (No @packageDocumentation comment for this package)
1937
+
1938
+ ```