@marcoschwartz/lite-ui 0.20.0 → 0.22.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.
package/dist/index.d.mts CHANGED
@@ -486,97 +486,298 @@ interface VideoPlayerProps {
486
486
  }
487
487
  declare const VideoPlayer: React.FC<VideoPlayerProps>;
488
488
 
489
+ interface TooltipPayloadItem {
490
+ name: string;
491
+ value: number | string;
492
+ color?: string;
493
+ dataKey?: string;
494
+ payload?: Record<string, unknown>;
495
+ }
496
+ interface TooltipProps {
497
+ /** Whether the tooltip is currently active/visible */
498
+ active?: boolean;
499
+ /** The label for the tooltip (usually x-axis value) */
500
+ label?: string | number;
501
+ /** Array of data items to display */
502
+ payload?: TooltipPayloadItem[];
503
+ /** Custom content renderer */
504
+ content?: React.FC<TooltipProps> | React.ReactElement;
505
+ /** X position in pixels */
506
+ x?: number;
507
+ /** Y position in pixels */
508
+ y?: number;
509
+ /** Offset from cursor position */
510
+ offset?: number;
511
+ /** Custom formatter for values */
512
+ formatter?: (value: number | string, name: string, payload: TooltipPayloadItem) => string;
513
+ /** Custom formatter for labels */
514
+ labelFormatter?: (label: string | number) => string;
515
+ /** Custom CSS class */
516
+ className?: string;
517
+ /** Container bounds for positioning */
518
+ containerBounds?: {
519
+ width: number;
520
+ height: number;
521
+ };
522
+ /** Animation duration in ms (0 to disable) */
523
+ animationDuration?: number;
524
+ }
525
+ declare const ChartTooltip: React.FC<TooltipProps>;
526
+ interface UseTooltipReturn {
527
+ tooltipData: {
528
+ active: boolean;
529
+ x: number;
530
+ y: number;
531
+ label?: string | number;
532
+ payload?: TooltipPayloadItem[];
533
+ };
534
+ showTooltip: (data: {
535
+ x: number;
536
+ y: number;
537
+ label?: string | number;
538
+ payload?: TooltipPayloadItem[];
539
+ }) => void;
540
+ hideTooltip: () => void;
541
+ updatePosition: (x: number, y: number) => void;
542
+ }
543
+ declare function useTooltip(): UseTooltipReturn;
544
+
489
545
  interface LineChartDataPoint {
490
- x: string | number;
546
+ x: string | number | Date;
491
547
  y: number;
548
+ [key: string]: unknown;
492
549
  }
493
550
  interface LineChartSeries {
494
551
  name: string;
495
552
  data: LineChartDataPoint[];
496
553
  color?: string;
554
+ strokeWidth?: number;
555
+ type?: 'linear' | 'monotone' | 'step' | 'stepBefore' | 'stepAfter';
556
+ dot?: boolean;
557
+ activeDot?: boolean;
558
+ connectNulls?: boolean;
497
559
  }
498
560
  interface LineChartProps {
561
+ /** Chart data - array of series */
499
562
  data: LineChartSeries[];
563
+ /** Chart width in pixels (or use ResponsiveContainer) */
500
564
  width?: number;
565
+ /** Chart height in pixels (or use ResponsiveContainer) */
501
566
  height?: number;
502
- aspectRatio?: number;
503
- responsive?: boolean;
567
+ /** Padding inside the chart */
568
+ padding?: {
569
+ top?: number;
570
+ right?: number;
571
+ bottom?: number;
572
+ left?: number;
573
+ };
574
+ /** Show grid lines */
504
575
  showGrid?: boolean;
576
+ /** Show X axis */
505
577
  showXAxis?: boolean;
578
+ /** Show Y axis */
506
579
  showYAxis?: boolean;
580
+ /** Show legend */
507
581
  showLegend?: boolean;
582
+ /** Show tooltip on hover */
508
583
  showTooltip?: boolean;
584
+ /** Show dots on data points */
509
585
  showDots?: boolean;
510
- curved?: boolean;
511
- strokeWidth?: number;
512
- className?: string;
586
+ /** Animate on load and data change */
587
+ animate?: boolean;
588
+ /** Animation duration in ms */
589
+ animationDuration?: number;
590
+ /** X axis label */
513
591
  xAxisLabel?: string;
592
+ /** Y axis label */
514
593
  yAxisLabel?: string;
515
- baseFontSize?: number;
594
+ /** Number of Y axis ticks */
595
+ yAxisTickCount?: number;
596
+ /** Custom Y axis domain [min, max] */
597
+ yDomain?: [number, number];
598
+ /** Custom X axis formatter */
599
+ formatXValue?: (value: string | number | Date) => string;
600
+ /** Custom Y axis formatter */
601
+ formatYValue?: (value: number) => string;
602
+ /** Custom tooltip formatter */
603
+ tooltipFormatter?: (value: number | string, name: string, payload: TooltipPayloadItem) => string;
604
+ /** Custom tooltip label formatter */
605
+ tooltipLabelFormatter?: (label: string | number) => string;
606
+ /** Custom tooltip content component */
607
+ tooltipContent?: React.FC<any>;
608
+ /** Click handler for data points */
609
+ onPointClick?: (data: LineChartDataPoint, seriesIndex: number, pointIndex: number) => void;
610
+ /** Hover handler for data points */
611
+ onPointHover?: (data: LineChartDataPoint | null, seriesIndex: number, pointIndex: number) => void;
612
+ /** Show crosshair on hover */
613
+ showCrosshair?: boolean;
614
+ /** Show value labels at end of lines */
615
+ showValueLabels?: boolean;
616
+ /** Custom CSS class */
617
+ className?: string;
618
+ /** Chart children (ReferenceLine, ReferenceArea, etc.) */
619
+ children?: React.ReactNode;
620
+ /** Custom colors array */
621
+ colors?: string[];
622
+ /** ARIA label for accessibility */
623
+ ariaLabel?: string;
516
624
  }
