@auronui/vue 1.1.1 → 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 (37) hide show
  1. package/dist/cjs/index.cjs +759 -0
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/composables/useAccordion.js +58 -0
  4. package/dist/composables/useAccordion.js.map +1 -0
  5. package/dist/composables/useCalendar.js +47 -0
  6. package/dist/composables/useCalendar.js.map +1 -0
  7. package/dist/composables/useCheckboxGroup.js +64 -0
  8. package/dist/composables/useCheckboxGroup.js.map +1 -0
  9. package/dist/composables/useColorPicker.js +68 -0
  10. package/dist/composables/useColorPicker.js.map +1 -0
  11. package/dist/composables/useDisclosure.js +43 -0
  12. package/dist/composables/useDisclosure.js.map +1 -0
  13. package/dist/composables/useListBox.js +61 -0
  14. package/dist/composables/useListBox.js.map +1 -0
  15. package/dist/composables/useOTP.js +29 -0
  16. package/dist/composables/useOTP.js.map +1 -0
  17. package/dist/composables/usePagination.js +54 -0
  18. package/dist/composables/usePagination.js.map +1 -0
  19. package/dist/composables/useRadioGroup.js +38 -0
  20. package/dist/composables/useRadioGroup.js.map +1 -0
  21. package/dist/composables/useRangeCalendar.js +51 -0
  22. package/dist/composables/useRangeCalendar.js.map +1 -0
  23. package/dist/composables/useSlider.js +46 -0
  24. package/dist/composables/useSlider.js.map +1 -0
  25. package/dist/composables/useSplitter.js +39 -0
  26. package/dist/composables/useSplitter.js.map +1 -0
  27. package/dist/composables/useStepper.js +58 -0
  28. package/dist/composables/useStepper.js.map +1 -0
  29. package/dist/composables/useSwatchPicker.js +31 -0
  30. package/dist/composables/useSwatchPicker.js.map +1 -0
  31. package/dist/composables/useTabs.js +34 -0
  32. package/dist/composables/useTabs.js.map +1 -0
  33. package/dist/composables/useTree.js +88 -0
  34. package/dist/composables/useTree.js.map +1 -0
  35. package/dist/index.d.ts +786 -64
  36. package/dist/index.js +17 -1
  37. package/package.json +4 -4
package/dist/index.d.ts CHANGED
@@ -43,7 +43,7 @@ import { CreateComponentPublicInstanceWithMixins } from 'vue';
43
43
  import { cx } from 'tailwind-variants';
44
44
  import { DateFieldRootProps } from 'reka-ui';
45
45
  import { DateInputVariants } from '@auronui/styles';
46
- import { DateRange as DateRange_3 } from 'reka-ui';
46
+ import { DateRange as DateRange_4 } from 'reka-ui';
47
47
  import { DateRangeFieldRootProps } from 'reka-ui';
48
48
  import { DateRangeFieldVariants } from '@auronui/styles';
49
49
  import { DateStep } from '../../../node_modules/reka-ui/dist/index3.d.ts';
@@ -77,6 +77,7 @@ import { PaginationVariants } from '@auronui/styles';
77
77
  import { PublicProps } from 'vue';
78
78
  import { RadioGroupVariants } from '@auronui/styles';
79
79
  import { Ref } from 'vue';
80
+ import { ref } from 'vue';
80
81
  import { ReferenceElement } from 'reka-ui';
81
82
  import { RendererElement } from 'vue';
82
83
  import { RendererNode } from 'vue';
@@ -137,6 +138,7 @@ declare const __VLS_component_101: DefineComponent<__VLS_Props_113, {}, {}, {},
137
138
  "onPointer-down-outside"?: ((event: Event) => any) | undefined;
138
139
  "onClose-auto-focus"?: ((event: Event) => any) | undefined;
139
140
  }>, {
141
+ sticky: "partial" | "always";
140
142
  class: string;
141
143
  as: string;
142
144
  asChild: boolean;
@@ -152,7 +154,6 @@ collisionBoundary: Element | null | Array<Element | null>;
152
154
  collisionPadding: number | Partial<Record<"top" | "right" | "bottom" | "left", number>>;
153
155
  arrowPadding: number;
154
156
  hideShiftedArrow: boolean;
155
- sticky: "partial" | "always";
156
157
  hideWhenDetached: boolean;
157
158
  positionStrategy: "fixed" | "absolute";
158
159
  updatePositionStrategy: "always" | "optimized";
@@ -265,6 +266,7 @@ declare const __VLS_component_105: DefineComponent<__VLS_Props_117, {}, {}, {},
265
266
  "onInteract-outside"?: ((event: Event) => any) | undefined;
266
267
  "onClose-auto-focus"?: ((event: Event) => any) | undefined;
267
268
  }>, {
269
+ sticky: "partial" | "always";
268
270
  class: string;
269
271
  as: string;
270
272
  asChild: boolean;
@@ -282,7 +284,6 @@ collisionBoundary: Element | null | Array<Element | null>;
282
284
  collisionPadding: number | Partial<Record<"top" | "right" | "bottom" | "left", number>>;
283
285
  arrowPadding: number;
284
286
  hideShiftedArrow: boolean;
285
- sticky: "partial" | "always";
286
287
  hideWhenDetached: boolean;
287
288
  positionStrategy: "fixed" | "absolute";
288
289
  updatePositionStrategy: "always" | "optimized";
@@ -299,10 +300,10 @@ select: (event: Event) => any;
299
300
  }, string, PublicProps, Readonly<__VLS_Props_118> & Readonly<{
300
301
  onSelect?: ((event: Event) => any) | undefined;
301
302
  }>, {
303
+ description: string;
302
304
  variant: "default" | "danger";
303
305
  isDisabled: boolean;
304
306
  class: string;
305
- description: string;
306
307
  as: string;
307
308
  disabled: boolean;
308
309
  asChild: boolean;
@@ -457,6 +458,7 @@ declare const __VLS_component_113: DefineComponent<__VLS_Props_125, {}, {}, {},
457
458
  "onClose-auto-focus"?: ((event: Event) => any) | undefined;
458
459
  "onEntry-focus"?: ((event: Event) => any) | undefined;
459
460
  }>, {
461
+ sticky: "partial" | "always";
460
462
  class: string;
461
463
  as: string;
462
464
  asChild: boolean;
@@ -471,7 +473,6 @@ collisionBoundary: Element | null | Array<Element | null>;
471
473
  collisionPadding: number | Partial<Record<"top" | "right" | "bottom" | "left", number>>;
472
474
  arrowPadding: number;
473
475
  hideShiftedArrow: boolean;
474
- sticky: "partial" | "always";
475
476
  hideWhenDetached: boolean;
476
477
  positionStrategy: "fixed" | "absolute";
477
478
  updatePositionStrategy: "always" | "optimized";
@@ -498,9 +499,11 @@ ref: Element;
498
499
  value: string;
499
500
  } | undefined) => any) | undefined;
500
501
  }>, {
502
+ description: string;
503
+ name: string;
504
+ multiple: boolean;
501
505
  isDisabled: boolean;
502
506
  class: string | false | Record<string, unknown> | ClassValue[] | null;
503
- description: string;
504
507
  label: string;
505
508
  errorMessage: string;
506
509
  fullWidth: boolean;
@@ -511,12 +514,10 @@ as: string;
511
514
  classNames: Partial<{
512
515
  base: ClassValue;
513
516
  }>;
514
- multiple: boolean;
515
517
  asChild: boolean;
516
518
  placeholder: string;
517
519
  modelValue: string;
518
520
  defaultValue: string;
519
- name: string;
520
521
  dir: "ltr" | "rtl";
521
522
  defaultOpen: boolean;
522
523
  open: boolean;
@@ -566,6 +567,7 @@ declare const __VLS_component_116: DefineComponent<__VLS_Props_128, {}, {}, {},
566
567
  "onFocus-outside"?: ((event: Event) => any) | undefined;
567
568
  "onInteract-outside"?: ((event: Event) => any) | undefined;
568
569
  }>, {
570
+ sticky: "partial" | "always";
569
571
  class: string;
570
572
  as: string;
571
573
  asChild: boolean;
@@ -581,7 +583,6 @@ collisionBoundary: Element | null | Array<Element | null>;
581
583
  collisionPadding: number | Partial<Record<"top" | "right" | "bottom" | "left", number>>;
582
584
  arrowPadding: number;
583
585
  hideShiftedArrow: boolean;
584
- sticky: "partial" | "always";
585
586
  hideWhenDetached: boolean;
586
587
  positionStrategy: "fixed" | "absolute";
587
588
  updatePositionStrategy: "always" | "optimized";
@@ -640,6 +641,7 @@ value: string;
640
641
  } | undefined) => any) | undefined;
