dialkit 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.md +171 -1
  2. package/dist/index.cjs +876 -337
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.d.cts +41 -6
  5. package/dist/index.d.ts +41 -6
  6. package/dist/index.js +878 -341
  7. package/dist/index.js.map +1 -1
  8. package/dist/solid/index.cjs +1011 -544
  9. package/dist/solid/index.cjs.map +1 -1
  10. package/dist/solid/index.d.cts +33 -3
  11. package/dist/solid/index.d.ts +33 -3
  12. package/dist/solid/index.js +864 -398
  13. package/dist/solid/index.js.map +1 -1
  14. package/dist/store/index.cjs +52 -12
  15. package/dist/store/index.cjs.map +1 -1
  16. package/dist/store/index.d.cts +25 -3
  17. package/dist/store/index.d.ts +25 -3
  18. package/dist/store/index.js +52 -12
  19. package/dist/store/index.js.map +1 -1
  20. package/dist/styles.css +256 -25
  21. package/dist/svelte/components/ControlRenderer.svelte +12 -0
  22. package/dist/svelte/components/ControlRenderer.svelte.d.ts.map +1 -1
  23. package/dist/svelte/components/DialRoot.svelte +22 -8
  24. package/dist/svelte/components/DialRoot.svelte.d.ts +3 -0
  25. package/dist/svelte/components/DialRoot.svelte.d.ts.map +1 -1
  26. package/dist/svelte/components/Folder.svelte +17 -8
  27. package/dist/svelte/components/Folder.svelte.d.ts.map +1 -1
  28. package/dist/svelte/components/Panel.svelte +14 -9
  29. package/dist/svelte/components/Panel.svelte.d.ts.map +1 -1
  30. package/dist/svelte/components/PresetManager.svelte +7 -6
  31. package/dist/svelte/components/PresetManager.svelte.d.ts.map +1 -1
  32. package/dist/svelte/components/SegmentedControl.svelte +30 -74
  33. package/dist/svelte/components/SegmentedControl.svelte.d.ts.map +1 -1
  34. package/dist/svelte/components/SelectControl.svelte +2 -1
  35. package/dist/svelte/components/SelectControl.svelte.d.ts.map +1 -1
  36. package/dist/svelte/components/ShortcutListener.svelte +265 -0
  37. package/dist/svelte/components/ShortcutListener.svelte.d.ts +13 -0
  38. package/dist/svelte/components/ShortcutListener.svelte.d.ts.map +1 -0
  39. package/dist/svelte/components/ShortcutsMenu.svelte +128 -0
  40. package/dist/svelte/components/ShortcutsMenu.svelte.d.ts +7 -0
  41. package/dist/svelte/components/ShortcutsMenu.svelte.d.ts.map +1 -0
  42. package/dist/svelte/components/Slider.svelte +16 -29
  43. package/dist/svelte/components/Slider.svelte.d.ts +3 -0
  44. package/dist/svelte/components/Slider.svelte.d.ts.map +1 -1
  45. package/dist/svelte/components/SpringControl.svelte +17 -15
  46. package/dist/svelte/components/SpringControl.svelte.d.ts.map +1 -1
  47. package/dist/svelte/components/Toggle.svelte +13 -2
  48. package/dist/svelte/components/Toggle.svelte.d.ts +3 -0
  49. package/dist/svelte/components/Toggle.svelte.d.ts.map +1 -1
  50. package/dist/svelte/components/TransitionControl.svelte +28 -25
  51. package/dist/svelte/components/TransitionControl.svelte.d.ts.map +1 -1
  52. package/dist/svelte/createDialKit.svelte.d.ts +2 -1
  53. package/dist/svelte/createDialKit.svelte.d.ts.map +1 -1
  54. package/dist/svelte/createDialKit.svelte.js +1 -1
  55. package/dist/svelte/index.d.ts +6 -2
  56. package/dist/svelte/index.d.ts.map +1 -1
  57. package/dist/svelte/index.js +4 -0
  58. package/dist/svelte/theme-css.d.ts +1 -1
  59. package/dist/svelte/theme-css.d.ts.map +1 -1
  60. package/dist/svelte/theme-css.js +257 -26
  61. package/dist/vue/index.cjs +3056 -0
  62. package/dist/vue/index.cjs.map +1 -0
  63. package/dist/vue/index.d.cts +675 -0
  64. package/dist/vue/index.d.ts +675 -0
  65. package/dist/vue/index.js +3014 -0
  66. package/dist/vue/index.js.map +1 -0
  67. package/package.json +24 -4
