ia-table 0.14.8 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -2,6 +2,8 @@ import { ChangeEvent } from 'react';
2
2
  import { CSSProperties } from 'react';
3
3
  import { default as default_2 } from 'react';
4
4
  import { Dispatch } from 'react';
5
+ import { Editor } from '@tiptap/react';
6
+ import { FC } from 'react';
5
7
  import { FocusEvent as FocusEvent_2 } from 'react';
6
8
  import { ForwardRefExoticComponent } from 'react';
7
9
  import { Moment } from 'moment';
@@ -101,6 +103,10 @@ declare const ACTION_TYPES: {
101
103
  readonly SET_TOTAL_COLUMNS_COUNT: "SET_TOTAL_COLUMNS_COUNT";
102
104
  readonly SET_ALL_CHILD_ROWS_EXPANDED: "SET_ALL_CHILD_ROWS_EXPANDED";
103
105
  readonly EXPAND_ROW_WITH_NESTED_CHILDREN: "EXPAND_ROW_WITH_NESTED_CHILDREN";
106
+ readonly SET_CUSTOM_CALLBACKS: "SET_CUSTOM_CALLBACKS";
107
+ readonly SET_COMMENT_CONTEXT_REF: "SET_COMMENT_CONTEXT_REF";
108
+ readonly SET_CHAT_ENABLED: "SET_CHAT_ENABLED";
109
+ readonly SET_COMMENT_ENABLED: "SET_COMMENT_ENABLED";
104
110
  };
105
111
 