641
642
  }>, {
642
643
  size: "md" | "sm" | "lg";
644
+ multiple: boolean;
643
645
  variant: "flat" | "bordered" | "faded" | "underlined" | "raised";
644
646
  isDisabled: boolean;
645
647
  color: "default" | "danger" | "success" | "warning" | "primary" | "secondary";
@@ -649,7 +651,6 @@ isReadonly: boolean;
649
651
  labelPlacement: "inside" | "outside" | "outside-left";
650
652
  isRequired: boolean;
651
653
  items: AutocompleteItemData[];
652
- multiple: boolean;
653
654
  modelValue: string | string[];
654
655
  defaultValue: string | string[];
655
656
  defaultOpen: boolean;
@@ -744,6 +745,7 @@ declare const __VLS_component_121: DefineComponent<__VLS_Props_132, {}, {}, {},
744
745
  "onFocus-outside"?: ((event: Event) => any) | undefined;
745
746
  "onInteract-outside"?: ((event: Event) => any) | undefined;
746
747
  }>, {
748
+ sticky: "partial" | "always";
747
749
  class: string;
748
750
  as: string;
749
751
  disabled: boolean;
@@ -760,7 +762,6 @@ collisionBoundary: Element | null | Array<Element | null>;
760
762
  collisionPadding: number | Partial<Record<"top" | "right" | "bottom" | "left", number>>;
761
763
  arrowPadding: number;
762
764
  hideShiftedArrow: boolean;
763
- sticky: "partial" | "always";
764
765
  hideWhenDetached: boolean;
765
766
  positionStrategy: "fixed" | "absolute";
766
767
  updatePositionStrategy: "always" | "optimized";
@@ -798,9 +799,9 @@ select: (event: Event) => any;
798
799
  }, string, PublicProps, Readonly<__VLS_Props_134> & Readonly<{
799
800
  onSelect?: ((event: Event) => any) | undefined;
800
801
  }>, {
802
+ value: string;
801
803
  class: string;
802
804
  label: string | ((term: string) => string);
803
- value: string;
804
805
  as: string;
805
806
  disabled: boolean;
806
807
  asChild: boolean;
@@ -1047,11 +1048,11 @@ declare const __VLS_component_151: DefineComponent<__VLS_Props_160, {}, {}, {},
1047
1048
  "onUpdate:modelValue"?: ((value: number | number[]) => any) | undefined;
1048
1049
  "onValue-commit"?: ((value: number | number[]) => any) | undefined;
1049
1050
  }>, {
1051
+ name: string;
1050
1052
  orientation: "horizontal" | "vertical";
1051
1053
  as: string;
1052
1054
  disabled: boolean;
1053
1055
  asChild: boolean;
1054
- name: string;
1055
1056
  required: boolean;
1056
1057
  min: number;
1057
1058
  max: number;
@@ -1216,9 +1217,9 @@ isInvalid: boolean;
1216
1217
  }, any>;
1217
1218
 
1218
1219
  declare const __VLS_component_157: DefineComponent<__VLS_PublicProps_11, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1219
