@cere/cere-design-system 0.0.45 → 0.1.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 (153) hide show
  1. package/dist/WorkflowNode-BnxXO6t_.d.mts +46 -0
  2. package/dist/WorkflowNode-BnxXO6t_.d.ts +46 -0
  3. package/dist/buttons.d.mts +114 -0
  4. package/dist/buttons.d.ts +114 -0
  5. package/dist/buttons.js +19 -0
  6. package/dist/buttons.js.map +1 -0
  7. package/dist/buttons.mjs +19 -0
  8. package/dist/buttons.mjs.map +1 -0
  9. package/dist/carousel.d.mts +51 -0
  10. package/dist/carousel.d.ts +51 -0
  11. package/dist/carousel.js +185 -0
  12. package/dist/carousel.js.map +1 -0
  13. package/dist/carousel.mjs +185 -0
  14. package/dist/carousel.mjs.map +1 -0
  15. package/dist/charts.d.mts +209 -0
  16. package/dist/charts.d.ts +209 -0
  17. package/dist/charts.js +20 -0
  18. package/dist/charts.js.map +1 -0
  19. package/dist/charts.mjs +20 -0
  20. package/dist/charts.mjs.map +1 -0
  21. package/dist/chunk-27JEWSWA.mjs +233 -0
  22. package/dist/chunk-27JEWSWA.mjs.map +1 -0
  23. package/dist/chunk-2EBCST6X.js +25 -0
  24. package/dist/chunk-2EBCST6X.js.map +1 -0
  25. package/dist/chunk-3WCMINE5.mjs +490 -0
  26. package/dist/chunk-3WCMINE5.mjs.map +1 -0
  27. package/dist/chunk-463SRKKD.js +111 -0
  28. package/dist/chunk-463SRKKD.js.map +1 -0
  29. package/dist/chunk-5ASG6G6U.mjs +40 -0
  30. package/dist/chunk-5ASG6G6U.mjs.map +1 -0
  31. package/dist/chunk-6EUAU67C.mjs +374 -0
  32. package/dist/chunk-6EUAU67C.mjs.map +1 -0
  33. package/dist/chunk-AIY6222Q.js +11 -0
  34. package/dist/chunk-AIY6222Q.js.map +1 -0
  35. package/dist/chunk-AJBM7IE6.mjs +2366 -0
  36. package/dist/chunk-AJBM7IE6.mjs.map +1 -0
  37. package/dist/chunk-ATIFLPH6.mjs +278 -0
  38. package/dist/chunk-ATIFLPH6.mjs.map +1 -0
  39. package/dist/chunk-BIZK6FUD.js +37 -0
  40. package/dist/chunk-BIZK6FUD.js.map +1 -0
  41. package/dist/chunk-CCN6M4LI.js +103 -0
  42. package/dist/chunk-CCN6M4LI.js.map +1 -0
  43. package/dist/chunk-CUCKULYC.mjs +2658 -0
  44. package/dist/chunk-CUCKULYC.mjs.map +1 -0
  45. package/dist/chunk-CWJ4OU6W.mjs +45 -0
  46. package/dist/chunk-CWJ4OU6W.mjs.map +1 -0
  47. package/dist/chunk-EOF3QNPF.js +2366 -0
  48. package/dist/chunk-EOF3QNPF.js.map +1 -0
  49. package/dist/chunk-FFZ5S7PQ.mjs +146 -0
  50. package/dist/chunk-FFZ5S7PQ.mjs.map +1 -0
  51. package/dist/chunk-FN5YL4BK.js +278 -0
  52. package/dist/chunk-FN5YL4BK.js.map +1 -0
  53. package/dist/chunk-HLH2VWXL.js +2658 -0
  54. package/dist/chunk-HLH2VWXL.js.map +1 -0
  55. package/dist/chunk-IE6GCHDI.mjs +530 -0
  56. package/dist/chunk-IE6GCHDI.mjs.map +1 -0
  57. package/dist/chunk-JBHRAAN3.js +31 -0
  58. package/dist/chunk-JBHRAAN3.js.map +1 -0
  59. package/dist/chunk-JS4IB5IU.mjs +162 -0
  60. package/dist/chunk-JS4IB5IU.mjs.map +1 -0
  61. package/dist/chunk-KF2Y7HO3.js +595 -0
  62. package/dist/chunk-KF2Y7HO3.js.map +1 -0
  63. package/dist/chunk-KPDYKK3V.js +162 -0
  64. package/dist/chunk-KPDYKK3V.js.map +1 -0
  65. package/dist/chunk-KVBMZNWT.mjs +103 -0
  66. package/dist/chunk-KVBMZNWT.mjs.map +1 -0
  67. package/dist/chunk-L2TIGA7I.js +530 -0
  68. package/dist/chunk-L2TIGA7I.js.map +1 -0
  69. package/dist/chunk-MNM6HE72.js +146 -0
  70. package/dist/chunk-MNM6HE72.js.map +1 -0
  71. package/dist/chunk-NXTVJ6PY.js +374 -0
  72. package/dist/chunk-NXTVJ6PY.js.map +1 -0
  73. package/dist/chunk-OWWDNDF4.js +40 -0
  74. package/dist/chunk-OWWDNDF4.js.map +1 -0
  75. package/dist/chunk-PHMNZK2R.mjs +18 -0
  76. package/dist/chunk-PHMNZK2R.mjs.map +1 -0
  77. package/dist/chunk-PWF2NJDB.mjs +377 -0
  78. package/dist/chunk-PWF2NJDB.mjs.map +1 -0
  79. package/dist/chunk-QBCRH7YF.mjs +37 -0
  80. package/dist/chunk-QBCRH7YF.mjs.map +1 -0
  81. package/dist/chunk-QD6RLAO2.mjs +11 -0
  82. package/dist/chunk-QD6RLAO2.mjs.map +1 -0
  83. package/dist/chunk-QY65OUAC.mjs +111 -0
  84. package/dist/chunk-QY65OUAC.mjs.map +1 -0
  85. package/dist/chunk-QYYQYZHV.js +45 -0
  86. package/dist/chunk-QYYQYZHV.js.map +1 -0
  87. package/dist/chunk-T7LPABOL.mjs +595 -0
  88. package/dist/chunk-T7LPABOL.mjs.map +1 -0
  89. package/dist/chunk-THQKYTQE.js +490 -0
  90. package/dist/chunk-THQKYTQE.js.map +1 -0
  91. package/dist/chunk-U2QHFISG.js +18 -0
  92. package/dist/chunk-U2QHFISG.js.map +1 -0
  93. package/dist/chunk-UPGFBPFX.mjs +25 -0
  94. package/dist/chunk-UPGFBPFX.mjs.map +1 -0
  95. package/dist/chunk-X7E6GMFL.js +233 -0
  96. package/dist/chunk-X7E6GMFL.js.map +1 -0
  97. package/dist/chunk-XF66WQZE.mjs +1535 -0
  98. package/dist/chunk-XF66WQZE.mjs.map +1 -0
  99. package/dist/chunk-YQOZPLTY.js +1535 -0
  100. package/dist/chunk-YQOZPLTY.js.map +1 -0
  101. package/dist/chunk-ZGCN5WCG.js +377 -0
  102. package/dist/chunk-ZGCN5WCG.js.map +1 -0
  103. package/dist/chunk-ZP26PGMS.mjs +31 -0
  104. package/dist/chunk-ZP26PGMS.mjs.map +1 -0
  105. package/dist/feedback.d.mts +356 -0
  106. package/dist/feedback.d.ts +356 -0
  107. package/dist/feedback.js +43 -0
  108. package/dist/feedback.js.map +1 -0
  109. package/dist/feedback.mjs +43 -0
  110. package/dist/feedback.mjs.map +1 -0
  111. package/dist/icons.d.mts +22 -0
  112. package/dist/icons.d.ts +22 -0
  113. package/dist/icons.js +23 -0
  114. package/dist/icons.js.map +1 -0
  115. package/dist/icons.mjs +23 -0
  116. package/dist/icons.mjs.map +1 -0
  117. package/dist/index.d.mts +165 -3080
  118. package/dist/index.d.ts +165 -3080
  119. package/dist/index.js +320 -10082
  120. package/dist/index.js.map +1 -1
  121. package/dist/index.mjs +262 -9983
  122. package/dist/index.mjs.map +1 -1
  123. package/dist/inputs.d.mts +109 -0
  124. package/dist/inputs.d.ts +109 -0
  125. package/dist/inputs.js +43 -0
  126. package/dist/inputs.js.map +1 -0
  127. package/dist/inputs.mjs +43 -0
  128. package/dist/inputs.mjs.map +1 -0
  129. package/dist/layout.d.mts +927 -0
  130. package/dist/layout.d.ts +927 -0
  131. package/dist/layout.js +122 -0
  132. package/dist/layout.js.map +1 -0
  133. package/dist/layout.mjs +122 -0
  134. package/dist/layout.mjs.map +1 -0
  135. package/dist/navigation.d.mts +716 -0
  136. package/dist/navigation.d.ts +716 -0
  137. package/dist/navigation.js +58 -0
  138. package/dist/navigation.js.map +1 -0
  139. package/dist/navigation.mjs +58 -0
  140. package/dist/navigation.mjs.map +1 -0
  141. package/dist/third-party.d.mts +637 -0
  142. package/dist/third-party.d.ts +637 -0
  143. package/dist/third-party.js +45 -0
  144. package/dist/third-party.js.map +1 -0
  145. package/dist/third-party.mjs +45 -0
  146. package/dist/third-party.mjs.map +1 -0
  147. package/dist/utilities.d.mts +39 -0
  148. package/dist/utilities.d.ts +39 -0
  149. package/dist/utilities.js +19 -0
  150. package/dist/utilities.js.map +1 -0
  151. package/dist/utilities.mjs +19 -0
  152. package/dist/utilities.mjs.map +1 -0
  153. package/package.json +55 -1
