@texturehq/edges 1.17.2 → 1.18.1

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.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { Key, ValidationResult, BreadcrumbProps, BreadcrumbsProps, ButtonProps as ButtonProps$1, DateValue, CalendarProps as CalendarProps$1, CheckboxProps as CheckboxProps$1, CheckboxRenderProps, CheckboxGroupProps as CheckboxGroupProps$1, DisclosurePanelProps, DisclosureProps, DisclosureGroupProps, DateRangePickerProps as DateRangePickerProps$1, TextProps, FormProps, ListBoxProps as ListBoxProps$1, ListBoxItemProps, ModalOverlayProps, NumberFieldProps as NumberFieldProps$1, PopoverProps as PopoverProps$1, ProgressBarProps as ProgressBarProps$1, RadioProps, RadioGroupProps as RadioGroupProps$1, RangeCalendarProps as RangeCalendarProps$1, SelectProps as SelectProps$1, SwitchProps as SwitchProps$1, TabProps as TabProps$1, TabListProps as TabListProps$1, TabPanelProps, TabsProps as TabsProps$2, TextFieldProps as TextFieldProps$1, TimeFieldProps as TimeFieldProps$1, TimeValue, TooltipProps as TooltipProps$1 } from 'react-aria-components';
1
+ import { Key, ValidationResult, BreadcrumbProps, BreadcrumbsProps, ButtonProps as ButtonProps$1, DateValue, CalendarProps as CalendarProps$1, CheckboxProps as CheckboxProps$1, CheckboxRenderProps, CheckboxGroupProps as CheckboxGroupProps$1, DisclosurePanelProps, DisclosureProps, DisclosureGroupProps, TextProps, TextFieldProps as TextFieldProps$1, DateRangePickerProps as DateRangePickerProps$1, FormProps, ListBoxProps as ListBoxProps$1, ListBoxItemProps, ModalOverlayProps, NumberFieldProps as NumberFieldProps$1, PopoverProps as PopoverProps$1, ProgressBarProps as ProgressBarProps$1, RadioProps, RadioGroupProps as RadioGroupProps$1, RangeCalendarProps as RangeCalendarProps$1, SelectProps as SelectProps$1, SwitchProps as SwitchProps$1, TabProps as TabProps$1, TabListProps as TabListProps$1, TabPanelProps, TabsProps as TabsProps$2, TimeFieldProps as TimeFieldProps$1, TimeValue, TooltipProps as TooltipProps$1 } from 'react-aria-components';
2
2
  export { BreadcrumbProps, BreadcrumbsProps, DialogTrigger } from 'react-aria-components';
3
3
  import * as React$1 from 'react';
4
4
  import React__default, { RefObject, HTMLAttributes, ReactNode, ComponentProps, ComponentType, CSSProperties, Component, ErrorInfo } from 'react';
5
- import { F as FieldValue, B as BooleanFormat, a as FormattedValue, C as CurrentFormat, D as DateFormat, b as DistanceFormat, E as EnergyFormat, c as CurrencyFormat, N as NumberFormat, P as PhoneFormat, d as PowerFormat, e as FormatterFunction, R as ResistanceFormat, T as TemperatureUnitString, f as TemperatureUnit, g as TemperatureFormat, h as TextFormat, V as VoltageFormat, i as FieldFormat, j as BaseDataPoint, I as Icon, k as BadgeProps, Y as YFormatType, l as TooltipData, m as IconName$3, n as DeviceState, G as GridState, o as ComponentFormatter, L as LayerSpec, p as CustomPinsSpec, q as GeoJsonLayerSpec, r as RasterLayerSpec, s as VectorLayerSpec, t as ClusteredVectorLayerSpec } from './colors-BaVZChH3.js';
6
- export { A as ActionItem, v as ActionMenu, u as ActionMenuProps, x as AppShell, w as AppShellProps, z as Avatar, y as AvatarProps, H as Badge, aN as BaseFormat, au as ChartContext, aw as ChartMargin, O as CodeEditor, J as CodeEditorProps, K as CodeLanguage, M as CodeTheme, $ as ColorSpec, aK as ComponentFormatOptions, aV as CurrentUnit, aY as CustomFormat, S as DateField, Q as DateFieldProps, aR as DateFormatStyle, aX as DistanceUnit, ap as ENTITY_CONFIG, aS as EnergyUnit, an as EntityConfig, ao as EntityType, W as FileUpload, U as FileUploadProps, X as Heading, a7 as InteractiveMap, a0 as InteractiveMapProps, a1 as LayerFeature, a2 as LayerStyle, Z as Loader, _ as Logo, a8 as MAP_TYPES, a3 as MapPoint, ab as Meter, aa as MeterProps, aZ as MetricFormat, aQ as PercentageFormat, aT as PowerUnit, a4 as RenderType, aW as ResistanceUnit, ad as RichTextEditor, ac as RichTextEditorProps, af as SegmentOption, ag as SegmentedControl, ae as SegmentedControlProps, aj as SideNav, ah as SideNavItem, ai as SideNavProps, a9 as StaticMap, a5 as StaticMapProps, ak as TextLink, aO as TextTransform, aP as TextTruncatePosition, at as TooltipSeries, am as TopNav, al as TopNavProps, aU as VoltageUnit, aB as YFormatSettings, a6 as ZoomStops, a$ as activeDeviceStates, aC as clearColorCache, aD as createCategoryColorMap, ax as createXScale, ay as createYScale, az as defaultMargin, b0 as deviceStateLabels, a_ as deviceStateMetricFormats, aL as formatComponentValue, aE as getContrastingTextColor, aF as getDefaultChartColor, aG as getDefaultColors, b2 as getDeviceStateDisplayLabel, b2 as getDeviceStateLabel, aq as getEntityConfig, ar as getEntityIcon, as as getEntityLabel, b4 as getGridStateLabel, aH as getResolvedColor, aI as getThemeCategoricalColors, aA as getYFormatSettings, b3 as gridStateLabels, b1 as isActiveDeviceState, b1 as isActiveState, aJ as isLightColor, av as useChartContext, aM as useComponentFormatter } from './colors-BaVZChH3.js';
5
+ import { F as FieldValue, B as BooleanFormat, a as FormattedValue, C as CurrentFormat, D as DateFormat, b as DistanceFormat, E as EnergyFormat, c as CurrencyFormat, N as NumberFormat, P as PhoneFormat, d as PowerFormat, e as FormatterFunction, R as ResistanceFormat, T as TemperatureUnitString, f as TemperatureUnit, g as TemperatureFormat, h as TextFormat, V as VoltageFormat, i as FieldFormat, j as BaseDataPoint, I as Icon, k as BadgeProps, Y as YFormatType, l as TooltipData, m as IconName$3, n as DeviceState, G as GridState, o as ComponentFormatter, L as LayerSpec, p as CustomPinsSpec, q as GeoJsonLayerSpec, r as RasterLayerSpec, s as VectorLayerSpec, t as ClusteredVectorLayerSpec } from './colors-Kck1-4Zq.js';
6
+ export { A as ActionItem, v as ActionMenu, u as ActionMenuProps, x as AppShell, w as AppShellProps, z as Avatar, y as AvatarProps, H as Badge, aN as BaseFormat, au as ChartContext, aw as ChartMargin, O as CodeEditor, J as CodeEditorProps, K as CodeLanguage, M as CodeTheme, $ as ColorSpec, aK as ComponentFormatOptions, aV as CurrentUnit, aY as CustomFormat, S as DateField, Q as DateFieldProps, aR as DateFormatStyle, aX as DistanceUnit, ap as ENTITY_CONFIG, aS as EnergyUnit, an as EntityConfig, ao as EntityType, W as FileUpload, U as FileUploadProps, X as Heading, a7 as InteractiveMap, a0 as InteractiveMapProps, a1 as LayerFeature, a2 as LayerStyle, Z as Loader, _ as Logo, a8 as MAP_TYPES, a3 as MapPoint, ab as Meter, aa as MeterProps, aZ as MetricFormat, aQ as PercentageFormat, aT as PowerUnit, a4 as RenderType, aW as ResistanceUnit, ad as RichTextEditor, ac as RichTextEditorProps, af as SegmentOption, ag as SegmentedControl, ae as SegmentedControlProps, aj as SideNav, ah as SideNavItem, ai as SideNavProps, a9 as StaticMap, a5 as StaticMapProps, ak as TextLink, aO as TextTransform, aP as TextTruncatePosition, at as TooltipSeries, am as TopNav, al as TopNavProps, aU as VoltageUnit, aB as YFormatSettings, a6 as ZoomStops, a$ as activeDeviceStates, aC as clearColorCache, aD as createCategoryColorMap, ax as createXScale, ay as createYScale, az as defaultMargin, b0 as deviceStateLabels, a_ as deviceStateMetricFormats, aL as formatComponentValue, aE as getContrastingTextColor, aF as getDefaultChartColor, aG as getDefaultColors, b2 as getDeviceStateDisplayLabel, b2 as getDeviceStateLabel, aq as getEntityConfig, ar as getEntityIcon, as as getEntityLabel, b4 as getGridStateLabel, aH as getResolvedColor, aI as getThemeCategoricalColors, aA as getYFormatSettings, b3 as gridStateLabels, b1 as isActiveDeviceState, b1 as isActiveState, aJ as isLightColor, av as useChartContext, aM as useComponentFormatter } from './colors-Kck1-4Zq.js';
7
7
  import { Virtualizer } from '@tanstack/react-virtual';
8
8
  import * as react_jsx_runtime from 'react/jsx-runtime';
9
9
  import { ScaleTime, ScaleLinear } from 'd3-scale';
@@ -1781,6 +1781,253 @@ declare namespace CollapseContent {
1781
1781
  var displayName: string;
1782
1782
  }
1783
1783
 