- "update:modelValue": (value: DateRange_2 | null | undefined) => any;
1220
+ "update:modelValue": (value: DateRange_3 | null | undefined) => any;
1220
1221
  }, string, PublicProps, Readonly<__VLS_PublicProps_11> & Readonly<{
1221
- "onUpdate:modelValue"?: ((value: DateRange_2 | null | undefined) => any) | undefined;
1222
+ "onUpdate:modelValue"?: ((value: DateRange_3 | null | undefined) => any) | undefined;
1222
1223
  }>, {
1223
1224
  size: "md" | "sm" | "lg";
1224
1225
  variant: "flat" | "bordered" | "faded" | "underlined" | "raised";
@@ -1235,10 +1236,10 @@ fieldRef: ({
1235
1236
  $: ComponentInternalInstance;
1236
1237
  $data: {};
1237
1238
  $props: {
1238
- readonly defaultValue?: DateRange_3 | undefined;
1239
+ readonly defaultValue?: DateRange_4 | undefined;
1239
1240
  readonly defaultPlaceholder?: DateValue | undefined;
1240
1241
  readonly placeholder?: DateValue | undefined;
1241
- readonly modelValue?: (DateRange_3 | null) | undefined;
1242
+ readonly modelValue?: (DateRange_4 | null) | undefined;
1242
1243
  readonly hourCycle?: HourCycle;
1243
1244
  readonly step?: DateStep | undefined;
1244
1245
  readonly granularity?: Granularity | undefined;
@@ -1255,7 +1256,7 @@ readonly asChild?: boolean | undefined;
1255
1256
  readonly as?: (AsTag | Component) | undefined;
1256
1257
  readonly name?: string | undefined;
1257
1258
  readonly required?: boolean | undefined;
1258
- readonly "onUpdate:modelValue"?: ((args_0: DateRange_3) => any) | undefined | undefined;
1259
+ readonly "onUpdate:modelValue"?: ((args_0: DateRange_4) => any) | undefined | undefined;
1259
1260
  readonly "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined | undefined;
1260
1261
  } & VNodeProps & AllowedComponentProps & ComponentCustomProps;
1261
1262
  $attrs: Attrs;
@@ -1268,15 +1269,15 @@ $slots: Readonly<{
1268
1269
  $root: ComponentPublicInstance | null;
1269
1270
  $parent: ComponentPublicInstance | null;
1270
1271
  $host: Element | null;
1271
- $emit: ((event: "update:modelValue", args_0: DateRange_3) => void) & ((event: "update:placeholder", date: DateValue) => void);
1272
+ $emit: ((event: "update:modelValue", args_0: DateRange_4) => void) & ((event: "update:placeholder", date: DateValue) => void);
1272
1273
  $el: any;
1273
1274
  $options: ComponentOptionsBase<Readonly<DateRangeFieldRootProps> & Readonly<{
1274
- "onUpdate:modelValue"?: ((args_0: DateRange_3) => any) | undefined;
1275
+ "onUpdate:modelValue"?: ((args_0: DateRange_4) => any) | undefined;
1275
1276
  "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined;
1276
1277
  }>, {
1277
1278
  setFocusedElement: (el: HTMLElement) => void;
1278
1279
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1279
- "update:modelValue": (args_0: DateRange_3) => any;
1280
+ "update:modelValue": (args_0: DateRange_4) => any;
1280
1281
  "update:placeholder": (date: DateValue) => any;
1281
1282
  }, string, {}, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
1282
1283
  beforeCreate?: (() => void) | (() => void)[];
@@ -1299,14 +1300,14 @@ $forceUpdate: () => void;
1299
1300
  $nextTick: nextTick;
1300
1301
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
1301
1302
  } & Readonly<{}> & Omit<Readonly<DateRangeFieldRootProps> & Readonly<{
1302
- "onUpdate:modelValue"?: ((args_0: DateRange_3) => any) | undefined;
1303
+ "onUpdate:modelValue"?: ((args_0: DateRange_4) => any) | undefined;
1303
1304
  "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined;
1304
1305
  }>, "setFocusedElement"> & {
1305
1306
  setFocusedElement: (el: HTMLElement) => void;
1306
1307
  } & {} & ComponentCustomProperties & {} & {
1307
1308
  $slots: {
1308
1309
  default?: (props: {
1309
- modelValue: DateRange_3 | null;
1310
+ modelValue: DateRange_4 | null;
1310
1311
  segments: {
1311
1312
  start: {
1312
1313
  part: SegmentPart;
@@ -1561,13 +1562,13 @@ format: ColorFormat;
1561
1562
 
1562
1563
  declare const __VLS_component_17: DefineComponent<__VLS_Props_18, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_18> & Readonly<{}>, {
1563
1564
  size: "md" | "sm" | "lg" | "xs" | "xl";
1565
+ value: string | number;
1564
1566
  variant: "default" | "danger" | "success" | "warning" | "bordered" | "primary" | "secondary" | "soft" | "solid" | "ghost" | "tertiary" | "danger-soft" | "success-soft" | "warning-soft" | "outline";
1565
1567
  color: "default" | "danger" | "success" | "warning" | "primary";
1566
1568
  fullWidth: boolean;
1567
1569
  isIconOnly: boolean;
1568
1570
  isLoading: boolean;
1569
1571
  radius: "md" | "sm" | "lg" | "none" | "full";
1570
- value: string | number;
1571
1572
  as: string | object;
1572
1573
  disabled: boolean;
1573
1574
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
@@ -1593,15 +1594,15 @@ declare const __VLS_component_19: DefineComponent<__VLS_Props_21, {}, {}, {}, {}
1593
1594
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1594
1595
  }>, {
1595
1596
  size: "md" | "sm" | "lg";
1597
+ value: string;
1598
+ name: string;
1596
1599
  variant: "default" | "ghost";
1597
1600
  isIconOnly: boolean;
1598
- value: string;
1599
1601
  as: string;
1600
1602
  disabled: boolean;
1601
1603
  asChild: boolean;
1602
1604
  modelValue: boolean;
1603
1605
  defaultValue: boolean;
1604
- name: string;
1605
1606
  required: boolean;
1606
1607
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
1607
1608
 
@@ -1730,16 +1731,16 @@ declare const __VLS_component_27: DefineComponent<__VLS_Props_30, {}, {}, {}, {}
1730
1731
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
1731
1732
  }>, {
1732
1733
  id: string;
1734
+ value: string;
1735
+ name: string;
1733
1736
  variant: "primary" | "secondary";
1734
1737
  isInvalid: boolean;
1735
1738
  isIndeterminate: boolean;
1736
- value: string;
1737
1739
  as: string;
1738
1740
  disabled: boolean;
1739
1741
  asChild: boolean;
1740
1742
  modelValue: boolean;
1741
1743
  defaultValue: boolean;
1742
- name: string;
1743
1744
  required: boolean;
1744
1745
  trueValue: boolean | string | number;
1745
1746
  falseValue: boolean | string | number;
@@ -1753,8 +1754,9 @@ declare const __VLS_component_28: DefineComponent<__VLS_Props_31, {}, {}, {}, {}
1753
1754
  }, string, PublicProps, Readonly<__VLS_Props_31> & Readonly<{
1754
1755
  "onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
1755
1756
  }>, {
1756
- variant: "primary" | "secondary";
1757
1757
  description: string;
1758
+ name: string;
1759
+ variant: "primary" | "secondary";
1758
1760
  label: string;
1759
1761
  errorMessage: string;
1760
1762
  isInvalid: boolean;
@@ -1762,7 +1764,6 @@ orientation: "horizontal" | "vertical";
1762
1764
  disabled: boolean;
1763
1765
  modelValue: string[];
1764
1766
  defaultValue: string[];
1765
- name: string;
1766
1767
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
1767
1768
 
1768
1769
  declare const __VLS_component_29: DefineComponent<__VLS_Props_32, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
@@ -1771,6 +1772,7 @@ select: (event: Event) => any;
1771
1772
  onSelect?: ((event: Event) => any) | undefined;
1772
1773
  }>, {
1773
1774
  id: string;
1775
+ name: string;
1774
1776
  variant: "primary" | "secondary";
1775
1777
  class: string | false | Record<string, unknown> | ClassValue[] | null;
1776
1778
  isInvalid: boolean;
@@ -1783,7 +1785,6 @@ content: ClassValue;
1783
1785
  }>;
1784
1786
  disabled: boolean;
1785
1787
  asChild: boolean;
1786
- name: string;
1787
1788
  required: boolean;
1788
1789
  indicatorForceMount: boolean;
1789
1790
  indicatorAsChild: boolean;
@@ -1801,8 +1802,9 @@ declare const __VLS_component_30: DefineComponent<__VLS_Props_33, {}, {}, {}, {}
1801
1802
  }, string, PublicProps, Readonly<__VLS_Props_33> & Readonly<{
1802
1803
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
1803
1804
  }>, {
1804
- variant: "primary" | "secondary";
1805
1805
  description: string;
1806
+ name: string;
1807
+ variant: "primary" | "secondary";
1806
1808
  label: string;
1807
1809
  errorMessage: string;
1808
1810
  isInvalid: boolean;
@@ -1812,7 +1814,6 @@ disabled: boolean;
1812
1814
  asChild: boolean;
1813
1815
  modelValue: string;
1814
1816
  defaultValue: string;
1815
- name: string;
1816
1817
  required: boolean;
1817
1818
  dir: "ltr" | "rtl";
1818
1819
  loop: boolean;
@@ -1825,14 +1826,14 @@ declare const __VLS_component_31: DefineComponent<__VLS_Props_34, {}, {}, {}, {}
1825
1826
  }>, {
1826
1827
  id: string;
1827
1828
  size: "md" | "sm" | "lg";
1828
- isInvalid: boolean;
1829
1829
  value: string;
1830
+ name: string;
1831
+ isInvalid: boolean;
1830
1832
  as: string;
1831
1833
  disabled: boolean;
1832
1834
  asChild: boolean;
1833
1835
  modelValue: boolean;
1834
1836
  defaultValue: boolean;
1835
- name: string;
1836
1837
  required: boolean;
1837
1838
  trueValue: boolean | string | number;
1838
1839
  falseValue: boolean | string | number;
@@ -1847,6 +1848,7 @@ declare const __VLS_component_32: DefineComponent<__VLS_Props_35, {}, {}, {}, {}
1847
1848
  }>, {
1848
1849
  size: "md" | "sm" | "lg";
1849
1850
  description: string;
1851
+ name: string;
1850
1852
  label: string;
1851
1853
  errorMessage: string;
1852
1854
  isInvalid: boolean;
@@ -1854,7 +1856,6 @@ orientation: "horizontal" | "vertical";
1854
1856
  disabled: boolean;
1855
1857
  modelValue: string[];
1856
1858
  defaultValue: string[];
1857
- name: string;
1858
1859
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
1859
1860
 
1860
1861
  declare const __VLS_component_33: DefineComponent<__VLS_Props_37, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_37> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
@@ -2305,18 +2306,18 @@ onHighlight?: ((context: unknown) => any) | undefined;
2305
2306
  onLeave?: ((event: Event) => any) | undefined;
2306
2307
  "onLoad-more"?: (() => any) | undefined;
2307
2308
  }>, {
2309
+ name: string;
2310
+ multiple: boolean;
2308
2311
  variant: "default" | "danger";
2309
2312
  isDisabled: boolean;
2310
2313
  class: string | false | Record<string, unknown> | ClassValue[] | null;
2311
2314
  isLoading: boolean;
2312
2315
  orientation: "horizontal" | "vertical";
2313
2316
  as: string;
2314
- multiple: boolean;
2315
2317
  asChild: boolean;
2316
2318
  selectionMode: "single" | "multiple";
2317
2319
  modelValue: string | string[];
2318
2320
  defaultValue: string | string[];
2319
- name: string;
2320
2321
  required: boolean;
2321
2322
  dir: "ltr" | "rtl";
2322
2323
  maxHeight: string | number;
@@ -2420,6 +2421,7 @@ declare const __VLS_component_99: DefineComponent<Props_3, {}, {}, {}, {}, Compo
2420
2421
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
2421
2422
  }>, {
2422
2423
  size: "md" | "sm" | "lg";
2424
+ multiple: boolean;
2423
2425
  variant: "flat" | "bordered" | "faded" | "underlined" | "raised";
2424
2426
  isDisabled: boolean;
2425
2427
  color: "default" | "danger" | "success" | "warning" | "primary" | "secondary";
@@ -2429,7 +2431,6 @@ isReadonly: boolean;
2429
2431
  labelPlacement: "inside" | "outside" | "outside-left";
2430
2432
  isRequired: boolean;
2431
2433
  items: SelectItemData[];
2432
- multiple: boolean;
2433
2434
  modelValue: SelectItemValue | SelectItemValue[];
2434
2435
  defaultValue: SelectItemValue | SelectItemValue[];
2435
2436
  dir: "ltr" | "rtl";
@@ -3895,7 +3896,7 @@ declare type __VLS_Props_166 = {
3895
3896
  };
3896
3897
 
3897
3898
  declare type __VLS_Props_167 = {
3898
- defaultValue?: DateRange | null;
3899
+ defaultValue?: DateRange_2 | null;
3899
3900
  defaultPlaceholder?: DateValue;
3900
3901
  minValue?: DateValue;
3901
3902
  maxValue?: DateValue;
@@ -5573,7 +5574,7 @@ declare type __VLS_PublicProps_10 = {
5573
5574
  } & __VLS_Props_169;
5574
5575
 
5575
5576
  declare type __VLS_PublicProps_11 = {
5576
- modelValue?: DateRange_2 | null | undefined;
5577
+ modelValue?: DateRange_3 | null | undefined;
5577
5578
  } & __VLS_Props_170;
5578
5579
 
5579
5580
  declare type __VLS_PublicProps_12 = {
@@ -5620,7 +5621,7 @@ declare type __VLS_PublicProps_7 = {
5620
5621
  } & __VLS_Props_166;
5621
5622
 
5622
5623
  declare type __VLS_PublicProps_8 = {
5623
- modelValue?: DateRange | null;
5624
+ modelValue?: DateRange_2 | null;
5624
5625
  } & __VLS_Props_167;
5625
5626
 
5626
5627
  declare type __VLS_PublicProps_9 = {
@@ -6313,7 +6314,7 @@ declare function __VLS_template_145(): {
6313
6314
  attrs: Partial<{}>;
6314
6315
  slots: {
6315
6316
  default?(_: {
6316
- status: StepStatus;
6317
+ status: StepStatus_2;
6317
6318
  step: number;
6318
6319
  isCurrent: boolean;
6319
6320
  isCompleted: boolean;
@@ -6534,10 +6535,10 @@ declare function __VLS_template_157(): {
6534
6535
  $: ComponentInternalInstance;
6535
6536
  $data: {};
6536
6537
  $props: {
6537
- readonly defaultValue?: DateRange_3 | undefined;
6538
+ readonly defaultValue?: DateRange_4 | undefined;
6538
6539
  readonly defaultPlaceholder?: DateValue | undefined;
6539
6540
  readonly placeholder?: DateValue | undefined;
6540
- readonly modelValue?: (DateRange_3 | null) | undefined;
6541
+ readonly modelValue?: (DateRange_4 | null) | undefined;
6541
6542
  readonly hourCycle?: HourCycle;
6542
6543
  readonly step?: DateStep | undefined;
6543
6544
  readonly granularity?: Granularity | undefined;
@@ -6554,7 +6555,7 @@ declare function __VLS_template_157(): {
6554
6555
  readonly as?: (AsTag | Component) | undefined;
6555
6556
  readonly name?: string | undefined;
6556
6557
  readonly required?: boolean | undefined;
6557
- readonly "onUpdate:modelValue"?: ((args_0: DateRange_3) => any) | undefined | undefined;
6558
+ readonly "onUpdate:modelValue"?: ((args_0: DateRange_4) => any) | undefined | undefined;
6558
6559
  readonly "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined | undefined;
6559
6560
  } & VNodeProps & AllowedComponentProps & ComponentCustomProps;
6560
6561
  $attrs: Attrs;
@@ -6567,15 +6568,15 @@ declare function __VLS_template_157(): {
6567
6568
  $root: ComponentPublicInstance | null;
6568
6569
  $parent: ComponentPublicInstance | null;
6569
6570
  $host: Element | null;
6570
- $emit: ((event: "update:modelValue", args_0: DateRange_3) => void) & ((event: "update:placeholder", date: DateValue) => void);
6571
+ $emit: ((event: "update:modelValue", args_0: DateRange_4) => void) & ((event: "update:placeholder", date: DateValue) => void);
6571
6572
  $el: any;
6572
6573
  $options: ComponentOptionsBase<Readonly<DateRangeFieldRootProps> & Readonly<{
6573
- "onUpdate:modelValue"?: ((args_0: DateRange_3) => any) | undefined;
6574
+ "onUpdate:modelValue"?: ((args_0: DateRange_4) => any) | undefined;
6574
6575
  "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined;
6575
6576
  }>, {
6576
6577
  setFocusedElement: (el: HTMLElement) => void;
6577
6578
  }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
6578
- "update:modelValue": (args_0: DateRange_3) => any;
6579
+ "update:modelValue": (args_0: DateRange_4) => any;
6579
6580
  "update:placeholder": (date: DateValue) => any;
6580
6581
  }, string, {}, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
6581
6582
  beforeCreate?: (() => void) | (() => void)[];
@@ -6598,14 +6599,14 @@ declare function __VLS_template_157(): {
6598
6599
  $nextTick: nextTick;
6599
6600
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
6600
6601
  } & Readonly<{}> & Omit<Readonly<DateRangeFieldRootProps> & Readonly<{
6601
- "onUpdate:modelValue"?: ((args_0: DateRange_3) => any) | undefined;
6602
+ "onUpdate:modelValue"?: ((args_0: DateRange_4) => any) | undefined;
6602
6603
  "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined;
6603
6604
  }>, "setFocusedElement"> & {
6604
6605
  setFocusedElement: (el: HTMLElement) => void;
6605
6606
  } & {} & ComponentCustomProperties & {} & {
6606
6607
  $slots: {
6607
6608
  default?: (props: {
6608
- modelValue: DateRange_3 | null;
6609
+ modelValue: DateRange_4 | null;
6609
6610
  segments: {
6610
6611
  start: {
6611
6612
  part: SegmentPart;
@@ -9083,6 +9084,10 @@ declare type AccordionShorthandItem = {
9083
9084
 
9084
9085
  export declare const AccordionTrigger: __VLS_WithTemplateSlots_73<typeof __VLS_component_73, __VLS_TemplateResult_73["slots"]>;
9085
9086
 
9087
+ export declare type AccordionType = 'single' | 'multiple';
9088
+
9089
+ export declare type AccordionValue = string | string[] | undefined;
9090
+
9086
9091
  export declare const Alert: __VLS_WithTemplateSlots_86<typeof __VLS_component_86, __VLS_TemplateResult_86["slots"]>;
9087
9092
 
9088
9093
  export declare const AlertDescription: __VLS_WithTemplateSlots_89<typeof __VLS_component_89, __VLS_TemplateResult_89["slots"]>;
@@ -9512,9 +9517,9 @@ onHighlight?: ((value: unknown) => any) | undefined;
9512
9517
  onLeave?: ((event: Event) => any) | undefined;
9513
9518
  }>, {
9514
9519
  size: "md" | "sm" | "lg" | "xs" | "xl";
9515
- variant: "circle" | "square";
9516
- layout: "grid" | "stack";
9517
9520
  multiple: boolean;
9521
+ variant: "circle" | "square";
9522
+ layout: "stack" | "grid";
9518
9523
  disabled: boolean;
9519
9524
  asChild: boolean;
9520
9525
  required: boolean;
@@ -9650,6 +9655,11 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
9650
9655
  end: DateValue;
9651
9656
  }
9652
9657
 
9658
+ declare interface DateRange_3 {
9659
+ start: DateValue;
9660
+ end: DateValue;
9661
+ }
9662
+
9653
9663
  export declare const DateRangeField: __VLS_WithTemplateSlots_157<typeof __VLS_component_157, __VLS_TemplateResult_157["slots"]>;
9654
9664
 
9655
9665
  export declare const DateRangePicker: __VLS_WithTemplateSlots_160<typeof __VLS_component_160, __VLS_TemplateResult_160["slots"]>;
@@ -9896,6 +9906,7 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
9896
9906
  }>, {
9897
9907
  length: number;
9898
9908
  id: string;
9909
+ name: string;
9899
9910
  variant: "primary" | "secondary";
9900
9911
  class: string | false | Record<string, unknown> | ClassValue[] | null;
9901
9912
  type: "text";
@@ -9911,7 +9922,6 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
9911
9922
  placeholder: string;
9912
9923
  modelValue: string;
9913
9924
  defaultValue: string;
9914
- name: string;
9915
9925
  required: boolean;
9916
9926
  inputAsChild: boolean;
9917
9927
  inputAs: string;
@@ -9957,6 +9967,8 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
9957
9967
  textValue?: string;
9958
9968
  };
9959
9969
 
9970
+ export declare type ListBoxValue = string | string[] | undefined;
9971
+
9960
9972
  export { ListBoxVariants }
9961
9973
 
9962
9974
  export declare interface ListData<T> {
@@ -10376,7 +10388,7 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
10376
10388
  errorMessage: ClassValue;
10377
10389
  description: ClassValue;
10378
10390
  }>;
10379
- defaultValue?: DateRange_2;
10391
+ defaultValue?: DateRange_3;
10380
10392
  defaultPlaceholder?: DateValue;
10381
10393
  placeholderValue?: DateValue;
10382
10394
  minValue?: DateValue;
@@ -10829,12 +10841,12 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
10829
10841
  };
10830
10842
 
10831
10843
  export declare const RangeCalendar: DefineComponent<__VLS_PublicProps_8, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
10832
- "update:modelValue": (value: DateRange | null) => any;
10833
- "update:valid-model-value": (value: DateRange | undefined) => any;
10844
+ "update:modelValue": (value: DateRange_2 | null) => any;
10845
+ "update:valid-model-value": (value: DateRange_2 | undefined) => any;
10834
10846
  "update:start-value": (value: DateValue | undefined) => any;
10835
10847
  }, string, PublicProps, Readonly<__VLS_PublicProps_8> & Readonly<{
10836
- "onUpdate:modelValue"?: ((value: DateRange | null) => any) | undefined;
10837
- "onUpdate:valid-model-value"?: ((value: DateRange | undefined) => any) | undefined;
10848
+ "onUpdate:modelValue"?: ((value: DateRange_2 | null) => any) | undefined;
10849
+ "onUpdate:valid-model-value"?: ((value: DateRange_2 | undefined) => any) | undefined;
10838
10850
  "onUpdate:start-value"?: ((value: DateValue | undefined) => any) | undefined;
10839
10851
  }>, {
10840
10852
  disabled: boolean;
@@ -10943,10 +10955,12 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
10943
10955
 
10944
10956
  export declare const Slider: __VLS_WithTemplateSlots_151<typeof __VLS_component_151, __VLS_TemplateResult_151["slots"]>;
10945
10957
 
10958
+ export declare type SliderValue = number | number[];
10959
+
10946
10960
  export declare const Spinner: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
10947
10961
  size: "md" | "sm" | "lg" | "xl";
10948
10962
  label: string;
10949
- color: "accent" | "danger" | "success" | "warning" | "current";
10963
+ color: "current" | "accent" | "danger" | "success" | "warning";
10950
10964
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
10951
10965
 
10952
10966
  export { SpinnerVariants }
@@ -10975,7 +10989,7 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
10975
10989
  size: ComputedRef<StepperVariants['size']>;
10976
10990
  color: ComputedRef<StepperVariants['color']>;
10977
10991
  totalSteps: ComputedRef<number>;
10978
- getStepStatus: (step: number) => StepStatus;
10992
+ getStepStatus: (step: number) => StepStatus_2;
10979
10993
  }
10980
10994
 
10981
10995
  export declare const stepperContextKey: InjectionKey<StepperContext>;
@@ -11002,7 +11016,9 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11002
11016
 
11003
11017
  export { StepperVariants }
11004
11018
 
11005
- export declare type StepStatus = 'pending' | 'current' | 'completed' | 'error';
11019
+ export declare type StepStatus = 'completed' | 'current' | 'pending';
11020
+
11021
+ declare type StepStatus_2 = 'pending' | 'current' | 'completed' | 'error';
11006
11022
 
11007
11023
  export declare const Surface: __VLS_WithTemplateSlots_10<typeof __VLS_component_10, __VLS_TemplateResult_10["slots"]>;
11008
11024
 
@@ -11428,18 +11444,225 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11428
11444
 
11429
11445
  export declare const TreeItemToggle: __VLS_WithTemplateSlots_150<typeof __VLS_component_150, __VLS_TemplateResult_150["slots"]>;
11430
11446
 
11447
+ export declare type TreeValue = string | string[] | undefined;
11448
+
11431
11449
  export { TreeVariants }
11432
11450
 
11433
11451
  declare function trigger(name?: string): Promise<boolean>;
11434
11452
 
11453
+ /**
11454
+ * Manages expanded item state for the Accordion component.
11455
+ *
11456
+ * @example
11457
+ * ```ts
11458
+ * const accordion = useAccordion({ type: 'single', collapsible: true })
11459
+ * ```
11460
+ * ```html
11461
+ * <Accordion :type="'single'" :model-value="accordion.expanded" @update:model-value="accordion.onValueChange">
11462
+ * ...
11463
+ * </Accordion>
11464
+ * ```
11465
+ */
11466
+ export declare function useAccordion(options?: UseAccordionOptions): UseAccordionReturn;
11467
+
11468
+ export declare interface UseAccordionOptions {
11469
+ /** Whether to allow only one item open at a time ('single') or multiple ('multiple'). Defaults to 'single'. */
11470
+ type?: AccordionType;
11471
+ /** Initial expanded item(s). String for single mode, string[] for multiple mode. */
11472
+ defaultExpanded?: AccordionValue;
11473
+ /** In single mode, whether all items can be collapsed. Defaults to false. */
11474
+ collapsible?: boolean;
11475
+ }
11476
+
11477
+ export declare interface UseAccordionReturn {
11478
+ /** Reactive expanded item(s). String in single mode, string[] in multiple mode. */
11479
+ expanded: Ref<AccordionValue>;
11480
+ /** Whether a given item is currently expanded. */
11481
+ isExpanded: (key: string) => boolean;
11482
+ /** Expand a specific item. */
11483
+ expand: (key: string) => void;
11484
+ /** Collapse a specific item. No-op in single non-collapsible mode. */
11485
+ collapse: (key: string) => void;
11486
+ /** Toggle a specific item open or closed. */
11487
+ toggle: (key: string) => void;
11488
+ /** Collapse all items. Only fully effective in multiple or collapsible-single mode. */
11489
+ collapseAll: () => void;
11490
+ /**
11491
+ * Pass as `@update:model-value` handler on the Accordion component.
11492
+ * Keeps `expanded` in sync when the component changes state internally.
11493
+ */
11494
+ onValueChange: (value: AccordionValue) => void;
11495
+ }
11496
+
11435
11497
  export declare const useAutocompleteInject: (fallback?: AutocompleteContext | undefined) => AutocompleteContext;
11436
11498
 
11437
11499
  export declare const useAutocompleteProvide: (value: AutocompleteContext) => AutocompleteContext;
11438
11500
 
11501
+ /**
11502
+ * Manages selected date state for the Calendar component.
11503
+ *
11504
+ * @example
11505
+ * ```ts
11506
+ * const calendar = useCalendar()
11507
+ * ```
11508
+ * ```html
11509
+ * <Calendar v-model="calendar.value" />
11510
+ * ```
11511
+ */
11512
+ export declare function useCalendar(options?: UseCalendarOptions): UseCalendarReturn;
11513
+
11514
+ export declare interface UseCalendarOptions {
11515
+ /** Initial selected date for uncontrolled usage. */
11516
+ defaultValue?: DateValue;
11517
+ /** Minimum selectable date. */
11518
+ minValue?: DateValue;
11519
+ /** Maximum selectable date. */
11520
+ maxValue?: DateValue;
11521
+ /** Returns true for dates that should be disabled (not selectable). */
11522
+ isDateDisabled?: (date: DateValue) => boolean;
11523
+ /** Returns true for dates that are unavailable (selectable but marked unavailable). */
11524
+ isDateUnavailable?: (date: DateValue) => boolean;
11525
+ }
11526
+
11527
+ export declare interface UseCalendarReturn {
11528
+ /** Reactive selected date value. */
11529
+ value: Ref<DateValue | undefined>;
11530
+ /** Whether a date is currently selected. */
11531
+ hasValue: ComputedRef<boolean>;
11532
+ /** Set the selected date. */
11533
+ setValue: (date: DateValue) => void;
11534
+ /** Clear the selected date. */
11535
+ clear: () => void;
11536
+ /** Returns true if the given date is disabled per the `isDateDisabled` option. */
11537
+ isDisabled: (date: DateValue) => boolean;
11538
+ /** Returns true if the given date is unavailable per the `isDateUnavailable` option. */
11539
+ isUnavailable: (date: DateValue) => boolean;
11540
+ /**
11541
+ * Pass as `v-model` on the Calendar component.
11542
+ * Keeps `value` in sync when the component changes selection internally.
11543
+ */
11544
+ onValueChange: (date: DateValue | undefined) => void;
11545
+ }
11546
+
11547
+ /**
11548
+ * Manages checked state for a CheckboxGroup.
11549
+ *
11550
+ * @example
11551
+ * ```ts
11552
+ * const group = useCheckboxGroup({
11553
+ * options: ['apple', 'banana', 'cherry'],
11554
+ * defaultValues: ['apple'],
11555
+ * })
11556
+ * ```
11557
+ * ```html
11558
+ * <CheckboxGroup :model-value="group.values" @update:model-value="group.onValueChange">
11559
+ * <Checkbox value="apple">Apple</Checkbox>
11560
+ * <Checkbox value="banana">Banana</Checkbox>
11561
+ * <Checkbox value="cherry">Cherry</Checkbox>
11562
+ * </CheckboxGroup>
11563
+ * ```
11564
+ */
11565
+ export declare function useCheckboxGroup(options?: UseCheckboxGroupOptions): UseCheckboxGroupReturn;
11566
+
11439
11567
  export declare const useCheckboxGroupInject: (fallback?: CheckboxGroupContext | undefined) => CheckboxGroupContext;
11440
11568
 
11569
+ export declare interface UseCheckboxGroupOptions {
11570
+ /** Initial checked values. */
11571
+ defaultValues?: string[];
11572
+ /**
11573
+ * Full set of option keys in the group.
11574
+ * Required for `isIndeterminate` and `isAllChecked` to be accurate.
11575
+ */
11576
+ options?: string[];
11577
+ }
11578
+
11441
11579
  export declare const useCheckboxGroupProvide: (value: CheckboxGroupContext) => CheckboxGroupContext;
11442
11580
 
11581
+ export declare interface UseCheckboxGroupReturn {
11582
+ /** Reactive array of currently checked values. */
11583
+ values: Ref<string[]>;
11584
+ /** Whether a given value is currently checked. */
11585
+ isChecked: (value: string) => boolean;
11586
+ /** Toggle a value — checks it if unchecked, unchecks if checked. */
11587
+ toggle: (value: string) => void;
11588
+ /** Check all provided values (merges with existing). */
11589
+ checkAll: (keys: string[]) => void;
11590
+ /** Uncheck all values. */
11591
+ uncheckAll: () => void;
11592
+ /** Set the checked values directly. */
11593
+ setValues: (values: string[]) => void;
11594
+ /**
11595
+ * True when some — but not all — options are checked.
11596
+ * Requires `options` to be provided in the options object.
11597
+ */
11598
+ isIndeterminate: ComputedRef<boolean>;
11599
+ /**
11600
+ * True when every option is checked.
11601
+ * Requires `options` to be provided in the options object.
11602
+ */
11603
+ isAllChecked: ComputedRef<boolean>;
11604
+ /**
11605
+ * Pass as `@update:model-value` handler on the CheckboxGroup component.
11606
+ * Keeps `values` in sync when the component changes state internally.
11607
+ */
11608
+ onValueChange: (values: string[]) => void;
11609
+ }
11610
+
11611
+ /**
11612
+ * High-level composable for controlling the ColorPicker component.
11613
+ *
11614
+ * Wraps `useColorState` with computed channel accessors and format conversion helpers.
11615
+ *
11616
+ * @example
11617
+ * ```ts
11618
+ * const picker = useColorPicker({ defaultValue: '#3b82f6' })
11619
+ * console.log(picker.hue.value) // 217
11620
+ * console.log(picker.saturation.value) // 91
11621
+ * console.log(picker.brightness.value) // 96
11622
+ * ```
11623
+ * ```html
11624
+ * <ColorPicker v-model="picker.color" />
11625
+ * ```
11626
+ */
11627
+ export declare function useColorPicker(options?: UseColorPickerOptions): UseColorPickerReturn;
11628
+
11629
+ export declare interface UseColorPickerOptions {
11630
+ /** Initial color value. Accepts hex strings (#ff0000), rgb/hsl/hsb strings, or a Color object. Defaults to black. */
11631
+ defaultValue?: string | Color;
11632
+ /** Output format for string serialization methods. Defaults to 'hex'. */
11633
+ format?: ColorFormat;
11634
+ /** Fires with the serialized color string whenever the color changes. */
11635
+ onChange?: (value: string, color: Color) => void;
11636
+ }
11637
+
11638
+ export declare interface UseColorPickerReturn {
11639
+ /** The raw reactive Color object. */
11640
+ color: Ref<Color>;
11641
+ /** Set the color from a string (hex, rgb, hsl, hsb) or a Color object. */
11642
+ setColor: (value: string | Color) => void;
11643
+ /** Computed hue channel value (0–360). */
11644
+ hue: ComputedRef<number>;
11645
+ /** Computed saturation channel value (0–100). */
11646
+ saturation: ComputedRef<number>;
11647
+ /** Computed brightness channel value (0–100). */
11648
+ brightness: ComputedRef<number>;
11649
+ /** Computed alpha channel value (0–100). */
11650
+ alpha: ComputedRef<number>;
11651
+ /** Serialize the current color to a hex string (e.g. '#ff0000'). */
11652
+ toHex: () => string;
11653
+ /** Serialize the current color to an rgb/rgba string. */
11654
+ toRgb: () => string;
11655
+ /** Serialize the current color to an hsl/hsla string. */
11656
+ toHsl: () => string;
11657
+ /** Serialize the current color to an hsb/hsba string. */
11658
+ toHsb: () => string;
11659
+ /**
11660
+ * Pass as `@update:model-value` handler on the ColorPicker component.
11661
+ * Keeps `color` in sync when the component changes internally.
11662
+ */
11663
+ onColorChange: (value: string | Color) => void;
11664
+ }
11665
+
11443
11666
  export declare function useColorState(props?: UseColorStateProps): UseColorStateReturn;
11444
11667
 
11445
11668
  export declare interface UseColorStateProps {
@@ -11486,6 +11709,39 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11486
11709
  */
11487
11710
  export declare function useCSSVariable(el: Ref<HTMLElement | null | undefined>, variable: string): Ref<string>;
11488
11711
 
11712
+ /**
11713
+ * Manages programmatic open/close state for overlay components.
11714
+ *
11715
+ * Wire the returned refs and handlers directly into the component:
11716
+ *
11717
+ * @example
11718
+ * ```ts
11719
+ * const modal = useDisclosure()
11720
+ * await saveData()
11721
+ * modal.open()
11722
+ * ```
11723
+ * ```html
11724
+ * <Modal :open="modal.isOpen" @update:open="modal.onOpenChange">...</Modal>
11725
+ * ```
11726
+ */
11727
+ export declare function useDisclosure(defaultOpen?: boolean): UseDisclosureReturn;
11728
+
11729
+ export declare interface UseDisclosureReturn {
11730
+ /** Whether the element is currently open. */
11731
+ isOpen: Readonly<ReturnType<typeof ref<boolean>>>;
11732
+ /** Open the element. */
11733
+ open: () => void;
11734
+ /** Close the element. */
11735
+ close: () => void;
11736
+ /** Toggle the element open/closed. */
11737
+ toggle: () => void;
11738
+ /**
11739
+ * Pass as `@update:open` handler on the component.
11740
+ * Keeps `isOpen` in sync when the component closes itself (e.g. Escape key, backdrop click).
11741
+ */
11742
+ onOpenChange: (value: boolean) => void;
11743
+ }
11744
+
11489
11745
  export declare const useDropdownInject: (fallback?: DropdownContext | undefined) => DropdownContext;
11490
11746
 
11491
11747
  export declare const useDropdownProvide: (value: DropdownContext) => DropdownContext;
@@ -11526,6 +11782,51 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11526
11782
  */
11527
11783
  export declare function useIsMounted(): Ref<boolean>;
11528
11784
 
11785
+ /**
11786
+ * Manages selection state for the ListBox component.
11787
+ *
11788
+ * @example
11789
+ * ```ts
11790
+ * const listBox = useListBox({ multiple: true, defaultSelected: ['apple'] })
11791
+ * ```
11792
+ * ```html
11793
+ * <ListBox :model-value="listBox.selected" @update:model-value="listBox.onSelectionChange">
11794
+ * <ListBoxItem value="apple">Apple</ListBoxItem>
11795
+ * <ListBoxItem value="banana">Banana</ListBoxItem>
11796
+ * </ListBox>
11797
+ * ```
11798
+ */
11799
+ export declare function useListBox(options?: UseListBoxOptions): UseListBoxReturn;
11800
+
11801
+ export declare interface UseListBoxOptions {
11802
+ /** Enable multi-selection. Defaults to false. */
11803
+ multiple?: boolean;
11804
+ /** Initial selected value(s). */
11805
+ defaultSelected?: ListBoxValue;
11806
+ }
11807
+
11808
+ export declare interface UseListBoxReturn {
11809
+ /** Reactive selected value(s). String in single mode, string[] in multiple mode. */
11810
+ selected: Ref<ListBoxValue>;
11811
+ /** Whether a given key is currently selected. */
11812
+ isSelected: (key: string) => boolean;
11813
+ /** Select an item. In single mode, replaces the current selection. */
11814
+ select: (key: string) => void;
11815
+ /** Deselect an item. */
11816
+ deselect: (key: string) => void;
11817
+ /** Toggle an item's selection state. */
11818
+ toggle: (key: string) => void;
11819
+ /** Select all provided keys. Only effective in multiple mode. */
11820
+ selectAll: (keys: string[]) => void;
11821
+ /** Clear all selections. */
11822
+ deselectAll: () => void;
11823
+ /**
11824
+ * Pass as `@update:model-value` handler on the ListBox component.
11825
+ * Keeps `selected` in sync when the component changes selection internally.
11826
+ */
11827
+ onSelectionChange: (value: ListBoxValue) => void;
11828
+ }
11829
+
11529
11830
  /**
11530
11831
  * Manages list state: filter text, selected keys, and item CRUD operations.
11531
11832
  * Ported from @react-stately/data (Apache 2.0).
@@ -11563,6 +11864,32 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11563
11864
  */
11564
11865
  export declare function useMediaQuery(query: string): Ref<boolean>;
11565
11866
 
11867
+ export declare function useOTP(options?: UseOTPOptions): UseOTPReturn;
11868
+
11869
+ export declare interface UseOTPOptions {
11870
+ /** Number of OTP slots. Defaults to 6. */
11871
+ length?: number;
11872
+ /** Initial OTP value string. */
11873
+ defaultValue?: string;
11874
+ /** Fires on every keystroke with the current value. */
11875
+ onChange?: (value: string) => void;
11876
+ /** Fires when all slots are filled. */
11877
+ onComplete?: (value: string) => void;
11878
+ }
11879
+
11880
+ export declare interface UseOTPReturn {
11881
+ /** The current OTP value string. */
11882
+ value: Readonly<Ref<string>>;
11883
+ /** True when the value length equals the configured length. */
11884
+ isComplete: ComputedRef<boolean>;
11885
+ /** Clear the OTP value. */
11886
+ reset: () => void;
11887
+ /** Pass as `@update:model-value` on the InputOTP component. */
11888
+ onValueChange: (value: string) => void;
11889
+ /** Pass as `@complete` on the InputOTP component. */
11890
+ onOTPComplete: (value: string) => void;
11891
+ }
11892
+
11566
11893
  /**
11567
11894
  * Composable for controlled/uncontrolled overlay open state.
11568
11895
  *
@@ -11647,16 +11974,312 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11647
11974
  toggle: () => void;
11648
11975
  }
11649
11976
 
11977
+ /**
11978
+ * Manages pagination state for the Pagination component.
11979
+ *
11980
+ * @example
11981
+ * ```ts
11982
+ * const pagination = usePagination({ totalItems: 200, pageSize: 20 })
11983
+ * ```
11984
+ * ```html
11985
+ * <Pagination
11986
+ * :page="pagination.page"
11987
+ * :total-items="pagination.totalItems"
11988
+ * :items-per-page="pagination.pageSize"
11989
+ * @update:page="pagination.onPageChange"
11990
+ * />
11991
+ * ```
11992
+ */
11993
+ export declare function usePagination(options?: UsePaginationOptions): UsePaginationReturn;
11994
+
11650
11995
  export declare const usePaginationInject: (fallback?: PaginationContext | undefined) => PaginationContext;
11651
11996
 
11997
+ export declare interface UsePaginationOptions {
11998
+ /** Total number of items across all pages. */
11999
+ totalItems?: number;
12000
+ /** Number of items per page. Defaults to 10. */
12001
+ pageSize?: number;
12002
+ /** Initial page for uncontrolled usage. Defaults to 1. */
12003
+ defaultPage?: number;
12004
+ }
12005
+
11652
12006
  export declare const usePaginationProvide: (value: PaginationContext) => PaginationContext;
11653
12007
 
12008
+ export declare interface UsePaginationReturn {
12009
+ /** Reactive current page number (1-based). */
12010
+ page: Ref<number>;
12011
+ /** Reactive number of items per page. */
12012
+ pageSize: Ref<number>;
12013
+ /** Reactive total item count. */
12014
+ totalItems: Ref<number>;
12015
+ /** Computed total number of pages. Minimum 1. */
12016
+ totalPages: ComputedRef<number>;
12017
+ /** Whether the current page is the first page. */
12018
+ isFirst: ComputedRef<boolean>;
12019
+ /** Whether the current page is the last page. */
12020
+ isLast: ComputedRef<boolean>;
12021
+ /** Navigate to a specific page number. Clamps to valid range. */
12022
+ goToPage: (page: number) => void;
12023
+ /** Navigate to the next page. No-op on last page. */
12024
+ nextPage: () => void;
12025
+ /** Navigate to the previous page. No-op on first page. */
12026
+ prevPage: () => void;
12027
+ /**
12028
+ * Pass as `@update:page` handler on the Pagination component.
12029
+ * Keeps `page` in sync when the component navigates internally.
12030
+ */
12031
+ onPageChange: (page: number) => void;
12032
+ }
12033
+
12034
+ /**
12035
+ * Manages selection state for the RadioGroup component.
12036
+ *
12037
+ * @example
12038
+ * ```ts
12039
+ * const radio = useRadioGroup({ defaultValue: 'option-a' })
12040
+ * ```
12041
+ * ```html
12042
+ * <RadioGroup :model-value="radio.value" @update:model-value="radio.onValueChange">
12043
+ * <Radio value="option-a">Option A</Radio>
12044
+ * <Radio value="option-b">Option B</Radio>
12045
+ * </RadioGroup>
12046
+ * ```
12047
+ */
12048
+ export declare function useRadioGroup(options?: UseRadioGroupOptions): UseRadioGroupReturn;
12049
+
11654
12050
  export declare const useRadioGroupInject: (fallback?: RadioGroupContext | undefined) => RadioGroupContext;
11655
12051
 
12052
+ export declare interface UseRadioGroupOptions {
12053
+ /** Initial selected value. */
12054
+ defaultValue?: string;
12055
+ }
12056
+
11656
12057
  export declare const useRadioGroupProvide: (value: RadioGroupContext) => RadioGroupContext;
11657
12058
 
12059
+ export declare interface UseRadioGroupReturn {
12060
+ /** Reactive selected radio value. */
12061
+ value: Ref<string | undefined>;
12062
+ /** Set the selected value. */
12063
+ setValue: (value: string) => void;
12064
+ /** Clear the selection. */
12065
+ clear: () => void;
12066
+ /**
12067
+ * Pass as `@update:model-value` handler on the RadioGroup component.
12068
+ * Keeps `value` in sync when the component changes selection internally.
12069
+ */
12070
+ onValueChange: (value: string) => void;
12071
+ }
12072
+
12073
+ /**
12074
+ * Manages selected date range state for the RangeCalendar component.
12075
+ *
12076
+ * @example
12077
+ * ```ts
12078
+ * const range = useRangeCalendar()
12079
+ * ```
12080
+ * ```html
12081
+ * <RangeCalendar v-model="range.value" />
12082
+ * ```
12083
+ */
12084
+ export declare function useRangeCalendar(options?: UseRangeCalendarOptions): UseRangeCalendarReturn;
12085
+
12086
+ export declare interface UseRangeCalendarOptions {
12087
+ /** Initial selected date range for uncontrolled usage. */
12088
+ defaultValue?: DateRange | null;
12089
+ /** Minimum selectable date. */
12090
+ minValue?: DateValue;
12091
+ /** Maximum selectable date. */
12092
+ maxValue?: DateValue;
12093
+ /** Returns true for dates that should be disabled. */
12094
+ isDateDisabled?: (date: DateValue) => boolean;
12095
+ /** Returns true for dates that are unavailable. */
12096
+ isDateUnavailable?: (date: DateValue) => boolean;
12097
+ }
12098
+
12099
+ export declare interface UseRangeCalendarReturn {
12100
+ /** Reactive selected date range (null when no selection). */
12101
+ value: Ref<DateRange | null>;
12102
+ /** Reactive start date of the selected range. */
12103
+ start: ComputedRef<DateValue | null>;
12104
+ /** Reactive end date of the selected range. */
12105
+ end: ComputedRef<DateValue | null>;
12106
+ /** Whether a complete range (start and end) is selected. */
12107
+ isComplete: ComputedRef<boolean>;
12108
+ /** Set the selected date range. */
12109
+ setRange: (range: DateRange) => void;
12110
+ /** Clear the selected range. */
12111
+ clearRange: () => void;
12112
+ /** Returns true if the given date is disabled per the `isDateDisabled` option. */
12113
+ isDisabled: (date: DateValue) => boolean;
12114
+ /** Returns true if the given date is unavailable per the `isDateUnavailable` option. */
12115
+ isUnavailable: (date: DateValue) => boolean;
12116
+ /**
12117
+ * Pass as `v-model` on the RangeCalendar component.
12118
+ * Keeps `value` in sync when the component changes selection internally.
12119
+ */
12120
+ onValueChange: (range: DateRange | null) => void;
12121
+ }
12122
+
12123
+ /**
12124
+ * Manages value state for the Slider component.
12125
+ *
12126
+ * @example
12127
+ * ```ts
12128
+ * // Single thumb
12129
+ * const slider = useSlider({ defaultValue: 40, min: 0, max: 100 })
12130
+ *
12131
+ * // Range (two thumbs)
12132
+ * const range = useSlider({ defaultValue: [20, 80], min: 0, max: 100 })
12133
+ * ```
12134
+ * ```html
12135
+ * <Slider :model-value="slider.value" :min="slider.min" :max="slider.max" @update:model-value="slider.onValueChange" />
12136
+ * ```
12137
+ */
12138
+ export declare function useSlider(options?: UseSliderOptions): UseSliderReturn;
12139
+
12140
+ export declare interface UseSliderOptions {
12141
+ /** Initial value. Use a number for a single thumb, number[] for range mode. Defaults to `min`. */
12142
+ defaultValue?: SliderValue;
12143
+ /** Minimum allowed value. Defaults to 0. */
12144
+ min?: number;
12145
+ /** Maximum allowed value. Defaults to 100. */
12146
+ max?: number;
12147
+ /** Step increment. Defaults to 1. */
12148
+ step?: number;
12149
+ }
12150
+
12151
+ export declare interface UseSliderReturn {
12152
+ /** Reactive slider value. Number in single mode, number[] in range mode. */
12153
+ value: Ref<SliderValue>;
12154
+ /** Minimum value. */
12155
+ min: number;
12156
+ /** Maximum value. */
12157
+ max: number;
12158
+ /** Step increment. */
12159
+ step: number;
12160
+ /** Set the slider value directly. */
12161
+ setValue: (value: SliderValue) => void;
12162
+ /** Clamp a value (or array of values) to [min, max]. */
12163
+ clamp: (value: SliderValue) => SliderValue;
12164
+ /**
12165
+ * Pass as `@update:model-value` handler on the Slider component.
12166
+ * Keeps `value` in sync when the component changes internally.
12167
+ */
12168
+ onValueChange: (value: SliderValue) => void;
12169
+ }
12170
+
12171
+ /**
12172
+ * Tracks panel layout state for the SplitterGroup component.
12173
+ *
12174
+ * @example
12175
+ * ```ts
12176
+ * const splitter = useSplitter({ defaultSizes: [30, 70] })
12177
+ * ```
12178
+ * ```html
12179
+ * <SplitterGroup @layout="splitter.onLayout">
12180
+ * <SplitterPanel :default-size="splitter.sizes[0] ?? 30" />
12181
+ * <SplitterResizeHandle />
12182
+ * <SplitterPanel :default-size="splitter.sizes[1] ?? 70" />
12183
+ * </SplitterGroup>
12184
+ * ```
12185
+ */
12186
+ export declare function useSplitter(options?: UseSplitterOptions): UseSplitterReturn;
12187
+
12188
+ export declare interface UseSplitterOptions {
12189
+ /** Initial panel sizes as percentages (0–100). Should sum to 100. */
12190
+ defaultSizes?: number[];
12191
+ }
12192
+
12193
+ export declare interface UseSplitterReturn {
12194
+ /** Reactive array of panel sizes as percentages. */
12195
+ sizes: Ref<number[]>;
12196
+ /** Set panel sizes directly. */
12197
+ setSizes: (sizes: number[]) => void;
12198
+ /** Reset panel sizes to the values provided in `defaultSizes`. */
12199
+ resetSizes: () => void;
12200
+ /**
12201
+ * Pass as `@layout` handler on the SplitterGroup component.
12202
+ * Keeps `sizes` in sync when the user drags the resize handle.
12203
+ */
12204
+ onLayout: (sizes: number[]) => void;
12205
+ }
12206
+
12207
+ /**
12208
+ * Manages step navigation state for the Stepper component.
12209
+ *
12210
+ * @example
12211
+ * ```ts
12212
+ * const stepper = useStepper({ totalSteps: 4 })
12213
+ * ```
12214
+ * ```html
12215
+ * <Stepper :model-value="stepper.step" :total-steps="stepper.totalSteps" @update:model-value="stepper.onStepChange">
12216
+ * ...
12217
+ * </Stepper>
12218
+ * ```
12219
+ */
12220
+ export declare function useStepper(options?: UseStepperOptions): UseStepperReturn;
12221
+
12222
+ export declare interface UseStepperOptions {
12223
+ /** Total number of steps. Ignored when `steps` array is provided. */
12224
+ totalSteps?: number;
12225
+ /** Step items — `totalSteps` is derived from `steps.length` when provided. */
12226
+ steps?: unknown[];
12227
+ /** Initial step for uncontrolled usage. Defaults to 1. */
12228
+ defaultStep?: number;
12229
+ }
12230
+
12231
+ export declare interface UseStepperReturn {
12232
+ /** Reactive current step (1-based). */
12233
+ step: Ref<number>;
12234
+ /** Total number of steps. */
12235
+ totalSteps: ComputedRef<number>;
12236
+ /** Whether the stepper is on the first step. */
12237
+ isFirst: ComputedRef<boolean>;
12238
+ /** Whether the stepper is on the last step. */
12239
+ isLast: ComputedRef<boolean>;
12240
+ /** Navigate to a specific step number. Clamps to valid range. */
12241
+ goToStep: (step: number) => void;
12242
+ /** Advance to the next step. No-op on the last step. */
12243
+ nextStep: () => void;
12244
+ /** Go back to the previous step. No-op on the first step. */
12245
+ prevStep: () => void;
12246
+ /** Return to the first step. */
12247
+ reset: () => void;
12248
+ /** Returns the display status for a given step number. */
12249
+ getStepStatus: (step: number) => StepStatus;
12250
+ /**
12251
+ * Pass as `@update:model-value` handler on the Stepper component.
12252
+ * Keeps `step` in sync when the component changes step internally.
12253
+ */
12254
+ onStepChange: (step: number) => void;
12255
+ }
12256
+
11658
12257
  export declare const useSurfaceInject: (fallback?: SurfaceContext | undefined) => SurfaceContext;
11659
12258
 
12259
+ export declare function useSwatchPicker(options?: UseSwatchPickerOptions): UseSwatchPickerReturn;
12260
+
12261
+ export declare interface UseSwatchPickerOptions {
12262
+ /** Initial selected color as a hex string (e.g. '#ff0000'). */
12263
+ defaultValue?: string;
12264
+ /** Fires when a swatch is selected with the new hex color. */
12265
+ onChange?: (hex: string) => void;
12266
+ }
12267
+
12268
+ export declare interface UseSwatchPickerReturn {
12269
+ /** The currently selected color as a hex string. */
12270
+ selectedColor: Readonly<Ref<string>>;
12271
+ /** True when a color is selected (non-empty). */
12272
+ hasSelection: ComputedRef<boolean>;
12273
+ /** Select a color by hex string. */
12274
+ setColor: (hex: string) => void;
12275
+ /** Clear the selection. */
12276
+ clearSelection: () => void;
12277
+ /** Returns true if the given hex string is the currently selected color. */
12278
+ isSelected: (hex: string) => boolean;
12279
+ /** Pass as `@update:model-value` on the ColorSwatchPicker component. */
12280
+ onColorChange: (hex: string) => void;
12281
+ }
12282
+
11660
12283
  export declare const useSwitchGroupInject: (fallback?: SwitchGroupContext | undefined) => SwitchGroupContext;
11661
12284
 
11662
12285
  export declare const useSwitchGroupProvide: (value: SwitchGroupContext) => SwitchGroupContext;
@@ -11678,6 +12301,39 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11678
12301
 
11679
12302
  export declare const useTableProvide: (value: TableContext) => TableContext;
11680
12303
 
12304
+ /**
12305
+ * Manages active tab state for the Tabs component.
12306
+ *
12307
+ * @example
12308
+ * ```ts
12309
+ * const tabs = useTabs({ defaultTab: 'overview' })
12310
+ * ```
12311
+ * ```html
12312
+ * <Tabs :model-value="tabs.activeTab" @update:model-value="tabs.onTabChange">
12313
+ * <Tab value="overview">Overview</Tab>
12314
+ * <Tab value="settings">Settings</Tab>
12315
+ * </Tabs>
12316
+ * ```
12317
+ */
12318
+ export declare function useTabs(options?: UseTabsOptions): UseTabsReturn;
12319
+
12320
+ export declare interface UseTabsOptions {
12321
+ /** Initial active tab value. */
12322
+ defaultTab?: string;
12323
+ }
12324
+
12325
+ export declare interface UseTabsReturn {
12326
+ /** Reactive active tab value. */
12327
+ activeTab: Ref<string | undefined>;
12328
+ /** Set the active tab. */
12329
+ setTab: (value: string) => void;
12330
+ /**
12331
+ * Pass as `@update:model-value` handler on the Tabs component.
12332
+ * Keeps `activeTab` in sync when the component changes tabs internally.
12333
+ */
12334
+ onTabChange: (value: string) => void;
12335
+ }
12336
+
11681
12337
  /**
11682
12338
  * Returns the imperative toast control API.
11683
12339
  *
@@ -11692,8 +12348,8 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11692
12348
  readonly label: string;
11693
12349
  readonly onClick: () => void;
11694
12350
  } | undefined;
11695
- readonly variant: ToastVariant;
11696
12351
  readonly description: string;
12352
+ readonly variant: ToastVariant;
11697
12353
  readonly title: string;
11698
12354
  readonly position: ToastPosition;
11699
12355
  readonly duration: number;
@@ -11704,8 +12360,8 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11704
12360
  readonly label: string;
11705
12361
  readonly onClick: () => void;
11706
12362
  } | undefined;
11707
- readonly variant: ToastVariant;
11708
12363
  readonly description: string;
12364
+ readonly variant: ToastVariant;
11709
12365
  readonly title: string;
11710
12366
  readonly position: ToastPosition;
11711
12367
  readonly duration: number;
@@ -11718,6 +12374,72 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
11718
12374
  remove: (id: string) => void;
11719
12375
  };
11720
12376
 
12377
+ /**
12378
+ * Manages selection and expansion state for the Tree component.
12379
+ *
12380
+ * @example
12381
+ * ```ts
12382
+ * const tree = useTree({ multiple: false, defaultExpanded: ['root'] })
12383
+ * ```
12384
+ * ```html
12385
+ * <Tree
12386
+ * :model-value="tree.selected"
12387
+ * :expanded="tree.expanded"
12388
+ * @update:model-value="tree.onSelectionChange"
12389
+ * @update:expanded="tree.onExpandedChange"
12390
+ * >
12391
+ * ...
12392
+ * </Tree>
12393
+ * ```
12394
+ */
12395
+ export declare function useTree(options?: UseTreeOptions): UseTreeReturn;
12396
+
12397
+ export declare interface UseTreeOptions {
12398
+ /** Enable multi-selection. Defaults to false. */
12399
+ multiple?: boolean;
12400
+ /** Initial selected node key(s). */
12401
+ defaultSelected?: TreeValue;
12402
+ /** Initial expanded node keys. */
12403
+ defaultExpanded?: string[];
12404
+ }
12405
+
12406
+ export declare interface UseTreeReturn {
12407
+ /** Reactive selected node key(s). String in single mode, string[] in multiple mode. */
12408
+ selected: Ref<TreeValue>;
12409
+ /** Reactive array of expanded node keys. */
12410
+ expanded: Ref<string[]>;
12411
+ /** Whether a given node is currently selected. */
12412
+ isSelected: (key: string) => boolean;
12413
+ /** Select a node. In single mode, replaces the current selection. */
12414
+ select: (key: string) => void;
12415
+ /** Deselect a node. */
12416
+ deselect: (key: string) => void;
12417
+ /** Toggle a node's selection state. */
12418
+ toggle: (key: string) => void;
12419
+ /** Whether a given node is currently expanded. */
12420
+ isExpanded: (key: string) => boolean;
12421
+ /** Expand a node. */
12422
+ expand: (key: string) => void;
12423
+ /** Collapse a node. */
12424
+ collapse: (key: string) => void;
12425
+ /** Toggle a node's expanded state. */
12426
+ toggleExpand: (key: string) => void;
12427
+ /** Expand all provided node keys. */
12428
+ expandAll: (keys: string[]) => void;
12429
+ /** Collapse all expanded nodes. */
12430
+ collapseAll: () => void;
12431
+ /**
12432
+ * Pass as `@update:model-value` on the Tree component.
12433
+ * Keeps `selected` in sync when the component changes selection internally.
12434
+ */
12435
+ onSelectionChange: (value: TreeValue) => void;
12436
+ /**
12437
+ * Pass as `@update:expanded` on the Tree component.
12438
+ * Keeps `expanded` in sync when the component changes expanded state internally.
12439
+ */
12440
+ onExpandedChange: (keys: string[]) => void;
12441
+ }
12442
+
11721
12443
  export declare interface ValidationContext {
11722
12444
  /** All current form field values — available for cross-field rules and custom validators. */
11723
12445
  values: Record<string, unknown>;