boltdocs 2.5.5 → 2.6.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 (166) hide show
  1. package/bin/boltdocs.js +2 -2
  2. package/dist/client/index.cjs +6 -0
  3. package/dist/client/index.d.cts +1560 -0
  4. package/dist/client/index.d.ts +1219 -922
  5. package/dist/client/index.js +6 -1
  6. package/dist/client/theme/neutral.css +428 -0
  7. package/dist/node/cli-entry.cjs +8 -0
  8. package/dist/node/cli-entry.d.cts +2 -0
  9. package/dist/node/cli-entry.d.mts +2 -1
  10. package/dist/node/cli-entry.mjs +7 -5
  11. package/dist/node/index.cjs +6 -0
  12. package/dist/node/index.d.cts +519 -0
  13. package/dist/node/index.d.mts +374 -422
  14. package/dist/node/index.mjs +6 -1
  15. package/dist/node-BgvNl2Ay.mjs +89 -0
  16. package/dist/node-vkbb0MK7.cjs +89 -0
  17. package/dist/package-CR0HF9x3.mjs +6 -0
  18. package/dist/package-Dgmsc_l5.cjs +6 -0
  19. package/dist/search-dialog-3lvKsbVG.js +6 -0
  20. package/dist/search-dialog-DMK5OpgH.cjs +6 -0
  21. package/dist/use-search-C9bxCqfF.js +6 -0
  22. package/dist/use-search-DcfZSunO.cjs +6 -0
  23. package/package.json +26 -25
  24. package/src/client/app/config-context.tsx +38 -5
  25. package/src/client/app/doc-page.tsx +34 -0
  26. package/src/client/app/mdx-component.tsx +2 -3
  27. package/src/client/app/mdx-components-context.tsx +27 -2
  28. package/src/client/app/routes-context.tsx +34 -0
  29. package/src/client/app/scroll-handler.tsx +7 -4
  30. package/src/client/app/theme-context.tsx +71 -67
  31. package/src/client/components/default-layout.tsx +34 -33
  32. package/src/client/components/docs-layout.tsx +1 -2
  33. package/src/client/components/icons-dev.tsx +36 -5
  34. package/src/client/components/mdx/admonition.tsx +11 -27
  35. package/src/client/components/mdx/badge.tsx +1 -1
  36. package/src/client/components/mdx/button.tsx +3 -3
  37. package/src/client/components/mdx/card.tsx +1 -1
  38. package/src/client/components/mdx/code-block.tsx +90 -80
  39. package/src/client/components/mdx/component-preview.tsx +1 -5
  40. package/src/client/components/mdx/component-props.tsx +1 -1
  41. package/src/client/components/mdx/field.tsx +4 -5
  42. package/src/client/components/mdx/file-tree.tsx +6 -3
  43. package/src/client/components/mdx/hooks/use-code-block.ts +2 -2
  44. package/src/client/components/mdx/image.tsx +1 -1
  45. package/src/client/components/mdx/link.tsx +2 -2
  46. package/src/client/components/mdx/list.tsx +1 -1
  47. package/src/client/components/mdx/table.tsx +1 -1
  48. package/src/client/components/mdx/tabs.tsx +1 -1
  49. package/src/client/components/primitives/breadcrumbs.tsx +1 -7
  50. package/src/client/components/primitives/button-group.tsx +1 -1
  51. package/src/client/components/primitives/button.tsx +1 -1
  52. package/src/client/components/primitives/code-block.tsx +113 -0
  53. package/src/client/components/primitives/link.tsx +23 -41
  54. package/src/client/components/primitives/menu.tsx +5 -6
  55. package/src/client/components/primitives/navbar.tsx +6 -18
  56. package/src/client/components/primitives/navigation-menu.tsx +4 -4
  57. package/src/client/components/primitives/on-this-page.tsx +6 -10
  58. package/src/client/components/primitives/page-nav.tsx +4 -9
  59. package/src/client/components/primitives/popover.tsx +1 -1
  60. package/src/client/components/primitives/search-dialog.tsx +3 -6
  61. package/src/client/components/primitives/sidebar.tsx +80 -22
  62. package/src/client/components/primitives/skeleton.tsx +1 -1
  63. package/src/client/components/primitives/tabs.tsx +4 -11
  64. package/src/client/components/primitives/tooltip.tsx +3 -3
  65. package/src/client/components/ui-base/breadcrumbs.tsx +4 -6
  66. package/src/client/components/ui-base/copy-markdown.tsx +2 -7
  67. package/src/client/components/ui-base/github-stars.tsx +2 -2
  68. package/src/client/components/ui-base/head.tsx +58 -51
  69. package/src/client/components/ui-base/loading.tsx +2 -2
  70. package/src/client/components/ui-base/navbar.tsx +12 -14
  71. package/src/client/components/ui-base/not-found.tsx +1 -1
  72. package/src/client/components/ui-base/on-this-page.tsx +6 -6
  73. package/src/client/components/ui-base/page-nav.tsx +4 -8
  74. package/src/client/components/ui-base/search-dialog.tsx +10 -8
  75. package/src/client/components/ui-base/sidebar.tsx +76 -23
  76. package/src/client/components/ui-base/tabs.tsx +9 -8
  77. package/src/client/components/ui-base/theme-toggle.tsx +2 -2
  78. package/src/client/hooks/use-i18n.ts +3 -3
  79. package/src/client/hooks/use-localized-to.ts +1 -1
  80. package/src/client/hooks/use-navbar.ts +8 -6
  81. package/src/client/hooks/use-routes.ts +19 -11
  82. package/src/client/hooks/use-search.ts +1 -1
  83. package/src/client/hooks/use-sidebar.ts +48 -2
  84. package/src/client/hooks/use-tabs.ts +6 -2
  85. package/src/client/hooks/use-version.ts +3 -3
  86. package/src/client/index.ts +22 -22
  87. package/src/client/ssg/boltdocs-shell.tsx +127 -0
  88. package/src/client/ssg/create-routes.tsx +179 -0
  89. package/src/client/ssg/index.ts +3 -0
  90. package/src/client/ssg/mdx-page.tsx +37 -0
  91. package/src/client/store/boltdocs-context.tsx +66 -0
  92. package/src/client/theme/neutral.css +90 -50
  93. package/src/client/types.ts +5 -33
  94. package/src/client/utils/react-to-text.ts +34 -0
  95. package/CHANGELOG.md +0 -98
  96. package/dist/cache-3FOEPC2P.mjs +0 -1
  97. package/dist/chunk-5B5NKOW6.mjs +0 -77
  98. package/dist/chunk-J2PTDWZM.mjs +0 -1
  99. package/dist/chunk-TP5KMRD3.mjs +0 -1
  100. package/dist/chunk-Y4RE5KI7.mjs +0 -1
  101. package/dist/client/index.d.mts +0 -1263
  102. package/dist/client/index.mjs +0 -1
  103. package/dist/client/ssr.d.mts +0 -78
  104. package/dist/client/ssr.d.ts +0 -78
  105. package/dist/client/ssr.js +0 -1
  106. package/dist/client/ssr.mjs +0 -1
  107. package/dist/node/cli-entry.d.ts +0 -1
  108. package/dist/node/cli-entry.js +0 -82
  109. package/dist/node/index.d.ts +0 -567
  110. package/dist/node/index.js +0 -77
  111. package/dist/package-QFIAETHR.mjs +0 -1
  112. package/dist/search-dialog-O6VLVSOA.mjs +0 -1
  113. package/src/client/app/index.tsx +0 -345
  114. package/src/client/app/mdx-page.tsx +0 -15
  115. package/src/client/app/preload.tsx +0 -66
  116. package/src/client/app/router.tsx +0 -30
  117. package/src/client/integrations/codesandbox.ts +0 -179
  118. package/src/client/integrations/index.ts +0 -1
  119. package/src/client/ssr.tsx +0 -65
  120. package/src/client/store/use-boltdocs-store.ts +0 -44
  121. package/src/node/cache.ts +0 -408
  122. package/src/node/cli/build.ts +0 -53
  123. package/src/node/cli/dev.ts +0 -22
  124. package/src/node/cli/doctor.ts +0 -243
  125. package/src/node/cli/index.ts +0 -9
  126. package/src/node/cli/ui.ts +0 -54
  127. package/src/node/cli-entry.ts +0 -24
  128. package/src/node/config.ts +0 -382
  129. package/src/node/errors.ts +0 -44
  130. package/src/node/index.ts +0 -84
  131. package/src/node/mdx/cache.ts +0 -12
  132. package/src/node/mdx/highlighter.ts +0 -47
  133. package/src/node/mdx/index.ts +0 -122
  134. package/src/node/mdx/rehype-shiki.ts +0 -62
  135. package/src/node/mdx/remark-code-meta.ts +0 -35
  136. package/src/node/mdx/remark-shiki.ts +0 -61
  137. package/src/node/plugin/entry.ts +0 -87
  138. package/src/node/plugin/html.ts +0 -99
  139. package/src/node/plugin/index.ts +0 -478
  140. package/src/node/plugin/types.ts +0 -9
  141. package/src/node/plugins/index.ts +0 -17
  142. package/src/node/plugins/plugin-errors.ts +0 -62
  143. package/src/node/plugins/plugin-lifecycle.ts +0 -117
  144. package/src/node/plugins/plugin-sandbox.ts +0 -59
  145. package/src/node/plugins/plugin-store.ts +0 -54
  146. package/src/node/plugins/plugin-types.ts +0 -107
  147. package/src/node/plugins/plugin-validator.ts +0 -105
  148. package/src/node/routes/cache.ts +0 -28
  149. package/src/node/routes/index.ts +0 -293
  150. package/src/node/routes/parser.ts +0 -262
  151. package/src/node/routes/sorter.ts +0 -42
  152. package/src/node/routes/types.ts +0 -61
  153. package/src/node/schema/config.ts +0 -195
  154. package/src/node/schema/frontmatter.ts +0 -17
  155. package/src/node/search/index.ts +0 -55
  156. package/src/node/security/constants/index.ts +0 -10
  157. package/src/node/security/csp.ts +0 -31
  158. package/src/node/security/headers.ts +0 -27
  159. package/src/node/ssg/index.ts +0 -205
  160. package/src/node/ssg/meta.ts +0 -33
  161. package/src/node/ssg/options.ts +0 -15
  162. package/src/node/ssg/robots.ts +0 -53
  163. package/src/node/ssg/sitemap.ts +0 -55
  164. package/src/node/utils.ts +0 -349
  165. package/tsconfig.json +0 -26
  166. package/tsup.config.ts +0 -56
