lingui-ui 1.0.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,1309 @@
1
+ import * as React$1 from 'react';
2
+ import React__default, { ButtonHTMLAttributes, ReactNode } from 'react';
3
+ import * as react_jsx_runtime from 'react/jsx-runtime';
4
+ import { HTMLMotionProps } from 'framer-motion';
5
+ import { LucideIcon } from 'lucide-react';
6
+ import { ClassValue } from 'clsx';
7
+
8
+ interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
9
+ variant?: 'default' | 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'success' | 'warning';
10
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'icon';
11
+ loading?: boolean;
12
+ leftIcon?: React.ReactNode;
13
+ rightIcon?: React.ReactNode;
14
+ fullWidth?: boolean;
15
+ animation?: 'none' | 'scale' | 'bounce' | 'pulse' | 'slide';
16
+ enableAudio?: boolean;
17
+ }
18
+ declare const Button: React$1.ForwardRefExoticComponent<ButtonProps & React$1.RefAttributes<HTMLButtonElement>>;
19
+
20
+ interface CardProps {
21
+ children: ReactNode;
22
+ title?: string;
23
+ subtitle?: string;
24
+ actions?: ReactNode;
25
+ variant?: 'default' | 'outlined' | 'elevated' | 'filled' | 'glass';
26
+ padding?: 'none' | 'sm' | 'md' | 'lg' | 'xl';
27
+ className?: string;
28
+ hover?: boolean;
29
+ onClick?: () => void;
30
+ headerClassName?: string;
31
+ bodyClassName?: string;
32
+ footerClassName?: string;
33
+ footer?: ReactNode;
34
+ animation?: 'none' | 'fade' | 'slide' | 'scale' | 'flip';
35
+ delay?: number;
36
+ }
37
+ declare const Card: ({ children, title, subtitle, actions, variant, padding, className, hover, onClick, headerClassName, bodyClassName, footerClassName, footer, animation, delay }: CardProps) => react_jsx_runtime.JSX.Element;
38
+ declare const CardHeader: ({ children, className }: {
39
+ children: ReactNode;
40
+ className?: string;
41
+ }) => react_jsx_runtime.JSX.Element;
42
+ declare const CardTitle: ({ children, className }: {
43
+ children: ReactNode;
44
+ className?: string;
45
+ }) => react_jsx_runtime.JSX.Element;
46
+ declare const CardDescription: ({ children, className }: {
47
+ children: ReactNode;
48
+ className?: string;
49
+ }) => react_jsx_runtime.JSX.Element;
50
+ declare const CardContent: ({ children, className }: {
51
+ children: ReactNode;
52
+ className?: string;
53
+ }) => react_jsx_runtime.JSX.Element;
54
+ declare const CardFooter: ({ children, className }: {
55
+ children: ReactNode;
56
+ className?: string;
57
+ }) => react_jsx_runtime.JSX.Element;
58
+
59
+ type Size = 'sm' | 'md' | 'lg';
60
+ type BaseMotionInputProps = Omit<HTMLMotionProps<'input'>, 'size'>;
61
+ interface InputProps extends BaseMotionInputProps {
62
+ label?: string;
63
+ error?: string;
64
+ helperText?: string;
65
+ leftIcon?: React.ReactNode;
66
+ rightIcon?: React.ReactNode;
67
+ clearable?: boolean;
68
+ onClear?: () => void;
69
+ size?: Size;
70
+ loading?: boolean;
71
+ showCount?: boolean;
72
+ countMax?: number;
73
+ onValueChange?: (value: string) => void;
74
+ changeDebounceMs?: number;
75
+ wrapperClassName?: string;
76
+ inputClassName?: string;
77
+ onChange?: React.ChangeEventHandler<HTMLInputElement>;
78
+ }
79
+ declare const Input: React$1.ForwardRefExoticComponent<Omit<InputProps, "ref"> & React$1.RefAttributes<HTMLInputElement>>;
80
+
81
+ interface SelectProps {
82
+ value: string;
83
+ onValueChange: (value: string) => void;
84
+ children: React__default.ReactNode;
85
+ disabled?: boolean;
86
+ className?: string;
87
+ }
88
+ interface SelectTriggerProps {
89
+ children: React__default.ReactNode;
90
+ className?: string;
91
+ }
92
+ interface SelectContentProps {
93
+ children: React__default.ReactNode;
94
+ className?: string;
95
+ }
96
+ interface SelectItemProps {
97
+ value: string;
98
+ children: React__default.ReactNode;
99
+ className?: string;
100
+ }
101
+ interface SelectValueProps {
102
+ placeholder?: string;
103
+ children?: React__default.ReactNode;
104
+ }
105
+ declare const Select: React__default.FC<SelectProps>;
106
+ declare const SelectTrigger: React__default.FC<SelectTriggerProps & {
107
+ onClick?: () => void;
108
+ isOpen?: boolean;
109
+ disabled?: boolean;
110
+ selectedValue?: string;
111
+ }>;
112
+ declare const SelectValue: React__default.FC<SelectValueProps>;
113
+ declare const SelectContent: React__default.FC<SelectContentProps & {
114
+ onItemClick?: (value: string) => void;
115
+ selectedValue?: string;
116
+ }>;
117
+ declare const SelectItem: React__default.FC<SelectItemProps & {
118
+ onClick?: () => void;
119
+ isSelected?: boolean;
120
+ }>;
121
+
122
+ interface ModalProps {
123
+ isOpen: boolean;
124
+ onClose: () => void;
125
+ children: ReactNode;
126
+ title?: string;
127
+ size?: 'sm' | 'md' | 'lg' | 'xl' | 'full';
128
+ closeOnOverlayClick?: boolean;
129
+ closeOnEscape?: boolean;
130
+ showCloseButton?: boolean;
131
+ className?: string;
132
+ }
133
+ declare const Modal: ({ isOpen, onClose, children, title, size, closeOnOverlayClick, closeOnEscape, showCloseButton, className }: ModalProps) => react_jsx_runtime.JSX.Element;
134
+
135
+ interface BadgeProps {
136
+ children: ReactNode;
137
+ variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'outline' | 'muted';
138
+ size?: 'xs' | 'sm' | 'md' | 'lg';
139
+ shape?: 'rounded' | 'pill' | 'square';
140
+ icon?: ReactNode;
141
+ className?: string;
142
+ onClick?: () => void;
143
+ animation?: 'none' | 'bounce' | 'pulse' | 'scale' | 'fade';
144
+ delay?: number;
145
+ }
146
+ declare const Badge: ({ children, variant, size, shape, icon, className, onClick, animation, delay }: BadgeProps) => react_jsx_runtime.JSX.Element;
147
+
148
+ interface AvatarProps {
149
+ src?: string;
150
+ alt?: string;
151
+ fallback?: string;
152
+ size?: 'sm' | 'md' | 'lg' | 'xl';
153
+ className?: string;
154
+ onClick?: () => void;
155
+ }
156
+ declare const Avatar: ({ src, alt, fallback, size, className, onClick }: AvatarProps) => react_jsx_runtime.JSX.Element;
157
+
158
+ interface TabsProps {
159
+ value: string;
160
+ onValueChange: (value: string) => void;
161
+ children: React__default.ReactNode;
162
+ className?: string;
163
+ }
164
+ declare const Tabs: React__default.FC<TabsProps>;
165
+
166
+ interface TooltipProps {
167
+ content: React.ReactNode;
168
+ children: React.ReactNode;
169
+ placement?: 'top' | 'bottom' | 'left' | 'right';
170
+ trigger?: 'hover' | 'click' | 'focus';
171
+ delay?: number;
172
+ className?: string;
173
+ disabled?: boolean;
174
+ }
175
+ declare const Tooltip: ({ content, children, placement, trigger, delay, className, disabled }: TooltipProps) => react_jsx_runtime.JSX.Element;
176
+
177
+ interface PopoverProps {
178
+ children: React.ReactNode;
179
+ content: React.ReactNode;
180
+ open?: boolean;
181
+ onOpenChange?: (open: boolean) => void;
182
+ placement?: 'top' | 'bottom' | 'left' | 'right';
183
+ trigger?: 'click' | 'hover';
184
+ className?: string;
185
+ contentClassName?: string;
186
+ showCloseButton?: boolean;
187
+ closeOnClickOutside?: boolean;
188
+ }
189
+ declare const Popover: ({ children, content, open: controlledOpen, onOpenChange, placement, trigger, className, contentClassName, showCloseButton, closeOnClickOutside }: PopoverProps) => react_jsx_runtime.JSX.Element;
190
+
191
+ interface SwitchProps {
192
+ checked: boolean;
193
+ onCheckedChange: (checked: boolean) => void;
194
+ disabled?: boolean;
195
+ className?: string;
196
+ size?: 'sm' | 'md' | 'lg';
197
+ }
198
+ declare const Switch: React__default.FC<SwitchProps>;
199
+
200
+ interface SliderProps {
201
+ value: number[];
202
+ onValueChange: (value: number[]) => void;
203
+ min?: number;
204
+ max?: number;
205
+ step?: number;
206
+ disabled?: boolean;
207
+ className?: string;
208
+ }
209
+ declare const Slider: React__default.FC<SliderProps>;
210
+
211
+ interface Step {
212
+ title: string;
213
+ description?: string;
214
+ content?: ReactNode;
215
+ completed?: boolean;
216
+ disabled?: boolean;
217
+ }
218
+ interface StepperProps {
219
+ steps: Step[];
220
+ currentStep: number;
221
+ onStepClick?: (stepIndex: number) => void;
222
+ orientation?: 'horizontal' | 'vertical';
223
+ className?: string;
224
+ showContent?: boolean;
225
+ }
226
+ declare const Stepper: ({ steps, currentStep, onStepClick, orientation, className, showContent }: StepperProps) => react_jsx_runtime.JSX.Element;
227
+
228
+ interface DatePickerProps {
229
+ value?: Date | null;
230
+ onChange: (date: Date | null) => void;
231
+ placeholder?: string;
232
+ disabled?: boolean;
233
+ className?: string;
234
+ label?: string;
235
+ error?: string;
236
+ minDate?: Date;
237
+ maxDate?: Date;
238
+ }
239
+ declare const DatePicker: ({ value, onChange, placeholder, disabled, className, label, error, minDate, maxDate }: DatePickerProps) => react_jsx_runtime.JSX.Element;
240
+
241
+ interface FileUploadProps {
242
+ onFileSelect: (files: File[]) => void;
243
+ accept?: string;
244
+ multiple?: boolean;
245
+ maxSize?: number;
246
+ maxFiles?: number;
247
+ className?: string;
248
+ label?: string;
249
+ error?: string;
250
+ disabled?: boolean;
251
+ }
252
+ declare const FileUpload: ({ onFileSelect, accept, multiple, maxSize, maxFiles, className, label, error, disabled }: FileUploadProps) => react_jsx_runtime.JSX.Element;
253
+
254
+ interface DragSortItem {
255
+ id: string | number;
256
+ data: any;
257
+ disabled?: boolean;
258
+ }
259
+ interface DragSortProps {
260
+ items: DragSortItem[];
261
+ onSort: (newItems: DragSortItem[]) => void;
262
+ children: (item: DragSortItem, index: number, isDragging: boolean) => React__default.ReactNode;
263
+ className?: string;
264
+ itemClassName?: string;
265
+ disabled?: boolean;
266
+ direction?: 'horizontal' | 'vertical';
267
+ gap?: number;
268
+ placeholder?: React__default.ReactNode;
269
+ placeholderClassName?: string;
270
+ animation?: boolean;
271
+ animationDuration?: number;
272
+ }
273
+ declare const DragSort: React__default.FC<DragSortProps>;
274
+
275
+ interface EmptyStateProps {
276
+ icon?: LucideIcon;
277
+ title: string;
278
+ description?: string;
279
+ action?: {
280
+ label: string;
281
+ onClick: () => void;
282
+ };
283
+ className?: string;
284
+ iconClassName?: string;
285
+ buttonClassName?: string;
286
+ }
287
+ declare const EmptyState: ({ icon: Icon, title, description, action, className, iconClassName, buttonClassName }: EmptyStateProps) => react_jsx_runtime.JSX.Element;
288
+
289
+ interface ChartData$1 {
290
+ label: string;
291
+ value: number;
292
+ color?: string;
293
+ }
294
+ interface ChartProps {
295
+ data: ChartData$1[];
296
+ type?: 'bar' | 'line' | 'pie' | 'doughnut';
297
+ width?: number;
298
+ height?: number;
299
+ className?: string;
300
+ showLegend?: boolean;
301
+ showValues?: boolean;
302
+ }
303
+ declare const Chart: ({ data, type, width, height, className, showLegend, showValues }: ChartProps) => react_jsx_runtime.JSX.Element;
304
+
305
+ interface MarkdownRendererProps {
306
+ content: string;
307
+ className?: string;
308
+ }
309
+ declare const MarkdownRenderer: React__default.FC<MarkdownRendererProps>;
310
+
311
+ interface MarkdownPreviewProps {
312
+ content: string;
313
+ className?: string;
314
+ }
315
+ declare const MarkdownPreviewComponent: React__default.FC<MarkdownPreviewProps>;
316
+
317
+ interface TypewriterMarkdownProps {
318
+ content: string;
319
+ speed?: number;
320
+ className?: string;
321
+ showMarkdownAfterTypewriter?: boolean;
322
+ onComplete?: () => void;
323
+ }
324
+ declare const TypewriterMarkdown: React__default.FC<TypewriterMarkdownProps>;
325
+
326
+ interface InfiniteScrollProps {
327
+ children: React.ReactNode;
328
+ hasMore: boolean;
329
+ loadMore: () => void;
330
+ threshold?: number;
331
+ className?: string;
332
+ loadingComponent?: React.ReactNode;
333
+ endMessage?: React.ReactNode;
334
+ }
335
+ declare const InfiniteScroll: ({ children, hasMore, loadMore, threshold, className, loadingComponent, endMessage }: InfiniteScrollProps) => react_jsx_runtime.JSX.Element;
336
+
337
+ interface VirtualListProps<T> {
338
+ items: T[];
339
+ itemHeight: number;
340
+ containerHeight: number;
341
+ renderItem: (item: T, index: number) => React.ReactNode;
342
+ className?: string;
343
+ overscan?: number;
344
+ }
345
+ declare const VirtualList: <T>({ items, itemHeight, containerHeight, renderItem, className, overscan }: VirtualListProps<T>) => react_jsx_runtime.JSX.Element;
346
+
347
+ interface PositionedToastProps {
348
+ id: string;
349
+ type: 'success' | 'error' | 'warning' | 'info';
350
+ title: string;
351
+ message?: string;
352
+ duration?: number;
353
+ onClose: (id: string) => void;
354
+ position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'top-center' | 'bottom-center';
355
+ scrollToPosition?: {
356
+ x: number;
357
+ y: number;
358
+ behavior?: 'smooth' | 'instant' | 'auto';
359
+ };
360
+ className?: string;
361
+ }
362
+ declare const PositionedToast: ({ id, type, title, message, duration, onClose, position, scrollToPosition, className }: PositionedToastProps) => react_jsx_runtime.JSX.Element;
363
+
364
+ interface ConfirmDialogProps {
365
+ isOpen: boolean;
366
+ onClose: () => void;
367
+ onConfirm: () => void;
368
+ title: string;
369
+ description: string;
370
+ confirmText?: string;
371
+ cancelText?: string;
372
+ variant?: 'default' | 'danger' | 'warning' | 'success';
373
+ icon?: React.ReactNode;
374
+ }
375
+ declare const ConfirmDialog: ({ isOpen, onClose, onConfirm, title, description, confirmText, cancelText, variant, icon }: ConfirmDialogProps) => react_jsx_runtime.JSX.Element;
376
+
377
+ interface AudioControllerProps {
378
+ className?: string;
379
+ position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
380
+ }
381
+ declare const AudioController: ({ className, position }: AudioControllerProps) => react_jsx_runtime.JSX.Element;
382
+
383
+ interface EnhancedMagneticButtonProps {
384
+ children: React.ReactNode;
385
+ variant?: 'primary' | 'secondary' | 'outline' | 'ghost';
386
+ size?: 'sm' | 'md' | 'lg' | 'xl';
387
+ intensity?: number;
388
+ enableAudio?: boolean;
389
+ enableRipple?: boolean;
390
+ enableGlow?: boolean;
391
+ className?: string;
392
+ onClick?: () => void;
393
+ }
394
+ declare const EnhancedMagneticButton: ({ children, variant, size, intensity, enableAudio, enableRipple, enableGlow, className, onClick }: EnhancedMagneticButtonProps) => react_jsx_runtime.JSX.Element;
395
+
396
+ interface EpicRatingEffectProps {
397
+ score: number;
398
+ maxScore?: number;
399
+ size?: 'sm' | 'md' | 'lg' | 'xl';
400
+ showAnimation?: boolean;
401
+ showParticles?: boolean;
402
+ showSound?: boolean;
403
+ className?: string;
404
+ onScoreChange?: (score: number) => void;
405
+ }
406
+ declare const EpicRatingEffect: React__default.FC<EpicRatingEffectProps>;
407
+
408
+ interface AutocompleteOption {
409
+ value: string;
410
+ label: string;
411
+ description?: string;
412
+ }
413
+ interface AutocompleteInputProps {
414
+ label?: string;
415
+ value: string;
416
+ onChange: (value: string) => void;
417
+ placeholder?: string;
418
+ options: AutocompleteOption[];
419
+ leftIcon?: React.ReactNode;
420
+ helperText?: string;
421
+ error?: string;
422
+ }
423
+ declare const AutocompleteInput: ({ label, value, onChange, placeholder, options, leftIcon, helperText, error, }: AutocompleteInputProps) => react_jsx_runtime.JSX.Element;
424
+
425
+ type SearchResult = {
426
+ id: string;
427
+ title: string;
428
+ description?: string;
429
+ url?: string;
430
+ type: string;
431
+ icon?: string;
432
+ fragments?: Record<string, any>;
433
+ };
434
+ interface GlobalSearchProps {
435
+ isOpen?: boolean;
436
+ query?: string;
437
+ results?: SearchResult[];
438
+ isLoading?: boolean;
439
+ selectedIndex?: number;
440
+ searchEnabled?: boolean;
441
+ onOpen?: () => void;
442
+ onClose?: () => void;
443
+ onSelect?: (result: SearchResult) => void;
444
+ onQueryChange?: (query: string) => void;
445
+ }
446
+ declare const GlobalSearch: ({ isOpen, query, results, isLoading, selectedIndex, searchEnabled, onOpen, onClose, onSelect, onQueryChange }: GlobalSearchProps) => react_jsx_runtime.JSX.Element;
447
+
448
+ interface IconTextProps {
449
+ icon: ReactNode;
450
+ children: ReactNode;
451
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
452
+ variant?: 'default' | 'primary' | 'secondary' | 'success' | 'warning' | 'error' | 'muted';
453
+ direction?: 'horizontal' | 'vertical';
454
+ spacing?: 'tight' | 'normal' | 'loose';
455
+ className?: string;
456
+ iconClassName?: string;
457
+ textClassName?: string;
458
+ onClick?: () => void;
459
+ animation?: 'none' | 'fade' | 'slide' | 'scale' | 'bounce' | 'pulse' | 'glow';
460
+ delay?: number;
461
+ }
462
+ declare const IconText: ({ icon, children, size, variant, direction, spacing, className, iconClassName, textClassName, onClick, animation, delay }: IconTextProps) => react_jsx_runtime.JSX.Element;
463
+
464
+ interface Chapter {
465
+ id: string;
466
+ title: string;
467
+ summary: string;
468
+ content: string;
469
+ wordCount: number;
470
+ targetWordCount: number;
471
+ status: 'draft' | 'writing' | 'editing' | 'completed';
472
+ order: number;
473
+ isVisible: boolean;
474
+ tags: string[];
475
+ characters: string[];
476
+ plotPoints: string[];
477
+ createdAt: string;
478
+ updatedAt: string;
479
+ }
480
+ interface ChapterOutlineProps {
481
+ chapters: Chapter[];
482
+ onAdd: (chapter: Omit<Chapter, 'id' | 'createdAt' | 'updatedAt'>) => void;
483
+ onUpdate: (id: string, chapter: Partial<Chapter>) => void;
484
+ onDelete: (id: string) => void;
485
+ onReorder: (fromIndex: number, toIndex: number) => void;
486
+ onToggleVisibility: (id: string) => void;
487
+ onChapterSelect: (chapter: Chapter) => void;
488
+ className?: string;
489
+ }
490
+ declare const ChapterOutline: ({ chapters, onAdd, onUpdate, onDelete, onToggleVisibility, onChapterSelect, className }: ChapterOutlineProps) => react_jsx_runtime.JSX.Element;
491
+
492
+ interface PageTurnerProps {
493
+ currentPage: number;
494
+ totalPages: number;
495
+ onPageChange: (page: number) => void;
496
+ onBookmark?: (page: number) => void;
497
+ bookmarks?: number[];
498
+ className?: string;
499
+ showPageNumbers?: boolean;
500
+ showProgress?: boolean;
501
+ autoSave?: boolean;
502
+ onAutoSave?: (page: number) => void;
503
+ }
504
+ declare const PageTurner: ({ currentPage, totalPages, onPageChange, onBookmark, bookmarks, className, showPageNumbers, showProgress, autoSave, onAutoSave }: PageTurnerProps) => react_jsx_runtime.JSX.Element;
505
+
506
+ interface PlotPoint {
507
+ id: string;
508
+ title: string;
509
+ description: string;
510
+ type: 'exposition' | 'rising_action' | 'climax' | 'falling_action' | 'resolution' | 'custom';
511
+ chapter?: string;
512
+ characters: string[];
513
+ location?: string;
514
+ time?: string;
515
+ isImportant: boolean;
516
+ isVisible: boolean;
517
+ order: number;
518
+ tags: string[];
519
+ createdAt: string;
520
+ updatedAt: string;
521
+ }
522
+ interface PlotManagerProps {
523
+ plotPoints: PlotPoint[];
524
+ onAdd: (plotPoint: Omit<PlotPoint, 'id' | 'createdAt' | 'updatedAt'>) => void;
525
+ onUpdate: (id: string, plotPoint: Partial<PlotPoint>) => void;
526
+ onDelete: (id: string) => void;
527
+ onReorder: (fromIndex: number, toIndex: number) => void;
528
+ onToggleVisibility: (id: string) => void;
529
+ onToggleImportance: (id: string) => void;
530
+ className?: string;
531
+ }
532
+ declare const PlotManager: ({ plotPoints, onAdd, onUpdate, onDelete, onToggleVisibility, onToggleImportance, className }: PlotManagerProps) => react_jsx_runtime.JSX.Element;
533
+
534
+ interface LayoutProps {
535
+ children: ReactNode;
536
+ }
537
+ declare const Layout: ({ children }: LayoutProps) => react_jsx_runtime.JSX.Element;
538
+
539
+ interface NavigationItem {
540
+ name: string;
541
+ href: string;
542
+ icon: React.ComponentType<{
543
+ className?: string;
544
+ }>;
545
+ }
546
+ interface SidebarProps {
547
+ logo?: React.ReactNode;
548
+ logoText?: string;
549
+ navigation?: NavigationItem[];
550
+ isAuthenticated?: boolean;
551
+ user?: {
552
+ displayName?: string;
553
+ avatar?: string;
554
+ };
555
+ groups?: Array<{
556
+ id: number | string;
557
+ name: string;
558
+ avatar?: string;
559
+ }>;
560
+ currentOrganizationId?: number | string | null;
561
+ onOrganizationChange?: (id: number | string) => void;
562
+ onLogin?: () => void;
563
+ onLogout?: () => void;
564
+ onNavigate?: (path: string) => void;
565
+ currentPath?: string;
566
+ className?: string;
567
+ }
568
+ declare const Sidebar: ({ logo, logoText, navigation, isAuthenticated, user, groups, currentOrganizationId, onOrganizationChange, onLogin, onLogout, onNavigate, currentPath, className }: SidebarProps) => react_jsx_runtime.JSX.Element;
569
+
570
+ interface FooterProps {
571
+ teamName?: string;
572
+ teamDesc?: string;
573
+ icpNumber?: string;
574
+ icpUrl?: string;
575
+ className?: string;
576
+ }
577
+ declare const Footer: React__default.FC<FooterProps>;
578
+
579
+ interface GridProps {
580
+ children: ReactNode;
581
+ cols?: 1 | 2 | 3 | 4 | 5 | 6 | 12;
582
+ gap?: 'sm' | 'md' | 'lg' | 'xl';
583
+ className?: string;
584
+ }
585
+ declare const Grid: ({ children, cols, gap, className }: GridProps) => react_jsx_runtime.JSX.Element;
586
+
587
+ interface PageContainerProps {
588
+ children: ReactNode;
589
+ className?: string;
590
+ maxWidth?: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full';
591
+ padding?: 'none' | 'sm' | 'md' | 'lg';
592
+ }
593
+ declare const PageContainer: ({ children, className, maxWidth, padding }: PageContainerProps) => react_jsx_runtime.JSX.Element;
594
+
595
+ interface PageHeaderProps {
596
+ title: string;
597
+ subtitle?: string;
598
+ children?: ReactNode;
599
+ className?: string;
600
+ breadcrumbs?: Array<{
601
+ label: string;
602
+ href?: string;
603
+ }>;
604
+ }
605
+ declare const PageHeader: ({ title, subtitle, children, className, breadcrumbs }: PageHeaderProps) => react_jsx_runtime.JSX.Element;
606
+
607
+ interface FormField$1 {
608
+ name: string;
609
+ label: string;
610
+ type: 'text' | 'email' | 'password' | 'textarea' | 'select' | 'checkbox' | 'radio' | 'date' | 'file';
611
+ required?: boolean;
612
+ placeholder?: string;
613
+ options?: {
614
+ value: string;
615
+ label: string;
616
+ }[];
617
+ validation?: (value: any) => string | null;
618
+ className?: string;
619
+ }
620
+ interface AdvancedFormProps {
621
+ fields: FormField$1[];
622
+ onSubmit: (data: Record<string, any>) => void;
623
+ submitText?: string;
624
+ className?: string;
625
+ animated?: boolean;
626
+ showProgress?: boolean;
627
+ autoSave?: boolean;
628
+ autoSaveDelay?: number;
629
+ }
630
+ declare const AdvancedForm: ({ fields, onSubmit, submitText, className, animated, showProgress, autoSave, autoSaveDelay }: AdvancedFormProps) => react_jsx_runtime.JSX.Element;
631
+
632
+ interface FormFieldProps {
633
+ label?: string;
634
+ error?: string;
635
+ hint?: string;
636
+ required?: boolean;
637
+ children: ReactNode;
638
+ className?: string;
639
+ labelClassName?: string;
640
+ }
641
+ declare const FormField: ({ label, error, hint, required, children, className, labelClassName }: FormFieldProps) => react_jsx_runtime.JSX.Element;
642
+
643
+ interface FormSectionProps {
644
+ title?: string;
645
+ description?: string;
646
+ children: ReactNode;
647
+ className?: string;
648
+ collapsible?: boolean;
649
+ defaultCollapsed?: boolean;
650
+ }
651
+ declare const FormSection: ({ title, description, children, className }: FormSectionProps) => react_jsx_runtime.JSX.Element;
652
+
653
+ interface Column<T> {
654
+ key: keyof T;
655
+ title: string;
656
+ sortable?: boolean;
657
+ render?: (value: any, record: T) => React.ReactNode;
658
+ width?: string | number;
659
+ minWidth?: string | number;
660
+ align?: 'left' | 'center' | 'right';
661
+ }
662
+ interface DataTableProps<T> {
663
+ data: T[];
664
+ columns: Column<T>[];
665
+ loading?: boolean;
666
+ searchable?: boolean;
667
+ searchPlaceholder?: string;
668
+ onSearch?: (searchTerm: string) => void;
669
+ onSort?: (key: keyof T, direction: 'asc' | 'desc') => void;
670
+ onRowClick?: (record: T) => void;
671
+ className?: string;
672
+ emptyText?: string;
673
+ pageSize?: number;
674
+ showPagination?: boolean;
675
+ }
676
+ declare const DataTable: <T extends Record<string, any>>({ data, columns, loading, searchable, searchPlaceholder, onSearch, onSort, onRowClick, className, emptyText, pageSize, showPagination }: DataTableProps<T>) => react_jsx_runtime.JSX.Element;
677
+
678
+ interface ProgressBarProps {
679
+ value: number;
680
+ max?: number;
681
+ size?: 'sm' | 'md' | 'lg';
682
+ variant?: 'default' | 'success' | 'warning' | 'error';
683
+ showValue?: boolean;
684
+ label?: string;
685
+ description?: string;
686
+ className?: string;
687
+ children?: ReactNode;
688
+ }
689
+ declare const ProgressBar: ({ value, max, size, variant, showValue, label, description, className, children }: ProgressBarProps) => react_jsx_runtime.JSX.Element;
690
+
691
+ interface StatCardProps {
692
+ title: string;
693
+ value: string | number;
694
+ change?: {
695
+ value: number;
696
+ type: 'increase' | 'decrease' | 'neutral';
697
+ };
698
+ icon?: LucideIcon;
699
+ iconColor?: string;
700
+ description?: string;
701
+ className?: string;
702
+ onClick?: () => void;
703
+ }
704
+ declare const StatCard: ({ title, value, change, icon: Icon, iconColor, description, className, onClick }: StatCardProps) => react_jsx_runtime.JSX.Element;
705
+
706
+ interface TimelineItem {
707
+ id: string;
708
+ title: string;
709
+ description?: string;
710
+ time: string;
711
+ status?: 'completed' | 'current' | 'upcoming';
712
+ icon?: ReactNode;
713
+ color?: string;
714
+ }
715
+ interface TimelineProps {
716
+ items: TimelineItem[];
717
+ orientation?: 'vertical' | 'horizontal';
718
+ className?: string;
719
+ }
720
+ declare const Timeline: ({ items, orientation, className }: TimelineProps) => react_jsx_runtime.JSX.Element;
721
+
722
+ interface ChartData {
723
+ label: string;
724
+ value: number;
725
+ color?: string;
726
+ }
727
+ interface AdvancedChartProps {
728
+ data: ChartData[];
729
+ type?: 'bar' | 'line' | 'pie' | 'area';
730
+ animated?: boolean;
731
+ interactive?: boolean;
732
+ className?: string;
733
+ height?: number;
734
+ showLegend?: boolean;
735
+ showTooltip?: boolean;
736
+ }
737
+ declare const AdvancedChart: ({ data, type, animated, interactive, className, height, showLegend, showTooltip }: AdvancedChartProps) => react_jsx_runtime.JSX.Element;
738
+
739
+ interface FadeInProps {
740
+ children: ReactNode;
741
+ direction?: 'up' | 'down' | 'left' | 'right';
742
+ delay?: number;
743
+ duration?: number;
744
+ className?: string;
745
+ }
746
+ declare const FadeIn: ({ children, direction, delay, duration, className }: FadeInProps) => react_jsx_runtime.JSX.Element;
747
+
748
+ interface LoadingAnimationProps {
749
+ type?: 'spinner' | 'dots' | 'pulse' | 'wave' | 'bounce';
750
+ size?: 'sm' | 'md' | 'lg';
751
+ color?: string;
752
+ className?: string;
753
+ }
754
+ declare const LoadingAnimation: ({ type, size, color, className }: LoadingAnimationProps) => react_jsx_runtime.JSX.Element;
755
+
756
+ interface StaggeredListProps {
757
+ children: ReactNode[];
758
+ className?: string;
759
+ staggerDelay?: number;
760
+ direction?: 'up' | 'down' | 'left' | 'right';
761
+ }
762
+ declare const StaggeredList: ({ children, className, staggerDelay, direction }: StaggeredListProps) => react_jsx_runtime.JSX.Element;
763
+
764
+ interface WaveProps {
765
+ children: ReactNode;
766
+ className?: string;
767
+ amplitude?: number;
768
+ frequency?: number;
769
+ speed?: number;
770
+ direction?: 'horizontal' | 'vertical';
771
+ }
772
+ declare const Wave: ({ children, className, amplitude, speed, direction }: WaveProps) => react_jsx_runtime.JSX.Element;
773
+
774
+ interface MagneticButtonProps {
775
+ children: ReactNode;
776
+ className?: string;
777
+ intensity?: number;
778
+ onClick?: () => void;
779
+ disabled?: boolean;
780
+ variant?: 'default' | 'primary' | 'secondary' | 'outline' | 'ghost';
781
+ size?: 'sm' | 'md' | 'lg';
782
+ }
783
+ declare const MagneticButton: ({ children, className, intensity, onClick, disabled, variant, size }: MagneticButtonProps) => react_jsx_runtime.JSX.Element;
784
+
785
+ interface OnboardingStep {
786
+ id: string;
787
+ title: string;
788
+ description: string;
789
+ target?: string;
790
+ position?: 'top' | 'bottom' | 'left' | 'right' | 'center';
791
+ image?: string;
792
+ video?: string;
793
+ action?: {
794
+ text: string;
795
+ onClick: () => void;
796
+ };
797
+ highlight?: boolean;
798
+ animation?: 'fade' | 'slide' | 'scale' | 'bounce' | 'glow';
799
+ }
800
+ interface PremiumOnboardingProps {
801
+ steps: OnboardingStep[];
802
+ isOpen: boolean;
803
+ onClose: () => void;
804
+ onComplete?: () => void;
805
+ className?: string;
806
+ autoPlay?: boolean;
807
+ showProgress?: boolean;
808
+ allowSkip?: boolean;
809
+ }
810
+ declare const PremiumOnboarding: ({ steps, isOpen, onClose, onComplete, className, autoPlay, showProgress, allowSkip }: PremiumOnboardingProps) => react_jsx_runtime.JSX.Element | null;
811
+
812
+ interface PasswordStrengthProps {
813
+ password: string;
814
+ minLength?: number;
815
+ requireUppercase?: boolean;
816
+ requireLowercase?: boolean;
817
+ requireNumber?: boolean;
818
+ requireSpecialChar?: boolean;
819
+ }
820
+ declare const PasswordStrength: React__default.FC<PasswordStrengthProps>;
821
+
822
+ interface AnnouncerProps {
823
+ message: string;
824
+ priority?: 'polite' | 'assertive';
825
+ className?: string;
826
+ animation?: 'none' | 'fade' | 'slide' | 'scale';
827
+ delay?: number;
828
+ duration?: number;
829
+ }
830
+ declare const Announcer: ({ message, priority, className, animation, delay, duration }: AnnouncerProps) => react_jsx_runtime.JSX.Element | null;
831
+
832
+ interface FocusTrapProps {
833
+ children: ReactNode;
834
+ active?: boolean;
835
+ className?: string;
836
+ animation?: 'none' | 'fade' | 'scale' | 'slide';
837
+ delay?: number;
838
+ onEscape?: () => void;
839
+ onFocusOut?: () => void;
840
+ }
841
+ declare const FocusTrap: ({ children, active, className, animation, delay, onEscape, onFocusOut }: FocusTrapProps) => react_jsx_runtime.JSX.Element;
842
+
843
+ interface SkipLinkProps {
844
+ href: string;
845
+ children: ReactNode;
846
+ className?: string;
847
+ animation?: 'none' | 'fade' | 'slide' | 'scale';
848
+ delay?: number;
849
+ }
850
+ declare const SkipLink: ({ href, children, className, animation, delay }: SkipLinkProps) => react_jsx_runtime.JSX.Element;
851
+
852
+ interface BackgroundEffectsProps {
853
+ theme?: 'default' | 'neon' | 'cyber' | 'fire' | 'ice' | 'rainbow' | 'matrix' | 'stars';
854
+ intensity?: 'low' | 'medium' | 'high';
855
+ enableParticles?: boolean;
856
+ enableWaves?: boolean;
857
+ enableGrid?: boolean;
858
+ enableGlow?: boolean;
859
+ }
860
+ declare const BackgroundEffects: React__default.FC<BackgroundEffectsProps>;
861
+
862
+ interface GlobalEffectsProps {
863
+ children: React__default.ReactNode;
864
+ enableParticles?: boolean;
865
+ enableBackground?: boolean;
866
+ enableTransitions?: boolean;
867
+ enableSound?: boolean;
868
+ theme?: 'default' | 'neon' | 'cyber' | 'fire' | 'ice' | 'rainbow';
869
+ }
870
+ declare const GlobalEffects: React__default.FC<GlobalEffectsProps>;
871
+
872
+ interface TypewriterProps {
873
+ text: string;
874
+ speed?: number;
875
+ delay?: number;
876
+ className?: string;
877
+ onComplete?: () => void;
878
+ }
879
+ declare const Typewriter: ({ text, speed, delay, className, onComplete }: TypewriterProps) => react_jsx_runtime.JSX.Element;
880
+
881
+ interface HoverCardProps {
882
+ children: React.ReactNode;
883
+ className?: string;
884
+ intensity?: 'low' | 'medium' | 'high';
885
+ }
886
+ declare const HoverCard: ({ children, className, intensity }: HoverCardProps) => react_jsx_runtime.JSX.Element;
887
+
888
+ interface SkeletonProps {
889
+ className?: string;
890
+ lines?: number;
891
+ animated?: boolean;
892
+ }
893
+ declare const Skeleton: ({ className, lines, animated }: SkeletonProps) => react_jsx_runtime.JSX.Element;
894
+
895
+ interface ProgressIndicatorProps {
896
+ current: number;
897
+ total: number;
898
+ className?: string;
899
+ showPercentage?: boolean;
900
+ animated?: boolean;
901
+ }
902
+ declare const ProgressIndicator: ({ current, total, className, showPercentage, animated }: ProgressIndicatorProps) => react_jsx_runtime.JSX.Element;
903
+
904
+ interface PulseProps {
905
+ children: React.ReactNode;
906
+ className?: string;
907
+ intensity?: 'low' | 'medium' | 'high';
908
+ duration?: number;
909
+ }
910
+ declare const Pulse: ({ children, className, intensity, duration }: PulseProps) => react_jsx_runtime.JSX.Element;
911
+
912
+ interface ScrollRevealProps {
913
+ children: React.ReactNode;
914
+ className?: string;
915
+ direction?: 'up' | 'down' | 'left' | 'right';
916
+ delay?: number;
917
+ duration?: number;
918
+ }
919
+ declare const ScrollReveal: ({ children, className, direction, delay, duration }: ScrollRevealProps) => react_jsx_runtime.JSX.Element;
920
+
921
+ interface MagneticProps {
922
+ children: React.ReactNode;
923
+ className?: string;
924
+ strength?: number;
925
+ }
926
+ declare const Magnetic: ({ children, className, strength }: MagneticProps) => react_jsx_runtime.JSX.Element;
927
+
928
+ interface RippleProps {
929
+ children: React.ReactNode;
930
+ className?: string;
931
+ color?: string;
932
+ duration?: number;
933
+ }
934
+ declare const Ripple: ({ children, className, color, duration }: RippleProps) => react_jsx_runtime.JSX.Element;
935
+
936
+ interface ParticleBackgroundProps {
937
+ className?: string;
938
+ particleCount?: number;
939
+ color?: string;
940
+ speed?: number;
941
+ }
942
+ declare const ParticleBackground: ({ className, particleCount, color, speed }: ParticleBackgroundProps) => react_jsx_runtime.JSX.Element;
943
+
944
+ declare function cn(...inputs: ClassValue[]): string;
945
+
946
+ declare const getThemeColors: (theme?: string) => {
947
+ primary: string;
948
+ primaryHover: string;
949
+ primaryForeground: string;
950
+ secondary: string;
951
+ secondaryHover: string;
952
+ accent: string;
953
+ muted: string;
954
+ mutedForeground: string;
955
+ border: string;
956
+ background: string;
957
+ foreground: string;
958
+ } | {
959
+ primary: string;
960
+ primaryHover: string;
961
+ primaryForeground: string;
962
+ secondary: string;
963
+ secondaryHover: string;
964
+ accent: string;
965
+ muted: string;
966
+ mutedForeground: string;
967
+ border: string;
968
+ background: string;
969
+ foreground: string;
970
+ } | {
971
+ primary: string;
972
+ primaryHover: string;
973
+ primaryForeground: string;
974
+ secondary: string;
975
+ secondaryHover: string;
976
+ accent: string;
977
+ muted: string;
978
+ mutedForeground: string;
979
+ border: string;
980
+ background: string;
981
+ foreground: string;
982
+ } | {
983
+ primary: string;
984
+ primaryHover: string;
985
+ primaryForeground: string;
986
+ secondary: string;
987
+ secondaryHover: string;
988
+ accent: string;
989
+ muted: string;
990
+ mutedForeground: string;
991
+ border: string;
992
+ background: string;
993
+ foreground: string;
994
+ } | {
995
+ primary: string;
996
+ primaryHover: string;
997
+ primaryForeground: string;
998
+ secondary: string;
999
+ secondaryHover: string;
1000
+ accent: string;
1001
+ muted: string;
1002
+ mutedForeground: string;
1003
+ border: string;
1004
+ background: string;
1005
+ foreground: string;
1006
+ } | {
1007
+ primary: string;
1008
+ primaryHover: string;
1009
+ primaryForeground: string;
1010
+ secondary: string;
1011
+ secondaryHover: string;
1012
+ accent: string;
1013
+ muted: string;
1014
+ mutedForeground: string;
1015
+ border: string;
1016
+ background: string;
1017
+ foreground: string;
1018
+ } | {
1019
+ primary: string;
1020
+ primaryHover: string;
1021
+ primaryForeground: string;
1022
+ secondary: string;
1023
+ secondaryHover: string;
1024
+ accent: string;
1025
+ muted: string;
1026
+ mutedForeground: string;
1027
+ border: string;
1028
+ background: string;
1029
+ foreground: string;
1030
+ } | {
1031
+ primary: string;
1032
+ primaryHover: string;
1033
+ primaryForeground: string;
1034
+ secondary: string;
1035
+ secondaryHover: string;
1036
+ accent: string;
1037
+ muted: string;
1038
+ mutedForeground: string;
1039
+ border: string;
1040
+ background: string;
1041
+ foreground: string;
1042
+ };
1043
+ declare const getThemeClasses: (theme?: string, variant?: "primary" | "secondary" | "accent" | "muted") => {
1044
+ bg: string;
1045
+ hover: string;
1046
+ text: string;
1047
+ border: string;
1048
+ ring: string;
1049
+ shadow: string;
1050
+ } | {
1051
+ bg: string;
1052
+ hover: string;
1053
+ text: string;
1054
+ border: string;
1055
+ ring: string;
1056
+ shadow: string;
1057
+ } | {
1058
+ bg: string;
1059
+ hover: string;
1060
+ text: string;
1061
+ border: string;
1062
+ ring: string;
1063
+ shadow: string;
1064
+ } | {
1065
+ bg: string;
1066
+ hover: string;
1067
+ text: string;
1068
+ border: string;
1069
+ ring: string;
1070
+ shadow: string;
1071
+ };
1072
+ declare const getCurrentTheme: () => string;
1073
+ declare const getCurrentThemeMode: () => "light" | "dark";
1074
+ declare const setTheme: (theme: string) => void;
1075
+ declare const setCustomThemeColor: (color: string) => void;
1076
+ declare const createThemeAwareStyles: (theme?: string) => {
1077
+ button: {
1078
+ primary: string;
1079
+ secondary: string;
1080
+ outline: string;
1081
+ ghost: string;
1082
+ };
1083
+ card: {
1084
+ default: string;
1085
+ elevated: string;
1086
+ filled: string;
1087
+ glass: string;
1088
+ };
1089
+ input: {
1090
+ default: string;
1091
+ filled: string;
1092
+ };
1093
+ badge: {
1094
+ primary: string;
1095
+ secondary: string;
1096
+ accent: string;
1097
+ muted: string;
1098
+ };
1099
+ };
1100
+ declare const useTheme: () => {
1101
+ theme: string;
1102
+ changeTheme: (newTheme: string) => void;
1103
+ colors: {
1104
+ primary: string;
1105
+ primaryHover: string;
1106
+ primaryForeground: string;
1107
+ secondary: string;
1108
+ secondaryHover: string;
1109
+ accent: string;
1110
+ muted: string;
1111
+ mutedForeground: string;
1112
+ border: string;
1113
+ background: string;
1114
+ foreground: string;
1115
+ } | {
1116
+ primary: string;
1117
+ primaryHover: string;
1118
+ primaryForeground: string;
1119
+ secondary: string;
1120
+ secondaryHover: string;
1121
+ accent: string;
1122
+ muted: string;
1123
+ mutedForeground: string;
1124
+ border: string;
1125
+ background: string;
1126
+ foreground: string;
1127
+ } | {
1128
+ primary: string;
1129
+ primaryHover: string;
1130
+ primaryForeground: string;
1131
+ secondary: string;
1132
+ secondaryHover: string;
1133
+ accent: string;
1134
+ muted: string;
1135
+ mutedForeground: string;
1136
+ border: string;
1137
+ background: string;
1138
+ foreground: string;
1139
+ } | {
1140
+ primary: string;
1141
+ primaryHover: string;
1142
+ primaryForeground: string;
1143
+ secondary: string;
1144
+ secondaryHover: string;
1145
+ accent: string;
1146
+ muted: string;
1147
+ mutedForeground: string;
1148
+ border: string;
1149
+ background: string;
1150
+ foreground: string;
1151
+ } | {
1152
+ primary: string;
1153
+ primaryHover: string;
1154
+ primaryForeground: string;
1155
+ secondary: string;
1156
+ secondaryHover: string;
1157
+ accent: string;
1158
+ muted: string;
1159
+ mutedForeground: string;
1160
+ border: string;
1161
+ background: string;
1162
+ foreground: string;
1163
+ } | {
1164
+ primary: string;
1165
+ primaryHover: string;
1166
+ primaryForeground: string;
1167
+ secondary: string;
1168
+ secondaryHover: string;
1169
+ accent: string;
1170
+ muted: string;
1171
+ mutedForeground: string;
1172
+ border: string;
1173
+ background: string;
1174
+ foreground: string;
1175
+ } | {
1176
+ primary: string;
1177
+ primaryHover: string;
1178
+ primaryForeground: string;
1179
+ secondary: string;
1180
+ secondaryHover: string;
1181
+ accent: string;
1182
+ muted: string;
1183
+ mutedForeground: string;
1184
+ border: string;
1185
+ background: string;
1186
+ foreground: string;
1187
+ } | {
1188
+ primary: string;
1189
+ primaryHover: string;
1190
+ primaryForeground: string;
1191
+ secondary: string;
1192
+ secondaryHover: string;
1193
+ accent: string;
1194
+ muted: string;
1195
+ mutedForeground: string;
1196
+ border: string;
1197
+ background: string;
1198
+ foreground: string;
1199
+ };
1200
+ classes: {
1201
+ bg: string;
1202
+ hover: string;
1203
+ text: string;
1204
+ border: string;
1205
+ ring: string;
1206
+ shadow: string;
1207
+ } | {
1208
+ bg: string;
1209
+ hover: string;
1210
+ text: string;
1211
+ border: string;
1212
+ ring: string;
1213
+ shadow: string;
1214
+ } | {
1215
+ bg: string;
1216
+ hover: string;
1217
+ text: string;
1218
+ border: string;
1219
+ ring: string;
1220
+ shadow: string;
1221
+ } | {
1222
+ bg: string;
1223
+ hover: string;
1224
+ text: string;
1225
+ border: string;
1226
+ ring: string;
1227
+ shadow: string;
1228
+ };
1229
+ };
1230
+
1231
+ declare class AudioEffectManager {
1232
+ private audioContext;
1233
+ private masterGain;
1234
+ private isEnabled;
1235
+ private volume;
1236
+ constructor();
1237
+ private initAudioContext;
1238
+ setEnabled(enabled: boolean): void;
1239
+ setVolume(volume: number): void;
1240
+ playClickSound(): void;
1241
+ playSuccessSound(): void;
1242
+ playErrorSound(): void;
1243
+ playWarningSound(): void;
1244
+ playInfoSound(): void;
1245
+ playHoverSound(): void;
1246
+ playPageTransitionSound(): void;
1247
+ playMagicSound(): void;
1248
+ playParticleSound(): void;
1249
+ }
1250
+ declare const audioManager: AudioEffectManager;
1251
+ declare const playClickSound: () => void;
1252
+ declare const playSuccessSound: () => void;
1253
+ declare const playErrorSound: () => void;
1254
+ declare const playWarningSound: () => void;
1255
+ declare const playInfoSound: () => void;
1256
+ declare const playHoverSound: () => void;
1257
+ declare const playPageTransitionSound: () => void;
1258
+ declare const playMagicSound: () => void;
1259
+ declare const playParticleSound: () => void;
1260
+ declare const setAudioEnabled: (enabled: boolean) => void;
1261
+ declare const setAudioVolume: (volume: number) => void;
1262
+
1263
+ type WidgetType = 'stat-card' | 'hero-banner' | 'chart-line' | 'chart-bar' | 'chart-pie' | 'chart-area' | 'chart-radar' | 'activity-feed' | 'table' | 'feature-grid' | 'testimonial' | 'timeline' | 'progress-ring' | 'metric-comparison' | 'image' | 'video' | 'iframe' | 'markdown' | 'custom-html';
1264
+ type WidgetSize = 'small' | 'medium' | 'large';
1265
+ interface WidgetPosition {
1266
+ x: number;
1267
+ y: number;
1268
+ w: number;
1269
+ h: number;
1270
+ }
1271
+ interface WidgetConfig {
1272
+ id: string;
1273
+ type: WidgetType;
1274
+ title: string;
1275
+ size: WidgetSize;
1276
+ position: WidgetPosition;
1277
+ props: Record<string, any>;
1278
+ visible: boolean;
1279
+ }
1280
+ interface OverviewConfig {
1281
+ widgets: WidgetConfig[];
1282
+ theme?: PageTheme;
1283
+ layout?: {
1284
+ columns?: number;
1285
+ gap?: number;
1286
+ };
1287
+ }
1288
+ interface ThemeStyle {
1289
+ primaryColor?: string;
1290
+ secondaryColor?: string;
1291
+ backgroundColor?: string;
1292
+ textColor?: string;
1293
+ borderRadius?: string;
1294
+ spacing?: string;
1295
+ }
1296
+ interface PageTheme {
1297
+ name: string;
1298
+ styles: ThemeStyle;
1299
+ }
1300
+ declare const widgetSizeMap: {
1301
+ small: number;
1302
+ medium: number;
1303
+ large: number;
1304
+ };
1305
+ declare const widgetHeightMap: Record<WidgetType, number>;
1306
+ declare const themePresets: Record<string, PageTheme>;
1307
+
1308
+ export { AdvancedChart, AdvancedForm, Announcer, AudioController, AutocompleteInput, Avatar, BackgroundEffects, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ChapterOutline, Chart, ConfirmDialog, DataTable, DatePicker, DragSort, EmptyState, EnhancedMagneticButton, EpicRatingEffect, FadeIn, FileUpload, FocusTrap, Footer, FormField, FormSection, GlobalEffects, GlobalSearch, Grid, HoverCard, IconText, InfiniteScroll, Input, Layout, LoadingAnimation, Magnetic, MagneticButton, MarkdownPreviewComponent as MarkdownPreview, MarkdownRenderer, Modal, PremiumOnboarding as OnboardingGuide, PageContainer, PageHeader, PageTurner, ParticleBackground, PasswordStrength, PlotManager, Popover, PositionedToast, PremiumOnboarding, ProgressBar, ProgressIndicator, Pulse, Ripple, ScrollReveal, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Sidebar, Skeleton, SkipLink, Slider, StaggeredList, StatCard, Stepper, Switch, Tabs, Timeline, Tooltip, Typewriter, TypewriterMarkdown, VirtualList, Wave, audioManager, cn, createThemeAwareStyles, getCurrentTheme, getCurrentThemeMode, getThemeClasses, getThemeColors, playClickSound, playErrorSound, playHoverSound, playInfoSound, playMagicSound, playPageTransitionSound, playParticleSound, playSuccessSound, playWarningSound, setAudioEnabled, setAudioVolume, setCustomThemeColor, setTheme, themePresets, useTheme, widgetHeightMap, widgetSizeMap };
1309
+ export type { ButtonProps, CardProps, FooterProps, GlobalSearchProps, InputProps, NavigationItem, OverviewConfig, PageTheme, SearchResult, SidebarProps, ThemeStyle, WidgetConfig, WidgetPosition, WidgetSize, WidgetType };