517
625
  declare const LineChart: React.FC<LineChartProps>;
518
626
 
519
627
  interface BarChartDataPoint {
520
628
  x: string | number;
521
629
  y: number;
630
+ [key: string]: unknown;
522
631
  }
523
632
  interface BarChartSeries {
524
633
  name: string;
525
634
  data: BarChartDataPoint[];
526
635
  color?: string;
636
+ radius?: number;
527
637
  }
528
638
  interface BarChartProps {
639
+ /** Chart data - array of series */
529
640
  data: BarChartSeries[];
641
+ /** Chart width in pixels */
530
642
  width?: number;
643
+ /** Chart height in pixels */
531
644
  height?: number;
532
- aspectRatio?: number;
533
- responsive?: boolean;
645
+ /** Padding inside the chart */
646
+ padding?: {
647
+ top?: number;
648
+ right?: number;
649
+ bottom?: number;
650
+ left?: number;
651
+ };
652
+ /** Show grid lines */
534
653
  showGrid?: boolean;
654
+ /** Show X axis */
535
655
  showXAxis?: boolean;
656
+ /** Show Y axis */
536
657
  showYAxis?: boolean;
658
+ /** Show legend */
537
659
  showLegend?: boolean;
660
+ /** Show tooltip on hover */
538
661
  showTooltip?: boolean;
662
+ /** Show values on top of bars */
539
663
  showValues?: boolean;
664
+ /** Stack bars on top of each other */
540
665
  stacked?: boolean;
666
+ /** Horizontal bar orientation */
541
667
  horizontal?: boolean;
542
- barWidth?: number;
543
- className?: string;
668
+ /** Bar corner radius */
669
+ barRadius?: number;
670
+ /** Gap between bar groups (0-1) */
671
+ barGap?: number;
672
+ /** Gap between bars in a group (0-1) */
673
+ barCategoryGap?: number;
674
+ /** Animate on load */
675
+ animate?: boolean;
676
+ /** Animation duration in ms */
677
+ animationDuration?: number;
678
+ /** X axis label */
544
679
  xAxisLabel?: string;
680
+ /** Y axis label */
545
681
  yAxisLabel?: string;
546
- baseFontSize?: number;
682
+ /** Number of Y axis ticks */
683
+ yAxisTickCount?: number;
684
+ /** Custom Y axis domain */
685
+ yDomain?: [number, number];
686
+ /** Custom Y axis formatter */
687
+ formatYValue?: (value: number) => string;
688
+ /** Custom tooltip formatter */
689
+ tooltipFormatter?: (value: number | string, name: string, payload: TooltipPayloadItem) => string;
690
+ /** Click handler for bars */
691
+ onBarClick?: (data: BarChartDataPoint, seriesIndex: number, barIndex: number) => void;
692
+ /** Hover handler for bars */
693
+ onBarHover?: (data: BarChartDataPoint | null, seriesIndex: number, barIndex: number) => void;
694
+ /** Custom CSS class */
695
+ className?: string;
696
+ /** Chart children (ReferenceLine, etc.) */
697
+ children?: React.ReactNode;
698
+ /** Custom colors array */
547
699
  colors?: string[];
700
+ /** ARIA label for accessibility */
701
+ ariaLabel?: string;
548
702
  }