106
112
  declare interface ChildHeightsResult {
@@ -452,6 +458,10 @@ declare class InfiniteCache {
452
458
  updateWholeData(wholeData: SmartGridRowData[], pageSize: number): SmartGridUpdateDataReturnType;
453
459
  }
454
460
 
461
+ export declare function isChatMessage(item: SmartGridGroupedMessageItem): item is SmartGridChatMessage;
462
+
463
+ export declare function isDateSeparator(item: SmartGridGroupedMessageItem): item is SmartGridDateSeparatorItem;
464
+
455
465
  declare interface RowGroupParams {
456
466
  page: number;
457
467
  pageSize: number;
@@ -502,6 +512,14 @@ export declare interface RowSpanParams {
502
512
 
503
513
  export declare type SmartGridActionTypes = typeof ACTION_TYPES;
504
514
 
515
+ export declare interface SmartGridAddChatContainerProps {
516
+ setShowAddChat: Dispatch<SetStateAction<boolean>>;
517
+ handleChatName: NonNullable<SmartGridLeftPanelConfig["handleChatName"]>;
518
+ selectedChannelInfo?: SmartGridChannel | null;
519
+ handleToast: SmartGridHandleToastFn;
520
+ setIsCreateNewChatOpen: Dispatch<SetStateAction<boolean>>;
521
+ }
522
+
505
523
  export declare type SmartGridAggregationType = "sum" | "count" | "avg" | "min" | "max";
506
524
 
507
525
  export declare interface SmartGridAPI extends SmartGridPaginationAPI, SmartGridApiExtra {
@@ -603,6 +621,20 @@ export declare type SmartGridApiExtra = {
603
621
  [key: string]: unknown;
604
622
  };
605
623
 
624
+ export declare interface SmartGridAvatarGroupProps {
625
+ avatars?: SmartGridAvatarUser[];
626
+ maxAvatars?: number;
627
+ size?: SmartGridAvatarSize;
628
+ }
629
+
630
+ export declare type SmartGridAvatarSize = "sm" | "md" | "lg";
631
+
632
+ export declare interface SmartGridAvatarUser {
633
+ id?: string | number;
634
+ url?: string;
635
+ label?: string;
636
+ }
637
+
606
638
  export declare type SmartGridBadgeColor = "default" | "success" | "warning" | "error" | "info";
607
639
 
608
640
  export declare interface SmartGridBadgeProps {
@@ -856,6 +888,7 @@ export declare interface SmartGridBodyCellDetailProps {
856
888
  totalRows?: number;
857
889
  totalColumns?: number;
858
890
  childKeyField: string;
891
+ isCommentFeatureEnabled: boolean;
859
892
  }
860
893
 
861
894
  export declare interface SmartGridBodyCellProps {
@@ -886,8 +919,8 @@ export declare interface SmartGridBodyCellProps {
886
919
  }
887
920
 
888
921
  export declare interface SmartGridButtonProps {
889
- onClick: (e: MouseEvent_2<HTMLButtonElement>) => void;
890
- children: ReactNode;
922
+ onClick?: (e: MouseEvent_2<HTMLButtonElement>) => void;
923
+ children?: ReactNode;
891
924
  variant?: SmartGridButtonVariant;
892
925
  size?: SmartGridButtonSize;
893
926
  iconButton?: boolean;
@@ -897,6 +930,9 @@ export declare interface SmartGridButtonProps {
897
930
  rightIcon?: ReactNode;
898
931
  buttonRef?: MutableRefObject<HTMLButtonElement> | RefObject<HTMLButtonElement>;
899
932
  simpleButton?: boolean;
933
+ ariaLabel?: string;
934
+ loading?: boolean;
935
+ title?: string;
900
936
  }
901
937
 
902
938
  export declare type SmartGridButtonSize = "small" | "medium" | "large";
@@ -1079,7 +1115,7 @@ export declare type SmartGridCellRenderer = {
1079
1115
  colDef: SmartGridColumnDefinition;
1080
1116
  node: SmartGridCellRendererNode;
1081
1117
  api: SmartGridAPI;
1082
- eGridCell: HTMLDivElement | null;
1118
+ eGridCell: RefObject<HTMLDivElement | null>;
1083
1119
  wholeData: SmartGridRowData[] | null | undefined;
1084
1120
  actions: Record<string, unknown>;
1085
1121
  setDataValue: (colId: string, newValue: unknown) => void;
@@ -1175,14 +1211,412 @@ export declare interface SmartGridCellValueChangedParams {
1175
1211
  value: unknown;
1176
1212
  }
1177
1213
 
1214
+ export declare interface SmartGridChannel {
1215
+ id: string | number;
1216
+ title: string;
1217
+ time: string;
1218
+ unreadCount: number;
1219
+ objectType: string;
1220
+ }
1221
+
1222
+ /**
1223
+ * ChatObject - Represents a chat/topic
1224
+ * @see MDX Documentation: Data Structures > ChatObject
1225
+ */
1226
+ export declare interface SmartGridChat {
1227
+ id: string;
1228
+ title: string;
1229
+ subtitle: string;
1230
+ user: string;
1231
+ text: string;
1232
+ time: string;
1233
+ isChecked: boolean;
1234
+ isPinned: boolean;
1235
+ unreadCount: number;
1236
+ messageCount: number;
1237
+ timestamp: string;
1238
+ createdBy?: string;
1239
+ otherProps: {
1240
+ object_ids: string[];
1241
+ object_type: string;
1242
+ topic_id: string;
1243
+ created_by_user: string;
1244
+ is_pinned: boolean;
1245
+ unread_count: number;
1246
+ message_count: number;
1247
+ created_at: string;
1248
+ };
1249
+ }
1250
+
1251
+ export declare interface SmartGridChatAvatarProps {
1252
+ src?: string;
1253
+ name?: string;
1254
+ size?: SmartGridAvatarSize;
1255
+ }
1256
+
1257
+ export declare interface SmartGridChatChannelItemAvatar {
1258
+ label?: string;
1259
+ src?: string;
1260
+ }
1261
+
1262
+ export declare interface SmartGridChatChannelItemProps {
1263
+ id: string | number;
1264
+ title?: string;
1265
+ subtitle?: string;
1266
+ timestamp?: string;
1267
+ unreadCount?: number;
1268
+ avatar?: SmartGridChatChannelItemAvatar;
1269
+ isSelected?: boolean;
1270
+ isMuted?: boolean;
1271
+ onClick?: (id: string | number) => void;
1272
+ showChannelList?: boolean;
1273
+ showCheckbox?: boolean;
1274
+ handleChatSelect?: (id: string | number) => void;
1275
+ selectedChat?: (string | number)[];
1276
+ onPinnedChatClick?: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
1277
+ handleToast?: SmartGridHandleToastFn;
1278
+ isPinned?: boolean;
1279
+ }
1280
+
1281
+ export declare interface SmartGridChatChannelListProps {
1282
+ channels: SmartGridChatChannelItemProps[];
1283
+ selectedChannelOrChatId?: string | number;
1284
+ onChannelSelect: (channelId: string | number, channel: SmartGridChatChannelItemProps) => void;
1285
+ showChannelList?: boolean;
1286
+ showCheckbox?: boolean;
1287
+ handleChatSelect?: (id: string | number) => void;
1288
+ selectedChat?: (string | number)[];
1289
+ onPinnedChatClick?: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
1290
+ handleToast?: SmartGridHandleToastFn;
1291
+ }
1292
+
1293
+ export declare interface SmartGridChatConfiguration {
1294
+ title: string;
1295
+ description: string;
1296
+ buttonLabel: string;
1297
+ buttonIcon: string;
1298
+ buttonIconPosition: "left" | "right";
1299
+ tooltipConfig: SmartGridChatTooltipConfig;
1300
+ messageChatConfig: SmartGridMessageChatConfig;
1301
+ headerChatConfig: SmartGridHeaderChatConfig;
1302
+ inputChatConfig: SmartGridInputChatConfig;
1303
+ leftPanel: SmartGridLeftPanelConfig;
1304
+ rightPanel: SmartGridRightPanelConfig;
1305
+ }
1306
+
1307
+ export declare interface SmartGridChatDefaultMessageTypeProps {
1308
+ content?: string | React.ReactNode;
1309
+ timestamp?: string;
1310
+ handleClickOnMoreOptions?: (e: React.MouseEvent<HTMLButtonElement>) => void;
1311
+ priority?: SmartGridMessagePriority;
1312
+ edited?: boolean;
1313
+ onThreadClick?: () => void;
1314
+ pinned?: boolean;
1315
+ visibility?: boolean;
1316
+ onPin?: (isPinned: boolean) => Promise<SmartGridChatMessage | boolean | undefined>;
1317
+ isUser?: boolean;
1318
+ isThreadIconVisible?: boolean;
1319
+ isPinChatIconvisible?: boolean;
1320
+ isHighlighted?: boolean;
1321
+ highlightColor?: string | null;
1322
+ }
1323
+
1324
+ export declare interface SmartGridChatDeletedMessageTypeProps {
1325
+ timestamp?: string;
1326
+ isUser?: boolean;
1327
+ }
1328
+
1329
+ export declare interface SmartGridChatEditedMessageTypeProps {
1330
+ content?: string | React.ReactNode;
1331
+ timestamp?: string;
1332
+ handleClickOnMoreOptions?: (e: React.MouseEvent<SVGSVGElement>) => void;
1333
+ priority?: SmartGridMessagePriority;
1334
+ edited?: boolean;
1335
+ onThreadClick?: () => void;
1336
+ pinned?: boolean;
1337
+ onPin?: (isPinned: boolean) => Promise<boolean | undefined>;
1338
+ isUser?: boolean;
1339
+ }
1340
+
1341
+ export declare interface SmartGridChatFormData {
1342
+ chatName?: string;
1343
+ chatDescription?: string;
1344
+ [key: string]: unknown;
1345
+ }
1346
+
1347
+ export declare interface SmartGridChatHeaderActionExternalHandlers {
1348
+ onSearchChange?: (value: string) => void;
1349
+ onSelectAll?: (allValues: (string | number)[]) => void;
1350
+ onClearSelection?: () => void;
1351
+ onSelectionChange?: (newSelection: (string | number)[]) => void;
1352
+ onParticipantsClick?: () => Promise<void>;
1353
+ loadMenuOptions?: () => Promise<SmartGridParticipant[]>;
1354
+ menuOptions?: SmartGridParticipant[];
1355
+ onClose?: () => void;
1356
+ onParticipantAdd?: (participantIds: (string | number)[], selectedRadioOption: string, chatId: string | number) => Promise<{
1357
+ success: boolean;
1358
+ participant: SmartGridParticipant;
1359
+ } | null>;
1360
+ onNotificationSettingChange?: (data: SmartGridNotificationSettings) => Promise<void | {
1361
+ success: boolean;
1362
+ settings: SmartGridNotificationSettings;
1363
+ }>;
1364
+ onSearchMessage?: (e: React.ChangeEvent<HTMLInputElement>) => void;
1365
+ participantsList?: SmartGridParticipant[];
1366
+ loadParticipantsAvatar?: (radioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1367
+ handleRadioButtonChange?: (value: string) => Promise<void>;
1368
+ }
1369
+
1370
+ export declare interface SmartGridChatHeaderActionProps {
1371
+ enableSearch?: boolean;
1372
+ messageSearchValue?: string;
1373
+ handleOpenMessageSearch?: () => void;
1374
+ handleCloseMessageSearch?: () => void;
1375
+ handleMessageSearchChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
1376
+ onParticipantsClick?: (e: React.MouseEvent<HTMLButtonElement>) => Promise<void>;
1377
+ participants?: SmartGridParticipant[];
1378
+ onPinnedClick?: () => void;
1379
+ threeDotMenuOptions?: SmartGridThreeDotMenuOption[];
1380
+ showNotificationSettings?: boolean;
1381
+ handleNotificationSettingsClose?: () => void;
1382
+ onThreeDotMenuClick?: () => void;
1383
+ externalHandlers?: SmartGridChatHeaderActionExternalHandlers;
1384
+ isLoadingOptions?: boolean;
1385
+ isSearching?: boolean;
1386
+ filteredMenuOptions?: SmartGridParticipant[];
1387
+ menuSearchQuery?: string;
1388
+ setMenuSearchQuery?: (query: string) => void;
1389
+ renderCustomHeader?: (headerProps: Record<string, unknown>) => React.ReactNode;
1390
+ threeDotMenuOpen?: boolean;
1391
+ onSaveNotification?: (data: SmartGridNotificationSettings) => void;
1392
+ selectedMenuItems?: (string | number)[];
1393
+ setSelectedMenuItems?: React.Dispatch<React.SetStateAction<(string | number)[]>>;
1394
+ handleThreeDotMenuClose?: () => void;
1395
+ notificationSettings?: SmartGridNotificationSettings;
1396
+ maxAvatars?: number;
1397
+ selectedRadioOption?: string;
1398
+ chatId?: string | number;
1399
+ menuOptions?: SmartGridParticipant[];
1400
+ externalSavingMembers?: boolean;
1401
+ showSearch?: boolean;
1402
+ showPinned?: boolean;
1403
+ showParticipants?: boolean;
1404
+ showThreeDotMenu?: boolean;
1405
+ className?: string;
1406
+ searchPlaceholder?: string;
1407
+ isAddParticipantsAllowed?: boolean;
1408
+ isLoadingParticipants?: boolean;
1409
+ loadingError?: string | null;
1410
+ }
1411
+
1412
+ export declare interface SmartGridChatHeaderInfoProps {
1413
+ title?: string;
1414
+ createdBy?: string;
1415
+ createdAt?: string;
1416
+ chatId?: string | number;
1417
+ }
1418
+
1419
+ export declare interface SmartGridChatHeaderNavigationProps {
1420
+ title?: string;
1421
+ onBack?: () => void;
1422
+ onSearchClick?: () => void;
1423
+ onMenuClick?: () => void;
1424
+ onMoreClick?: () => void;
1425
+ showChannelList?: boolean;
1426
+ isSearchOpen?: boolean;
1427
+ showAddChatBtn?: boolean;
1428
+ showSearchChat?: boolean;
1429
+ setShowPinnedMsg?: (value: boolean) => void;
1430
+ onThreadClick?: (messageId?: string | number, payload?: SmartGridChatMessage) => void;
1431
+ headerConfig?: SmartGridLeftHeaderPanel;
1432
+ handleChatName?: SmartGridLeftPanelConfig["handleChatName"];
1433
+ filterChannelsByTitle?: (value: string) => void;
1434
+ selectedChat?: (string | number)[];
1435
+ selectedChannelInfo?: SmartGridChannel | null;
1436
+ handleToast?: (isOpen: boolean, message?: string, variant?: SmartGridToastVariant) => void;
1437
+ onDeleteTopics?: () => void;
1438
+ isCreateNewChatOpen?: boolean;
1439
+ setIsCreateNewChatOpen?: Dispatch<SetStateAction<boolean>>;
1440
+ }
1441
+
1442
+ export declare interface SmartGridChatHeaderProps {
1443
+ title: string;
1444
+ chatId: string | number;
1445
+ participants?: SmartGridParticipant[];
1446
+ className?: string;
1447
+ participantsList?: SmartGridParticipant[];
1448
+ onSaveNotification?: (data: SmartGridNotificationSettings) => void;
1449
+ createdBy?: string;
1450
+ createdAt?: string;
1451
+ chatHeaderConfig: Partial<SmartGridHeaderChatConfig> & {
1452
+ onSearchMessage?: (searchValue: string, chatId: string | number) => Promise<SmartGridChatMessage[] | void>;
1453
+ onSearchClear?: () => void;
1454
+ externalSavingMembers?: boolean;
1455
+ };
1456
+ }
1457
+
1458
+ export declare interface SmartGridChatInputProps {
1459
+ placeholder: string;
1460
+ value: string;
1461
+ onChange: (value: string) => void;
1462
+ onSend: (payload: SmartGridChatInputSendPayload) => Promise<void>;
1463
+ onAttach?: (file: File) => void;
1464
+ onImageUpload?: (image: File) => void;
1465
+ onEmojiClick?: (emoji: string) => void;
1466
+ showFormatting?: boolean;
1467
+ showQuickAction?: boolean;
1468
+ quickActionLabel?: string;
1469
+ disabled?: boolean;
1470
+ maxLength?: number;
1471
+ className?: string;
1472
+ messageConfig: SmartGridMessageChatConfig & {
1473
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1474
+ messageConfig?: SmartGridMessageConfig;
1475
+ };
1476
+ isEditMode?: boolean;
1477
+ editingMessage?: SmartGridChatMessage | null;
1478
+ onCancelEdit?: () => void;
1479
+ chatId: string | number;
1480
+ }
1481
+
1482
+ export declare interface SmartGridChatInputSendPayload {
1483
+ content: string;
1484
+ selectedPriority?: string;
1485
+ taggedUsers?: (string | number)[];
1486
+ [key: string]: unknown;
1487
+ }
1488
+
1489
+ /**
1490
+ * MessageObject - Represents a chat message
1491
+ * @see MDX Documentation: Data Structures > MessageObject
1492
+ */
1493
+ export declare interface SmartGridChatMessage {
1494
+ id: string | number;
1495
+ author?: "user" | "assistant" | "system" | string;
1496
+ authorName?: string;
1497
+ authorAvatar?: string;
1498
+ content?: string;
1499
+ timestamp?: string;
1500
+ date?: string;
1501
+ priority?: "low" | "medium" | "high" | "default" | "normal" | string;
1502
+ isPinned?: boolean;
1503
+ deleted?: boolean;
1504
+ edited?: boolean;
1505
+ showActions?: boolean;
1506
+ showReplyBadge?: boolean;
1507
+ replyText?: string | null;
1508
+ text?: string;
1509
+ time?: string;
1510
+ user?: string;
1511
+ userInitials?: string;
1512
+ quote?: string;
1513
+ type?: "default" | "deleted" | "edited" | string;
1514
+ senderId?: string | number;
1515
+ created_at?: string;
1516
+ isRealTime?: boolean;
1517
+ otherProps?: {
1518
+ sender_id?: number | string;
1519
+ created_at?: string;
1520
+ updated_at?: string;
1521
+ isRealTime?: boolean;
1522
+ topic_id?: string;
1523
+ sender_name?: string;
1524
+ object_ids?: (string | number)[];
1525
+ object_type?: string;
1526
+ deleted?: boolean;
1527
+ [key: string]: unknown;
1528
+ };
1529
+ }
1530
+
1531
+ export declare interface SmartGridChatMessageActionsProps {
1532
+ messageId?: string | number;
1533
+ onReply?: (messageId: string | number) => void;
1534
+ onReact?: (messageId: string | number) => void;
1535
+ onBookmark?: (messageId: string | number) => void;
1536
+ onPin?: (messageId: string | number) => void;
1537
+ onMore?: (messageId: string | number) => void;
1538
+ actions?: SmartGridMessageActionKey[];
1539
+ className?: string;
1540
+ }
1541
+
1542
+ export declare interface SmartGridChatMessageAvatarProps {
1543
+ authorName?: string;
1544
+ authorAvatar?: string;
1545
+ }
1546
+
1547
+ export declare interface SmartGridChatMessageProps {
1548
+ messageId?: string | number;
1549
+ author?: string;
1550
+ authorName?: string;
1551
+ authorAvatar?: string;
1552
+ content?: string | React.ReactNode;
1553
+ timestamp?: string;
1554
+ isUser?: boolean;
1555
+ showActions?: boolean;
1556
+ showAvatar?: boolean;
1557
+ isDeleted?: boolean;
1558
+ edited?: boolean;
1559
+ deleted?: boolean;
1560
+ onReply?: () => void;
1561
+ onReact?: () => void;
1562
+ onBookmark?: () => void;
1563
+ onPin?: (isPinned: boolean) => Promise<SmartGridChatMessage | boolean | undefined>;
1564
+ pinned?: boolean;
1565
+ onMore?: () => void;
1566
+ onEdit?: () => void;
1567
+ onMessageDelete?: (messageId: string | number) => Promise<SmartGridChatMessage | {
1568
+ success: boolean;
1569
+ messageId: string | number;
1570
+ } | undefined>;
1571
+ onRefetchMessages?: () => Promise<SmartGridChatMessage[]>;
1572
+ type?: SmartGridChatMessageType;
1573
+ priority?: SmartGridMessagePriority;
1574
+ actions?: SmartGridMessageActionKey[];
1575
+ className?: string;
1576
+ onThreadClick?: () => void;
1577
+ isThreadIconVisible?: boolean;
1578
+ isPinChatIconvisible?: boolean;
1579
+ isHighlighted?: boolean;
1580
+ highlightColor?: string | null;
1581
+ }
1582
+
1583
+ export declare type SmartGridChatMessageType = "default" | "deleted" | "editable";
1584
+
1585
+ export declare interface SmartGridChatNotificationSettingsProps {
1586
+ isOpen?: boolean;
1587
+ onClose?: () => void;
1588
+ isLoading?: boolean;
1589
+ position?: {
1590
+ top: number;
1591
+ right: number;
1592
+ };
1593
+ onSaveNotification?: (data: SmartGridNotificationSettings) => void;
1594
+ notificationSettings?: SmartGridNotificationSettings;
1595
+ }
1596
+
1597
+ export declare interface SmartGridChatRadioOption {
1598
+ label: string;
1599
+ value: string;
1600
+ }
1601
+
1602
+ export declare interface SmartGridChatTooltipConfig {
1603
+ title: string;
1604
+ description: string;
1605
+ }
1606
+
1178
1607
  export declare interface SmartGridCheckboxProps {
1179
1608
  checked?: boolean;
1180
- onChange: (checked: boolean) => void;
1181
- label?: string;
1609
+ onChange: (e: ChangeEvent<HTMLInputElement>) => void;
1610
+ label?: string | ReactNode;
1182
1611
  disabled?: boolean;
1183
1612
  className?: string;
1613
+ defaultChecked?: boolean;
1614
+ variant?: SmartGridCheckboxVariant;
1615
+ indeterminate?: boolean;
1184
1616
  }
1185
1617
 
1618
+ export declare type SmartGridCheckboxVariant = "default" | "primary" | "secondary";
1619
+
1186
1620
  export declare type SmartGridCheckConfigraitonSearchField = {
1187
1621
  type: string;
1188
1622
  filterType: string;
@@ -1200,6 +1634,10 @@ export declare interface SmartGridCheckConfiguration {
1200
1634
  unCheckAll?: boolean;
1201
1635
  }
1202
1636
 
1637
+ export declare type SmartGridClickCallbackRefCurrent = {
1638
+ onCellClick?: ((params: any) => void) | null;
1639
+ };
1640
+
1203
1641
  /** Client-side datasource interface */
1204
1642
  declare interface SmartGridClientSideDatasource {
1205
1643
  getRows: (params: SmartGridGetRowsRequestParams) => void;
@@ -1266,6 +1704,209 @@ export declare interface SmartGridColumnWithGroupId extends SmartGridBaseColumnD
1266
1704
  groupId: string;
1267
1705
  }
1268
1706
 
1707
+ /**
1708
+ * SmartGridComment - Represents a single comment in a thread
1709
+ */
1710
+ export declare interface SmartGridComment {
1711
+ id: string | number;
1712
+ text: string;
1713
+ author: string;
1714
+ timestamp: string;
1715
+ isEdited?: boolean;
1716
+ read?: boolean;
1717
+ isRead?: boolean;
1718
+ }
1719
+
1720
+ /**
1721
+ * SmartGridCommentConfiguration - Configuration options for comment features
1722
+ */
1723
+ export declare interface SmartGridCommentConfiguration {
1724
+ disableMarkAsRead?: boolean;
1725
+ disableMarkAsResolved?: boolean;
1726
+ disableDeleteThread?: boolean;
1727
+ disableEditComment?: boolean;
1728
+ disableDeleteComment?: boolean;
1729
+ disableMultiCommentThread?: boolean;
1730
+ messageIdHighlightTimer?: number;
1731
+ }
1732
+
1733
+ /**
1734
+ * SmartGridCommentContextRef - Context reference for comment functionality
1735
+ * Used by smartGridContextRef in CommentWrapper
1736
+ */
1737
+ export declare interface SmartGridCommentContextRef {
1738
+ comments: SmartGridCommentThread;
1739
+ popup: SmartGridCommentPopup | null;
1740
+ handleCommentIconHover: (params: SmartGridCellRenderer) => void;
1741
+ handleMouseEnter: () => void;
1742
+ handleMouseLeave: () => void;
1743
+ resolvedComments: string[];
1744
+ getLatestUnresolvedThreadId: (cellId: string) => string | null;
1745
+ configuration?: SmartGridCommentConfiguration;
1746
+ colIdentifierKey?: string;
1747
+ }
1748
+
1749
+ /**
1750
+ * SmartGridCommentDeleteState - State for comment deletion
1751
+ */
1752
+ export declare interface SmartGridCommentDeleteState {
1753
+ cellId?: string;
1754
+ data?: SmartGridCommentRowData;
1755
+ comment?: SmartGridComment;
1756
+ }
1757
+
1758
+ /**
1759
+ * SmartGridCommentMenuOption - Menu option for comment actions
1760
+ */
1761
+ export declare interface SmartGridCommentMenuOption {
1762
+ label: string;
1763
+ id: string;
1764
+ icon?: React.ReactNode;
1765
+ onClick: () => void;
1766
+ value: string;
1767
+ }
1768
+
1769
+ /**
1770
+ * SmartGridCommentPanelProps - Props for CommentPanel component
1771
+ */
1772
+ export declare interface SmartGridCommentPanelProps {
1773
+ showCommentPanel: boolean;
1774
+ setShowCommentPanel: () => void;
1775
+ comments: SmartGridCommentThread;
1776
+ onCommentItemClick: (cellId: string, comments: SmartGridComment[], messageId?: string | number | null) => void;
1777
+ onMenuClick: (event: React.MouseEvent<HTMLButtonElement>, comment?: string | SmartGridComment | null, type?: "commentMenu" | "topMenu") => void;
1778
+ onMarkAsReadClick?: (cellId: string | number) => Promise<void>;
1779
+ onMarkAsResolvedClick: (cellId: string, comments: SmartGridComment[]) => Promise<void>;
1780
+ commentProps: SmartGridCommentProps;
1781
+ resolvedComments: string[];
1782
+ popup: SmartGridCommentPopup | null;
1783
+ onShowResolvedCommentsRequest?: () => Promise<void>;
1784
+ height: string | number;
1785
+ }
1786
+
1787
+ /**
1788
+ * SmartGridCommentPopup - State for comment popup
1789
+ */
1790
+ export declare interface SmartGridCommentPopup {
1791
+ position: SmartGridCommentPopupPosition;
1792
+ rowId?: string | number;
1793
+ colId?: string;
1794
+ cellId: string;
1795
+ comment?: SmartGridComment[];
1796
+ author?: string;
1797
+ openedBy: "hover" | "click";
1798
+ data?: SmartGridCommentRowData;
1799
+ messageId?: string | number | null;
1800
+ }
1801
+
1802
+ /**
1803
+ * SmartGridCommentPopupPosition - Position for comment popup
1804
+ */
1805
+ export declare interface SmartGridCommentPopupPosition {
1806
+ top: number;
1807
+ left: number;
1808
+ side?: "left" | "right" | "clamped";
1809
+ }
1810
+
1811
+ /**
1812
+ * SmartGridCommentProps - Props passed to comment components
1813
+ */
1814
+ export declare interface SmartGridCommentProps {
1815
+ comments?: SmartGridCommentThread;
1816
+ resolvedComments?: string[];
1817
+ author?: string;
1818
+ colIdentifierKey?: string;
1819
+ configuration?: SmartGridCommentConfiguration;
1820
+ commentSearchOptions?: Array<{
1821
+ label: string;
1822
+ value: string;
1823
+ }>;
1824
+ selectedCommentSearchOption?: string;
1825
+ handleSaveComment?: (cellId: string, text: string, data: SmartGridCommentRowData, taggedUsers?: SmartGridCommentTaggedUser[]) => Promise<SmartGridCommentThread | void>;
1826
+ handleCommentEdit?: (text: string, comment: SmartGridComment, commentId: string | number, taggedUsers?: SmartGridCommentTaggedUser[]) => Promise<SmartGridCommentThread | void>;
1827
+ handleCommentDelete?: (commentId: string | number, comment: SmartGridComment) => Promise<SmartGridCommentThread | void>;
1828
+ handleThreadDelete?: (cellId: string, data: SmartGridComment[]) => Promise<SmartGridCommentThread | void>;
1829
+ handleMarkAsRead?: (cellId: string | number) => Promise<void>;
1830
+ handleMarkAsUnread?: (cellId: string | number) => Promise<void>;
1831
+ handleMarkAsResolved?: (cellId: string, comments: SmartGridComment[]) => Promise<string[] | void>;
1832
+ handleFetchResolvedComments?: () => Promise<{
1833
+ comments?: SmartGridCommentThread;
1834
+ resolvedComments?: string[];
1835
+ } | void>;
1836
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1837
+ }
1838
+
1839
+ /**
1840
+ * SmartGridCommentRowData - Row data associated with a comment
1841
+ */
1842
+ export declare interface SmartGridCommentRowData {
1843
+ [key: string]: unknown;
1844
+ }
1845
+
1846
+ /**
1847
+ * SmartGridCommentSearchOption - Search/filter option for comments
1848
+ */
1849
+ export declare interface SmartGridCommentSearchOption {
1850
+ label: string;
1851
+ value: string;
1852
+ id: string;
1853
+ }
1854
+
1855
+ /**
1856
+ * SmartGridCommentsPortalProps - Props for CommentsPortal component
1857
+ */
1858
+ export declare interface SmartGridCommentsPortalProps {
1859
+ isOpen: boolean;
1860
+ onClose: () => void;
1861
+ comments?: SmartGridComment[];
1862
+ onAddComment: (cellId: string | number, inputValue: string, taggedUsers?: SmartGridCommentTaggedUser[]) => Promise<void>;
1863
+ cellId?: string | number;
1864
+ position?: SmartGridCommentPopupPosition;
1865
+ author?: string;
1866
+ onMouseEnter?: () => void;
1867
+ onMouseLeave?: () => void;
1868
+ openedBy?: "hover" | "click";
1869
+ onMenuClick: (event: React.MouseEvent<HTMLButtonElement>, comment?: string | number | SmartGridComment | null, type?: "commentMenu" | "topMenu") => void;
1870
+ onMarkAsReadClick?: ((cellId: string | number) => Promise<void>) | null;
1871
+ onMarkAsResolvedClick?: ((cellId: string | number, comments: SmartGridComment[]) => Promise<void>) | null;
1872
+ editCommentText?: string;
1873
+ isLoading?: boolean;
1874
+ error?: string | null;
1875
+ onClearError?: () => void;
1876
+ currentAuthor?: string;
1877
+ editingComment?: SmartGridComment | null;
1878
+ setEditingComment?: React.Dispatch<React.SetStateAction<SmartGridComment | null>>;
1879
+ onUpdateComment?: (commentId: string | number | null, newText: string) => Promise<void>;
1880
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1881
+ resolvedComments?: string[];
1882
+ messageId?: string | number | null;
1883
+ configuration?: SmartGridCommentConfiguration;
1884
+ }
1885
+
1886
+ /**
1887
+ * SmartGridCommentTaggedUser - User tagged in a comment
1888
+ */
1889
+ export declare interface SmartGridCommentTaggedUser {
1890
+ id: string | number;
1891
+ name: string;
1892
+ avatar?: string;
1893
+ status?: string;
1894
+ }
1895
+
1896
+ /**
1897
+ * SmartGridCommentThread - A collection of comments keyed by cell ID
1898
+ */
1899
+ export declare type SmartGridCommentThread = Record<string, SmartGridComment[]>;
1900
+
1901
+ /**
1902
+ * SmartGridCommentWrapperProps - Props for CommentWrapper component
1903
+ */
1904
+ export declare interface SmartGridCommentWrapperProps {
1905
+ commentProps: SmartGridCommentProps;
1906
+ commentPannelRef: React.MutableRefObject<((show: boolean) => void) | null>;
1907
+ height: string | number;
1908
+ }
1909
+
1269
1910
  export declare interface SmartGridContainerRect {
1270
1911
  top: number;
1271
1912
  left: number;
@@ -1280,6 +1921,18 @@ export declare interface SmartGridCopyCellValueParams {
1280
1921
  tableApi: SmartGridAPI | null;
1281
1922
  }
1282
1923
 
1924
+ export declare interface SmartGridCreateChatResponse {
1925
+ success: boolean;
1926
+ chatName?: string;
1927
+ description?: string;
1928
+ selectedChannel?: SmartGridChannel;
1929
+ formattedChat?: SmartGridChat;
1930
+ }
1931
+
1932
+ export declare type SmartGridCustomCallbackRefCurrent = {
1933
+ onCellClick?: ((params: any) => void) | null;
1934
+ };
1935
+
1283
1936
  /** Data source context */
1284
1937
  export declare interface SmartGridDataSourceContext {
1285
1938
  infiniteCache?: InfiniteCache;
@@ -1462,6 +2115,21 @@ export declare interface SmartGridDateRangeValue {
1462
2115
  endDate: string;
1463
2116
  }
1464
2117
 
2118
+ export declare type SmartGridDateSeparatorFormat = "relative" | "absolute" | "short" | "long";
2119
+
2120
+ export declare interface SmartGridDateSeparatorItem {
2121
+ type: "date-separator";
2122
+ id: string;
2123
+ date: Date;
2124
+ pinned?: boolean;
2125
+ }
2126
+
2127
+ export declare interface SmartGridDateSeparatorProps {
2128
+ date?: Date | string;
2129
+ className?: string;
2130
+ format?: SmartGridDateSeparatorFormat;
2131
+ }
2132
+
1465
2133
  export declare type SmartGridDefaultColDef = {
1466
2134
  minWidth: number;
1467
2135
  headerComponentParams?: {
@@ -1562,6 +2230,86 @@ export declare interface SmartGridDragSourceData {
1562
2230
  path: string[];
1563
2231
  }
1564
2232
 
2233
+ export declare type SmartGridDrawerAnchor = "left" | "right" | "top" | "bottom";
2234
+
2235
+ export declare interface SmartGridDrawerProps {
2236
+ open: boolean;
2237
+ onClose: () => void;
2238
+ anchor?: SmartGridDrawerAnchor;
2239
+ children?: ReactNode;
2240
+ title?: string;
2241
+ size?: SmartGridDrawerSize;
2242
+ width?: number | string;
2243
+ height?: number | string;
2244
+ className?: string;
2245
+ zIndex?: number;
2246
+ showCloseButton?: boolean;
2247
+ closeOnBackdropClick?: boolean;
2248
+ closeOnEscape?: boolean;
2249
+ primaryButtonLabel?: string;
2250
+ onPrimaryButtonClick?: () => void;
2251
+ primaryButtonProps?: Record<string, unknown>;
2252
+ secondaryButtonLabel?: string;
2253
+ onSecondaryButtonClick?: () => void;
2254
+ secondaryButtonProps?: Record<string, unknown>;
2255
+ hideBackdrop?: boolean;
2256
+ disablePortal?: boolean;
2257
+ keepMounted?: boolean;
2258
+ }
2259
+
2260
+ export declare type SmartGridDrawerSize = "small" | "medium" | "large";
2261
+
2262
+ export declare interface SmartGridEditorCommands {
2263
+ toggleBold?: () => void;
2264
+ toggleItalic?: () => void;
2265
+ toggleLink?: () => void;
2266
+ toggleBulletList?: () => void;
2267
+ toggleOrderedList?: () => void;
2268
+ toggleStrike?: () => void;
2269
+ toggleHighlight?: () => void;
2270
+ toggleH1?: () => void;
2271
+ toggleH2?: () => void;
2272
+ toggleH3?: () => void;
2273
+ toggleH4?: () => void;
2274
+ toggleH5?: () => void;
2275
+ toggleH6?: () => void;
2276
+ insertEmoji?: (emoji: string) => void;
2277
+ clearContent?: () => void;
2278
+ editor?: SmartGridTipTapEditor;
2279
+ [key: string]: (() => void) | ((emoji: string) => void) | SmartGridTipTapEditor | undefined;
2280
+ }
2281
+
2282
+ export declare interface SmartGridEditorToolbarProps {
2283
+ editor: SmartGridEditorCommands | null;
2284
+ activeStates?: Record<SmartGridToolbarItemKey, boolean>;
2285
+ enabledItems?: SmartGridToolbarItemKey[];
2286
+ onFileSelect?: (e: ChangeEvent<HTMLInputElement>) => void;
2287
+ onImageSelect?: (e: ChangeEvent<HTMLInputElement>) => void;
2288
+ onEmojiSelect?: (e: React.MouseEvent<HTMLButtonElement>) => void;
2289
+ className?: string;
2290
+ }
2291
+
2292
+ export declare interface SmartGridEditorToolbarRef {
2293
+ fileInput?: HTMLInputElement | null;
2294
+ imageInput?: HTMLInputElement | null;
2295
+ }
2296
+
2297
+ export declare interface SmartGridEmojiObject {
2298
+ emoji: string;
2299
+ }
2300
+
2301
+ export declare interface SmartGridEmojiPickerProps {
2302
+ open?: boolean;
2303
+ onClose?: () => void;
2304
+ onEmojiClick?: (emoji: string) => void;
2305
+ anchorEl?: HTMLElement | null;
2306
+ }
2307
+
2308
+ export declare interface SmartGridEmptyContainerProps {
2309
+ title?: string;
2310
+ subTitle?: string;
2311
+ }
2312
+
1565
2313
  export declare interface SmartGridEvent {
1566
2314
  type: string;
1567
2315
  api?: SmartGridAPI;
@@ -1638,6 +2386,8 @@ declare interface SmartGridFetchFunctionRef {
1638
2386
  current?: SmartGridFetDataParams | null;
1639
2387
  }
1640
2388
 
2389
+ export declare type SmartGridFetchMoreFn<T> = (page: number) => Promise<T[] | null | undefined>;
2390
+
1641
2391
  /** Fetch response */
1642
2392
  declare interface SmartGridFetchResponse {
1643
2393
  data?: SmartGridRowData[];
@@ -1654,6 +2404,17 @@ export declare type SmartGridFetDataParams = (body: SmartGridFetchDataFunctionBo
1654
2404
  totalCount?: number | null;
1655
2405
  }>;
1656
2406
 
2407
+ export declare interface SmartGridFileUploaderProps {
2408
+ file?: File | null;
2409
+ fileUrl?: string | null;
2410
+ isLoading?: boolean;
2411
+ isError?: boolean;
2412
+ errorMessage?: string;
2413
+ onClear?: () => void;
2414
+ onRetry?: () => void;
2415
+ onDownload?: (url: string, fileName: string) => void;
2416
+ }
2417
+
1657
2418
  export declare type SmartGridFilterMode = "value" | "condition";
1658
2419
 
1659
2420
  export declare interface SmartGridFilterModel {
@@ -1694,6 +2455,22 @@ export declare interface SmartGridFocusedCell extends SmartGridSelectedCell {
1694
2455
  floating: SmartGridFloatingType;
1695
2456
  }
1696
2457
 
2458
+ export declare interface SmartGridFormatActiveState {
2459
+ bold: boolean;
2460
+ italic: boolean;
2461
+ link: boolean;
2462
+ bulletList: boolean;
2463
+ orderedList: boolean;
2464
+ strike: boolean;
2465
+ highlight: boolean;
2466
+ h1: boolean;
2467
+ h2: boolean;
2468
+ h3: boolean;
2469
+ h4: boolean;
2470
+ h5: boolean;
2471
+ h6: boolean;
2472
+ }
2473
+
1697
2474
  export declare type SmartGridFrozenColumnsDetails = {
1698
2475
  indexes: string[];
1699
2476
  positions: Record<string, number>;
@@ -1770,6 +2547,14 @@ export declare interface SmartGridGlobalColumnCounts {
1770
2547
  right?: number;
1771
2548
  }
1772
2549
 
2550
+ export declare type SmartGridGroupedMessageItem = (SmartGridChatMessage & {
2551
+ type?: "default" | "deleted" | "edited" | string;
2552
+ }) | SmartGridDateSeparatorItem;
2553
+
2554
+ export declare interface SmartGridHandleToastFn {
2555
+ (isOpen: boolean, message?: string, variant?: SmartGridToastVariant): void;
2556
+ }
2557
+
1773
2558
  export declare interface SmartGridHeaderCellProps {
1774
2559
  column: SmartGridColumnDefinition;
1775
2560
  index: number;
@@ -1785,6 +2570,44 @@ export declare interface SmartGridHeaderCellProps {
1785
2570
  } | null;
1786
2571
  }
1787
2572
 
2573
+ export declare interface SmartGridHeaderChatConfig {
2574
+ participants: SmartGridParticipant[];
2575
+ participantsList: SmartGridParticipant[];
2576
+ headerConfig: SmartGridHeaderConfig;
2577
+ notificationSettings: SmartGridNotificationSettings;
2578
+ loadParticipants: (radioValue: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
2579
+ loadParticipantsAvatar: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
2580
+ loadMenuOptions: () => Promise<SmartGridParticipant[]>;
2581
+ onParticipantsClick: (radioValue: string | number) => Promise<SmartGridParticipant[]>;
2582
+ onParticipantAdd: (participantIds: (string | number)[], selectedRadioOption: string, chatId: string | number) => Promise<{
2583
+ success: boolean;
2584
+ participant: SmartGridParticipant;
2585
+ } | null>;
2586
+ onParticipantRemove: (participant: SmartGridParticipant) => Promise<{
2587
+ success: boolean;
2588
+ participant: SmartGridParticipant;
2589
+ }>;
2590
+ onPinnedClick: (chatId: string | number) => Promise<SmartGridChatMessage[]>;
2591
+ onPinnedChatClick: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
2592
+ onChatClick: (chatId: string | number, channelId?: string | number | null) => Promise<void>;
2593
+ onSearchChange: (value: string, radioValue?: string, chatId?: string | number) => Promise<SmartGridParticipant[]>;
2594
+ onNotificationSettingChange: (settings: SmartGridNotificationSettings) => Promise<{
2595
+ success: boolean;
2596
+ settings: SmartGridNotificationSettings;
2597
+ } | void>;
2598
+ }
2599
+
2600
+ export declare interface SmartGridHeaderConfig {
2601
+ showSearch?: boolean;
2602
+ showParticipants?: boolean;
2603
+ showPinned?: boolean;
2604
+ showNotifications?: boolean;
2605
+ selectedRadioOptionMenu?: string;
2606
+ maxAvatars?: number;
2607
+ radioOptions?: SmartGridChatRadioOption[];
2608
+ searchConfig?: SmartGridSearchConfig;
2609
+ }
2610
+
1788
2611
  export declare interface SmartGridHeaderMenuReturn {
1789
2612
  unfreezeColumn: (column: SmartGridColumnDefinition) => void;
1790
2613
  freezeColumn: (column: SmartGridColumnDefinition) => void;
@@ -1856,6 +2679,14 @@ export declare interface SmartGridIATableState {
1856
2679
  activeInstance?: HTMLElement | null;
1857
2680
  }
1858
2681
 
2682
+ export declare interface SmartGridImageUploaderProps {
2683
+ image?: string | null;
2684
+ isLoading?: boolean;
2685
+ isError?: boolean;
2686
+ handleClear?: () => void;
2687
+ handleRetry?: () => void;
2688
+ }
2689
+
1859
2690
  export declare interface SmartGridInfiniteCache {
1860
2691
  analytics: SmartGridCacheAnalytics;
1861
2692
  blockCount: number;
@@ -2014,6 +2845,25 @@ export declare interface SmartGridInfiniteScrollLoaderProps {
2014
2845
  colSpan: number;
2015
2846
  }
2016
2847
 
2848
+ export declare interface SmartGridInfiniteScrollOptions {
2849
+ threshold?: number;
2850
+ rootMargin?: string;
2851
+ enabled?: boolean;
2852
+ isRestoringScroll?: MutableRefObject<boolean> | null;
2853
+ }
2854
+
2855
+ export declare interface SmartGridInfiniteScrollReturn {
2856
+ loadMoreRef: RefObject<HTMLDivElement>;
2857
+ isLoading: boolean;
2858
+ hasMore: boolean;
2859
+ error: Error | null;
2860
+ loadMore: () => Promise<void>;
2861
+ reset: () => void;
2862
+ updateHasMore: (newHasMore: boolean) => void;
2863
+ updateCurrentPage: (newPage: number) => void;
2864
+ currentPage: number;
2865
+ }
2866
+
2017
2867
  export declare interface SmartGridInitialDataUpdateParams {
2018
2868
  dispatch: SmartGridDispatch;
2019
2869
  pinnedTopRows: SmartGridRowData[];
@@ -2053,6 +2903,29 @@ export declare interface SmartGridInitialDataUpdateParams {
2053
2903
  splitRendererKeys?: string[];
2054
2904
  }
2055
2905
 
2906
+ export declare interface SmartGridInputChatConfig {
2907
+ inputConfig: SmartGridInputConfig;
2908
+ onSend: (payload: SmartGridSendPayload, chatId: string | number) => Promise<SmartGridChatMessage | {
2909
+ success: boolean;
2910
+ message: string;
2911
+ }>;
2912
+ onMessageReply: (messageId: string | number, chatId: string | number) => void;
2913
+ onMessageBookmark: (messageId: string | number, chatId: string | number) => void;
2914
+ onMessageMore: (messageId: string | number, chatId: string | number) => void;
2915
+ onAttachFile: (file: File) => void;
2916
+ onImageUpload: (image: File) => void;
2917
+ onEmojiSelect: (emoji: string) => void;
2918
+ }
2919
+
2920
+ export declare interface SmartGridInputConfig {
2921
+ placeholder?: string;
2922
+ maxLength?: number;
2923
+ showFormatting?: boolean;
2924
+ showEmojiPicker?: boolean;
2925
+ showAttachments?: boolean;
2926
+ allowedFileTypes?: string[];
2927
+ }
2928
+
2056
2929
  export declare interface SmartGridInputFormatInstance {
2057
2930
  colDef?: {
2058
2931
  type?: string;
@@ -2093,6 +2966,7 @@ export declare interface SmartGridInputProps {
2093
2966
  onFocus?: (e: FocusEvent_2<HTMLInputElement>) => void;
2094
2967
  onBlur?: (e: FocusEvent_2<HTMLInputElement>) => void;
2095
2968
  autoFocus?: boolean;
2969
+ rightIconClick?: () => void;
2096
2970
  }
2097
2971
 
2098
2972
  export declare type SmartGridInputType = "text" | "password" | "email" | "number" | "tel" | "int" | "url";
@@ -2122,6 +2996,32 @@ declare interface SmartGridLastAccessedSequence_2 {
2122
2996
  next: () => number;
2123
2997
  }
2124
2998
 
2999
+ export declare interface SmartGridLeftChatPanel {
3000
+ showCheckbox?: boolean;
3001
+ }
3002
+
3003
+ export declare interface SmartGridLeftHeaderPanel {
3004
+ showAddChat?: boolean;
3005
+ showCheckbox?: boolean;
3006
+ }
3007
+
3008
+ export declare interface SmartGridLeftPanelConfig {
3009
+ leftHeaderPanel: SmartGridLeftHeaderPanel;
3010
+ leftChatPanel: SmartGridLeftChatPanel;
3011
+ rightHeaderPanel: SmartGridRightHeaderPanel;
3012
+ loadChannelsList: () => Promise<SmartGridChannel[]>;
3013
+ loadChatList: (selectedChannelInfo: SmartGridChannel) => Promise<SmartGridChat[]>;
3014
+ handleChatName: (formData: SmartGridChatFormData, selectedChannelId: SmartGridChannel | null) => Promise<SmartGridCreateChatResponse>;
3015
+ deleteChat: (topicId: string | number) => Promise<{
3016
+ success: boolean;
3017
+ topicId: string | number;
3018
+ }>;
3019
+ directChatList: SmartGridChat[];
3020
+ hasDirectChatList: boolean;
3021
+ selectedChatId?: string | number;
3022
+ clearDirectChatList: () => void;
3023
+ }
3024
+
2125
3025
  export declare interface SmartGridMasterDetailConfig {
2126
3026
  enabled: boolean;
2127
3027
  expandedRows: (string | number)[];
@@ -2149,6 +3049,72 @@ export declare interface SmartGridMemoryAnalyticsReturn {
2149
3049
  updateMemoryAndAnalytices: () => void;
2150
3050
  }
2151
3051
 
3052
+ export declare interface SmartGridMentionCommand {
3053
+ id: string;
3054
+ label: string;
3055
+ }
3056
+
3057
+ export declare interface SmartGridMentionConfig {
3058
+ chatId?: string | number;
3059
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
3060
+ }
3061
+
3062
+ export declare interface SmartGridMentionEditorProps {
3063
+ value?: string;
3064
+ onChange?: (html: string) => void;
3065
+ onSend?: () => void;
3066
+ disabled?: boolean;
3067
+ maxLength?: number;
3068
+ placeholder?: string;
3069
+ chatId?: string | number;
3070
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
3071
+ }
3072
+
3073
+ export declare interface SmartGridMentionEditorRef {
3074
+ toggleBold: () => void;
3075
+ toggleItalic: () => void;
3076
+ toggleLink: () => void;
3077
+ addImage: (url: string, alt?: string) => void;
3078
+ getHTML: () => string;
3079
+ getJSON: () => Record<string, unknown> | undefined;
3080
+ clearContent: () => void;
3081
+ isEmpty: () => boolean;
3082
+ insertEmoji: (emoji: string) => void;
3083
+ toggleStrike: () => void;
3084
+ toggleHighlight: () => boolean | undefined;
3085
+ toggleBulletList: () => void;
3086
+ toggleOrderedList: () => void;
3087
+ toggleH1: () => void;
3088
+ toggleH2: () => void;
3089
+ toggleH3: () => void;
3090
+ toggleH4: () => void;
3091
+ toggleH5: () => void;
3092
+ toggleH6: () => void;
3093
+ editor: Editor | null;
3094
+ }
3095
+
3096
+ export declare interface SmartGridMentionInfo {
3097
+ id: string | number;
3098
+ label: string;
3099
+ position: number;
3100
+ }
3101
+
3102
+ export declare interface SmartGridMentionListProps {
3103
+ items: SmartGridMentionUser[];
3104
+ command: (item: SmartGridMentionCommand) => void;
3105
+ }
3106
+
3107
+ export declare interface SmartGridMentionListRef {
3108
+ onKeyDown: (props: SmartGridSuggestionRenderProps) => boolean | undefined;
3109
+ }
3110
+
3111
+ export declare interface SmartGridMentionUser {
3112
+ id: string | number;
3113
+ name: string;
3114
+ avatar?: string;
3115
+ status?: string;
3116
+ }
3117
+
2152
3118
  export declare type SmartGridMenuAlignment = "start" | "end" | "auto";
2153
3119
 
2154
3120
  export declare interface SmartGridMenuAlignments {
@@ -2160,8 +3126,12 @@ export declare interface SmartGridMenuAlignments {
2160
3126
  export declare interface SmartGridMenuOption {
2161
3127
  label: string | number;
2162
3128
  id: string | number;
2163
- onClick: (value: string | number) => void;
3129
+ onClick?: (value: string | number) => void;
2164
3130
  icon?: ReactNode;
3131
+ value?: string | number;
3132
+ prefillText?: string;
3133
+ name?: string;
3134
+ avatar?: string;
2165
3135
  submenu?: SmartGridMenuOption[];
2166
3136
  submenuPosition?: SmartGridMenuPosition;
2167
3137
  submenuWidth?: number;
@@ -2182,6 +3152,49 @@ export declare interface SmartGridMenuOptions {
2182
3152
  wrapText?: boolean;
2183
3153
  }
2184
3154
 
3155
+ export declare interface SmartGridMenuOptionsHeaderCustomProps {
3156
+ searchPlaceholder?: string;
3157
+ selectAllLabel?: string;
3158
+ clearButtonText?: string;
3159
+ radioButtonProps?: Record<string, unknown>;
3160
+ searchInputProps?: Record<string, unknown>;
3161
+ checkboxProps?: Record<string, unknown>;
3162
+ clearButtonProps?: Record<string, unknown>;
3163
+ }
3164
+
3165
+ export declare interface SmartGridMenuOptionsHeaderExternalHandlers {
3166
+ onSearchChange?: (value: string) => void;
3167
+ onSelectAll?: (allValues: (string | number)[]) => void;
3168
+ onClearSelection?: () => void;
3169
+ onRadioButtonChange?: (value: string) => void;
3170
+ }
3171
+
3172
+ export declare interface SmartGridMenuOptionsHeaderOverrideConfig {
3173
+ radioButtonOptions?: SmartGridChatRadioOption[];
3174
+ selectedRadioButton?: string;
3175
+ showRadioButton?: boolean;
3176
+ isSearchable?: boolean;
3177
+ isSelectAllAllowed?: boolean;
3178
+ }
3179
+
3180
+ export declare interface SmartGridMenuOptionsHeaderProps {
3181
+ options?: SmartGridParticipant[];
3182
+ selectedItems?: (string | number)[];
3183
+ onSearchChange?: (value: string) => void;
3184
+ onSelectAll?: (allValues: (string | number)[]) => void;
3185
+ searchQuery?: string;
3186
+ onClearSelection?: () => void;
3187
+ onRadioButtonChange?: (value: string) => void;
3188
+ radioButtonOptions?: SmartGridChatRadioOption[];
3189
+ selectedRadioButton?: string;
3190
+ showRadioButton?: boolean;
3191
+ isSearchable?: boolean;
3192
+ isSelectAllAllowed?: boolean;
3193
+ customHeaderProps?: SmartGridMenuOptionsHeaderCustomProps;
3194
+ externalHandlers?: SmartGridMenuOptionsHeaderExternalHandlers;
3195
+ overrideConfig?: SmartGridMenuOptionsHeaderOverrideConfig;
3196
+ }
3197
+
2185
3198
  export declare type SmartGridMenuPosition = "top" | "bottom" | "left" | "right";
2186
3199
 
2187
3200
  export declare interface SmartGridMenuPositionResult {
@@ -2209,13 +3222,25 @@ export declare interface SmartGridMenuPositionState {
2209
3222
  transformOrigin?: string;
2210
3223
  }
2211
3224
 
3225
+ export declare interface SmartGridMenuPrimaryButtonProps {
3226
+ loading?: boolean;
3227
+ disabled?: boolean;
3228
+ label?: string;
3229
+ }
3230
+
2212
3231
  export declare interface SmartGridMenuProps {
2213
3232
  options?: SmartGridMenuOption[];
2214
- selectedElement?: string | number;
2215
- iconPlacement?: "left" | "right";
2216
- isOpen: boolean;
3233
+ selectedElement?: string | number | {
3234
+ value?: string | number;
3235
+ prefillText?: string;
3236
+ } | null;
3237
+ iconPlacement?: "left" | "right" | "top";
3238
+ isOpen?: boolean;
3239
+ open?: boolean;
2217
3240
  setIsOpen: (isOpen: boolean) => void;
2218
- menuButtonRef?: RefObject<HTMLElement>;
3241
+ onClose?: () => void;
3242
+ menuButtonRef?: RefObject<HTMLElement | null>;
3243
+ anchorEl?: HTMLElement | null;
2219
3244
  position?: SmartGridMenuPosition;
2220
3245
  width?: number;
2221
3246
  horizontalAlign?: SmartGridMenuAlignment;
@@ -2225,8 +3250,86 @@ export declare interface SmartGridMenuProps {
2225
3250
  portalContainer?: HTMLElement;
2226
3251
  additionalButtons?: ReactNode;
2227
3252
  forcePosition?: boolean;
3253
+ onClick?: (option: SmartGridMenuOption) => void;
3254
+ menuContainerClassName?: string;
3255
+ primaryButtonProps?: SmartGridMenuPrimaryButtonProps;
3256
+ onPrimaryButtonClick?: () => void | Promise<void>;
3257
+ onTertiaryButtonClick?: () => void;
3258
+ selected?: string;
3259
+ withActionButtons?: boolean;
3260
+ withCheckbox?: boolean;
3261
+ renderCustomHeader?: (headerProps: Record<string, unknown>) => ReactNode;
3262
+ filteredOptions?: SmartGridMenuOption[];
3263
+ searchQuery?: string;
3264
+ onSearchChange?: (value: string) => void;
3265
+ onSelectAll?: (allValues: (string | number)[]) => void;
3266
+ onClearSelection?: () => void;
3267
+ customHeaderProps?: Record<string, unknown>;
3268
+ }
3269
+
3270
+ export declare interface SmartGridMessageAction {
3271
+ icon: React.ReactNode | null;
3272
+ handler?: (messageId: string | number) => void;
3273
+ ariaLabel: string;
3274
+ }
3275
+
3276
+ export declare type SmartGridMessageActionKey = "reply" | "bookmark" | "pin" | "more";
3277
+
3278
+ export declare interface SmartGridMessageChatConfig {
3279
+ realTimeMessages: SmartGridChatMessage[];
3280
+ isWebSocketConnected: boolean;
3281
+ currentTopicId: string | number | null;
3282
+ isThreadIconVisible: boolean;
3283
+ isPinChatIconVisible: boolean;
3284
+ emptyChannelStateTitle: string;
3285
+ emptyChannelStateSubTitle: string;
3286
+ emptyChatStateTitle: string;
3287
+ emptyChatStateSubTitle: string;
3288
+ currentUserId: string | number | null;
3289
+ selectedMessageId: string | number | null;
3290
+ maxSearchPages: number;
3291
+ highlightDuration: number;
3292
+ scrollBehavior: ScrollBehavior;
3293
+ scrollBlock: ScrollLogicalPosition;
3294
+ highlightColor: string;
3295
+ messageConfig: SmartGridMessageConfig;
3296
+ onRealTimeMessageUpdate: (newMessage: SmartGridChatMessage) => void;
3297
+ onMessageReply: (messageId: string | number, message: SmartGridChatMessage) => void;
3298
+ onMessageBookmark: (messageId: string | number, message: SmartGridChatMessage) => void;
3299
+ onMessagePin: (messageId: string | number, isPinned: boolean, chatId: string | number, item: SmartGridChatMessage) => Promise<SmartGridChatMessage | boolean | undefined>;
3300
+ onMessageUpdate: (messageId: string | number, updatedData: Partial<SmartGridChatMessage>) => Promise<SmartGridChatMessage | {
3301
+ success: boolean;
3302
+ messageId: string | number;
3303
+ updatedData: Partial<SmartGridChatMessage>;
3304
+ }>;
3305
+ onMessageDelete: (messageId: string | number) => Promise<{
3306
+ success: boolean;
3307
+ messageId: string | number;
3308
+ }>;
3309
+ onThreadClick: (messageId: string | number, message: SmartGridChatMessage) => void;
3310
+ loadThreadMessages: (parentMessageId: string | number) => Promise<SmartGridChatMessage[]>;
3311
+ loadPinnedMsg: () => Promise<SmartGridChatMessage[]>;
3312
+ onSearchMessage: (value: string, chatId: string | number) => Promise<SmartGridChatMessage[]>;
3313
+ leaveCurrentTopic: () => void;
3314
+ markTopicAsDeleted: (topicId: string | number) => void;
3315
+ onClearAllMessages: (chatId?: string | number) => void;
3316
+ }
3317
+
3318
+ export declare interface SmartGridMessageConfig {
3319
+ showActions?: boolean;
3320
+ priorityOptions?: SmartGridPriorityOption[];
3321
+ quickActionProps?: SmartGridQuickActionProp[];
3322
+ isMsgFormat?: boolean;
3323
+ }
3324
+
3325
+ export declare interface SmartGridMessageItemProps {
3326
+ type?: SmartGridPinnedPanelType;
3327
+ msg?: SmartGridPinnedMessageItem;
3328
+ onMessageClick?: (messageId: string | number) => void;
2228
3329
  }
2229
3330
 
3331
+ export declare type SmartGridMessagePriority = "default" | "normal" | "low" | "medium" | "high";
3332
+
2230
3333
  export declare interface SmartGridModalProps {
2231
3334
  open?: boolean;
2232
3335
  onClose: () => void;
@@ -2236,7 +3339,7 @@ export declare interface SmartGridModalProps {
2236
3339
  width?: string | number;
2237
3340
  height?: string | number;
2238
3341
  className?: string;
2239
- onPrimaryButtonClick?: () => void;
3342
+ onPrimaryButtonClick?: () => void | Promise<void>;
2240
3343
  primaryButtonLabel?: string;
2241
3344
  onSecondaryButtonClick?: () => void;
2242
3345
  secondaryButtonLabel?: string;
@@ -2246,17 +3349,42 @@ export declare interface SmartGridModalProps {
2246
3349
  showCloseButton?: boolean;
2247
3350
  showPrimaryButton?: boolean;
2248
3351
  showSecondaryButton?: boolean;
3352
+ footerOptions?: ReactNode;
3353
+ loading?: boolean;
2249
3354
  }
2250
3355
 
2251
3356
  export declare type SmartGridModalSize = "small" | "medium" | "large";
2252
3357
 
2253
3358
  export declare type SmartGridModelType = "normal" | "serverSide" | "infinite";
2254
3359
 
3360
+ export declare interface SmartGridMoreAvatarProps {
3361
+ count: number;
3362
+ size?: SmartGridAvatarSize;
3363
+ }
3364
+
2255
3365
  export declare interface SmartGridNewSortModel {
2256
3366
  column: string | null;
2257
3367
  order: SmartGridSortDirection | null;
2258
3368
  }
2259
3369
 
3370
+ /**
3371
+ * SmartGridNoCommentsProps - Props for NoComments component
3372
+ */
3373
+ export declare interface SmartGridNoCommentsProps {
3374
+ onAddComment?: (cellId: string | number, inputValue: string, taggedUsers?: SmartGridCommentTaggedUser[]) => void | Promise<void>;
3375
+ cellId?: string | number;
3376
+ position?: SmartGridCommentPopupPosition;
3377
+ isInsidePortal?: boolean;
3378
+ editCommentText?: string;
3379
+ isLoading?: boolean;
3380
+ error?: string | null;
3381
+ onClearError?: () => void;
3382
+ isEditFlow?: boolean;
3383
+ onUpdateComment?: (text: string) => void;
3384
+ setEditingComment?: React.Dispatch<React.SetStateAction<SmartGridComment | null>>;
3385
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
3386
+ }
3387
+
2260
3388
  export declare interface SmartGridNotification {
2261
3389
  message: string;
2262
3390
  type?: "success" | "error" | "warning" | "info";
@@ -2264,6 +3392,13 @@ export declare interface SmartGridNotification {
2264
3392
  timeout?: number;
2265
3393
  }
2266
3394
 
3395
+ export declare interface SmartGridNotificationSettings {
3396
+ notificationSetting?: string;
3397
+ includeChannelMentions?: boolean;
3398
+ muteChannel?: boolean;
3399
+ channelName?: string;
3400
+ }
3401
+
2267
3402
  export declare type SmartGridNumberFormat = "full" | "thousands" | "millions" | "billions";
2268
3403
 
2269
3404
  export declare interface SmartGridOldSortModel {
@@ -2271,6 +3406,8 @@ export declare interface SmartGridOldSortModel {
2271
3406
  sort: SmartGridSortDirection;
2272
3407
  }
2273
3408
 
3409
+ export declare type SmartGridOnMessagePin = (messageId: string | number, pinned: boolean, chatId: string | number, item: SmartGridChatMessage) => Promise<SmartGridChatMessage | boolean | undefined>;
3410
+
2274
3411
  export declare type SmartGridOnReadyParams = {
2275
3412
  api: SmartGridAPI;
2276
3413
  columnApi: SmartGridAPI;
@@ -2348,6 +3485,28 @@ export declare interface SmartGridParamsNode {
2348
3485
  api: SmartGridAPI;
2349
3486
  }
2350
3487
 
3488
+ /**
3489
+ * ParticipantObject - Represents a chat participant
3490
+ * @see MDX Documentation: Data Structures > ParticipantObject
3491
+ */
3492
+ export declare interface SmartGridParticipant {
3493
+ id: string | number;
3494
+ label: string;
3495
+ value: string | number;
3496
+ name?: string;
3497
+ role?: string;
3498
+ url?: string;
3499
+ status?: "online" | "offline";
3500
+ isPinned?: boolean;
3501
+ avatar?: string;
3502
+ otherProps?: {
3503
+ user_name: string;
3504
+ user_code: string | number;
3505
+ email: string;
3506
+ user_image?: string;
3507
+ };
3508
+ }
3509
+
2351
3510
  /** Pending request with abort capability */
2352
3511
  declare interface SmartGridPendingRequest {
2353
3512
  abort?: () => void;
@@ -2360,6 +3519,29 @@ declare interface SmartGridPersistenceOptions {
2360
3519
  compressionEnabled: boolean;
2361
3520
  }
2362
3521
 
3522
+ export declare interface SmartGridPinnedMessageItem {
3523
+ id?: string | number;
3524
+ userInitials?: string;
3525
+ src?: string;
3526
+ senderName?: string;
3527
+ timestamp?: string;
3528
+ content?: string | React.ReactNode;
3529
+ quote?: string | React.ReactNode;
3530
+ edited?: boolean;
3531
+ type?: string;
3532
+ deleted?: boolean;
3533
+ }
3534
+
3535
+ export declare interface SmartGridPinnedPanelProps {
3536
+ type?: SmartGridPinnedPanelType;
3537
+ messages?: SmartGridPinnedMessageItem[];
3538
+ onClose?: () => void;
3539
+ onMessageClick?: (messageId: string | number) => void;
3540
+ handleToast?: SmartGridHandleToastFn;
3541
+ }
3542
+
3543
+ export declare type SmartGridPinnedPanelType = "pinned" | "thread";
3544
+
2363
3545
  export declare interface SmartGridPinnedRowsProps {
2364
3546
  rowHeight: number;
2365
3547
  selectable: boolean;
@@ -2609,6 +3791,48 @@ export declare interface SmartGridPivotWrapperProps {
2609
3791
  showSaveTableConfig: boolean;
2610
3792
  }
2611
3793
 
3794
+ export declare type SmartGridPopoverHorizontal = "left" | "center" | "right" | number;
3795
+
3796
+ export declare interface SmartGridPopoverOrigin {
3797
+ vertical: SmartGridPopoverVertical;
3798
+ horizontal: SmartGridPopoverHorizontal;
3799
+ }
3800
+
3801
+ export declare interface SmartGridPopoverProps {
3802
+ open: boolean;
3803
+ onClose: () => void;
3804
+ anchorEl: HTMLElement | null;
3805
+ anchorOrigin?: SmartGridPopoverOrigin;
3806
+ transformOrigin?: SmartGridPopoverOrigin;
3807
+ children?: ReactNode;
3808
+ className?: string;
3809
+ disablePortal?: boolean;
3810
+ keepMounted?: boolean;
3811
+ marginThreshold?: number;
3812
+ elevation?: number;
3813
+ disableScrollLock?: boolean;
3814
+ disableBackdrop?: boolean;
3815
+ onBackdropClick?: (e: MouseEvent_2<HTMLDivElement>) => void;
3816
+ }
3817
+
3818
+ export declare type SmartGridPopoverVertical = "top" | "center" | "bottom" | number;
3819
+
3820
+ export declare interface SmartGridPriorityMenuOption {
3821
+ id?: string;
3822
+ label?: string;
3823
+ value?: string;
3824
+ icon?: React.ReactNode;
3825
+ onClick?: (data: SmartGridPriorityMenuOption) => void;
3826
+ }
3827
+
3828
+ export declare interface SmartGridPriorityOption {
3829
+ id: string | number;
3830
+ value: string;
3831
+ label: string | number;
3832
+ icon?: React.ReactNode;
3833
+ onClick?: (value: string | number) => void;
3834
+ }
3835
+
2612
3836
  export declare interface SmartGridPromptButton {
2613
3837
  label: string;
2614
3838
  type: "default" | "primary" | "secondary";
@@ -2630,10 +3854,28 @@ export declare interface SmartGridPromptProps {
2630
3854
 
2631
3855
  export declare type SmartGridPromptVariant = "info" | "success" | "warning" | "delete" | "error";
2632
3856
 
3857
+ export declare interface SmartGridQuickActionOption {
3858
+ id?: string;
3859
+ label?: string;
3860
+ value?: string;
3861
+ icon?: React.ReactNode;
3862
+ onClick?: (data: SmartGridQuickActionOption) => void;
3863
+ prefillText?: string;
3864
+ }
3865
+
3866
+ export declare interface SmartGridQuickActionProp {
3867
+ id: string | number;
3868
+ value: string;
3869
+ label: string | number;
3870
+ prefillText?: string;
3871
+ icon?: React.ReactNode;
3872
+ onClick?: (value: string | number) => void;
3873
+ }
3874
+
2633
3875
  export declare interface SmartGridRadioGroupProps {
2634
3876
  options: SmartGridRadioOption[];
2635
3877
  selectedOption: string | number;
2636
- onChange: (e: ChangeEvent<HTMLInputElement>) => void;
3878
+ onChange: (e: ChangeEvent<HTMLInputElement>, val: string | number) => void;
2637
3879
  orientation?: SmartGridRadioOrientation;
2638
3880
  disabled?: boolean;
2639
3881
  name?: string;
@@ -2646,7 +3888,7 @@ export declare interface SmartGridRadioOption {
2646
3888
  disabled?: boolean;
2647
3889
  }
2648
3890
 
2649
- export declare type SmartGridRadioOrientation = "vertical" | "horizontal";
3891
+ export declare type SmartGridRadioOrientation = "vertical" | "horizontal" | "row";
2650
3892
 
2651
3893
  export declare type SmartGridRangeFilter = {
2652
3894
  column: string;
@@ -2710,12 +3952,34 @@ export declare interface SmartGridRenderHeadersProps {
2710
3952
  virtualizedStartCololumnIndex: MutableRefObject<number>;
2711
3953
  }
2712
3954
 
3955
+ export declare interface SmartGridReplyBadgeProps {
3956
+ text?: string;
3957
+ action?: string;
3958
+ onReplyClick?: () => void;
3959
+ onActionClick?: () => void;
3960
+ className?: string;
3961
+ showIcon?: boolean;
3962
+ }
3963
+
2713
3964
  /** Response metadata */
2714
3965
  declare interface SmartGridResponseMetadata {
2715
3966
  totalCount?: number;
2716
3967
  lastRowIndexKnown?: boolean;
2717
3968
  }
2718
3969
 
3970
+ export declare interface SmartGridRightHeaderPanel {
3971
+ showParticipants?: boolean;
3972
+ showPinnedChat?: boolean;
3973
+ showChatSearch?: boolean;
3974
+ showActionBtn?: boolean;
3975
+ }
3976
+
3977
+ export declare interface SmartGridRightPanelConfig {
3978
+ loadMessages: (chatId: string | number, page?: number) => Promise<SmartGridChatMessage[]>;
3979
+ loadOlderMessages: (channelId: string | number) => Promise<SmartGridChatMessage[]>;
3980
+ messagesClearedTrigger?: number;
3981
+ }
3982
+
2719
3983
  export declare interface SmartGridRowClickHandler {
2720
3984
  (rowData: SmartGridRowData, rowIndex: number): void;
2721
3985
  }
@@ -2985,6 +4249,12 @@ export declare interface SmartGridScrollSyncReturn {
2985
4249
  syncHorizontalScroll: (scrollLeft: number, sourceElement: HTMLElement, bodyScrollRef?: RefObject<HTMLDivElement | null> | null) => void;
2986
4250
  }
2987
4251
 
4252
+ export declare interface SmartGridSearchConfig {
4253
+ placeholder?: string;
4254
+ debounceMs?: number;
4255
+ minChars?: number;
4256
+ }
4257
+
2988
4258
  export declare type SmartGridSearchFunctionParams = SmartGridFilterModel[] | Record<string, SmartGridFilterModel[]>;
2989
4259
 
2990
4260
  export declare type SmartGridSearchFunctionParamsWithField = Record<string, SmartGridFilterModel>;
@@ -3072,6 +4342,11 @@ export declare interface SmartGridSelectProps {
3072
4342
  isEnableResetButton?: boolean;
3073
4343
  }
3074
4344
 
4345
+ export declare interface SmartGridSendPayload {
4346
+ content: string;
4347
+ [key: string]: unknown;
4348
+ }
4349
+
3075
4350
  export declare interface SmartGridServerProps {
3076
4351
  totalItems: number;
3077
4352
  totalPages: number;
@@ -3266,6 +4541,9 @@ export declare interface SmartGridStateContext {
3266
4541
  deleteViewPromptText?: null | string;
3267
4542
  }>;
3268
4543
  saveViewCallbackRef: MutableRefObject<SmartGridSaveViewCallbackRefCurrent>;
4544
+ clickCallbackRef: MutableRefObject<SmartGridClickCallbackRefCurrent>;
4545
+ customCallback: SmartGridCustomCallbackRefCurrent;
4546
+ contextRef: MutableRefObject<SmartGridCommentContextRef> | null;
3269
4547
  tableId: string;
3270
4548
  isSingleSelect: boolean;
3271
4549
  selectable: boolean;
@@ -3285,6 +4563,8 @@ export declare interface SmartGridStateContext {
3285
4563
  pivotPanelColumnDef: null | SmartGridColumnDefinition[];
3286
4564
  removeCheckConfigurationOnOperation: boolean;
3287
4565
  totalColumnsCount: number;
4566
+ isCommentFeatureEnabled: boolean;
4567
+ isChatEnabled: boolean;
3288
4568
  [key: string]: unknown;
3289
4569
  }
3290
4570
 
@@ -3295,6 +4575,39 @@ export declare type SmartGridStringFilter = {
3295
4575
  operator?: string;
3296
4576
  };
3297
4577
 
4578
+ export declare interface SmartGridSuggestion {
4579
+ items: (params: SmartGridSuggestionItemsParams) => Promise<SmartGridMentionUser[]>;
4580
+ render: () => SmartGridSuggestionRenderReturn;
4581
+ }
4582
+
4583
+ export declare interface SmartGridSuggestionItemsParams {
4584
+ query: string;
4585
+ editor: Editor & {
4586
+ storage: {
4587
+ mentionConfig?: SmartGridMentionConfig;
4588
+ };
4589
+ };
4590
+ }
4591
+
4592
+ export declare interface SmartGridSuggestionKeyDownProps {
4593
+ event?: KeyboardEvent;
4594
+ }
4595
+
4596
+ export declare interface SmartGridSuggestionRenderProps {
4597
+ editor?: Editor;
4598
+ clientRect?: (() => DOMRect | null) | null;
4599
+ items?: SmartGridMentionUser[];
4600
+ command?: (item: SmartGridMentionCommand) => void;
4601
+ event?: KeyboardEvent;
4602
+ }
4603
+
4604
+ export declare interface SmartGridSuggestionRenderReturn {
4605
+ onStart: (props: SmartGridSuggestionRenderProps) => void;
4606
+ onUpdate: (props: SmartGridSuggestionRenderProps) => void;
4607
+ onKeyDown: (props: SmartGridSuggestionKeyDownProps) => boolean;
4608
+ onExit: () => void;
4609
+ }
4610
+
3298
4611
  export declare interface SmartGridSwitchProps {
3299
4612
  value: boolean;
3300
4613
  leftLabel?: string;
@@ -3343,6 +4656,100 @@ export declare interface SmartGridTableBodyProps {
3343
4656
  height: string | number;
3344
4657
  }
3345
4658
 
4659
+ export declare interface SmartGridTableChatChannelHeaderConfig extends SmartGridLeftHeaderPanel {
4660
+ showSearch?: boolean;
4661
+ leftChatPanel?: SmartGridLeftHeaderPanel;
4662
+ }
4663
+
4664
+ export declare interface SmartGridTableChatChannelHeaderProps {
4665
+ title?: string;
4666
+ channels?: SmartGridChatChannelItemProps[];
4667
+ selectedChannelOrChatId?: string | number;
4668
+ onBack?: () => void;
4669
+ onChannelSelect?: (channelId: string | number, channel: SmartGridChatChannelItemProps) => void;
4670
+ onMenuClick?: () => void;
4671
+ onSearchClick?: () => void;
4672
+ onMoreClick?: () => void;
4673
+ showChannelList?: boolean;
4674
+ setShowPinnedMsg?: (value: boolean) => void;
4675
+ onThreadClick?: (messageId?: string | number, payload?: SmartGridChatMessage) => void;
4676
+ isSearchOpen?: boolean;
4677
+ headerConfig?: SmartGridTableChatChannelHeaderConfig;
4678
+ showAddChatBtn?: boolean;
4679
+ showCheckbox?: boolean;
4680
+ handleChatName?: SmartGridLeftPanelConfig["handleChatName"];
4681
+ filterChannelsByTitle?: (value: string) => void;
4682
+ loadingChannels?: boolean;
4683
+ selectedChannelInfo?: SmartGridChannel | null;
4684
+ handleToast?: SmartGridHandleToastFn;
4685
+ onPinnedChatClick?: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
4686
+ onDeleteTopics?: () => void;
4687
+ selectedChat?: (string | number)[];
4688
+ handleChatSelect?: (id: string | number) => void;
4689
+ isCreateNewChatOpen?: boolean;
4690
+ setIsCreateNewChatOpen?: Dispatch<SetStateAction<boolean>>;
4691
+ }
4692
+
4693
+ export declare interface SmartGridTableChatRightSectionProps {
4694
+ title: string;
4695
+ chatId: string | number;
4696
+ CreatedBy: string;
4697
+ participants?: SmartGridParticipant[];
4698
+ participantsList?: SmartGridParticipant[];
4699
+ onParticipantsClick?: () => void;
4700
+ messages?: SmartGridChatMessage[];
4701
+ placeholder?: string;
4702
+ showFormatting?: boolean;
4703
+ maxLength?: number;
4704
+ showParticipantsList?: boolean;
4705
+ showPinnedChat?: boolean;
4706
+ showSearch?: boolean;
4707
+ showActionBtn?: boolean;
4708
+ onMessageReply?: (messageId: string | number, chatId: string | number) => void;
4709
+ onMessageBookmark?: (messageId: string | number, chatId: string | number) => void;
4710
+ onMessagePin?: SmartGridOnMessagePin;
4711
+ onMessageMore?: (messageId: string | number, chatId: string | number) => void;
4712
+ onAttachFile?: (file: File) => void;
4713
+ onImageUpload?: (image: File) => void;
4714
+ onEmojiClick?: (emoji: string) => void;
4715
+ setPinnedMessages?: React.Dispatch<React.SetStateAction<SmartGridChatMessage[]>>;
4716
+ className?: string;
4717
+ showDateSeparators?: boolean;
4718
+ autoScroll?: boolean;
4719
+ onThreadClick?: (messageId: string | number, chatId: string | number) => void;
4720
+ messageConfig: SmartGridMessageChatConfig & {
4721
+ loadMessages?: (chatId: string | number, page: number) => Promise<SmartGridChatMessage[] | {
4722
+ messages: SmartGridChatMessage[];
4723
+ noMoreData: boolean;
4724
+ }>;
4725
+ messagesClearedTrigger?: number;
4726
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
4727
+ messageConfig?: SmartGridMessageConfig;
4728
+ highlightTrigger?: number | null;
4729
+ };
4730
+ inputChatConfig: SmartGridInputChatConfig & {
4731
+ inputConfig?: SmartGridInputConfig & {
4732
+ showQuickAction?: boolean;
4733
+ quickActionLabel?: string;
4734
+ };
4735
+ };
4736
+ chatHeaderConfig: SmartGridHeaderChatConfig;
4737
+ handleToast: (isOpen: boolean, message: string, variant: SmartGridToastVariant) => void;
4738
+ }
4739
+
4740
+ export declare interface SmartGridTableChatSidePanelProps {
4741
+ isOpen: boolean;
4742
+ handleClose: () => void;
4743
+ chatConfiguration: SmartGridChatConfiguration;
4744
+ }
4745
+
4746
+ export declare type SmartGridTableChatWrapper = {
4747
+ isChatOpen: boolean;
4748
+ handleChatClick: () => void;
4749
+ handleChatClose: () => void;
4750
+ chatConfiguration: SmartGridChatConfiguration;
4751
+ };
4752
+
3346
4753
  export declare type SmartGridTableComponentProps = SmartGridTableProps;
3347
4754
 
3348
4755
  export declare interface SmartGridTableContentDetailsProps {
@@ -3368,6 +4775,7 @@ export declare interface SmartGridTableContentDetailsProps {
3368
4775
  isLeftPinnedRowsAvailable?: boolean;
3369
4776
  columnScrollHandlerRef?: MutableRefObject<SmartGridScrollHandler | null>;
3370
4777
  isScrollingSynced?: MutableRefObject<boolean>;
4778
+ commentProps?: SmartGridCommentProps;
3371
4779
  }
3372
4780
 
3373
4781
  export declare interface SmartGridTableContentProps {
@@ -3425,6 +4833,15 @@ export declare interface SmartGridTableContentProps {
3425
4833
  downloadExcelHandler?: () => void;
3426
4834
  downloadCSVHandler?: () => void;
3427
4835
  pivotConfig?: SmartGridPivotConfig;
4836
+ isChatEnabled?: boolean;
4837
+ isCommentFeatureEnabled?: boolean;
4838
+ isChatOpen?: boolean;
4839
+ handleChatClick?: () => void;
4840
+ handleChatClose?: () => void;
4841
+ chatConfiguration?: SmartGridChatConfiguration;
4842
+ ChatComponent?: (props: SmartGridTableChatWrapper) => JSX.Element;
4843
+ CommentComponent?: FC<SmartGridCommentWrapperProps>;
4844
+ commentProps?: SmartGridCommentProps;
3428
4845
  }
3429
4846
 
3430
4847
  export declare interface SmartGridTableContentRendererProps {
@@ -3659,12 +5076,45 @@ export declare interface SmartGridTableProps extends SmartGridSaveViewCallbackRe
3659
5076
  * When `true` or undefined (default), normal loading behavior applies.
3660
5077
  */
3661
5078
  loadingData?: boolean;
5079
+ isChatEnabled?: boolean;
5080
+ isChatOpen?: boolean;
5081
+ handleChatClick?: () => void;
5082
+ handleChatClose?: () => void;
5083
+ chatConfiguration?: SmartGridChatConfiguration;
5084
+ isCommentFeatureEnabled?: boolean;
5085
+ ChatComponent?: (props: SmartGridTableChatWrapper) => JSX.Element;
5086
+ CommentComponent?: FC<SmartGridCommentWrapperProps>;
5087
+ commentProps?: SmartGridCommentProps;
3662
5088
  }
3663
5089
 
3664
5090
  export declare interface SmartGridTableRef {
3665
5091
  api: SmartGridAPI;
3666
5092
  }
3667
5093
 
5094
+ /**
5095
+ * SmartGridThreadDeleteState - State for thread deletion
5096
+ */
5097
+ export declare interface SmartGridThreadDeleteState {
5098
+ cellId: string;
5099
+ data: SmartGridComment[];
5100
+ }
5101
+
5102
+ export declare interface SmartGridThreeDotMenuOption {
5103
+ id: string;
5104
+ label: string;
5105
+ icon?: React.ReactNode;
5106
+ onClick?: () => void;
5107
+ }
5108
+
5109
+ export declare type SmartGridTipTapEditor = {
5110
+ isActive: (name: string, attrs?: Record<string, unknown>) => boolean;
5111
+ on: (event: string, handler: () => void) => void;
5112
+ off: (event: string, handler: () => void) => void;
5113
+ state: Record<string, unknown>;
5114
+ };
5115
+
5116
+ export declare type SmartGridToastVariant = "info" | "success" | "warning" | "error";
5117
+
3668
5118
  export declare interface SmartGridToggleRenderProps {
3669
5119
  render: (state: SmartGridToggleRenderState) => ReactNode;
3670
5120
  }
@@ -3675,6 +5125,16 @@ export declare interface SmartGridToggleRenderState {
3675
5125
  toggleMenu: () => void;
3676
5126
  }
3677
5127
 
5128
+ export declare interface SmartGridToolbarItem {
5129
+ icon: React.FC<React.SVGProps<SVGSVGElement>>;
5130
+ ariaLabel: string;
5131
+ command: string;
5132
+ }
5133
+
5134
+ export declare type SmartGridToolbarItemKey = "bold" | "italic" | "link" | "bulletList" | "orderedList" | "strike" | "highlight" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
5135
+
5136
+ export declare type SmartGridToolbarItems = Record<SmartGridToolbarItemKey, SmartGridToolbarItem>;
5137
+
3678
5138
  export declare interface SmartGridTooltipButton {
3679
5139
  label: string;
3680
5140
  type: "default" | "primary" | "secondary";
@@ -3682,6 +5142,7 @@ export declare interface SmartGridTooltipButton {
3682
5142
  }
3683
5143
 
3684
5144
  export declare interface SmartGridTooltipConfig {
5145
+ description?: string;
3685
5146
  title: string;
3686
5147
  targetRef: RefObject<HTMLElement>;
3687
5148
  varient?: SmartGridTooltipVariant;
@@ -3731,9 +5192,10 @@ export declare interface SmartGridTooltipProps extends SmartGridTooltipConfig {
3731
5192
  children: ReactNode;
3732
5193
  forceShowTooltip?: boolean;
3733
5194
  className?: string;
5195
+ description?: string;
3734
5196
  }
3735
5197
 
3736
- export declare type SmartGridTooltipVariant = "primary" | "secondary" | "tertiary";
5198
+ export declare type SmartGridTooltipVariant = "primary" | "secondary" | "tertiary" | "feature";
3737
5199
 
3738
5200
  export declare type SmartGridUpdateData = {
3739
5201
  data: SmartGridRowData;
@@ -3753,7 +5215,7 @@ declare interface SmartGridUpdatedPageSizeRef {
3753
5215
  current: number;
3754
5216
  }
3755
5217
 
3756
- export declare interface SmartGridUpdateRefParams extends SmartGridCallbackRefCurrent, SmartGridSaveViewCallbackRefCurrent {
5218
+ export declare interface SmartGridUpdateRefParams extends SmartGridCallbackRefCurrent, SmartGridSaveViewCallbackRefCurrent, SmartGridClickCallbackRefCurrent {
3757
5219
  downloadExcelHandler?: () => void;
3758
5220
  downloadCSVHandler?: () => void;
3759
5221
  copyToClipboardHandler?: () => void;
@@ -3779,6 +5241,7 @@ export declare interface SmartGridUpdateRefReturn {
3779
5241
  exportCallbackRef: MutableRefObject<SmartGridExportCallbackRefCurrent>;
3780
5242
  saveViewCallbackRef: MutableRefObject<SmartGridSaveViewCallbackRefCurrent>;
3781
5243
  saveViewOptionsRef: MutableRefObject<SmartGridSaveViewOptionsRefCurrent>;
5244
+ clickCallbackRef: MutableRefObject<SmartGridClickCallbackRefCurrent>;
3782
5245
  }
3783
5246
 
3784
5247
  export declare type SmartGridValueFormatterConfig = {