@@ -0,0 +1,675 @@
1
+ import * as vue from 'vue';
2
+ import { ComputedRef, ObjectDirective, InjectionKey, Ref, PropType, h } from 'vue';
3
+
4
+ type SpringConfig = {
5
+ type: 'spring';
6
+ stiffness?: number;
7
+ damping?: number;
8
+ mass?: number;
9
+ visualDuration?: number;
10
+ bounce?: number;
11
+ };
12
+ type EasingConfig = {
13
+ type: 'easing';
14
+ duration: number;
15
+ ease: [number, number, number, number];
16
+ };
17
+ type TransitionConfig = SpringConfig | EasingConfig;
18
+ type ActionConfig = {
19
+ type: 'action';
20
+ label?: string;
21
+ };
22
+ type SelectConfig = {
23
+ type: 'select';
24
+ options: (string | {
25
+ value: string;
26
+ label: string;
27
+ })[];
28
+ default?: string;
29
+ };
30
+ type ColorConfig = {
31
+ type: 'color';
32
+ default?: string;
33
+ };
34
+ type TextConfig = {
35
+ type: 'text';
36
+ default?: string;
37
+ placeholder?: string;
38
+ };
39
+ type DialValue = number | boolean | string | SpringConfig | EasingConfig | ActionConfig | SelectConfig | ColorConfig | TextConfig;
40
+ type DialConfig = {
41
+ [key: string]: DialValue | [number, number, number, number?] | DialConfig;
42
+ };
43
+ type ResolvedValues<T extends DialConfig> = {
44
+ [K in keyof T]: T[K] extends [number, number, number, number?] ? number : T[K] extends SpringConfig ? TransitionConfig : T[K] extends EasingConfig ? TransitionConfig : T[K] extends SelectConfig ? string : T[K] extends ColorConfig ? string : T[K] extends TextConfig ? string : T[K] extends DialConfig ? ResolvedValues<T[K]> : T[K];
45
+ };
46
+ type ShortcutMode = 'fine' | 'normal' | 'coarse';
47
+ type ShortcutInteraction = 'scroll' | 'drag' | 'move' | 'scroll-only';
48
+ type ShortcutConfig = {
49
+ key?: string;
50
+ modifier?: 'alt' | 'shift' | 'meta';
51
+ mode?: ShortcutMode;
52
+ interaction?: ShortcutInteraction;
53
+ };
54
+ type ControlMeta = {
55
+ type: 'slider' | 'toggle' | 'spring' | 'transition' | 'folder' | 'action' | 'select' | 'color' | 'text';
56
+ path: string;
57
+ label: string;
58
+ min?: number;
59
+ max?: number;
60
+ step?: number;
61
+ children?: ControlMeta[];
62
+ defaultOpen?: boolean;
63
+ options?: (string | {
64
+ value: string;
65
+ label: string;
66
+ })[];
67
+ placeholder?: string;
68
+ shortcut?: ShortcutConfig;
69
+ };
70
+ type PanelConfig = {
71
+ id: string;
72
+ name: string;
73
+ controls: ControlMeta[];
74
+ values: Record<string, DialValue>;
75
+ shortcuts: Record<string, ShortcutConfig>;
76
+ };
77
+ type Listener = () => void;
78
+ type ActionListener = (action: string) => void;
79
+ type Preset = {
80
+ id: string;
81
+ name: string;
82
+ values: Record<string, DialValue>;
83
+ };
84
+ declare class DialStoreClass {
85
+ private panels;
86
+ private listeners;
87
+ private globalListeners;
88
+ private snapshots;
89
+ private actionListeners;
90
+ private presets;
91
+ private activePreset;
92
+ private baseValues;
93
+ registerPanel(id: string, name: string, config: DialConfig, shortcuts?: Record<string, ShortcutConfig>): void;
94
+ updatePanel(id: string, name: string, config: DialConfig, shortcuts?: Record<string, ShortcutConfig>): void;
95
+ unregisterPanel(id: string): void;
96
+ updateValue(panelId: string, path: string, value: DialValue): void;
97
+ updateSpringMode(panelId: string, path: string, mode: 'simple' | 'advanced'): void;
98
+ getSpringMode(panelId: string, path: string): 'simple' | 'advanced';
99
+ updateTransitionMode(panelId: string, path: string, mode: 'easing' | 'simple' | 'advanced'): void;
100
+ getTransitionMode(panelId: string, path: string): 'easing' | 'simple' | 'advanced';
101
+ getValue(panelId: string, path: string): DialValue | undefined;
102
+ getValues(panelId: string): Record<string, DialValue>;
103
+ getPanels(): PanelConfig[];
104
+ getPanel(id: string): PanelConfig | undefined;
105
+ subscribe(panelId: string, listener: Listener): () => void;
106
+ subscribeGlobal(listener: Listener): () => void;
107
+ subscribeActions(panelId: string, listener: ActionListener): () => void;
108
+ triggerAction(panelId: string, path: string): void;
109
+ savePreset(panelId: string, name: string): string;
110
+ loadPreset(panelId: string, presetId: string): void;
111
+ deletePreset(panelId: string, presetId: string): void;
112
+ getPresets(panelId: string): Preset[];
113
+ getActivePresetId(panelId: string): string | null;
114
+ clearActivePreset(panelId: string): void;
115
+ resolveShortcutTarget(key: string, modifier?: 'alt' | 'shift' | 'meta'): {
116
+ panelId: string;
117
+ path: string;
118
+ control: ControlMeta;
119
+ } | null;
120
+ resolveScrollOnlyTargets(): Array<{
121
+ panelId: string;
122
+ path: string;
123
+ control: ControlMeta;
124
+ shortcut: ShortcutConfig;
125
+ }>;
126
+ private findControlByPath;
127
+ private notify;
128
+ private notifyGlobal;
129
+ private initTransitionModes;
130
+ private parseConfig;
131
+ private flattenValues;
132
+ private isSpringConfig;
133
+ private isEasingConfig;
134
+ private isActionConfig;
135
+ private isSelectConfig;
136
+ private isColorConfig;
137
+ private isTextConfig;
138
+ private isHexColor;
139
+ private formatLabel;
140
+ private inferRange;
141
+ private inferStep;
142
+ private normalizePreservedValue;
143
+ private roundToStep;
144
+ private stepPrecision;
145
+ private mapControlsByPath;
146
+ }
147
+ declare const DialStore: DialStoreClass;
148
+
149
+ interface UseDialOptions {
150
+ onAction?: (action: string) => void;
151
+ shortcuts?: Record<string, ShortcutConfig>;
152
+ }
153
+ declare function useDialKit<T extends DialConfig>(name: string, config: T, options?: UseDialOptions): ComputedRef<ResolvedValues<T>>;
154
+
155
+ type DialPosition = 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
156
+ type DialMode = 'popover' | 'inline';
157
+ type DialTheme = 'light' | 'dark' | 'system';
158
+ declare const DialRoot: vue.DefineComponent<vue.ExtractPropTypes<{
159
+ position: {
160
+ type: () => DialPosition;
161
+ default: string;
162
+ };
163
+ defaultOpen: {
164
+ type: BooleanConstructor;
165
+ default: boolean;
166
+ };
167
+ mode: {
168
+ type: () => DialMode;
169
+ default: string;
170
+ };
171
+ theme: {
172
+ type: () => DialTheme;
173
+ default: string;
174
+ };
175
+ productionEnabled: {
176
+ type: BooleanConstructor;
177
+ default: boolean;
178
+ };
179
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
180
+ [key: string]: any;
181
+ }> | null, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
182
+ position: {
183
+ type: () => DialPosition;
184
+ default: string;
185
+ };
186
+ defaultOpen: {
187
+ type: BooleanConstructor;
188
+ default: boolean;
189
+ };
190
+ mode: {
191
+ type: () => DialMode;
192
+ default: string;
193
+ };
194
+ theme: {
195
+ type: () => DialTheme;
196
+ default: string;
197
+ };
198
+ productionEnabled: {
199
+ type: BooleanConstructor;
200
+ default: boolean;
201
+ };
202
+ }>> & Readonly<{}>, {
203
+ mode: DialMode;
204
+ defaultOpen: boolean;
205
+ position: DialPosition;
206
+ theme: DialTheme;
207
+ productionEnabled: boolean;
208
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
209
+
210
+ interface DialKitDirectiveOptions {
211
+ position?: DialPosition;
212
+ defaultOpen?: boolean;
213
+ mode?: DialMode;
214
+ }
215
+ type DialKitDirectiveValue = DialMode | DialKitDirectiveOptions | undefined;
216
+ declare const vDialKit: ObjectDirective<HTMLElement, DialKitDirectiveValue>;
217
+
218
+ interface ShortcutState {
219
+ activePanelId: Ref<string | null>;
220
+ activePath: Ref<string | null>;
221
+ }
222
+ declare const ShortcutKey: InjectionKey<ShortcutState>;
223
+ declare function useShortcutContext(): ShortcutState;
224
+ declare const ShortcutListener: vue.DefineComponent<{}, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
225
+ [key: string]: any;
226
+ }>[] | undefined, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
227
+
228
+ declare const ShortcutsMenu: vue.DefineComponent<vue.ExtractPropTypes<{
229
+ panelId: {
230
+ type: PropType<string>;
231
+ required: true;
232
+ };
233
+ }>, () => (vue.VNode<vue.RendererNode, vue.RendererElement, {
234
+ [key: string]: any;
235
+ }> | null)[] | null, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
236
+ panelId: {
237
+ type: PropType<string>;
238
+ required: true;
239
+ };
240
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
241
+
242
+ declare const Slider: vue.DefineComponent<vue.ExtractPropTypes<{
243
+ label: {
244
+ type: StringConstructor;
245
+ required: true;
246
+ };
247
+ value: {
248
+ type: NumberConstructor;
249
+ required: true;
250
+ };
251
+ min: {
252
+ type: NumberConstructor;
253
+ required: false;
254
+ };
255
+ max: {
256
+ type: NumberConstructor;
257
+ required: false;
258
+ };
259
+ step: {
260
+ type: NumberConstructor;
261
+ required: false;
262
+ };
263
+ unit: {
264
+ type: StringConstructor;
265
+ required: false;
266
+ };
267
+ shortcut: {
268
+ type: PropType<ShortcutConfig>;
269
+ default: undefined;
270
+ };
271
+ shortcutActive: {
272
+ type: BooleanConstructor;
273
+ default: boolean;
274
+ };
275
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
276
+ [key: string]: any;
277
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "change"[], "change", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
278
+ label: {
279
+ type: StringConstructor;
280
+ required: true;
281
+ };
282
+ value: {
283
+ type: NumberConstructor;
284
+ required: true;
285
+ };
286
+ min: {
287
+ type: NumberConstructor;
288
+ required: false;
289
+ };
290
+ max: {
291
+ type: NumberConstructor;
292
+ required: false;
293
+ };
294
+ step: {
295
+ type: NumberConstructor;
296
+ required: false;
297
+ };
298
+ unit: {
299
+ type: StringConstructor;
300
+ required: false;
301
+ };
302
+ shortcut: {
303
+ type: PropType<ShortcutConfig>;
304
+ default: undefined;
305
+ };
306
+ shortcutActive: {
307
+ type: BooleanConstructor;
308
+ default: boolean;
309
+ };
310
+ }>> & Readonly<{
311
+ onChange?: ((...args: any[]) => any) | undefined;
312
+ }>, {
313
+ shortcut: ShortcutConfig;
314
+ shortcutActive: boolean;
315
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
316
+
317
+ declare const Toggle: vue.DefineComponent<vue.ExtractPropTypes<{
318
+ label: {
319
+ type: StringConstructor;
320
+ required: true;
321
+ };
322
+ checked: {
323
+ type: BooleanConstructor;
324
+ required: true;
325
+ };
326
+ shortcut: {
327
+ type: PropType<ShortcutConfig>;
328
+ default: undefined;
329
+ };
330
+ shortcutActive: {
331
+ type: BooleanConstructor;
332
+ default: boolean;
333
+ };
334
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
335
+ [key: string]: any;
336
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "change"[], "change", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
337
+ label: {
338
+ type: StringConstructor;
339
+ required: true;
340
+ };
341
+ checked: {
342
+ type: BooleanConstructor;
343
+ required: true;
344
+ };
345
+ shortcut: {
346
+ type: PropType<ShortcutConfig>;
347
+ default: undefined;
348
+ };
349
+ shortcutActive: {
350
+ type: BooleanConstructor;
351
+ default: boolean;
352
+ };
353
+ }>> & Readonly<{
354
+ onChange?: ((...args: any[]) => any) | undefined;
355
+ }>, {
356
+ shortcut: ShortcutConfig;
357
+ shortcutActive: boolean;
358
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
359
+
360
+ declare const Folder: vue.DefineComponent<vue.ExtractPropTypes<{
361
+ title: {
362
+ type: StringConstructor;
363
+ required: true;
364
+ };
365
+ defaultOpen: {
366
+ type: BooleanConstructor;
367
+ default: boolean;
368
+ };
369
+ isRoot: {
370
+ type: BooleanConstructor;
371
+ default: boolean;
372
+ };
373
+ inline: {
374
+ type: BooleanConstructor;
375
+ default: boolean;
376
+ };
377
+ toolbar: {
378
+ type: PropType<(() => ReturnType<typeof h>) | null>;
379
+ required: false;
380
+ default: null;
381
+ };
382
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
383
+ [key: string]: any;
384
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "openChange"[], "openChange", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
385
+ title: {
386
+ type: StringConstructor;
387
+ required: true;
388
+ };
389
+ defaultOpen: {
390
+ type: BooleanConstructor;
391
+ default: boolean;
392
+ };
393
+ isRoot: {
394
+ type: BooleanConstructor;
395
+ default: boolean;
396
+ };
397
+ inline: {
398
+ type: BooleanConstructor;
399
+ default: boolean;
400
+ };
401
+ toolbar: {
402
+ type: PropType<(() => ReturnType<typeof h>) | null>;
403
+ required: false;
404
+ default: null;
405
+ };
406
+ }>> & Readonly<{
407
+ onOpenChange?: ((...args: any[]) => any) | undefined;
408
+ }>, {
409
+ defaultOpen: boolean;
410
+ isRoot: boolean;
411
+ inline: boolean;
412
+ toolbar: (() => ReturnType<typeof h>) | null;
413
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
414
+
415
+ type ButtonGroupButton = {
416
+ label: string;
417
+ onClick: () => void;
418
+ };
419
+ declare const ButtonGroup: vue.DefineComponent<vue.ExtractPropTypes<{
420
+ buttons: {
421
+ type: PropType<ButtonGroupButton[]>;
422
+ required: true;
423
+ };
424
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
425
+ [key: string]: any;
426
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
427
+ buttons: {
428
+ type: PropType<ButtonGroupButton[]>;
429
+ required: true;
430
+ };
431
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
432
+
433
+ declare const SpringControl: vue.DefineComponent<vue.ExtractPropTypes<{
434
+ panelId: {
435
+ type: StringConstructor;
436
+ required: true;
437
+ };
438
+ path: {
439
+ type: StringConstructor;
440
+ required: true;
441
+ };
442
+ label: {
443
+ type: StringConstructor;
444
+ required: true;
445
+ };
446
+ spring: {
447
+ type: PropType<SpringConfig>;
448
+ required: true;
449
+ };
450
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
451
+ [key: string]: any;
452
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "change"[], "change", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
453
+ panelId: {
454
+ type: StringConstructor;
455
+ required: true;
456
+ };
457
+ path: {
458
+ type: StringConstructor;
459
+ required: true;
460
+ };
461
+ label: {
462
+ type: StringConstructor;
463
+ required: true;
464
+ };
465
+ spring: {
466
+ type: PropType<SpringConfig>;
467
+ required: true;
468
+ };
469
+ }>> & Readonly<{
470
+ onChange?: ((...args: any[]) => any) | undefined;
471
+ }>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
472
+
473
+ declare const SpringVisualization: vue.DefineComponent<vue.ExtractPropTypes<{
474
+ spring: {
475
+ type: PropType<SpringConfig>;
476
+ required: true;
477
+ };
478
+ isSimpleMode: {
479
+ type: BooleanConstructor;
480
+ required: true;
481
+ };
482
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
483
+ [key: string]: any;
484
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
485
+ spring: {
486
+ type: PropType<SpringConfig>;
487
+ required: true;
488
+ };
489
+ isSimpleMode: {
490
+ type: BooleanConstructor;
491
+ required: true;
492
+ };
493
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
494
+
495
+ declare const TransitionControl: vue.DefineComponent<vue.ExtractPropTypes<{
496
+ panelId: {
497
+ type: StringConstructor;
498
+ required: true;
499
+ };
500
+ path: {
501
+ type: StringConstructor;
502
+ required: true;
503
+ };
504
+ label: {
505
+ type: StringConstructor;
506
+ required: true;
507
+ };
508
+ value: {
509
+ type: PropType<TransitionConfig>;
510
+ required: true;
511
+ };
512
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
513
+ [key: string]: any;
514
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "change"[], "change", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
515
+ panelId: {
516
+ type: StringConstructor;
517
+ required: true;
518
+ };
519
+ path: {
520
+ type: StringConstructor;
521
+ required: true;
522
+ };
523
+ label: {
524
+ type: StringConstructor;
525
+ required: true;
526
+ };
527
+ value: {
528
+ type: PropType<TransitionConfig>;
529
+ required: true;
530
+ };
531
+ }>> & Readonly<{
532
+ onChange?: ((...args: any[]) => any) | undefined;
533
+ }>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
534
+
535
+ declare const EasingVisualization: vue.DefineComponent<vue.ExtractPropTypes<{
536
+ easing: {
537
+ type: PropType<EasingConfig>;
538
+ required: true;
539
+ };
540
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
541
+ [key: string]: any;
542
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
543
+ easing: {
544
+ type: PropType<EasingConfig>;
545
+ required: true;
546
+ };
547
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
548
+
549
+ declare const TextControl: vue.DefineComponent<vue.ExtractPropTypes<{
550
+ label: {
551
+ type: StringConstructor;
552
+ required: true;
553
+ };
554
+ value: {
555
+ type: StringConstructor;
556
+ required: true;
557
+ };
558
+ placeholder: {
559
+ type: StringConstructor;
560
+ required: false;
561
+ };
562
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
563
+ [key: string]: any;
564
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "change"[], "change", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
565
+ label: {
566
+ type: StringConstructor;
567
+ required: true;
568
+ };
569
+ value: {
570
+ type: StringConstructor;
571
+ required: true;
572
+ };
573
+ placeholder: {
574
+ type: StringConstructor;
575
+ required: false;
576
+ };
577
+ }>> & Readonly<{
578
+ onChange?: ((...args: any[]) => any) | undefined;
579
+ }>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
580
+
581
+ type SelectOption = string | {
582
+ value: string;
583
+ label: string;
584
+ };
585
+ declare const SelectControl: vue.DefineComponent<vue.ExtractPropTypes<{
586
+ label: {
587
+ type: StringConstructor;
588
+ required: true;
589
+ };
590
+ value: {
591
+ type: StringConstructor;
592
+ required: true;
593
+ };
594
+ options: {
595
+ type: PropType<SelectOption[]>;
596
+ required: true;
597
+ };
598
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
599
+ [key: string]: any;
600
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "change"[], "change", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
601
+ label: {
602
+ type: StringConstructor;
603
+ required: true;
604
+ };
605
+ value: {
606
+ type: StringConstructor;
607
+ required: true;
608
+ };
609
+ options: {
610
+ type: PropType<SelectOption[]>;
611
+ required: true;
612
+ };
613
+ }>> & Readonly<{
614
+ onChange?: ((...args: any[]) => any) | undefined;
615
+ }>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
616
+
617
+ declare const ColorControl: vue.DefineComponent<vue.ExtractPropTypes<{
618
+ label: {
619
+ type: StringConstructor;
620
+ required: true;
621
+ };
622
+ value: {
623
+ type: StringConstructor;
624
+ required: true;
625
+ };
626
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
627
+ [key: string]: any;
628
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, "change"[], "change", vue.PublicProps, Readonly<vue.ExtractPropTypes<{
629
+ label: {
630
+ type: StringConstructor;
631
+ required: true;
632
+ };
633
+ value: {
634
+ type: StringConstructor;
635
+ required: true;
636
+ };
637
+ }>> & Readonly<{
638
+ onChange?: ((...args: any[]) => any) | undefined;
639
+ }>, {}, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
640
+
641
+ declare const PresetManager: vue.DefineComponent<vue.ExtractPropTypes<{
642
+ panelId: {
643
+ type: StringConstructor;
644
+ required: true;
645
+ };
646
+ presets: {
647
+ type: PropType<Preset[]>;
648
+ required: true;
649
+ };
650
+ activePresetId: {
651
+ type: PropType<string | null>;
652
+ required: false;
653
+ default: null;
654
+ };
655
+ }>, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
656
+ [key: string]: any;
657
+ }>, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
658
+ panelId: {
659
+ type: StringConstructor;
660
+ required: true;
661
+ };
662
+ presets: {
663
+ type: PropType<Preset[]>;
664
+ required: true;
665
+ };
666
+ activePresetId: {
667
+ type: PropType<string | null>;
668
+ required: false;
669
+ default: null;
670
+ };
671
+ }>> & Readonly<{}>, {
672
+ activePresetId: string | null;
673
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, true, {}, any>;
674
+
675
+ export { type ActionConfig, ButtonGroup, type ColorConfig, ColorControl, type ControlMeta, type DialConfig, type DialKitDirectiveOptions, type DialKitDirectiveValue, type DialMode, type DialPosition, DialRoot, DialStore, type DialTheme, type DialValue, type EasingConfig, EasingVisualization, Folder, type PanelConfig, type Preset, PresetManager, type ResolvedValues, type SelectConfig, SelectControl, type ShortcutConfig, ShortcutKey, ShortcutListener, type ShortcutState, ShortcutsMenu, Slider, type SpringConfig, SpringControl, SpringVisualization, type TextConfig, TextControl, Toggle, type TransitionConfig, TransitionControl, type UseDialOptions, useDialKit, useShortcutContext, vDialKit };