549
703
  declare const BarChart: React.FC<BarChartProps>;
550
704
 
551
705
  interface AreaChartDataPoint {
552
- x: string | number;
706
+ x: string | number | Date;
553
707
  y: number;
708
+ [key: string]: unknown;
554
709
  }
555
710
  interface AreaChartSeries {
556
711
  name: string;
557
712
  data: AreaChartDataPoint[];
558
713
  color?: string;
714
+ fillOpacity?: number;
715
+ strokeWidth?: number;
716
+ type?: 'linear' | 'monotone';
717
+ dot?: boolean;
559
718
  }
560
719
  interface AreaChartProps {
720
+ /** Chart data - array of series */
561
721
  data: AreaChartSeries[];
722
+ /** Chart width in pixels */
562
723
  width?: number;
724
+ /** Chart height in pixels */
563
725
  height?: number;
564
- aspectRatio?: number;
565
- responsive?: boolean;
726
+ /** Padding inside the chart */
727
+ padding?: {
728
+ top?: number;
729
+ right?: number;
730
+ bottom?: number;
731
+ left?: number;
732
+ };
733
+ /** Show grid lines */
566
734
  showGrid?: boolean;
735
+ /** Show X axis */
567
736
  showXAxis?: boolean;
737
+ /** Show Y axis */
568
738
  showYAxis?: boolean;
739
+ /** Show legend */
569
740
  showLegend?: boolean;
741
+ /** Show tooltip on hover */
570
742
  showTooltip?: boolean;
743
+ /** Show dots on data points */
571
744
  showDots?: boolean;
572
- curved?: boolean;
745
+ /** Stack areas on top of each other */
573
746
  stacked?: boolean;
747
+ /** Default fill opacity for areas */
574
748
  fillOpacity?: number;
575
- strokeWidth?: number;
576
- className?: string;
749
+ /** Use curved/smooth lines (shorthand for all series) */
750
+ curved?: boolean;
751
+ /** Animate on load */
752
+ animate?: boolean;
753
+ /** Animation duration in ms */
754
+ animationDuration?: number;
755
+ /** X axis label */
577
756
  xAxisLabel?: string;
757
+ /** Y axis label */
578
758
  yAxisLabel?: string;
579
- baseFontSize?: number;
759
+ /** Number of Y axis ticks */
760
+ yAxisTickCount?: number;
761
+ /** Custom Y axis domain */
762
+ yDomain?: [number, number];
763
+ /** Custom X axis formatter */
764
+ formatXValue?: (value: string | number | Date) => string;
765
+ /** Custom Y axis formatter */
766
+ formatYValue?: (value: number) => string;
767
+ /** Custom tooltip formatter */
768
+ tooltipFormatter?: (value: number | string, name: string, payload: TooltipPayloadItem) => string;
769
+ /** Click handler for data points */
770
+ onPointClick?: (data: AreaChartDataPoint, seriesIndex: number, pointIndex: number) => void;
771
+ /** Hover handler for data points */
772
+ onPointHover?: (data: AreaChartDataPoint | null, seriesIndex: number, pointIndex: number) => void;
773
+ /** Custom CSS class */
774
+ className?: string;
775
+ /** Chart children (ReferenceLine, etc.) */
776
+ children?: React.ReactNode;
777
+ /** Custom colors array */
778
+ colors?: string[];
779
+ /** ARIA label for accessibility */
780
+ ariaLabel?: string;
580
781
  }
581
782
  declare const AreaChart: React.FC<AreaChartProps>;
582
783
 
@@ -584,24 +785,397 @@ interface PieChartDataPoint {
584
785
  label: string;
585
786
  value: number;
586
787
  color?: string;
788
+ [key: string]: unknown;
587
789
  }
