@illinois-grad/grad-vue 2.3.4 → 2.4.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 (40) hide show
  1. package/README.md +20 -5
  2. package/dist/components/GAlertDialog.vue.d.ts +43 -12
  3. package/dist/components/GAppHeader.vue.d.ts +30 -18
  4. package/dist/components/GButton.vue.d.ts +77 -12
  5. package/dist/components/GClipboard.vue.d.ts +30 -5
  6. package/dist/components/GCurrencyInput.vue.d.ts +53 -10
  7. package/dist/components/GDateInput.vue.d.ts +53 -10
  8. package/dist/components/GDateRangeInput.vue.d.ts +74 -17
  9. package/dist/components/GDetailList.vue.d.ts +14 -11
  10. package/dist/components/GEmailInput.vue.d.ts +53 -10
  11. package/dist/components/GForm.vue.d.ts +54 -21
  12. package/dist/components/GHamburgerMenu.vue.d.ts +40 -6
  13. package/dist/components/GHistoryScroller.vue.d.ts +34 -2
  14. package/dist/components/GModal.vue.d.ts +78 -12
  15. package/dist/components/GOverlay.vue.d.ts +4 -1
  16. package/dist/components/GPopover.vue.d.ts +46 -21
  17. package/dist/components/GProgress.vue.d.ts +38 -5
  18. package/dist/components/GSearch.vue.d.ts +73 -2
  19. package/dist/components/GSelect.vue.d.ts +103 -26
  20. package/dist/components/GSelectButton.vue.d.ts +65 -16
  21. package/dist/components/GSidebar.vue.d.ts +62 -11
  22. package/dist/components/GSidebarMenu.vue.d.ts +125 -16
  23. package/dist/components/GSubmitButton.vue.d.ts +39 -11
  24. package/dist/components/GTable.vue.d.ts +86 -3
  25. package/dist/components/GTermSelector.vue.d.ts +48 -10
  26. package/dist/components/GTextInput.vue.d.ts +80 -18
  27. package/dist/components/GThreeWayToggle.vue.d.ts +54 -17
  28. package/dist/components/GUserMenu.vue.d.ts +61 -10
  29. package/dist/components/form/GFormErrorMessages.vue.d.ts +13 -5
  30. package/dist/components/table/GTableBody.vue.d.ts +5 -2
  31. package/dist/components/table/GTablePagination.vue.d.ts +43 -11
  32. package/dist/components/term/GTermSelectorControl.vue.d.ts +32 -10
  33. package/dist/compose/useOverlayStack.d.ts +10 -0
  34. package/dist/grad-vue.css +1 -1
  35. package/dist/grad-vue.js +1 -1
  36. package/dist/{main-DEKKtASV.js → main-BtQAK04Y.js} +1060 -1010
  37. package/dist/main-BtQAK04Y.js.map +1 -0
  38. package/dist/plugin.js +1 -1
  39. package/package.json +1 -1
  40. package/dist/main-DEKKtASV.js.map +0 -1
@@ -3,6 +3,75 @@ export interface GSearchGroup<R> {
3
3
  label: string;
4
4
  items: R[];
5
5
  }