@@ -0,0 +1,716 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { PopoverProps, StepProps as StepProps$1, StepButtonProps as StepButtonProps$1, StepContentProps as StepContentProps$1, StepLabelProps as StepLabelProps$1, StepperProps as StepperProps$1, MenuProps as MenuProps$1 } from '@mui/material';
3
+ import * as React from 'react';
4
+ import React__default, { ReactNode, Ref } from 'react';
5
+ import { ListItemButtonProps } from '@mui/material/ListItemButton';
6
+ import { TabProps as TabProps$1 } from '@mui/material/Tab';
7
+ import { PaginationProps as PaginationProps$1 } from '@mui/material/Pagination';
8
+
9
+ type DropdownAnchorProps = {
10
+ open?: boolean;
11
+ label?: ReactNode;
12
+ leftElement?: ReactNode;
13
+ onOpen?: () => void;
14
+ variant?: 'header' | 'button';
15
+ };
16
+ declare const DropdownAnchor: React.ForwardRefExoticComponent<DropdownAnchorProps & React.RefAttributes<HTMLButtonElement>>;
17
+
18
+ type RenderAnchorOptions = {
19
+ ref: Ref<any>;
20
+ open: boolean;
21
+ onOpen: () => void;
22
+ };
23
+ type DropdownProps = Pick<PopoverProps, 'open' | 'children'> & Omit<DropdownAnchorProps, 'open'> & {
24
+ direction?: 'right' | 'left';
25
+ dense?: boolean;
26
+ disableGutters?: boolean;
27
+ disablePaddings?: boolean;
28
+ onToggle?: (open: boolean) => void;
29
+ renderAnchor?: (options: RenderAnchorOptions) => ReactNode;
30
+ variant: 'header' | 'button';
31
+ };
32
+ declare const Dropdown: ({ open, label, leftElement, direction, children, onToggle, dense, disableGutters, disablePaddings, variant, renderAnchor, }: DropdownProps) => react_jsx_runtime.JSX.Element;
33
+
34
+ interface SidebarItemProps {
35
+ label: string;
36
+ icon?: React__default.ReactNode;
37
+ selected?: boolean;
38
+ onClick?: () => void;
39
+ size?: 'small' | 'medium' | 'large';
40
+ endIcon?: React__default.ReactNode;
41
+ children?: React__default.ReactNode;
42
+ }
43
+ declare const SidebarItem: React__default.FC<SidebarItemProps>;
44
+
45
+ interface SidebarProps {
46
+ open?: boolean;
47
+ width?: number;
48
+ items: SidebarItemProps[];
49
+ onClose?: () => void;
50
+ variant?: 'permanent' | 'persistent' | 'temporary';
51
+ }
52
+ declare const Sidebar: React__default.FC<SidebarProps>;
53
+
54
+ interface Service {
55
+ id: string;
56
+ name: string;
57
+ description?: string;
58
+ type?: string;
59
+ lastAccessed?: string;
60
+ memberCount?: number;
61
+ favorited?: boolean;
62
+ isPersonal?: boolean;
63
+ avatar?: string;
64
+ archived?: boolean;
65
+ }
66
+ interface ServiceSelectorButtonProps {
67
+ /**
68
+ * List of services to display
69
+ */
70
+ services: Service[];
71
+ /**
72
+ * Currently selected service ID
73
+ */
74
+ selectedServiceId: string | null;
75
+ /**
76
+ * Loading state
77
+ */
78
+ loading?: boolean;
79
+ /**
80
+ * Compact mode for mobile or mini-sidebar
81
+ */
82
+ compact?: boolean;
83
+ /**
84
+ * Callback when service is selected
85
+ */
86
+ onSelectService?: (serviceId: string) => void;
87
+ /**
88
+ * Callback when service name is clicked (for navigation)
89
+ */
90
+ onServiceClick?: (serviceId: string) => void;
91
+ /**
92
+ * Callback when "Create Service" is clicked
93
+ */
94
+ onCreateService?: () => void;
95
+ /**
96
+ * Callback after service is created
97
+ */
98
+ onServiceCreated?: () => void;
99
+ /**
100
+ * Whether user is a manager for the selected service
101
+ */
102
+ isManager?: boolean;
103
+ /**
104
+ * Custom styles
105
+ */
106
+ sx?: never;
107
+ /**
108
+ * Panel width
109
+ * @default 350
110
+ */
111
+ panelWidth?: number;
112
+ /**
113
+ * Callback when Settings button is clicked
114
+ */
115
+ onOpenSettings?: (serviceId: string) => void;
116
+ /**
117
+ * Callback when Add Member button is clicked
118
+ */
119
+ onOpenAddMember?: (serviceId: string) => void;
120
+ }
121
+ declare const ServiceSelectorButton: React__default.FC<ServiceSelectorButtonProps>;
122
+
123
+ interface Workspace {
124
+ id: string;
125
+ name: string;
126
+ description?: string;
127
+ }
128
+ interface WorkspaceSelectorButtonProps {
129
+ /**
130
+ * List of workspaces to display
131
+ */
132
+ workspaces: Workspace[];
133
+ /**
134
+ * Currently selected workspace ID
135
+ */
136
+ selectedWorkspaceId: string | null;
137
+ /**
138
+ * Loading state
139
+ */
140
+ loading?: boolean;
141
+ /**
142
+ * Callback when workspace is selected
143
+ */
144
+ onSelectWorkspace?: (workspaceId: string) => void;
145
+ /**
146
+ * Callback when workspace name is clicked (for navigation)
147
+ */
148
+ onWorkspaceClick?: (workspaceId: string) => void;
149
+ /**
150
+ * Callback when "Create Workspace" is clicked
151
+ */
152
+ onCreateWorkspace?: () => void;
153
+ /**
154
+ * Custom styles
155
+ */
156
+ sx?: any;
157
+ /**
158
+ * Panel width
159
+ * @default 350
160
+ */
161
+ panelWidth?: number;
162
+ }
163
+ declare const WorkspaceSelectorButton: React__default.FC<WorkspaceSelectorButtonProps>;
164
+
165
+ type StepperProps = StepperProps$1;
166
+ /**
167
+ * Stepper component - displays progress through a sequence of steps
168
+ *
169
+ * @example
170
+ * ```tsx
171
+ * <Stepper activeStep={activeStep}>
172
+ * <Step>
173
+ * <StepLabel>Step 1</StepLabel>
174
+ * </Step>
175
+ * <Step>
176
+ * <StepLabel>Step 2</StepLabel>
177
+ * </Step>
178
+ * </Stepper>
179
+ * ```
180
+ */
181
+ declare const Stepper: React__default.FC<StepperProps>;
182
+ type StepProps = StepProps$1;
183
+ /**
184
+ * Step component - represents a single step in a Stepper
185
+ */
186
+ declare const Step: React__default.FC<StepProps>;
187
+ type StepLabelProps = StepLabelProps$1;
188
+ /**
189
+ * StepLabel component - label for a Step
190
+ */
191
+ declare const StepLabel: React__default.FC<StepLabelProps>;
192
+ type StepContentProps = StepContentProps$1;
193
+ /**
194
+ * StepContent component - optional content that appears below a StepLabel
195
+ */
196
+ declare const StepContent: React__default.FC<StepContentProps>;
197
+ type StepButtonProps = StepButtonProps$1;
198
+ /**
199
+ * StepButton component - makes a Step clickable
200
+ */
201
+ declare const StepButton: React__default.FC<StepButtonProps>;
202
+
203
+ interface NumberedStepperStep {
204
+ key: string;
205
+ label: string;
206
+ }
207
+ interface NumberedStepperProps {
208
+ steps: NumberedStepperStep[];
209
+ /** Index of the active step. -1 = none active. */
210
+ current: number;
211
+ className?: string;
212
+ }
213
+ /**
214
+ * Vertical numbered stepper used by Try-this-out and similar guided flows.
215
+ * Brand-styled: active rows take the violet palette; completed rows show ✓.
216
+ */
217
+ declare const NumberedStepper: React__default.ForwardRefExoticComponent<NumberedStepperProps & React__default.RefAttributes<HTMLOListElement>>;
218
+
219
+ /**
220
+ * Type definitions for SideNav components
221
+ * Side Navigation Bar Component - V1 (Expanded State) & V2 (Collapsed State)
222
+ */
223
+
224
+ /**
225
+ * Navigation Item Properties
226
+ * Individual navigation menu item with icon, label, and interactive states
227
+ */
228
+ interface NavigationItemProps extends Omit<ListItemButtonProps, 'selected' | 'onClick'> {
229
+ /**
230
+ * Unique identifier for the navigation item
231
+ * Used for selection tracking and key prop
232
+ */
233
+ id: string;
234
+ /**
235
+ * Display text for the navigation item
236
+ */
237
+ label: string;
238
+ /**
239
+ * Icon element to display (typically a Material UI icon component)
240
+ */
241
+ icon?: ReactNode;
242
+ /**
243
+ * Position of the icon relative to the label
244
+ * @default 'left'
245
+ */
246
+ iconPosition?: 'left' | 'right';
247
+ /**
248
+ * Whether this item is currently selected/active
249
+ * @default false
250
+ */
251
+ selected?: boolean;
252
+ /**
253
+ * Whether this item is disabled
254
+ * @default false
255
+ */
256
+ disabled?: boolean;
257
+ /**
258
+ * Click handler for the navigation item
259
+ * @param id - The id of the clicked item
260
+ */
261
+ onClick?: (id: string) => void;
262
+ /**
263
+ * Additional content to display on the right side
264
+ * Can be a button, dropdown, badge, etc.
265
+ */
266
+ endContent?: ReactNode;
267
+ /**
268
+ * Optional URL for link-based navigation
269
+ * If provided, component renders as a link
270
+ */
271
+ href?: string;
272
+ /**
273
+ * Accessibility label for screen readers
274
+ * @default Uses 'label' prop value
275
+ */
276
+ ariaLabel?: string;
277
+ /**
278
+ * Size variant for the navigation item
279
+ * @default 'medium'
280
+ */
281
+ size?: 'small' | 'medium' | 'large';
282
+ /**
283
+ * Whether sidebar is collapsed (icon-only mode) - V2
284
+ * When true:
285
+ * - Label is hidden
286
+ * - Tooltip shows on hover/focus
287
+ * - EndContent is hidden
288
+ * - Icon is centered
289
+ * @default false
290
+ */
291
+ collapsed?: boolean;
292
+ /**
293
+ * Whether to show tooltip in collapsed mode - V2
294
+ * @default true
295
+ */
296
+ showTooltip?: boolean;
297
+ /**
298
+ * Tooltip placement - V2
299
+ * @default 'right'
300
+ */
301
+ tooltipPlacement?: 'left' | 'right' | 'top' | 'bottom';
302
+ }
303
+ /**
304
+ * Navigation List Properties
305
+ * Container for multiple navigation items with scroll support
306
+ */
307
+ interface NavigationListProps {
308
+ /**
309
+ * Array of navigation items to display
310
+ */
311
+ items: NavigationItemProps[];
312
+ /**
313
+ * ID of currently selected item (controlled mode)
314
+ */
315
+ selectedId?: string;
316
+ /**
317
+ * Callback when selection changes
318
+ * @param id - The id of the newly selected item
319
+ */
320
+ onSelectionChange?: (id: string) => void;
321
+ /**
322
+ * Maximum height before scrolling kicks in
323
+ * @default 'auto'
324
+ */
325
+ maxHeight?: string | number;
326
+ /**
327
+ * Accessibility label for the list
328
+ * @default 'Navigation menu'
329
+ */
330
+ ariaLabel?: string;
331
+ /**
332
+ * Whether sidebar is collapsed - V2
333
+ * Passed down to all NavigationItem children
334
+ * @default false
335
+ */
336
+ collapsed?: boolean;
337
+ /**
338
+ * Whether to show tooltips on items when collapsed - V2
339
+ * Passed down to each NavigationItem's showTooltip prop
340
+ * @default true
341
+ */
342
+ showTooltips?: boolean;
343
+ }
344
+ /**
345
+ * User Information
346
+ * Used in AccountSection component
347
+ */
348
+ interface UserInfo {
349
+ /**
350
+ * User's display name
351
+ */
352
+ name: string;
353
+ /**
354
+ * User's email address (optional)
355
+ */
356
+ email?: string;
357
+ /**
358
+ * User's initials for avatar fallback
359
+ * If not provided, will be derived from name
360
+ */
361
+ initials?: string;
362
+ /**
363
+ * URL for user avatar image
364
+ */
365
+ avatarUrl?: string;
366
+ }
367
+ /**
368
+ * Connection Status Properties
369
+ * Displays connection status with pill-style indicator
370
+ */
371
+ interface ConnectionStatusProps {
372
+ /**
373
+ * Status text to display (e.g., "Connected to Dragon 1")
374
+ */
375
+ status: string;
376
+ /**
377
+ * Visual variant of the status
378
+ * @default 'info'
379
+ */
380
+ variant?: 'success' | 'warning' | 'error' | 'info';
381
+ /**
382
+ * Optional custom icon to replace the default power icon
383
+ */
384
+ icon?: ReactNode;
385
+ /**
386
+ * Optional click handler (makes status interactive)
387
+ */
388
+ onClick?: () => void;
389
+ /**
390
+ * Compact mode for collapsed sidebar - V2
391
+ * When true:
392
+ * - Shows pill with icon + compactText (or falls back to icon-only)
393
+ * - Tooltip shows full status text on hover/focus
394
+ * @default false
395
+ */
396
+ compact?: boolean;
397
+ /**
398
+ * Short label to display in compact mode (e.g. "D1") - V2
399
+ * If not provided, compact mode shows icon-only
400
+ */
401
+ compactText?: string;
402
+ }
403
+ /**
404
+ * Account Section Properties
405
+ * Displays user account information with avatar, name, and logout
406
+ */
407
+ interface AccountSectionProps {
408
+ /**
409
+ * User information object
410
+ */
411
+ user: UserInfo;
412
+ /**
413
+ * Logout button click handler
414
+ */
415
+ onLogout: () => void;
416
+ /**
417
+ * Whether to show email below name
418
+ * @default false
419
+ */
420
+ showEmail?: boolean;
421
+ /**
422
+ * Layout variant
423
+ * @default 'horizontal'
424
+ */
425
+ layout?: 'horizontal' | 'vertical';
426
+ /**
427
+ * Compact mode (avatar-only for collapsed sidebar) - V2
428
+ * When true:
429
+ * - Name and email are hidden
430
+ * - Only avatar is shown (40px)
431
+ * - Tooltip shows name + email on hover/focus
432
+ * - Logout button becomes icon-only
433
+ * @default false
434
+ */
435
+ compact?: boolean;
436
+ }
437
+ /**
438
+ * SideNav Properties
439
+ * Main container component that composes all navigation sections
440
+ */
441
+ interface SideNavProps {
442
+ /**
443
+ * Width of the sidebar when expanded (pixels) - V1
444
+ * @default 280
445
+ */
446
+ width?: number;
447
+ /**
448
+ * Width of the sidebar when collapsed (pixels) - V2
449
+ * @default 68
450
+ */
451
+ collapsedWidth?: number;
452
+ /**
453
+ * Whether the sidebar is collapsed (controlled mode) - V2
454
+ * When provided: Component is controlled (parent manages state)
455
+ * When undefined: Component is uncontrolled (internal state)
456
+ * @default undefined
457
+ */
458
+ collapsed?: boolean;
459
+ /**
460
+ * Default collapsed state (uncontrolled mode only) - V2
461
+ * Ignored if `collapsed` prop is provided
462
+ * @default false
463
+ */
464
+ defaultCollapsed?: boolean;
465
+ /**
466
+ * Callback fired when collapsed state changes - V2
467
+ * Called after toggle button click or programmatic state change
468
+ * @param collapsed - New collapsed state value
469
+ */
470
+ onCollapseChange?: (collapsed: boolean) => void;
471
+ /**
472
+ * Duration of the collapse/expand width transition in ms - V2
473
+ * @default 300
474
+ */
475
+ transitionDuration?: number;
476
+ /**
477
+ * Whether to show tooltips on child items when collapsed - V2
478
+ * Passed down via context to NavigationList and NavigationItem
479
+ * @default true
480
+ */
481
+ showTooltips?: boolean;
482
+ /**
483
+ * Position of the sidebar
484
+ * @default 'left'
485
+ */
486
+ position?: 'left' | 'right';
487
+ /**
488
+ * Whether to show border on the edge
489
+ * @default true
490
+ */
491
+ showBorder?: boolean;
492
+ /**
493
+ * Custom background color
494
+ * @default theme.palette.background.paper
495
+ */
496
+ backgroundColor?: string;
497
+ /**
498
+ * Child components (NavigationList, ConnectionStatus, AccountSection)
499
+ */
500
+ children: ReactNode;
501
+ /**
502
+ * Additional CSS class name
503
+ */
504
+ className?: string;
505
+ /**
506
+ * Accessibility label for the navigation
507
+ * @default 'Main navigation'
508
+ */
509
+ ariaLabel?: string;
510
+ }
511
+ /**
512
+ * SideNav Header Properties
513
+ * Displays app branding (logo + title) and an optional collapse toggle button
514
+ */
515
+ interface SideNavHeaderProps {
516
+ /**
517
+ * App logo or icon element (e.g. an <img>, SVG, or MUI Icon)
518
+ */
519
+ logo?: ReactNode;
520
+ /**
521
+ * App or brand title text displayed next to the logo
522
+ */
523
+ title: string;
524
+ /**
525
+ * Whether to show the collapse toggle button
526
+ * @default true
527
+ */
528
+ showCollapseButton?: boolean;
529
+ /**
530
+ * Callback fired when the collapse button is clicked.
531
+ * Wire this up to toggle sidebar expanded/collapsed state (V2).
532
+ */
533
+ onCollapse?: () => void;
534
+ /**
535
+ * Callback fired when the logo/title branding area is clicked.
536
+ * Use this for "go to home" navigation. Only the logo + title region
537
+ * is clickable — the collapse button and surrounding padding are excluded.
538
+ */
539
+ onLogoClick?: () => void;
540
+ /**
541
+ * Accessibility label for the header region
542
+ * @default '{title} navigation header'
543
+ */
544
+ ariaLabel?: string;
545
+ /**
546
+ * Whether sidebar is collapsed - V2
547
+ * When true:
548
+ * - Title text is hidden
549
+ * - Logo remains visible (compact)
550
+ * - Toggle button shows expand icon (→)
551
+ * @default false
552
+ */
553
+ collapsed?: boolean;
554
+ }
555
+ /**
556
+ * Compound component slots for SideNav
557
+ */
558
+ interface SideNavHeaderSlotProps {
559
+ children: ReactNode;
560
+ className?: string;
561
+ }
562
+ interface SideNavNavigationProps {
563
+ children: ReactNode;
564
+ className?: string;
565
+ }
566
+ interface SideNavFooterProps {
567
+ children: ReactNode;
568
+ className?: string;
569
+ }
570
+
571
+ /**
572
+ * SideNav Component
573
+ * Main container for side navigation with compound components
574
+ * V2: Added collapsed state support with animated transitions
575
+ */
576
+
577
+ /**
578
+ * SideNav.Header compound component
579
+ * Passes collapsed state and toggle handler to children
580
+ */
581
+ declare const Header: React__default.NamedExoticComponent<SideNavHeaderSlotProps>;
582
+ /**
583
+ * SideNav.Navigation compound component
584
+ * Passes collapsed state to children
585
+ */
586
+ declare const Navigation: React__default.NamedExoticComponent<SideNavNavigationProps>;
587
+ /**
588
+ * SideNav.Footer compound component
589
+ * Passes collapsed state to children
590
+ */
591
+ declare const Footer: React__default.NamedExoticComponent<SideNavFooterProps>;
592
+ /**
593
+ * Main SideNav component with compound components
594
+ * V2: Supports controlled/uncontrolled collapsed state
595
+ */
596
+ interface SideNavComponent extends React__default.FC<SideNavProps> {
597
+ Header: typeof Header;
598
+ Navigation: typeof Navigation;
599
+ Footer: typeof Footer;
600
+ }
601
+ declare const SideNav: SideNavComponent;
602
+
603
+ /**
604
+ * SideNavHeader Component
605
+ * Displays app branding (logo + title) and an optional collapse toggle button
606
+ * V2: Supports collapsed state with compact logo-only view
607
+ */
608
+
609
+ /**
610
+ * SideNavHeader Component
611
+ *
612
+ * Renders the app branding area at the top of the side navigation.
613
+ * Includes an optional logo, a title, and an optional collapse toggle button.
614
+ * V2: In collapsed state, shows logo stacked vertically above toggle button.
615
+ *
616
+ * If `onLogoClick` is provided, only the logo+title area is clickable
617
+ * (e.g. to navigate back to the home page). The rest of the header
618
+ * (collapse button, surrounding padding) does NOT trigger that callback.
619
+ */
620
+ declare const SideNavHeader: React__default.NamedExoticComponent<SideNavHeaderProps>;
621
+
622
+ /**
623
+ * NavigationList Component
624
+ * Container for multiple navigation items with scroll support
625
+ * V2: Passes collapsed state to navigation items
626
+ */
627
+
628
+ /**
629
+ * NavigationList Component
630
+ */
631
+ declare const NavigationList: React__default.NamedExoticComponent<NavigationListProps>;
632
+
633
+ /**
634
+ * NavigationItem Component
635
+ * Individual navigation menu item with icon, label, and interactive states
636
+ * V2: Added collapsed state support with tooltips
637
+ */
638
+
639
+ /**
640
+ * NavigationItem Component
641
+ * V2: Supports collapsed state with tooltip
642
+ */
643
+ declare const NavigationItem: React__default.MemoExoticComponent<React__default.ForwardRefExoticComponent<Omit<NavigationItemProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>>;
644
+
645
+ /**
646
+ * ConnectionStatus Component
647
+ * Displays connection status with pill-style indicator
648
+ * V2: Supports compact mode for collapsed sidebar
649
+ */
650
+
651
+ /**
652
+ * ConnectionStatus Component
653
+ * V2: Supports compact mode
654
+ */
655
+ declare const ConnectionStatus: React__default.NamedExoticComponent<ConnectionStatusProps>;
656
+
657
+ /**
658
+ * AccountSection Component
659
+ * Displays user account information with avatar, name, and logout
660
+ * V2: Supports compact mode for collapsed sidebar
661
+ */
662
+
663
+ /**
664
+ * AccountSection Component
665
+ * V2: Supports compact mode
666
+ */
667
+ declare const AccountSection: React__default.NamedExoticComponent<AccountSectionProps>;
668
+
669
+ interface TabProps extends Omit<TabProps$1, 'icon'> {
670
+ badge?: number | string;
671
+ badgeVariant?: 'default' | 'primary' | 'success' | 'error';
672
+ }
673
+ declare const Tab: React__default.FC<TabProps>;
674
+
675
+ interface MenuProps extends Omit<MenuProps$1, 'open'> {
676
+ anchorEl?: HTMLElement | null;
677
+ onClose: () => void;
678
+ }
679
+ declare const Menu: React__default.ForwardRefExoticComponent<Omit<MenuProps, "ref"> & React__default.RefAttributes<HTMLDivElement>>;
680
+ interface MenuItemProps {
681
+ icon?: React__default.ReactNode;
682
+ label: string;
683
+ onClick?: () => void;
684
+ disabled?: boolean;
685
+ divider?: boolean;
686
+ }
687
+ declare const MenuItem: React__default.ForwardRefExoticComponent<MenuItemProps & React__default.RefAttributes<HTMLLIElement>>;
688
+
689
+ interface PaginationProps extends Omit<PaginationProps$1, 'color'> {
690
+ color?: 'primary' | 'secondary' | 'standard';
691
+ }
692
+ declare const Pagination: React__default.FC<PaginationProps>;
693
+
694
+ interface SelectorOption {
695
+ id: string;
696
+ name: string;
697
+ description?: string;
698
+ avatar?: string;
699
+ icon?: React__default.ReactNode;
700
+ disabled?: boolean;
701
+ }
702
+ interface SelectorProps {
703
+ options: SelectorOption[];
704
+ selectedId: string | null;
705
+ onSelect: (id: string) => void;
706
+ onCreate?: () => void;
707
+ loading?: boolean;
708
+ placeholder?: string;
709
+ emptyMessage?: string;
710
+ compact?: boolean;
711
+ renderSelected?: (option: SelectorOption) => React__default.ReactNode;
712
+ width?: number;
713
+ }
714
+ declare const Selector: React__default.FC<SelectorProps>;
715
+
716
+ export { AccountSection, type AccountSectionProps, ConnectionStatus, type ConnectionStatusProps, Dropdown, DropdownAnchor, type DropdownAnchorProps, type DropdownProps, Menu, MenuItem, type MenuItemProps, type MenuProps, NavigationItem, type NavigationItemProps, NavigationList, type NavigationListProps, NumberedStepper, type NumberedStepperProps, type NumberedStepperStep, Pagination, type PaginationProps, Selector, type SelectorOption, type SelectorProps, type Service, ServiceSelectorButton, type ServiceSelectorButtonProps, SideNav, SideNavHeader, type SideNavHeaderProps, type SideNavProps, Sidebar, SidebarItem, type SidebarItemProps, type SidebarProps, Step, StepButton, type StepButtonProps, StepContent, type StepContentProps, StepLabel, type StepLabelProps, type StepProps, Stepper, type StepperProps, Tab, type TabProps, type UserInfo, type Workspace, WorkspaceSelectorButton, type WorkspaceSelectorButtonProps };