588
790
  interface PieChartProps {
791
+ /** Chart data - array of slices */
589
792
  data: PieChartDataPoint[];
793
+ /** Chart width in pixels */
590
794
  width?: number;
795
+ /** Chart height in pixels */
591
796
  height?: number;
592
- aspectRatio?: number;
593
- responsive?: boolean;
797
+ /** Inner radius for donut chart (0 for pie) */
798
+ innerRadius?: number;
799
+ /** Outer radius */
800
+ outerRadius?: number;
801
+ /** Enable donut mode (sets default inner radius) */
802
+ donut?: boolean;
803
+ /** Padding angle between slices (degrees) */
804
+ paddingAngle?: number;
805
+ /** Start angle (degrees, 0 = top) */
806
+ startAngle?: number;
807
+ /** End angle (degrees) */
808
+ endAngle?: number;
809
+ /** Show legend */
594
810
  showLegend?: boolean;
811
+ /** Show tooltip on hover */
812
+ showTooltip?: boolean;
813
+ /** Show labels on slices */
595
814
  showLabels?: boolean;
596
- showValues?: boolean;
815
+ /** Label type */
816
+ labelType?: 'percent' | 'value' | 'name' | 'custom';
817
+ /** Custom label formatter */
818
+ labelFormatter?: (data: PieChartDataPoint, percent: number) => string;
819
+ /** Show percentages in labels */
597
820
  showPercentages?: boolean;
598
- donut?: boolean;
599
- donutWidth?: number;
821
+ /** Minimum percentage to show label */
822
+ minLabelPercent?: number;
823
+ /** Animate on load */
824
+ animate?: boolean;
825
+ /** Animation duration in ms */
826
+ animationDuration?: number;
827
+ /** Center label (for donut charts) */
828
+ centerLabel?: string | React.ReactNode;
829
+ /** Center value (for donut charts) */
830
+ centerValue?: string | number;
831
+ /** Custom tooltip formatter */
832
+ tooltipFormatter?: (value: number | string, name: string, payload: TooltipPayloadItem) => string;
833
+ /** Click handler for slices */
834
+ onSliceClick?: (data: PieChartDataPoint, index: number) => void;
835
+ /** Hover handler for slices */
836
+ onSliceHover?: (data: PieChartDataPoint | null, index: number) => void;
837
+ /** Custom CSS class */
600
838
  className?: string;
601
- baseFontSize?: number;
839
+ /** Custom colors array */
840
+ colors?: string[];
841
+ /** ARIA label for accessibility */
842
+ ariaLabel?: string;
602
843
  }
603
844
  declare const PieChart: React.FC<PieChartProps>;
604
845
 