1784
+ interface InputStyleProps {
1785
+ /** Whether the input is in an invalid state */
1786
+ isInvalid?: boolean;
1787
+ /** Whether the input is disabled */
1788
+ isDisabled?: boolean;
1789
+ /** Whether the input should have a transparent background */
1790
+ transparent?: boolean;
1791
+ /** The size variant of the input */
1792
+ size?: Size;
1793
+ /** Whether the input is currently focused */
1794
+ isFocused?: boolean;
1795
+ /** Additional CSS classes to apply */
1796
+ className?: string;
1797
+ }
1798
+ interface BaseProps {
1799
+ /** The size variant of the component */
1800
+ size?: Size;
1801
+ /** Additional CSS classes to apply */
1802
+ className?: string;
1803
+ }
1804
+ interface BaseInputProps extends BaseProps {
1805
+ /** Whether the input should have a transparent background */
1806
+ transparent?: boolean;
1807
+ /** Whether to show a clear button when the input has a value */
1808
+ isClearable?: boolean;
1809
+ /** Callback when the clear button is clicked */
1810
+ onClear?: () => void;
1811
+ /** Whether to show a search icon */
1812
+ showSearchIcon?: boolean;
1813
+ }
1814
+ interface LabelProps extends BaseProps {
1815
+ /** The label content */
1816
+ children: React__default.ReactNode;
1817
+ /** Optional tooltip text to show next to the label */
1818
+ tooltip?: string;
1819
+ /** Whether to show a required field indicator (*) */
1820
+ isRequired?: boolean;
1821
+ /** The ID of the input this label is associated with */
1822
+ htmlFor?: string;
1823
+ }
1824
+ interface FieldErrorProps extends BaseProps {
1825
+ /** The error message to display */
1826
+ children: React__default.ReactNode;
1827
+ }
1828
+ interface InputProps extends Omit<React__default.InputHTMLAttributes<HTMLInputElement>, "size">, InputStyleProps {
1829
+ /** The size variant of the input */
1830
+ size?: Size;
1831
+ }
1832
+ interface DescriptionProps extends Omit<TextProps, "className">, BaseProps {
1833
+ /** The description content */
1834
+ children: React__default.ReactNode;
1835
+ }
1836
+ interface FieldGroupProps extends Omit<React__default.HTMLAttributes<HTMLDivElement>, "children">, InputStyleProps {
1837
+ /** Whether any child of the group is focused */
1838
+ isFocusWithin?: boolean;
1839
+ /** Children can be either a ReactNode or a render function */
1840
+ children?: React__default.ReactNode | ((props: InputStyleProps) => React__default.ReactNode);
1841
+ }
1842
+ /**
1843
+ * Hook for managing input focus state
1844
+ */
1845
+ declare function useInputFocus(): {
1846
+ isFocused: boolean;
1847
+ handleFocus: (e: React__default.FocusEvent<HTMLInputElement>, onFocus?: (e: React__default.FocusEvent<HTMLInputElement>) => void) => void;
1848
+ handleBlur: (e: React__default.FocusEvent<HTMLInputElement>, onBlur?: (e: React__default.FocusEvent<HTMLInputElement>) => void) => void;
1849
+ };
1850
+ /**
1851
+ * Wrapper component for input containers
1852
+ */
1853
+ declare function InputWrapper({ children, className, }: {
1854
+ children: React__default.ReactNode;
1855
+ className?: string;
1856
+ }): react_jsx_runtime.JSX.Element;
1857
+ /**
1858
+ * Clear button component for inputs
1859
+ */
1860
+ declare function ClearButton({ onClick, size, className, }: {
1861
+ onClick: () => void;
1862
+ size?: Size;
1863
+ className?: string;
1864
+ }): react_jsx_runtime.JSX.Element;
1865
+ /**
1866
+ * Generates state-specific styles for inputs based on their current state
1867
+ * (invalid, disabled, focused).
1868
+ *
1869
+ * State Priority:
1870
+ * 1. Disabled (overrides all other states)
1871
+ * 2. Invalid + Focused
1872
+ * 3. Invalid
1873
+ * 4. Focused
1874
+ * 5. Default
1875
+ *
1876
+ * @example
1877
+ * ```tsx
1878
+ * const styles = getInputStateStyles({ isInvalid: true, isFocused: true });
1879
+ * ```
1880
+ */
1881
+ declare function getInputStateStyles(props: {
1882
+ isInvalid?: boolean;
1883
+ isDisabled?: boolean;
1884
+ isFocused?: boolean;
1885
+ }): "border rounded-[var(--control-border-radius)] !outline-none border-border-muted" | "border rounded-[var(--control-border-radius)] !outline-none border-feedback-error-border shadow-[inset_0_0_0_1px_var(--color-feedback-error-border)]" | "border rounded-[var(--control-border-radius)] !outline-none border-feedback-error-border" | "border rounded-[var(--control-border-radius)] !outline-none border-border-focus shadow-[inset_0_0_0_1px_var(--color-border-focus)]" | "border rounded-[var(--control-border-radius)] !outline-none border-border-default";
1886
+ /**
1887
+ * Generates background styles based on the transparent and disabled props.
1888
+ * Uses Tailwind classes for consistent styling across light/dark modes.
1889
+ */
1890
+ declare function getInputBackgroundStyles(props: {
1891
+ transparent?: boolean;
1892
+ isDisabled?: boolean;
1893
+ }): "bg-transparent" | "bg-background-muted" | "bg-background-input";
1894
+ /**
1895
+ * Generates the complete set of base styles for input components.
1896
+ * This includes state styles, background, sizing, and custom classes.
1897
+ *
1898
+ * @example
1899
+ * ```tsx
1900
+ * const styles = getInputBaseStyles({
1901
+ * isInvalid: formState.hasError,
1902
+ * isDisabled: isLoading,
1903
+ * size: "md"
1904
+ * });
1905
+ * ```
1906
+ */
1907
+ declare function getInputBaseStyles(props: InputStyleProps): string;
1908
+ /**
1909
+ * Generates styles for grouped form elements (like input with buttons)
1910
+ *
1911
+ * @example
1912
+ * ```tsx
1913
+ * <div className={getFieldGroupStyles({ size: "md" })}>
1914
+ * <Input />
1915
+ * <Button>Submit</Button>
1916
+ * </div>
1917
+ * ```
1918
+ */
1919
+ declare function getFieldGroupStyles(props: FieldGroupProps): string;
1920
+ /**
1921
+ * Label component for form fields. Supports tooltips and required field indicators.
1922
+ *
1923
+ * @example
1924
+ * ```tsx
1925
+ * <Label
1926
+ * htmlFor="email"
1927
+ * tooltip="Enter your work email"
1928
+ * isRequired
1929
+ * >
1930
+ * Email Address
1931
+ * </Label>
1932
+ * ```
1933
+ */
1934
+ declare function Label({ children, size, tooltip, isRequired, className, htmlFor, }: LabelProps): react_jsx_runtime.JSX.Element;
1935
+ /**
1936
+ * Description component for providing additional context about a form field.
1937
+ *
1938
+ * @example
1939
+ * ```tsx
1940
+ * <Description>Must be at least 8 characters</Description>
1941
+ * ```
1942
+ */
1943
+ declare function Description({ size, className, children, ...props }: DescriptionProps): react_jsx_runtime.JSX.Element;
1944
+ /**
1945
+ * Error message component for form fields. Automatically handles
1946
+ * accessibility attributes for screen readers.
1947
+ *
1948
+ * @example
1949
+ * ```tsx
1950
+ * {hasError && <FieldError>This field is required</FieldError>}
1951
+ * ```
1952
+ */
1953
+ declare function FieldError({ children, size, className }: FieldErrorProps): react_jsx_runtime.JSX.Element;
1954
+ /**
1955
+ * Base input component with consistent styling and state handling.
1956
+ * Extends the native input element with our custom styling system.
1957
+ *
1958
+ * @example
1959
+ * ```tsx
1960
+ * <Input
1961
+ * size="md"
1962
+ * isInvalid={hasError}
1963
+ * isDisabled={isLoading}
1964
+ * transparent={false}
1965
+ * />
1966
+ * ```
1967
+ */
1968
+ declare function Input({ size, isInvalid, isDisabled, isFocused, transparent, className, ...props }: InputProps): react_jsx_runtime.JSX.Element;
1969
+ /**
1970
+ * Container for grouping form elements with consistent styling.
1971
+ * Useful for creating compound components like input with buttons.
1972
+ *
1973
+ * @example
1974
+ * ```tsx
1975
+ * <FieldGroup>
1976
+ * <Input placeholder="Search..." />
1977
+ * <Button>Search</Button>
1978
+ * </FieldGroup>
1979
+ * ```
1980
+ */
1981
+ declare function FieldGroup(props: FieldGroupProps): react_jsx_runtime.JSX.Element;
1982
+
1983
+ /**
1984
+ * ColorField Props
1985
+ */
1986
+ interface ColorFieldProps extends Omit<TextFieldProps$1, "isRequired" | "size" | "className">, BaseInputProps {
1987
+ /** Label text displayed above the color field */
1988
+ label?: string;
1989
+ /** Helper text displayed below the color field */
1990
+ description?: string;
1991
+ /** Error message or function to generate error message */
1992
+ errorMessage?: string | ((validation: ValidationResult) => string);
1993
+ /** Placeholder text for the input */
1994
+ placeholder?: string;
1995
+ /** Optional tooltip text to show next to the label */
1996
+ tooltip?: string;
1997
+ /** Whether the field is required */
1998
+ isRequired?: boolean;
1999
+ /** Additional CSS classes to apply */
2000
+ className?: string;
2001
+ /** Validation result object */
2002
+ validationResult?: ValidationResult;
2003
+ /** The current hex color value (controlled) */
2004
+ value?: string;
2005
+ /** Default hex color value (uncontrolled) */
2006
+ defaultValue?: string;
2007
+ /** Callback when the color changes */
2008
+ onChange?: (color: string) => void;
2009
+ /** Whether to show the color swatch preview */
2010
+ showColorSwatch?: boolean;
2011
+ }
2012
+ /**
2013
+ * ColorField Component
2014
+ *
2015
+ * A form control that allows users to input hex color codes manually
2016
+ * or select colors using a visual color picker. Integrates seamlessly
2017
+ * with the Edges design system.
2018
+ *
2019
+ * @example
2020
+ * ```tsx
2021
+ * <ColorField
2022
+ * label="Brand Color"
2023
+ * value={color}
2024
+ * onChange={setColor}
2025
+ * description="Choose your primary brand color"
2026
+ * />
2027
+ * ```
2028
+ */
2029
+ declare function ColorField({ label, description, errorMessage, size, tooltip, isRequired, transparent, className, validationResult, value: controlledValue, defaultValue, onChange, placeholder, showColorSwatch, ...props }: ColorFieldProps): react_jsx_runtime.JSX.Element;
2030
+
1784
2031
  interface ConfirmProps {
1785
2032
  /**
1786
2033
  * Whether the confirm dialog is open
@@ -1875,36 +2122,93 @@ interface ConnectionStatusBadgeProps extends Omit<BadgeProps, "variant" | "child
1875
2122
  */
1876
2123
  declare function ConnectionStatusBadge({ isConnected, connectedAt, disconnectedAt, showTimestamp, isLoading, size, shape, ...badgeProps }: ConnectionStatusBadgeProps): react_jsx_runtime.JSX.Element;
1877
2124
 
1878
- type SortDirection = "asc" | "desc";
1879
- type CellAlignment = "left" | "center" | "right";
1880
- type TableDensity = "compact" | "default" | "relaxed";
1881
- type CellEmphasis = "strong" | "high" | "normal" | "low";
1882
- type LinkBehavior = "none" | "hover" | "visible";
1883
- type TableLayout = "auto" | "fixed" | "responsive";
1884
- type TableWidth = "full" | "auto" | "contained";
1885
- type MobileRenderer = "auto" | "cards" | "custom" | "none";
1886
- type MobileBreakpoint = "sm" | "md" | "lg" | "xl";
1887
- interface SortConfig {
1888
- columnId: string;
1889
- direction: SortDirection;
1890
- }
1891
- interface CellContext {
1892
- isLoading: boolean;
1893
- isSelected?: boolean;
1894
- isHovered?: boolean;
1895
- rowIndex: number;
1896
- columnIndex: number;
1897
- density: TableDensity;
1898
- }
1899
- interface CellComponentProps<T = any> {
1900
- value: any;
1901
- row: T;
1902
- context: CellContext;
1903
- [key: string]: any;
1904
- }
1905
- type CellComponent<T = any> = ComponentType<CellComponentProps<T>>;
1906
- interface MobileConfig {
1907
- priority?: 1 | 2 | 3;
2125
+ interface ContactCardProps {
2126
+ /** First name */
2127
+ firstName: string;
2128
+ /** Last name */
2129
+ lastName: string;
2130
+ /** Email address (optional) */
2131
+ email?: string;
2132
+ /** Phone number (optional) */
2133
+ phone?: string;
2134
+ /** Avatar image URL (optional) */
2135
+ avatarUrl?: string;
2136
+ /** Link to contact detail page (optional) */
2137
+ href?: string;
2138
+ /** Custom link component (e.g., Next.js Link) */
2139
+ LinkComponent?: ComponentType<{
2140
+ href: string;
2141
+ className?: string;
2142
+ children: React.ReactNode;
2143
+ }>;
2144
+ /** Card variant */
2145
+ variant?: "outlined" | "elevated" | "filled" | "ghost";
2146
+ /** Show email address
2147
+ * @default true
2148
+ */
2149
+ showEmail?: boolean;
2150
+ /** Show phone number
2151
+ * @default false
2152
+ */
2153
+ showPhone?: boolean;
2154
+ /** Loading state */
2155
+ isLoading?: boolean;
2156
+ /** Additional classes for the card */
2157
+ className?: string;
2158
+ /** Additional classes for the card content (for padding control, etc.) */
2159
+ contentClassName?: string;
2160
+ }
2161
+ /**
2162
+ * ContactCard
2163
+ *
2164
+ * A card component for displaying contact information with avatar.
2165
+ * Includes name, optional email, and optional phone number.
2166
+ *
2167
+ * @example
2168
+ * ```tsx
2169
+ * <ContactCard
2170
+ * firstName="John"
2171
+ * lastName="Doe"
2172
+ * email="john.doe@example.com"
2173
+ * phone="+1 (555) 123-4567"
2174
+ * showEmail
2175
+ * showPhone
2176
+ * href="/contacts/123"
2177
+ * />
2178
+ * ```
2179
+ */
2180
+ declare function ContactCard({ firstName, lastName, email, phone, avatarUrl, href, LinkComponent, variant, showEmail, showPhone, isLoading, className, contentClassName, }: ContactCardProps): react_jsx_runtime.JSX.Element;
2181
+
2182
+ type SortDirection = "asc" | "desc";
2183
+ type CellAlignment = "left" | "center" | "right";
2184
+ type TableDensity = "compact" | "default" | "relaxed";
2185
+ type CellEmphasis = "strong" | "high" | "normal" | "low";
2186
+ type LinkBehavior = "none" | "hover" | "visible";
2187
+ type TableLayout = "auto" | "fixed" | "responsive";
2188
+ type TableWidth = "full" | "auto" | "contained";
2189
+ type MobileRenderer = "auto" | "cards" | "custom" | "none";
2190
+ type MobileBreakpoint = "sm" | "md" | "lg" | "xl";
2191
+ interface SortConfig {
2192
+ columnId: string;
2193
+ direction: SortDirection;
2194
+ }
2195
+ interface CellContext {
2196
+ isLoading: boolean;
2197
+ isSelected?: boolean;
2198
+ isHovered?: boolean;
2199
+ rowIndex: number;
2200
+ columnIndex: number;
2201
+ density: TableDensity;
2202
+ }
2203
+ interface CellComponentProps<T = any> {
2204
+ value: any;
2205
+ row: T;
2206
+ context: CellContext;
2207
+ [key: string]: any;
2208
+ }
2209
+ type CellComponent<T = any> = ComponentType<CellComponentProps<T>>;
2210
+ interface MobileConfig {
2211
+ priority?: 1 | 2 | 3;
1908
2212
  format?: "primary" | "secondary" | "badge" | "inline";
1909
2213
  label?: boolean;
1910
2214
  icon?: string;
@@ -1923,6 +2227,12 @@ interface Column<T> {
1923
2227
  render?: (value: any, row: T, context: CellContext) => ReactNode;
1924
2228
  sortable?: boolean;
1925
2229
  mobile?: MobileConfig | false;
2230
+ popover?: string | ((value: unknown, row: T) => ReactNode) | {
2231
+ content: string | ((value: unknown, row: T) => ReactNode);
2232
+ placement?: "top" | "bottom" | "left" | "right";
2233
+ showArrow?: boolean;
2234
+ trigger?: "hover" | "click";
2235
+ };
1926
2236
  }
1927
2237
  interface DataTableProps<T> {
1928
2238
  columns: Column<T>[];
@@ -2612,6 +2922,81 @@ interface ActionCellProps<T = any> extends CellComponentProps<T> {
2612
2922
  */
2613
2923
  declare function ActionCell<T = any>({ row, context, actions, align, size, }: ActionCellProps<T>): react_jsx_runtime.JSX.Element | null;
2614
2924
 
2925
+ interface BadgeCellProps<T = any> extends CellComponentProps<T> {
2926
+ /** The variant to use - can be static or a function that maps value to variant */
2927
+ variant?: BadgeProps["variant"] | ((value: any, row: T) => BadgeProps["variant"]);
2928
+ /** Optional label override - if not provided, will use the value */
2929
+ label?: string | ((value: any, row: T) => string);
2930
+ /** Badge size */
2931
+ size?: BadgeProps["size"];
2932
+ /** Badge shape */
2933
+ shape?: BadgeProps["shape"];
2934
+ /** Whether to show a dot indicator */
2935
+ dot?: boolean | ((value: any, row: T) => boolean);
2936
+ /** Position of the dot */
2937
+ dotPosition?: BadgeProps["dotPosition"];
2938
+ /** Whether the dot should pulse */
2939
+ dotPulse?: boolean | ((value: any, row: T) => boolean);
2940
+ /** Alignment of the cell content */
2941
+ align?: "left" | "center" | "right";
2942
+ /** Text to show for null/undefined values */
2943
+ emptyText?: string;
2944
+ /** Additional CSS classes */
2945
+ className?: string;
2946
+ }
2947
+ /**
2948
+ * BadgeCell
2949
+ *
2950
+ * A flexible DataTable cell component for displaying any value as a Badge.
2951
+ * Supports mapping values to semantic variants (success, error, warning, etc.)
2952
+ * and customizing the display label.
2953
+ *
2954
+ * @example
2955
+ * ```tsx
2956
+ * // Simple usage with static variant
2957
+ * {
2958
+ * id: "status",
2959
+ * label: "Status",
2960
+ * accessor: "status",
2961
+ * cell: BadgeCell,
2962
+ * cellProps: {
2963
+ * variant: "success",
2964
+ * }
2965
+ * }
2966
+ *
2967
+ * // Map value to variant
2968
+ * {
2969
+ * id: "status",
2970
+ * label: "Status",
2971
+ * accessor: "status",
2972
+ * cell: BadgeCell,
2973
+ * cellProps: {
2974
+ * variant: (value) => {
2975
+ * if (value === "active") return "success";
2976
+ * if (value === "error") return "error";
2977
+ * if (value === "pending") return "warning";
2978
+ * return "neutral";
2979
+ * },
2980
+ * label: (value) => value.toUpperCase(),
2981
+ * }
2982
+ * }
2983
+ *
2984
+ * // With dot indicator
2985
+ * {
2986
+ * id: "online",
2987
+ * label: "Status",
2988
+ * accessor: "onlineStatus",
2989
+ * cell: BadgeCell,
2990
+ * cellProps: {
2991
+ * variant: (value) => value === "online" ? "success" : "neutral",
2992
+ * dot: true,
2993
+ * dotPulse: (value) => value === "online",
2994
+ * }
2995
+ * }
2996
+ * ```
2997
+ */
2998
+ declare function BadgeCell<T = any>({ value, row, context, variant, label, size, shape, dot, dotPosition, dotPulse, align, emptyText, className, }: BadgeCellProps<T>): react_jsx_runtime.JSX.Element;
2999
+
2615
3000
  interface BooleanCellProps<T = any> extends CellComponentProps<T> {
2616
3001
  format?: "icon" | "text" | "badge";
2617
3002
  trueText?: string;
@@ -2942,6 +3327,58 @@ interface FormattedCellProps<T = any> extends CellComponentProps<T> {
2942
3327
  */
2943
3328
  declare function FormattedCell<T = any>({ value, row, context, formatter, align, emphasis, href, linkBehavior, className, emptyText, emptyClassName, }: FormattedCellProps<T>): string | number | bigint | boolean | Iterable<React__default.ReactNode> | Promise<string | number | bigint | boolean | React__default.ReactPortal | React__default.ReactElement<unknown, string | React__default.JSXElementConstructor<any>> | Iterable<React__default.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
2944
3329
 
3330
+ interface HorizontalBarCellProps extends CellComponentProps {
3331
+ value: number;
3332
+ min: number;
3333
+ max: number;
3334
+ color?: string | "auto";
3335
+ backgroundColor?: string | "none";
3336
+ colorScale?: {
3337
+ type: "sequential" | "diverging";
3338
+ scheme?: string;
3339
+ center?: number;
3340
+ };
3341
+ showLabel?: boolean;
3342
+ formatLabel?: (value: number) => string;
3343
+ height?: number;
3344
+ minWidth?: number;
3345
+ segments?: number;
3346
+ segmentGap?: number;
3347
+ barWidth?: number | string;
3348
+ }
3349
+ /**
3350
+ * HorizontalBarCell
3351
+ *
3352
+ * Horizontal comparison bar with automatic color scaling.
3353
+ * Perfect for showing relative values with color-coded performance indicators.
3354
+ * Supports segmented "power meter" style with optional gradient coloring.
3355
+ */
3356
+ declare const HorizontalBarCell: React__default.NamedExoticComponent<HorizontalBarCellProps>;
3357
+
3358
+ type MiniBarDatum = (BaseDataPoint & {
3359
+ category?: string;
3360
+ }) | {
3361
+ x: Date;
3362
+ y: number;
3363
+ category?: string;
3364
+ };
3365
+ interface MiniBarCellProps extends CellComponentProps {
3366
+ data?: MiniBarDatum[];
3367
+ color?: string;
3368
+ categoryColors?: Record<string, string>;
3369
+ categoryLabels?: Record<string, string>;
3370
+ width?: number;
3371
+ height?: number;
3372
+ }
3373
+ /**
3374
+ * MiniBarCell
3375
+ *
3376
+ * Mini vertical bar chart for table cells.
3377
+ * Uses the same BaseDataPoint[] data structure as full BarSeries components.
3378
+ * Supports category-based coloring for conditional visualization.
3379
+ */
3380
+ declare const MiniBarCell: React__default.NamedExoticComponent<MiniBarCellProps>;
3381
+
2945
3382
  interface NumberCellProps<T = any> extends CellComponentProps<T> {
2946
3383
  format?: "number" | "currency" | "percent" | "compact";
2947
3384
  decimals?: number;
@@ -2964,6 +3401,29 @@ interface NumberCellProps<T = any> extends CellComponentProps<T> {
2964
3401
  */
2965
3402
  declare function NumberCell<T = any>({ value, row, context, format, decimals, prefix, suffix, emptyText, align, emphasis, href, linkBehavior, showPositiveSign, colorCode, className, }: NumberCellProps<T>): react_jsx_runtime.JSX.Element;
2966
3403
 
3404
+ interface PercentBarCellProps extends CellComponentProps {
3405
+ value: number;
3406
+ showLabel?: boolean;
3407
+ color?: string | "auto";
3408
+ backgroundColor?: string | "none";
3409
+ height?: number;
3410
+ segments?: number;
3411
+ segmentGap?: number;
3412
+ colorScale?: {
3413
+ type: "sequential" | "diverging";
3414
+ scheme?: string;
3415
+ center?: number;
3416
+ };
3417
+ }
3418
+ /**
3419
+ * PercentBarCell
3420
+ *
3421
+ * Horizontal bar showing percentage (0-100%).
3422
+ * Perfect for battery charge, progress indicators, and utilization metrics.
3423
+ * Supports segmented "LED meter" style with optional gradient coloring.
3424
+ */
3425
+ declare const PercentBarCell: React__default.NamedExoticComponent<PercentBarCellProps>;
3426
+
2967
3427
  interface SelectCellProps<T = any> extends CellComponentProps<T> {
2968
3428
  isSelected?: boolean;
2969
3429
  onSelect?: (row: T, checked: boolean) => void;
@@ -3035,6 +3495,25 @@ interface SiteMetaCellProps<T = unknown> extends CellComponentProps<T> {
3035
3495
  */
3036
3496
  declare function SiteMetaCell<T = unknown>({ row, context, streetAddress, city, state, postalCode, layout, size, href, LinkComponent, linkVariant, emphasis, align, className, }: SiteMetaCellProps<T>): react_jsx_runtime.JSX.Element;
3037
3497
 
3498
+ interface SparklineCellProps extends CellComponentProps {
3499
+ data?: BaseDataPoint[];
3500
+ type?: "line" | "area" | "both";
3501
+ color?: string;
3502
+ strokeWidth?: number;
3503
+ categoryColors?: Record<string, string>;
3504
+ categoryLabels?: Record<string, string>;
3505
+ width?: number;
3506
+ height?: number;
3507
+ }
3508
+ /**
3509
+ * SparklineCell
3510
+ *
3511
+ * Mini line and/or area chart for time series previews in table cells.
3512
+ * Uses the same BaseDataPoint[] data structure as full LineSeries/AreaSeries components.
3513
+ * Supports category-based coloring for conditional visualization.
3514
+ */
3515
+ declare const SparklineCell: React__default.NamedExoticComponent<SparklineCellProps>;
3516
+
3038
3517
  interface TextCellProps<T = any> extends CellComponentProps<T> {
3039
3518
  prefix?: string;
3040
3519
  suffix?: string;
@@ -3311,363 +3790,164 @@ type WithBackArrow = BaseDialogHeaderProps & {
3311
3790
  };
3312
3791
  type WithoutBackArrow = BaseDialogHeaderProps & {
3313
3792
  hasBackArrow?: false;
3314
- onBack?: never;
3315
- };
3316
- /**
3317
- * DialogHeader
3318
- *
3319
- * Header area for dialogs with optional back arrow.
3320
- */
3321
- type DialogHeaderProps = WithBackArrow | WithoutBackArrow;
3322
- declare const DialogHeader: React__default.FC<DialogHeaderProps>;
3323
-
3324
- interface DrawerProps extends DialogHeaderConfig, DialogFooterConfig {
3325
- /**
3326
- * Drawer content
3327
- */
3328
- children?: React__default.ReactNode;
3329
- /**
3330
- * Whether the drawer is open
3331
- */
3332
- isOpen: boolean;
3333
- /**
3334
- * Side to slide in from
3335
- * @default "right"
3336
- */
3337
- slideInFrom?: "left" | "right";
3338
- /**
3339
- * Whether to use a transparent backdrop
3340
- * @default false
3341
- */
3342
- transparentOverlay?: boolean;
3343
- /**
3344
- * Callback when the drawer is closed
3345
- */
3346
- onClose?: () => void;
3347
- /**
3348
- * Additional CSS classes
3349
- */
3350
- className?: string;
3351
- /**
3352
- * Whether to include padding inside the content area
3353
- * @default true
3354
- */
3355
- contentPadding?: boolean;
3356
- /**
3357
- * Maximum width of the drawer
3358
- * @default "400px"
3359
- */
3360
- maxWidth?: string;
3361
- }
3362
- /**
3363
- * Drawer
3364
- *
3365
- * Sliding panel that anchors to screen edges.
3366
- */
3367
- declare function Drawer({ children, title, headerContent, titleAlign, hideCloseIcon, hasBackArrow, onBack, isOpen, slideInFrom, transparentOverlay, onClose, className, primaryAction, secondaryAction, footerContent, contentPadding, maxWidth, }: DrawerProps): react_jsx_runtime.JSX.Element | null;
3368
- declare namespace Drawer {
3369
- var displayName: string;
3370
- }
3371
-
3372
- type EmptyStateSize = "sm" | "md" | "lg";
3373
- type EmptyStateAlignment = "center" | "start";
3374
- interface EmptyStateAction {
3375
- /** Label for the action button/link */
3376
- label: string;
3377
- /** Click handler for the action */
3378
- onPress?: () => void;
3379
- /** Optional href for link-style actions */
3380
- href?: string;
3381
- /** Whether the action is loading */
3382
- isLoading?: boolean;
3383
- /** Whether the action is disabled */
3384
- isDisabled?: boolean;
3385
- }
3386
- interface EmptyStateProps {
3387
- /** Icon name from Icon component to show at the top of the empty state. */
3388
- icon?: IconName$3;
3389
- /** Primary title describing the state. */
3390
- title: ReactNode;
3391
- /** Optional description providing more context. */
3392
- description?: ReactNode;
3393
- /** Primary action (rendered as a button). */
3394
- primaryAction?: EmptyStateAction;
3395
- /** Secondary action (rendered as a text link). */
3396
- secondaryAction?: EmptyStateAction;
3397
- /** Optional custom action area. Use this for complete control over actions. Overrides primaryAction and secondaryAction. */
3398
- actions?: ReactNode;
3399
- /** Controls the component padding and typography. */
3400
- size?: EmptyStateSize;
3401
- /** Aligns the content horizontally. */
3402
- alignment?: EmptyStateAlignment;
3403
- /** When true the component expands to fill the available height and vertically centers content. */
3404
- fullHeight?: boolean;
3405
- /** Additional className to merge with default styles. */
3406
- className?: string;
3407
- }
3408
- /**
3409
- * EmptyState
3410
- *
3411
- * Minimal, composable empty state surface for communicating lack of data.
3412
- * Supports optional icon, description and opinionated action patterns.
3413
- *
3414
- * Use `primaryAction` (button) and `secondaryAction` (text link) for consistent styling,
3415
- * or use `actions` for complete control over the action area.
3416
- */
3417
- declare function EmptyState({ icon, title, description, primaryAction, secondaryAction, actions, size, alignment, fullHeight, className, }: EmptyStateProps): react_jsx_runtime.JSX.Element;
3418
-
3419
- type EnrollmentStatus = "enrolled" | "eligible" | "not_eligible" | "pending" | "opted_out";
3420
- interface EnrollmentStatusBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
3421
- /** Enrollment status */
3422
- status: EnrollmentStatus;
3423
- /** Program name (shown in tooltip) */
3424
- programName?: string;
3425
- /** Loading state */
3426
- isLoading?: boolean;
3427
- }
3428
- /**
3429
- * EnrollmentStatusBadge
3430
- *
3431
- * Displays device enrollment status for programs.
3432
- * Color-coded status with optional program name in tooltip.
3433
- *
3434
- * Status mapping:
3435
- * - enrolled → success (green)
3436
- * - eligible → info (blue)
3437
- * - pending → warning (yellow)
3438
- * - not_eligible → neutral (gray)
3439
- * - opted_out → neutral (gray)
3440
- *
3441
- * @example
3442
- * ```tsx
3443
- * <EnrollmentStatusBadge status="enrolled" programName="Demand Response Q4" />
3444
- * <EnrollmentStatusBadge status="eligible" />
3445
- * <EnrollmentStatusBadge status="pending" />
3446
- * ```
3447
- */
3448
- declare function EnrollmentStatusBadge({ status, programName, isLoading, size, shape, ...badgeProps }: EnrollmentStatusBadgeProps): react_jsx_runtime.JSX.Element;
3449
-
3450
- interface Props {
3451
- children: ReactNode;
3452
- fallback?: ReactNode;
3453
- title?: string;
3454
- }
3455
- interface State {
3456
- hasError: boolean;
3457
- error?: Error;
3458
- }
3459
- /**
3460
- * ErrorBoundary
3461
- *
3462
- * React error boundary component for graceful error handling.
3463
- * Catches JavaScript errors in child components and displays a fallback UI with retry option.
3464
- */
3465
- declare class ErrorBoundary extends Component<Props, State> {
3466
- state: State;
3467
- static getDerivedStateFromError(error: Error): State;
3468
- componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
3469
- private handleRetry;
3470
- render(): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | React$1.ReactPortal | React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
3471
- }
3472
-
3473
- interface InputStyleProps {
3474
- /** Whether the input is in an invalid state */
3475
- isInvalid?: boolean;
3476
- /** Whether the input is disabled */
3477
- isDisabled?: boolean;
3478
- /** Whether the input should have a transparent background */
3479
- transparent?: boolean;
3480
- /** The size variant of the input */
3481
- size?: Size;
3482
- /** Whether the input is currently focused */
3483
- isFocused?: boolean;
3484
- /** Additional CSS classes to apply */
3485
- className?: string;
3486
- }
3487
- interface BaseProps {
3488
- /** The size variant of the component */
3489
- size?: Size;
3490
- /** Additional CSS classes to apply */
3491
- className?: string;
3492
- }
3493
- interface BaseInputProps extends BaseProps {
3494
- /** Whether the input should have a transparent background */
3495
- transparent?: boolean;
3496
- /** Whether to show a clear button when the input has a value */
3497
- isClearable?: boolean;
3498
- /** Callback when the clear button is clicked */
3499
- onClear?: () => void;
3500
- /** Whether to show a search icon */
3501
- showSearchIcon?: boolean;
3502
- }
3503
- interface LabelProps extends BaseProps {
3504
- /** The label content */
3505
- children: React__default.ReactNode;
3506
- /** Optional tooltip text to show next to the label */
3507
- tooltip?: string;
3508
- /** Whether to show a required field indicator (*) */
3509
- isRequired?: boolean;
3510
- /** The ID of the input this label is associated with */
3511
- htmlFor?: string;
3512
- }
3513
- interface FieldErrorProps extends BaseProps {
3514
- /** The error message to display */
3515
- children: React__default.ReactNode;
3516
- }
3517
- interface InputProps extends Omit<React__default.InputHTMLAttributes<HTMLInputElement>, "size">, InputStyleProps {
3518
- /** The size variant of the input */
3519
- size?: Size;
3520
- }
3521
- interface DescriptionProps extends Omit<TextProps, "className">, BaseProps {
3522
- /** The description content */
3523
- children: React__default.ReactNode;
3524
- }
3525
- interface FieldGroupProps extends Omit<React__default.HTMLAttributes<HTMLDivElement>, "children">, InputStyleProps {
3526
- /** Whether any child of the group is focused */
3527
- isFocusWithin?: boolean;
3528
- /** Children can be either a ReactNode or a render function */
3529
- children?: React__default.ReactNode | ((props: InputStyleProps) => React__default.ReactNode);
3530
- }
3531
- /**
3532
- * Hook for managing input focus state
3533
- */
3534
- declare function useInputFocus(): {
3535
- isFocused: boolean;
3536
- handleFocus: (e: React__default.FocusEvent<HTMLInputElement>, onFocus?: (e: React__default.FocusEvent<HTMLInputElement>) => void) => void;
3537
- handleBlur: (e: React__default.FocusEvent<HTMLInputElement>, onBlur?: (e: React__default.FocusEvent<HTMLInputElement>) => void) => void;
3538
- };
3539
- /**
3540
- * Wrapper component for input containers
3541
- */
3542
- declare function InputWrapper({ children, className, }: {
3543
- children: React__default.ReactNode;
3544
- className?: string;
3545
- }): react_jsx_runtime.JSX.Element;
3546
- /**
3547
- * Clear button component for inputs
3548
- */
3549
- declare function ClearButton({ onClick, size, className, }: {
3550
- onClick: () => void;
3551
- size?: Size;
3552
- className?: string;
3553
- }): react_jsx_runtime.JSX.Element;
3554
- /**
3555
- * Generates state-specific styles for inputs based on their current state
3556
- * (invalid, disabled, focused).
3557
- *
3558
- * State Priority:
3559
- * 1. Disabled (overrides all other states)
3560
- * 2. Invalid + Focused
3561
- * 3. Invalid
3562
- * 4. Focused
3563
- * 5. Default
3564
- *
3565
- * @example
3566
- * ```tsx
3567
- * const styles = getInputStateStyles({ isInvalid: true, isFocused: true });
3568
- * ```
3569
- */
3570
- declare function getInputStateStyles(props: {
3571
- isInvalid?: boolean;
3572
- isDisabled?: boolean;
3573
- isFocused?: boolean;
3574
- }): "border rounded-[var(--control-border-radius)] !outline-none border-border-muted" | "border rounded-[var(--control-border-radius)] !outline-none border-feedback-error-border shadow-[inset_0_0_0_1px_var(--color-feedback-error-border)]" | "border rounded-[var(--control-border-radius)] !outline-none border-feedback-error-border" | "border rounded-[var(--control-border-radius)] !outline-none border-border-focus shadow-[inset_0_0_0_1px_var(--color-border-focus)]" | "border rounded-[var(--control-border-radius)] !outline-none border-border-default";
3575
- /**
3576
- * Generates background styles based on the transparent and disabled props.
3577
- * Uses Tailwind classes for consistent styling across light/dark modes.
3578
- */
3579
- declare function getInputBackgroundStyles(props: {
3580
- transparent?: boolean;
3581
- isDisabled?: boolean;
3582
- }): "bg-transparent" | "bg-background-muted" | "bg-background-input";
3583
- /**
3584
- * Generates the complete set of base styles for input components.
3585
- * This includes state styles, background, sizing, and custom classes.
3586
- *
3587
- * @example
3588
- * ```tsx
3589
- * const styles = getInputBaseStyles({
3590
- * isInvalid: formState.hasError,
3591
- * isDisabled: isLoading,
3592
- * size: "md"
3593
- * });
3594
- * ```
3595
- */
3596
- declare function getInputBaseStyles(props: InputStyleProps): string;
3793
+ onBack?: never;
3794
+ };
3597
3795
  /**
3598
- * Generates styles for grouped form elements (like input with buttons)
3796
+ * DialogHeader
3599
3797
  *
3600
- * @example
3601
- * ```tsx
3602
- * <div className={getFieldGroupStyles({ size: "md" })}>
3603
- * <Input />
3604
- * <Button>Submit</Button>
3605
- * </div>
3606
- * ```
3798
+ * Header area for dialogs with optional back arrow.
3607
3799
  */
3608
- declare function getFieldGroupStyles(props: FieldGroupProps): string;
3800
+ type DialogHeaderProps = WithBackArrow | WithoutBackArrow;
3801
+ declare const DialogHeader: React__default.FC<DialogHeaderProps>;
3802
+
3803
+ interface DrawerProps extends DialogHeaderConfig, DialogFooterConfig {
3804
+ /**
3805
+ * Drawer content
3806
+ */
3807
+ children?: React__default.ReactNode;
3808
+ /**
3809
+ * Whether the drawer is open
3810
+ */
3811
+ isOpen: boolean;
3812
+ /**
3813
+ * Side to slide in from
3814
+ * @default "right"
3815
+ */
3816
+ slideInFrom?: "left" | "right";
3817
+ /**
3818
+ * Whether to use a transparent backdrop
3819
+ * @default false
3820
+ */
3821
+ transparentOverlay?: boolean;
3822
+ /**
3823
+ * Callback when the drawer is closed
3824
+ */
3825
+ onClose?: () => void;
3826
+ /**
3827
+ * Additional CSS classes
3828
+ */
3829
+ className?: string;
3830
+ /**
3831
+ * Whether to include padding inside the content area
3832
+ * @default true
3833
+ */
3834
+ contentPadding?: boolean;
3835
+ /**
3836
+ * Maximum width of the drawer
3837
+ * @default "400px"
3838
+ */
3839
+ maxWidth?: string;
3840
+ }
3609
3841
  /**
3610
- * Label component for form fields. Supports tooltips and required field indicators.
3842
+ * Drawer
3611
3843
  *
3612
- * @example
3613
- * ```tsx
3614
- * <Label
3615
- * htmlFor="email"
3616
- * tooltip="Enter your work email"
3617
- * isRequired
3618
- * >
3619
- * Email Address
3620
- * </Label>
3621
- * ```
3844
+ * Sliding panel that anchors to screen edges.
3622
3845
  */
3623
- declare function Label({ children, size, tooltip, isRequired, className, htmlFor, }: LabelProps): react_jsx_runtime.JSX.Element;
3846
+ declare function Drawer({ children, title, headerContent, titleAlign, hideCloseIcon, hasBackArrow, onBack, isOpen, slideInFrom, transparentOverlay, onClose, className, primaryAction, secondaryAction, footerContent, contentPadding, maxWidth, }: DrawerProps): react_jsx_runtime.JSX.Element | null;
3847
+ declare namespace Drawer {
3848
+ var displayName: string;
3849
+ }
3850
+
3851
+ type EmptyStateSize = "sm" | "md" | "lg";
3852
+ type EmptyStateAlignment = "center" | "start";
3853
+ interface EmptyStateAction {
3854
+ /** Label for the action button/link */
3855
+ label: string;
3856
+ /** Click handler for the action */
3857
+ onPress?: () => void;
3858
+ /** Optional href for link-style actions */
3859
+ href?: string;
3860
+ /** Whether the action is loading */
3861
+ isLoading?: boolean;
3862
+ /** Whether the action is disabled */
3863
+ isDisabled?: boolean;
3864
+ }
3865
+ interface EmptyStateProps {
3866
+ /** Icon name from Icon component to show at the top of the empty state. */
3867
+ icon?: IconName$3;
3868
+ /** Primary title describing the state. */
3869
+ title: ReactNode;
3870
+ /** Optional description providing more context. */
3871
+ description?: ReactNode;
3872
+ /** Primary action (rendered as a button). */
3873
+ primaryAction?: EmptyStateAction;
3874
+ /** Secondary action (rendered as a text link). */
3875
+ secondaryAction?: EmptyStateAction;
3876
+ /** Optional custom action area. Use this for complete control over actions. Overrides primaryAction and secondaryAction. */
3877
+ actions?: ReactNode;
3878
+ /** Controls the component padding and typography. */
3879
+ size?: EmptyStateSize;
3880
+ /** Aligns the content horizontally. */
3881
+ alignment?: EmptyStateAlignment;
3882
+ /** When true the component expands to fill the available height and vertically centers content. */
3883
+ fullHeight?: boolean;
3884
+ /** Additional className to merge with default styles. */
3885
+ className?: string;
3886
+ }
3624
3887
  /**
3625
- * Description component for providing additional context about a form field.
3888
+ * EmptyState
3626
3889
  *
3627
- * @example
3628
- * ```tsx
3629
- * <Description>Must be at least 8 characters</Description>
3630
- * ```
3631
- */
3632
- declare function Description({ size, className, children, ...props }: DescriptionProps): react_jsx_runtime.JSX.Element;
3633
- /**
3634
- * Error message component for form fields. Automatically handles
3635
- * accessibility attributes for screen readers.
3890
+ * Minimal, composable empty state surface for communicating lack of data.
3891
+ * Supports optional icon, description and opinionated action patterns.
3636
3892
  *
3637
- * @example
3638
- * ```tsx
3639
- * {hasError && <FieldError>This field is required</FieldError>}
3640
- * ```
3893
+ * Use `primaryAction` (button) and `secondaryAction` (text link) for consistent styling,
3894
+ * or use `actions` for complete control over the action area.
3641
3895
  */
3642
- declare function FieldError({ children, size, className }: FieldErrorProps): react_jsx_runtime.JSX.Element;
3896
+ declare function EmptyState({ icon, title, description, primaryAction, secondaryAction, actions, size, alignment, fullHeight, className, }: EmptyStateProps): react_jsx_runtime.JSX.Element;
3897
+
3898
+ type EnrollmentStatus = "enrolled" | "eligible" | "not_eligible" | "pending" | "opted_out";
3899
+ interface EnrollmentStatusBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
3900
+ /** Enrollment status */
3901
+ status: EnrollmentStatus;
3902
+ /** Program name (shown in tooltip) */
3903
+ programName?: string;
3904
+ /** Loading state */
3905
+ isLoading?: boolean;
3906
+ }
3643
3907
  /**
3644
- * Base input component with consistent styling and state handling.
3645
- * Extends the native input element with our custom styling system.
3908
+ * EnrollmentStatusBadge
3909
+ *
3910
+ * Displays device enrollment status for programs.
3911
+ * Color-coded status with optional program name in tooltip.
3912
+ *
3913
+ * Status mapping:
3914
+ * - enrolled → success (green)
3915
+ * - eligible → info (blue)
3916
+ * - pending → warning (yellow)
3917
+ * - not_eligible → neutral (gray)
3918
+ * - opted_out → neutral (gray)
3646
3919
  *
3647
3920
  * @example
3648
3921
  * ```tsx
3649
- * <Input
3650
- * size="md"
3651
- * isInvalid={hasError}
3652
- * isDisabled={isLoading}
3653
- * transparent={false}
3654
- * />
3922
+ * <EnrollmentStatusBadge status="enrolled" programName="Demand Response Q4" />
3923
+ * <EnrollmentStatusBadge status="eligible" />
3924
+ * <EnrollmentStatusBadge status="pending" />
3655
3925
  * ```
3656
3926
  */
3657
- declare function Input({ size, isInvalid, isDisabled, isFocused, transparent, className, ...props }: InputProps): react_jsx_runtime.JSX.Element;
3927
+ declare function EnrollmentStatusBadge({ status, programName, isLoading, size, shape, ...badgeProps }: EnrollmentStatusBadgeProps): react_jsx_runtime.JSX.Element;
3928
+
3929
+ interface Props {
3930
+ children: ReactNode;
3931
+ fallback?: ReactNode;
3932
+ title?: string;
3933
+ }
3934
+ interface State {
3935
+ hasError: boolean;
3936
+ error?: Error;
3937
+ }
3658
3938
  /**
3659
- * Container for grouping form elements with consistent styling.
3660
- * Useful for creating compound components like input with buttons.
3939
+ * ErrorBoundary
3661
3940
  *
3662
- * @example
3663
- * ```tsx
3664
- * <FieldGroup>
3665
- * <Input placeholder="Search..." />
3666
- * <Button>Search</Button>
3667
- * </FieldGroup>
3668
- * ```
3941
+ * React error boundary component for graceful error handling.
3942
+ * Catches JavaScript errors in child components and displays a fallback UI with retry option.
3669
3943
  */
3670
- declare function FieldGroup(props: FieldGroupProps): react_jsx_runtime.JSX.Element;
3944
+ declare class ErrorBoundary extends Component<Props, State> {
3945
+ state: State;
3946
+ static getDerivedStateFromError(error: Error): State;
3947
+ componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
3948
+ private handleRetry;
3949
+ render(): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | React$1.ReactPortal | React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
3950
+ }
3671
3951
 
3672
3952
  interface FirmwareVersionBadgeProps extends Omit<BadgeProps, "variant" | "children"> {
3673
3953
  /** Firmware version string */
@@ -3898,7 +4178,7 @@ interface KpiProps {
3898
4178
  /** Layout orientation */
3899
4179
  orientation?: KpiOrientation;
3900
4180
  /** Loading state */
3901
- loading?: boolean;
4181
+ isLoading?: boolean;
3902
4182
  /** Empty state */
3903
4183
  empty?: boolean;
3904
4184
  /** Error state */
@@ -3914,7 +4194,7 @@ interface KpiProps {
3914
4194
  /** Custom trend renderer */
3915
4195
  renderTrend?: (points?: TrendPoint[]) => React__default.ReactNode;
3916
4196
  }
3917
- declare function Kpi({ label, value, formatter, delta, deltaPeriodLabel, deltaIntent, trend, status, helpText, size, orientation, loading, empty, error, onClick, className, renderValue, renderDelta, renderTrend, }: KpiProps): react_jsx_runtime.JSX.Element;
4197
+ declare function Kpi({ label, value, formatter, delta, deltaPeriodLabel, deltaIntent, trend, status, helpText, size, orientation, isLoading, empty, error, onClick, className, renderValue, renderDelta, renderTrend, }: KpiProps): react_jsx_runtime.JSX.Element;
3918
4198
 
3919
4199
  /**
3920
4200
  * KpiGroup Component — Layout container for multiple KPIs
@@ -3956,11 +4236,11 @@ interface KpiGroupProps {
3956
4236
  /** Optional header content */
3957
4237
  header?: React__default.ReactNode;
3958
4238
  /** Loading state for all children */
3959
- loading?: boolean;
4239
+ isLoading?: boolean;
3960
4240
  /** Additional CSS classes */
3961
4241
  className?: string;
3962
4242
  }
3963
- declare function KpiGroup({ children, cols, gap, align, equalizeHeights, header, loading, className, }: KpiGroupProps): react_jsx_runtime.JSX.Element;
4243
+ declare function KpiGroup({ children, cols, gap, align, equalizeHeights, header, isLoading, className, }: KpiGroupProps): react_jsx_runtime.JSX.Element;
3964
4244
  declare namespace KpiGroup {
3965
4245
  var displayName: string;
3966
4246
  }
@@ -4918,6 +5198,144 @@ interface SelectProps<T extends SelectItem> extends Omit<SelectProps$1<T>, "chil
4918
5198
  }
4919
5199
  declare function Select<T extends SelectItem>({ label, description, errorMessage, children, items, renderItem, size, selectedKey: controlledSelectedKey, defaultSelectedKey, onSelectionChange, placeholder, showErrors, tooltip, isRequired, transparent, placement, shouldFlip, menuWidth, ...props }: SelectProps<T>): react_jsx_runtime.JSX.Element;
4920
5200
 
5201
+ interface SiteCardProps {
5202
+ /** Street address */
5203
+ streetAddress: string;
5204
+ /** City name (optional) */
5205
+ city?: string;
5206
+ /** State/province (optional) */
5207
+ state?: string;
5208
+ /** Postal/ZIP code (optional) */
5209
+ postalCode?: string;
5210
+ /** Longitude for map display */
5211
+ longitude?: number;
5212
+ /** Latitude for map display */
5213
+ latitude?: number;
5214
+ /** Link to site detail page (optional) */
5215
+ href?: string;
5216
+ /** Custom link component (e.g., Next.js Link) */
5217
+ LinkComponent?: ComponentType<{
5218
+ href: string;
5219
+ className?: string;
5220
+ children: React.ReactNode;
5221
+ }>;
5222
+ /** Card variant */
5223
+ variant?: "outlined" | "elevated" | "filled" | "ghost";
5224
+ /** Show map (requires longitude/latitude) */
5225
+ showMap?: boolean;
5226
+ /** Map height */
5227
+ mapHeight?: number | string;
5228
+ /** Mapbox access token (required for map display) */
5229
+ mapboxAccessToken?: string;
5230
+ /** Loading state */
5231
+ isLoading?: boolean;
5232
+ /** Additional classes for the card */
5233
+ className?: string;
5234
+ /** Additional classes for the card content (for padding control, etc.) */
5235
+ contentClassName?: string;
5236
+ }
5237
+ /**
5238
+ * SiteCard
5239
+ *
5240
+ * A card component for displaying site/location information.
5241
+ * Can include an optional static map showing the site's location.
5242
+ *
5243
+ * @example
5244
+ * ```tsx
5245
+ * <SiteCard
5246
+ * streetAddress="123 Main St"
5247
+ * city="San Francisco"
5248
+ * state="CA"
5249
+ * postalCode="94102"
5250
+ * longitude={-122.4194}
5251
+ * latitude={37.7749}
5252
+ * showMap
5253
+ * href="/sites/123"
5254
+ * />
5255
+ * ```
5256
+ */
5257
+ declare function SiteCard({ streetAddress, city, state, postalCode, longitude, latitude, href, LinkComponent, variant, showMap, mapHeight, mapboxAccessToken, isLoading, className, contentClassName, }: SiteCardProps): react_jsx_runtime.JSX.Element;
5258
+
5259
+ interface SiteContactCardProps {
5260
+ /** Site information */
5261
+ site: {
5262
+ streetAddress: string;
5263
+ city?: string;
5264
+ state?: string;
5265
+ postalCode?: string;
5266
+ longitude?: number;
5267
+ latitude?: number;
5268
+ href?: string;
5269
+ };
5270
+ /** Contact information (optional) */
5271
+ contact?: {
5272
+ firstName: string;
5273
+ lastName: string;
5274
+ email?: string;
5275
+ phone?: string;
5276
+ avatarUrl?: string;
5277
+ href?: string;
5278
+ };
5279
+ /** Custom link component (e.g., Next.js Link) */
5280
+ LinkComponent?: ComponentType<{
5281
+ href: string;
5282
+ className?: string;
5283
+ children: React.ReactNode;
5284
+ }>;
5285
+ /** Card variant */
5286
+ variant?: "outlined" | "elevated" | "filled" | "ghost";
5287
+ /** Show map (requires site longitude/latitude) */
5288
+ showMap?: boolean;
5289
+ /** Map height */
5290
+ mapHeight?: number | string;
5291
+ /** Mapbox access token (required for map display) */
5292
+ mapboxAccessToken?: string;
5293
+ /** Show contact email
5294
+ * @default true
5295
+ */
5296
+ showEmail?: boolean;
5297
+ /** Show contact phone
5298
+ * @default false
5299
+ */
5300
+ showPhone?: boolean;
5301
+ /** Loading state */
5302
+ isLoading?: boolean;
5303
+ /** Additional classes for the card */
5304
+ className?: string;
5305
+ /** Additional classes for the card content (for padding control, etc.) */
5306
+ contentClassName?: string;
5307
+ }
5308
+ /**
5309
+ * SiteContactCard
5310
+ *
5311
+ * A combined card component for displaying both site and contact information.
5312
+ * Shows site details with optional map, followed by associated contact information.
5313
+ *
5314
+ * @example
5315
+ * ```tsx
5316
+ * <SiteContactCard
5317
+ * site={{
5318
+ * streetAddress: "123 Main St",
5319
+ * city: "San Francisco",
5320
+ * state: "CA",
5321
+ * postalCode: "94102",
5322
+ * longitude: -122.4194,
5323
+ * latitude: 37.7749,
5324
+ * href: "/sites/123"
5325
+ * }}
5326
+ * contact={{
5327
+ * firstName: "John",
5328
+ * lastName: "Doe",
5329
+ * email: "john.doe@example.com",
5330
+ * phone: "+1 (555) 123-4567",
5331
+ * href: "/contacts/123"
5332
+ * }}
5333
+ * showMap
5334
+ * />
5335
+ * ```
5336
+ */
5337
+ declare function SiteContactCard({ site, contact, LinkComponent, variant, showMap, mapHeight, mapboxAccessToken, showEmail, showPhone, isLoading, className, contentClassName, }: SiteContactCardProps): react_jsx_runtime.JSX.Element;
5338
+
4921
5339
  interface SiteMetaDisplayProps {
4922
5340
  /** Street address (combined street lines) */
4923
5341
  streetAddress: string;
@@ -5465,7 +5883,7 @@ interface TimelineProps {
5465
5883
  declare function Timeline({ children, className }: TimelineProps): react_jsx_runtime.JSX.Element;
5466
5884
 
5467
5885
  type IconName$1 = React.ComponentProps<typeof Icon>["name"];
5468
- type TimelineItemVariant = "default" | "active" | "muted";
5886
+ type TimelineItemVariant = "default" | "active" | "muted" | "success" | "error" | "warning" | "info";
5469
5887
  interface TimelineItemProps {
5470
5888
  children: ReactNode;
5471
5889
  /** Visual variant of the timeline item */
@@ -5639,4 +6057,4 @@ type StatTone = "success" | "warning" | "error" | "info" | "neutral";
5639
6057
  */
5640
6058
  declare function getStateTone(state: DeviceState): StatTone;
5641
6059
 
5642
- export { type Action, ActionCell, type ActionCellProps, ActivityFeed, ActivityFeedGroup, type ActivityFeedGroupProps, type ActivityFeedProps, type ActivityFeedSize, type ActivityFeedVariant, ActivityItem, type ActivityItemProps, type ActivityItemSurface, type ActivityItemTone, Alert, type AlertProps, AreaSeries, AutoMobileRenderer, Autocomplete, BREAKPOINTS, BadgeProps, BarSeries, BaseDataPoint, type BaseInputProps, type BaseProps, BooleanCell, type BooleanCellProps, BooleanFormat, BreadcrumbItem, type BreadcrumbItemProps, Breadcrumbs, type Breakpoint, type BreakpointState, Button, Calendar, Card, CardContent, type CardContentProps, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, CardMedia, type CardMediaProps, CardMobileRenderer, type CardProps, type CardVariant, type CellAlignment, type CellComponent, type CellComponentProps, type CellContext, type CellEmphasis, ChartAxis, ChartBottomBar, ChartContainer, ChartEventMarkers, type ChartEventMarkersProps, type ChartExportMetadata, ChartTooltip, Checkbox, CheckboxGroup, Chip, ClearButton, Collapse, CollapseContent, type CollapseContentProps, type CollapseDensity, CollapseHeader, type CollapseHeaderProps, CollapseItem, type CollapseItemProps, type CollapseProps, type CollapseVariant, ColorModeProvider, type Column, ComponentFormatter, Confirm, type ConfirmProps, ConnectionStatusBadge, type ConnectionStatusBadgeProps, ContactMetaCell, ContactMetaDisplay, type ContactMetaDisplayProps, CopyToClipboard, CurrencyFormat, CurrentFormat, CustomPinsSpec, DataControls, type Filter as DataControlsFilter, type DataControlsProps, type SortOption as DataControlsSortOption, DataTable, type DataTableProps, DateCell, type DateCellProps, DateFormat, DateRangePicker, Description, type DescriptionProps, DeviceHealthBadge, type DeviceHealthBadgeProps, DeviceMetaCell, type DeviceMetaCellProps, DeviceMetaDisplay, type DeviceMetaDisplayProps, DeviceState, DeviceStateBadge, type DeviceStateBadgeProps, DeviceStateCell, type DeviceStateCellProps, DeviceStateWithMetric, type DeviceStateWithMetricProps, type DeviceType, DeviceTypeIcon, type DeviceTypeIconProps, Dialog, type DialogAction, type DialogFooterConfig, DialogHeader, type DialogHeaderConfig, type DialogHeaderProps, type DialogProps, DistanceFormat, Drawer, type DrawerProps, EmptyState, type EmptyStateAction, type EmptyStateAlignment, type EmptyStateProps, type EmptyStateSize, EnergyFormat, type EnrollmentStatus, EnrollmentStatusBadge, type EnrollmentStatusBadgeProps, ErrorBoundary, type EventMarker, type ExportType, type FacetConfig, type FacetCounts, type FacetType, FieldError, type FieldErrorProps, FieldFormat, FieldGroup, type FieldGroupProps, FieldValue, type FilterChip, FilterChips, type FilterChipsProps, type FilterCondition, FilterDialog, type FilterDialogProps, type FilterGroup, type FilterOperator, type FilterState, FirmwareVersionBadge, type FirmwareVersionBadgeProps, Form, FormatRegistry, FormattedCell, FormattedValue, FormatterFunction, FunnelSeries, type FunnelSeriesProps, type FunnelStage as FunnelSeriesStage, GeoJsonLayerSpec, Grid, type GridAlign, type GridCols, type GridFlow, type GridGap, type GridItemProps, type GridJustify, type GridProps, type GridSpan, GridState, GridStateBadge, type GridStateBadgeProps, type HealthStatus, Icon, InfiniteScrollIndicator, type InfiniteScrollIndicatorProps, Input, type InputProps, type InputStyleProps, InputWrapper, Kpi, KpiGroup, type KpiGroupAlign, type KpiGroupCols, type KpiGroupGap, type KpiGroupProps, type KpiOrientation, type KpiProps, type KpiSize, type KpiStatus, Label, type LabelProps, LayerSpec, LineSeries, type LinkBehavior, List, ListBox, ListBoxItem, ListItem, type ListItemProps, ListPane, type ListPaneProps, type ListProps, type LoadingState, type MobileBreakpoint, type MobileConfig, type MobileRenderer, ModalBackdrop, type ModalBackdropProps, Notice, NoticeContainer, type NoticeContainerProps, type NoticeOptions, type NoticeProps, NoticeProvider, type NoticeProviderProps, type NoticeVariant, NumberCell, type NumberCellProps, NumberField, NumberFormat, type PageAsideProps, type PageBreadcrumbItem, type PageContentProps, type PageHeaderProps, PageLayout, type PageLayoutProps, type PageScrollableContentProps, PhoneFormat, PlaceSearch, Popover, PowerFormat, type PresetRange, ProgressBar, Radio, RadioCard, RadioCardGroup, type RadioCardGroupProps, type RadioCardProps, RadioGroup, RangeCalendar, RasterLayerSpec, ResistanceFormat, type ResponsiveValue, ResultsCount, type ResultsCountProps, SKELETON_SIZES, type SearchConfig, SearchControl, type SearchControlProps, Section, SectionNav, type SectionNavItem, type SectionNavOrientation, type SectionNavProps, type SectionProps, type SectionSpacing, type SectionVariant, Select, SelectCell, type SelectCellProps, SiteMetaCell, SiteMetaDisplay, type SiteMetaDisplayProps, Skeleton, Slider, type SortConfig, SortControl, type SortControlProps, type SortDirection, type SortState, SplitPane, type SplitPaneOrientation, type SplitPanePanelProps, type SplitPaneProps, type StatAlign, type StatFormatter, type StatItem, type StatLayout, StatList, type StatListProps, type StatThreshold, type StatTone$1 as StatTone, type StatValue, Switch, Tab, TabList, TabPanel, type TableDensity, type TableLayout, type TableWidth, Tabs, type TabsProps$1 as TabsProps, TemperatureFormat, TemperatureUnit, TemperatureUnitString, TextArea, TextAreaWithChips, TextCell, type TextCellProps, TextField, TextFormat, TimeControls, type TimeControlsProps, TimeField, type TimeRange, Timeline, TimelineItem, type TimelineItemProps, type TimelineItemVariant, ToggleButton, Tooltip, TooltipData, Tray, type TrayProps, type TrendPoint, type UseBreakpointReturn, type UseClientDataControlsOptions, type UseClientDataControlsResult, type UseDataControlsClientOptions, type UseDataControlsOptions, type UseDataControlsResult, type UseDataControlsServerOptions, type UseInfiniteScrollOptions, type UseInfiniteScrollReturn, type UseServerDataControlsOptions, VectorLayerSpec, VoltageFormat, type WindowSize, type WindowSizeOption, YFormatType, addFilterCondition, autoScaleCurrent, autoScaleDistance, autoScaleEnergy, autoScalePower, autoScaleResistance, autoScaleVoltage, camelCaseToWords, capitalize, celsiusToFahrenheit, celsiusToKelvin, centimetersToInches, createEmptyFilter, createFilter, createFilters, createFormat, enumToSentenceCase, exportChart, fahrenheitToCelsius, fahrenheitToKelvin, feetToMeters, feetToMiles, filterToChips, formatBoolean, formatCapacity, formatCurrency, formatCurrent, formatDate, formatDistance, formatEmptyValue, formatEnergy, formatFieldValue, formatInternationalPhone, formatNumber, formatPercent, formatPhone, formatPhoneNumber, formatPower, formatPowerRating, formatResistance, formatTemperature, formatText, formatUSPhone, formatVoltage, getBadgeClasses, getBooleanBadgeVariant, getCellAlignmentClasses, getCellContainerClasses, getCellTextClasses, getDateParts, getExportFormatName, getFieldGroupStyles, getFilterFields, getInputBackgroundStyles, getInputBaseStyles, getInputStateStyles, getLinkClasses, getNumericColorClasses, getSkeletonSize, getStateTone, inchesToCentimeters, isCustomPinsLayer, isExportSupported, isFilterEmpty, isGeoJsonLayer, isNil, isRasterLayer, isVectorLayer, kelvinToCelsius, kelvinToFahrenheit, kilometersToMiles, layer, metersToFeet, metersToMiles, metersToYards, milesToFeet, milesToKilometers, milesToMeters, parseBoolean, removeFilterCondition, resolveValue, snakeCaseToWords, temperatureStringToSymbol, toA, toActiveInactive, toAmps, toBoolean, toCelsius, toCentimeters, toCheckmark, toCompactNumber, toCurrency, toCustomDateFormat, toDateString, toEnabledDisabled, toFahrenheit, toFeet, toFloat, toFormattedNumber, toFullDateTime, toGW, toGWh, toGigawatts, toISOString, toInches, toInteger, toKA, toKV, toKW, toKelvin, toKiloamps, toKilohms, toKilometers, toKilovolts, toKilowatts, toLowerCase, toMA, toMV, toMW, toMWh, toMegawatts, toMegohms, toMeters, toMiles, toMilliamps, toMillimeters, toMilliohms, toMillivolts, toNauticalMiles, toOhms, toOnOff, toPercentage, toRelativeTime, toScientificNotation, toSecret, toSentenceCase, toTemperature, toTitleCase, toTrueFalse, toUpperCase, toV, toVolts, toW, toWatts, toWh, toYards, tokWh, truncateEnd, truncateMiddle, truncateStart, ucFirst, useBreakpoint, useClientDataControls, useColorMode, useDataControls, useDebounce, useInfiniteScroll, useInputFocus, useLocalStorage, useMediaQuery, useNotice, useServerDataControls, wrapWithLink, yardsToMeters };
6060
+ export { type Action, ActionCell, type ActionCellProps, ActivityFeed, ActivityFeedGroup, type ActivityFeedGroupProps, type ActivityFeedProps, type ActivityFeedSize, type ActivityFeedVariant, ActivityItem, type ActivityItemProps, type ActivityItemSurface, type ActivityItemTone, Alert, type AlertProps, AreaSeries, AutoMobileRenderer, Autocomplete, BREAKPOINTS, BadgeCell, type BadgeCellProps, BadgeProps, BarSeries, BaseDataPoint, type BaseInputProps, type BaseProps, BooleanCell, type BooleanCellProps, BooleanFormat, BreadcrumbItem, type BreadcrumbItemProps, Breadcrumbs, type Breakpoint, type BreakpointState, Button, Calendar, Card, CardContent, type CardContentProps, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, CardMedia, type CardMediaProps, CardMobileRenderer, type CardProps, type CardVariant, type CellAlignment, type CellComponent, type CellComponentProps, type CellContext, type CellEmphasis, ChartAxis, ChartBottomBar, ChartContainer, ChartEventMarkers, type ChartEventMarkersProps, type ChartExportMetadata, ChartTooltip, Checkbox, CheckboxGroup, Chip, ClearButton, Collapse, CollapseContent, type CollapseContentProps, type CollapseDensity, CollapseHeader, type CollapseHeaderProps, CollapseItem, type CollapseItemProps, type CollapseProps, type CollapseVariant, ColorField, type ColorFieldProps, ColorModeProvider, type Column, ComponentFormatter, Confirm, type ConfirmProps, ConnectionStatusBadge, type ConnectionStatusBadgeProps, ContactCard, type ContactCardProps, ContactMetaCell, ContactMetaDisplay, type ContactMetaDisplayProps, CopyToClipboard, CurrencyFormat, CurrentFormat, CustomPinsSpec, DataControls, type Filter as DataControlsFilter, type DataControlsProps, type SortOption as DataControlsSortOption, DataTable, type DataTableProps, DateCell, type DateCellProps, DateFormat, DateRangePicker, Description, type DescriptionProps, DeviceHealthBadge, type DeviceHealthBadgeProps, DeviceMetaCell, type DeviceMetaCellProps, DeviceMetaDisplay, type DeviceMetaDisplayProps, DeviceState, DeviceStateBadge, type DeviceStateBadgeProps, DeviceStateCell, type DeviceStateCellProps, DeviceStateWithMetric, type DeviceStateWithMetricProps, type DeviceType, DeviceTypeIcon, type DeviceTypeIconProps, Dialog, type DialogAction, type DialogFooterConfig, DialogHeader, type DialogHeaderConfig, type DialogHeaderProps, type DialogProps, DistanceFormat, Drawer, type DrawerProps, EmptyState, type EmptyStateAction, type EmptyStateAlignment, type EmptyStateProps, type EmptyStateSize, EnergyFormat, type EnrollmentStatus, EnrollmentStatusBadge, type EnrollmentStatusBadgeProps, ErrorBoundary, type EventMarker, type ExportType, type FacetConfig, type FacetCounts, type FacetType, FieldError, type FieldErrorProps, FieldFormat, FieldGroup, type FieldGroupProps, FieldValue, type FilterChip, FilterChips, type FilterChipsProps, type FilterCondition, FilterDialog, type FilterDialogProps, type FilterGroup, type FilterOperator, type FilterState, FirmwareVersionBadge, type FirmwareVersionBadgeProps, Form, FormatRegistry, FormattedCell, FormattedValue, FormatterFunction, FunnelSeries, type FunnelSeriesProps, type FunnelStage as FunnelSeriesStage, GeoJsonLayerSpec, Grid, type GridAlign, type GridCols, type GridFlow, type GridGap, type GridItemProps, type GridJustify, type GridProps, type GridSpan, GridState, GridStateBadge, type GridStateBadgeProps, type HealthStatus, HorizontalBarCell, type HorizontalBarCellProps, Icon, InfiniteScrollIndicator, type InfiniteScrollIndicatorProps, Input, type InputProps, type InputStyleProps, InputWrapper, Kpi, KpiGroup, type KpiGroupAlign, type KpiGroupCols, type KpiGroupGap, type KpiGroupProps, type KpiOrientation, type KpiProps, type KpiSize, type KpiStatus, Label, type LabelProps, LayerSpec, LineSeries, type LinkBehavior, List, ListBox, ListBoxItem, ListItem, type ListItemProps, ListPane, type ListPaneProps, type ListProps, type LoadingState, MiniBarCell, type MiniBarCellProps, type MobileBreakpoint, type MobileConfig, type MobileRenderer, ModalBackdrop, type ModalBackdropProps, Notice, NoticeContainer, type NoticeContainerProps, type NoticeOptions, type NoticeProps, NoticeProvider, type NoticeProviderProps, type NoticeVariant, NumberCell, type NumberCellProps, NumberField, NumberFormat, type PageAsideProps, type PageBreadcrumbItem, type PageContentProps, type PageHeaderProps, PageLayout, type PageLayoutProps, type PageScrollableContentProps, PercentBarCell, type PercentBarCellProps, PhoneFormat, PlaceSearch, Popover, PowerFormat, type PresetRange, ProgressBar, Radio, RadioCard, RadioCardGroup, type RadioCardGroupProps, type RadioCardProps, RadioGroup, RangeCalendar, RasterLayerSpec, ResistanceFormat, type ResponsiveValue, ResultsCount, type ResultsCountProps, SKELETON_SIZES, type SearchConfig, SearchControl, type SearchControlProps, Section, SectionNav, type SectionNavItem, type SectionNavOrientation, type SectionNavProps, type SectionProps, type SectionSpacing, type SectionVariant, Select, SelectCell, type SelectCellProps, SiteCard, type SiteCardProps, SiteContactCard, type SiteContactCardProps, SiteMetaCell, SiteMetaDisplay, type SiteMetaDisplayProps, Skeleton, Slider, type SortConfig, SortControl, type SortControlProps, type SortDirection, type SortState, SparklineCell, type SparklineCellProps, SplitPane, type SplitPaneOrientation, type SplitPanePanelProps, type SplitPaneProps, type StatAlign, type StatFormatter, type StatItem, type StatLayout, StatList, type StatListProps, type StatThreshold, type StatTone$1 as StatTone, type StatValue, Switch, Tab, TabList, TabPanel, type TableDensity, type TableLayout, type TableWidth, Tabs, type TabsProps$1 as TabsProps, TemperatureFormat, TemperatureUnit, TemperatureUnitString, TextArea, TextAreaWithChips, TextCell, type TextCellProps, TextField, TextFormat, TimeControls, type TimeControlsProps, TimeField, type TimeRange, Timeline, TimelineItem, type TimelineItemProps, type TimelineItemVariant, ToggleButton, Tooltip, TooltipData, Tray, type TrayProps, type TrendPoint, type UseBreakpointReturn, type UseClientDataControlsOptions, type UseClientDataControlsResult, type UseDataControlsClientOptions, type UseDataControlsOptions, type UseDataControlsResult, type UseDataControlsServerOptions, type UseInfiniteScrollOptions, type UseInfiniteScrollReturn, type UseServerDataControlsOptions, VectorLayerSpec, VoltageFormat, type WindowSize, type WindowSizeOption, YFormatType, addFilterCondition, autoScaleCurrent, autoScaleDistance, autoScaleEnergy, autoScalePower, autoScaleResistance, autoScaleVoltage, camelCaseToWords, capitalize, celsiusToFahrenheit, celsiusToKelvin, centimetersToInches, createEmptyFilter, createFilter, createFilters, createFormat, enumToSentenceCase, exportChart, fahrenheitToCelsius, fahrenheitToKelvin, feetToMeters, feetToMiles, filterToChips, formatBoolean, formatCapacity, formatCurrency, formatCurrent, formatDate, formatDistance, formatEmptyValue, formatEnergy, formatFieldValue, formatInternationalPhone, formatNumber, formatPercent, formatPhone, formatPhoneNumber, formatPower, formatPowerRating, formatResistance, formatTemperature, formatText, formatUSPhone, formatVoltage, getBadgeClasses, getBooleanBadgeVariant, getCellAlignmentClasses, getCellContainerClasses, getCellTextClasses, getDateParts, getExportFormatName, getFieldGroupStyles, getFilterFields, getInputBackgroundStyles, getInputBaseStyles, getInputStateStyles, getLinkClasses, getNumericColorClasses, getSkeletonSize, getStateTone, inchesToCentimeters, isCustomPinsLayer, isExportSupported, isFilterEmpty, isGeoJsonLayer, isNil, isRasterLayer, isVectorLayer, kelvinToCelsius, kelvinToFahrenheit, kilometersToMiles, layer, metersToFeet, metersToMiles, metersToYards, milesToFeet, milesToKilometers, milesToMeters, parseBoolean, removeFilterCondition, resolveValue, snakeCaseToWords, temperatureStringToSymbol, toA, toActiveInactive, toAmps, toBoolean, toCelsius, toCentimeters, toCheckmark, toCompactNumber, toCurrency, toCustomDateFormat, toDateString, toEnabledDisabled, toFahrenheit, toFeet, toFloat, toFormattedNumber, toFullDateTime, toGW, toGWh, toGigawatts, toISOString, toInches, toInteger, toKA, toKV, toKW, toKelvin, toKiloamps, toKilohms, toKilometers, toKilovolts, toKilowatts, toLowerCase, toMA, toMV, toMW, toMWh, toMegawatts, toMegohms, toMeters, toMiles, toMilliamps, toMillimeters, toMilliohms, toMillivolts, toNauticalMiles, toOhms, toOnOff, toPercentage, toRelativeTime, toScientificNotation, toSecret, toSentenceCase, toTemperature, toTitleCase, toTrueFalse, toUpperCase, toV, toVolts, toW, toWatts, toWh, toYards, tokWh, truncateEnd, truncateMiddle, truncateStart, ucFirst, useBreakpoint, useClientDataControls, useColorMode, useDataControls, useDebounce, useInfiniteScroll, useInputFocus, useLocalStorage, useMediaQuery, useNotice, useServerDataControls, wrapWithLink, yardsToMeters };