myio-js-library 0.1.183 → 0.1.185

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.cts CHANGED
@@ -820,6 +820,264 @@ declare function extractMyIOCredentials(attributes: Record<string, any> | null |
820
820
  ingestionId: string;
821
821
  };
822
822
 
823
+ /**
824
+ * RFC-0104: Device Annotations System
825
+ * Type definitions for the annotations feature
826
+ */
827
+ type AnnotationType = 'observation' | 'pending' | 'maintenance' | 'activity';
828
+ type ImportanceLevel = 1 | 2 | 3 | 4 | 5;
829
+ type AnnotationStatus = 'created' | 'modified' | 'archived';
830
+ type AuditAction = 'created' | 'modified' | 'archived' | 'acknowledged';
831
+ interface UserInfo {
832
+ id: string;
833
+ email: string;
834
+ name: string;
835
+ }
836
+ interface AuditEntry {
837
+ timestamp: string;
838
+ userId: string;
839
+ userName: string;
840
+ userEmail: string;
841
+ action: AuditAction;
842
+ previousVersion?: number;
843
+ changes?: Record<string, {
844
+ from: unknown;
845
+ to: unknown;
846
+ }>;
847
+ }
848
+ interface Annotation {
849
+ id: string;
850
+ version: number;
851
+ text: string;
852
+ type: AnnotationType;
853
+ importance: ImportanceLevel;
854
+ status: AnnotationStatus;
855
+ createdAt: string;
856
+ dueDate?: string;
857
+ createdBy: UserInfo;
858
+ acknowledged: boolean;
859
+ acknowledgedBy?: UserInfo;
860
+ acknowledgedAt?: string;
861
+ history: AuditEntry[];
862
+ }
863
+ interface LogAnnotationsAttribute {
864
+ schemaVersion: string;
865
+ deviceId: string;
866
+ lastModified: string;
867
+ lastModifiedBy: UserInfo;
868
+ annotations: Annotation[];
869
+ }
870
+ interface AnnotationFilterState {
871
+ dateRange?: {
872
+ start: string;
873
+ end: string;
874
+ };
875
+ status?: AnnotationStatus | 'all';
876
+ type?: AnnotationType | 'all';
877
+ userId?: string | 'all';
878
+ searchText?: string;
879
+ importance?: ImportanceLevel | 'all';
880
+ showOverdueOnly?: boolean;
881
+ }
882
+ interface PaginationState {
883
+ currentPage: number;
884
+ pageSize: number;
885
+ totalItems: number;
886
+ totalPages: number;
887
+ }
888
+ interface PermissionSet {
889
+ isSuperAdminMyio: boolean;
890
+ isSuperAdminHolding: boolean;
891
+ currentUser: UserInfo;
892
+ }
893
+ interface NewAnnotationData {
894
+ text: string;
895
+ type: AnnotationType;
896
+ importance: ImportanceLevel;
897
+ dueDate?: string;
898
+ }
899
+ declare const ANNOTATION_TYPE_LABELS: Record<AnnotationType, string>;
900
+ declare const ANNOTATION_TYPE_LABELS_EN: Record<AnnotationType, string>;
901
+ declare const IMPORTANCE_LABELS: Record<ImportanceLevel, string>;
902
+ declare const IMPORTANCE_LABELS_EN: Record<ImportanceLevel, string>;
903
+ declare const STATUS_LABELS: Record<AnnotationStatus, string>;
904
+ declare const STATUS_LABELS_EN: Record<AnnotationStatus, string>;
905
+ declare const ANNOTATION_TYPE_COLORS: Record<AnnotationType, string>;
906
+ declare const IMPORTANCE_COLORS: Record<ImportanceLevel, string>;
907
+ declare const STATUS_COLORS: Record<AnnotationStatus, string>;
908
+
909
+ /**
910
+ * RFC-0104: SuperAdmin Detection Utilities
911
+ *
912
+ * Functions to detect SuperAdmin status for users in the MYIO platform.
913
+ * - SuperAdmin MYIO: Users with @myio.com.br email (except alarme@ and alarmes@)
914
+ * - SuperAdmin Holding: Users with isUserAdmin=true on their customer entity
915
+ */
916
+
917
+ /**
918
+ * Fetch current user information from ThingsBoard API
919
+ * @param jwtToken - Optional JWT token (defaults to localStorage)
920
+ * @returns User info object or null if not authenticated
921
+ */
922
+ declare function fetchCurrentUserInfo(jwtToken?: string): Promise<UserInfo | null>;
923
+ /**
924
+ * Detect if current user is a SuperAdmin MYIO
925
+ * SuperAdmin MYIO = user with @myio.com.br email EXCEPT alarme@ or alarmes@
926
+ *
927
+ * @param jwtToken - Optional JWT token (defaults to localStorage)
928
+ * @returns Promise<boolean> - true if user is SuperAdmin MYIO
929
+ *
930
+ * @example
931
+ * ```typescript
932
+ * const isSuperAdmin = await detectSuperAdminMyio();
933
+ * if (isSuperAdmin) {
934
+ * // Show admin-only features
935
+ * }
936
+ * ```
937
+ */
938
+ declare function detectSuperAdminMyio(jwtToken?: string): Promise<boolean>;
939
+ /**
940
+ * Detect if current user is a SuperAdmin Holding
941
+ * SuperAdmin Holding = user with isUserAdmin=true attribute on their customer entity
942
+ *
943
+ * @param customerId - The customer/tenant ID to check
944
+ * @param jwtToken - Optional JWT token (defaults to localStorage)
945
+ * @returns Promise<boolean> - true if user is SuperAdmin Holding
946
+ *
947
+ * @example
948
+ * ```typescript
949
+ * const isHoldingAdmin = await detectSuperAdminHolding('customer-uuid');
950
+ * if (isHoldingAdmin) {
951
+ * // Show holding admin features
952
+ * }
953
+ * ```
954
+ */
955
+ declare function detectSuperAdminHolding(customerId: string, jwtToken?: string): Promise<boolean>;
956
+ /**
957
+ * Get full permission set for the current user
958
+ *
959
+ * @param customerId - The customer/tenant ID for holding admin check
960
+ * @param jwtToken - Optional JWT token (defaults to localStorage)
961
+ * @returns Permission set with user info and admin flags
962
+ *
963
+ * @example
964
+ * ```typescript
965
+ * const permissions = await getAnnotationPermissions('customer-uuid');
966
+ * if (permissions.isSuperAdminMyio || permissions.isSuperAdminHolding) {
967
+ * // Can edit any annotation
968
+ * }
969
+ * ```
970
+ */
971
+ declare function getAnnotationPermissions(customerId?: string, jwtToken?: string): Promise<{
972
+ currentUser: UserInfo | null;
973
+ isSuperAdminMyio: boolean;
974
+ isSuperAdminHolding: boolean;
975
+ }>;
976
+ /**
977
+ * Check if user can modify a specific annotation
978
+ *
979
+ * @param annotation - The annotation to check
980
+ * @param permissions - The permission set for current user
981
+ * @returns boolean - true if user can edit/archive the annotation
982
+ */
983
+ declare function canModifyAnnotation(annotation: {
984
+ createdBy: UserInfo;
985
+ }, permissions: {
986
+ currentUser: UserInfo | null;
987
+ isSuperAdminMyio: boolean;
988
+ isSuperAdminHolding: boolean;
989
+ }): boolean;
990
+
991
+ /**
992
+ * RFC-0104: Annotation Indicator for Device Cards
993
+ *
994
+ * A floating indicator that shows annotation status on device cards.
995
+ * Colors indicate the highest priority annotation type:
996
+ * - Red: Has pending annotations
997
+ * - Yellow: Has maintenance annotations
998
+ * - Green: Has activity annotations
999
+ * - Blue: Has observation annotations
1000
+ * - Gray (50% opacity): No annotations
1001
+ */
1002
+
1003
+ type AnnotationIndicatorTheme = 'light' | 'dark';
1004
+ interface AnnotationIndicatorConfig {
1005
+ container: HTMLElement;
1006
+ deviceId: string;
1007
+ jwtToken?: string;
1008
+ position?: 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left' | 'middle-right' | 'middle-left';
1009
+ size?: 'small' | 'medium' | 'large';
1010
+ theme?: AnnotationIndicatorTheme;
1011
+ onClick?: () => void;
1012
+ }
1013
+ interface AnnotationSummary {
1014
+ total: number;
1015
+ pending: number;
1016
+ maintenance: number;
1017
+ activity: number;
1018
+ observation: number;
1019
+ overdueCount: number;
1020
+ latestAnnotation?: Annotation;
1021
+ highestPriorityType: AnnotationType | null;
1022
+ }
1023
+ declare class AnnotationIndicator {
1024
+ private config;
1025
+ private element;
1026
+ private tooltipElement;
1027
+ private annotations;
1028
+ private summary;
1029
+ private styleInjected;
1030
+ private _hideTimer;
1031
+ private _isMouseOverTooltip;
1032
+ private _pinnedCounter;
1033
+ constructor(config: AnnotationIndicatorConfig);
1034
+ /**
1035
+ * Initialize the indicator - fetches annotations and renders
1036
+ */
1037
+ init(): Promise<void>;
1038
+ /**
1039
+ * Update annotations data and re-render
1040
+ */
1041
+ refresh(): Promise<void>;
1042
+ /**
1043
+ * Update with pre-loaded annotations (avoids API call)
1044
+ */
1045
+ updateWithAnnotations(annotations: Annotation[]): void;
1046
+ /**
1047
+ * Destroy the indicator
1048
+ */
1049
+ destroy(): void;
1050
+ private injectStyles;
1051
+ private loadAnnotations;
1052
+ private calculateSummary;
1053
+ private render;
1054
+ private showTooltip;
1055
+ private hideTooltip;
1056
+ private startDelayedHide;
1057
+ private hideWithAnimation;
1058
+ private setupTooltipButtonListeners;
1059
+ private setupTooltipDragListeners;
1060
+ private toggleMaximize;
1061
+ private createPinnedClone;
1062
+ private setupPinnedCloneListeners;
1063
+ private closePinnedClone;
1064
+ private renderTooltipContent;
1065
+ }
1066
+ /**
1067
+ * Create and initialize an annotation indicator
1068
+ *
1069
+ * @example
1070
+ * ```typescript
1071
+ * const indicator = await createAnnotationIndicator({
1072
+ * container: cardElement,
1073
+ * deviceId: 'device-uuid',
1074
+ * position: 'top-right',
1075
+ * onClick: () => openSettingsModal()
1076
+ * });
1077
+ * ```
1078
+ */
1079
+ declare function createAnnotationIndicator(config: AnnotationIndicatorConfig): Promise<AnnotationIndicator>;
1080
+
823
1081
  /**
824
1082
  * Detects the device type based on the given name and context.
825
1083
  * Uses the specified detection context to identify device types.
@@ -1766,17 +2024,20 @@ declare const DEVICE_TYPES: readonly [{
1766
2024
  readonly value: "MOTOR";
1767
2025
  readonly label: "Motor";
1768
2026
  }, {
1769
- readonly value: "BOMBA";
1770
- readonly label: "Bomba";
2027
+ readonly value: "BOMBA_HIDRAULICA";
2028
+ readonly label: "Bomba Hidráulica";
2029
+ }, {
2030
+ readonly value: "BOMBA_CAG";
2031
+ readonly label: "Bomba CAG";
2032
+ }, {
2033
+ readonly value: "BOMBA_INCENDIO";
2034
+ readonly label: "Bomba Incêndio";
1771
2035
  }, {
1772
2036
  readonly value: "CHILLER";
1773
2037
  readonly label: "Chiller";
1774
2038
  }, {
1775
2039
  readonly value: "AR_CONDICIONADO";
1776
2040
  readonly label: "Ar Condicionado";
1777
- }, {
1778
- readonly value: "HVAC";
1779
- readonly label: "HVAC";
1780
2041
  }, {
1781
2042
  readonly value: "FANCOIL";
1782
2043
  readonly label: "Fancoil";
@@ -1888,6 +2149,7 @@ interface OpenDashboardPopupSettingsParams {
1888
2149
  customerId?: string;
1889
2150
  mapInstantaneousPower?: object;
1890
2151
  deviceMapInstaneousPower?: object;
2152
+ superadmin?: boolean;
1891
2153
  connectionData?: {
1892
2154
  centralName?: string;
1893
2155
  connectionStatusTime?: string;
@@ -1921,6 +2183,7 @@ interface OpenDashboardPopupSettingsParams {
1921
2183
  i18n?: {
1922
2184
  t: (key: string, def?: string) => string;
1923
2185
  };
2186
+ consumptionDecimalPlaces?: number;
1924
2187
  };
1925
2188
  seed?: {
1926
2189
  label?: string;
@@ -1931,6 +2194,7 @@ interface OpenDashboardPopupSettingsParams {
1931
2194
  maxBusinessKwh?: number;
1932
2195
  minTemperature?: number;
1933
2196
  maxTemperature?: number;
2197
+ offSetTemperature?: number;
1934
2198
  minWaterLevel?: number;
1935
2199
  maxWaterLevel?: number;
1936
2200
  };
@@ -2579,6 +2843,18 @@ interface TempStatusResult {
2579
2843
  }
2580
2844
  declare const TempRangeTooltip: {
2581
2845
  containerId: string;
2846
+ _hideTimer: ReturnType<typeof setTimeout> | null;
2847
+ _isMouseOverTooltip: boolean;
2848
+ _isMaximized: boolean;
2849
+ _isDragging: boolean;
2850
+ _dragOffset: {
2851
+ x: number;
2852
+ y: number;
2853
+ };
2854
+ _savedPosition: {
2855
+ left: string;
2856
+ top: string;
2857
+ } | null;
2582
2858
  /**
2583
2859
  * Create or get the tooltip container
2584
2860
  */