846
+ interface ScatterChartDataPoint {
847
+ x: number;
848
+ y: number;
849
+ z?: number;
850
+ label?: string;
851
+ [key: string]: unknown;
852
+ }
853
+ interface ScatterChartSeries {
854
+ name: string;
855
+ data: ScatterChartDataPoint[];
856
+ color?: string;
857
+ shape?: 'circle' | 'square' | 'triangle' | 'diamond';
858
+ size?: number;
859
+ }
860
+ interface ScatterChartProps {
861
+ /** Chart data - array of series */
862
+ data: ScatterChartSeries[];
863
+ /** Chart width in pixels */
864
+ width?: number;
865
+ /** Chart height in pixels */
866
+ height?: number;
867
+ /** Padding inside the chart */
868
+ padding?: {
869
+ top?: number;
870
+ right?: number;
871
+ bottom?: number;
872
+ left?: number;
873
+ };
874
+ /** Show grid lines */
875
+ showGrid?: boolean;
876
+ /** Show X axis */
877
+ showXAxis?: boolean;
878
+ /** Show Y axis */
879
+ showYAxis?: boolean;
880
+ /** Show legend */
881
+ showLegend?: boolean;
882
+ /** Show tooltip on hover */
883
+ showTooltip?: boolean;
884
+ /** Enable bubble mode (size based on z value) */
885
+ bubble?: boolean;
886
+ /** Min bubble size */
887
+ minBubbleSize?: number;
888
+ /** Max bubble size */
889
+ maxBubbleSize?: number;
890
+ /** Default point size */
891
+ pointSize?: number;
892
+ /** Animate on load */
893
+ animate?: boolean;
894
+ /** Animation duration in ms */
895
+ animationDuration?: number;
896
+ /** X axis label */
897
+ xAxisLabel?: string;
898
+ /** Y axis label */
899
+ yAxisLabel?: string;
900
+ /** Number of X axis ticks */
901
+ xAxisTickCount?: number;
902
+ /** Number of Y axis ticks */
903
+ yAxisTickCount?: number;
904
+ /** Custom X axis domain */
905
+ xDomain?: [number, number];
906
+ /** Custom Y axis domain */
907
+ yDomain?: [number, number];
908
+ /** Custom X axis formatter */
909
+ formatXValue?: (value: number) => string;
910
+ /** Custom Y axis formatter */
911
+ formatYValue?: (value: number) => string;
912
+ /** Custom tooltip formatter */
913
+ tooltipFormatter?: (value: number | string, name: string, payload: TooltipPayloadItem) => string;
914
+ /** Click handler for points */
915
+ onPointClick?: (data: ScatterChartDataPoint, seriesIndex: number, pointIndex: number) => void;
916
+ /** Hover handler for points */
917
+ onPointHover?: (data: ScatterChartDataPoint | null, seriesIndex: number, pointIndex: number) => void;
918
+ /** Show trend line */
919
+ showTrendLine?: boolean;
920
+ /** Custom CSS class */
921
+ className?: string;
922
+ /** Chart children (ReferenceLine, etc.) */
923
+ children?: React.ReactNode;
924
+ /** Custom colors array */
925
+ colors?: string[];
926
+ /** ARIA label for accessibility */
927
+ ariaLabel?: string;
928
+ }
929
+ declare const ScatterChart: React.FC<ScatterChartProps>;
930
+
931
+ interface ResponsiveContainerProps {
932
+ /** Width of the container. Can be number (px) or string (%, auto) */
933
+ width?: number | string;
934
+ /** Height of the container. Can be number (px) or string (%, auto) */
935
+ height?: number | string;
936
+ /** Aspect ratio (width/height) - used when height is not specified */
937
+ aspect?: number;
938
+ /** Minimum width in pixels */
939
+ minWidth?: number;
940
+ /** Minimum height in pixels */
941
+ minHeight?: number;
942
+ /** Maximum width in pixels */
943
+ maxWidth?: number;
944
+ /** Maximum height in pixels */
945
+ maxHeight?: number;
946
+ /** Debounce resize events (ms) */
947
+ debounce?: number;
948
+ /** Additional CSS class */
949
+ className?: string;
950
+ /** Children - should be a single chart element */
951
+ children: React.ReactElement;
952
+ /** Callback when dimensions change */
953
+ onResize?: (width: number, height: number) => void;
954
+ }
955
+ declare const ResponsiveContainer: React.FC<ResponsiveContainerProps>;
956
+
957
+ interface LegendItem {
958
+ name: string;
959
+ color: string;
960
+ type?: 'line' | 'square' | 'circle' | 'rect';
961
+ inactive?: boolean;
962
+ }
963
+ interface LegendProps {
964
+ /** Legend items to display */
965
+ items?: LegendItem[];
966
+ /** Legend layout direction */
967
+ layout?: 'horizontal' | 'vertical';
968
+ /** Alignment */
969
+ align?: 'left' | 'center' | 'right';
970
+ /** Vertical alignment */
971
+ verticalAlign?: 'top' | 'middle' | 'bottom';
972
+ /** Icon size */
973
+ iconSize?: number;
974
+ /** Custom formatter for legend text */
975
+ formatter?: (value: string, entry: LegendItem, index: number) => React.ReactNode;
976
+ /** Click handler */
977
+ onClick?: (item: LegendItem, index: number) => void;
978
+ /** Mouse enter handler */
979
+ onMouseEnter?: (item: LegendItem, index: number) => void;
980
+ /** Mouse leave handler */
981
+ onMouseLeave?: () => void;
982
+ /** Custom CSS class */
983
+ className?: string;
984
+ /** Wrapper style */
985
+ wrapperStyle?: React.CSSProperties;
986
+ }
987
+ declare const Legend: React.FC<LegendProps>;
988
+
989
+ interface ReferenceLineProps {
990
+ /** X-axis value for vertical line */
991
+ x?: number | string | Date;
992
+ /** Y-axis value for horizontal line */
993
+ y?: number;
994
+ /** Line stroke color */
995
+ stroke?: string;
996
+ /** Line stroke width */
997
+ strokeWidth?: number;
998
+ /** Line dash pattern (e.g., "5 5") */
999
+ strokeDasharray?: string;
1000
+ /** Label text */
1001
+ label?: string | React.ReactNode;
1002
+ /** Label position */
1003
+ labelPosition?: 'start' | 'middle' | 'end' | 'insideStart' | 'insideEnd';
1004
+ /** Custom CSS class for the line */
1005
+ className?: string;
1006
+ /** If true, the line extends to the edge of the chart */
1007
+ ifOverflow?: 'hidden' | 'visible' | 'extendDomain';
1008
+ /** Internal - chart dimensions (injected by parent) */
1009
+ _chartDimensions?: {
1010
+ width: number;
1011
+ height: number;
1012
+ padding: {
1013
+ top: number;
1014
+ right: number;
1015
+ bottom: number;
1016
+ left: number;
1017
+ };
1018
+ };
1019
+ /** Internal - scale functions (injected by parent) */
1020
+ _scales?: {
1021
+ xScale: (value: number | string | Date) => number;
1022
+ yScale: (value: number) => number;
1023
+ };
1024
+ }
1025
+ declare const ReferenceLine: React.FC<ReferenceLineProps>;
1026
+
1027
+ interface ReferenceAreaProps {
1028
+ /** Start X value (for vertical bands) */
1029
+ x1?: number | string | Date;
1030
+ /** End X value (for vertical bands) */
1031
+ x2?: number | string | Date;
1032
+ /** Start Y value (for horizontal bands) */
1033
+ y1?: number;
1034
+ /** End Y value (for horizontal bands) */
1035
+ y2?: number;
1036
+ /** Fill color */
1037
+ fill?: string;
1038
+ /** Fill opacity (0-1) */
1039
+ fillOpacity?: number;
1040
+ /** Stroke color */
1041
+ stroke?: string;
1042
+ /** Stroke width */
1043
+ strokeWidth?: number;
1044
+ /** Label text */
1045
+ label?: string | React.ReactNode;
1046
+ /** Label position */
1047
+ labelPosition?: 'center' | 'top' | 'bottom' | 'left' | 'right' | 'insideTop' | 'insideBottom';
1048
+ /** Custom CSS class */
1049
+ className?: string;
1050
+ /** If true, area clips to chart bounds */
1051
+ ifOverflow?: 'hidden' | 'visible';
1052
+ /** Internal - chart dimensions (injected by parent) */
1053
+ _chartDimensions?: {
1054
+ width: number;
1055
+ height: number;
1056
+ padding: {
1057
+ top: number;
1058
+ right: number;
1059
+ bottom: number;
1060
+ left: number;
1061
+ };
1062
+ };
1063
+ /** Internal - scale functions (injected by parent) */
1064
+ _scales?: {
1065
+ xScale: (value: number | string | Date) => number;
1066
+ yScale: (value: number) => number;
1067
+ };
1068
+ }
1069
+ declare const ReferenceArea: React.FC<ReferenceAreaProps>;
1070
+
1071
+ interface CartesianGridProps {
1072
+ /** Show horizontal grid lines */
1073
+ horizontal?: boolean;
1074
+ /** Show vertical grid lines */
1075
+ vertical?: boolean;
1076
+ /** Stroke color */
1077
+ stroke?: string;
1078
+ /** Stroke dash array (e.g., "3 3") */
1079
+ strokeDasharray?: string;
1080
+ /** Stroke width */
1081
+ strokeWidth?: number;
1082
+ /** Stroke opacity */
1083
+ strokeOpacity?: number;
1084
+ /** Custom horizontal line positions */
1085
+ horizontalPoints?: number[];
1086
+ /** Custom vertical line positions */
1087
+ verticalPoints?: number[];
1088
+ /** Custom CSS class */
1089
+ className?: string;
1090
+ /** Internal - chart dimensions (injected by parent) */
1091
+ _chartDimensions?: {
1092
+ width: number;
1093
+ height: number;
1094
+ };
1095
+ }
1096
+ declare const CartesianGrid: React.FC<CartesianGridProps>;
1097
+
1098
+ declare const CHART_DEFAULTS: {
1099
+ readonly viewBox: {
1100
+ readonly width: 1000;
1101
+ readonly height: 600;
1102
+ readonly pieSize: 600;
1103
+ };
1104
+ readonly padding: {
1105
+ readonly top: 40;
1106
+ readonly right: 40;
1107
+ readonly bottom: 60;
1108
+ readonly left: 60;
1109
+ };
1110
+ readonly fontSize: {
1111
+ readonly gridLabel: 12;
1112
+ readonly axisLabel: 14;
1113
+ readonly title: 16;
1114
+ readonly tooltip: 12;
1115
+ };
1116
+ readonly colors: readonly ["#3b82f6", "#10b981", "#f59e0b", "#ef4444", "#8b5cf6", "#ec4899", "#06b6d4", "#f97316", "#84cc16", "#6366f1"];
1117
+ readonly animation: {
1118
+ readonly duration: 300;
1119
+ readonly easing: "ease-out";
1120
+ };
1121
+ readonly grid: {
1122
+ readonly strokeDasharray: "3 3";
1123
+ readonly strokeWidth: 1;
1124
+ };
1125
+ readonly line: {
1126
+ readonly strokeWidth: 2;
1127
+ readonly dotRadius: 4;
1128
+ readonly activeDotRadius: 6;
1129
+ };
1130
+ readonly bar: {
1131
+ readonly radius: 4;
1132
+ readonly gap: 0.1;
1133
+ };
1134
+ readonly tooltip: {
1135
+ readonly offset: 10;
1136
+ };
1137
+ };
1138
+
1139
+ interface HeatmapDataPoint {
1140
+ x: string | number;
1141
+ y: string | number;
1142
+ value: number;
1143
+ }
1144
+ interface HeatmapProps {
1145
+ data: HeatmapDataPoint[];
1146
+ xLabels?: string[];
1147
+ yLabels?: string[];
1148
+ colorScale?: 'blue' | 'green' | 'red' | 'purple' | 'orange' | 'gray';
1149
+ minValue?: number;
1150
+ maxValue?: number;
1151
+ showValues?: boolean;
1152
+ showTooltip?: boolean;
1153
+ cellSize?: number;
1154
+ cellGap?: number;
1155
+ className?: string;
1156
+ onCellClick?: (point: HeatmapDataPoint) => void;
1157
+ formatValue?: (value: number) => string;
1158
+ formatTooltip?: (point: HeatmapDataPoint) => string;
1159
+ }
1160
+ declare const Heatmap: React.FC<HeatmapProps>;
1161
+ interface CalendarHeatmapProps {
1162
+ data: {
1163
+ date: Date | string;
1164
+ value: number;
1165
+ }[];
1166
+ startDate?: Date;
1167
+ endDate?: Date;
1168
+ colorScale?: 'blue' | 'green' | 'red' | 'purple' | 'orange' | 'gray';
1169
+ showMonthLabels?: boolean;
1170
+ showDayLabels?: boolean;
1171
+ cellSize?: number;
1172
+ cellGap?: number;
1173
+ className?: string;
1174
+ onCellClick?: (date: Date, value: number) => void;
1175
+ formatTooltip?: (date: Date, value: number) => string;
1176
+ }
1177
+ declare const CalendarHeatmap: React.FC<CalendarHeatmapProps>;
1178
+
605
1179
  type ThemeName = 'default' | 'minimalistic';
