@rcarls/rc-webcomponents 0.0.0-next-20260921045401

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/src/solid.d.ts ADDED
@@ -0,0 +1,1217 @@
1
+ /**
2
+ * SolidJS JSX type augmentation for rc-webcomponents.
3
+ *
4
+ * Import this file once in your SolidJS project (e.g. in vite.config.ts or
5
+ * a global types file):
6
+ *
7
+ * /// <reference types="@rcarls/rc-webcomponents/solid" />
8
+ *
9
+ * Ref types use HTMLElement intersections — not LitElement — so TypeScript
10
+ * resolves correctly without requiring `lit` in your tsconfig paths.
11
+ *
12
+ * Boolean attributes are typed as `boolean | string` because SolidJS passes
13
+ * `""` (empty string) for a boolean `true`.
14
+ */
15
+
16
+ import type { RCTextareaPlugin } from '@rcarls/rc-textarea';
17
+
18
+ /** Public API surface of `<rc-disclosure>`. */
19
+ export type RCDisclosureRef = HTMLElement & {
20
+ open: boolean;
21
+ };
22
+
23
+ export type RCDisclosureToggleDetail = {
24
+ open: boolean;
25
+ };
26
+
27
+ /** Public API surface of `<rc-button>`. */
28
+ export type RCButtonRef = HTMLElement & {
29
+ disabled: boolean;
30
+ pending: boolean;
31
+ progress: boolean;
32
+ progressValue: number | undefined;
33
+ toggle: boolean;
34
+ selected: boolean;
35
+ defaultSelected: boolean;
36
+ iconOnly: boolean;
37
+ fullWidth: boolean;
38
+ };
39
+
40
+ /** Public API surface of `<rc-card>`. */
41
+ export type RCCardOrientation = 'vertical' | 'horizontal';
42
+
43
+ export type RCCardRef = HTMLElement & {
44
+ orientation: RCCardOrientation;
45
+ selected: boolean;
46
+ disabled: boolean;
47
+ interactive: boolean;
48
+ actionTarget: string;
49
+ };
50
+
51
+ export type RCScrollerAxis = 'block' | 'inline' | 'both';
52
+ export type RCScrollerLayout = 'none' | 'content';
53
+
54
+ /** Public API surface of `<rc-scroller>`. */
55
+ export type RCScrollerRef = HTMLElement & {
56
+ axis: RCScrollerAxis;
57
+ layout: RCScrollerLayout;
58
+ readonly atBlockStart: boolean;
59
+ readonly atBlockEnd: boolean;
60
+ readonly atInlineStart: boolean;
61
+ readonly atInlineEnd: boolean;
62
+ };
63
+
64
+ export type RCListVariant = 'standard' | 'segmented';
65
+ export type RCListSelection = 'none' | 'single' | 'multiple';
66
+
67
+ /** Public API surface of `<rc-list>`. */
68
+ export type RCListRef = HTMLElement & {
69
+ variant: RCListVariant;
70
+ selection: RCListSelection;
71
+ };
72
+
73
+ /** Public API surface of `<rc-list-item>`. */
74
+ export type RCListItemRef = HTMLElement & {
75
+ selected: boolean;
76
+ disabled: boolean;
77
+ interactive: boolean;
78
+ actionTarget: string;
79
+ };
80
+
81
+ export type RCSwitchChangeDetail = {
82
+ checked: boolean;
83
+ };
84
+
85
+ export type RCSwitchRef = HTMLElement & {
86
+ checked: boolean;
87
+ defaultChecked: boolean;
88
+ disabled: boolean;
89
+ icons: boolean;
90
+ showOnlySelectedIcon: boolean;
91
+ };
92
+
93
+ export type RCSegmentedButtonChangeDetail = {
94
+ value: string;
95
+ };
96
+
97
+ export type RCSegmentedButtonRef = HTMLElement & {
98
+ value: string;
99
+ defaultValue: string;
100
+ disabled: boolean;
101
+ orientation: 'horizontal' | 'vertical';
102
+ };
103
+
104
+ export type RCChipVariant = 'assist' | 'filter' | 'input' | 'suggestion';
105
+
106
+ export type RCChipChangeDetail = {
107
+ selected: boolean;
108
+ };
109
+
110
+ export type RCChipRemoveDetail = {
111
+ chip: HTMLElement;
112
+ };
113
+
114
+ export type RCChipGroupLayout = 'auto' | 'wrap' | 'scroll';
115
+ export type RCChipGroupKind = 'generic' | 'assist' | 'filter';
116
+ export type RCChipGroupSelection = 'none' | 'single' | 'multiple';
117
+
118
+ export type RCChipGroupToggleDetail = {
119
+ expanded: boolean;
120
+ };
121
+
122
+ export type RCButtonToggleDetail = {
123
+ selected: boolean;
124
+ };
125
+
126
+ export type RCChipRef = HTMLElement & {
127
+ variant: RCChipVariant;
128
+ selected: boolean;
129
+ defaultSelected: boolean;
130
+ disabled: boolean;
131
+ readonly: boolean;
132
+ removable: boolean;
133
+ };
134
+
135
+ export type RCChipGroupRef = HTMLElement & {
136
+ layout: RCChipGroupLayout;
137
+ maxRows: number;
138
+ kind: RCChipGroupKind;
139
+ selection: RCChipGroupSelection;
140
+ expanded: boolean;
141
+ defaultExpanded: boolean;
142
+ label: string;
143
+ showAllLabel: string;
144
+ showLessLabel: string;
145
+ };
146
+
147
+ export type RCSnackbarQueuePolicy = 'queue' | 'replace';
148
+ export type RCSnackbarCloseReason = 'action' | 'api' | 'timeout' | 'replace' | 'clear';
149
+
150
+ export type RCSnackbarShowOptions = {
151
+ message: string;
152
+ actionLabel?: string;
153
+ duration?: number;
154
+ };
155
+
156
+ export type RCSnackbarActionDetail = {
157
+ message: string;
158
+ };
159
+
160
+ export type RCSnackbarCloseDetail = {
161
+ reason: RCSnackbarCloseReason;
162
+ message: string;
163
+ };
164
+
165
+ export type RCSnackbarRef = HTMLElement & {
166
+ open: boolean;
167
+ message: string;
168
+ actionLabel: string;
169
+ duration: number;
170
+ queuePolicy: RCSnackbarQueuePolicy;
171
+ show(message: string | RCSnackbarShowOptions): void;
172
+ close(reason?: RCSnackbarCloseReason): void;
173
+ clear(): void;
174
+ };
175
+
176
+ /** Public API surface of `<rc-accordion>`. */
177
+ export type RCAccordionRef = HTMLElement & {
178
+ multiple: boolean;
179
+ };
180
+
181
+ /** Public API surface of `<rc-listbox>`. */
182
+ export type RCListboxRef = HTMLElement & {
183
+ multiple: boolean;
184
+ checkmark: boolean;
185
+ filterStrategy: 'prefix' | 'contains' | ((label: string, query: string) => boolean);
186
+ value: RCSelectValue;
187
+ defaultValue: RCSelectValue | undefined;
188
+ options: RCListboxOption[];
189
+ readonly allOptions: ReadonlyArray<RCListboxOption>;
190
+ readonly filteredOptions: ReadonlyArray<RCListboxOption>;
191
+ readonly selectedValues: string[];
192
+ readonly navigableItems: Element[];
193
+ toggleOption(value: string): void;
194
+ clearSelection(): void;
195
+ filterOptions(text: string): void;
196
+ clearFilter(): void;
197
+ setCreateOption(label: string | null): void;
198
+ };
199
+
200
+ /** Public API surface of `<rc-select>`. */
201
+ export type RCSelectOption = {
202
+ kind?: 'option';
203
+ value: string;
204
+ label: string;
205
+ disabled?: boolean;
206
+ data?: unknown;
207
+ };
208
+
209
+ export type RCListboxActionOption<Action extends string = string> = {
210
+ kind: 'action';
211
+ action: Action;
212
+ value: string;
213
+ label: string;
214
+ disabled?: boolean;
215
+ data?: unknown;
216
+ };
217
+
218
+ export type RCListboxOption = RCSelectOption | RCListboxActionOption;
219
+
220
+ export type RCSelectValue = string | string[];
221
+
222
+ export type RCSelectChangeDetail = {
223
+ value: RCSelectValue;
224
+ selectedValues: string[];
225
+ selectedOptions: RCSelectOption[];
226
+ };
227
+
228
+ export type RCListboxSelectChangeDetail = RCSelectChangeDetail & {
229
+ reason: 'select';
230
+ selected: boolean;
231
+ optionValue: string;
232
+ option: RCSelectOption;
233
+ };
234
+
235
+ export type RCListboxActionChangeDetail<Action extends string = string> = RCSelectChangeDetail & {
236
+ reason: 'action';
237
+ selected: false;
238
+ optionValue: string;
239
+ option: RCListboxActionOption<Action>;
240
+ action: Action;
241
+ };
242
+
243
+ export type RCListboxChangeDetail = RCListboxSelectChangeDetail | RCListboxActionChangeDetail;
244
+
245
+ export type RCSelectRef = HTMLElement & {
246
+ open: boolean;
247
+ multiple: boolean;
248
+ disabled: boolean;
249
+ required: boolean;
250
+ placeholder: string;
251
+ display: 'auto' | 'chips' | 'compact';
252
+ popupMode: 'popover' | 'dialog';
253
+ dialogConfirmLabel: string;
254
+ dialogCancelLabel: string;
255
+ dialogCancelButton: 'visible' | 'hidden';
256
+ value: RCSelectValue;
257
+ defaultValue: RCSelectValue | undefined;
258
+ options: RCListboxOption[] | undefined;
259
+ readonly selectedValues: string[];
260
+ openPopup(): void;
261
+ closePopup(returnFocus?: boolean): void;
262
+ focus(options?: FocusOptions): void;
263
+ blur(): void;
264
+ };
265
+
266
+ /** Public API surface of `<rc-combobox>`. */
267
+ export type RCComboboxRef = RCSelectRef & {
268
+ allowCreate: boolean;
269
+ filterStrategy: 'prefix' | 'contains' | ((label: string, query: string) => boolean);
270
+ };
271
+
272
+ export type RCComboboxCreateDetail = {
273
+ text: string;
274
+ };
275
+
276
+ /** Public API surface of `<rc-dialog>`. */
277
+ export type RCDialogResizeOrigin =
278
+ | ''
279
+ | 'top'
280
+ | 'right'
281
+ | 'bottom'
282
+ | 'left'
283
+ | 'top-left'
284
+ | 'top-right'
285
+ | 'bottom-left'
286
+ | 'bottom-right';
287
+
288
+ export type RCDialogRef = HTMLElement & {
289
+ open: boolean | undefined;
290
+ defaultOpen: boolean;
291
+ variant: 'standard' | 'fullscreen';
292
+ movable: boolean;
293
+ moveHandle: string;
294
+ moveBounds: 'viewport' | 'parent';
295
+ moveStep: number;
296
+ resize: 'none' | 'both' | 'horizontal' | 'vertical';
297
+ resizeOrigin: RCDialogResizeOrigin;
298
+ resizeHandle: string;
299
+ resizeThreshold: number;
300
+ resizeStep: number;
301
+ closedBy: 'any' | 'closerequest' | 'none' | '';
302
+ lightDismiss: boolean;
303
+ readonly returnValue: string;
304
+ showModal(): void;
305
+ show(): void;
306
+ close(returnValue?: string): void;
307
+ requestClose(returnValue?: string): void;
308
+ };
309
+
310
+ /** Detail shape for `rc-bottom-sheet-snap`. */
311
+ export type RCBottomSheetSnapDetail = {
312
+ /** Index into the resolved snap-point list selected as the target. */
313
+ index: number;
314
+
315
+ /** Target height, in pixels. */
316
+ height: number;
317
+
318
+ /** Whether the snap came from a drag release or a `snapTo()` call. */
319
+ trigger: 'drag' | 'api';
320
+ };
321
+
322
+ export type RCBottomSheetResizeStartDetail = {
323
+ height: number;
324
+ inputType: 'pointer' | 'keyboard';
325
+ };
326
+
327
+ /** Public API surface of `<rc-bottom-sheet>`. */
328
+ export type RCBottomSheetRef = RCDialogRef & {
329
+ snapPoints: string;
330
+ swipeDismiss: boolean;
331
+ swipeVelocity: number;
332
+ snapTo(index: number, behavior?: 'animated' | 'instant'): void;
333
+ };
334
+
335
+ export type RCDialogToggleDetail = {
336
+ open: boolean;
337
+ returnValue: string;
338
+ };
339
+
340
+ export type RCDialogCloseDetail = {
341
+ returnValue: string;
342
+ };
343
+
344
+ /** Public API surface of `<rc-menu>`. */
345
+ export type RCMenuRef = HTMLElement & {
346
+ label: string;
347
+ };
348
+
349
+ export type RCMenuActivateDetail = {
350
+ item: HTMLElement;
351
+ value: string;
352
+ text: string;
353
+ };
354
+
355
+ export type RCMenuCloseDetail = {
356
+ reason: 'escape';
357
+ };
358
+
359
+ export type RCAdaptiveMenuToggleDetail = {
360
+ open: boolean;
361
+ };
362
+
363
+ /** Public API surface of `<rc-adaptive-menu>`. */
364
+ export type RCAdaptiveMenuRef = HTMLElement & {
365
+ label: string;
366
+ maxShown: number;
367
+ open: boolean;
368
+ defaultOpen: boolean;
369
+ orientation: 'horizontal' | 'vertical';
370
+ overflowLabel: string;
371
+ readonly $actions: HTMLElement[];
372
+ readonly $promotedActions: HTMLElement[];
373
+ readonly $overflowedActions: HTMLElement[];
374
+ openMenu(focus?: 'first' | 'last' | 'none'): void;
375
+ closeMenu(returnFocus?: boolean): void;
376
+ toggleMenu(focus?: 'first' | 'last' | 'none'): void;
377
+ };
378
+
379
+ /** Public API surface of `<rc-menu-button>`. */
380
+ export type RCMenuButtonPlacement =
381
+ | 'top'
382
+ | 'top-start'
383
+ | 'top-end'
384
+ | 'bottom'
385
+ | 'bottom-start'
386
+ | 'bottom-end'
387
+ | 'left'
388
+ | 'left-start'
389
+ | 'left-end'
390
+ | 'right'
391
+ | 'right-start'
392
+ | 'right-end';
393
+
394
+ export type RCMenuButtonRef = HTMLElement & {
395
+ open: boolean | undefined;
396
+ defaultOpen: boolean;
397
+ orientation: 'horizontal' | 'vertical' | undefined;
398
+ placement: RCMenuButtonPlacement;
399
+ };
400
+
401
+ export type RCMenuButtonToggleDetail = {
402
+ open: boolean;
403
+ };
404
+
405
+ /** Public API surface of `<rc-fab-menu>`. */
406
+ export type RCFabMenuRef = RCMenuButtonRef & {
407
+ position: 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start';
408
+ };
409
+
410
+ export type RCFabMenuToggleDetail = RCMenuButtonToggleDetail;
411
+
412
+ /** Public API surface of `<rc-navigation-bar>`. */
413
+ export type RCNavigationBarRef = HTMLElement & {
414
+ activeSelector: string;
415
+ indicatorTarget: string;
416
+ };
417
+
418
+ /** Public API surface of `<rc-navigation-rail>`. */
419
+ export type RCNavigationRailRef = RCNavigationBarRef & {
420
+ expanded: boolean;
421
+ defaultExpanded: boolean;
422
+ expand(): void;
423
+ collapse(): void;
424
+ toggleExpanded(): void;
425
+ };
426
+
427
+ export type RCNavigationRailToggleDetail = {
428
+ expanded: boolean;
429
+ };
430
+
431
+ /** Public API surface of `<rc-menubar>`. */
432
+ export type RCMenubarRef = HTMLElement & {
433
+ label: string;
434
+ orientation: 'horizontal' | 'vertical';
435
+ };
436
+
437
+ /** Public API surface of `<rc-toolbar>`. */
438
+ export type RCToolbarRef = HTMLElement & {
439
+ label: string;
440
+ orientation: 'horizontal' | 'vertical';
441
+ };
442
+
443
+ /** Public API surface of `<rc-splitter>`. */
444
+ export type RCSplitterRef = HTMLElement & {
445
+ label: string;
446
+ orientation: 'horizontal' | 'vertical';
447
+ mode: 'length' | 'percent' | 'fixed';
448
+ step: number;
449
+ min: number;
450
+ max: number | undefined;
451
+ value: number;
452
+ defaultValue: number | undefined;
453
+ fixed: boolean;
454
+ collapsible: boolean;
455
+ snapPoints: string;
456
+ swipeVelocity: number;
457
+ snapTo(index: number, behavior?: 'animated' | 'instant'): void;
458
+ };
459
+
460
+ export type RCTextareaRef = HTMLElement & {
461
+ value: string;
462
+ defaultValue: string | undefined;
463
+ plugin: RCTextareaPlugin | null;
464
+ lineNumbers: boolean;
465
+ gutter: boolean;
466
+ wordWrap: boolean;
467
+ autoGrow: boolean;
468
+ readOnly: boolean;
469
+ usePlugin(plugin: RCTextareaPlugin): void;
470
+ removePlugin(): void;
471
+ wrapSelection(prefix: string, suffix: string): void;
472
+ replaceSelection(text: string): void;
473
+ };
474
+
475
+ export type RCMarkdownEditorRef = HTMLElement & {
476
+ value: string;
477
+ defaultValue: string;
478
+ toolbar: boolean;
479
+ sourceMode: boolean;
480
+ defaultSourceMode: boolean;
481
+ readOnly: boolean;
482
+ };
483
+
484
+ export type RCMarkdownEditorFormats = {
485
+ bold?: boolean;
486
+ italic?: boolean;
487
+ underline?: boolean;
488
+ strikethrough?: boolean;
489
+ code?: boolean;
490
+ link?: boolean;
491
+ heading?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | null;
492
+ blockquote?: boolean;
493
+ bulletList?: boolean;
494
+ orderedList?: boolean;
495
+ codeBlock?: boolean;
496
+ codeLanguage?: string | null;
497
+ };
498
+
499
+ export type RCMarkdownEditorChangeDetail = {
500
+ value: string;
501
+ };
502
+
503
+ export type RCMarkdownEditorModeChangeDetail = {
504
+ mode: 'rich' | 'source';
505
+ };
506
+
507
+ export type RCVirtualCanvasViewRect = Readonly<{
508
+ x: number;
509
+ y: number;
510
+ width: number;
511
+ height: number;
512
+ }>;
513
+
514
+ export type RCVirtualCanvasRenderDetail = {
515
+ time: DOMHighResTimeStamp;
516
+ reason: 'animation-frame' | 'viewport-change' | 'manual';
517
+ viewRect: RCVirtualCanvasViewRect;
518
+ contentRect: RCVirtualCanvasViewRect;
519
+ };
520
+
521
+ export type RCVirtualCanvasPointerDetail = {
522
+ type: string;
523
+ clientX: number;
524
+ clientY: number;
525
+ contentX: number;
526
+ contentY: number;
527
+ viewRect: RCVirtualCanvasViewRect;
528
+ button: number;
529
+ buttons: number;
530
+ altKey: boolean;
531
+ ctrlKey: boolean;
532
+ shiftKey: boolean;
533
+ metaKey: boolean;
534
+ sourceEvent: PointerEvent | MouseEvent;
535
+ };
536
+
537
+ export type RCVirtualCanvasRef = HTMLElement & {
538
+ contentWidth: number;
539
+ contentHeight: number;
540
+ autoResizeCanvas: boolean;
541
+ renderMode: 'continuous' | 'viewport-change' | 'manual';
542
+ imageRendering: 'auto' | 'crisp-edges' | 'pixelated';
543
+ readonly canvasScaleX: number;
544
+ readonly canvasScaleY: number;
545
+ getViewRect(): RCVirtualCanvasViewRect;
546
+ scrollToContent(x: number, y: number, options?: ScrollToOptions): void;
547
+ centerOnContent(x: number, y: number, options?: ScrollToOptions): void;
548
+ clientToContent(clientX: number, clientY: number): Readonly<{ x: number; y: number }>;
549
+ contentToClient(x: number, y: number): Readonly<{ x: number; y: number }>;
550
+ requestRender(reason?: 'animation-frame' | 'viewport-change' | 'manual'): void;
551
+ };
552
+
553
+ export type RCSliderRef = HTMLElement & {
554
+ min: number;
555
+ max: number;
556
+ step: number;
557
+ value: number;
558
+ defaultValue: number | undefined;
559
+ disabled: boolean;
560
+ readonly: boolean;
561
+ display: 'float' | 'inline-start' | 'inline-end' | null;
562
+ valueText: string;
563
+ orientation: 'horizontal' | 'vertical';
564
+ };
565
+
566
+ export type RCSliderChangeDetail = {
567
+ value: number;
568
+ };
569
+
570
+ export type RCProgressRef = HTMLElement & {
571
+ readonly max: number;
572
+ value: number;
573
+ defaultValue: number | undefined;
574
+ indeterminate: boolean;
575
+ disabled: boolean;
576
+ display: 'inline-start' | 'inline-end' | 'overlay' | null;
577
+ valueText: string;
578
+ orientation: 'horizontal' | 'vertical';
579
+ };
580
+
581
+ export type RCRangeSliderRef = HTMLElement & {
582
+ min: number;
583
+ max: number;
584
+ step: number;
585
+ value: [number, number];
586
+ defaultValue: [number, number] | undefined;
587
+ disabled: boolean;
588
+ readonly: boolean;
589
+ lowLabel: string;
590
+ highLabel: string;
591
+ lowValueText: string;
592
+ highValueText: string;
593
+ display: 'float' | 'inline-start' | 'inline-end' | null;
594
+ orientation: 'horizontal' | 'vertical';
595
+ };
596
+
597
+ export type RCRangeSliderChangeDetail = {
598
+ value: [number, number];
599
+ };
600
+
601
+ export type RCTransferListOption = {
602
+ value: string;
603
+ label: string;
604
+ disabled?: boolean;
605
+ };
606
+
607
+ export type RCTransferListRef = HTMLElement & {
608
+ multiple: boolean;
609
+ compact: boolean;
610
+ availableLabel: string;
611
+ selectedLabel: string;
612
+ available: RCTransferListOption[];
613
+ selected: RCTransferListOption[];
614
+ defaultSelected: RCTransferListOption[] | undefined;
615
+ addSelected(): void;
616
+ addAll(): void;
617
+ removeSelected(): void;
618
+ clearSelected(): void;
619
+ moveSelected(delta: number): void;
620
+ };
621
+
622
+ export type RCTransferListChangeDetail = {
623
+ selected: RCTransferListOption[];
624
+ };
625
+
626
+ /** Public API surface of `<rc-app-bar>`. */
627
+ export type RCAppBarRef = HTMLElement & {
628
+ variant: 'compact' | 'expanded';
629
+ scrollBehavior: 'pinned' | 'collapse' | 'hide';
630
+ scrolled: boolean | undefined;
631
+ scrollTarget: Element | Document | Window | string | null;
632
+ scrollThreshold: number;
633
+ };
634
+
635
+ export type RCAppBarScrollDetail = {
636
+ scrolled: boolean;
637
+ };
638
+
639
+ /** Public API surface of `<rc-search-bar>`. */
640
+ export type RCSearchBarRef = HTMLElement & {
641
+ variant: 'bar' | 'view';
642
+ open: boolean;
643
+ defaultOpen: boolean;
644
+ value: string;
645
+ defaultValue: string | undefined;
646
+ debounce: number;
647
+ clearLabel: string;
648
+ placeholder: string | undefined;
649
+ showView(): void;
650
+ closeView(): void;
651
+ toggleView(): void;
652
+ };
653
+
654
+ export type RCFieldControl = HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement;
655
+
656
+ /** Public API surface of `<rc-field>`. */
657
+ export type RCFieldRef = HTMLElement & {
658
+ counter: boolean;
659
+ invalid: boolean;
660
+ readonly control: RCFieldControl | null;
661
+ focus(options?: FocusOptions): void;
662
+ blur(): void;
663
+ sync(): void;
664
+ };
665
+
666
+ export type RCSearchBarInputDetail = {
667
+ value: string;
668
+ };
669
+
670
+ export type RCSearchBarToggleDetail = {
671
+ open: boolean;
672
+ };
673
+
674
+ export type RCSearchBarSuggestionSelectDetail = {
675
+ value: string;
676
+ label: string;
677
+ };
678
+
679
+ export type RCSplitterChangeDetail = {
680
+ value: number;
681
+ valueText: string;
682
+ };
683
+
684
+ export type RCCarouselChangeTrigger = 'api' | 'button' | 'keyboard' | 'swipe';
685
+
686
+ /** Detail shape for `rc-carousel-change`. */
687
+ export type RCCarouselChangeDetail = {
688
+ index: number;
689
+ trigger: RCCarouselChangeTrigger;
690
+ };
691
+
692
+ /** Public API surface of `<rc-carousel>`. */
693
+ export type RCCarouselRef = HTMLElement & {
694
+ activeIndex: number | undefined;
695
+ defaultActiveIndex: number;
696
+ loop: boolean;
697
+ navigation: boolean;
698
+ pagination: boolean;
699
+ mouseDragging: boolean;
700
+ next(): void;
701
+ previous(): void;
702
+ goToIndex(index: number, instant?: boolean): void;
703
+ };
704
+
705
+ /** Public API surface of `<rc-carousel-item>`. */
706
+ export type RCCarouselItemRef = HTMLElement;
707
+
708
+ export type RCTextareaChangeDetail = {
709
+ value: string;
710
+ };
711
+
712
+ export type RCTextareaSelectDetail = {
713
+ selectionStart: number;
714
+ selectionEnd: number;
715
+ };
716
+
717
+ /** SolidJS JSX declarations for rc-webcomponents elements. */
718
+
719
+ declare module 'solid-js' {
720
+ namespace JSX {
721
+ interface IntrinsicElements {
722
+ 'rc-disclosure': JSX.HTMLAttributes<RCDisclosureRef> & {
723
+ open?: boolean | string;
724
+ 'on:rc-disclosure-toggle'?: (e: CustomEvent<RCDisclosureToggleDetail>) => void;
725
+ };
726
+
727
+ 'rc-accordion': JSX.HTMLAttributes<RCAccordionRef> & {
728
+ name?: string;
729
+ multiple?: boolean | string;
730
+ 'on:rc-disclosure-toggle'?: (e: CustomEvent<RCDisclosureToggleDetail>) => void;
731
+ };
732
+
733
+ 'rc-button': JSX.HTMLAttributes<RCButtonRef> & {
734
+ disabled?: boolean | string;
735
+ pending?: boolean | string;
736
+ progress?: boolean | string;
737
+ 'progress-value'?: number | string;
738
+ toggle?: boolean | string;
739
+ selected?: boolean | string;
740
+ defaultSelected?: boolean | string;
741
+ 'default-selected'?: boolean | string;
742
+ 'icon-only'?: boolean | string;
743
+ 'full-width'?: boolean | string;
744
+ 'prop:selected'?: boolean | undefined;
745
+ 'prop:defaultSelected'?: boolean | undefined;
746
+ 'on:rc-button-toggle'?: (e: CustomEvent<RCButtonToggleDetail>) => void;
747
+ };
748
+
749
+ 'rc-card': JSX.HTMLAttributes<RCCardRef> & {
750
+ orientation?: RCCardOrientation;
751
+ selected?: boolean | string;
752
+ disabled?: boolean | string;
753
+ interactive?: boolean | string;
754
+ 'action-target'?: string;
755
+ 'prop:actionTarget'?: string | undefined;
756
+ };
757
+
758
+ 'rc-scroller': JSX.HTMLAttributes<RCScrollerRef> & {
759
+ axis?: RCScrollerAxis;
760
+ layout?: RCScrollerLayout;
761
+ };
762
+
763
+ 'rc-carousel': JSX.HTMLAttributes<RCCarouselRef> & {
764
+ 'active-index'?: number | string;
765
+ defaultActiveIndex?: number | string;
766
+ 'default-active-index'?: number | string;
767
+ loop?: boolean | string;
768
+ navigation?: boolean | string;
769
+ pagination?: boolean | string;
770
+ mouseDragging?: boolean | string;
771
+ 'mouse-dragging'?: boolean | string;
772
+ 'prop:activeIndex'?: number | undefined;
773
+ 'prop:defaultActiveIndex'?: number | undefined;
774
+ 'on:rc-carousel-change'?: (e: CustomEvent<RCCarouselChangeDetail>) => void;
775
+ };
776
+
777
+ 'rc-carousel-item': JSX.HTMLAttributes<RCCarouselItemRef>;
778
+
779
+ 'rc-list': JSX.HTMLAttributes<RCListRef> & {
780
+ variant?: RCListVariant;
781
+ selection?: RCListSelection;
782
+ };
783
+
784
+ 'rc-list-item': JSX.HTMLAttributes<RCListItemRef> & {
785
+ selected?: boolean | string;
786
+ disabled?: boolean | string;
787
+ interactive?: boolean | string;
788
+ 'action-target'?: string;
789
+ 'prop:selected'?: boolean | undefined;
790
+ 'prop:disabled'?: boolean | undefined;
791
+ 'prop:interactive'?: boolean | undefined;
792
+ 'prop:actionTarget'?: string | undefined;
793
+ };
794
+
795
+ 'rc-switch': JSX.HTMLAttributes<RCSwitchRef> & {
796
+ checked?: boolean | string;
797
+ defaultChecked?: boolean | string;
798
+ 'default-checked'?: boolean | string;
799
+ disabled?: boolean | string;
800
+ icons?: boolean | string;
801
+ 'show-only-selected-icon'?: boolean | string;
802
+ 'prop:checked'?: boolean | undefined;
803
+ 'prop:defaultChecked'?: boolean | undefined;
804
+ 'on:rc-switch-change'?: (e: CustomEvent<RCSwitchChangeDetail>) => void;
805
+ };
806
+
807
+ 'rc-segmented-button': JSX.HTMLAttributes<RCSegmentedButtonRef> & {
808
+ value?: string;
809
+ defaultValue?: string;
810
+ 'default-value'?: string;
811
+ disabled?: boolean | string;
812
+ orientation?: 'horizontal' | 'vertical';
813
+ 'prop:value'?: string | undefined;
814
+ 'prop:defaultValue'?: string | undefined;
815
+ 'on:rc-segmented-button-change'?: (e: CustomEvent<RCSegmentedButtonChangeDetail>) => void;
816
+ };
817
+
818
+ 'rc-chip': JSX.HTMLAttributes<RCChipRef> & {
819
+ variant?: RCChipVariant;
820
+ selected?: boolean | string;
821
+ defaultSelected?: boolean | string;
822
+ 'default-selected'?: boolean | string;
823
+ disabled?: boolean | string;
824
+ readonly?: boolean | string;
825
+ removable?: boolean | string;
826
+ 'prop:selected'?: boolean | undefined;
827
+ 'prop:defaultSelected'?: boolean | undefined;
828
+ 'on:rc-chip-change'?: (e: CustomEvent<RCChipChangeDetail>) => void;
829
+ 'on:rc-chip-remove'?: (e: CustomEvent<RCChipRemoveDetail>) => void;
830
+ };
831
+
832
+ 'rc-chip-group': JSX.HTMLAttributes<RCChipGroupRef> & {
833
+ layout?: RCChipGroupLayout;
834
+ 'max-rows'?: number | string;
835
+ kind?: RCChipGroupKind;
836
+ selection?: RCChipGroupSelection;
837
+ expanded?: boolean | string;
838
+ defaultExpanded?: boolean | string;
839
+ 'default-expanded'?: boolean | string;
840
+ label?: string;
841
+ 'show-all-label'?: string;
842
+ 'show-less-label'?: string;
843
+ 'prop:expanded'?: boolean | undefined;
844
+ 'prop:defaultExpanded'?: boolean | undefined;
845
+ 'on:rc-chip-group-toggle'?: (e: CustomEvent<RCChipGroupToggleDetail>) => void;
846
+ };
847
+
848
+ 'rc-snackbar': JSX.HTMLAttributes<RCSnackbarRef> & {
849
+ open?: boolean | string;
850
+ message?: string;
851
+ actionLabel?: string;
852
+ 'action-label'?: string;
853
+ duration?: number | string;
854
+ queuePolicy?: RCSnackbarQueuePolicy;
855
+ 'queue-policy'?: RCSnackbarQueuePolicy;
856
+ 'prop:open'?: boolean | undefined;
857
+ 'prop:duration'?: number | undefined;
858
+ 'on:rc-snackbar-action'?: (e: CustomEvent<RCSnackbarActionDetail>) => void;
859
+ 'on:rc-snackbar-close'?: (e: CustomEvent<RCSnackbarCloseDetail>) => void;
860
+ };
861
+
862
+ 'rc-listbox': JSX.HTMLAttributes<RCListboxRef> & {
863
+ multiple?: boolean | string;
864
+ checkmark?: boolean | string;
865
+ 'filter-strategy'?: 'prefix' | 'contains';
866
+ value?: RCSelectValue;
867
+ defaultValue?: RCSelectValue;
868
+ options?: RCListboxOption[];
869
+ 'prop:value'?: RCSelectValue | undefined;
870
+ 'prop:defaultValue'?: RCSelectValue | undefined;
871
+ 'prop:options'?: RCListboxOption[] | undefined;
872
+ 'on:rc-listbox-change'?: (e: CustomEvent<RCListboxChangeDetail>) => void;
873
+ };
874
+
875
+ 'rc-select': JSX.HTMLAttributes<RCSelectRef> & {
876
+ open?: boolean | string;
877
+ multiple?: boolean | string;
878
+ disabled?: boolean | string;
879
+ required?: boolean | string;
880
+ placeholder?: string;
881
+ display?: 'auto' | 'chips' | 'compact';
882
+ 'popup-mode'?: 'popover' | 'dialog';
883
+ 'dialog-confirm-label'?: string;
884
+ 'dialog-cancel-label'?: string;
885
+ 'dialog-cancel-button'?: 'visible' | 'hidden';
886
+ value?: RCSelectValue;
887
+ defaultValue?: RCSelectValue;
888
+ options?: RCListboxOption[];
889
+ 'data-rc-field-control'?: boolean | string;
890
+ 'prop:value'?: RCSelectValue | undefined;
891
+ 'prop:defaultValue'?: RCSelectValue | undefined;
892
+ 'prop:options'?: RCListboxOption[] | undefined;
893
+ 'prop:popupMode'?: 'popover' | 'dialog' | undefined;
894
+ 'on:rc-select-change'?: (e: CustomEvent<RCSelectChangeDetail>) => void;
895
+ 'on:rc-select-open'?: (e: CustomEvent) => void;
896
+ 'on:rc-select-close'?: (e: CustomEvent) => void;
897
+ };
898
+
899
+ 'rc-combobox': JSX.HTMLAttributes<RCComboboxRef> & {
900
+ open?: boolean | string;
901
+ multiple?: boolean | string;
902
+ disabled?: boolean | string;
903
+ required?: boolean | string;
904
+ placeholder?: string;
905
+ display?: 'auto' | 'chips' | 'compact';
906
+ 'allow-create'?: boolean | string;
907
+ 'filter-strategy'?: 'prefix' | 'contains';
908
+ 'popup-mode'?: 'popover' | 'dialog';
909
+ 'dialog-confirm-label'?: string;
910
+ 'dialog-cancel-label'?: string;
911
+ 'dialog-cancel-button'?: 'visible' | 'hidden';
912
+ value?: RCSelectValue;
913
+ defaultValue?: RCSelectValue;
914
+ options?: RCListboxOption[];
915
+ 'data-rc-field-control'?: boolean | string;
916
+ 'prop:value'?: RCSelectValue | undefined;
917
+ 'prop:defaultValue'?: RCSelectValue | undefined;
918
+ 'prop:options'?: RCListboxOption[] | undefined;
919
+ 'prop:allowCreate'?: boolean | undefined;
920
+ 'prop:popupMode'?: 'popover' | 'dialog' | undefined;
921
+ 'on:rc-select-change'?: (e: CustomEvent<RCSelectChangeDetail>) => void;
922
+ 'on:rc-select-open'?: (e: CustomEvent) => void;
923
+ 'on:rc-select-close'?: (e: CustomEvent) => void;
924
+ 'on:rc-combobox-create'?: (e: CustomEvent<RCComboboxCreateDetail>) => void;
925
+ };
926
+
927
+ 'rc-dialog': JSX.HTMLAttributes<RCDialogRef> & {
928
+ open?: boolean | string;
929
+ defaultOpen?: boolean | string;
930
+ variant?: 'standard' | 'fullscreen';
931
+ 'prop:open'?: boolean | undefined;
932
+ 'prop:defaultOpen'?: boolean | undefined;
933
+ 'prop:modal'?: boolean | undefined;
934
+ 'prop:lightDismiss'?: boolean | undefined;
935
+ movable?: boolean | string;
936
+ 'move-handle'?: string;
937
+ 'move-bounds'?: 'viewport' | 'parent';
938
+ 'move-step'?: number | string;
939
+ resize?: 'none' | 'both' | 'horizontal' | 'vertical';
940
+ 'resize-origin'?: RCDialogResizeOrigin;
941
+ 'resize-handle'?: string;
942
+ 'resize-threshold'?: number | string;
943
+ 'resize-step'?: number | string;
944
+ 'closed-by'?: 'any' | 'closerequest' | 'none';
945
+ 'light-dismiss'?: boolean | string;
946
+ 'on:rc-dialog-open'?: (e: CustomEvent) => void;
947
+ 'on:rc-dialog-toggle'?: (e: CustomEvent<RCDialogToggleDetail>) => void;
948
+ 'on:rc-dialog-close'?: (e: CustomEvent<RCDialogCloseDetail>) => void;
949
+ 'on:rc-dialog-request-close'?: (e: CustomEvent<RCDialogCloseDetail>) => void;
950
+ 'on:rc-dialog-cancel'?: (e: CustomEvent) => void;
951
+ };
952
+
953
+ 'rc-bottom-sheet': JSX.HTMLAttributes<RCBottomSheetRef> & {
954
+ open?: boolean | string;
955
+ defaultOpen?: boolean | string;
956
+ 'prop:open'?: boolean | undefined;
957
+ 'prop:defaultOpen'?: boolean | undefined;
958
+ 'prop:modal'?: boolean | undefined;
959
+ 'prop:lightDismiss'?: boolean | undefined;
960
+ 'prop:swipeDismiss'?: boolean | undefined;
961
+ 'light-dismiss'?: boolean | string;
962
+ resize?: 'none' | 'both' | 'horizontal' | 'vertical';
963
+ 'resize-origin'?: RCDialogResizeOrigin;
964
+ 'resize-handle'?: string;
965
+ 'resize-threshold'?: number | string;
966
+ 'resize-step'?: number | string;
967
+ 'snap-points'?: string;
968
+ 'swipe-dismiss'?: boolean | string;
969
+ 'swipe-velocity'?: number | string;
970
+ 'on:rc-dialog-open'?: (e: CustomEvent) => void;
971
+ 'on:rc-dialog-toggle'?: (e: CustomEvent<RCDialogToggleDetail>) => void;
972
+ 'on:rc-dialog-close'?: (e: CustomEvent<RCDialogCloseDetail>) => void;
973
+ 'on:rc-dialog-request-close'?: (e: CustomEvent<RCDialogCloseDetail>) => void;
974
+ 'on:rc-dialog-cancel'?: (e: CustomEvent) => void;
975
+ 'on:rc-bottom-sheet-resize-start'?: (
976
+ e: CustomEvent<RCBottomSheetResizeStartDetail>,
977
+ ) => void;
978
+ 'on:rc-bottom-sheet-snap'?: (e: CustomEvent<RCBottomSheetSnapDetail>) => void;
979
+ };
980
+
981
+ 'rc-menu': JSX.HTMLAttributes<RCMenuRef> & {
982
+ label?: string;
983
+ 'on:rc-menu-activate'?: (e: CustomEvent<RCMenuActivateDetail>) => void;
984
+ 'on:rc-menu-close'?: (e: CustomEvent<RCMenuCloseDetail>) => void;
985
+ };
986
+
987
+ 'rc-adaptive-menu': JSX.HTMLAttributes<RCAdaptiveMenuRef> & {
988
+ label?: string;
989
+ 'max-shown'?: number | string;
990
+ open?: boolean | string;
991
+ defaultOpen?: boolean | string;
992
+ 'prop:open'?: boolean | undefined;
993
+ 'prop:defaultOpen'?: boolean | undefined;
994
+ orientation?: 'horizontal' | 'vertical';
995
+ 'overflow-label'?: string;
996
+ 'on:rc-adaptive-menu-toggle'?: (e: CustomEvent<RCAdaptiveMenuToggleDetail>) => void;
997
+ };
998
+
999
+ 'rc-menu-button': JSX.HTMLAttributes<RCMenuButtonRef> & {
1000
+ open?: boolean | string;
1001
+ defaultOpen?: boolean | string;
1002
+ 'prop:open'?: boolean | undefined;
1003
+ 'prop:defaultOpen'?: boolean | undefined;
1004
+ orientation?: 'horizontal' | 'vertical';
1005
+ placement?: RCMenuButtonPlacement;
1006
+ 'icon-only'?: boolean | string;
1007
+ 'on:rc-menu-button-toggle'?: (e: CustomEvent<RCMenuButtonToggleDetail>) => void;
1008
+ };
1009
+
1010
+ 'rc-fab-menu': JSX.HTMLAttributes<RCFabMenuRef> & {
1011
+ open?: boolean | string;
1012
+ defaultOpen?: boolean | string;
1013
+ 'prop:open'?: boolean | undefined;
1014
+ 'prop:defaultOpen'?: boolean | undefined;
1015
+ placement?: RCMenuButtonPlacement;
1016
+ position?: 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start' | string;
1017
+ 'on:rc-fab-menu-toggle'?: (e: CustomEvent<RCFabMenuToggleDetail>) => void;
1018
+ };
1019
+
1020
+ 'rc-navigation-bar': JSX.HTMLAttributes<RCNavigationBarRef> & {
1021
+ activeSelector?: string;
1022
+ indicatorTarget?: string;
1023
+ };
1024
+
1025
+ 'rc-navigation-rail': JSX.HTMLAttributes<RCNavigationRailRef> & {
1026
+ expanded?: boolean | string;
1027
+ defaultExpanded?: boolean | string;
1028
+ activeSelector?: string;
1029
+ indicatorTarget?: string;
1030
+ 'prop:expanded'?: boolean | undefined;
1031
+ 'prop:defaultExpanded'?: boolean | undefined;
1032
+ 'on:rc-navigation-rail-toggle'?: (e: CustomEvent<RCNavigationRailToggleDetail>) => void;
1033
+ };
1034
+
1035
+ 'rc-menubar': JSX.HTMLAttributes<RCMenubarRef> & {
1036
+ label?: string;
1037
+ orientation?: 'horizontal' | 'vertical';
1038
+ };
1039
+
1040
+ 'rc-toolbar': JSX.HTMLAttributes<RCToolbarRef> & {
1041
+ label?: string;
1042
+ orientation?: 'horizontal' | 'vertical';
1043
+ };
1044
+
1045
+ 'rc-slider': JSX.HTMLAttributes<RCSliderRef> & {
1046
+ min?: number | string;
1047
+ max?: number | string;
1048
+ step?: number | string;
1049
+ value?: number | string;
1050
+ defaultValue?: number | string;
1051
+ 'default-value'?: number | string;
1052
+ 'prop:value'?: number | undefined;
1053
+ 'prop:defaultValue'?: number | undefined;
1054
+ disabled?: boolean | string;
1055
+ readonly?: boolean | string;
1056
+ display?: 'float' | 'inline-start' | 'inline-end';
1057
+ 'value-text'?: string;
1058
+ orientation?: 'horizontal' | 'vertical';
1059
+ 'on:rc-slider-input'?: (e: CustomEvent<RCSliderChangeDetail>) => void;
1060
+ 'on:rc-slider-change'?: (e: CustomEvent<RCSliderChangeDetail>) => void;
1061
+ };
1062
+
1063
+ 'rc-progress': JSX.HTMLAttributes<RCProgressRef> & {
1064
+ value?: number | string;
1065
+ defaultValue?: number | string;
1066
+ 'default-value'?: number | string;
1067
+ 'prop:value'?: number | undefined;
1068
+ 'prop:defaultValue'?: number | undefined;
1069
+ indeterminate?: boolean | string;
1070
+ disabled?: boolean | string;
1071
+ display?: 'inline-start' | 'inline-end' | 'overlay';
1072
+ 'value-text'?: string;
1073
+ orientation?: 'horizontal' | 'vertical';
1074
+ 'on:rc-progress-complete'?: (e: CustomEvent<Record<string, never>>) => void;
1075
+ };
1076
+
1077
+ 'rc-range-slider': JSX.HTMLAttributes<RCRangeSliderRef> & {
1078
+ min?: number | string;
1079
+ max?: number | string;
1080
+ step?: number | string;
1081
+ 'prop:value'?: [number, number] | undefined;
1082
+ 'prop:defaultValue'?: [number, number] | undefined;
1083
+ disabled?: boolean | string;
1084
+ readonly?: boolean | string;
1085
+ 'low-label'?: string;
1086
+ 'high-label'?: string;
1087
+ 'low-value-text'?: string;
1088
+ 'high-value-text'?: string;
1089
+ display?: 'float' | 'inline-start' | 'inline-end';
1090
+ orientation?: 'horizontal' | 'vertical';
1091
+ 'on:rc-range-slider-input'?: (e: CustomEvent<RCRangeSliderChangeDetail>) => void;
1092
+ 'on:rc-range-slider-change'?: (e: CustomEvent<RCRangeSliderChangeDetail>) => void;
1093
+ };
1094
+
1095
+ 'rc-transfer-list': JSX.HTMLAttributes<RCTransferListRef> & {
1096
+ multiple?: boolean | string;
1097
+ compact?: boolean | string;
1098
+ 'available-label'?: string;
1099
+ 'selected-label'?: string;
1100
+ 'prop:compact'?: boolean | undefined;
1101
+ 'prop:available'?: RCTransferListOption[] | undefined;
1102
+ 'prop:selected'?: RCTransferListOption[] | undefined;
1103
+ 'prop:defaultSelected'?: RCTransferListOption[] | undefined;
1104
+ 'on:rc-transfer-list-change'?: (e: CustomEvent<RCTransferListChangeDetail>) => void;
1105
+ };
1106
+
1107
+ 'rc-splitter': JSX.HTMLAttributes<RCSplitterRef> & {
1108
+ label?: string;
1109
+ orientation?: 'horizontal' | 'vertical';
1110
+ mode?: 'length' | 'percent' | 'fixed';
1111
+ step?: number | string;
1112
+ min?: number | string;
1113
+ max?: number | string;
1114
+ value?: number | string;
1115
+ defaultValue?: number | string;
1116
+ 'default-value'?: number | string;
1117
+ 'prop:value'?: number | undefined;
1118
+ 'prop:defaultValue'?: number | undefined;
1119
+ fixed?: boolean | string;
1120
+ collapsible?: boolean | string;
1121
+ 'snap-points'?: string;
1122
+ 'swipe-velocity'?: number | string;
1123
+ 'on:rc-splitter-change'?: (e: CustomEvent<RCSplitterChangeDetail>) => void;
1124
+ };
1125
+
1126
+ 'rc-editor-toolbar': JSX.HTMLAttributes<HTMLElement> & {
1127
+ label?: string;
1128
+ 'on:rc-toolbar-action'?: (e: CustomEvent<{ action: string }>) => void;
1129
+ };
1130
+
1131
+ 'rc-markdown-editor': JSX.HTMLAttributes<RCMarkdownEditorRef> & {
1132
+ value?: string;
1133
+ defaultValue?: string;
1134
+ 'default-value'?: string;
1135
+ 'prop:value'?: string | undefined;
1136
+ 'prop:defaultValue'?: string | undefined;
1137
+ toolbar?: boolean | string;
1138
+ 'source-mode'?: boolean | string;
1139
+ 'default-source-mode'?: boolean | string;
1140
+ 'prop:sourceMode'?: boolean | undefined;
1141
+ 'prop:defaultSourceMode'?: boolean | undefined;
1142
+ 'read-only'?: boolean | string;
1143
+ 'on:rc-change'?: (e: CustomEvent<RCMarkdownEditorChangeDetail>) => void;
1144
+ 'on:rc-mode-change'?: (e: CustomEvent<RCMarkdownEditorModeChangeDetail>) => void;
1145
+ 'on:rc-formatting-change'?: (e: CustomEvent<RCMarkdownEditorFormats>) => void;
1146
+ };
1147
+
1148
+ 'rc-fab': JSX.HTMLAttributes<HTMLElement> & {
1149
+ position?: 'bottom-end' | 'bottom-start' | 'top-end' | 'top-start' | string;
1150
+ 'scroll-reveal'?: boolean | string;
1151
+ };
1152
+
1153
+ 'rc-app-bar': JSX.HTMLAttributes<RCAppBarRef> & {
1154
+ variant?: 'compact' | 'expanded';
1155
+ 'scroll-behavior'?: 'pinned' | 'collapse' | 'hide';
1156
+ 'scroll-target'?: string;
1157
+ 'scroll-threshold'?: number | string;
1158
+ 'prop:scrolled'?: boolean | undefined;
1159
+ 'prop:scrollTarget'?: Element | Document | Window | string | null;
1160
+ 'on:rc-app-bar-scroll'?: (e: CustomEvent<RCAppBarScrollDetail>) => void;
1161
+ };
1162
+
1163
+ 'rc-search-bar': JSX.HTMLAttributes<RCSearchBarRef> & {
1164
+ variant?: 'bar' | 'view';
1165
+ open?: boolean | string;
1166
+ defaultOpen?: boolean | string;
1167
+ 'prop:open'?: boolean | undefined;
1168
+ 'prop:defaultOpen'?: boolean | undefined;
1169
+ debounce?: number | string;
1170
+ 'clear-label'?: string;
1171
+ placeholder?: string;
1172
+ 'default-value'?: string;
1173
+ 'prop:value'?: string | undefined;
1174
+ 'prop:defaultValue'?: string | undefined;
1175
+ 'on:rc-search-bar-input'?: (e: CustomEvent<RCSearchBarInputDetail>) => void;
1176
+ 'on:rc-search-bar-clear'?: (e: CustomEvent) => void;
1177
+ 'on:rc-search-bar-toggle'?: (e: CustomEvent<RCSearchBarToggleDetail>) => void;
1178
+ 'on:rc-search-bar-suggestion-select'?: (
1179
+ e: CustomEvent<RCSearchBarSuggestionSelectDetail>,
1180
+ ) => void;
1181
+ };
1182
+
1183
+ 'rc-field': JSX.HTMLAttributes<RCFieldRef> & {
1184
+ counter?: boolean | string;
1185
+ invalid?: boolean | string;
1186
+ };
1187
+
1188
+ 'rc-virtual-canvas': JSX.HTMLAttributes<RCVirtualCanvasRef> & {
1189
+ contentWidth?: number | string;
1190
+ contentHeight?: number | string;
1191
+ 'auto-resize-canvas'?: boolean | string;
1192
+ 'render-mode'?: 'continuous' | 'viewport-change' | 'manual';
1193
+ 'image-rendering'?: 'auto' | 'crisp-edges' | 'pixelated';
1194
+ 'on:rc-virtual-canvas-render'?: (e: CustomEvent<RCVirtualCanvasRenderDetail>) => void;
1195
+ 'on:rc-virtual-canvas-pointer'?: (e: CustomEvent<RCVirtualCanvasPointerDetail>) => void;
1196
+ };
1197
+
1198
+ 'rc-textarea': JSX.HTMLAttributes<RCTextareaRef> & {
1199
+ value?: string;
1200
+ defaultValue?: string;
1201
+ plugin?: RCTextareaPlugin | null;
1202
+ 'prop:value'?: string | undefined;
1203
+ 'prop:defaultValue'?: string | undefined;
1204
+ 'prop:plugin'?: RCTextareaPlugin | null;
1205
+ 'line-numbers'?: boolean | string;
1206
+ gutter?: boolean | string;
1207
+ 'word-wrap'?: boolean | string;
1208
+ 'auto-grow'?: boolean | string;
1209
+ 'read-only'?: boolean | string;
1210
+ 'on:rc-textarea-change'?: (e: CustomEvent<RCTextareaChangeDetail>) => void;
1211
+ 'on:rc-textarea-focus'?: (e: CustomEvent) => void;
1212
+ 'on:rc-textarea-blur'?: (e: CustomEvent) => void;
1213
+ 'on:rc-textarea-select'?: (e: CustomEvent<RCTextareaSelectDetail>) => void;
1214
+ };
1215
+ }
1216
+ }
1217
+ }