@@ -0,0 +1,1560 @@
1
+
2
+ import { Plugin } from "vite";
3
+ import { RouteRecord } from "@bdocs/ssg";
4
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
5
+ import * as _$react from "react";
6
+ import { Component, ComponentPropsWithoutRef, ErrorInfo, ImgHTMLAttributes, ReactNode, RefObject } from "react";
7
+ import * as _$react_router_dom0 from "react-router-dom";
8
+ import { LinkProps as LinkProps$1 } from "react-router-dom";
9
+ import * as _$class_variance_authority_types0 from "class-variance-authority/types";
10
+ import * as RAC from "react-aria-components";
11
+ import { LinkProps as LinkProps$2 } from "react-aria-components";
12
+ import { VariantProps } from "class-variance-authority";
13
+ import { ClassValue } from "clsx";
14
+
15
+ //#region src/shared/types.d.ts
16
+ /**
17
+ * Represents a single social link in the configuration.
18
+ */
19
+ interface BoltdocsSocialLink {
20
+ icon: 'discord' | 'x' | 'github' | 'bluesky' | string;
21
+ link: string;
22
+ }
23
+ /**
24
+ * Configuration for the site footer.
25
+ */
26
+ interface BoltdocsFooterConfig {
27
+ text?: string;
28
+ }
29
+ /**
30
+ * Theme-specific configuration options.
31
+ */
32
+ interface BoltdocsThemeConfig {
33
+ title?: string | Record<string, string>;
34
+ description?: string | Record<string, string>;
35
+ logo?: string | {
36
+ dark: string;
37
+ light: string;
38
+ alt?: string;
39
+ width?: number;
40
+ height?: number;
41
+ };
42
+ navbar?: Array<{
43
+ label: string | Record<string, string>;
44
+ href: string;
45
+ }>;
46
+ sidebar?: Record<string, Array<{
47
+ text: string;
48
+ link: string;
49
+ }>>;
50
+ sidebarGroups?: Record<string, {
51
+ title?: string;
52
+ icon?: string;
53
+ }>;
54
+ socialLinks?: BoltdocsSocialLink[];
55
+ footer?: BoltdocsFooterConfig;
56
+ breadcrumbs?: boolean;
57
+ editLink?: string;
58
+ communityHelp?: string;
59
+ version?: string;
60
+ githubRepo?: string;
61
+ favicon?: string;
62
+ poweredBy?: boolean;
63
+ tabs?: Array<{
64
+ id: string;
65
+ text: string | Record<string, string>;
66
+ icon?: string;
67
+ }>;
68
+ codeTheme?: ShikiTheme | {
69
+ light: ShikiTheme;
70
+ dark: ShikiTheme;
71
+ };
72
+ copyMarkdown?: boolean | {
73
+ text?: string;
74
+ icon?: string;
75
+ };
76
+ }
77
+ /**
78
+ * List of supported syntax highlighting themes.
79
+ */
80
+ type ShikiTheme = 'github-dark' | 'github-light' | 'tokyo-night' | 'dracula' | 'nord' | 'one-dark-pro' | 'one-light';
81
+ /**
82
+ * Configuration for the robots.txt file.
83
+ */
84
+ type BoltdocsRobotsConfig = string | {
85
+ rules?: Array<{
86
+ userAgent: string;
87
+ allow?: string | string[];
88
+ disallow?: string | string[];
89
+ }>;
90
+ sitemaps?: string[];
91
+ };
92
+ /**
93
+ * Configuration for a specific locale.
94
+ */
95
+ interface BoltdocsLocaleConfig {
96
+ label?: string;
97
+ direction?: 'ltr' | 'rtl';
98
+ htmlLang?: string;
99
+ calendar?: string;
100
+ }
101
+ /**
102
+ * Configuration for internationalization (i18n).
103
+ */
104
+ interface BoltdocsI18nConfig {
105
+ defaultLocale: string;
106
+ locales: Record<string, string>;
107
+ localeConfigs?: Record<string, BoltdocsLocaleConfig>;
108
+ }
109
+ /**
110
+ * Configuration for a specific documentation version.
111
+ */
112
+ interface BoltdocsVersionConfig {
113
+ label: string;
114
+ path: string;
115
+ }
116
+ /**
117
+ * Configuration for documentation versioning.
118
+ */
119
+ interface BoltdocsVersionsConfig {
120
+ defaultVersion: string;
121
+ prefix?: string;
122
+ versions: BoltdocsVersionConfig[];
123
+ }
124
+ /**
125
+ * Defines a Boltdocs plugin.
126
+ */
127
+ interface BoltdocsPlugin {
128
+ name: string;
129
+ enforce?: 'pre' | 'post';
130
+ version?: string;
131
+ boltdocsVersion?: string;
132
+ permissions?: string[];
133
+ remarkPlugins?: unknown[];
134
+ rehypePlugins?: unknown[];
135
+ vitePlugins?: Plugin[];
136
+ components?: Record<string, string>;
137
+ hooks?: Record<string, any>;
138
+ }
139
+ /**
140
+ * Configuration for security-related settings.
141
+ */
142
+ interface BoltdocsSecurityConfig {
143
+ headers?: Record<string, string>;
144
+ enableCSP?: boolean;
145
+ customHeaders?: Record<string, string>;
146
+ }
147
+ /**
148
+ * Configuration for SEO.
149
+ */
150
+ interface BoltdocsSeoConfig {
151
+ metatags?: Record<string, string>;
152
+ indexing?: 'all' | 'public';
153
+ thumbnails?: {
154
+ background?: string;
155
+ };
156
+ }
157
+ /**
158
+ * The root configuration object for Boltdocs.
159
+ */
160
+ interface BoltdocsConfig$1 {
161
+ siteUrl?: string;
162
+ docsDir?: string;
163
+ base?: string;
164
+ homePage?: string;
165
+ theme?: BoltdocsThemeConfig;
166
+ i18n?: BoltdocsI18nConfig;
167
+ versions?: BoltdocsVersionsConfig;
168
+ plugins?: BoltdocsPlugin[];
169
+ robots?: BoltdocsRobotsConfig;
170
+ security?: BoltdocsSecurityConfig;
171
+ seo?: BoltdocsSeoConfig;
172
+ vite?: any;
173
+ }
174
+ //#endregion
175
+ //#region src/shared/config-utils.d.ts
176
+ /**
177
+ * Type-safe helper for defining Boltdocs configuration.
178
+ * This is an identity function that provides IntelliSense in both
179
+ * Node.js (config files) and client-side code (MDX examples).
180
+ *
181
+ * @param config - The Boltdocs configuration object
182
+ */
183
+ declare function defineConfig(config: BoltdocsConfig$1): BoltdocsConfig$1;
184
+ //#endregion
185
+ //#region src/client/types.d.ts
186
+ /**
187
+ * Metadata provided by the server for a specific route.
188
+ * Maps closely to the `RouteMeta` type in the Node environment.
189
+ */
190
+ interface ComponentRoute {
191
+ /** The final URL path */
192
+ path: string;
193
+ /** The absolute filesystem path of the source file */
194
+ componentPath: string;
195
+ /** The page title */
196
+ title: string;
197
+ /** Explicit order in the sidebar */
198
+ sidebarPosition?: number;
199
+ /** The relative path from the docs directory */
200
+ filePath: string;
201
+ /** The group directory name */
202
+ group?: string;
203
+ /** The display title of the group */
204
+ groupTitle?: string;
205
+ /** Explicit order of the group in the sidebar */
206
+ groupPosition?: number;
207
+ /** Extracted markdown headings for search indexing */
208
+ headings?: {
209
+ level: number;
210
+ text: string;
211
+ id: string;
212
+ }[];
213
+ /** The page summary or description */
214
+ description?: string;
215
+ /** The locale this route belongs to, if i18n is configured */
216
+ locale?: string;
217
+ /** The version this route belongs to, if versioning is configured */
218
+ version?: string;
219
+ /** Optional icon to display (Lucide icon name or raw SVG) */
220
+ icon?: string;
221
+ /** The tab this route belongs to, if tabs are configured */
222
+ tab?: string;
223
+ /** Optional badge to display next to the sidebar item */
224
+ badge?: string | {
225
+ text: 'updated' | 'new' | 'deprecated';
226
+ expires?: string;
227
+ };
228
+ /** Optional icon for the route's group */
229
+ groupIcon?: string;
230
+ /** The sub-route group this route belongs to (from folders starting with _) */
231
+ subRouteGroup?: string;
232
+ /** The nested sub-routes if this route acts as the parent of a subRouteGroup */
233
+ subRoutes?: ComponentRoute[];
234
+ /** The extracted plain-text content of the page for search indexing */
235
+ _content?: string;
236
+ /** The raw markdown content of the page */
237
+ _rawContent?: string;
238
+ }
239
+ /**
240
+ * Tab configuration for the documentation site.
241
+ */
242
+ interface BoltdocsTab {
243
+ id: string;
244
+ /** Text to display (can be a string or a map of translations) */
245
+ text: string | Record<string, string>;
246
+ icon?: string;
247
+ }
248
+ /**
249
+ * Props for the OnThisPage (TOC) component.
250
+ */
251
+ interface OnThisPageProps {
252
+ headings?: {
253
+ level: number;
254
+ text: string;
255
+ id: string;
256
+ }[];
257
+ editLink?: string;
258
+ communityHelp?: string;
259
+ filePath?: string;
260
+ }
261
+ /**
262
+ * Props for user-defined layout components (layout.tsx).
263
+ */
264
+ interface LayoutProps {
265
+ children: React.ReactNode;
266
+ }
267
+ /**
268
+ * Unified type for navbar links.
269
+ */
270
+ interface NavbarLink {
271
+ /** Label to display (can be a string or a map of translations) */
272
+ label: string | Record<string, string>;
273
+ href: string;
274
+ active: boolean;
275
+ /** Optional icon or string for external link indication */
276
+ to?: string;
277
+ }
278
+ //#endregion
279
+ //#region src/client/ssg/create-routes.d.ts
280
+ interface CreateRoutesOptions {
281
+ routesData: ComponentRoute[];
282
+ config: BoltdocsConfig$1;
283
+ mdxModules: Record<string, {
284
+ default?: React.ComponentType;
285
+ }>;
286
+ Layout: React.ComponentType<{
287
+ children: React.ReactNode;
288
+ }>;
289
+ homePage?: React.ComponentType;
290
+ externalPages?: Record<string, React.ComponentType>;
291
+ externalLayout?: React.ComponentType<{
292
+ children: React.ReactNode;
293
+ }>;
294
+ components?: Record<string, React.ComponentType>;
295
+ }
296
+ declare function createRoutes(options: CreateRoutesOptions): RouteRecord[];
297
+ //#endregion
298
+ //#region src/client/ssg/mdx-page.d.ts
299
+ /**
300
+ * Renders an MDX page by consuming pre-loaded module data.
301
+ * Uses DocPage to ensure consistent layout and metadata application.
302
+ */
303
+ declare function MdxPage({
304
+ MDXComponent: propMDX,
305
+ mdxComponents: propComponents
306
+ }: any): _$react_jsx_runtime0.JSX.Element | null;
307
+ //#endregion
308
+ //#region src/client/ssg/boltdocs-shell.d.ts
309
+ declare function BoltdocsShell({
310
+ config,
311
+ routes,
312
+ components
313
+ }: {
314
+ config: BoltdocsConfig$1;
315
+ routes: ComponentRoute[];
316
+ components?: Record<string, React.ComponentType>;
317
+ }): _$react_jsx_runtime0.JSX.Element;
318
+ //#endregion
319
+ //#region src/client/app/config-context.d.ts
320
+ /**
321
+ * Hook to access the Boltdocs configuration.
322
+ */
323
+ declare function useConfig(): BoltdocsConfig$1;
324
+ //#endregion
325
+ //#region src/client/app/theme-context.d.ts
326
+ type Theme = 'light' | 'dark' | 'system';
327
+ type ResolvedTheme = 'light' | 'dark';
328
+ interface ThemeContextType {
329
+ theme: Theme;
330
+ resolvedTheme: ResolvedTheme;
331
+ setTheme: (theme: Theme) => void;
332
+ }
333
+ declare function useTheme(): ThemeContextType;
334
+ //#endregion
335
+ //#region src/client/hooks/use-routes.d.ts
336
+ /**
337
+ * Hook to access the framework's routing state.
338
+ * Returns both the complete set of routes and a filtered list based on the current
339
+ * version and locale.
340
+ */
341
+ declare function useRoutes(): {
342
+ routes: ComponentRoute[];
343
+ allRoutes: ComponentRoute[];
344
+ currentRoute: ComponentRoute | undefined;
345
+ currentLocale: string | undefined;
346
+ currentLocaleLabel: string | undefined;
347
+ availableLocales: {
348
+ key: string;
349
+ label: string;
350
+ isCurrent: boolean;
351
+ }[];
352
+ currentVersion: string | undefined;
353
+ currentVersionLabel: string | undefined;
354
+ availableVersions: {
355
+ key: string;
356
+ label: string;
357
+ isCurrent: boolean;
358
+ }[];
359
+ config: BoltdocsConfig$1;
360
+ };
361
+ //#endregion
362
+ //#region src/client/app/mdx-components-context.d.ts
363
+ declare function useMdxComponents(): any;
364
+ //#endregion
365
+ //#region src/client/hooks/use-navbar.d.ts
366
+ declare function useNavbar(): {
367
+ links: NavbarLink[];
368
+ title: string;
369
+ logo: any;
370
+ logoProps: {
371
+ alt: any;
372
+ width: any;
373
+ height: any;
374
+ };
375
+ github: string | null;
376
+ social: BoltdocsSocialLink[];
377
+ config: BoltdocsConfig$1;
378
+ theme: Theme;
379
+ };
380
+ //#endregion
381
+ //#region src/client/hooks/use-sidebar.d.ts
382
+ declare function useSidebar(routes: ComponentRoute[]): {
383
+ groups: {
384
+ routes: ComponentRoute[];
385
+ slug: string;
386
+ title: string;
387
+ icon?: string;
388
+ }[];
389
+ ungrouped: ComponentRoute[];
390
+ activeRoute: ComponentRoute | undefined;
391
+ activePath: string;
392
+ config: BoltdocsConfig$1;
393
+ };
394
+ //#endregion
395
+ //#region src/client/hooks/use-search.d.ts
396
+ declare function useSearch(routes: ComponentRoute[]): {
397
+ isOpen: boolean;
398
+ setIsOpen: _$react.Dispatch<_$react.SetStateAction<boolean>>;
399
+ query: string;
400
+ setQuery: _$react.Dispatch<_$react.SetStateAction<string>>;
401
+ list: any[];
402
+ input: {
403
+ value: string;
404
+ onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
405
+ };
406
+ };
407
+ //#endregion
408
+ //#region src/client/hooks/use-onthispage.d.ts
409
+ interface Heading {
410
+ id: string;
411
+ text: string;
412
+ level: number;
413
+ }
414
+ /**
415
+ * Hook to manage and provide current page headings for the OnThisPage component.
416
+ */
417
+ declare function useOnThisPage(headings?: Heading[]): {
418
+ headings: Heading[];
419
+ activeId: string | null;
420
+ setActiveId: _$react.Dispatch<_$react.SetStateAction<string | null>>;
421
+ };
422
+ //#endregion
423
+ //#region src/client/hooks/use-tabs.d.ts
424
+ declare function useTabs(tabs?: BoltdocsTab[], routes?: ComponentRoute[]): {
425
+ tabs: BoltdocsTab[];
426
+ activeIndex: number;
427
+ indicatorStyle: _$react.CSSProperties;
428
+ tabRefs: _$react.RefObject<(HTMLAnchorElement | null)[]>;
429
+ activeTabId: string | undefined;
430
+ };
431
+ //#endregion
432
+ //#region src/client/hooks/use-version.d.ts
433
+ interface VersionOption {
434
+ key: string;
435
+ label: string;
436
+ value: string;
437
+ isCurrent: boolean;
438
+ }
439
+ interface UseVersionReturn {
440
+ currentVersion: string | undefined;
441
+ currentVersionLabel: string | undefined;
442
+ availableVersions: VersionOption[];
443
+ handleVersionChange: (version: string) => void;
444
+ }
445
+ /**
446
+ * Hook to manage and switch between different versions of the documentation.
447
+ */
448
+ declare function useVersion(): UseVersionReturn;
449
+ //#endregion
450
+ //#region src/client/hooks/use-i18n.d.ts
451
+ interface LocaleOption {
452
+ key: string;
453
+ label: string;
454
+ value: string;
455
+ isCurrent: boolean;
456
+ }
457
+ interface UseI18nReturn {
458
+ currentLocale: string | undefined;
459
+ currentLocaleLabel: string | undefined;
460
+ availableLocales: LocaleOption[];
461
+ handleLocaleChange: (locale: string) => void;
462
+ }
463
+ /**
464
+ * Hook to manage and switch between different locales (languages) of the documentation.
465
+ */
466
+ declare function useI18n(): UseI18nReturn;
467
+ //#endregion
468
+ //#region src/client/hooks/use-page-nav.d.ts
469
+ /**
470
+ * Hook to manage the previous and next button functionality for documentation pages.
471
+ * Intelligent: respects current locale, version, and tab to keep navigation logical.
472
+ */
473
+ declare function usePageNav(): {
474
+ prevPage: null;
475
+ nextPage: null;
476
+ currentRoute: null;
477
+ } | {
478
+ prevPage: ComponentRoute | null;
479
+ nextPage: ComponentRoute | null;
480
+ currentRoute: ComponentRoute;
481
+ };
482
+ //#endregion
483
+ //#region src/client/hooks/use-breadcrumbs.d.ts
484
+ /**
485
+ * Hook to generate breadcrumbs based on the current active route.
486
+ */
487
+ declare function useBreadcrumbs(): {
488
+ crumbs: {
489
+ label: string;
490
+ href?: string;
491
+ }[];
492
+ activeRoute: ComponentRoute | undefined;
493
+ };
494
+ //#endregion
495
+ //#region src/client/hooks/use-localized-to.d.ts
496
+ /**
497
+ * Hook to automatically localize a path based on the current version and locale context.
498
+ * It ensures that navigation preserves the active version and language across the entire site.
499
+ */
500
+ declare function useLocalizedTo(to: LinkProps$1['to']): _$react_router_dom0.To;
501
+ //#endregion
502
+ //#region src/client/hooks/use-location.d.ts
503
+ declare const useLocation: () => _$react_router_dom0.Location<any>;
504
+ //#endregion
505
+ //#region src/client/components/docs-layout.d.ts
506
+ /**
507
+ * Props shared by all layout slot components.
508
+ */
509
+ interface SlotProps {
510
+ children?: React.ReactNode;
511
+ className?: string;
512
+ style?: React.CSSProperties;
513
+ }
514
+ /**
515
+ * Horizontal flex container for sidebar + content + toc.
516
+ */
517
+ declare function Body({
518
+ children,
519
+ className,
520
+ style
521
+ }: SlotProps): _$react_jsx_runtime0.JSX.Element;
522
+ /**
523
+ * Main scrollable content area.
524
+ */
525
+ declare function Content({
526
+ children,
527
+ className,
528
+ style
529
+ }: SlotProps): _$react_jsx_runtime0.JSX.Element;
530
+ /**
531
+ * MDX Content wrapper with standard page padding and max-width logic.
532
+ */
533
+ declare function ContentMdx({
534
+ children,
535
+ className,
536
+ style
537
+ }: SlotProps): _$react_jsx_runtime0.JSX.Element;
538
+ /**
539
+ * Content header row (breadcrumbs + copy markdown).
540
+ */
541
+ declare function ContentHeader({
542
+ children,
543
+ className,
544
+ style
545
+ }: SlotProps): _$react_jsx_runtime0.JSX.Element;
546
+ /**
547
+ * Footer area inside the content section (page nav).
548
+ */
549
+ declare function ContentFooter({
550
+ children,
551
+ className,
552
+ style
553
+ }: SlotProps): _$react_jsx_runtime0.JSX.Element;
554
+ interface DocsLayoutComponent extends React.FC<SlotProps> {
555
+ Body: typeof Body;
556
+ Content: typeof Content;
557
+ ContentMdx: typeof ContentMdx;
558
+ ContentHeader: typeof ContentHeader;
559
+ ContentFooter: typeof ContentFooter;
560
+ }
561
+ declare const DocsLayout: DocsLayoutComponent;
562
+ //#endregion
563
+ //#region src/client/components/default-layout.d.ts
564
+ interface LayoutProps$1 {
565
+ children: React.ReactNode;
566
+ }
567
+ /**
568
+ * The built-in default layout for Boltdocs.
569
+ * Users who create their own `layout.tsx` can import the same building blocks
570
+ * and rearrange, wrap, or replace any section.
571
+ */
572
+ declare function DefaultLayout({
573
+ children
574
+ }: LayoutProps$1): _$react_jsx_runtime0.JSX.Element;
575
+ //#endregion
576
+ //#region src/client/components/ui-base/navbar.d.ts
577
+ declare function Navbar(): _$react_jsx_runtime0.JSX.Element;
578
+ //#endregion
579
+ //#region src/client/components/ui-base/sidebar.d.ts
580
+ declare function Sidebar$1({
581
+ routes,
582
+ config
583
+ }: {
584
+ routes: ComponentRoute[];
585
+ config: BoltdocsConfig$1;
586
+ }): _$react_jsx_runtime0.JSX.Element;
587
+ //#endregion
588
+ //#region src/client/components/ui-base/on-this-page.d.ts
589
+ declare function OnThisPage({
590
+ headings: rawHeadings,
591
+ editLink,
592
+ communityHelp,
593
+ filePath
594
+ }: OnThisPageProps): _$react_jsx_runtime0.JSX.Element | null;
595
+ //#endregion
596
+ //#region src/client/components/ui-base/head.d.ts
597
+ interface HeadProps {
598
+ siteTitle: string;
599
+ siteDescription?: string;
600
+ routes: Array<{
601
+ path: string;
602
+ title: string;
603
+ description?: string;
604
+ seo?: Record<string, any>;
605
+ }>;
606
+ }
607
+ declare function Head({
608
+ siteTitle,
609
+ siteDescription,
610
+ routes
611
+ }: HeadProps): _$react_jsx_runtime0.JSX.Element;
612
+ //#endregion
613
+ //#region src/client/components/ui-base/breadcrumbs.d.ts
614
+ declare function Breadcrumbs(): _$react_jsx_runtime0.JSX.Element | null;
615
+ //#endregion
616
+ //#region src/client/components/ui-base/page-nav.d.ts
617
+ /**
618
+ * Component to display the previous and next page navigation buttons.
619
+ * Enhanced with subtle entrance animations and a modern card layout.
620
+ */
621
+ declare function PageNav(): _$react_jsx_runtime0.JSX.Element | null;
622
+ //#endregion
623
+ //#region src/client/components/ui-base/error-boundary.d.ts
624
+ interface Props {
625
+ children?: ReactNode;
626
+ fallback?: ReactNode;
627
+ }
628
+ interface State {
629
+ hasError: boolean;
630
+ error?: Error;
631
+ }
632
+ declare class ErrorBoundary extends Component<Props, State> {
633
+ state: State;
634
+ static getDerivedStateFromError(error: Error): State;
635
+ componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
636
+ render(): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | _$react.ReactPortal | _$react.ReactElement<unknown, string | _$react.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | _$react_jsx_runtime0.JSX.Element | null | undefined;
637
+ }
638
+ //#endregion
639
+ //#region src/client/components/ui-base/copy-markdown.d.ts
640
+ interface CopyMarkdownProps {
641
+ content?: string;
642
+ mdxRaw?: string;
643
+ route?: ComponentRoute;
644
+ config?: boolean | {
645
+ text?: string;
646
+ icon?: string;
647
+ };
648
+ }
649
+ declare function CopyMarkdown({
650
+ content,
651
+ mdxRaw,
652
+ config
653
+ }: CopyMarkdownProps): _$react_jsx_runtime0.JSX.Element | null;
654
+ //#endregion
655
+ //#region src/client/components/ui-base/not-found.d.ts
656
+ declare function NotFound(): _$react_jsx_runtime0.JSX.Element;
657
+ //#endregion
658
+ //#region src/client/components/ui-base/loading.d.ts
659
+ /**
660
+ * A premium loading component that only skeletons the markdown content area.
661
+ * Designed to be used as a Suspense fallback within a persistent layout.
662
+ */
663
+ declare function Loading(): _$react_jsx_runtime0.JSX.Element;
664
+ //#endregion
665
+ //#region src/client/components/mdx/code-block.d.ts
666
+ interface CodeBlockProps {
667
+ children?: React.ReactNode;
668
+ className?: string;
669
+ hideCopy?: boolean;
670
+ title?: string;
671
+ lang?: string;
672
+ highlightedHtml?: string;
673
+ 'data-lang'?: string;
674
+ 'data-title'?: string;
675
+ plain?: boolean;
676
+ [key: string]: any;
677
+ }
678
+ declare function CodeBlock(props: CodeBlockProps): _$react_jsx_runtime0.JSX.Element;
679
+ //#endregion
680
+ //#region src/client/components/mdx/video.d.ts
681
+ interface VideoProps {
682
+ src?: string;
683
+ poster?: string;
684
+ alt?: string;
685
+ controls?: boolean;
686
+ preload?: string;
687
+ children?: React.ReactNode;
688
+ [key: string]: any;
689
+ }
690
+ declare function Video({
691
+ src,
692
+ poster,
693
+ alt,
694
+ children,
695
+ controls,
696
+ preload,
697
+ ...rest
698
+ }: VideoProps): _$react_jsx_runtime0.JSX.Element;
699
+ //#endregion
700
+ //#region src/client/components/primitives/button.d.ts
701
+ declare const buttonVariants: (props?: ({
702
+ variant?: "link" | "primary" | "secondary" | "outline" | "ghost" | "danger" | "success" | "warning" | "info" | "subtle" | null | undefined;
703
+ size?: "sm" | "md" | "lg" | null | undefined;
704
+ rounded?: "sm" | "md" | "lg" | "none" | "full" | null | undefined;
705
+ iconSize?: "sm" | "md" | "lg" | null | undefined;
706
+ disabled?: boolean | null | undefined;
707
+ } & _$class_variance_authority_types0.ClassProp) | undefined) => string;
708
+ type ButtonVariantType = VariantProps<typeof buttonVariants>;
709
+ interface ButtonProps extends Omit<RAC.ButtonProps, 'children' | 'className'>, ButtonVariantType {
710
+ icon?: React.ReactNode;
711
+ iconPosition?: 'left' | 'right';
712
+ href?: string;
713
+ children?: React.ReactNode;
714
+ className?: string;
715
+ isIconOnly?: boolean;
716
+ }
717
+ declare const Button$1: ({
718
+ href,
719
+ icon,
720
+ iconPosition,
721
+ isIconOnly,
722
+ children,
723
+ className,
724
+ variant,
725
+ size,
726
+ rounded,
727
+ iconSize,
728
+ disabled,
729
+ ...props
730
+ }: ButtonProps) => _$react_jsx_runtime0.JSX.Element;
731
+ //#endregion
732
+ //#region src/client/components/mdx/button.d.ts
733
+ declare const Button: ({
734
+ className,
735
+ variant,
736
+ size,
737
+ rounded,
738
+ iconSize,
739
+ disabled,
740
+ ...props
741
+ }: ButtonProps) => _$react_jsx_runtime0.JSX.Element;
742
+ //#endregion
743
+ //#region src/client/components/mdx/tabs.d.ts
744
+ interface TabProps {
745
+ label: string;
746
+ icon?: React.ReactNode;
747
+ disabled?: boolean;
748
+ children: React.ReactNode;
749
+ }
750
+ declare function Tab({
751
+ children
752
+ }: TabProps): _$react_jsx_runtime0.JSX.Element;
753
+ interface TabsProps {
754
+ defaultIndex?: number;
755
+ children: React.ReactNode;
756
+ }
757
+ declare function Tabs$1({
758
+ defaultIndex,
759
+ children
760
+ }: TabsProps): _$react_jsx_runtime0.JSX.Element;
761
+ //#endregion
762
+ //#region src/client/components/mdx/badge.d.ts
763
+ declare const badgeVariants: (props?: ({
764
+ variant?: "default" | "primary" | "danger" | "success" | "warning" | "info" | null | undefined;
765
+ } & _$class_variance_authority_types0.ClassProp) | undefined) => string;
766
+ interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
767
+ children: React.ReactNode;
768
+ }
769
+ declare function Badge({
770
+ variant,
771
+ children,
772
+ className,
773
+ ...rest
774
+ }: BadgeProps): _$react_jsx_runtime0.JSX.Element;
775
+ //#endregion
776
+ //#region src/client/components/mdx/card.d.ts
777
+ declare const cardsVariants: (props?: ({
778
+ cols?: 1 | 2 | 3 | 4 | null | undefined;
779
+ } & _$class_variance_authority_types0.ClassProp) | undefined) => string;
780
+ type CardsVariants = VariantProps<typeof cardsVariants>;
781
+ interface CardsProps extends React.HTMLAttributes<HTMLDivElement>, CardsVariants {}
782
+ declare function Cards({
783
+ cols,
784
+ children,
785
+ className,
786
+ ...rest
787
+ }: CardsProps): _$react_jsx_runtime0.JSX.Element;
788
+ interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
789
+ title?: string;
790
+ icon?: React.ReactNode;
791
+ href?: string;
792
+ children?: React.ReactNode;
793
+ }
794
+ declare function Card({
795
+ title,
796
+ icon,
797
+ href,
798
+ children,
799
+ className,
800
+ ...rest
801
+ }: CardProps): _$react_jsx_runtime0.JSX.Element;
802
+ //#endregion
803
+ //#region src/client/components/mdx/admonition.d.ts
804
+ declare const admonitionVariants: (props?: ({
805
+ type?: "danger" | "warning" | "info" | "note" | "tip" | "important" | "caution" | null | undefined;
806
+ } & _$class_variance_authority_types0.ClassProp) | undefined) => string;
807
+ type AdmonitionVariants = VariantProps<typeof admonitionVariants>;
808
+ interface AdmonitionProps extends React.HTMLAttributes<HTMLDivElement>, AdmonitionVariants {
809
+ title?: string;
810
+ children: React.ReactNode;
811
+ }
812
+ declare function Admonition({
813
+ type,
814
+ title,
815
+ children,
816
+ className,
817
+ ...rest
818
+ }: AdmonitionProps): _$react_jsx_runtime0.JSX.Element;
819
+ declare const Note: (props: Omit<AdmonitionProps, "type">) => _$react_jsx_runtime0.JSX.Element;
820
+ declare const Tip: (props: Omit<AdmonitionProps, "type">) => _$react_jsx_runtime0.JSX.Element;
821
+ declare const Warning: (props: Omit<AdmonitionProps, "type">) => _$react_jsx_runtime0.JSX.Element;
822
+ declare const Danger: (props: Omit<AdmonitionProps, "type">) => _$react_jsx_runtime0.JSX.Element;
823
+ declare const InfoBox: (props: Omit<AdmonitionProps, "type">) => _$react_jsx_runtime0.JSX.Element;
824
+ declare const Important: (props: Omit<AdmonitionProps, "type">) => _$react_jsx_runtime0.JSX.Element;
825
+ declare const Caution: (props: Omit<AdmonitionProps, "type">) => _$react_jsx_runtime0.JSX.Element;
826
+ //#endregion
827
+ //#region src/client/components/mdx/list.d.ts
828
+ declare const listVariants: (props?: ({
829
+ variant?: "number" | "default" | "checked" | "arrow" | "bubble" | null | undefined;
830
+ cols?: 1 | 2 | 3 | 4 | null | undefined;
831
+ isGrid?: boolean | null | undefined;
832
+ dense?: boolean | null | undefined;
833
+ } & _$class_variance_authority_types0.ClassProp) | undefined) => string;
834
+ type ListVariantProps = VariantProps<typeof listVariants>;
835
+ interface ListProps extends ComponentPropsWithoutRef<'ul'>, Omit<ListVariantProps, 'variant'> {
836
+ variant?: 'checked' | 'arrow' | 'default' | 'bubble' | 'number';
837
+ children: ReactNode;
838
+ }
839
+ declare function List({
840
+ variant,
841
+ cols,
842
+ dense,
843
+ children,
844
+ className,
845
+ ...props
846
+ }: ListProps): _$react_jsx_runtime0.JSX.Element;
847
+ //#endregion
848
+ //#region src/client/components/mdx/file-tree.d.ts
849
+ interface FileTreeProps {
850
+ children: React.ReactNode;
851
+ }
852
+ declare function FileTree({
853
+ children
854
+ }: FileTreeProps): _$react_jsx_runtime0.JSX.Element;
855
+ //#endregion
856
+ //#region src/client/components/mdx/table.d.ts
857
+ interface TableProps {
858
+ headers?: string[];
859
+ data?: (string | React.ReactNode)[][];
860
+ children?: React.ReactNode;
861
+ className?: string;
862
+ sortable?: boolean;
863
+ paginated?: boolean;
864
+ pageSize?: number;
865
+ }
866
+ declare function Table({
867
+ headers,
868
+ data,
869
+ children,
870
+ className,
871
+ sortable,
872
+ paginated,
873
+ pageSize
874
+ }: TableProps): _$react_jsx_runtime0.JSX.Element;
875
+ //#endregion
876
+ //#region src/client/components/mdx/field.d.ts
877
+ interface FieldProps {
878
+ name: string;
879
+ type?: string;
880
+ defaultValue?: string;
881
+ required?: boolean;
882
+ children: React.ReactNode;
883
+ id?: string;
884
+ className?: string;
885
+ }
886
+ declare function Field({
887
+ name,
888
+ type,
889
+ defaultValue,
890
+ required,
891
+ children,
892
+ id,
893
+ className
894
+ }: FieldProps): _$react_jsx_runtime0.JSX.Element;
895
+ //#endregion
896
+ //#region src/client/components/primitives/link.d.ts
897
+ interface LinkProps$3 extends LinkProps$2 {
898
+ /** Should prefetch the page on hover? Default 'hover' */
899
+ prefetch?: 'hover' | 'none';
900
+ }
901
+ /**
902
+ * A primitive Link component that wraps React Aria Components' Link
903
+ * and adds framework-specific logic for path localization and preloading.
904
+ *
905
+ * It uses the global navigation configuration from BoltdocsRouterProvider
906
+ * to handle seamless client-side transitions.
907
+ */
908
+ declare const Link$1: _$react.ForwardRefExoticComponent<LinkProps$3 & _$react.RefAttributes<HTMLAnchorElement>>;
909
+ /**
910
+ * Props for the NavLink component, extending standard Link props.
911
+ */
912
+ interface NavLinkProps extends Omit<LinkProps$3, 'className' | 'children'> {
913
+ /**
914
+ * When true, the active state will only be applied if the paths match exactly.
915
+ * Default is false.
916
+ */
917
+ end?: boolean;
918
+ /**
919
+ * Provides access to the active state for conditional children rendering.
920
+ */
921
+ children?: React.ReactNode | ((props: {
922
+ isActive: boolean;
923
+ }) => React.ReactNode);
924
+ /**
925
+ * Provides access to the active state for conditional styling.
926
+ */
927
+ className?: string | ((props: {
928
+ isActive: boolean;
929
+ }) => string);
930
+ }
931
+ /**
932
+ * A primitive NavLink component that provides active state detection.
933
+ *
934
+ * It combines the Link primitive with path matching logic to determine
935
+ * if the link is currently active based on the browser's location.
936
+ */
937
+ declare const NavLink: _$react.ForwardRefExoticComponent<NavLinkProps & _$react.RefAttributes<HTMLAnchorElement>>;
938
+ //#endregion
939
+ //#region src/client/components/mdx/link.d.ts
940
+ type LinkProps = LinkProps$3 & {
941
+ to: string;
942
+ children?: React.ReactNode;
943
+ };
944
+ /**
945
+ * A premium Link component for Boltdocs that handles internal and external routing.
946
+ */
947
+ declare function Link({
948
+ to,
949
+ children,
950
+ className,
951
+ ...props
952
+ }: LinkProps): _$react_jsx_runtime0.JSX.Element;
953
+ //#endregion
954
+ //#region src/client/components/mdx/image.d.ts
955
+ interface ImageProps extends ImgHTMLAttributes<HTMLImageElement> {
956
+ src: string;
957
+ darkSrc?: string;
958
+ theme?: 'light' | 'dark';
959
+ }
960
+ /**
961
+ * A themed Image component for Boltdocs.
962
+ * It supports rendering based on the current active theme.
963
+ */
964
+ declare function Image({
965
+ src,
966
+ alt,
967
+ theme: imageTheme,
968
+ ...props
969
+ }: ImageProps): _$react_jsx_runtime0.JSX.Element | null;
970
+ //#endregion
971
+ //#region src/client/components/mdx/component-props.d.ts
972
+ interface PropItem {
973
+ name: string;
974
+ type: string;
975
+ defaultValue?: string;
976
+ required?: boolean;
977
+ description: React.ReactNode;
978
+ }
979
+ interface ComponentPropsProps {
980
+ title?: string;
981
+ props: PropItem[];
982
+ className?: string;
983
+ }
984
+ declare function ComponentProps({
985
+ title,
986
+ props,
987
+ className
988
+ }: ComponentPropsProps): _$react_jsx_runtime0.JSX.Element;
989
+ //#endregion
990
+ //#region src/client/components/mdx/component-preview.d.ts
991
+ interface ComponentPreviewProps {
992
+ code?: string;
993
+ highlightedHtml?: string;
994
+ children?: string;
995
+ preview?: React.ReactNode;
996
+ hideCode?: boolean;
997
+ hideCopy?: boolean;
998
+ }
999
+ declare function ComponentPreview(props: ComponentPreviewProps): _$react_jsx_runtime0.JSX.Element;
1000
+ //#endregion
1001
+ //#region src/client/components/primitives/types.d.ts
1002
+ type ComponentBase = {
1003
+ className?: string;
1004
+ children?: ReactNode;
1005
+ };
1006
+ //#endregion
1007
+ //#region src/client/components/primitives/navbar.d.ts
1008
+ interface NavbarLinkProps extends Omit<ComponentBase, 'children'> {
1009
+ label: ReactNode;
1010
+ href: string;
1011
+ active?: boolean;
1012
+ to?: 'internal' | 'external';
1013
+ }
1014
+ interface NavbarLogoProps extends Omit<ComponentBase, 'children'> {
1015
+ src: string;
1016
+ alt: string;
1017
+ width?: number;
1018
+ height?: number;
1019
+ }
1020
+ interface NavbarSearchTriggerProps extends ComponentBase {
1021
+ onPress: () => void;
1022
+ }
1023
+ interface NavbarThemeProps {
1024
+ className?: string;
1025
+ theme: 'dark' | 'light';
1026
+ onThemeChange: (isSelected: boolean) => void;
1027
+ }
1028
+ interface NavbarSocialsProps extends ComponentBase {
1029
+ icon: string;
1030
+ link: string;
1031
+ }
1032
+ declare const Navbar$1: {
1033
+ ({
1034
+ children,
1035
+ className,
1036
+ ...props
1037
+ }: ComponentBase): _$react_jsx_runtime0.JSX.Element;
1038
+ Root: /*elided*/any;
1039
+ Left: ({
1040
+ children,
1041
+ className
1042
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1043
+ Right: ({
1044
+ children,
1045
+ className
1046
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1047
+ Center: ({
1048
+ children,
1049
+ className
1050
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1051
+ Logo: ({
1052
+ src,
1053
+ alt,
1054
+ width,
1055
+ height,
1056
+ className
1057
+ }: NavbarLogoProps) => _$react_jsx_runtime0.JSX.Element;
1058
+ Title: ({
1059
+ children,
1060
+ className
1061
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1062
+ Links: ({
1063
+ children,
1064
+ className
1065
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1066
+ Link: ({
1067
+ label,
1068
+ href,
1069
+ active,
1070
+ to,
1071
+ className
1072
+ }: NavbarLinkProps) => _$react_jsx_runtime0.JSX.Element;
1073
+ SearchTrigger: ({
1074
+ className,
1075
+ onPress
1076
+ }: NavbarSearchTriggerProps) => _$react_jsx_runtime0.JSX.Element;
1077
+ Theme: ({
1078
+ className,
1079
+ theme,
1080
+ onThemeChange
1081
+ }: NavbarThemeProps) => _$react_jsx_runtime0.JSX.Element;
1082
+ Socials: ({
1083
+ icon,
1084
+ link,
1085
+ className
1086
+ }: NavbarSocialsProps) => _$react_jsx_runtime0.JSX.Element;
1087
+ Split: ({
1088
+ className
1089
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1090
+ Content: ({
1091
+ children,
1092
+ className
1093
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1094
+ };
1095
+ //#endregion
1096
+ //#region src/client/components/primitives/navigation-menu.d.ts
1097
+ interface NavigationMenuItemProps extends ComponentBase {
1098
+ label: string;
1099
+ }
1100
+ interface NavigationMenuLinkProps extends Omit<ComponentBase, 'children'> {
1101
+ href: string;
1102
+ label: string;
1103
+ description?: string;
1104
+ children?: React.ReactNode | ((opts: RAC.MenuItemRenderProps) => React.ReactNode);
1105
+ }
1106
+ declare const NavigationMenu: {
1107
+ ({
1108
+ children,
1109
+ className,
1110
+ ...props
1111
+ }: ComponentBase): _$react_jsx_runtime0.JSX.Element;
1112
+ Root: /*elided*/any;
1113
+ List: ({
1114
+ children,
1115
+ className
1116
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1117
+ Item: ({
1118
+ children,
1119
+ label,
1120
+ className
1121
+ }: NavigationMenuItemProps) => _$react_jsx_runtime0.JSX.Element;
1122
+ Link: ({
1123
+ label,
1124
+ href,
1125
+ description,
1126
+ className,
1127
+ children,
1128
+ ...props
1129
+ }: NavigationMenuLinkProps) => _$react_jsx_runtime0.JSX.Element;
1130
+ };
1131
+ //#endregion
1132
+ //#region src/client/components/primitives/search-dialog.d.ts
1133
+ interface SearchDialogProps extends ComponentBase {
1134
+ isOpen?: boolean;
1135
+ onOpenChange?: (isOpen: boolean) => void;
1136
+ }
1137
+ interface SearchDialogItemProps extends Omit<RAC.ListBoxItemProps, 'children'> {
1138
+ className?: string;
1139
+ children: React.ReactNode;
1140
+ }
1141
+ interface SearchDialogItemIconProps {
1142
+ isHeading?: boolean;
1143
+ className?: string;
1144
+ }
1145
+ declare const SearchDialog: {
1146
+ ({
1147
+ children,
1148
+ isOpen,
1149
+ onOpenChange,
1150
+ className
1151
+ }: SearchDialogProps): _$react_jsx_runtime0.JSX.Element;
1152
+ Root: /*elided*/any;
1153
+ Autocomplete: <T extends object>({
1154
+ children,
1155
+ className,
1156
+ onSelectionChange,
1157
+ ...props
1158
+ }: RAC.AutocompleteProps<T> & {
1159
+ className?: string;
1160
+ onSelectionChange?: (key: RAC.Key) => void;
1161
+ }) => _$react_jsx_runtime0.JSX.Element;
1162
+ Input: ({
1163
+ className,
1164
+ ...props
1165
+ }: RAC.InputProps & {
1166
+ className?: string;
1167
+ }) => _$react_jsx_runtime0.JSX.Element;
1168
+ List: <T extends object>({
1169
+ children,
1170
+ className,
1171
+ ...props
1172
+ }: RAC.ListBoxProps<T> & {
1173
+ className?: string;
1174
+ }) => _$react_jsx_runtime0.JSX.Element;
1175
+ Item: (({
1176
+ children,
1177
+ className,
1178
+ ...props
1179
+ }: SearchDialogItemProps) => _$react_jsx_runtime0.JSX.Element) & {
1180
+ Icon: ({
1181
+ isHeading,
1182
+ className
1183
+ }: SearchDialogItemIconProps) => _$react_jsx_runtime0.JSX.Element;
1184
+ Title: ({
1185
+ children,
1186
+ className
1187
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1188
+ Bio: ({
1189
+ children,
1190
+ className
1191
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1192
+ };
1193
+ };
1194
+ //#endregion
1195
+ //#region src/client/components/primitives/on-this-page.d.ts
1196
+ interface TOCItemType {
1197
+ title: ReactNode;
1198
+ url: string;
1199
+ depth: number;
1200
+ _step?: number;
1201
+ }
1202
+ interface TOCItemInfo {
1203
+ id: string;
1204
+ active: boolean;
1205
+ /** last time the item is updated */
1206
+ t: number;
1207
+ /** currently active but not intersecting in viewport */
1208
+ fallback: boolean;
1209
+ original?: TOCItemType;
1210
+ }
1211
+ interface AnchorProviderProps {
1212
+ toc: TOCItemType[];
1213
+ /**
1214
+ * Only accept one active item at most
1215
+ * @defaultValue false
1216
+ */
1217
+ single?: boolean;
1218
+ children?: ReactNode;
1219
+ }
1220
+ interface ScrollProviderProps {
1221
+ /**
1222
+ * Scroll into the view of container when active
1223
+ */
1224
+ containerRef: RefObject<HTMLElement | null>;
1225
+ children?: ReactNode;
1226
+ }
1227
+ interface OnThisPageContentProps extends ComponentBase {
1228
+ ref?: React.Ref<HTMLDivElement>;
1229
+ scrollRef?: RefObject<HTMLElement | null>;
1230
+ }
1231
+ interface OnThisPageItemProps extends ComponentBase {
1232
+ level?: number;
1233
+ }
1234
+ interface OnThisPageLinkProps extends ComponentBase {
1235
+ href?: string;
1236
+ active?: boolean;
1237
+ onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;
1238
+ }
1239
+ interface OnThisPageIndicatorProps extends ComponentBase {
1240
+ style?: React.CSSProperties;
1241
+ }
1242
+ declare function useItems(): TOCItemInfo[];
1243
+ declare function useActiveAnchor(): string | undefined;
1244
+ declare function useActiveAnchors(): string[];
1245
+ /** Optional: add auto-scroll to TOC items. */
1246
+ declare function ScrollProvider({
1247
+ containerRef,
1248
+ children
1249
+ }: ScrollProviderProps): _$react_jsx_runtime0.JSX.Element;
1250
+ declare function AnchorProvider({
1251
+ toc,
1252
+ single,
1253
+ children
1254
+ }: AnchorProviderProps): _$react_jsx_runtime0.JSX.Element;
1255
+ declare const OnThisPage$1: {
1256
+ ({
1257
+ children,
1258
+ className
1259
+ }: ComponentBase): _$react_jsx_runtime0.JSX.Element;
1260
+ Root: /*elided*/any;
1261
+ Header: ({
1262
+ children,
1263
+ className,
1264
+ ...props
1265
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1266
+ Content: {
1267
+ ({
1268
+ children,
1269
+ className,
1270
+ ref,
1271
+ ...props
1272
+ }: OnThisPageContentProps): _$react_jsx_runtime0.JSX.Element;
1273
+ displayName: string;
1274
+ };
1275
+ List: ({
1276
+ children,
1277
+ className
1278
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1279
+ Item: ({
1280
+ level,
1281
+ children,
1282
+ className
1283
+ }: OnThisPageItemProps) => _$react_jsx_runtime0.JSX.Element;
1284
+ Link: ({
1285
+ children,
1286
+ href,
1287
+ active,
1288
+ onClick,
1289
+ className
1290
+ }: OnThisPageLinkProps) => _$react_jsx_runtime0.JSX.Element;
1291
+ Indicator: ({
1292
+ style,
1293
+ className
1294
+ }: OnThisPageIndicatorProps) => _$react_jsx_runtime0.JSX.Element;
1295
+ };
1296
+ //#endregion
1297
+ //#region src/client/components/primitives/page-nav.d.ts
1298
+ interface PageNavProps extends ComponentBase {
1299
+ to: string;
1300
+ direction: 'prev' | 'next';
1301
+ }
1302
+ declare const PageNav$1: {
1303
+ ({
1304
+ children,
1305
+ className
1306
+ }: ComponentBase): _$react_jsx_runtime0.JSX.Element;
1307
+ Root: /*elided*/any;
1308
+ Link: ({
1309
+ children,
1310
+ to,
1311
+ direction,
1312
+ className
1313
+ }: PageNavProps) => _$react_jsx_runtime0.JSX.Element;
1314
+ Title: ({
1315
+ children,
1316
+ className
1317
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1318
+ Description: ({
1319
+ children,
1320
+ className
1321
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1322
+ Icon: ({
1323
+ children
1324
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1325
+ };
1326
+ //#endregion
1327
+ //#region src/client/components/primitives/tabs.d.ts
1328
+ interface TabsItemProps extends ComponentBase {
1329
+ id: string;
1330
+ selected?: boolean;
1331
+ onClick?: () => void;
1332
+ onKeyDown?: (event: React.KeyboardEvent) => void;
1333
+ disabled?: boolean;
1334
+ }
1335
+ interface TabsIndicatorProps extends ComponentBase {
1336
+ style?: React.CSSProperties;
1337
+ }
1338
+ declare const Tabs: {
1339
+ ({
1340
+ children,
1341
+ className,
1342
+ ...props
1343
+ }: ComponentBase): _$react_jsx_runtime0.JSX.Element;
1344
+ Root: /*elided*/any;
1345
+ List: ({
1346
+ children,
1347
+ className
1348
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1349
+ Item: ({
1350
+ children,
1351
+ id,
1352
+ selected,
1353
+ className,
1354
+ ...props
1355
+ }: TabsItemProps) => _$react_jsx_runtime0.JSX.Element;
1356
+ Content: ({
1357
+ children,
1358
+ className
1359
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1360
+ Indicator: ({
1361
+ className,
1362
+ style
1363
+ }: TabsIndicatorProps) => _$react_jsx_runtime0.JSX.Element;
1364
+ };
1365
+ //#endregion
1366
+ //#region src/client/components/primitives/sidebar.d.ts
1367
+ interface SidebarGroupProps extends ComponentBase {
1368
+ title?: string;
1369
+ icon?: React.ElementType;
1370
+ }
1371
+ interface SidebarSubGroupProps extends SidebarLinkProps {
1372
+ isOpen?: boolean;
1373
+ onToggle?: () => void;
1374
+ children?: React.ReactNode;
1375
+ }
1376
+ interface SidebarLinkProps extends ComponentBase {
1377
+ label: string;
1378
+ href: string;
1379
+ active?: boolean;
1380
+ icon?: React.ElementType;
1381
+ badge?: ComponentRoute['badge'];
1382
+ }
1383
+ declare const Sidebar: {
1384
+ ({
1385
+ children,
1386
+ className
1387
+ }: ComponentBase): _$react_jsx_runtime0.JSX.Element;
1388
+ Root: /*elided*/any;
1389
+ Group: ({
1390
+ children,
1391
+ title,
1392
+ icon: Icon,
1393
+ className
1394
+ }: SidebarGroupProps) => _$react_jsx_runtime0.JSX.Element;
1395
+ SubGroup: ({
1396
+ label,
1397
+ href,
1398
+ active,
1399
+ icon: Icon,
1400
+ badge,
1401
+ className,
1402
+ isOpen,
1403
+ onToggle,
1404
+ children
1405
+ }: SidebarSubGroupProps) => _$react_jsx_runtime0.JSX.Element;
1406
+ GroupItem: ({
1407
+ children,
1408
+ className
1409
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1410
+ Link: ({
1411
+ label,
1412
+ href,
1413
+ active,
1414
+ icon: Icon,
1415
+ badge,
1416
+ className
1417
+ }: SidebarLinkProps) => _$react_jsx_runtime0.JSX.Element;
1418
+ };
1419
+ //#endregion
1420
+ //#region src/client/components/primitives/breadcrumbs.d.ts
1421
+ declare const Breadcrumbs$1: {
1422
+ ({
1423
+ children,
1424
+ className,
1425
+ ...props
1426
+ }: ComponentBase): _$react_jsx_runtime0.JSX.Element;
1427
+ Root: /*elided*/any;
1428
+ Item: ({
1429
+ children,
1430
+ className,
1431
+ ...props
1432
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1433
+ Link: ({
1434
+ children,
1435
+ href,
1436
+ className,
1437
+ ...props
1438
+ }: LinkProps$2 & {
1439
+ className?: string;
1440
+ }) => _$react_jsx_runtime0.JSX.Element;
1441
+ Separator: ({
1442
+ className
1443
+ }: ComponentBase) => _$react_jsx_runtime0.JSX.Element;
1444
+ };
1445
+ //#endregion
1446
+ //#region src/client/components/primitives/button-group.d.ts
1447
+ interface ButtonGroupProps extends ComponentBase {
1448
+ vertical?: boolean;
1449
+ }
1450
+ declare const ButtonGroup: ({
1451
+ children,
1452
+ className,
1453
+ vertical
1454
+ }: ButtonGroupProps) => _$react_jsx_runtime0.JSX.Element;
1455
+ //#endregion
1456
+ //#region src/client/components/primitives/popover.d.ts
1457
+ interface PopoverProps extends Omit<RAC.PopoverProps, 'children'> {
1458
+ children: React.ReactNode;
1459
+ className?: string;
1460
+ showArrow?: boolean;
1461
+ }
1462
+ /**
1463
+ * A reusable Popover primitive with premium glassmorphism styling and smooth animations.
1464
+ */
1465
+ declare const Popover: ({
1466
+ children,
1467
+ className,
1468
+ showArrow,
1469
+ ...props
1470
+ }: PopoverProps) => _$react_jsx_runtime0.JSX.Element;
1471
+ //#endregion
1472
+ //#region src/client/components/primitives/menu.d.ts
1473
+ /**
1474
+ * MenuTrigger wraps a trigger (usually a Button) and a Menu.
1475
+ */
1476
+ interface MenuTriggerProps extends RAC.MenuTriggerProps {
1477
+ placement?: PopoverProps['placement'];
1478
+ }
1479
+ declare function MenuTrigger(props: MenuTriggerProps): _$react_jsx_runtime0.JSX.Element;
1480
+ /**
1481
+ * SubmenuTrigger for nested menus.
1482
+ */
1483
+ declare function SubmenuTrigger(props: RAC.SubmenuTriggerProps): _$react_jsx_runtime0.JSX.Element;
1484
+ /**
1485
+ * The Menu container.
1486
+ */
1487
+ declare function Menu<T extends object>(props: RAC.MenuProps<T>): _$react_jsx_runtime0.JSX.Element;
1488
+ declare namespace Menu {
1489
+ var Root: typeof Menu;
1490
+ var Item: typeof MenuItem;
1491
+ var Trigger: typeof MenuTrigger;
1492
+ var SubTrigger: typeof SubmenuTrigger;
1493
+ var Section: typeof MenuSection;
1494
+ var Separator: typeof MenuSeparator;
1495
+ }
1496
+ /**
1497
+ * MenuItem with support for selection states and submenus.
1498
+ */
1499
+ declare function MenuItem(props: RAC.MenuItemProps): _$react_jsx_runtime0.JSX.Element;
1500
+ /**
1501
+ * MenuSection for grouping items with an optional header.
1502
+ */
1503
+ interface MenuSectionProps<T> extends RAC.MenuSectionProps<T> {
1504
+ title?: string;
1505
+ }
1506
+ declare function MenuSection<T extends object>({
1507
+ title,
1508
+ ...props
1509
+ }: MenuSectionProps<T>): _$react_jsx_runtime0.JSX.Element;
1510
+ /**
1511
+ * MenuSeparator for visual division.
1512
+ */
1513
+ declare function MenuSeparator(props: RAC.SeparatorProps): _$react_jsx_runtime0.JSX.Element;
1514
+ //#endregion
1515
+ //#region src/client/components/primitives/tooltip.d.ts
1516
+ interface TooltipProps extends Omit<RAC.TooltipProps, 'children'> {
1517
+ /** The content to show inside the tooltip */
1518
+ content: ReactNode;
1519
+ /** The trigger element (usually a button or link) */
1520
+ children: React.ReactElement;
1521
+ /** Delay in milliseconds before showing the tooltip */
1522
+ delay?: number;
1523
+ /** Delay in milliseconds before hiding the tooltip */
1524
+ closeDelay?: number;
1525
+ }
1526
+ interface TooltipContentProps extends RAC.TooltipProps {}
1527
+ declare const Tooltip: {
1528
+ ({
1529
+ content,
1530
+ children,
1531
+ delay,
1532
+ closeDelay,
1533
+ ...props
1534
+ }: TooltipProps): _$react_jsx_runtime0.JSX.Element;
1535
+ Root: /*elided*/any;
1536
+ Content: ({
1537
+ className,
1538
+ children,
1539
+ ...props
1540
+ }: TooltipContentProps) => _$react_jsx_runtime0.JSX.Element;
1541
+ };
1542
+ //#endregion
1543
+ //#region src/client/components/primitives/skeleton.d.ts
1544
+ interface SkeletonProps extends React.HTMLAttributes<HTMLDivElement> {
1545
+ variant?: 'rect' | 'circle';
1546
+ }
1547
+ /**
1548
+ * A flexible skeleton component that mimics the shape of content
1549
+ * while it is loading. Features a smooth pulse animation.
1550
+ */
1551
+ declare function Skeleton({
1552
+ className,
1553
+ variant,
1554
+ ...props
1555
+ }: SkeletonProps): _$react_jsx_runtime0.JSX.Element;
1556
+ //#endregion
1557
+ //#region src/client/utils/cn.d.ts
1558
+ declare function cn(...inputs: ClassValue[]): string;
1559
+ //#endregion
1560
+ export { Admonition, type AdmonitionProps, AnchorProvider, Badge, type BadgeProps, type BoltdocsConfig$1 as BoltdocsConfig, BoltdocsShell, type BoltdocsThemeConfig, Breadcrumbs, Button, ButtonGroup, type ButtonProps, Card, type CardProps, Cards, type CardsProps, Caution, CodeBlock, ComponentPreview, type ComponentPreviewProps, ComponentProps, type ComponentPropsProps, type ComponentRoute, CopyMarkdown, Danger, DefaultLayout, DocsLayout, ErrorBoundary, Field, type FieldProps, FileTree, type FileTreeProps, Head, Image, type ImageProps, Important, InfoBox, type LayoutProps, Link, type LinkProps, List, type ListProps, Loading, MdxPage, Navbar, NotFound, Note, OnThisPage, PageNav, Breadcrumbs$1 as PrimitiveBreadcrumbs, Button$1 as PrimitiveButton, Link$1 as PrimitiveLink, Menu as PrimitiveMenu, NavLink as PrimitiveNavLink, Navbar$1 as PrimitiveNavbar, NavigationMenu as PrimitiveNavigationMenu, OnThisPage$1 as PrimitiveOnThisPage, PageNav$1 as PrimitivePageNav, Popover as PrimitivePopover, Sidebar as PrimitiveSidebar, Skeleton as PrimitiveSkeleton, Tabs as PrimitiveTabs, Tooltip as PrimitiveTooltip, ScrollProvider, SearchDialog as SearchDialogPrimitive, Sidebar$1 as Sidebar, Tab, type TabProps, Table, type TableProps, Tabs$1 as Tabs, type TabsProps, Tip, Video, Warning, cn, createRoutes, defineConfig, useActiveAnchor, useActiveAnchors, useBreadcrumbs, useConfig, useI18n, useItems, useLocalizedTo, useLocation, useMdxComponents, useNavbar, useOnThisPage, usePageNav, useRoutes, useSearch, useSidebar, useTabs, useTheme, useVersion };