606
1180
  interface ButtonTheme {
607
1181
  primary: string;
@@ -811,4 +1385,4 @@ declare const YouTubeIcon: IconComponent;
811
1385
 
812
1386
  declare const SlackIcon: IconComponent;
813
1387
 
814
- export { ActionMenu, type ActionMenuItem, type ActionMenuProps, Alert, AlertCircleIcon, type AlertProps, AppShell, type AppShellProps, AppleIcon, AreaChart, type AreaChartDataPoint, type AreaChartProps, type AreaChartSeries, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpIcon, AudioPlayer, type AudioPlayerProps, Avatar, type AvatarProps, Badge, type BadgeProps, BarChart, type BarChartDataPoint, type BarChartProps, type BarChartSeries, BeakerIcon, BellIcon, BookIcon, BrainIcon, Button, type ButtonProps, type ButtonTheme, Calendar, CalendarIcon, type CalendarProps, CameraIcon, Card, type CardProps, type Chapter, ChatIcon, CheckCircleIcon, CheckIcon, Checkbox, type CheckboxProps, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseIcon, CloudIcon, CodeIcon, type ColorMode, type Column, CopyIcon, DatabaseIcon, DatePicker, type DatePickerProps, DateTimePicker, type DateTimePickerProps, Divider, type DividerProps, DownloadIcon, Drawer, type DrawerProps, EditIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FacebookIcon, FileIcon, FileUpload, type FileUploadProps, FolderIcon, FullscreenExitIcon, FullscreenIcon, GitHubIcon, GlobeIcon, GoogleIcon, HeartIcon, HomeIcon, type IconComponent, type IconProps, ImageIcon, InfoCircleIcon, KeyIcon, LineChart, type LineChartDataPoint, type LineChartProps, type LineChartSeries, LinkedInIcon, LockIcon, MailIcon, MenuIcon, Modal, type ModalProps, Navbar, type NavbarProps, NumberInput, type NumberInputProps, Pagination, type PaginationProps, PauseIcon, PieChart, type PieChartDataPoint, type PieChartProps, PlayIcon, PlugIcon, PlusIcon, ProgressBar, type ProgressBarProps, Radio, type RadioOption, type RadioProps, RefreshIcon, RichTextEditor, type RichTextEditorProps, SaveIcon, SearchIcon, Select, type SelectOption, type SelectProps, type SelectTheme, SettingsIcon, ShieldIcon, Sidebar, type SidebarContextValue, type SidebarProps, SidebarProvider, type SidebarProviderProps, SkipBackIcon, SkipForwardIcon, SlackIcon, Slider, type SliderProps, SparklesIcon, Spinner, type SpinnerProps, StarIcon, type Step, Stepper, type StepperProps, StopIcon, type Tab, Table, type TableProps, Tabs, type TabsProps, TerminalIcon, TextInput, type TextInputProps, Textarea, type TextareaProps, type Theme, type ThemeName, ThemeProvider, TimePicker, type TimePickerProps, type Toast, ToastProvider, type ToastProviderProps, Toggle, type ToggleProps, TrashIcon, TwitterIcon, UploadIcon, UserIcon, VideoPlayer, type VideoPlayerProps, VolumeOffIcon, VolumeUpIcon, YouTubeIcon, getThemeScript, themeScript, themes, toast, useSidebar, useTheme, useToast };
1388
+ export { ActionMenu, type ActionMenuItem, type ActionMenuProps, Alert, AlertCircleIcon, type AlertProps, AppShell, type AppShellProps, AppleIcon, AreaChart, type AreaChartDataPoint, type AreaChartProps, type AreaChartSeries, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpIcon, AudioPlayer, type AudioPlayerProps, Avatar, type AvatarProps, Badge, type BadgeProps, BarChart, type BarChartDataPoint, type BarChartProps, type BarChartSeries, BeakerIcon, BellIcon, BookIcon, BrainIcon, Button, type ButtonProps, type ButtonTheme, CHART_DEFAULTS, Calendar, CalendarHeatmap, type CalendarHeatmapProps, CalendarIcon, type CalendarProps, CameraIcon, Card, type CardProps, CartesianGrid, type CartesianGridProps, type Chapter, ChartTooltip, ChatIcon, CheckCircleIcon, CheckIcon, Checkbox, type CheckboxProps, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CloseIcon, CloudIcon, CodeIcon, type ColorMode, type Column, CopyIcon, DatabaseIcon, DatePicker, type DatePickerProps, DateTimePicker, type DateTimePickerProps, Divider, type DividerProps, DownloadIcon, Drawer, type DrawerProps, EditIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FacebookIcon, FileIcon, FileUpload, type FileUploadProps, FolderIcon, FullscreenExitIcon, FullscreenIcon, GitHubIcon, GlobeIcon, GoogleIcon, HeartIcon, Heatmap, type HeatmapDataPoint, type HeatmapProps, HomeIcon, type IconComponent, type IconProps, ImageIcon, InfoCircleIcon, KeyIcon, Legend, type LegendItem, type LegendProps, LineChart, type LineChartDataPoint, type LineChartProps, type LineChartSeries, LinkedInIcon, LockIcon, MailIcon, MenuIcon, Modal, type ModalProps, Navbar, type NavbarProps, NumberInput, type NumberInputProps, Pagination, type PaginationProps, PauseIcon, PieChart, type PieChartDataPoint, type PieChartProps, PlayIcon, PlugIcon, PlusIcon, ProgressBar, type ProgressBarProps, Radio, type RadioOption, type RadioProps, ReferenceArea, type ReferenceAreaProps, ReferenceLine, type ReferenceLineProps, RefreshIcon, ResponsiveContainer, type ResponsiveContainerProps, RichTextEditor, type RichTextEditorProps, SaveIcon, ScatterChart, type ScatterChartDataPoint, type ScatterChartProps, type ScatterChartSeries, SearchIcon, Select, type SelectOption, type SelectProps, type SelectTheme, SettingsIcon, ShieldIcon, Sidebar, type SidebarContextValue, type SidebarProps, SidebarProvider, type SidebarProviderProps, SkipBackIcon, SkipForwardIcon, SlackIcon, Slider, type SliderProps, SparklesIcon, Spinner, type SpinnerProps, StarIcon, type Step, Stepper, type StepperProps, StopIcon, type Tab, Table, type TableProps, Tabs, type TabsProps, TerminalIcon, TextInput, type TextInputProps, Textarea, type TextareaProps, type Theme, type ThemeName, ThemeProvider, TimePicker, type TimePickerProps, type Toast, ToastProvider, type ToastProviderProps, Toggle, type ToggleProps, type TooltipPayloadItem, type TooltipProps, TrashIcon, TwitterIcon, UploadIcon, UserIcon, VideoPlayer, type VideoPlayerProps, VolumeOffIcon, VolumeUpIcon, YouTubeIcon, getThemeScript, themeScript, themes, toast, useSidebar, useTheme, useToast, useTooltip };