@northslopetech/altitude-ui 2.0.14 → 2.0.17

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
@@ -1,12 +1,16 @@
1
1
  import * as class_variance_authority_types from 'class-variance-authority/types';
2
2
  import * as React from 'react';
3
- import { JSX } from 'react';
3
+ import { JSX, ReactNode } from 'react';
4
4
  import { VariantProps } from 'class-variance-authority';
5
5
  import * as SelectPrimitive from '@radix-ui/react-select';
6
6
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
7
7
  import * as react_jsx_runtime from 'react/jsx-runtime';
8
8
  import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
9
+ import { Table as Table$1 } from '@tanstack/react-table';
9
10
 
11
+ /**
12
+ * Button variant styles.
13
+ */
10
14
  declare const buttonVariants: (props?: ({
11
15
  variant?: "default" | "outline" | "destructive" | "destructive-subtle" | "ghost" | "link" | null | undefined;
12
16
  size?: "default" | "sm" | "lg" | "icon" | null | undefined;
@@ -16,22 +20,47 @@ interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, Var
16
20
  icon?: React.ReactNode;
17
21
  iconPosition?: "left" | "right";
18
22
  }
23
+ /**
24
+ * Button component with multiple variants and sizes.
25
+ * @param {boolean} [props.asChild] - Render as child element (using Radix Slot)
26
+ * @param {React.ReactNode} [props.icon] - Icon element to display
27
+ * @param {"left" | "right"} [props.iconPosition] - Position of icon relative to text
28
+ * @param {string} [props.variant] - Visual style variant
29
+ * @param {string} [props.size] - Button size
30
+ */
19
31
  declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
20
32
 
33
+ /**
34
+ * Typography variant styles using design system tokens.
35
+ */
21
36
  declare const typographyVariants: (props?: ({
22
37
  variant?: "display-xl" | "display-lg" | "display-md" | "display-sm" | "display-xs" | "heading-xl" | "heading-lg" | "heading-md" | "heading-sm" | "heading-xs" | "body-xl" | "body-lg" | "body-md" | "body-sm" | "body-xs" | "label-xl" | "label-xl-bold" | "label-lg" | "label-lg-bold" | "label-md" | "label-md-bold" | "label-sm" | "label-sm-bold" | "label-xs" | "label-xs-bold" | null | undefined;
23
38
  } & class_variance_authority_types.ClassProp) | undefined) => string;
24
39
  interface TypographyProps extends React.HTMLAttributes<HTMLElement>, VariantProps<typeof typographyVariants> {
25
40
  as?: React.ElementType;
26
41
  }
42
+ /**
43
+ * Typography component for rendering text with design system styles.
44
+ * @param {React.ElementType} [props.as] - Custom HTML element to render
45
+ * @param {string} [props.variant] - Typography variant from design tokens
46
+ */
27
47
  declare const Typography: React.ForwardRefExoticComponent<TypographyProps & React.RefAttributes<HTMLElement>>;
28
48
 
49
+ /**
50
+ * Select trigger variant styles.
51
+ */
29
52
  declare const selectTriggerVariants: (props?: ({
30
53
  width?: "default" | "compact" | "fill" | null | undefined;
31
54
  } & class_variance_authority_types.ClassProp) | undefined) => string;
55
+ /**
56
+ * Select content variant styles.
57
+ */
32
58
  declare const selectContentVariants: (props?: ({
33
59
  position?: "popper" | "item-aligned" | null | undefined;
34
60
  } & class_variance_authority_types.ClassProp) | undefined) => string;
61
+ /**
62
+ * Select root component.
63
+ */
35
64
  declare const Select: React.FC<SelectPrimitive.SelectProps>;
36
65
  declare const SelectGroup: React.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React.RefAttributes<HTMLDivElement>>;
37
66
  declare const SelectValue: React.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React.RefAttributes<HTMLSpanElement>>;
@@ -40,6 +69,12 @@ interface SelectTriggerProps extends React.ComponentPropsWithoutRef<typeof Selec
40
69
  children?: React.ReactNode;
41
70
  width?: "default" | "fill" | "compact";
42
71
  }
72
+ /**
73
+ * Select trigger button component.
74
+ * @param {string} [props.width] - Width variant (default, fill, or compact)
75
+ * @param {string} [props.className] - Additional CSS classes
76
+ * @param {React.ReactNode} [props.children] - Trigger content
77
+ */
43
78
  declare const SelectTrigger: React.ForwardRefExoticComponent<SelectTriggerProps & React.RefAttributes<HTMLButtonElement>>;
44
79
  declare const SelectScrollUpButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
45
80
  declare const SelectScrollDownButton: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -50,6 +85,10 @@ declare const SelectLabel: React.ForwardRefExoticComponent<Omit<SelectPrimitive.
50
85
  declare const SelectItem: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
51
86
  declare const SelectSeparator: React.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
52
87
 
88
+ /**
89
+ * @fileoverview FormField component for Altitude UI.
90
+ */
91
+
53
92
  interface FormFieldProps {
54
93
  label?: string;
55
94
  helperText?: string;
@@ -60,8 +99,21 @@ interface FormFieldProps {
60
99
  id?: string;
61
100
  compact?: boolean;
62
101
  }
102
+ /**
103
+ * FormField wrapper component for consistent form input styling.
104
+ * @param {string} [props.label] - Field label text
105
+ * @param {string} [props.helperText] - Helper or error message text
106
+ * @param {boolean} [props.error] - Whether field has an error
107
+ * @param {boolean} [props.required] - Whether field is required
108
+ * @param {React.ReactNode} props.children - Form input element
109
+ * @param {boolean} [props.compact] - Use compact layout with floating label
110
+ */
63
111
  declare const FormField: React.ForwardRefExoticComponent<FormFieldProps & React.RefAttributes<HTMLDivElement>>;
64
112
 
113
+ /**
114
+ * @fileoverview DatePicker component for Altitude UI.
115
+ */
116
+
65
117
  interface DatePickerProps {
66
118
  value?: Date;
67
119
  onValueChange?: (date: Date | undefined) => void;
@@ -72,8 +124,21 @@ interface DatePickerProps {
72
124
  minDate?: Date;
73
125
  maxDate?: Date;
74
126
  }
127
+ /**
128
+ * DatePicker component with input field and calendar popover.
129
+ * @param {Date} [props.value] - Controlled date value
130
+ * @param {function} [props.onValueChange] - Callback when date changes
131
+ * @param {Date | string | number} [props.defaultValue] - Default date value
132
+ * @param {boolean} [props.disabled] - Whether picker is disabled
133
+ * @param {string} [props.placeholder] - Input placeholder text
134
+ * @param {Date} [props.minDate] - Minimum selectable date
135
+ * @param {Date} [props.maxDate] - Maximum selectable date
136
+ */
75
137
  declare const DatePicker: React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<HTMLInputElement>>;
76
138
 
139
+ /**
140
+ * Upload variant styles for different states.
141
+ */
77
142
  declare const uploadVariants: (props?: ({
78
143
  state?: "default" | "error" | "dragOver" | "uploading" | "success" | null | undefined;
79
144
  disabled?: boolean | null | undefined;
@@ -88,14 +153,38 @@ interface UploadProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onErro
88
153
  selectedFiles?: File[];
89
154
  maxFileSize?: number;
90
155
  }
156
+ /**
157
+ * Upload component with drag-and-drop functionality.
158
+ * @param {function} [props.onFileSelect] - Callback when files are selected
159
+ * @param {string[]} [props.acceptedFileTypes] - Accepted MIME types
160
+ * @param {boolean} [props.disabled] - Whether upload is disabled
161
+ * @param {string} [props.state] - Current upload state
162
+ * @param {number} [props.progress] - Upload progress percentage (0-100)
163
+ * @param {string} [props.errorMessage] - Error message to display
164
+ * @param {File[]} [props.selectedFiles] - Currently selected files
165
+ * @param {number} [props.maxFileSize] - Maximum file size in bytes
166
+ */
91
167
  declare const Upload: React.ForwardRefExoticComponent<UploadProps & React.RefAttributes<HTMLDivElement>>;
92
168
 
169
+ /**
170
+ * Checkbox variant styles.
171
+ */
93
172
  declare const checkboxVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
94
173
  interface CheckboxProps extends React.ComponentProps<typeof CheckboxPrimitive.Root> {
95
174
  className?: string;
96
175
  }
176
+ /**
177
+ * Checkbox component with Altitude design system styling.
178
+ * @param {boolean} [props.checked] - Controlled checked state
179
+ * @param {function} [props.onCheckedChange] - Callback when checked state changes
180
+ * @param {boolean} [props.disabled] - Whether checkbox is disabled
181
+ * @param {string} [props.className] - Additional CSS classes
182
+ */
97
183
  declare const Checkbox: React.ForwardRefExoticComponent<Omit<CheckboxProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
98
184
 
185
+ /**
186
+ * Input variant styles.
187
+ */
99
188
  declare const inputVariants: (props?: ({
100
189
  variant?: "textarea" | "input" | null | undefined;
101
190
  } & class_variance_authority_types.ClassProp) | undefined) => string;
@@ -105,13 +194,25 @@ interface BaseInputProps extends VariantProps<typeof inputVariants> {
105
194
  onClear?: () => void;
106
195
  showClear?: boolean;
107
196
  }
197
+ /**
198
+ * Props for standard text input variant.
199
+ */
108
200
  interface InputFieldProps extends BaseInputProps, Omit<React.InputHTMLAttributes<HTMLInputElement>, "style"> {
109
201
  variant?: "input";
110
202
  }
203
+ /**
204
+ * Props for textarea variant.
205
+ */
111
206
  interface TextareaFieldProps extends BaseInputProps, Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, "style"> {
112
207
  variant: "textarea";
113
208
  }
209
+ /**
210
+ * Union type of input and textarea props.
211
+ */
114
212
  type InputProps = InputFieldProps | TextareaFieldProps;
213
+ /**
214
+ * Input component function overloads.
215
+ */
115
216
  interface InputComponent {
116
217
  (props: InputFieldProps & {
117
218
  ref?: React.Ref<HTMLInputElement>;
@@ -122,13 +223,23 @@ interface InputComponent {
122
223
  }
123
224
  declare const TypedInput: InputComponent;
124
225
 
226
+ /**
227
+ * Badge variant styles.
228
+ */
125
229
  declare const badgeVariants: (props?: ({
126
230
  variant?: "error" | "warning" | "success" | "primary" | "secondary" | "accent" | "neutral" | null | undefined;
127
231
  } & class_variance_authority_types.ClassProp) | undefined) => string;
128
232
  interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
129
233
  }
234
+ /**
235
+ * Badge component for status and informational labels.
236
+ * @param {string} [props.variant] - Badge color variant
237
+ */
130
238
  declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
131
239
 
240
+ /**
241
+ * Tabs trigger variant styles.
242
+ */
132
243
  declare const tabsVariants: (props?: ({
133
244
  variant?: "default" | null | undefined;
134
245
  } & class_variance_authority_types.ClassProp) | undefined) => string;
@@ -137,6 +248,12 @@ interface TabsProps extends React.HTMLAttributes<HTMLDivElement> {
137
248
  onValueChange: (value: string) => void;
138
249
  variant?: "default";
139
250
  }
251
+ /**
252
+ * Tabs root component.
253
+ * @param {string} props.value - Currently active tab value
254
+ * @param {function} props.onValueChange - Callback when active tab changes
255
+ * @param {string} [props.variant] - Visual variant
256
+ */
140
257
  declare const Tabs: React.ForwardRefExoticComponent<TabsProps & React.RefAttributes<HTMLDivElement>>;
141
258
  interface TabsListProps extends React.HTMLAttributes<HTMLDivElement> {
142
259
  children: React.ReactNode;
@@ -151,10 +268,17 @@ interface TabsContentProps extends React.HTMLAttributes<HTMLDivElement> {
151
268
  }
152
269
  declare const TabsContent: React.ForwardRefExoticComponent<TabsContentProps & React.RefAttributes<HTMLDivElement>>;
153
270
 
271
+ /**
272
+ * DropdownMenu root component.
273
+ */
154
274
  declare const DropdownMenu: React.FC<DropdownMenuPrimitive.DropdownMenuProps>;
155
275
  interface DropdownMenuTriggerProps extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Trigger> {
156
276
  icon?: React.ReactNode;
157
277
  }
278
+ /**
279
+ * DropdownMenuTrigger component.
280
+ * @param {React.ReactNode} [props.icon] - Custom icon element
281
+ */
158
282
  declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
159
283
  declare const DropdownMenuGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
160
284
  declare const DropdownMenuPortal: React.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
@@ -179,15 +303,37 @@ declare const DropdownMenuShortcut: {
179
303
  displayName: string;
180
304
  };
181
305
 
306
+ /**
307
+ * @fileoverview Icon components for Altitude UI.
308
+ */
309
+
310
+ /**
311
+ * Icon color variant type.
312
+ */
182
313
  type IconVariant = "dark" | "light" | "gray" | "error" | "warning";
183
314
  interface IconProps extends React.SVGProps<SVGSVGElement> {
184
315
  className?: string;
185
316
  variant?: IconVariant;
186
317
  }
318
+ /**
319
+ * X (close) icon component.
320
+ */
187
321
  declare const X: React.FC<IconProps>;
322
+ /**
323
+ * Lock icon component.
324
+ */
188
325
  declare const Lock: React.FC<IconProps>;
326
+ /**
327
+ * Check icon component (circle with checkmark).
328
+ */
189
329
  declare const Check: React.FC<IconProps>;
330
+ /**
331
+ * ChevronDown icon component (downward pointing chevron).
332
+ */
190
333
  declare const ChevronDown: React.FC<IconProps>;
334
+ /**
335
+ * ChevronUp icon component (upward pointing chevron).
336
+ */
191
337
  declare const ChevronUp: React.FC<IconProps>;
192
338
  declare const Calendar: React.FC<IconProps>;
193
339
  declare const ChevronLeft: React.FC<IconProps>;
@@ -236,7 +382,7 @@ declare const QuestionCircle: React.FC<IconProps>;
236
382
  declare const Share: React.FC<IconProps>;
237
383
  declare const Star: React.FC<IconProps>;
238
384
  declare const Statement: React.FC<IconProps>;
239
- declare const Table: React.FC<IconProps>;
385
+ declare const TableIcon: React.FC<IconProps>;
240
386
  declare const Trash: React.FC<IconProps>;
241
387
  declare const User: React.FC<IconProps>;
242
388
  declare const UserMulti: React.FC<IconProps>;
@@ -244,4 +390,513 @@ declare const Warning: React.FC<IconProps>;
244
390
  declare const Wrench: React.FC<IconProps>;
245
391
  declare const Logout: React.FC<IconProps>;
246
392
 
247
- export { ArrowDown, ArrowLeft, ArrowRight, ArrowUp, Badge, type BadgeProps, Bell, Bookmark, Button, type ButtonProps, Calendar, CaretDown, CaretLeft, CaretRight, CaretUp, Chat, Check, CheckIcon, Checkbox, type CheckboxProps, CheckmarkCircle, CheckmarkSquare, ChevronDown, ChevronLeft, ChevronRight, ChevronUp, Close, CloseSmall, Cog, Credentials, DatePicker, type DatePickerProps, Doc, Dollar, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, type DropdownMenuTriggerProps, Edit, Envelope, Exclamation, EyeClosed, EyeOpen, Filter, FilterDescending, FormField, type FormFieldProps, GraphBar, GraphDonut, GraphLine, GraphPie, HamburgerMenu, Home, type IconProps, type IconVariant, Information, TypedInput as Input, type InputFieldProps, type InputProps, Location, Lock, Logout, MagnifyingGlass, Minus, MoreMenu, Phone, Plus, QuestionCircle, Select, SelectContent, type SelectContentProps, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, type SelectTriggerProps, SelectValue, Share, Star, Statement, Table, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, type TextareaFieldProps, Trash, Typography, type TypographyProps, Upload, type UploadProps, User, UserMulti, Warning, Wrench, X, badgeVariants, buttonVariants, checkboxVariants, inputVariants, selectTriggerVariants, tabsVariants, typographyVariants, uploadVariants };
393
+ /**
394
+ * @fileoverview Chart utilities for Altitude UI chart components.
395
+ * Provides color palettes, constants, and helper functions for data visualization.
396
+ *
397
+ * All colors reference CSS variables from altitude-tokens for consistent theming.
398
+ *
399
+ */
400
+ /**
401
+ * Chart color scheme mapping keys to color values.
402
+ * Used for creating consistent color schemes across different chart types.
403
+ */
404
+ interface ChartColorScheme {
405
+ [key: string]: string;
406
+ }
407
+ /**
408
+ * Legend item structure for chart legends.
409
+ *
410
+ * @interface LegendItem
411
+ * @property {string} key - Unique identifier for the legend item
412
+ * @property {string} color - Color value (hex or CSS variable)
413
+ * @property {string} [label] - Optional display label (defaults to key if not provided)
414
+ */
415
+ interface LegendItem {
416
+ key: string;
417
+ color: string;
418
+ label?: string;
419
+ }
420
+ /**
421
+ * Chart color constants using CSS variables from altitude-tokens.
422
+ * Provides semantic color names and palette arrays for different chart types.
423
+ *
424
+ * @constant CHART_COLORS
425
+ */
426
+ declare const CHART_COLORS: {
427
+ readonly SUCCESS: "var(--color-success)";
428
+ readonly ERROR: "var(--color-error)";
429
+ readonly WARNING: "var(--color-warning)";
430
+ readonly SECONDARY: "var(--color-secondary)";
431
+ readonly PRIMARY: "var(--color-primary)";
432
+ readonly CATEGORICAL: readonly ["var(--color-chart-color-palette-categorical-1)", "var(--color-chart-color-palette-categorical-2)", "var(--color-chart-color-palette-categorical-3)", "var(--color-chart-color-palette-categorical-4)", "var(--color-chart-color-palette-categorical-5)"];
433
+ readonly PERFORMANCE: readonly ["var(--color-chart-color-palette-performance-1)", "var(--color-chart-color-palette-performance-2)", "var(--color-chart-color-palette-performance-3)", "var(--color-chart-color-palette-performance-4)", "var(--color-chart-color-palette-performance-5)"];
434
+ readonly HEATMAP: readonly ["var(--color-chart-color-palette-heatmap-1)", "var(--color-chart-color-palette-heatmap-2)", "var(--color-chart-color-palette-heatmap-3)", "var(--color-chart-color-palette-heatmap-4)", "var(--color-chart-color-palette-heatmap-5)"];
435
+ };
436
+ /**
437
+ * Pre-defined color schemes for common chart scenarios.
438
+ * Provides consistent color mappings for frequently used chart types.
439
+ *
440
+ * @constant COLOR_SCHEMES
441
+ */
442
+ declare const COLOR_SCHEMES: {
443
+ readonly passFail: {
444
+ readonly PASS: "var(--color-success)";
445
+ readonly FAIL: "var(--color-error)";
446
+ };
447
+ readonly targetVsAchieved: {
448
+ readonly TARGET: "var(--color-secondary)";
449
+ readonly ACHIEVED: "var(--color-success)";
450
+ };
451
+ readonly performance: {
452
+ readonly HIGH: "var(--color-chart-color-palette-performance-1)";
453
+ readonly MEDIUM_HIGH: "var(--color-chart-color-palette-performance-2)";
454
+ readonly MEDIUM: "var(--color-chart-color-palette-performance-3)";
455
+ readonly MEDIUM_LOW: "var(--color-chart-color-palette-performance-4)";
456
+ readonly LOW: "var(--color-chart-color-palette-performance-5)";
457
+ };
458
+ };
459
+ /**
460
+ * Chart dimensions and layout constants for consistent sizing.
461
+ * Defines standard heights, margins, and axis dimensions.
462
+ *
463
+ * @constant CHART_CONSTANTS
464
+ */
465
+ declare const CHART_CONSTANTS: {
466
+ readonly STANDARD_HEIGHT: 400;
467
+ readonly LARGE_HEIGHT: 500;
468
+ readonly SMALL_HEIGHT: 300;
469
+ readonly MARGIN: {
470
+ readonly top: 20;
471
+ readonly right: 30;
472
+ readonly left: 20;
473
+ readonly bottom: 5;
474
+ };
475
+ readonly AXIS_HEIGHT_STANDARD: 30;
476
+ readonly AXIS_HEIGHT_ROTATED: 60;
477
+ readonly AXIS_WIDTH_STANDARD: 60;
478
+ readonly AXIS_WIDTH_YAXIS: 80;
479
+ readonly PIE_CHART_CENTER_X: 300;
480
+ readonly PIE_CHART_CENTER_Y: 200;
481
+ };
482
+ /**
483
+ * Gets a color from the categorical palette by index.
484
+ * Wraps around if index exceeds palette length.
485
+ *
486
+ * @param index - Index of the color to retrieve
487
+ * @returns CSS color value (CSS variable reference)
488
+ *
489
+ * @example
490
+ * ```typescript
491
+ * const color1 = getSeriesColor(0); // First categorical color
492
+ * const color2 = getSeriesColor(1); // Second categorical color
493
+ * const color6 = getSeriesColor(5); // Wraps to first color
494
+ * ```
495
+ */
496
+ declare const getSeriesColor: (index: number) => string;
497
+ /**
498
+ * Gets a color from the performance palette by index.
499
+ * Performance colors go from high (green) to low (red).
500
+ *
501
+ * @param index - Index of the color to retrieve (0 = high performance, 4 = low performance)
502
+ * @returns CSS color value (CSS variable reference)
503
+ *
504
+ * @example
505
+ * ```typescript
506
+ * const highColor = getPerformanceColor(0); // Green
507
+ * const midColor = getPerformanceColor(2); // Yellow
508
+ * const lowColor = getPerformanceColor(4); // Red
509
+ * ```
510
+ */
511
+ declare const getPerformanceColor: (index: number) => string;
512
+ /**
513
+ * Gets a color from the heatmap palette by index.
514
+ * Heatmap colors go from light to dark for intensity visualization.
515
+ *
516
+ * @param index - Index of the color to retrieve (0 = lightest, 4 = darkest)
517
+ * @returns CSS color value (CSS variable reference)
518
+ *
519
+ * @example
520
+ * ```typescript
521
+ * const lightColor = getHeatmapColor(0); // Lightest
522
+ * const darkColor = getHeatmapColor(4); // Darkest
523
+ * ```
524
+ */
525
+ declare const getHeatmapColor: (index: number) => string;
526
+ /**
527
+ * Creates an array of legend items from a color scheme object.
528
+ *
529
+ * @param colorScheme - Object mapping keys to color values
530
+ * @returns Array of legend items with key, color, and label
531
+ *
532
+ * @example
533
+ * ```typescript
534
+ * const scheme = { PASS: '#00ff00', FAIL: '#ff0000' };
535
+ * const items = createLegendItems(scheme);
536
+ * // Returns: [
537
+ * // { key: 'PASS', color: '#00ff00', label: 'PASS' },
538
+ * // { key: 'FAIL', color: '#ff0000', label: 'FAIL' }
539
+ * // ]
540
+ * ```
541
+ */
542
+ declare const createLegendItems: (colorScheme: ChartColorScheme) => LegendItem[];
543
+ /**
544
+ * Calculates appropriate Y-axis width based on the maximum value length in the data.
545
+ * Ensures labels don't get cut off for large numbers or long text.
546
+ *
547
+ * @param data - Array of data objects
548
+ * @param yAxisKey - Key name for the Y-axis value in data objects
549
+ * @returns Calculated width in pixels
550
+ *
551
+ * @example
552
+ * ```typescript
553
+ * const data = [{ value: 1000000 }, { value: 2000000 }];
554
+ * const width = calculateYAxisWidth(data, 'value'); // Returns ~80px
555
+ * ```
556
+ */
557
+ declare const calculateYAxisWidth: (data: unknown[], yAxisKey: string) => number;
558
+ /**
559
+ * Formats a decimal value as a percentage string.
560
+ *
561
+ * @param value - Decimal value (e.g., 0.456 for 45.6%)
562
+ * @param decimals - Number of decimal places (default: 1)
563
+ * @returns Formatted percentage string
564
+ *
565
+ * @example
566
+ * ```typescript
567
+ * formatPercentage(0.456); // "45.6%"
568
+ * formatPercentage(0.456, 2); // "45.60%"
569
+ * formatPercentage(0.5, 0); // "50%"
570
+ * ```
571
+ */
572
+ declare const formatPercentage: (value: number, decimals?: number) => string;
573
+ /**
574
+ * Formats large numbers with K (thousands) or M (millions) suffixes.
575
+ *
576
+ * @param value - Number to format
577
+ * @returns Formatted string with suffix
578
+ *
579
+ * @example
580
+ * ```typescript
581
+ * formatLargeNumber(500); // "500"
582
+ * formatLargeNumber(1500); // "1.5K"
583
+ * formatLargeNumber(1500000); // "1.5M"
584
+ * formatLargeNumber(2345678); // "2.3M"
585
+ * ```
586
+ */
587
+ declare const formatLargeNumber: (value: number) => string;
588
+
589
+ interface ChartLegendProps {
590
+ items: LegendItem[];
591
+ x?: number;
592
+ y?: number;
593
+ className?: string;
594
+ }
595
+ /**
596
+ * ChartLegend component for displaying chart series in a legend.
597
+ * @param {LegendItem[]} props.items - Array of legend items with key, color, and label
598
+ * @param {number} [props.x] - X position
599
+ * @param {number} [props.y] - Y position
600
+ * @param {string} [props.className] - Additional CSS classes
601
+ */
602
+ declare function ChartLegend({ items, x, y, className, }: ChartLegendProps): react_jsx_runtime.JSX.Element;
603
+
604
+ /**
605
+ * Label props from Recharts.
606
+ * @internal
607
+ */
608
+ interface LabelProps {
609
+ viewBox?: {
610
+ x: number;
611
+ y: number;
612
+ width: number;
613
+ height: number;
614
+ };
615
+ }
616
+ /**
617
+ * Tick props from Recharts.
618
+ * @internal
619
+ */
620
+ interface TickProps {
621
+ x: number;
622
+ y: number;
623
+ payload: {
624
+ value: string | number;
625
+ };
626
+ }
627
+ /**
628
+ * Creates a custom X-axis label component.
629
+ *
630
+ * @param text - Label text to display
631
+ * @param yOffset - Vertical offset from axis (default: 40)
632
+ * @returns React component for X-axis label
633
+ */
634
+ declare const createCustomXAxisLabel: (text: string, yOffset?: number) => {
635
+ ({ viewBox }: LabelProps): react_jsx_runtime.JSX.Element | null;
636
+ displayName: string;
637
+ };
638
+ /**
639
+ * Creates a custom Y-axis label component.
640
+ *
641
+ * @param text - Label text to display
642
+ * @param leftMargin - Left margin offset
643
+ * @returns React component for Y-axis label
644
+ */
645
+ declare const createCustomYAxisLabel: (text: string, leftMargin?: number) => {
646
+ ({ viewBox }: LabelProps): react_jsx_runtime.JSX.Element | null;
647
+ displayName: string;
648
+ };
649
+ /**
650
+ * Creates a custom Y-axis label component for right-side axis.
651
+ *
652
+ * @param text - Label text to display
653
+ * @returns React component for right Y-axis label
654
+ */
655
+ declare const createCustomYAxisRightLabel: (text: string) => {
656
+ ({ viewBox }: LabelProps): react_jsx_runtime.JSX.Element | null;
657
+ displayName: string;
658
+ };
659
+ /**
660
+ * Custom X-axis tick component
661
+ */
662
+ declare const customXAxisTick: (props: TickProps) => react_jsx_runtime.JSX.Element;
663
+ /**
664
+ * Custom X-axis tick component with rotated text
665
+ */
666
+ declare const customXAxisTickRotated: (props: TickProps) => react_jsx_runtime.JSX.Element;
667
+ /**
668
+ * Custom Y-axis tick component
669
+ */
670
+ declare const customYAxisTick: (props: TickProps) => react_jsx_runtime.JSX.Element;
671
+
672
+ interface TooltipContainerProps {
673
+ children: ReactNode;
674
+ className?: string;
675
+ }
676
+ /**
677
+ * TooltipContainer component for wrapping tooltip content.
678
+ * @param {ReactNode} props.children - Tooltip content
679
+ * @param {string} [props.className] - Additional CSS classes
680
+ */
681
+ declare function TooltipContainer({ children, className, }: TooltipContainerProps): react_jsx_runtime.JSX.Element;
682
+ /**
683
+ * TooltipItem component props.
684
+ *
685
+ * @interface TooltipItemProps
686
+ * @property {string} color - Color indicator for the data series
687
+ * @property {string} label - Label text
688
+ * @property {string | number} value - Value to display
689
+ * @property {string} [className] - Additional CSS classes
690
+ */
691
+ interface TooltipItemProps {
692
+ color: string;
693
+ label: string;
694
+ value: string | number;
695
+ className?: string;
696
+ }
697
+ /**
698
+ * TooltipItem component for displaying a single data point in a tooltip.
699
+ * Shows color indicator, label, and value.
700
+ */
701
+ declare function TooltipItem({ color, label, value, className, }: TooltipItemProps): react_jsx_runtime.JSX.Element;
702
+ /**
703
+ * GenericTooltip component props.
704
+ *
705
+ * @interface GenericTooltipProps
706
+ * @property {string} [title] - Tooltip title
707
+ * @property {Array} items - Array of tooltip items with color, label, and value
708
+ * @property {string} [className] - Additional CSS classes
709
+ */
710
+ interface GenericTooltipProps {
711
+ title?: string;
712
+ items: Array<{
713
+ color: string;
714
+ label: string;
715
+ value: string | number;
716
+ }>;
717
+ className?: string;
718
+ }
719
+ /**
720
+ * GenericTooltip component for displaying multiple data points.
721
+ * Used as the default tooltip for all chart components.
722
+ */
723
+ declare function GenericTooltip({ title, items, className, }: GenericTooltipProps): react_jsx_runtime.JSX.Element;
724
+
725
+ /**
726
+ * BarChart data item structure.
727
+ * Can contain any string or number properties.
728
+ */
729
+ interface BarChartData {
730
+ [key: string]: string | number;
731
+ }
732
+ /**
733
+ * BarChart component props.
734
+ *
735
+ * @interface BarChartProps
736
+ * @property {BarChartData[]} data - Array of data items
737
+ * @property {string} xAxisKey - Key for X-axis values from data
738
+ * @property {string} yAxisKey - Key for Y-axis values from data
739
+ * @property {string} title - Chart title
740
+ * @property {string} [xAxisLabel] - X-axis label
741
+ * @property {string} [yAxisLabel] - Y-axis label
742
+ * @property {string} [barColor] - Bar color (default: primary color)
743
+ * @property {function} [onDataPointClick] - Click handler for bars
744
+ * @property {string} [className] - Additional CSS classes
745
+ * @property {boolean} [rotateXAxisLabels] - Whether to rotate X-axis labels
746
+ * @property {boolean} [showLegend] - Whether to show legend
747
+ * @property {LegendItem[]} [legendItems] - Custom legend items
748
+ * @property {"vertical" | "horizontal"} [layout] - Chart layout orientation
749
+ * @property {"category" | "number"} [xAxisType] - X-axis type
750
+ * @property {"category" | "number"} [yAxisType] - Y-axis type
751
+ * @property {string} [barDataKey] - Custom bar data key
752
+ */
753
+ interface BarChartProps {
754
+ data: BarChartData[];
755
+ xAxisKey: string;
756
+ yAxisKey: string;
757
+ title: string;
758
+ xAxisLabel?: string;
759
+ yAxisLabel?: string;
760
+ barColor?: string;
761
+ onDataPointClick?: (data: BarChartData) => void;
762
+ className?: string;
763
+ rotateXAxisLabels?: boolean;
764
+ showLegend?: boolean;
765
+ legendItems?: LegendItem[];
766
+ layout?: "vertical" | "horizontal";
767
+ xAxisType?: "category" | "number";
768
+ yAxisType?: "category" | "number";
769
+ barDataKey?: string;
770
+ }
771
+ /**
772
+ * BarChart component for visualizing data as vertical or horizontal bars.
773
+ * @param {BarChartData[]} props.data - Array of data items
774
+ * @param {string} props.xAxisKey - Key for X-axis values from data
775
+ * @param {string} props.yAxisKey - Key for Y-axis values from data
776
+ * @param {string} props.title - Chart title
777
+ * @param {string} [props.xAxisLabel] - X-axis label
778
+ * @param {string} [props.yAxisLabel] - Y-axis label
779
+ * @param {string} [props.barColor] - Bar color
780
+ * @param {function} [props.onDataPointClick] - Click handler for bars
781
+ * @param {boolean} [props.showLegend] - Whether to show legend
782
+ * @param {string} [props.layout] - Chart layout (vertical or horizontal)
783
+ */
784
+ declare const BarChart: React.ForwardRefExoticComponent<BarChartProps & React.RefAttributes<HTMLDivElement>>;
785
+
786
+ /**
787
+ * LineChart data item structure.
788
+ * Can contain any string or number properties.
789
+ */
790
+ interface LineChartData {
791
+ [key: string]: string | number;
792
+ }
793
+ /**
794
+ * Line series configuration.
795
+ *
796
+ * @interface LineSeries
797
+ * @property {string} dataKey - Key for series values from data
798
+ * @property {string} [color] - Line color (auto-assigned if not provided)
799
+ * @property {number} [strokeWidth] - Line thickness
800
+ * @property {boolean} [dot] - Whether to show dots at data points
801
+ * @property {boolean} [activeDot] - Whether to show active dot on hover
802
+ */
803
+ interface LineSeries {
804
+ dataKey: string;
805
+ color?: string;
806
+ strokeWidth?: number;
807
+ dot?: boolean;
808
+ activeDot?: boolean;
809
+ }
810
+ interface LineChartProps {
811
+ data: LineChartData[];
812
+ xAxisKey: string;
813
+ series: LineSeries[];
814
+ title: string;
815
+ xAxisLabel?: string;
816
+ yAxisLabel?: string;
817
+ onDataPointClick?: (data: LineChartData) => void;
818
+ className?: string;
819
+ showLegend?: boolean;
820
+ legendItems?: LegendItem[];
821
+ }
822
+ /**
823
+ * LineChart component for visualizing time series and trends.
824
+ * @param {LineChartData[]} props.data - Array of data items
825
+ * @param {string} props.xAxisKey - Key for X-axis values from data
826
+ * @param {LineSeries[]} props.series - Array of line series configurations
827
+ * @param {string} props.title - Chart title
828
+ * @param {string} [props.xAxisLabel] - X-axis label
829
+ * @param {string} [props.yAxisLabel] - Y-axis label
830
+ * @param {function} [props.onDataPointClick] - Click handler for data points
831
+ * @param {boolean} [props.showLegend] - Whether to show legend
832
+ */
833
+ declare const LineChart: React.ForwardRefExoticComponent<LineChartProps & React.RefAttributes<HTMLDivElement>>;
834
+
835
+ /**
836
+ * PieChart data item structure.
837
+ *
838
+ * @interface PieChartData
839
+ * @property {string} name - Segment name/label
840
+ * @property {number} value - Segment value
841
+ * @property {string} [color] - Custom segment color (auto-assigned if not provided)
842
+ */
843
+ interface PieChartData {
844
+ name: string;
845
+ value: number;
846
+ color?: string;
847
+ [key: string]: string | number | undefined;
848
+ }
849
+ /**
850
+ * Pie label rendering props from Recharts.
851
+ * @internal
852
+ */
853
+ interface PieLabelProps {
854
+ cx: number;
855
+ cy: number;
856
+ midAngle: number;
857
+ innerRadius: number;
858
+ outerRadius: number;
859
+ percent: number;
860
+ name: string;
861
+ value: number;
862
+ }
863
+ interface PieChartProps {
864
+ data: PieChartData[];
865
+ title: string;
866
+ onDataPointClick?: (data: PieChartData) => void;
867
+ className?: string;
868
+ showLegend?: boolean;
869
+ legendItems?: LegendItem[];
870
+ innerRadius?: string | number;
871
+ outerRadius?: string | number;
872
+ showLabels?: boolean;
873
+ }
874
+ /**
875
+ * PieChart component for visualizing proportional data.
876
+ * @param {PieChartData[]} props.data - Array of data segments
877
+ * @param {string} props.title - Chart title
878
+ * @param {function} [props.onDataPointClick] - Click handler for segments
879
+ * @param {boolean} [props.showLegend] - Whether to show legend
880
+ * @param {string | number} [props.innerRadius] - Inner radius (use >0 for donut chart)
881
+ * @param {string | number} [props.outerRadius] - Outer radius
882
+ * @param {boolean} [props.showLabels] - Whether to show percentage labels
883
+ */
884
+ declare const PieChart: React.ForwardRefExoticComponent<PieChartProps & React.RefAttributes<HTMLDivElement>>;
885
+
886
+ interface TableProps<T> {
887
+ table: Table$1<T>;
888
+ className?: string;
889
+ showPagination?: boolean;
890
+ paginationClassName?: string;
891
+ }
892
+ /**
893
+ * Table component for displaying tabular data.
894
+ * @template T - Type of data in table rows
895
+ * @param {TanStackTable<T>} props.table - TanStack Table instance
896
+ * @param {string} [props.className] - Additional CSS classes
897
+ * @param {boolean} [props.showPagination] - Whether to show pagination controls
898
+ * @param {string} [props.paginationClassName] - Additional CSS classes for pagination
899
+ */
900
+ declare function Table<T>({ table, className, showPagination, paginationClassName, }: TableProps<T>): react_jsx_runtime.JSX.Element;
901
+
902
+ export { ArrowDown, ArrowLeft, ArrowRight, ArrowUp, Badge, type BadgeProps, BarChart, type BarChartData, type BarChartProps, Bell, Bookmark, Button, type ButtonProps, CHART_COLORS, CHART_CONSTANTS, COLOR_SCHEMES, Calendar, CaretDown, CaretLeft, CaretRight, CaretUp, type ChartColorScheme, ChartLegend, type ChartLegendProps, Chat, Check, CheckIcon, Checkbox, type CheckboxProps, CheckmarkCircle, CheckmarkSquare, ChevronDown, ChevronLeft, ChevronRight, ChevronUp, Close, CloseSmall, Cog, Credentials, DatePicker, type DatePickerProps, Doc, Dollar, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, type DropdownMenuTriggerProps, Edit, Envelope, Exclamation, EyeClosed, EyeOpen, Filter, FilterDescending, FormField, type FormFieldProps, GenericTooltip, type GenericTooltipProps, GraphBar, GraphDonut, GraphLine, GraphPie, HamburgerMenu, Home, type IconProps, type IconVariant, Information, TypedInput as Input, type InputFieldProps, type InputProps, type LabelProps, type LegendItem, LineChart, type LineChartData, type LineChartProps, type LineSeries, Location, Lock, Logout, MagnifyingGlass, Minus, MoreMenu, Phone, PieChart, type PieChartData, type PieChartProps, type PieLabelProps, Plus, QuestionCircle, Select, SelectContent, type SelectContentProps, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, type SelectTriggerProps, SelectValue, Share, Star, Statement, Table, TableIcon, type TableProps, Tabs, TabsContent, type TabsContentProps, TabsList, type TabsListProps, type TabsProps, TabsTrigger, type TabsTriggerProps, type TextareaFieldProps, type TickProps, TooltipContainer, type TooltipContainerProps, TooltipItem, type TooltipItemProps, Trash, Typography, type TypographyProps, Upload, type UploadProps, User, UserMulti, Warning, Wrench, X, badgeVariants, buttonVariants, calculateYAxisWidth, checkboxVariants, createCustomXAxisLabel, createCustomYAxisLabel, createCustomYAxisRightLabel, createLegendItems, customXAxisTick, customXAxisTickRotated, customYAxisTick, formatLargeNumber, formatPercentage, getHeatmapColor, getPerformanceColor, getSeriesColor, inputVariants, selectTriggerVariants, tabsVariants, typographyVariants, uploadVariants };