@jerco/ui 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,416 @@
1
+ import * as react from 'react';
2
+ import { ReactNode, HTMLAttributes, ButtonHTMLAttributes, ComponentPropsWithoutRef, InputHTMLAttributes, LabelHTMLAttributes, TextareaHTMLAttributes, AnchorHTMLAttributes, ComponentProps } from 'react';
3
+ import { ThemeName, Density } from '@jerco/tokens';
4
+ import { ColumnDef, PaginationState, SortingState, Row } from '@tanstack/react-table';
5
+ import * as class_variance_authority_types from 'class-variance-authority/types';
6
+ import { VariantProps } from 'class-variance-authority';
7
+ import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
8
+ import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
9
+ import { LucideIcon } from '@jerco/icons';
10
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
11
+ import * as DropdownPrimitive from '@radix-ui/react-dropdown-menu';
12
+ import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
13
+ import * as SelectPrimitive from '@radix-ui/react-select';
14
+ import * as SwitchPrimitive from '@radix-ui/react-switch';
15
+ import * as TabsPrimitive from '@radix-ui/react-tabs';
16
+ import * as ToastPrimitive from '@radix-ui/react-toast';
17
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
18
+
19
+ interface DesignSystemContextValue {
20
+ theme: ThemeName;
21
+ density: Density;
22
+ }
23
+ interface DesignSystemProviderProps {
24
+ children: ReactNode;
25
+ theme?: ThemeName;
26
+ density?: Density;
27
+ target?: HTMLElement | null;
28
+ }
29
+ declare function DesignSystemProvider({ children, theme, density, target }: DesignSystemProviderProps): react.JSX.Element;
30
+ declare function useDesignSystem(): DesignSystemContextValue;
31
+
32
+ type OperationalStatus = "online" | "offline" | "healthy" | "degraded" | "warning" | "error" | "unknown";
33
+
34
+ type DataTableColumn<TData, TValue = unknown> = ColumnDef<TData, TValue>;
35
+ interface DataTableFilter<TData> {
36
+ id: string;
37
+ label: string;
38
+ options: Array<{
39
+ label: string;
40
+ value: string;
41
+ }>;
42
+ getValue: (row: TData) => string;
43
+ }
44
+ interface DataTableRequestState {
45
+ pagination: PaginationState;
46
+ sorting: SortingState;
47
+ query: string;
48
+ filters: Record<string, string>;
49
+ }
50
+ interface DataTableServerConfig {
51
+ rowCount: number;
52
+ pageCount: number;
53
+ state: DataTableRequestState;
54
+ onStateChange: (state: DataTableRequestState) => void;
55
+ }
56
+ interface DataTableVirtualizationOptions {
57
+ height?: number;
58
+ estimateRowHeight?: number;
59
+ overscan?: number;
60
+ }
61
+ interface DataTableProps<TData> {
62
+ data: TData[];
63
+ columns: Array<DataTableColumn<TData>>;
64
+ getRowId?: (row: TData, index: number) => string;
65
+ getSearchText?: (row: TData) => string;
66
+ searchPlaceholder?: string;
67
+ filters?: DataTableFilter<TData>[];
68
+ pageSize?: number;
69
+ paginate?: boolean;
70
+ server?: DataTableServerConfig;
71
+ virtualization?: DataTableVirtualizationOptions;
72
+ loading?: boolean;
73
+ emptyState?: ReactNode;
74
+ bulkActions?: (selectedRows: Array<Row<TData>>) => ReactNode;
75
+ className?: string;
76
+ }
77
+ declare function DataTable<TData>({ data, columns, getRowId, getSearchText, searchPlaceholder, filters, pageSize, paginate, server, virtualization, loading, emptyState, bulkActions, className }: DataTableProps<TData>): react.JSX.Element;
78
+
79
+ type DataTableHistoryMode = "push" | "replace";
80
+ interface DataTableUrlCodecOptions {
81
+ prefix?: string;
82
+ }
83
+ interface DataTableUrlPort {
84
+ getSearch: () => string;
85
+ writeSearch: (search: string, mode: DataTableHistoryMode) => void;
86
+ subscribe: (listener: () => void) => () => void;
87
+ }
88
+ interface DataTableUrlStateAdapter {
89
+ read: (fallback: DataTableRequestState) => DataTableRequestState;
90
+ write: (state: DataTableRequestState, mode?: DataTableHistoryMode) => void;
91
+ subscribe: (listener: (state: DataTableRequestState) => void, fallback: DataTableRequestState) => () => void;
92
+ }
93
+ interface DataTableRequestContext {
94
+ requestId: number;
95
+ signal: AbortSignal;
96
+ }
97
+ type DataTableRequestResult<T> = {
98
+ status: "applied";
99
+ requestId: number;
100
+ value: T;
101
+ } | {
102
+ status: "aborted" | "stale";
103
+ requestId: number;
104
+ };
105
+ interface DataTableRequestManager<T> {
106
+ run: (state: DataTableRequestState) => Promise<DataTableRequestResult<T>>;
107
+ cancel: () => void;
108
+ getActiveRequestId: () => number | undefined;
109
+ }
110
+ declare function parseDataTableUrlState(search: string, fallback: DataTableRequestState, options?: DataTableUrlCodecOptions): DataTableRequestState;
111
+ declare function serializeDataTableUrlState(state: DataTableRequestState, currentSearch?: string, options?: DataTableUrlCodecOptions): string;
112
+ declare function createDataTableUrlStateAdapter(port: DataTableUrlPort, options?: DataTableUrlCodecOptions): DataTableUrlStateAdapter;
113
+ declare function createBrowserDataTableUrlStateAdapter(options?: DataTableUrlCodecOptions): DataTableUrlStateAdapter;
114
+ declare function createDataTableRequestManager<T>(loader: (state: DataTableRequestState, context: DataTableRequestContext) => Promise<T>): DataTableRequestManager<T>;
115
+
116
+ interface BooleanStateAdapter {
117
+ read: () => boolean | undefined;
118
+ write: (value: boolean) => void;
119
+ subscribe?: (listener: (value: boolean | undefined) => void) => () => void;
120
+ }
121
+ interface KeyValueStorage {
122
+ getItem: (key: string) => string | null;
123
+ setItem: (key: string, value: string) => void;
124
+ }
125
+ interface StorageEventSource {
126
+ addEventListener: (type: "storage", listener: (event: StorageEvent) => void) => void;
127
+ removeEventListener: (type: "storage", listener: (event: StorageEvent) => void) => void;
128
+ }
129
+ interface BrowserBooleanStateAdapterOptions {
130
+ storage?: KeyValueStorage;
131
+ eventSource?: StorageEventSource;
132
+ }
133
+ declare function createBrowserBooleanStateAdapter(key: string, options?: BrowserBooleanStateAdapterOptions): BooleanStateAdapter;
134
+ declare function matchNavigationPath(currentPath: string, targetPath: string, end?: boolean): boolean;
135
+
136
+ declare const badgeVariants: (props?: ({
137
+ variant?: "warning" | "neutral" | "success" | "danger" | "info" | null | undefined;
138
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
139
+ interface BadgeProps extends HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
140
+ }
141
+ declare function Badge({ className, variant, ...props }: BadgeProps): react.JSX.Element;
142
+
143
+ declare const AlertDialog: react.FC<AlertDialogPrimitive.AlertDialogProps>;
144
+ declare const AlertDialogTrigger: react.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
145
+ declare const AlertDialogCancel: react.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogCancelProps & react.RefAttributes<HTMLButtonElement>>;
146
+ declare const AlertDialogAction: react.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogActionProps & react.RefAttributes<HTMLButtonElement>>;
147
+ declare const AlertDialogContent: react.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
148
+ declare const AlertDialogTitle: react.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogTitleProps & react.RefAttributes<HTMLHeadingElement>, "ref"> & react.RefAttributes<HTMLHeadingElement>>;
149
+ declare const AlertDialogDescription: react.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>, "ref"> & react.RefAttributes<HTMLParagraphElement>>;
150
+ declare function AlertDialogHeader({ children }: {
151
+ children: ReactNode;
152
+ }): react.JSX.Element;
153
+ declare function AlertDialogFooter({ children }: {
154
+ children: ReactNode;
155
+ }): react.JSX.Element;
156
+
157
+ interface BrandLogoProps {
158
+ asset?: ReactNode;
159
+ name?: string;
160
+ className?: string;
161
+ }
162
+ declare function BrandLogo({ asset, name, className }: BrandLogoProps): react.JSX.Element;
163
+
164
+ declare const buttonVariants: (props?: ({
165
+ variant?: "primary" | "secondary" | "outline" | "ghost" | "destructive" | null | undefined;
166
+ size?: "sm" | "md" | "lg" | "icon" | null | undefined;
167
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
168
+ interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
169
+ asChild?: boolean;
170
+ loading?: boolean;
171
+ }
172
+ declare const Button: react.ForwardRefExoticComponent<ButtonProps & react.RefAttributes<HTMLButtonElement>>;
173
+ interface IconButtonProps extends Omit<ButtonProps, "size"> {
174
+ label: string;
175
+ size?: "sm" | "md" | "lg";
176
+ }
177
+ declare const IconButton: react.ForwardRefExoticComponent<IconButtonProps & react.RefAttributes<HTMLButtonElement>>;
178
+
179
+ declare function Card({ className, ...props }: HTMLAttributes<HTMLDivElement>): react.JSX.Element;
180
+ declare function CardHeader({ className, ...props }: HTMLAttributes<HTMLDivElement>): react.JSX.Element;
181
+ declare function CardTitle({ className, ...props }: HTMLAttributes<HTMLHeadingElement>): react.JSX.Element;
182
+ declare function CardDescription({ className, ...props }: HTMLAttributes<HTMLParagraphElement>): react.JSX.Element;
183
+ declare function CardContent({ className, ...props }: HTMLAttributes<HTMLDivElement>): react.JSX.Element;
184
+ declare function CardFooter({ className, ...props }: HTMLAttributes<HTMLDivElement>): react.JSX.Element;
185
+
186
+ declare const Checkbox: react.ForwardRefExoticComponent<Omit<CheckboxPrimitive.CheckboxProps & react.RefAttributes<HTMLButtonElement>, "ref"> & react.RefAttributes<HTMLButtonElement>>;
187
+ interface CheckboxFieldProps extends ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root> {
188
+ label: ReactNode;
189
+ description?: ReactNode;
190
+ }
191
+ declare function CheckboxField({ label, description, id, ...props }: CheckboxFieldProps): react.JSX.Element;
192
+
193
+ interface DeviceCardProps {
194
+ name: string;
195
+ type: string;
196
+ status: OperationalStatus;
197
+ address?: string;
198
+ latency?: string;
199
+ description?: string;
200
+ icon?: LucideIcon;
201
+ actions?: ReactNode;
202
+ loading?: boolean;
203
+ className?: string;
204
+ }
205
+ declare function DeviceCard({ name, type, status, address, latency, description, icon: Icon, actions, loading, className }: DeviceCardProps): react.JSX.Element;
206
+
207
+ declare const Dialog: react.FC<DialogPrimitive.DialogProps>;
208
+ declare const DialogTrigger: react.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
209
+ declare const DialogClose: react.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & react.RefAttributes<HTMLButtonElement>>;
210
+ declare const DialogContent: react.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
211
+ declare const DialogTitle: react.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & react.RefAttributes<HTMLHeadingElement>, "ref"> & react.RefAttributes<HTMLHeadingElement>>;
212
+ declare const DialogDescription: react.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>, "ref"> & react.RefAttributes<HTMLParagraphElement>>;
213
+ declare function DialogHeader({ children }: {
214
+ children: ReactNode;
215
+ }): react.JSX.Element;
216
+ declare function DialogFooter({ children }: {
217
+ children: ReactNode;
218
+ }): react.JSX.Element;
219
+
220
+ declare const DropdownMenu: react.FC<DropdownPrimitive.DropdownMenuProps>;
221
+ declare const DropdownMenuTrigger: react.ForwardRefExoticComponent<DropdownPrimitive.DropdownMenuTriggerProps & react.RefAttributes<HTMLButtonElement>>;
222
+ declare const DropdownMenuGroup: react.ForwardRefExoticComponent<DropdownPrimitive.DropdownMenuGroupProps & react.RefAttributes<HTMLDivElement>>;
223
+ declare const DropdownMenuPortal: react.FC<DropdownPrimitive.DropdownMenuPortalProps>;
224
+ declare const DropdownMenuSub: react.FC<DropdownPrimitive.DropdownMenuSubProps>;
225
+ declare const DropdownMenuRadioGroup: react.ForwardRefExoticComponent<DropdownPrimitive.DropdownMenuRadioGroupProps & react.RefAttributes<HTMLDivElement>>;
226
+ declare const DropdownMenuContent: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
227
+ declare const DropdownMenuItem: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuItemProps & react.RefAttributes<HTMLDivElement>, "ref"> & {
228
+ inset?: boolean;
229
+ } & react.RefAttributes<HTMLDivElement>>;
230
+ declare const DropdownMenuCheckboxItem: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuCheckboxItemProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
231
+ declare const DropdownMenuRadioItem: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuRadioItemProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
232
+ declare const DropdownMenuLabel: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuLabelProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
233
+ declare const DropdownMenuSeparator: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuSeparatorProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
234
+ declare const DropdownMenuSubTrigger: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuSubTriggerProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
235
+ declare const DropdownMenuSubContent: react.ForwardRefExoticComponent<Omit<DropdownPrimitive.DropdownMenuSubContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
236
+
237
+ interface InputProps extends InputHTMLAttributes<HTMLInputElement> {
238
+ invalid?: boolean;
239
+ }
240
+ declare const Input: react.ForwardRefExoticComponent<InputProps & react.RefAttributes<HTMLInputElement>>;
241
+ interface TextareaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
242
+ invalid?: boolean;
243
+ }
244
+ declare const Textarea: react.ForwardRefExoticComponent<TextareaProps & react.RefAttributes<HTMLTextAreaElement>>;
245
+ declare const Label: react.ForwardRefExoticComponent<LabelHTMLAttributes<HTMLLabelElement> & react.RefAttributes<HTMLLabelElement>>;
246
+ declare function Separator({ className }: {
247
+ className?: string;
248
+ }): react.JSX.Element;
249
+
250
+ interface AppShellProps extends HTMLAttributes<HTMLDivElement> {
251
+ defaultMobileOpen?: boolean;
252
+ defaultSidebarCollapsed?: boolean;
253
+ sidebarCollapsed?: boolean;
254
+ onSidebarCollapsedChange?: (collapsed: boolean) => void;
255
+ sidebarPersistence?: BooleanStateAdapter;
256
+ }
257
+ declare function AppShell({ className, defaultMobileOpen, defaultSidebarCollapsed, sidebarCollapsed: controlledSidebarCollapsed, onSidebarCollapsedChange, sidebarPersistence, ...props }: AppShellProps): react.JSX.Element;
258
+ declare function Sidebar({ className, children, ...props }: HTMLAttributes<HTMLElement>): react.JSX.Element;
259
+ declare function AppShellMenuButton({ className, label, ...props }: Omit<ComponentProps<typeof IconButton>, "label"> & {
260
+ label?: string;
261
+ }): react.JSX.Element;
262
+ declare function AppShellCollapseButton({ className, ...props }: Omit<ComponentProps<typeof IconButton>, "label">): react.JSX.Element;
263
+ declare function Header({ className, ...props }: HTMLAttributes<HTMLElement>): react.JSX.Element;
264
+ declare function MainContent({ className, ...props }: HTMLAttributes<HTMLElement>): react.JSX.Element;
265
+ interface AppNavigationItem extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, "children"> {
266
+ id?: string;
267
+ label: string;
268
+ icon?: LucideIcon;
269
+ badge?: ReactNode;
270
+ active?: boolean;
271
+ matchEnd?: boolean;
272
+ items?: AppNavigationItem[];
273
+ defaultExpanded?: boolean;
274
+ }
275
+ interface AppNavigationProps extends HTMLAttributes<HTMLElement> {
276
+ items: AppNavigationItem[];
277
+ label?: string;
278
+ footer?: ReactNode;
279
+ currentPath?: string;
280
+ isPathActive?: (currentPath: string, href: string, item: AppNavigationItem) => boolean;
281
+ onNavigate?: (item: AppNavigationItem, event: React.MouseEvent<HTMLAnchorElement>) => void;
282
+ renderLink?: (options: AppNavigationLinkRenderOptions) => ReactNode;
283
+ }
284
+ interface AppNavigationLinkRenderOptions {
285
+ item: AppNavigationItem;
286
+ active: boolean;
287
+ className: string;
288
+ children: ReactNode;
289
+ onClick: (event: React.MouseEvent<HTMLAnchorElement>) => void;
290
+ }
291
+ declare function AppNavigation({ items, label, footer, currentPath, isPathActive, onNavigate, renderLink, className, ...props }: AppNavigationProps): react.JSX.Element;
292
+ interface PageHeaderProps extends HTMLAttributes<HTMLDivElement> {
293
+ title: string;
294
+ description?: string;
295
+ eyebrow?: string;
296
+ actions?: ReactNode;
297
+ }
298
+ declare function PageHeader({ title, description, eyebrow, actions, className, ...props }: PageHeaderProps): react.JSX.Element;
299
+
300
+ interface MetricCardProps {
301
+ label: string;
302
+ value: ReactNode;
303
+ description?: string;
304
+ trend?: string;
305
+ status?: OperationalStatus;
306
+ icon?: LucideIcon;
307
+ loading?: boolean;
308
+ className?: string;
309
+ }
310
+ declare function MetricCard({ label, value, description, trend, status, icon: Icon, loading, className }: MetricCardProps): react.JSX.Element;
311
+
312
+ interface OperationalStateProps {
313
+ title: string;
314
+ description: string;
315
+ icon?: LucideIcon;
316
+ action?: ReactNode;
317
+ compact?: boolean;
318
+ className?: string;
319
+ }
320
+ declare function EmptyState({ icon: Icon, title, description, action, compact, className }: OperationalStateProps): react.JSX.Element;
321
+ interface ErrorStateProps extends OperationalStateProps {
322
+ onRetry?: () => void;
323
+ retryLabel?: string;
324
+ }
325
+ declare function ErrorState({ icon: Icon, title, description, action, onRetry, retryLabel, compact, className }: ErrorStateProps): react.JSX.Element;
326
+
327
+ declare const RadioGroup: react.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
328
+ declare const RadioGroupItem: react.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupItemProps & react.RefAttributes<HTMLButtonElement>, "ref"> & react.RefAttributes<HTMLButtonElement>>;
329
+ declare function RadioField({ id, label, description, value }: {
330
+ id: string;
331
+ label: ReactNode;
332
+ description?: ReactNode;
333
+ value: string;
334
+ }): react.JSX.Element;
335
+
336
+ interface SelectOption {
337
+ label: string;
338
+ value: string;
339
+ disabled?: boolean;
340
+ }
341
+ interface SelectProps {
342
+ options: SelectOption[];
343
+ value?: string;
344
+ defaultValue?: string;
345
+ onValueChange?: (value: string) => void;
346
+ placeholder?: string;
347
+ label: string;
348
+ disabled?: boolean;
349
+ }
350
+ declare function Select({ options, label, placeholder, ...props }: SelectProps): react.JSX.Element;
351
+ declare const SelectGroup: react.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & react.RefAttributes<HTMLDivElement>>;
352
+ declare const SelectValue: react.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & react.RefAttributes<HTMLSpanElement>>;
353
+ declare const SelectLabel: react.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
354
+ declare function NativeSelect({ label, children, className, ...props }: ComponentPropsWithoutRef<"select"> & {
355
+ label: string;
356
+ children: ReactNode;
357
+ }): react.JSX.Element;
358
+
359
+ interface ServiceHealthProps {
360
+ name: string;
361
+ status: OperationalStatus;
362
+ endpoint?: string;
363
+ latency?: string;
364
+ description?: string;
365
+ meta?: ReactNode;
366
+ className?: string;
367
+ }
368
+ declare function ServiceHealth({ name, status, endpoint, latency, description, meta, className }: ServiceHealthProps): react.JSX.Element;
369
+
370
+ declare function Skeleton({ className, ...props }: HTMLAttributes<HTMLDivElement>): react.JSX.Element;
371
+
372
+ interface SpinnerProps {
373
+ label?: string;
374
+ className?: string;
375
+ }
376
+ declare function Spinner({ label, className }: SpinnerProps): react.JSX.Element;
377
+
378
+ interface StatusIndicatorProps {
379
+ status: OperationalStatus;
380
+ label?: string;
381
+ showIcon?: boolean;
382
+ className?: string;
383
+ }
384
+ declare function StatusIndicator({ status, label, showIcon, className }: StatusIndicatorProps): react.JSX.Element;
385
+
386
+ declare const Switch: react.ForwardRefExoticComponent<Omit<SwitchPrimitive.SwitchProps & react.RefAttributes<HTMLButtonElement>, "ref"> & react.RefAttributes<HTMLButtonElement>>;
387
+ declare function SwitchField({ id, label, description, ...props }: ComponentPropsWithoutRef<typeof SwitchPrimitive.Root> & {
388
+ label: ReactNode;
389
+ description?: ReactNode;
390
+ }): react.JSX.Element;
391
+
392
+ declare const Tabs: react.ForwardRefExoticComponent<TabsPrimitive.TabsProps & react.RefAttributes<HTMLDivElement>>;
393
+ declare const TabsList: react.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
394
+ declare const TabsTrigger: react.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & react.RefAttributes<HTMLButtonElement>, "ref"> & react.RefAttributes<HTMLButtonElement>>;
395
+ declare const TabsContent: react.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
396
+
397
+ declare const ToastProvider: react.FC<ToastPrimitive.ToastProviderProps>;
398
+ declare const Toast: react.ForwardRefExoticComponent<Omit<ToastPrimitive.ToastProps & react.RefAttributes<HTMLLIElement>, "ref"> & {
399
+ tone?: "neutral" | "success" | "warning" | "danger";
400
+ } & react.RefAttributes<HTMLLIElement>>;
401
+ declare const ToastTitle: react.ForwardRefExoticComponent<Omit<ToastPrimitive.ToastTitleProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
402
+ declare const ToastDescription: react.ForwardRefExoticComponent<Omit<ToastPrimitive.ToastDescriptionProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
403
+ declare const ToastAction: react.ForwardRefExoticComponent<ToastPrimitive.ToastActionProps & react.RefAttributes<HTMLButtonElement>>;
404
+ declare const ToastClose: react.ForwardRefExoticComponent<Omit<ToastPrimitive.ToastCloseProps & react.RefAttributes<HTMLButtonElement>, "ref"> & react.RefAttributes<HTMLButtonElement>>;
405
+ declare const ToastViewport: react.ForwardRefExoticComponent<Omit<ToastPrimitive.ToastViewportProps & react.RefAttributes<HTMLOListElement>, "ref"> & react.RefAttributes<HTMLOListElement>>;
406
+
407
+ declare const TooltipProvider: react.FC<TooltipPrimitive.TooltipProviderProps>;
408
+ declare const Tooltip: react.FC<TooltipPrimitive.TooltipProps>;
409
+ declare const TooltipTrigger: react.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & react.RefAttributes<HTMLButtonElement>>;
410
+ declare const TooltipContent: react.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & react.RefAttributes<HTMLDivElement>, "ref"> & react.RefAttributes<HTMLDivElement>>;
411
+ declare function SimpleTooltip({ content, children }: {
412
+ content: ReactNode;
413
+ children: ReactNode;
414
+ }): react.JSX.Element;
415
+
416
+ export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AppNavigation, type AppNavigationItem, type AppNavigationLinkRenderOptions, type AppNavigationProps, AppShell, AppShellCollapseButton, AppShellMenuButton, type AppShellProps, Badge, type BadgeProps, type BooleanStateAdapter, BrandLogo, type BrandLogoProps, type BrowserBooleanStateAdapterOptions, Button, type ButtonProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, CheckboxField, type CheckboxFieldProps, DataTable, type DataTableColumn, type DataTableFilter, type DataTableHistoryMode, type DataTableProps, type DataTableRequestContext, type DataTableRequestManager, type DataTableRequestResult, type DataTableRequestState, type DataTableServerConfig, type DataTableUrlCodecOptions, type DataTableUrlPort, type DataTableUrlStateAdapter, type DataTableVirtualizationOptions, DesignSystemProvider, type DesignSystemProviderProps, DeviceCard, type DeviceCardProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, ErrorState, type ErrorStateProps, Header, IconButton, type IconButtonProps, Input, type InputProps, type KeyValueStorage, Label, MainContent, MetricCard, type MetricCardProps, NativeSelect, type OperationalStateProps, type OperationalStatus, PageHeader, type PageHeaderProps, RadioField, RadioGroup, RadioGroupItem, Select, SelectGroup, SelectLabel, type SelectOption, type SelectProps, SelectValue, Separator, ServiceHealth, type ServiceHealthProps, Sidebar, SimpleTooltip, Skeleton, Spinner, type SpinnerProps, StatusIndicator, type StatusIndicatorProps, type StorageEventSource, Switch, SwitchField, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, type TextareaProps, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, buttonVariants, createBrowserBooleanStateAdapter, createBrowserDataTableUrlStateAdapter, createDataTableRequestManager, createDataTableUrlStateAdapter, matchNavigationPath, parseDataTableUrlState, serializeDataTableUrlState, useDesignSystem };