@@ -2599,7 +2875,51 @@ declare const TempRangeTooltip: {
2599
2875
  */
2600
2876
  show(triggerElement: HTMLElement, entityData: TempEntityData, event?: MouseEvent): void;
2601
2877
  /**
2602
- * Hide tooltip
2878
+ * Setup hover listeners on the tooltip itself
2879
+ */
2880
+ _setupTooltipHoverListeners(container: HTMLElement): void;
2881
+ /**
2882
+ * Setup button click listeners
2883
+ */
2884
+ _setupButtonListeners(container: HTMLElement): void;
2885
+ /**
2886
+ * Setup drag listeners on the header
2887
+ */
2888
+ _setupDragListeners(container: HTMLElement): void;
2889
+ /**
2890
+ * Counter for unique pinned clone IDs
2891
+ */
2892
+ _pinnedCounter: number;
2893
+ /**
2894
+ * Create a pinned clone of the tooltip that stays on screen independently
2895
+ */
2896
+ togglePin(): void;
2897
+ /**
2898
+ * Setup event listeners for a pinned clone
2899
+ */
2900
+ _setupPinnedCloneListeners(clone: HTMLElement, cloneId: string): void;
2901
+ /**
2902
+ * Close and remove a pinned clone
2903
+ */
2904
+ _closePinnedClone(cloneId: string): void;
2905
+ /**
2906
+ * Toggle maximized state
2907
+ */
2908
+ toggleMaximize(): void;
2909
+ /**
2910
+ * Close tooltip
2911
+ */
2912
+ close(): void;
2913
+ /**
2914
+ * Start delayed hide with animation
2915
+ */
2916
+ _startDelayedHide(): void;
2917
+ /**
2918
+ * Hide with fade animation
2919
+ */
2920
+ hideWithAnimation(): void;
2921
+ /**
2922
+ * Hide tooltip immediately
2603
2923
  */
2604
2924
  hide(): void;
2605
2925
  /**
@@ -2649,6 +2969,18 @@ interface EnergyStatusResult {
2649
2969
  }
2650
2970
  declare const EnergyRangeTooltip: {
2651
2971
  containerId: string;
2972
+ _hideTimer: ReturnType<typeof setTimeout> | null;
2973
+ _isMouseOverTooltip: boolean;
2974
+ _isMaximized: boolean;
2975
+ _isDragging: boolean;
2976
+ _dragOffset: {
2977
+ x: number;
2978
+ y: number;
2979
+ };
2980
+ _savedPosition: {
2981
+ left: string;
2982
+ top: string;
2983
+ } | null;
2652
2984
  /**
2653
2985
  * Create or get the tooltip container
2654
2986
  */
@@ -2679,7 +3011,51 @@ declare const EnergyRangeTooltip: {
2679
3011
  */
2680
3012
  show(triggerElement: HTMLElement, entityObject: EnergyEntityData, event?: MouseEvent): void;
2681
3013
  /**
2682
- * Hide tooltip
3014
+ * Setup hover listeners on the tooltip itself
3015
+ */
3016
+ _setupTooltipHoverListeners(container: HTMLElement): void;
3017
+ /**
3018
+ * Setup button click listeners
3019
+ */
3020
+ _setupButtonListeners(container: HTMLElement): void;
3021
+ /**
3022
+ * Setup drag listeners on the header
3023
+ */
3024
+ _setupDragListeners(container: HTMLElement): void;
3025
+ /**
3026
+ * Counter for unique pinned clone IDs
3027
+ */
3028
+ _pinnedCounter: number;
3029
+ /**
3030
+ * Create a pinned clone of the tooltip that stays on screen independently
3031
+ */
3032
+ togglePin(): void;
3033
+ /**
3034
+ * Setup event listeners for a pinned clone
3035
+ */
3036
+ _setupPinnedCloneListeners(clone: HTMLElement, cloneId: string): void;
3037
+ /**
3038
+ * Close and remove a pinned clone
3039
+ */
3040
+ _closePinnedClone(cloneId: string): void;
3041
+ /**
3042
+ * Toggle maximized state
3043
+ */
3044
+ toggleMaximize(): void;
3045
+ /**
3046
+ * Close tooltip
3047
+ */
3048
+ close(): void;
3049
+ /**
3050
+ * Start delayed hide with animation
3051
+ */
3052
+ _startDelayedHide(): void;
3053
+ /**
3054
+ * Hide with fade animation
3055
+ */
3056
+ hideWithAnimation(): void;
3057
+ /**
3058
+ * Hide tooltip immediately
2683
3059
  */
2684
3060
  hide(): void;
2685
3061
  /**
@@ -2689,6 +3065,144 @@ declare const EnergyRangeTooltip: {
2689
3065
  attach(element: HTMLElement, entityData: EnergyEntityData): () => void;
2690
3066
  };
2691
3067
 
3068
+ /**
3069
+ * EnergySummaryTooltip - Dashboard Energy Summary Tooltip Component
3070
+ * RFC-0105: Premium tooltip showing comprehensive energy dashboard summary
3071
+ *
3072
+ * Shows:
3073
+ * - Total device count
3074
+ * - Device counts by category (tree view)
3075
+ * - Consumption totals by category
3076
+ * - Device status breakdown (normal, alert, failure, standby, offline)
3077
+ *
3078
+ * @example
3079
+ * // Attach to an element
3080
+ * const cleanup = EnergySummaryTooltip.attach(triggerElement, getDataFn);
3081
+ * // Later: cleanup();
3082
+ *
3083
+ * // Or manual control
3084
+ * EnergySummaryTooltip.show(element, summaryData, event);
3085
+ * EnergySummaryTooltip.hide();
3086
+ */
3087
+ interface CategorySummary {
3088
+ id: string;
3089
+ name: string;
3090
+ icon: string;
3091
+ deviceCount: number;
3092
+ consumption: number;
3093
+ percentage: number;
3094
+ children?: CategorySummary[];
3095
+ }
3096
+ interface StatusSummary {
3097
+ normal: number;
3098
+ alert: number;
3099
+ failure: number;
3100
+ standby: number;
3101
+ offline: number;
3102
+ noConsumption: number;
3103
+ }
3104
+ interface DashboardEnergySummary {
3105
+ totalDevices: number;
3106
+ totalConsumption: number;
3107
+ unit: string;
3108
+ byCategory: CategorySummary[];
3109
+ byStatus: StatusSummary;
3110
+ lastUpdated: string;
3111
+ }
3112
+ declare const EnergySummaryTooltip: {
3113
+ containerId: string;
3114
+ /**
3115
+ * Create or get the tooltip container
3116
+ */
3117
+ getContainer(): HTMLElement;
3118
+ /**
3119
+ * Render category tree rows
3120
+ */
3121
+ renderCategoryTree(categories: CategorySummary[], unit: string): string;
3122
+ /**
3123
+ * Render status matrix
3124
+ */
3125
+ renderStatusMatrix(status: StatusSummary): string;
3126
+ /**
3127
+ * Render full tooltip HTML
3128
+ */
3129
+ renderHTML(summary: DashboardEnergySummary): string;
3130
+ _hideTimer: ReturnType<typeof setTimeout> | null;
3131
+ _isMouseOverTooltip: boolean;
3132
+ _isMaximized: boolean;
3133
+ _isDragging: boolean;
3134
+ _dragOffset: {
3135
+ x: number;
3136
+ y: number;
3137
+ };
3138
+ _savedPosition: {
3139
+ left: string;
3140
+ top: string;
3141
+ } | null;
3142
+ /**
3143
+ * Show tooltip for an element
3144
+ */
3145
+ show(triggerElement: HTMLElement, summary: DashboardEnergySummary, event?: MouseEvent): void;
3146
+ /**
3147
+ * Setup button click listeners (pin, maximize, close)
3148
+ */
3149
+ _setupButtonListeners(container: HTMLElement): void;
3150
+ /**
3151
+ * Setup drag listeners on the header
3152
+ */
3153
+ _setupDragListeners(container: HTMLElement): void;
3154
+ /**
3155
+ * Counter for unique pinned clone IDs
3156
+ */
3157
+ _pinnedCounter: number;
3158
+ /**
3159
+ * Create a pinned clone of the tooltip that stays on screen independently
3160
+ */
3161
+ togglePin(): void;
3162
+ /**
3163
+ * Setup event listeners for a pinned clone
3164
+ */
3165
+ _setupPinnedCloneListeners(clone: HTMLElement, cloneId: string): void;
3166
+ /**
3167
+ * Close and remove a pinned clone
3168
+ */
3169
+ _closePinnedClone(cloneId: string): void;
3170
+ /**
3171
+ * Toggle maximized state
3172
+ */
3173
+ toggleMaximize(): void;
3174
+ /**
3175
+ * Close tooltip (reset all states)
3176
+ */
3177
+ close(): void;
3178
+ /**
3179
+ * Setup hover listeners on the tooltip itself
3180
+ */
3181
+ _setupTooltipHoverListeners(container: HTMLElement): void;
3182
+ /**
3183
+ * Start delayed hide with animation
3184
+ */
3185
+ _startDelayedHide(): void;
3186
+ /**
3187
+ * Hide tooltip with fade animation
3188
+ */
3189
+ hideWithAnimation(): void;
3190
+ /**
3191
+ * Hide tooltip immediately (for cleanup)
3192
+ */
3193
+ hide(): void;
3194
+ /**
3195
+ * Attach tooltip to an element with automatic show/hide on hover
3196
+ * Returns cleanup function to remove event listeners
3197
+ */
3198
+ attach(element: HTMLElement, getDataFn: () => DashboardEnergySummary): () => void;
3199
+ /**
3200
+ * Build summary data from TELEMETRY_INFO STATE
3201
+ * This is called by the widget controller to get data for the tooltip
3202
+ */
3203
+ buildSummaryFromState(state: any, receivedData: any): DashboardEnergySummary;
3204
+ };
3205
+
2692
3206
  /**
2693
3207
  * MyIO Modal Header Component
2694
3208
  *
@@ -3830,4 +4344,4 @@ declare function getThemeColors(theme: ThemeMode): DistributionThemeColors;
3830
4344
  */
3831
4345
  declare function getHashColor(str: string): string;
3832
4346
 
3833
- export { type BuildTemplateExportParams, CHART_COLORS, DEFAULT_COLORS as CONSUMPTION_CHART_COLORS, DEFAULT_CONFIG as CONSUMPTION_CHART_DEFAULTS, THEME_COLORS as CONSUMPTION_THEME_COLORS, type ChartDomain, type ClampRange, ConnectionStatusType, type Consumption7DaysColors, type Consumption7DaysConfig, type Consumption7DaysData, type Consumption7DaysInstance, type ChartType as ConsumptionChartType, type ConsumptionDataPoint, type IdealRangeConfig as ConsumptionIdealRangeConfig, type ConsumptionModalConfig, type ConsumptionModalInstance, type TemperatureConfig as ConsumptionTemperatureConfig, type TemperatureReferenceLine as ConsumptionTemperatureReferenceLine, type ThemeColors as ConsumptionThemeColors, type ThemeMode$1 as ConsumptionThemeMode, type VizMode as ConsumptionVizMode, type ConsumptionWidgetConfig, type ConsumptionWidgetInstance, type CreateDateRangePickerOptions, type CreateInputDateRangePickerInsideDIVParams, DEFAULT_CLAMP_RANGE, DEFAULT_ENERGY_GROUP_COLORS, DEFAULT_GAS_GROUP_COLORS, DEFAULT_SHOPPING_COLORS, DEFAULT_WATER_GROUP_COLORS, type DateRangeControl, type DateRangeInputController, type DateRangeResult, type DemandModalInstance, type DemandModalParams, type DemandModalPdfConfig, type DemandModalStyles, type DeviceStatusName, DeviceStatusType, type DeviceTypeLimits, type DistributionChartConfig, type DistributionChartInstance, type DistributionData, type DistributionDomain, type DistributionMode, type DistributionThemeColors, EXPORT_DEFAULT_COLORS, EXPORT_DOMAIN_ICONS, EXPORT_DOMAIN_LABELS, EXPORT_DOMAIN_UNITS, type EnergyEntityData, type EnergyModalContext, type EnergyModalError, type EnergyModalI18n, type EnergyModalStyleOverrides, EnergyRangeTooltip, type EnergyStatus, type EnergyStatusResult, type ExportColorsPallet, type ExportComparisonData, type ExportConfigTemplate, type ExportCustomerData, type ExportCustomerInfo, type ExportData, type ExportDataInput, type ExportDataInstance, type ExportDataPoint, type ExportDeviceInfo, type ExportDomain, type ExportFormat, type ExportGroupData, type ExportOptions, type ExportProgressCallback, type ExportResult, type ExportStats, type ExportType, type GroupColors, type InstantaneousPowerLimits, type ExportFormat$1 as ModalExportFormat, type ModalHeaderConfig, type ModalHeaderInstance, type ModalTheme, type MyIOAuthConfig, type MyIOAuthInstance, MyIOChartModal, MyIODraggableCard, MyIOSelectionStore, MyIOSelectionStoreClass, MyIOToast, type OpenDashboardPopupEnergyOptions, type OpenDashboardPopupSettingsParams, type OpenDashboardPopupWaterTankOptions, DEVICE_TYPES as POWER_LIMITS_DEVICE_TYPES, STATUS_CONFIG as POWER_LIMITS_STATUS_CONFIG, TELEMETRY_TYPES as POWER_LIMITS_TELEMETRY_TYPES, type PersistResult, type PowerLimitsError, type PowerLimitsFormData, type PowerLimitsModalInstance, type PowerLimitsModalParams, type PowerLimitsModalStyles, type PowerRange, type PowerRanges, type RealTimeTelemetryInstance, type RealTimeTelemetryParams, type SettingsError, type SettingsEvent, type ShoppingColors, type ShoppingDataPoint, type StatusLimits, type StoreRow, type TbScope, type TelemetryFetcher, type TelemetryTypeLimits, type TempEntityData, TempRangeTooltip, type TempStatus, type TempStatusResult, type TemperatureComparisonModalInstance, type TemperatureComparisonModalParams, type TemperatureDevice, type TemperatureGranularity, type TemperatureModalInstance, type TemperatureModalParams, type TemperatureSettingsInstance, type TemperatureSettingsParams, type TemperatureStats, type TemperatureTelemetry, type ThingsboardCustomerAttrsConfig, type TimedValue, type WaterRow, type WaterTankDataPoint, type WaterTankModalContext, type WaterTankModalError, type WaterTankModalI18n, type WaterTankModalStyleOverrides, type WaterTankTelemetryData, addDetectionContext, addNamespace, aggregateByDay, assignShoppingColors, averageByDay, buildListItemsThingsboardByUniqueDatasource, buildMyioIngestionAuth, buildTemplateExport, buildWaterReportCSV, buildWaterStoresCSV, calcDeltaPercent, calculateDeviceStatus, calculateDeviceStatusWithRanges, calculateStats as calculateExportStats, calculateStats$1 as calculateStats, clampTemperature, classify, classifyWaterLabel, classifyWaterLabels, clearAllAuthCaches, connectionStatusIcons, createConsumption7DaysChart, createConsumptionChartWidget, createConsumptionModal, createDateRangePicker, createDistributionChartWidget, createInputDateRangePickerInsideDIV, createModalHeader, decodePayload, decodePayloadBase64Xor, detectDeviceType, determineInterval, deviceStatusIcons, exportTemperatureCSV, exportToCSV, exportToCSVAll, extractMyIOCredentials, fetchTemperatureData, fetchThingsboardCustomerAttrsFromStorage, fetchThingsboardCustomerServerScopeAttrs, findValue, findValueWithDefault, fmtPerc$1 as fmtPerc, fmtPerc as fmtPercLegacy, formatAllInSameUnit, formatAllInSameWaterUnit, formatDateForInput, formatDateToYMD, formatDateWithTimezoneOffset, formatDuration, formatEnergy, formatNumberReadable, formatRelativeTime, formatTankHeadFromCm, formatTemperature, formatWater, formatWaterByGroup, formatWaterVolumeM3, formatarDuracao, generateFilename as generateExportFilename, getAuthCacheStats, getAvailableContexts, getConnectionStatusIcon, getDateRangeArray, getDefaultGroupColors, getDeviceStatusIcon, getDeviceStatusInfo, getThemeColors as getDistributionThemeColors, getGroupColor, getHashColor, getModalHeaderStyles, getSaoPauloISOString, getSaoPauloISOStringFixed, getShoppingColor, getValueByDatakey, getValueByDatakeyLegacy, getWaterCategories, groupByDay, interpolateTemperature, isDeviceOffline, isValidConnectionStatus, isValidDeviceStatus, isWaterCategory, mapConnectionStatus, mapDeviceStatusToCardStatus, mapDeviceToConnectionStatus, myioExportData, normalizeRecipients, numbers, openDashboardPopup, openDashboardPopupAllReport, openDashboardPopupEnergy, openDashboardPopupReport, openDashboardPopupSettings, openDashboardPopupWaterTank, openDemandModal, openGoalsPanel, openPowerLimitsSetupModal, openRealTimeTelemetryModal, openTemperatureComparisonModal, openTemperatureModal, openTemperatureSettingsModal, parseInputDateToDate, renderCardComponent$2 as renderCardComponent, renderCardComponent$1 as renderCardComponentEnhanced, renderCardComponentHeadOffice, renderCardComponentLegacy, renderCardComponentV2, renderCardComponent as renderCardComponentV5, renderCardComponentV5 as renderCardV5, shouldFlashIcon, strings, timeWindowFromInputYMD, toCSV, toFixedSafe, waterDeviceStatusIcons };
4347
+ export { ANNOTATION_TYPE_COLORS, ANNOTATION_TYPE_LABELS, ANNOTATION_TYPE_LABELS_EN, type Annotation, type AnnotationFilterState, AnnotationIndicator, type AnnotationIndicatorConfig, type AnnotationIndicatorTheme, type AnnotationStatus, type AnnotationSummary, type AnnotationType, type AuditAction, type AuditEntry, type BuildTemplateExportParams, CHART_COLORS, DEFAULT_COLORS as CONSUMPTION_CHART_COLORS, DEFAULT_CONFIG as CONSUMPTION_CHART_DEFAULTS, THEME_COLORS as CONSUMPTION_THEME_COLORS, type CategorySummary, type ChartDomain, type ClampRange, ConnectionStatusType, type Consumption7DaysColors, type Consumption7DaysConfig, type Consumption7DaysData, type Consumption7DaysInstance, type ChartType as ConsumptionChartType, type ConsumptionDataPoint, type IdealRangeConfig as ConsumptionIdealRangeConfig, type ConsumptionModalConfig, type ConsumptionModalInstance, type TemperatureConfig as ConsumptionTemperatureConfig, type TemperatureReferenceLine as ConsumptionTemperatureReferenceLine, type ThemeColors as ConsumptionThemeColors, type ThemeMode$1 as ConsumptionThemeMode, type VizMode as ConsumptionVizMode, type ConsumptionWidgetConfig, type ConsumptionWidgetInstance, type CreateDateRangePickerOptions, type CreateInputDateRangePickerInsideDIVParams, DEFAULT_CLAMP_RANGE, DEFAULT_ENERGY_GROUP_COLORS, DEFAULT_GAS_GROUP_COLORS, DEFAULT_SHOPPING_COLORS, DEFAULT_WATER_GROUP_COLORS, type DashboardEnergySummary, type DateRangeControl, type DateRangeInputController, type DateRangeResult, type DemandModalInstance, type DemandModalParams, type DemandModalPdfConfig, type DemandModalStyles, type DeviceStatusName, DeviceStatusType, type DeviceTypeLimits, type DistributionChartConfig, type DistributionChartInstance, type DistributionData, type DistributionDomain, type DistributionMode, type DistributionThemeColors, EXPORT_DEFAULT_COLORS, EXPORT_DOMAIN_ICONS, EXPORT_DOMAIN_LABELS, EXPORT_DOMAIN_UNITS, type EnergyEntityData, type EnergyModalContext, type EnergyModalError, type EnergyModalI18n, type EnergyModalStyleOverrides, EnergyRangeTooltip, type EnergyStatus, type EnergyStatusResult, EnergySummaryTooltip, type ExportColorsPallet, type ExportComparisonData, type ExportConfigTemplate, type ExportCustomerData, type ExportCustomerInfo, type ExportData, type ExportDataInput, type ExportDataInstance, type ExportDataPoint, type ExportDeviceInfo, type ExportDomain, type ExportFormat, type ExportGroupData, type ExportOptions, type ExportProgressCallback, type ExportResult, type ExportStats, type ExportType, type GroupColors, IMPORTANCE_COLORS, IMPORTANCE_LABELS, IMPORTANCE_LABELS_EN, type ImportanceLevel, type InstantaneousPowerLimits, type LogAnnotationsAttribute, type ExportFormat$1 as ModalExportFormat, type ModalHeaderConfig, type ModalHeaderInstance, type ModalTheme, type MyIOAuthConfig, type MyIOAuthInstance, MyIOChartModal, MyIODraggableCard, MyIOSelectionStore, MyIOSelectionStoreClass, MyIOToast, type NewAnnotationData, type OpenDashboardPopupEnergyOptions, type OpenDashboardPopupSettingsParams, type OpenDashboardPopupWaterTankOptions, DEVICE_TYPES as POWER_LIMITS_DEVICE_TYPES, STATUS_CONFIG as POWER_LIMITS_STATUS_CONFIG, TELEMETRY_TYPES as POWER_LIMITS_TELEMETRY_TYPES, type PaginationState, type PermissionSet, type PersistResult, type PowerLimitsError, type PowerLimitsFormData, type PowerLimitsModalInstance, type PowerLimitsModalParams, type PowerLimitsModalStyles, type PowerRange, type PowerRanges, type RealTimeTelemetryInstance, type RealTimeTelemetryParams, STATUS_COLORS, STATUS_LABELS, STATUS_LABELS_EN, type SettingsError, type SettingsEvent, type ShoppingColors, type ShoppingDataPoint, type StatusLimits, type StatusSummary, type StoreRow, type TbScope, type TelemetryFetcher, type TelemetryTypeLimits, type TempEntityData, TempRangeTooltip, type TempStatus, type TempStatusResult, type TemperatureComparisonModalInstance, type TemperatureComparisonModalParams, type TemperatureDevice, type TemperatureGranularity, type TemperatureModalInstance, type TemperatureModalParams, type TemperatureSettingsInstance, type TemperatureSettingsParams, type TemperatureStats, type TemperatureTelemetry, type ThingsboardCustomerAttrsConfig, type TimedValue, type UserInfo, type WaterRow, type WaterTankDataPoint, type WaterTankModalContext, type WaterTankModalError, type WaterTankModalI18n, type WaterTankModalStyleOverrides, type WaterTankTelemetryData, addDetectionContext, addNamespace, aggregateByDay, assignShoppingColors, averageByDay, buildListItemsThingsboardByUniqueDatasource, buildMyioIngestionAuth, buildTemplateExport, buildWaterReportCSV, buildWaterStoresCSV, calcDeltaPercent, calculateDeviceStatus, calculateDeviceStatusWithRanges, calculateStats as calculateExportStats, calculateStats$1 as calculateStats, canModifyAnnotation, clampTemperature, classify, classifyWaterLabel, classifyWaterLabels, clearAllAuthCaches, connectionStatusIcons, createAnnotationIndicator, createConsumption7DaysChart, createConsumptionChartWidget, createConsumptionModal, createDateRangePicker, createDistributionChartWidget, createInputDateRangePickerInsideDIV, createModalHeader, decodePayload, decodePayloadBase64Xor, detectDeviceType, detectSuperAdminHolding, detectSuperAdminMyio, determineInterval, deviceStatusIcons, exportTemperatureCSV, exportToCSV, exportToCSVAll, extractMyIOCredentials, fetchCurrentUserInfo, fetchTemperatureData, fetchThingsboardCustomerAttrsFromStorage, fetchThingsboardCustomerServerScopeAttrs, findValue, findValueWithDefault, fmtPerc$1 as fmtPerc, fmtPerc as fmtPercLegacy, formatAllInSameUnit, formatAllInSameWaterUnit, formatDateForInput, formatDateToYMD, formatDateWithTimezoneOffset, formatDuration, formatEnergy, formatNumberReadable, formatRelativeTime, formatTankHeadFromCm, formatTemperature, formatWater, formatWaterByGroup, formatWaterVolumeM3, formatarDuracao, generateFilename as generateExportFilename, getAnnotationPermissions, getAuthCacheStats, getAvailableContexts, getConnectionStatusIcon, getDateRangeArray, getDefaultGroupColors, getDeviceStatusIcon, getDeviceStatusInfo, getThemeColors as getDistributionThemeColors, getGroupColor, getHashColor, getModalHeaderStyles, getSaoPauloISOString, getSaoPauloISOStringFixed, getShoppingColor, getValueByDatakey, getValueByDatakeyLegacy, getWaterCategories, groupByDay, interpolateTemperature, isDeviceOffline, isValidConnectionStatus, isValidDeviceStatus, isWaterCategory, mapConnectionStatus, mapDeviceStatusToCardStatus, mapDeviceToConnectionStatus, myioExportData, normalizeRecipients, numbers, openDashboardPopup, openDashboardPopupAllReport, openDashboardPopupEnergy, openDashboardPopupReport, openDashboardPopupSettings, openDashboardPopupWaterTank, openDemandModal, openGoalsPanel, openPowerLimitsSetupModal, openRealTimeTelemetryModal, openTemperatureComparisonModal, openTemperatureModal, openTemperatureSettingsModal, parseInputDateToDate, renderCardComponent$2 as renderCardComponent, renderCardComponent$1 as renderCardComponentEnhanced, renderCardComponentHeadOffice, renderCardComponentLegacy, renderCardComponentV2, renderCardComponent as renderCardComponentV5, renderCardComponentV5 as renderCardV5, shouldFlashIcon, strings, timeWindowFromInputYMD, toCSV, toFixedSafe, waterDeviceStatusIcons };