6
+ /**
7
+ * A combobox-style search that shows a list of results as an auto
8
+ * complete dropdown.
9
+ *
10
+ * The component doesn't perform any real searching. It emits events
11
+ * that can be used to trigger searches, and then the results are
12
+ * passed back to the component.
13
+ *
14
+ * **Events**:
15
+ *
16
+ * - `submit` event is emitted when a search should be performed.
17
+ * - `select` event is submitted when a user makes a selection
18
+ * in the dropdown.
19
+ *
20
+ * > [!NOTE]
21
+ * > The `v-model` value should *not* be used to trigger a search,
22
+ * > but it can be used to get the current user input.
23
+ *
24
+ * **Props**:
25
+ *
26
+ * - `results` will be rendered in the dropdown. There are two options:
27
+ * - Pass an array of objects that extend `{ id: string | number; title: string; }`.
28
+ * - Pass an array of `GSearchGroup<T>` objects, where the `items` property extends the above type.
29
+ * In this case the results are grouped.
30
+ * - `auto` makes search submit on user input. Defaults to `true`.
31
+ * if `false`, submission happens on Enter or clicking the search button.
32
+ * - `loading` shows a loading indicator. Use if the search may take longer.
33
+ *
34
+ * **Slot**: `option` customizes how an option is rendered.
35
+ * It receives the current item as `option`.
36
+ *
37
+ * **Slot**: `group` customizes the group label for each group.
38
+ *
39
+ * Here is a minimal implementation:
40
+ *
41
+ * ```vue
42
+ * <script setup lang="ts">
43
+ * interface SearchResult {
44
+ * id: string;
45
+ * title: string;
46
+ * }
47
+ *
48
+ * const searchData = ref<SearchResult[]>([
49
+ * { id: "1", title: "The Quick Fox" },
50
+ * { id: "2", title: "The Lazy Dog" },
51
+ * { id: "3", title: "The Brown Bear" },
52
+ * ]);
53
+ * const searchResults = ref<SearchResult[]>([]);
54
+ *
55
+ * function submit(query: string) {
56
+ * searchResults.value = searchData.value.filter((result) =>
57
+ * result.title.toLowerCase().includes(query.toLowerCase()),
58
+ * );
59
+ * }
60
+ * function selected(item: SearchResult) {
61
+ * console.log("Selected:", item);
62
+ * }
63
+ * &lt;/script>
64
+ * <template>
65
+ * <GSearch
66
+ * :results="searchResults"
67
+ * @submit="submit"
68
+ * @select="selected">
69
+ * </GSearch>
70
+ * </template>
71
+ * ```
72
+ */
73
+ declare const _default: typeof __VLS_export;
74
+ export default _default;
6
75
  declare const __VLS_export: <T extends {
7
76
  id: string | number;
8
77
  title: string;
@@ -11,18 +80,22 @@ declare const __VLS_export: <T extends {
11
80
  results: GSearchGroup<T>[] | T[];
12
81
  /**
13
82
  * Placeholder
83
+ * @demo
14
84
  */
15
85
  placeholder?: string;
16
86
  /**
17
87
  * Accessible label
88
+ * @demo
18
89
  */
19
90
  label?: string;
20
91
  /**
21
92
  * Automatic search
93
+ * @demo
22
94
  */
23
95
  auto?: boolean;
24
96
  /**
25
97
  * Show search loading indicator
98
+ * @demo
26
99
  */
27
100
  loading?: boolean;
28
101
  } & {
@@ -53,8 +126,6 @@ declare const __VLS_export: <T extends {
53
126
  }>) => import("vue").VNode & {
54
127
  __ctx?: Awaited<typeof __VLS_setup>;
55
128
  };
56
- declare const _default: typeof __VLS_export;
57
- export default _default;
58
129
  type __VLS_PrettifyLocal<T> = (T extends any ? {
59
130
  [K in keyof T]: T[K];
60
131
  } : {
@@ -1,71 +1,148 @@
1
- interface OptionType {
2
- label: string;
3
- value: string | number;
4
- }
5
- interface Props {
6
- options: Array<string | OptionType>;
1
+ /**
2
+ * By default, this component behaves like a normal select element with
3
+ * custom styling.
4
+ *
5
+ * The component can be marked `searchable` to enable search functionality.
6
+ * This turns it into a text input that filters the options. Filtering is
7
+ * done with a simple lower-case string search.
8
+ *
9
+ * The `options` prop can be an array of strings or objects with `label`
10
+ * and `value` properties.
11
+ */
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
14
+ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
15
+ /**
16
+ * List of options to choose from
17
+ */
18
+ options: Array<string | {
19
+ label: string;
20
+ value: string | number;
21
+ }>;
7
22
  /**
8
23
  * Accessible label
24
+ * @demo Select Option
9
25
  */
10
26
  label: string;
11
27
  /**
12
28
  * Hide the label visually
29
+ * @demo
13
30
  */
14
31
  hiddenLabel?: boolean;
15
32
  /**
16
33
  * Placeholder
17
34
  *
18
35
  * Only used if the component is searchable.
36
+ * @demo
19
37
  */
20
38
  placeholder?: string;
21
39
  /**
22
40
  * Disabled
41
+ * @demo
23
42
  */
24
43
  disabled?: boolean;
44
+ /**
45
+ * Name for form registration
46
+ */
25
47
  name?: string;
26
48
  /**
27
49
  * Searchable
50
+ * @demo
28
51
  */
29
52
  searchable?: boolean;
30
53
  /**
31
54
  * Show clear button
55
+ * @demo
32
56
  */
33
57
  clearButton?: boolean;
34
58
  /**
35
59
  * Compact
60
+ * @demo
36
61
  */
37
62
  compact?: boolean;
63
+ /**
64
+ * Error messages array (supports multiple validation errors)
65
+ */
38
66
  errors?: string[];
39
- }
40
- type __VLS_Props = Props;
41
- type __VLS_ModelProps = {
67
+ } & {
42
68
  modelValue?: string | number | null;
43
- };
44
- type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
45
- declare var __VLS_1: {
46
- option: OptionType;
47
- selected: boolean;
48
- index: number;
49
- };
50
- type __VLS_Slots = {} & {
51
- option?: (props: typeof __VLS_1) => any;
52
- };
53
- declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
69
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
54
70
  change: (...args: any[]) => void;
55
71
  "update:modelValue": (value: string | number | null | undefined) => void;
56
- }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
57
- onChange?: ((...args: any[]) => any) | undefined;
72
+ }, string, import("vue").PublicProps, Readonly<{
73
+ /**
74
+ * List of options to choose from
75
+ */
76
+ options: Array<string | {
77
+ label: string;
78
+ value: string | number;
79
+ }>;
80
+ /**
81
+ * Accessible label
82
+ * @demo Select Option
83
+ */
84
+ label: string;
85
+ /**
86
+ * Hide the label visually
87
+ * @demo
88
+ */
89
+ hiddenLabel?: boolean;
90
+ /**
91
+ * Placeholder
92
+ *
93
+ * Only used if the component is searchable.
94
+ * @demo
95
+ */
96
+ placeholder?: string;
97
+ /**
98
+ * Disabled
99
+ * @demo
100
+ */
101
+ disabled?: boolean;
102
+ /**
103
+ * Name for form registration
104
+ */
105
+ name?: string;
106
+ /**
107
+ * Searchable
108
+ * @demo
109
+ */
110
+ searchable?: boolean;
111
+ /**
112
+ * Show clear button
113
+ * @demo
114
+ */
115
+ clearButton?: boolean;
116
+ /**
117
+ * Compact
118
+ * @demo
119
+ */
120
+ compact?: boolean;
121
+ /**
122
+ * Error messages array (supports multiple validation errors)
123
+ */
124
+ errors?: string[];
125
+ } & {
126
+ modelValue?: string | number | null;
127
+ }> & Readonly<{
58
128
  "onUpdate:modelValue"?: ((value: string | number | null | undefined) => any) | undefined;
129
+ onChange?: ((...args: any[]) => any) | undefined;
59
130
  }>, {
60
131
  name: string;
61
132
  errors: string[];
62
133
  disabled: boolean;
63
134
  searchable: boolean;
64
135
  compact: boolean;
65
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
66
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
67
- declare const _default: typeof __VLS_export;
68
- export default _default;
136
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
137
+ option?: (props: {
138
+ option: {
139
+ label: string;
140
+ value: string | number;
141
+ };
142
+ selected: boolean;
143
+ index: number;
144
+ }) => any;
145
+ }>;
69
146
  type __VLS_WithSlots<T, S> = T & {
70
147
  new (): {
71
148
  $slots: S;
@@ -1,40 +1,89 @@
1
- interface OptionType {
2
- label: string;
3
- value: string | number;
4
- }
5
- interface Props {
6
- options: Array<string | OptionType>;
1
+ /**
2
+ * This component is just a radio button group with special styling.
3
+ *
4
+ * Use the `options` prop to provide a list of choices. Each option can
5
+ * be a string or an object with `label` and `value` properties.
6
+ *
7
+ * In addition to `v-model`, a `change` event is emitted when the
8
+ * option changes from user interaction.
9
+ */
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ declare const __VLS_export: import("vue").DefineComponent<{
13
+ /**
14
+ * List of options to select from
15
+ */
16
+ options: Array<string | {
17
+ label: string;
18
+ value: string | number;
19
+ }>;
7
20
  /**
8
21
  * Accessible label
22
+ * @demo Select Option
9
23
  */
10
24
  label: string;
11
25
  /**
12
26
  * Size
27
+ * @demo
13
28
  */
14
29
  size?: "small" | "medium" | "large";
30
+ /**
31
+ * Name for form registration
32
+ */
15
33
  name?: string;
16
34
  /**
17
35
  * Disabled
36
+ * @demo
18
37
  */
19
38
  disabled?: boolean;
39
+ /**
40
+ * Error messages array (supports multiple validation errors)
41
+ */
20
42
  errors?: string[];
21
- }
22
- type __VLS_Props = Props;
23
- type __VLS_ModelProps = {
43
+ } & {
24
44
  modelValue?: string | number;
25
- };
26
- type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
27
- declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
45
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
28
46
  change: (...args: any[]) => void;
29
47
  "update:modelValue": (value: string | number) => void;
30
- }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
31
- onChange?: ((...args: any[]) => any) | undefined;
48
+ }, string, import("vue").PublicProps, Readonly<{
49
+ /**
50
+ * List of options to select from
51
+ */
52
+ options: Array<string | {
53
+ label: string;
54
+ value: string | number;
55
+ }>;
56
+ /**
57
+ * Accessible label
58
+ * @demo Select Option
59
+ */
60
+ label: string;
61
+ /**
62
+ * Size
63
+ * @demo
64
+ */
65
+ size?: "small" | "medium" | "large";
66
+ /**
67
+ * Name for form registration
68
+ */
69
+ name?: string;
70
+ /**
71
+ * Disabled
72
+ * @demo
73
+ */
74
+ disabled?: boolean;
75
+ /**
76
+ * Error messages array (supports multiple validation errors)
77
+ */
78
+ errors?: string[];
79
+ } & {
80
+ modelValue?: string | number;
81
+ }> & Readonly<{
32
82
  "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
83
+ onChange?: ((...args: any[]) => any) | undefined;
33
84
  }>, {
34
85
  size: "small" | "medium" | "large";
35
86
  name: string;
36
87
  errors: string[];
37
88
  disabled: boolean;
38
89
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
39
- declare const _default: typeof __VLS_export;
40
- export default _default;
@@ -1,40 +1,91 @@
1
- interface Props {
1
+ /**
2
+ * A simple sidebar that's fixed to the left side of the viewport.
3
+ *
4
+ * This includes the CSS for the `fixed` position and sizing, so the element
5
+ * should be fairly high in the DOM tree.
6
+ *
7
+ * If neither `top-offset` nor `top-offset-var` are defined, the sidebar will be
8
+ * offset by `var(--g-toolbar-height)`. If there is no toolbar, just pass
9
+ * `0` as the `top-offset`.
10
+ *
11
+ * The sidebar can be made collapsible by providing the `sidebar` injected
12
+ * object from `useSidebar`. See the [Hamburger Menu Documentation](#use-sidebar)
13
+ * for details.
14
+ */
15
+ declare const _default: typeof __VLS_export;
16
+ export default _default;
17
+ declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<{
2
18
  /**
3
19
  * Custom background color
20
+ * @demo
4
21
  */
5
22
  backgroundColor?: string;
6
23
  /**
7
24
  * Custom background image
25
+ * @demo none
8
26
  */
9
27
  backgroundImage?: string;
10
28
  /**
11
29
  * Sidebar theme
30
+ * @demo
12
31
  */
13
32
  theme?: "light" | "dark";
33
+ /**
34
+ * Offset from the top of the viewport
35
+ */
14
36
  topOffset?: string;
37
+ /**
38
+ * Top offset variable to use instead of topOffset
39
+ */
15
40
  topOffsetVar?: string;
16
41
  /**
17
42
  * Width
18
43
  *
19
44
  * Width of the sidebar
45
+ * @demo
20
46
  */
21
47
  width?: string;
22
- }
23
- declare var __VLS_1: {};
24
- type __VLS_Slots = {} & {
25
- default?: (props: typeof __VLS_1) => any;
26
- };
27
- declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {
48
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
49
+ /**
50
+ * Custom background color
51
+ * @demo
52
+ */
53
+ backgroundColor?: string;
54
+ /**
55
+ * Custom background image
56
+ * @demo none
57
+ */
58
+ backgroundImage?: string;
59
+ /**
60
+ * Sidebar theme
61
+ * @demo
62
+ */
63
+ theme?: "light" | "dark";
64
+ /**
65
+ * Offset from the top of the viewport
66
+ */
67
+ topOffset?: string;
68
+ /**
69
+ * Top offset variable to use instead of topOffset
70
+ */
71
+ topOffsetVar?: string;
72
+ /**
73
+ * Width
74
+ *
75
+ * Width of the sidebar
76
+ * @demo
77
+ */
78
+ width?: string;
79
+ }> & Readonly<{}>, {
28
80
  theme: "light" | "dark";
29
81
  width: string;
30
82
  backgroundColor: string;
31
83
  backgroundImage: string;
32
84
  topOffset: string;
33
85
  topOffsetVar: string;
34
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
35
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
36
- declare const _default: typeof __VLS_export;
37
- export default _default;
86
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
87
+ default?: (props: {}) => any;
88
+ }>;
38
89
  type __VLS_WithSlots<T, S> = T & {
39
90
  new (): {
40
91
  $slots: S;
@@ -1,33 +1,144 @@
1
- type MenuItem = {
2
- label: string;
3
- href?: string;
4
- to?: string;
5
- };
6
- interface Props {
1
+ /**
2
+ * A sidebar menu component for use with `GSidebar`. Displays a title and
3
+ * a list of links.
4
+ *
5
+ * This component also supports showing active links for in-page navigation.
6
+ *
7
+ * **Props**:
8
+ *
9
+ * - `items` with a list of `MenuItem` objects. The objects should have:
10
+ * - `label` for the link text
11
+ * - `href` or `to` for the destination. If `to` is used, the links will
12
+ * be rendered as `router-link` for vue-router.
13
+ * - `spy` to enable tracking active links for in-page navigation
14
+ * - `offset` to adjust the active link tracking position
15
+ * - `theme` to set the menu theme
16
+ *
17
+ * For tracking the active link, the `spy` prop must be set to `true` and
18
+ * a `v-model` must be provided that has the ID of the target element (without #).
19
+ *
20
+ * The composable function `useActiveLinkContent` can be used to track active links.
21
+ * It takes the following parameters:
22
+ *
23
+ * - `Ref<HTMLElement>` Children of this element will be observed
24
+ * - `number` Offset from the top of the window to consider not visible
25
+ * - `Ref<string>` Ref to store the active element ID
26
+ *
27
+ * The direct children of the element must all have an ID to properly work with
28
+ * in-page navigation, and the matching menu item's `href` should be set to
29
+ * `#<id>`.
30
+ *
31
+ * Here's a minimal example of a page using `useActiveLinkContent`:
32
+ *
33
+ * ```vue
34
+ * <script setup lang="ts">
35
+ * import { computed, onMounted, ref, useTemplateRef } from "vue";
36
+ * import { useActiveLinkContent } from "@illinois-grad/grad-vue";
37
+ *
38
+ * const activeId = ref<string>("");
39
+ * const main = useTemplateRef("main");
40
+ * // onMounted is for Nuxt compatibility
41
+ * onMounted(() => {
42
+ * useActiveLinkContent(main, 70, activeId);
43
+ * });
44
+ * &lt;/script>
45
+ *
46
+ * <template>
47
+ * <GSidebar>
48
+ * <GSidebarMenu
49
+ * :items="[
50
+ * { label: 'Buttons', href: '#buttons' },
51
+ * { label: 'More Buttons', href: '#more-buttons' }
52
+ * ]"
53
+ * v-model="activeId"
54
+ * />
55
+ * </GSidebar>
56
+ * <main class="main" ref="main">
57
+ * <section id="buttons">
58
+ * <h2>Buttons</h2>
59
+ * <p>Some buttons</p>
60
+ * </section>
61
+ * <section id="more-buttons">
62
+ * <h2>More Buttons</h2>
63
+ * <p>Some more buttons</p>
64
+ * </section>
65
+ * </main>
66
+ * </template>
67
+ * ```
68
+ */
69
+ declare const _default: typeof __VLS_export;
70
+ export default _default;
71
+ declare const __VLS_export: import("vue").DefineComponent<{
7
72
  /**
8
73
  * Title and accessible name
74
+ * @demo Sidebar Menu
9
75
  */
10
76
  title?: string;
11
- items: MenuItem[];
77
+ /**
78
+ * Items for the menu
79
+ */
80
+ items: {
81
+ label: string;
82
+ href?: string;
83
+ to?: string;
84
+ }[];
85
+ /**
86
+ * Offset for tracking active position to account for toolbars
87
+ */
12
88
  offset?: number;
89
+ /**
90
+ * Track active position for in-page links
91
+ */
13
92
  spy?: boolean;
14
93
  /**
15
94
  * Sidebar theme
95
+ * @demo
16
96
  */
17
97
  theme?: "light" | "dark";
18
98
  /**
19
99
  * Use compact layout
100
+ * @demo
20
101
  */
21
102
  compact?: boolean;
22
- }
23
- type __VLS_Props = Props;
24
- type __VLS_ModelProps = {
103
+ } & {
25
104
  modelValue?: string | null;
26
- };
27
- type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
28
- declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
105
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
29
106
  "update:modelValue": (value: string | null) => any;
30
- }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
107
+ }, string, import("vue").PublicProps, Readonly<{
108
+ /**
109
+ * Title and accessible name
110
+ * @demo Sidebar Menu
111
+ */
112
+ title?: string;
113
+ /**
114
+ * Items for the menu
115
+ */
116
+ items: {
117
+ label: string;
118
+ href?: string;
119
+ to?: string;
120
+ }[];
121
+ /**
122
+ * Offset for tracking active position to account for toolbars
123
+ */
124
+ offset?: number;
125
+ /**
126
+ * Track active position for in-page links
127
+ */
128
+ spy?: boolean;
129
+ /**
130
+ * Sidebar theme
131
+ * @demo
132
+ */
133
+ theme?: "light" | "dark";
134
+ /**
135
+ * Use compact layout
136
+ * @demo
137
+ */
138
+ compact?: boolean;
139
+ } & {
140
+ modelValue?: string | null;
141
+ }> & Readonly<{
31
142
  "onUpdate:modelValue"?: ((value: string | null) => any) | undefined;
32
143
  }>, {
33
144
  theme: "light" | "dark";
@@ -35,5 +146,3 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {},
35
146
  offset: number;
36
147
  spy: boolean;
37
148
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
38
- declare const _default: typeof __VLS_export;
39
- export default _default;