ia-table 0.14.7 → 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/chat.d.ts ADDED
@@ -0,0 +1,3373 @@
1
+ import { ChangeEvent } from 'react';
2
+ import { CSSProperties } from 'react';
3
+ import { default as default_2 } from 'react';
4
+ import { Dispatch } from 'react';
5
+ import { Editor } from '@tiptap/react';
6
+ import { JSX as JSX_2 } from 'react/jsx-runtime';
7
+ import { MutableRefObject } from 'react';
8
+ import { RefObject } from 'react';
9
+ import { SetStateAction } from 'react';
10
+
11
+ declare const ACTION_TYPES: {
12
+ readonly SET_DATA: "SET_DATA";
13
+ readonly SET_FILTERED_DATA: "SET_FILTERED_DATA";
14
+ readonly SET_COLUMNS: "SET_COLUMNS";
15
+ readonly SET_SORT: "SET_SORT";
16
+ readonly SET_PAGE: "SET_PAGE";
17
+ readonly SET_PAGE_SIZE: "SET_PAGE_SIZE";
18
+ readonly SET_SELECTED_ROWS: "SET_SELECTED_ROWS";
19
+ readonly SET_COLUMN_FILTER: "SET_COLUMN_FILTER";
20
+ readonly REMOVE_COLUMN_FILTER: "REMOVE_COLUMN_FILTER";
21
+ readonly APPLY_FILTERS: "APPLY_FILTERS";
22
+ readonly TOGGLE_GROUP_EXPANSION: "TOGGLE_GROUP_EXPANSION";
23
+ readonly SET_FIELD_KEYS: "SET_FIELD_KEYS";
24
+ readonly UPDATE_ROW_DATA: "UPDATE_ROW_DATA";
25
+ readonly SELECTION_CHANGED_HANDLED: "SELECTION_CHANGED_HANDLED";
26
+ readonly FREEZE_COLUMN: "FREEZE_COLUMN";
27
+ readonly UNFREEZE_COLUMN: "UNFREEZE_COLUMN";
28
+ readonly PIN_COLUMN_RIGHT: "PIN_COLUMN_RIGHT";
29
+ readonly UNPIN_COLUMN_RIGHT: "UNPIN_COLUMN_RIGHT";
30
+ readonly SET_COLUMN_WIDTH: "SET_COLUMN_WIDTH";
31
+ readonly SET_COLUMNS_WIDTH: "SET_COLUMNS_WIDTH";
32
+ readonly SHOW_NOTIFICATION: "SHOW_NOTIFICATION";
33
+ readonly HIDE_NOTIFICATION: "HIDE_NOTIFICATION";
34
+ readonly AUTOSIZE_COLUMNS_REQUESTED: "AUTOSIZE_COLUMNS_REQUESTED";
35
+ readonly TOGGLE_FREEZE_COLUMN: "TOGGLE_FREEZE_COLUMN";
36
+ readonly REORDER_COLUMNS: "REORDER_COLUMNS";
37
+ readonly SET_PREV_ACTION: "SET_PREV_ACTION";
38
+ readonly SET_CHECK_CONFIGURATION: "SET_CHECK_CONFIGURATION";
39
+ readonly SET_IS_SELECT_ALL_RECORDS: "SET_IS_SELECT_ALL_RECORDS";
40
+ readonly BATCH_UPDATE: "BATCH_UPDATE";
41
+ readonly UPDATE_ROW_DATA_OBJECT: "UPDATE_ROW_DATA_OBJECT";
42
+ readonly TOGGLE_COLUMN_VISIBILITY: "TOGGLE_COLUMN_VISIBILITY";
43
+ readonly TOGGLE_MASTER_DETAIL: "TOGGLE_MASTER_DETAIL";
44
+ readonly SET_DETAIL_RENDERER: "SET_DETAIL_RENDERER";
45
+ readonly SET_MASTER_DETAIL_CONFIG: "SET_MASTER_DETAIL_CONFIG";
46
+ readonly ADD_EVENT_LISTENER: "ADD_EVENT_LISTENER";
47
+ readonly REMOVE_EVENT_LISTENER: "REMOVE_EVENT_LISTENER";
48
+ readonly TOGGLE_COLUMN_GROUP: "TOGGLE_COLUMN_GROUP";
49
+ readonly SET_EXPANDED_COLUMN_GROUPS: "SET_EXPANDED_COLUMN_GROUPS";
50
+ readonly ENABLE_ROW_SPAN: "ENABLE_ROW_SPAN";
51
+ readonly SET_ROW_SPAN_COLUMN: "SET_ROW_SPAN_COLUMN";
52
+ readonly MOVE_ROW: "MOVE_ROW";
53
+ readonly PREVIEW_ROW_MOVE: "PREVIEW_ROW_MOVE";
54
+ readonly RESET_ROW_PREVIEW: "RESET_ROW_PREVIEW";
55
+ readonly SET_PINNED_TOP_ROWS: "SET_PINNED_TOP_ROWS";
56
+ readonly SET_PINNED_BOTTOM_ROWS: "SET_PINNED_BOTTOM_ROWS";
57
+ readonly TOGGLE_ROW_GROUP: "TOGGLE_ROW_GROUP";
58
+ readonly LOAD_ROW_GROUP_DATA: "LOAD_ROW_GROUP_DATA";
59
+ readonly SET_ROW_GROUP_DATA: "SET_ROW_GROUP_DATA";
60
+ readonly SET_ROW_GROUP_LOADING: "SET_ROW_GROUP_LOADING";
61
+ readonly SET_ROW_GROUP_PAGINATION: "SET_ROW_GROUP_PAGINATION";
62
+ readonly CLEAR_ROW_GROUP_CACHE: "CLEAR_ROW_GROUP_CACHE";
63
+ readonly REFRESH_ROW_GROUP_DATA: "REFRESH_ROW_GROUP_DATA";
64
+ readonly SET_API: "SET_API";
65
+ readonly SET_COLUMN_MAP: "SET_COLUMN_MAP";
66
+ readonly SET_NUMBER_FORMAT: "SET_NUMBER_FORMAT";
67
+ readonly SET_HEADER_ROW_HEIGHT: "SET_HEADER_ROW_HEIGHT";
68
+ readonly CLEANUP_TABLE_RESOURCES: "CLEANUP_TABLE_RESOURCES";
69
+ readonly ADD_TABLE_INSTANCE: "ADD_TABLE_INSTANCE";
70
+ readonly ROW_DRAG_MANAGED: "ROW_DRAG_MANAGED";
71
+ readonly INFINITE_SCROLL: "INFINITE_SCROLL";
72
+ readonly SET_INITIAL_EXPANDED_COLUMN_GROUPS: "SET_INITIAL_EXPANDED_COLUMN_GROUPS";
73
+ readonly SET_SERVER_SIDE: "SET_SERVER_SIDE";
74
+ readonly SET_TABLE_API: "SET_TABLE_API";
75
+ readonly EXPAND_COLLAPSE_ALL_COLUMNS: "EXPAND_COLLAPSE_ALL_COLUMNS";
76
+ readonly SET_SMART_GRID_MENU_OPTIONS: "SET_SMART_GRID_MENU_OPTIONS";
77
+ readonly ROW_GROUP_CACHE_ENABLE: "ROW_GROUP_CACHE_ENABLE";
78
+ readonly DETAIL_RENDERER_TABLE: "DETAIL_RENDERER_TABLE";
79
+ readonly IS_SAVE_VIEW_ENABLED: "IS_SAVE_VIEW_ENABLED";
80
+ readonly SAVE_VIEW_CALLBACKS: "SAVE_VIEW_CALLBACKS";
81
+ readonly SET_ROW_HEIGHT: "SET_ROW_HEIGHT";
82
+ readonly EXPAND_COLLAPSE_ALL_ROWS: "EXPAND_COLLAPSE_ALL_ROWS";
83
+ readonly SET_LOADING: "SET_LOADING";
84
+ readonly SET_REFS: "SET_REFS";
85
+ readonly SET_TABLE_ID: "SET_TABLE_ID";
86
+ readonly SET_IS_SINGLE_SELECT: "SET_IS_SINGLE_SELECT";
87
+ readonly SET_DEFAULT_COL_DEF: "SET_DEFAULT_COL_DEF";
88
+ readonly SET_SELECTABLE: "SET_SELECTABLE";
89
+ readonly SET_DISABLE_SELECT_ALL_RECORDS_OPTION: "SET_DISABLE_SELECT_ALL_RECORDS_OPTION";
90
+ readonly SET_COLUMN_BUFFER_SIZE: "SET_COLUMN_BUFFER_SIZE";
91
+ readonly SET_LAZY_LOAD_CELL_RENDERER: "SET_LAZY_LOAD_CELL_RENDERER";
92
+ readonly SET_HAS_SPLIT_RENDERER: "SET_HAS_SPLIT_RENDERER";
93
+ readonly SET_HAS_SPLIT_RENDERER_KEYS: "SET_HAS_SPLIT_RENDERER_KEYS";
94
+ readonly SET_REMOVE_SELECTION_ON_OPERATION: "SET_REMOVE_SELECTION_ON_OPERATION";
95
+ readonly SET_REMOVE_CHECK_CONFIGURATION_ON_OPERATION: "SET_REMOVE_CHECK_CONFIGURATION_ON_OPERATION";
96
+ readonly SET_TOTAL_COLUMNS_COUNT: "SET_TOTAL_COLUMNS_COUNT";
97
+ readonly SET_ALL_CHILD_ROWS_EXPANDED: "SET_ALL_CHILD_ROWS_EXPANDED";
98
+ readonly EXPAND_ROW_WITH_NESTED_CHILDREN: "EXPAND_ROW_WITH_NESTED_CHILDREN";
99
+ readonly SET_CUSTOM_CALLBACKS: "SET_CUSTOM_CALLBACKS";
100
+ readonly SET_COMMENT_CONTEXT_REF: "SET_COMMENT_CONTEXT_REF";
101
+ readonly SET_CHAT_ENABLED: "SET_CHAT_ENABLED";
102
+ readonly SET_COMMENT_ENABLED: "SET_COMMENT_ENABLED";
103
+ };
104
+
105
+ export declare const CommentWrapper: React.FC<SmartGridCommentWrapperProps>;
106
+
107
+ declare class InfiniteBlock {
108
+ static STATE_WAITING_TO_LOAD: string;
109
+ static STATE_LOADING: string;
110
+ static STATE_LOADED: string;
111
+ static STATE_FAILED: string;
112
+ static MAX_EMPTY_BLOCKS_TO_KEEP: number;
113
+ id: number;
114
+ parentCache: SmartGridInfiniteCacheInterface;
115
+ parent: SmartGridInfiniteCacheInterface;
116
+ params: SmartGridBlockParams;
117
+ state: string;
118
+ version: number;
119
+ lastAccessed: number;
120
+ rows: Record<number, SmartGridRowData>;
121
+ infiniteCache: SmartGridInfiniteCacheInterface;
122
+ startRow: number;
123
+ endRow: number;
124
+ rowNodes: SmartGridBlockRowNode[];
125
+ loadStartedAt?: number;
126
+ _targetPage?: number;
127
+ _responseMetadata?: SmartGridResponseMetadata;
128
+ _processingInProgress?: boolean;
129
+ _actualRowCount?: number;
130
+ _inactiveForPageTransition?: boolean;
131
+ constructor(id: number, parentCache: SmartGridInfiniteCacheInterface, params: SmartGridBlockParams);
132
+ /**
133
+ * Create empty row nodes
134
+ */
135
+ createRowNodes(): void;
136
+ /**
137
+ * Gets the block ID
138
+ */
139
+ getId(): number;
140
+ /**
141
+ * Gets the current state of the block
142
+ */
143
+ getState(): string;
144
+ /**
145
+ * Gets the start row index of this block
146
+ */
147
+ getStartRow(): number;
148
+ /**
149
+ * Gets the end row index of this block
150
+ */
151
+ getEndRow(): number;
152
+ /**
153
+ * Gets the current version of this block
154
+ * Used to ignore responses from outdated requests
155
+ */
156
+ getVersion(): number;
157
+ /**
158
+ * Gets the last time this block was accessed
159
+ * Used for LRU cache management
160
+ */
161
+ getLastAccessed(): number;
162
+ /**
163
+ * Gets a row node at the specified index
164
+ * Updates the last accessed time for LRU cache management
165
+ */
166
+ getRow(rowIndex: number, dontTouchLastAccessed?: boolean): SmartGridBlockRowNode | null;
167
+ /**
168
+ * Load data from datasource
169
+ */
170
+ loadFromDatasource(): void;
171
+ /**
172
+ * Process the response from the server
173
+ */
174
+ processServerResponse(rows: SmartGridRowData[], lastRow?: number, lastRowIndexKnown?: boolean): void;
175
+ /**
176
+ * Initialize block from server response
177
+ */
178
+ initBlockFromServerResponse(rows: SmartGridRowData[]): void;
179
+ /**
180
+ * Sets data and ID for a row node
181
+ */
182
+ setDataAndId(rowNode: SmartGridBlockRowNode, data: SmartGridRowData, rowIndex: number): void;
183
+ /**
184
+ * Set state to waiting to load
185
+ */
186
+ setStateWaitingToLoad(): void;
187
+ /**
188
+ * Iterates through each row node
189
+ */
190
+ forEachNode(callback: (rowNode: SmartGridBlockRowNode, index: number) => void): void;
191
+ /**
192
+ * Returns block state as JSON for debugging
193
+ */
194
+ getBlockStateJson(): SmartGridBlockStateJson;
195
+ /**
196
+ * Clean up row nodes before the block is destroyed
197
+ */
198
+ destroyRowNodes(): void;
199
+ /**
200
+ * Determines the index of the last row that has data
201
+ */
202
+ getLastRow(): number;
203
+ isBlockBeyondEndOfScope(): boolean;
204
+ getRowNode(rowIndex: number): SmartGridBlockRowNode | null;
205
+ pageLoaded(version: number): void;
206
+ loadFailed(version?: number): void;
207
+ getRowNodes(): SmartGridBlockRowNode[];
208
+ /**
209
+ * Gets the number of rows in this block that have data
210
+ */
211
+ getRowCount(): number;
212
+ }
213
+
214
+ declare class InfiniteCache {
215
+ static PURGE_STRATEGY_LRU: string;
216
+ static PURGE_STRATEGY_FURTHEST_FROM_VIEWPORT: string;
217
+ static PURGE_STRATEGY_MEMORY_OPTIMIZED: string;
218
+ params: SmartGridCacheParams;
219
+ blocks: Record<number, InfiniteBlock>;
220
+ blockCount: number;
221
+ rowCount: number;
222
+ lastRowIndexKnown: boolean;
223
+ eventListeners: Record<string, Array<(event: SmartGridCacheEvent) => void>>;
224
+ lastRequestedPage: number;
225
+ analytics: SmartGridCacheAnalytics_2;
226
+ rowsMaxIndex?: number;
227
+ _currentRequestedPage?: number;
228
+ _blockCreationQueue?: Set<number>;
229
+ constructor(params: Partial<SmartGridCacheParams>);
230
+ /**
231
+ * Gets a row at a specific index, creating blocks as needed
232
+ */
233
+ getRow(rowIndex: number, dontCreateBlock?: boolean): SmartGridBlockRowNode | undefined;
234
+ /**
235
+ * Creates a new block to manage a range of rows
236
+ */
237
+ createBlock(blockId: number): InfiniteBlock;
238
+ /**
239
+ * Get row indexes for a specific block
240
+ */
241
+ getRowIndexesForBlock(blockId: number): number[];
242
+ /**
243
+ * Notify about block state changes
244
+ */
245
+ notifyBlockStateChanged(blockId: number, state: string, rowIndexes: number[]): void;
246
+ /**
247
+ * Gets a block by ID
248
+ */
249
+ getBlock(blockId: number): InfiniteBlock | undefined;
250
+ /**
251
+ * Gets the current row count
252
+ */
253
+ getRowCount(): number;
254
+ /**
255
+ * Checks if total row count is known or virtual
256
+ */
257
+ isLastRowIndexKnown(): boolean;
258
+ /**
259
+ * Sets the row count and updates lastRowIndexKnown flag
260
+ */
261
+ setRowCount(rowCount: number, lastRowIndexKnown?: boolean): void;
262
+ /**
263
+ * Count the total number of rows with data across all blocks in the cache
264
+ */
265
+ getTotalCachedRowCount(): {
266
+ totalRows: number;
267
+ rowsWithData: number;
268
+ blockCount: number;
269
+ blocksWithData: Array<{
270
+ blockId: number;
271
+ rowCount: number;
272
+ }>;
273
+ };
274
+ /**
275
+ * Callback for when a block finishes loading
276
+ */
277
+ pageLoaded(block: InfiniteBlock, lastRow?: number): void;
278
+ /**
279
+ * Print all cached data from all blocks
280
+ * Shows a complete snapshot of what's actually in the cache
281
+ */
282
+ printAllCachedData(): void;
283
+ /**
284
+ * Check and update row count based on loaded block data
285
+ */
286
+ checkRowCount(block: InfiniteBlock, lastRow: number | boolean | null): void;
287
+ /**
288
+ * Gets all blocks in the cache, sorted by ID
289
+ */
290
+ getBlocksInOrder(): InfiniteBlock[];
291
+ /**
292
+ * Removes expired blocks from the cache using configured strategy
293
+ */
294
+ purgeBlocksIfNeeded(blockToExclude: InfiniteBlock): void;
295
+ /**
296
+ * Sorts blocks based on the specified strategy
297
+ */
298
+ sortBlocksByStrategy(blocks: InfiniteBlock[], strategy: string): InfiniteBlock[];
299
+ /**
300
+ * Compares two blocks based on the specified strategy
301
+ * Returns a negative number if a should be removed before b
302
+ */
303
+ compareBlocksByStrategy(a: InfiniteBlock, b: InfiniteBlock, strategy: string): number;
304
+ /**
305
+ * Sort blocks by distance from viewport (for furthest-from-viewport strategy)
306
+ */
307
+ sortBlocksByDistanceFromViewport(blocks: InfiniteBlock[]): void;
308
+ /**
309
+ * Sort blocks using the memory-optimized strategy
310
+ * This uses a combined heuristic considering:
311
+ * 1. Block access recency
312
+ * 2. Distance from viewport
313
+ * 3. Block data size (if available)
314
+ */
315
+ sortBlocksByMemoryOptimized(blocks: InfiniteBlock[]): void;
316
+ /**
317
+ * Checks if a block is currently in the visible viewport
318
+ */
319
+ isBlockCurrentlyDisplayed(block: InfiniteBlock): boolean;
320
+ /**
321
+ * Removes a block from the cache and destroys it
322
+ */
323
+ removeBlockFromCache(blockToRemove: InfiniteBlock): void;
324
+ /**
325
+ * Gets all row nodes in a range (used for selection)
326
+ */
327
+ getRowNodesInRange(firstIndex: number, lastIndex: number): SmartGridBlockRowNode[];
328
+ /**
329
+ * Iterates over all row nodes in the cache
330
+ */
331
+ forEachNodeDeep(callback: (rowNode: SmartGridBlockRowNode, index: number) => void): void;
332
+ /**
333
+ * Purges the entire cache
334
+ */
335
+ purgeCache(options?: Record<string, unknown>): void;
336
+ /**
337
+ * Refreshes the cache without purging it completely
338
+ */
339
+ refreshCache(): void;
340
+ /**
341
+ * Refreshes the cache partially, preserving specified fields
342
+ */
343
+ refreshCachePartial(preserveFields?: string[]): void;
344
+ /**
345
+ * Sets view port range
346
+ */
347
+ setViewportRange(startRow: number, endRow: number): void;
348
+ /**
349
+ * Returns all data from all blocks as a flattened array
350
+ */
351
+ /**
352
+ * Ensures blocks are loaded for the specified range
353
+ */
354
+ ensureBlocksLoadedForRange(startRow: number, endRow: number): void;
355
+ /**
356
+ * Adds an event listener
357
+ */
358
+ addEventListener(type: string, listener: (event: SmartGridCacheEvent) => void): void;
359
+ /**
360
+ * Removes an event listener
361
+ */
362
+ removeEventListener(type: string, listener: (event: SmartGridCacheEvent) => void): void;
363
+ /**
364
+ * Dispatches an event to all listeners
365
+ */
366
+ dispatchEvent(event: SmartGridCacheEvent): void;
367
+ /**
368
+ * Returns cache state for debugging
369
+ */
370
+ getCacheState(): SmartGridCacheState;
371
+ /**
372
+ * Returns analytics data
373
+ */
374
+ getAnalytics(): SmartGridCacheAnalytics_2 & {
375
+ uptime: number;
376
+ hitRatio: number;
377
+ avgLoadTime: number;
378
+ hitsPerSecond: number;
379
+ missesPerSecond: number;
380
+ blocksPurgedPerSecond: number;
381
+ bytesPerSecond: number;
382
+ };
383
+ /**
384
+ * Resets analytics data
385
+ */
386
+ resetAnalytics(): void;
387
+ /**
388
+ * Save cache state to persistence if enabled
389
+ */
390
+ persistCacheIfEnabled(): void;
391
+ /**
392
+ * Restore cache from persistence
393
+ */
394
+ restoreFromPersistence(): void;
395
+ /**
396
+ * Clear persisted cache state
397
+ */
398
+ clearPersistence(): void;
399
+ /**
400
+ * Sets the purge strategy
401
+ */
402
+ setPurgeStrategy(strategy: string): void;
403
+ isBlockInCreationQueue(blockId: number): boolean;
404
+ /**
405
+ * Logs a summary of the current cache state
406
+ * Can be called from outside to check the cache status at any time
407
+ */
408
+ logCacheSummary(): {
409
+ totalRows: number;
410
+ rowsWithData: number;
411
+ blockCount: number;
412
+ blocksWithData: Array<{
413
+ blockId: number;
414
+ rowCount: number;
415
+ }>;
416
+ };
417
+ isBlockCached(blockId: number): boolean;
418
+ getBlockData(blockId: number): (SmartGridRowData | null)[] | null;
419
+ getAllCachedData(): SmartGridRowData[];
420
+ updatePageData(pageNo: number, updatedData: SmartGridRowData[], notifyChanges?: boolean, options?: Record<string, unknown>): {
421
+ success: boolean;
422
+ pageNo: number;
423
+ updatedRows: number;
424
+ errors: string[];
425
+ };
426
+ updateBlockData(blockId: number, newData: SmartGridRowData[], notifyChanges?: boolean): {
427
+ success: boolean;
428
+ blockId: number;
429
+ updatedRows: number;
430
+ errors: string[];
431
+ };
432
+ updateWholeData(wholeData: SmartGridRowData[], pageSize: number): SmartGridUpdateDataReturnType;
433
+ }
434
+
435
+ export declare function isChatMessage(item: SmartGridGroupedMessageItem): item is SmartGridChatMessage;
436
+
437
+ export declare function isDateSeparator(item: SmartGridGroupedMessageItem): item is SmartGridDateSeparatorItem;
438
+
439
+ declare interface RowGroupParams {
440
+ page: number;
441
+ pageSize: number;
442
+ groupId?: string;
443
+ noDataUpdate?: boolean;
444
+ }
445
+
446
+ export declare interface SmartGridAddChatContainerProps {
447
+ setShowAddChat: Dispatch<SetStateAction<boolean>>;
448
+ handleChatName: NonNullable<SmartGridLeftPanelConfig["handleChatName"]>;
449
+ selectedChannelInfo?: SmartGridChannel | null;
450
+ handleToast: SmartGridHandleToastFn;
451
+ setIsCreateNewChatOpen: Dispatch<SetStateAction<boolean>>;
452
+ }
453
+
454
+ declare interface SmartGridAPI extends SmartGridPaginationAPI, SmartGridApiExtra {
455
+ getInfiniteRowModel: () => SmartGridInfiniteRowModel | null;
456
+ getInfiniteCache: () => SmartGridInfiniteCache | null;
457
+ getModel: () => SmartGridTableModel;
458
+ onCellValueChanged: (params: SmartGridCellValueChangedParams) => void;
459
+ getPrevAction: () => string;
460
+ setPrevAction: (value: string) => void;
461
+ getCheckConfiguration: () => SmartGridCheckConfiguration[];
462
+ setCheckConfiguration: (config: SmartGridCheckConfiguration[]) => void;
463
+ addToCheckConfiguration: (item: SmartGridCheckConfiguration) => void;
464
+ getIsSelectAllRecords: () => boolean;
465
+ setIsSelectAllRecords: (value: boolean) => void;
466
+ getSelectedRows: () => SmartGridRowData[];
467
+ getSelectedRowsID: () => (string | number)[];
468
+ setSelectedRows: (rowIds: (string | number)[]) => void;
469
+ clearSelection: () => void;
470
+ selectAll: () => void;
471
+ getCache: () => SmartGridInfiniteCache | null;
472
+ getCacheState: () => SmartGridCacheState_2 | null;
473
+ getInfiniteCacheInstance: () => SmartGridInfiniteCache | null;
474
+ refreshServerSideStore: (options?: SmartGridRefreshOptions) => void;
475
+ getCachedBlockData: () => SmartGridCachedBlockData;
476
+ logCacheSummary: () => void | null;
477
+ getCachedRowById: (id: string | number) => SmartGridRowData | null;
478
+ getRowNode: (key: string | number) => Partial<SmartGridRowNode> | null;
479
+ setVisibleRange: (startRow: number, endRow: number) => void;
480
+ refreshCache: (options?: SmartGridRefreshOptions) => boolean;
481
+ deselectAll: () => void;
482
+ getRenderedNodes: () => SmartGridDisplayedRowNode[];
483
+ gridOptionsWrapper: {
484
+ gridOptions: SmartGridOptions;
485
+ };
486
+ getDisplayedRowAtIndex: (index: number, wholeData?: SmartGridRowData[], api?: Partial<SmartGridAPI>) => SmartGridDisplayedRowAtIndex | null;
487
+ getTableWidth: () => number;
488
+ sizeColumnsToFit: () => void;
489
+ setRowData: (newData: SmartGridRowData[]) => boolean | void;
490
+ forEachNode: (callback: (node: SmartGridRowNode, index: number) => void | Promise<void>) => Promise<void>;
491
+ getColumnDefs: () => SmartGridColumnDefinition[];
492
+ getAllColumns: () => SmartGridColumnDefinition[];
493
+ setColumnDefs: (newColumns: SmartGridColumnDefinition) => void;
494
+ addEventListener: (event: string, listener: Function, once?: boolean) => void;
495
+ removeEventListener: (event: string, listener: Function) => void;
496
+ getPinnedTopRow: () => SmartGridRowData[] | null;
497
+ setPinnedTopRowData: (rows: SmartGridRowData[]) => void;
498
+ getPinnedBottomRow: () => SmartGridRowData[] | null;
499
+ setPinnedBottomRowData: (rows: SmartGridRowData[]) => void;
500
+ getRowData: (params: SmartGridGetRowDataParams, columnName: string) => string | number | boolean;
501
+ tableId: string;
502
+ getFocusedCell: () => SmartGridFocusedCell | null;
503
+ getSelectedCells: () => SmartGridSelectedCell[];
504
+ getAllDisplayedColumns: () => SmartGridDisplayedColumn[];
505
+ getDisplayedRowCount: () => number;
506
+ setFocusedCell: (rowIndex: number, colKey: SmartGridColumnDefinition | string | number) => boolean;
507
+ ensureColumnVisible: (colKey: SmartGridColumnDefinition | string | number) => boolean;
508
+ getColumnByField: (fieldName: string) => SmartGridColumnDefinition | null;
509
+ getTableInstance: () => SmartGridTableInstance | undefined;
510
+ getFilterModel: () => SmartGridFilterModel | Record<string, SmartGridFilterModel[]>;
511
+ setFilterModel: (field: string, rules: SmartGridFilterModel) => void;
512
+ getTableDispatcher: () => (action: SmartGridDisptach) => void;
513
+ getTableStateContext: () => SmartGridStateContext;
514
+ showNotification: (notification: SmartGridNotification) => void;
515
+ hideNotification: () => void;
516
+ applySearch: () => void;
517
+ getCurrentPageData: () => SmartGridRowData[];
518
+ getWholeTableData: () => SmartGridRowData[];
519
+ refreshCells: (params?: SmartGridRefreshCellsParams) => void;
520
+ flashCells: (params?: SmartGridFlashCellsParams) => void;
521
+ redrawRows: (params?: SmartGridRedrawRowsParams) => void;
522
+ applyTransaction: (transaction: SmartGridRowDataTransaction) => SmartGridRowNodeTransaction;
523
+ getSelectedNodes: () => SmartGridRowNode[];
524
+ refreshClientSideRowModel: () => void;
525
+ resetRecentSearchChanges: () => void;
526
+ onFilterChanged: () => void;
527
+ onRowDataChanged?: (params: any) => void;
528
+ getRowGroupState?: () => SmartGridRowGroupState;
529
+ setRowGroupLoading?: (groupId: string, isLoading: boolean) => void;
530
+ setRowGroupPagination?: (groupId: string, pagination: SmartGridRowGroupStatePagination) => void;
531
+ setRowGroupData?: (groupId: string, data: SmartGridRowData[], append?: boolean) => void;
532
+ rowRenderer?: {
533
+ firstRenderedRow: number;
534
+ lastRenderedRow: number;
535
+ setRenderedRange: (start: number, end: number) => void;
536
+ };
537
+ columnApi?: SmartGridAPI;
538
+ dispatchEvent?: (eventType: string, eventData: Record<string, unknown>) => void;
539
+ toggleRowGroup?: (groupId: string, rowIndex: number, { fieldName, value }: {
540
+ fieldName: string;
541
+ value: unknown;
542
+ }) => void;
543
+ setServerSideDataSource: (dataSource: SmartGridServerSideDataSource, resetCache?: boolean) => SmartGridWrappedDataSource | null;
544
+ updateSmartGridTableData: (wholeData: SmartGridRowData[]) => void;
545
+ downloadSmartGridExcel: (fileName?: string, visibleOnly?: boolean) => void;
546
+ downloadSmartGridCSV: (fileName?: string, visibleOnly?: boolean) => void;
547
+ }
548
+
549
+ declare type SmartGridApiExtra = {
550
+ [key: string]: unknown;
551
+ };
552
+
553
+ export declare interface SmartGridAvatarGroupProps {
554
+ avatars?: SmartGridAvatarUser[];
555
+ maxAvatars?: number;
556
+ size?: SmartGridAvatarSize;
557
+ }
558
+
559
+ export declare type SmartGridAvatarSize = "sm" | "md" | "lg";
560
+
561
+ export declare interface SmartGridAvatarUser {
562
+ id?: string | number;
563
+ url?: string;
564
+ label?: string;
565
+ }
566
+
567
+ declare interface SmartGridBaseColumnDefinition {
568
+ field?: string;
569
+ groupId?: string;
570
+ headerName?: string;
571
+ column_name?: string;
572
+ label?: string;
573
+ width?: number;
574
+ minWidth?: number;
575
+ maxWidth?: number;
576
+ hide?: boolean;
577
+ hidden?: boolean;
578
+ pinned?: SmartGridFrozenState;
579
+ is_frozen?: boolean;
580
+ children?: SmartGridColumnDefinition[];
581
+ parent_id?: (string | number)[];
582
+ type?: string;
583
+ cellDataType?: string;
584
+ valueFormatter?: ((params: SmartGridValueFormatterParams) => string) | SmartGridValueFormatterConfig | undefined;
585
+ valueGetter?: (params: SmartGridValueGetterParams) => unknown;
586
+ leftTotalWidth?: number;
587
+ originalWidth?: number;
588
+ defaultWidth?: number;
589
+ isAutoWidth?: boolean;
590
+ filterable?: boolean;
591
+ isSortable?: boolean;
592
+ is_sortable?: boolean;
593
+ resizable?: boolean;
594
+ align?: "left" | "center" | "right";
595
+ cellRenderer?: string | ((params: SmartGridCellRenderer) => JSX.Element);
596
+ cellRendererParams?: SmartGridCellRendererParams;
597
+ cellClassName?: string;
598
+ cellStyle?: {
599
+ textAlign?: "left" | "center" | "right";
600
+ [key: string]: unknown;
601
+ };
602
+ autoHeight?: boolean;
603
+ wrapHeaderText?: boolean;
604
+ editable?: boolean;
605
+ is_editable?: boolean;
606
+ is_disabled?: boolean;
607
+ is_searchable?: boolean;
608
+ isSearchable?: boolean;
609
+ advanceSearchEnabled?: boolean;
610
+ sortable?: boolean;
611
+ rowGroup?: boolean;
612
+ enableRowGroup?: boolean;
613
+ rowGroupIndex?: number;
614
+ aggFunc?: string;
615
+ columnGroupShow?: "open" | "closed" | undefined | null;
616
+ originalIndex?: number;
617
+ parentColumns?: string[];
618
+ hasChildren?: boolean;
619
+ hasAnyFrozenChildren?: boolean;
620
+ hasAnyRightPinnedChildren?: boolean;
621
+ isChildWithoutParent?: boolean;
622
+ colorClass?: string;
623
+ isLeaf?: boolean;
624
+ isStandalone?: boolean;
625
+ isWithEmptyHeaderName?: boolean;
626
+ isParentWithChildEmptyHeaderName?: boolean;
627
+ path?: string[];
628
+ pathIdentifier?: string;
629
+ parentField?: string | null;
630
+ value?: string | number;
631
+ dimension_type?: string;
632
+ originalFields?: string[];
633
+ colId?: string;
634
+ colSpan?: number;
635
+ rowSpan?: number;
636
+ comparator?: (valueA: unknown, valueB: unknown, nodeA: SmartGridRowData, nodeB: SmartGridRowData, sortModel: SmartGridSortModel | SmartGridSortModel[]) => number;
637
+ headerTooltip?: string;
638
+ filter?: string | boolean;
639
+ filterParams?: {
640
+ filterOptions?: string[];
641
+ textCustomComparator?: (filter: string, value: unknown, filterText: string) => boolean;
642
+ numberCustomComparator?: (filter: number, value: unknown) => boolean;
643
+ dateCustomComparator?: (filterLocalDateAtMidnight: Date, cellValue: string) => number;
644
+ comparator?: (filterValue: unknown, cellValue: unknown) => boolean;
645
+ [key: string]: unknown;
646
+ };
647
+ order_of_display?: number;
648
+ is_hidden?: boolean;
649
+ formatter?: string | null;
650
+ accessor?: string;
651
+ id?: string;
652
+ required?: boolean;
653
+ sub_headers?: SmartGridColumnDefinition[];
654
+ extra?: {
655
+ width?: number;
656
+ is_grouping_key?: boolean;
657
+ is_disabled?: boolean;
658
+ isDisabled?: boolean;
659
+ columnGroupShow?: "open" | "closed";
660
+ is_multi?: boolean;
661
+ options_column?: string;
662
+ aggregation_func?: SmartGridSelectOption[];
663
+ enableCommaSeparated?: boolean;
664
+ [key: string]: unknown;
665
+ };
666
+ headerComponent?: default_2.FC<SmartGridHeaderStyleParams>;
667
+ headerStyle?: (params: SmartGridHeaderStyleParams) => CSSProperties;
668
+ tooltipValueGetter?: (params: SmartGridTooltipGetterParams) => string;
669
+ cellRendererLazyType?: string;
670
+ originalPath?: string[] | null;
671
+ isReorderedColumn?: boolean | null;
672
+ processCellForClipboard?: (params: SmartGridCellRendererParams) => string;
673
+ pivotAggregation?: "sum" | "count" | "avg" | "min" | "max";
674
+ pivotFilterValue?: string;
675
+ pivotFilterMode?: "value" | "condition";
676
+ pivotFilterCondition?: string;
677
+ [key: string]: unknown;
678
+ }
679
+
680
+ /** Block context */
681
+ declare interface SmartGridBlockContext {
682
+ updateData?: (rows: SmartGridRowData[], blockId: number, metadata?: SmartGridResponseMetadata) => void;
683
+ tableContextRef?: {
684
+ current?: {
685
+ state?: {
686
+ expandedChildRows?: Record<string, {
687
+ childRowsCount: number;
688
+ }>;
689
+ };
690
+ };
691
+ };
692
+ infiniteCache?: SmartGridInfiniteCacheInterface;
693
+ [key: string]: unknown;
694
+ }
695
+
696
+ /** Datasource interface */
697
+ declare interface SmartGridBlockDatasource {
698
+ getRows: (params: SmartGridDatasourceGetRowsParams) => void;
699
+ }
700
+
701
+ /** Block params */
702
+ declare interface SmartGridBlockParams {
703
+ updatedPageSizeRef: SmartGridPageSizeRef_2;
704
+ pageSize?: number;
705
+ lastAccessedSequence: SmartGridLastAccessedSequence_2;
706
+ datasource?: SmartGridBlockDatasource;
707
+ sortModel?: SmartGridSortModel;
708
+ filterModel?: SmartGridFilterModel;
709
+ context?: SmartGridBlockContext;
710
+ loadSequentially?: boolean;
711
+ _directPaginationRequest?: boolean;
712
+ isPaginationMode?: boolean;
713
+ _targetPage?: number;
714
+ tableId: string;
715
+ }
716
+
717
+ /** Row node in a block */
718
+ declare interface SmartGridBlockRowNode {
719
+ id: number;
720
+ data: SmartGridRowData | null;
721
+ rowIndex: number;
722
+ rowHeight?: number;
723
+ rowTop?: number;
724
+ }
725
+
726
+ /** Block state change callback */
727
+ declare type SmartGridBlockStateChangedCallback = (blockId: number, state: string, rowIndexes: number[]) => void;
728
+
729
+ /** Block state JSON */
730
+ declare interface SmartGridBlockStateJson {
731
+ id: number;
732
+ state: string;
733
+ startRow: number;
734
+ endRow: number;
735
+ version: number;
736
+ lastAccessed: number;
737
+ }
738
+
739
+ /** Block state JSON from getBlockStateJson */
740
+ declare interface SmartGridBlockStateJsonExtended {
741
+ id: number;
742
+ state: string;
743
+ startRow: number;
744
+ endRow: number;
745
+ version: number;
746
+ lastAccessed: number;
747
+ }
748
+
749
+ declare type SmartGridCacheAnalytics = {
750
+ blockEvictions: number;
751
+ blockLoadTimestamps: number[];
752
+ blockLoads: number;
753
+ bytesLoaded: number;
754
+ cachePurges: number;
755
+ cacheRefreshes: number;
756
+ hits: number;
757
+ lastBlockLoadTime: number;
758
+ misses: number;
759
+ startTime: number;
760
+ totalBlockLoadTime: number;
761
+ };
762
+
763
+ /** Cache analytics */
764
+ declare interface SmartGridCacheAnalytics_2 {
765
+ hits: number;
766
+ misses: number;
767
+ blockLoads: number;
768
+ blockEvictions: number;
769
+ totalBlockLoadTime: number;
770
+ lastBlockLoadTime: number;
771
+ bytesLoaded: number;
772
+ startTime: number;
773
+ blockLoadTimestamps: Array<{
774
+ blockId: number;
775
+ timestamp: number;
776
+ loadTime: number;
777
+ }>;
778
+ cachePurges: number;
779
+ cacheRefreshes: number;
780
+ }
781
+
782
+ declare interface SmartGridCacheAnalyticsData {
783
+ hitRatio: number;
784
+ hits: number;
785
+ misses: number;
786
+ blockLoads: number;
787
+ blockEvictions: number;
788
+ }
789
+
790
+ declare type SmartGridCacheBlock = {
791
+ endRow: number;
792
+ id: number;
793
+ infiniteCache: SmartGridInfiniteCache;
794
+ lastAccessed: number;
795
+ loadStartedAt: number;
796
+ params: SmartGridCacheBlockParams;
797
+ parent: SmartGridInfiniteCache | null;
798
+ parentCache: SmartGridInfiniteCache | null;
799
+ rowNodes: {
800
+ data: SmartGridRowData;
801
+ id: number;
802
+ rowIndex: number;
803
+ }[];
804
+ rows: unknown;
805
+ startRow: number;
806
+ state: string;
807
+ version: number;
808
+ _inactiveForPageTransition: boolean;
809
+ _processingInProgress: boolean;
810
+ _targetPage: number;
811
+ };
812
+
813
+ declare type SmartGridCacheBlockParams = Record<string, unknown>;
814
+
815
+ /** Cache context */
816
+ declare interface SmartGridCacheContext {
817
+ tableContextRef?: MutableRefObject<SmartGridTableContextValue | null>;
818
+ infiniteCache?: InfiniteCache;
819
+ updateData?: (rows: SmartGridRowData[], blockId: number, metadata?: Record<string, unknown> | undefined) => void;
820
+ }
821
+
822
+ declare interface SmartGridCachedBlockData {
823
+ [blockId: string]: SmartGridRowData[];
824
+ }
825
+
826
+ /** Cache event */
827
+ declare interface SmartGridCacheEvent {
828
+ type: string;
829
+ blockId?: number;
830
+ source?: string;
831
+ options?: Record<string, unknown>;
832
+ pageNo?: number;
833
+ }
834
+
835
+ declare type SmartGridCacheMetadata = {
836
+ lastUpdated: number;
837
+ timestamp?: number;
838
+ };
839
+
840
+ /** Cache params */
841
+ declare interface SmartGridCacheParams {
842
+ overflowSize: number;
843
+ maxBlocksInCache: number;
844
+ initialRowCount: number;
845
+ rowHeight: number;
846
+ lastAccessedSequence: SmartGridLastAccessedSequence;
847
+ uniqueIdField: string;
848
+ onBlockStateChanged: SmartGridBlockStateChangedCallback | null;
849
+ purgeStrategy: string;
850
+ enablePersistence: boolean;
851
+ persistenceStorageKey: string;
852
+ persistenceOptions: SmartGridPersistenceOptions;
853
+ isPaginationMode: boolean;
854
+ datasource?: SmartGridClientSideDatasource | SmartGridServerSideDatasource;
855
+ filterModel?: SmartGridSearchWithSearchKey;
856
+ sortModel?: SmartGridSortModel;
857
+ context?: SmartGridCacheContext;
858
+ updatedPageSizeRef?: SmartGridPageSizeRef;
859
+ viewportRange?: SmartGridViewportRange;
860
+ tableId?: string;
861
+ pageSize?: number;
862
+ loadSequentially?: boolean;
863
+ }
864
+
865
+ /** Cache state for debugging */
866
+ declare interface SmartGridCacheState {
867
+ blockCount: number;
868
+ rowCount: number;
869
+ lastRowIndexKnown: boolean;
870
+ blocks: SmartGridBlockStateJsonExtended[];
871
+ analytics: SmartGridCacheAnalytics_2;
872
+ }
873
+
874
+ declare interface SmartGridCacheState_2 {
875
+ blockCount: number;
876
+ cache?: SmartGridInfiniteCache;
877
+ lastRowKnown: boolean;
878
+ rowCount: number;
879
+ status: string;
880
+ }
881
+
882
+ declare interface SmartGridCacheStateReturn {
883
+ cache: unknown;
884
+ rowCount: number;
885
+ lastRowKnown: boolean;
886
+ blockCount: number;
887
+ status: string;
888
+ }
889
+
890
+ declare interface SmartGridCallbackRefCurrent {
891
+ onSelectionChanged?: ((event: SmartGridOnSelectionChangedParams) => void) | undefined;
892
+ onRowDragStart?: ((event: SmartGridRowDragStartParams) => void) | null;
893
+ onRowDragEnd?: ((event: SmartGridRowDragEndParams) => void) | null;
894
+ onRowClicked?: ((event: unknown) => void) | null;
895
+ onCellValueChanged?: ((event: SmartGridCellValueChangedParams) => void) | null;
896
+ onRowGroupOpened?: ((event: SmartGridRowGrouOpenParams) => void) | null;
897
+ customTabFunction?: ((e: KeyboardEvent, column: SmartGridColumnDefinition, context: {
898
+ api: SmartGridAPI | null;
899
+ }) => void) | null;
900
+ onPageChange?: ((page: number) => void) | null;
901
+ onSortChange?: ((sortModel: SmartGridSortModel) => void) | null;
902
+ onFilterChange?: ((filterModel: SmartGridFilterModel) => void) | null;
903
+ onSearch?: ((searchTerm: SmartGridSearchFunctionParams) => void) | null;
904
+ }
905
+
906
+ declare type SmartGridCellRenderer = {
907
+ value: unknown;
908
+ data: SmartGridRowData;
909
+ rowIndex: number;
910
+ colIndex: number;
911
+ column: SmartGridColumnDefinition;
912
+ colDef: SmartGridColumnDefinition;
913
+ node: SmartGridCellRendererNode;
914
+ api: SmartGridAPI;
915
+ eGridCell: RefObject<HTMLDivElement | null>;
916
+ wholeData: SmartGridRowData[] | null | undefined;
917
+ actions: Record<string, unknown>;
918
+ setDataValue: (colId: string, newValue: unknown) => void;
919
+ isCellLockable?: boolean;
920
+ };
921
+
922
+ declare type SmartGridCellRendererNode = {
923
+ data: SmartGridRowData;
924
+ rowIndex: number;
925
+ id: string | number;
926
+ parent: SmartGridUpdateData & {
927
+ id: string | number;
928
+ level: number;
929
+ setExpanded: () => void;
930
+ };
931
+ setDataValue: (colId: string, newValue: unknown) => void;
932
+ childrenMapped: Record<string, string>;
933
+ allLeafChildren: Record<string, string>[];
934
+ group: boolean;
935
+ level: number;
936
+ childIndex: number;
937
+ isSelected: () => boolean;
938
+ isExpandable: () => boolean;
939
+ isExpanded: () => boolean;
940
+ };
941
+
942
+ declare type SmartGridCellRendererParams = {
943
+ dateFormat?: SmartGridDateFormat;
944
+ startYear?: number;
945
+ endYear?: number;
946
+ minDate?: string;
947
+ maxDate?: string;
948
+ options?: Array<{
949
+ label: string;
950
+ value: string | number;
951
+ }>;
952
+ isMultiSelect?: boolean;
953
+ type?: SmartGridInputType;
954
+ disabled?: boolean;
955
+ disableOnlyPast?: boolean;
956
+ disableOnlyFuture?: boolean;
957
+ disablePast?: boolean;
958
+ disableFuture?: boolean;
959
+ startDate?: string | Date;
960
+ endDate?: string | Date;
961
+ inputType?: SmartGridInputType;
962
+ leftLabel?: string;
963
+ rightLabel?: string;
964
+ splits?: SmartGridColumnDefinition[];
965
+ isEnableResetButton?: boolean;
966
+ } & Record<string, unknown>;
967
+
968
+ declare interface SmartGridCellValueChangedParams {
969
+ colDef: SmartGridColumnDefinition;
970
+ column: SmartGridColumnDefinition;
971
+ data: SmartGridRowData;
972
+ newValue: unknown;
973
+ node: {
974
+ data: SmartGridRowData;
975
+ id: string | number;
976
+ level: number;
977
+ parent?: SmartGridUpdateData;
978
+ rowIndex: number;
979
+ };
980
+ value: unknown;
981
+ }
982
+
983
+ export declare interface SmartGridChannel {
984
+ id: string | number;
985
+ title: string;
986
+ time: string;
987
+ unreadCount: number;
988
+ objectType: string;
989
+ }
990
+
991
+ /**
992
+ * ChatObject - Represents a chat/topic
993
+ * @see MDX Documentation: Data Structures > ChatObject
994
+ */
995
+ export declare interface SmartGridChat {
996
+ id: string;
997
+ title: string;
998
+ subtitle: string;
999
+ user: string;
1000
+ text: string;
1001
+ time: string;
1002
+ isChecked: boolean;
1003
+ isPinned: boolean;
1004
+ unreadCount: number;
1005
+ messageCount: number;
1006
+ timestamp: string;
1007
+ createdBy?: string;
1008
+ otherProps: {
1009
+ object_ids: string[];
1010
+ object_type: string;
1011
+ topic_id: string;
1012
+ created_by_user: string;
1013
+ is_pinned: boolean;
1014
+ unread_count: number;
1015
+ message_count: number;
1016
+ created_at: string;
1017
+ };
1018
+ }
1019
+
1020
+ export declare interface SmartGridChatAvatarProps {
1021
+ src?: string;
1022
+ name?: string;
1023
+ size?: SmartGridAvatarSize;
1024
+ }
1025
+
1026
+ export declare interface SmartGridChatChannelItemAvatar {
1027
+ label?: string;
1028
+ src?: string;
1029
+ }
1030
+
1031
+ export declare interface SmartGridChatChannelItemProps {
1032
+ id: string | number;
1033
+ title?: string;
1034
+ subtitle?: string;
1035
+ timestamp?: string;
1036
+ unreadCount?: number;
1037
+ avatar?: SmartGridChatChannelItemAvatar;
1038
+ isSelected?: boolean;
1039
+ isMuted?: boolean;
1040
+ onClick?: (id: string | number) => void;
1041
+ showChannelList?: boolean;
1042
+ showCheckbox?: boolean;
1043
+ handleChatSelect?: (id: string | number) => void;
1044
+ selectedChat?: (string | number)[];
1045
+ onPinnedChatClick?: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
1046
+ handleToast?: SmartGridHandleToastFn;
1047
+ isPinned?: boolean;
1048
+ }
1049
+
1050
+ export declare interface SmartGridChatChannelListProps {
1051
+ channels: SmartGridChatChannelItemProps[];
1052
+ selectedChannelOrChatId?: string | number;
1053
+ onChannelSelect: (channelId: string | number, channel: SmartGridChatChannelItemProps) => void;
1054
+ showChannelList?: boolean;
1055
+ showCheckbox?: boolean;
1056
+ handleChatSelect?: (id: string | number) => void;
1057
+ selectedChat?: (string | number)[];
1058
+ onPinnedChatClick?: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
1059
+ handleToast?: SmartGridHandleToastFn;
1060
+ }
1061
+
1062
+ export declare interface SmartGridChatConfiguration {
1063
+ title: string;
1064
+ description: string;
1065
+ buttonLabel: string;
1066
+ buttonIcon: string;
1067
+ buttonIconPosition: "left" | "right";
1068
+ tooltipConfig: SmartGridChatTooltipConfig;
1069
+ messageChatConfig: SmartGridMessageChatConfig;
1070
+ headerChatConfig: SmartGridHeaderChatConfig;
1071
+ inputChatConfig: SmartGridInputChatConfig;
1072
+ leftPanel: SmartGridLeftPanelConfig;
1073
+ rightPanel: SmartGridRightPanelConfig;
1074
+ }
1075
+
1076
+ export declare interface SmartGridChatDefaultMessageTypeProps {
1077
+ content?: string | React.ReactNode;
1078
+ timestamp?: string;
1079
+ handleClickOnMoreOptions?: (e: React.MouseEvent<HTMLButtonElement>) => void;
1080
+ priority?: SmartGridMessagePriority;
1081
+ edited?: boolean;
1082
+ onThreadClick?: () => void;
1083
+ pinned?: boolean;
1084
+ visibility?: boolean;
1085
+ onPin?: (isPinned: boolean) => Promise<SmartGridChatMessage | boolean | undefined>;
1086
+ isUser?: boolean;
1087
+ isThreadIconVisible?: boolean;
1088
+ isPinChatIconvisible?: boolean;
1089
+ isHighlighted?: boolean;
1090
+ highlightColor?: string | null;
1091
+ }
1092
+
1093
+ export declare interface SmartGridChatDeletedMessageTypeProps {
1094
+ timestamp?: string;
1095
+ isUser?: boolean;
1096
+ }
1097
+
1098
+ export declare interface SmartGridChatEditedMessageTypeProps {
1099
+ content?: string | React.ReactNode;
1100
+ timestamp?: string;
1101
+ handleClickOnMoreOptions?: (e: React.MouseEvent<SVGSVGElement>) => void;
1102
+ priority?: SmartGridMessagePriority;
1103
+ edited?: boolean;
1104
+ onThreadClick?: () => void;
1105
+ pinned?: boolean;
1106
+ onPin?: (isPinned: boolean) => Promise<boolean | undefined>;
1107
+ isUser?: boolean;
1108
+ }
1109
+
1110
+ export declare interface SmartGridChatFormData {
1111
+ chatName?: string;
1112
+ chatDescription?: string;
1113
+ [key: string]: unknown;
1114
+ }
1115
+
1116
+ export declare interface SmartGridChatHeaderActionExternalHandlers {
1117
+ onSearchChange?: (value: string) => void;
1118
+ onSelectAll?: (allValues: (string | number)[]) => void;
1119
+ onClearSelection?: () => void;
1120
+ onSelectionChange?: (newSelection: (string | number)[]) => void;
1121
+ onParticipantsClick?: () => Promise<void>;
1122
+ loadMenuOptions?: () => Promise<SmartGridParticipant[]>;
1123
+ menuOptions?: SmartGridParticipant[];
1124
+ onClose?: () => void;
1125
+ onParticipantAdd?: (participantIds: (string | number)[], selectedRadioOption: string, chatId: string | number) => Promise<{
1126
+ success: boolean;
1127
+ participant: SmartGridParticipant;
1128
+ } | null>;
1129
+ onNotificationSettingChange?: (data: SmartGridNotificationSettings) => Promise<void | {
1130
+ success: boolean;
1131
+ settings: SmartGridNotificationSettings;
1132
+ }>;
1133
+ onSearchMessage?: (e: React.ChangeEvent<HTMLInputElement>) => void;
1134
+ participantsList?: SmartGridParticipant[];
1135
+ loadParticipantsAvatar?: (radioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1136
+ handleRadioButtonChange?: (value: string) => Promise<void>;
1137
+ }
1138
+
1139
+ export declare interface SmartGridChatHeaderActionProps {
1140
+ enableSearch?: boolean;
1141
+ messageSearchValue?: string;
1142
+ handleOpenMessageSearch?: () => void;
1143
+ handleCloseMessageSearch?: () => void;
1144
+ handleMessageSearchChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
1145
+ onParticipantsClick?: (e: React.MouseEvent<HTMLButtonElement>) => Promise<void>;
1146
+ participants?: SmartGridParticipant[];
1147
+ onPinnedClick?: () => void;
1148
+ threeDotMenuOptions?: SmartGridThreeDotMenuOption[];
1149
+ showNotificationSettings?: boolean;
1150
+ handleNotificationSettingsClose?: () => void;
1151
+ onThreeDotMenuClick?: () => void;
1152
+ externalHandlers?: SmartGridChatHeaderActionExternalHandlers;
1153
+ isLoadingOptions?: boolean;
1154
+ isSearching?: boolean;
1155
+ filteredMenuOptions?: SmartGridParticipant[];
1156
+ menuSearchQuery?: string;
1157
+ setMenuSearchQuery?: (query: string) => void;
1158
+ renderCustomHeader?: (headerProps: Record<string, unknown>) => React.ReactNode;
1159
+ threeDotMenuOpen?: boolean;
1160
+ onSaveNotification?: (data: SmartGridNotificationSettings) => void;
1161
+ selectedMenuItems?: (string | number)[];
1162
+ setSelectedMenuItems?: React.Dispatch<React.SetStateAction<(string | number)[]>>;
1163
+ handleThreeDotMenuClose?: () => void;
1164
+ notificationSettings?: SmartGridNotificationSettings;
1165
+ maxAvatars?: number;
1166
+ selectedRadioOption?: string;
1167
+ chatId?: string | number;
1168
+ menuOptions?: SmartGridParticipant[];
1169
+ externalSavingMembers?: boolean;
1170
+ showSearch?: boolean;
1171
+ showPinned?: boolean;
1172
+ showParticipants?: boolean;
1173
+ showThreeDotMenu?: boolean;
1174
+ className?: string;
1175
+ searchPlaceholder?: string;
1176
+ isAddParticipantsAllowed?: boolean;
1177
+ isLoadingParticipants?: boolean;
1178
+ loadingError?: string | null;
1179
+ }
1180
+
1181
+ export declare interface SmartGridChatHeaderInfoProps {
1182
+ title?: string;
1183
+ createdBy?: string;
1184
+ createdAt?: string;
1185
+ chatId?: string | number;
1186
+ }
1187
+
1188
+ export declare interface SmartGridChatHeaderNavigationProps {
1189
+ title?: string;
1190
+ onBack?: () => void;
1191
+ onSearchClick?: () => void;
1192
+ onMenuClick?: () => void;
1193
+ onMoreClick?: () => void;
1194
+ showChannelList?: boolean;
1195
+ isSearchOpen?: boolean;
1196
+ showAddChatBtn?: boolean;
1197
+ showSearchChat?: boolean;
1198
+ setShowPinnedMsg?: (value: boolean) => void;
1199
+ onThreadClick?: (messageId?: string | number, payload?: SmartGridChatMessage) => void;
1200
+ headerConfig?: SmartGridLeftHeaderPanel;
1201
+ handleChatName?: SmartGridLeftPanelConfig["handleChatName"];
1202
+ filterChannelsByTitle?: (value: string) => void;
1203
+ selectedChat?: (string | number)[];
1204
+ selectedChannelInfo?: SmartGridChannel | null;
1205
+ handleToast?: (isOpen: boolean, message?: string, variant?: SmartGridToastVariant) => void;
1206
+ onDeleteTopics?: () => void;
1207
+ isCreateNewChatOpen?: boolean;
1208
+ setIsCreateNewChatOpen?: Dispatch<SetStateAction<boolean>>;
1209
+ }
1210
+
1211
+ export declare interface SmartGridChatHeaderProps {
1212
+ title: string;
1213
+ chatId: string | number;
1214
+ participants?: SmartGridParticipant[];
1215
+ className?: string;
1216
+ participantsList?: SmartGridParticipant[];
1217
+ onSaveNotification?: (data: SmartGridNotificationSettings) => void;
1218
+ createdBy?: string;
1219
+ createdAt?: string;
1220
+ chatHeaderConfig: Partial<SmartGridHeaderChatConfig> & {
1221
+ onSearchMessage?: (searchValue: string, chatId: string | number) => Promise<SmartGridChatMessage[] | void>;
1222
+ onSearchClear?: () => void;
1223
+ externalSavingMembers?: boolean;
1224
+ };
1225
+ }
1226
+
1227
+ export declare interface SmartGridChatInputProps {
1228
+ placeholder: string;
1229
+ value: string;
1230
+ onChange: (value: string) => void;
1231
+ onSend: (payload: SmartGridChatInputSendPayload) => Promise<void>;
1232
+ onAttach?: (file: File) => void;
1233
+ onImageUpload?: (image: File) => void;
1234
+ onEmojiClick?: (emoji: string) => void;
1235
+ showFormatting?: boolean;
1236
+ showQuickAction?: boolean;
1237
+ quickActionLabel?: string;
1238
+ disabled?: boolean;
1239
+ maxLength?: number;
1240
+ className?: string;
1241
+ messageConfig: SmartGridMessageChatConfig & {
1242
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1243
+ messageConfig?: SmartGridMessageConfig;
1244
+ };
1245
+ isEditMode?: boolean;
1246
+ editingMessage?: SmartGridChatMessage | null;
1247
+ onCancelEdit?: () => void;
1248
+ chatId: string | number;
1249
+ }
1250
+
1251
+ export declare interface SmartGridChatInputSendPayload {
1252
+ content: string;
1253
+ selectedPriority?: string;
1254
+ taggedUsers?: (string | number)[];
1255
+ [key: string]: unknown;
1256
+ }
1257
+
1258
+ /**
1259
+ * MessageObject - Represents a chat message
1260
+ * @see MDX Documentation: Data Structures > MessageObject
1261
+ */
1262
+ export declare interface SmartGridChatMessage {
1263
+ id: string | number;
1264
+ author?: "user" | "assistant" | "system" | string;
1265
+ authorName?: string;
1266
+ authorAvatar?: string;
1267
+ content?: string;
1268
+ timestamp?: string;
1269
+ date?: string;
1270
+ priority?: "low" | "medium" | "high" | "default" | "normal" | string;
1271
+ isPinned?: boolean;
1272
+ deleted?: boolean;
1273
+ edited?: boolean;
1274
+ showActions?: boolean;
1275
+ showReplyBadge?: boolean;
1276
+ replyText?: string | null;
1277
+ text?: string;
1278
+ time?: string;
1279
+ user?: string;
1280
+ userInitials?: string;
1281
+ quote?: string;
1282
+ type?: "default" | "deleted" | "edited" | string;
1283
+ senderId?: string | number;
1284
+ created_at?: string;
1285
+ isRealTime?: boolean;
1286
+ otherProps?: {
1287
+ sender_id?: number | string;
1288
+ created_at?: string;
1289
+ updated_at?: string;
1290
+ isRealTime?: boolean;
1291
+ topic_id?: string;
1292
+ sender_name?: string;
1293
+ object_ids?: (string | number)[];
1294
+ object_type?: string;
1295
+ deleted?: boolean;
1296
+ [key: string]: unknown;
1297
+ };
1298
+ }
1299
+
1300
+ export declare interface SmartGridChatMessageActionsProps {
1301
+ messageId?: string | number;
1302
+ onReply?: (messageId: string | number) => void;
1303
+ onReact?: (messageId: string | number) => void;
1304
+ onBookmark?: (messageId: string | number) => void;
1305
+ onPin?: (messageId: string | number) => void;
1306
+ onMore?: (messageId: string | number) => void;
1307
+ actions?: SmartGridMessageActionKey[];
1308
+ className?: string;
1309
+ }
1310
+
1311
+ export declare interface SmartGridChatMessageAvatarProps {
1312
+ authorName?: string;
1313
+ authorAvatar?: string;
1314
+ }
1315
+
1316
+ export declare interface SmartGridChatMessageProps {
1317
+ messageId?: string | number;
1318
+ author?: string;
1319
+ authorName?: string;
1320
+ authorAvatar?: string;
1321
+ content?: string | React.ReactNode;
1322
+ timestamp?: string;
1323
+ isUser?: boolean;
1324
+ showActions?: boolean;
1325
+ showAvatar?: boolean;
1326
+ isDeleted?: boolean;
1327
+ edited?: boolean;
1328
+ deleted?: boolean;
1329
+ onReply?: () => void;
1330
+ onReact?: () => void;
1331
+ onBookmark?: () => void;
1332
+ onPin?: (isPinned: boolean) => Promise<SmartGridChatMessage | boolean | undefined>;
1333
+ pinned?: boolean;
1334
+ onMore?: () => void;
1335
+ onEdit?: () => void;
1336
+ onMessageDelete?: (messageId: string | number) => Promise<SmartGridChatMessage | {
1337
+ success: boolean;
1338
+ messageId: string | number;
1339
+ } | undefined>;
1340
+ onRefetchMessages?: () => Promise<SmartGridChatMessage[]>;
1341
+ type?: SmartGridChatMessageType;
1342
+ priority?: SmartGridMessagePriority;
1343
+ actions?: SmartGridMessageActionKey[];
1344
+ className?: string;
1345
+ onThreadClick?: () => void;
1346
+ isThreadIconVisible?: boolean;
1347
+ isPinChatIconvisible?: boolean;
1348
+ isHighlighted?: boolean;
1349
+ highlightColor?: string | null;
1350
+ }
1351
+
1352
+ export declare type SmartGridChatMessageType = "default" | "deleted" | "editable";
1353
+
1354
+ export declare interface SmartGridChatNotificationSettingsProps {
1355
+ isOpen?: boolean;
1356
+ onClose?: () => void;
1357
+ isLoading?: boolean;
1358
+ position?: {
1359
+ top: number;
1360
+ right: number;
1361
+ };
1362
+ onSaveNotification?: (data: SmartGridNotificationSettings) => void;
1363
+ notificationSettings?: SmartGridNotificationSettings;
1364
+ }
1365
+
1366
+ export declare interface SmartGridChatRadioOption {
1367
+ label: string;
1368
+ value: string;
1369
+ }
1370
+
1371
+ export declare interface SmartGridChatTooltipConfig {
1372
+ title: string;
1373
+ description: string;
1374
+ }
1375
+
1376
+ declare type SmartGridCheckConfigraitonSearchField = {
1377
+ type: string;
1378
+ filterType: string;
1379
+ filter: string;
1380
+ filterMax?: string;
1381
+ };
1382
+
1383
+ declare interface SmartGridCheckConfiguration {
1384
+ checkedRows?: string[];
1385
+ unCheckedRows?: string[];
1386
+ checkAll?: boolean;
1387
+ searchColumns?: SmartGridCheckConfigraitonSearchField | {
1388
+ [key: string]: SmartGridCheckConfigraitonSearchField;
1389
+ };
1390
+ unCheckAll?: boolean;
1391
+ }
1392
+
1393
+ declare type SmartGridClickCallbackRefCurrent = {
1394
+ onCellClick?: ((params: any) => void) | null;
1395
+ };
1396
+
1397
+ /** Client-side datasource interface */
1398
+ declare interface SmartGridClientSideDatasource {
1399
+ getRows: (params: SmartGridGetRowsRequestParams) => void;
1400
+ destroy?: () => void;
1401
+ _isWrapped?: boolean;
1402
+ _cleanup?: () => void;
1403
+ updateData?: (state: SmartGridStateContext, newData: SmartGridRowData[]) => void;
1404
+ getWholeData?: () => SmartGridRowData[];
1405
+ updateCacheReference?: (newCache: InfiniteCache) => boolean;
1406
+ _cacheInjected?: boolean;
1407
+ infiniteCache?: InfiniteCache;
1408
+ context?: SmartGridDataSourceContext;
1409
+ updateWholeData: (wholeData: SmartGridRowData[]) => void;
1410
+ }
1411
+
1412
+ declare type SmartGridColumnDefinition = SmartGridColumnWithField | SmartGridColumnWithGroupId | SmartGridColumnWithColId;
1413
+
1414
+ declare interface SmartGridColumnState {
1415
+ colId: string;
1416
+ hide: boolean;
1417
+ width: number;
1418
+ sort: SmartGridSortDirection | null;
1419
+ filter: SmartGridFilterModel[] | null;
1420
+ }
1421
+
1422
+ declare interface SmartGridColumnWithColId extends SmartGridBaseColumnDefinition {
1423
+ field?: string;
1424
+ groupId?: string;
1425
+ colId: string;
1426
+ }
1427
+
1428
+ declare interface SmartGridColumnWithField extends SmartGridBaseColumnDefinition {
1429
+ field: string;
1430
+ groupId?: string;
1431
+ }
1432
+
1433
+ declare interface SmartGridColumnWithGroupId extends SmartGridBaseColumnDefinition {
1434
+ field?: string;
1435
+ groupId: string;
1436
+ }
1437
+
1438
+ /**
1439
+ * SmartGridComment - Represents a single comment in a thread
1440
+ */
1441
+ export declare interface SmartGridComment {
1442
+ id: string | number;
1443
+ text: string;
1444
+ author: string;
1445
+ timestamp: string;
1446
+ isEdited?: boolean;
1447
+ read?: boolean;
1448
+ isRead?: boolean;
1449
+ }
1450
+
1451
+ /**
1452
+ * SmartGridCommentConfiguration - Configuration options for comment features
1453
+ */
1454
+ export declare interface SmartGridCommentConfiguration {
1455
+ disableMarkAsRead?: boolean;
1456
+ disableMarkAsResolved?: boolean;
1457
+ disableDeleteThread?: boolean;
1458
+ disableEditComment?: boolean;
1459
+ disableDeleteComment?: boolean;
1460
+ disableMultiCommentThread?: boolean;
1461
+ messageIdHighlightTimer?: number;
1462
+ }
1463
+
1464
+ /**
1465
+ * SmartGridCommentContextRef - Context reference for comment functionality
1466
+ * Used by smartGridContextRef in CommentWrapper
1467
+ */
1468
+ export declare interface SmartGridCommentContextRef {
1469
+ comments: SmartGridCommentThread;
1470
+ popup: SmartGridCommentPopup | null;
1471
+ handleCommentIconHover: (params: SmartGridCellRenderer) => void;
1472
+ handleMouseEnter: () => void;
1473
+ handleMouseLeave: () => void;
1474
+ resolvedComments: string[];
1475
+ getLatestUnresolvedThreadId: (cellId: string) => string | null;
1476
+ configuration?: SmartGridCommentConfiguration;
1477
+ colIdentifierKey?: string;
1478
+ }
1479
+
1480
+ /**
1481
+ * SmartGridCommentDeleteState - State for comment deletion
1482
+ */
1483
+ export declare interface SmartGridCommentDeleteState {
1484
+ cellId?: string;
1485
+ data?: SmartGridCommentRowData;
1486
+ comment?: SmartGridComment;
1487
+ }
1488
+
1489
+ /**
1490
+ * SmartGridCommentMenuOption - Menu option for comment actions
1491
+ */
1492
+ export declare interface SmartGridCommentMenuOption {
1493
+ label: string;
1494
+ id: string;
1495
+ icon?: React.ReactNode;
1496
+ onClick: () => void;
1497
+ value: string;
1498
+ }
1499
+
1500
+ /**
1501
+ * SmartGridCommentPanelProps - Props for CommentPanel component
1502
+ */
1503
+ export declare interface SmartGridCommentPanelProps {
1504
+ showCommentPanel: boolean;
1505
+ setShowCommentPanel: () => void;
1506
+ comments: SmartGridCommentThread;
1507
+ onCommentItemClick: (cellId: string, comments: SmartGridComment[], messageId?: string | number | null) => void;
1508
+ onMenuClick: (event: React.MouseEvent<HTMLButtonElement>, comment?: string | SmartGridComment | null, type?: "commentMenu" | "topMenu") => void;
1509
+ onMarkAsReadClick?: (cellId: string | number) => Promise<void>;
1510
+ onMarkAsResolvedClick: (cellId: string, comments: SmartGridComment[]) => Promise<void>;
1511
+ commentProps: SmartGridCommentProps;
1512
+ resolvedComments: string[];
1513
+ popup: SmartGridCommentPopup | null;
1514
+ onShowResolvedCommentsRequest?: () => Promise<void>;
1515
+ height: string | number;
1516
+ }
1517
+
1518
+ /**
1519
+ * SmartGridCommentPopup - State for comment popup
1520
+ */
1521
+ export declare interface SmartGridCommentPopup {
1522
+ position: SmartGridCommentPopupPosition;
1523
+ rowId?: string | number;
1524
+ colId?: string;
1525
+ cellId: string;
1526
+ comment?: SmartGridComment[];
1527
+ author?: string;
1528
+ openedBy: "hover" | "click";
1529
+ data?: SmartGridCommentRowData;
1530
+ messageId?: string | number | null;
1531
+ }
1532
+
1533
+ /**
1534
+ * SmartGridCommentPopupPosition - Position for comment popup
1535
+ */
1536
+ export declare interface SmartGridCommentPopupPosition {
1537
+ top: number;
1538
+ left: number;
1539
+ side?: "left" | "right" | "clamped";
1540
+ }
1541
+
1542
+ /**
1543
+ * SmartGridCommentProps - Props passed to comment components
1544
+ */
1545
+ export declare interface SmartGridCommentProps {
1546
+ comments?: SmartGridCommentThread;
1547
+ resolvedComments?: string[];
1548
+ author?: string;
1549
+ colIdentifierKey?: string;
1550
+ configuration?: SmartGridCommentConfiguration;
1551
+ commentSearchOptions?: Array<{
1552
+ label: string;
1553
+ value: string;
1554
+ }>;
1555
+ selectedCommentSearchOption?: string;
1556
+ handleSaveComment?: (cellId: string, text: string, data: SmartGridCommentRowData, taggedUsers?: SmartGridCommentTaggedUser[]) => Promise<SmartGridCommentThread | void>;
1557
+ handleCommentEdit?: (text: string, comment: SmartGridComment, commentId: string | number, taggedUsers?: SmartGridCommentTaggedUser[]) => Promise<SmartGridCommentThread | void>;
1558
+ handleCommentDelete?: (commentId: string | number, comment: SmartGridComment) => Promise<SmartGridCommentThread | void>;
1559
+ handleThreadDelete?: (cellId: string, data: SmartGridComment[]) => Promise<SmartGridCommentThread | void>;
1560
+ handleMarkAsRead?: (cellId: string | number) => Promise<void>;
1561
+ handleMarkAsUnread?: (cellId: string | number) => Promise<void>;
1562
+ handleMarkAsResolved?: (cellId: string, comments: SmartGridComment[]) => Promise<string[] | void>;
1563
+ handleFetchResolvedComments?: () => Promise<{
1564
+ comments?: SmartGridCommentThread;
1565
+ resolvedComments?: string[];
1566
+ } | void>;
1567
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1568
+ }
1569
+
1570
+ /**
1571
+ * SmartGridCommentRowData - Row data associated with a comment
1572
+ */
1573
+ export declare interface SmartGridCommentRowData {
1574
+ [key: string]: unknown;
1575
+ }
1576
+
1577
+ /**
1578
+ * SmartGridCommentSearchOption - Search/filter option for comments
1579
+ */
1580
+ export declare interface SmartGridCommentSearchOption {
1581
+ label: string;
1582
+ value: string;
1583
+ id: string;
1584
+ }
1585
+
1586
+ /**
1587
+ * SmartGridCommentsPortalProps - Props for CommentsPortal component
1588
+ */
1589
+ export declare interface SmartGridCommentsPortalProps {
1590
+ isOpen: boolean;
1591
+ onClose: () => void;
1592
+ comments?: SmartGridComment[];
1593
+ onAddComment: (cellId: string | number, inputValue: string, taggedUsers?: SmartGridCommentTaggedUser[]) => Promise<void>;
1594
+ cellId?: string | number;
1595
+ position?: SmartGridCommentPopupPosition;
1596
+ author?: string;
1597
+ onMouseEnter?: () => void;
1598
+ onMouseLeave?: () => void;
1599
+ openedBy?: "hover" | "click";
1600
+ onMenuClick: (event: React.MouseEvent<HTMLButtonElement>, comment?: string | number | SmartGridComment | null, type?: "commentMenu" | "topMenu") => void;
1601
+ onMarkAsReadClick?: ((cellId: string | number) => Promise<void>) | null;
1602
+ onMarkAsResolvedClick?: ((cellId: string | number, comments: SmartGridComment[]) => Promise<void>) | null;
1603
+ editCommentText?: string;
1604
+ isLoading?: boolean;
1605
+ error?: string | null;
1606
+ onClearError?: () => void;
1607
+ currentAuthor?: string;
1608
+ editingComment?: SmartGridComment | null;
1609
+ setEditingComment?: React.Dispatch<React.SetStateAction<SmartGridComment | null>>;
1610
+ onUpdateComment?: (commentId: string | number | null, newText: string) => Promise<void>;
1611
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1612
+ resolvedComments?: string[];
1613
+ messageId?: string | number | null;
1614
+ configuration?: SmartGridCommentConfiguration;
1615
+ }
1616
+
1617
+ /**
1618
+ * SmartGridCommentTaggedUser - User tagged in a comment
1619
+ */
1620
+ export declare interface SmartGridCommentTaggedUser {
1621
+ id: string | number;
1622
+ name: string;
1623
+ avatar?: string;
1624
+ status?: string;
1625
+ }
1626
+
1627
+ /**
1628
+ * SmartGridCommentThread - A collection of comments keyed by cell ID
1629
+ */
1630
+ export declare type SmartGridCommentThread = Record<string, SmartGridComment[]>;
1631
+
1632
+ /**
1633
+ * SmartGridCommentWrapperProps - Props for CommentWrapper component
1634
+ */
1635
+ export declare interface SmartGridCommentWrapperProps {
1636
+ commentProps: SmartGridCommentProps;
1637
+ commentPannelRef: React.MutableRefObject<((show: boolean) => void) | null>;
1638
+ height: string | number;
1639
+ }
1640
+
1641
+ export declare interface SmartGridCreateChatResponse {
1642
+ success: boolean;
1643
+ chatName?: string;
1644
+ description?: string;
1645
+ selectedChannel?: SmartGridChannel;
1646
+ formattedChat?: SmartGridChat;
1647
+ }
1648
+
1649
+ declare type SmartGridCustomCallbackRefCurrent = {
1650
+ onCellClick?: ((params: any) => void) | null;
1651
+ };
1652
+
1653
+ /** Data source context */
1654
+ declare interface SmartGridDataSourceContext {
1655
+ infiniteCache?: InfiniteCache;
1656
+ tableContextRef?: MutableRefObject<SmartGridTableContextValue | null>;
1657
+ updateData?: (rows: SmartGridRowData[], blockId: number, metadata?: Record<string, unknown> | undefined) => void;
1658
+ getWholeData?: () => SmartGridRowData[];
1659
+ [key: string]: unknown;
1660
+ }
1661
+
1662
+ /** Datasource getRows params */
1663
+ declare interface SmartGridDatasourceGetRowsParams {
1664
+ startRow: number;
1665
+ endRow: number;
1666
+ sortModel?: SmartGridSortModel;
1667
+ filterModel?: SmartGridFilterModel;
1668
+ pageSize: number;
1669
+ successCallback: (rows: SmartGridRowData[], lastRow?: number, lastRowIndexKnown?: boolean) => void;
1670
+ failCallback: (error?: unknown) => void;
1671
+ context?: SmartGridBlockContext;
1672
+ request?: {
1673
+ startRow: number;
1674
+ endRow: number;
1675
+ sortModel?: SmartGridSortModel;
1676
+ filterModel?: SmartGridFilterModel;
1677
+ pageSize: number;
1678
+ groupKeys: string[];
1679
+ };
1680
+ }
1681
+
1682
+ declare interface SmartGridDataSourceParams {
1683
+ startRow: number;
1684
+ endRow: number;
1685
+ successCallback: (rows: SmartGridRowData[], lastRow?: number | null) => void;
1686
+ failCallback: (error: Error) => void;
1687
+ request: RowGroupParams & {
1688
+ groupKeys: unknown[];
1689
+ rowGroupCols: SmartGridColumnDefinition[];
1690
+ startRow: number;
1691
+ endRow: number;
1692
+ };
1693
+ [key: string]: unknown;
1694
+ }
1695
+
1696
+ declare type SmartGridDateFormat = "YYYY-MM-DD" | "DD-MM-YYYY" | "MM-DD-YYYY" | "YYYY/MM/DD" | "DD/MM/YYYY" | "MM/DD/YYYY";
1697
+
1698
+ export declare type SmartGridDateSeparatorFormat = "relative" | "absolute" | "short" | "long";
1699
+
1700
+ export declare interface SmartGridDateSeparatorItem {
1701
+ type: "date-separator";
1702
+ id: string;
1703
+ date: Date;
1704
+ pinned?: boolean;
1705
+ }
1706
+
1707
+ export declare interface SmartGridDateSeparatorProps {
1708
+ date?: Date | string;
1709
+ className?: string;
1710
+ format?: SmartGridDateSeparatorFormat;
1711
+ }
1712
+
1713
+ declare type SmartGridDefaultColDef = {
1714
+ minWidth: number;
1715
+ headerComponentParams?: {
1716
+ innerHeaderComponent: React.FC<SmartGridHeaderStyleParams> | null;
1717
+ };
1718
+ headerComponent?: React.FC<SmartGridHeaderStyleParams> | null;
1719
+ enableCellChangeFlash?: boolean;
1720
+ };
1721
+
1722
+ declare type SmartGridDispatch = (action: {
1723
+ type: string;
1724
+ payload: unknown;
1725
+ meta?: {
1726
+ fromAlignedGrid?: boolean;
1727
+ defaultColDef?: SmartGridDefaultColDef;
1728
+ } | Record<string, unknown>;
1729
+ }) => void;
1730
+
1731
+ declare interface SmartGridDisplayedColumn {
1732
+ colDef: SmartGridColumnDefinition;
1733
+ colId: string;
1734
+ getColId: () => string;
1735
+ isVisible: () => boolean;
1736
+ isPinned: () => SmartGridPinnedType;
1737
+ label: string;
1738
+ }
1739
+
1740
+ declare interface SmartGridDisplayedRowAtIndex {
1741
+ data: SmartGridRowData;
1742
+ rowIndex: number;
1743
+ node: SmartGridParamsNode;
1744
+ api: SmartGridAPI;
1745
+ }
1746
+
1747
+ declare interface SmartGridDisplayedRowNode extends SmartGridRowNode {
1748
+ rowIndex: number;
1749
+ absoluteRowIndex: number;
1750
+ originalData: SmartGridRowData;
1751
+ rowHeight?: number;
1752
+ }
1753
+
1754
+ declare interface SmartGridDisptach {
1755
+ type: string;
1756
+ payload?: unknown;
1757
+ }
1758
+
1759
+ export declare interface SmartGridEditorCommands {
1760
+ toggleBold?: () => void;
1761
+ toggleItalic?: () => void;
1762
+ toggleLink?: () => void;
1763
+ toggleBulletList?: () => void;
1764
+ toggleOrderedList?: () => void;
1765
+ toggleStrike?: () => void;
1766
+ toggleHighlight?: () => void;
1767
+ toggleH1?: () => void;
1768
+ toggleH2?: () => void;
1769
+ toggleH3?: () => void;
1770
+ toggleH4?: () => void;
1771
+ toggleH5?: () => void;
1772
+ toggleH6?: () => void;
1773
+ insertEmoji?: (emoji: string) => void;
1774
+ clearContent?: () => void;
1775
+ editor?: SmartGridTipTapEditor;
1776
+ [key: string]: (() => void) | ((emoji: string) => void) | SmartGridTipTapEditor | undefined;
1777
+ }
1778
+
1779
+ export declare interface SmartGridEditorToolbarProps {
1780
+ editor: SmartGridEditorCommands | null;
1781
+ activeStates?: Record<SmartGridToolbarItemKey, boolean>;
1782
+ enabledItems?: SmartGridToolbarItemKey[];
1783
+ onFileSelect?: (e: ChangeEvent<HTMLInputElement>) => void;
1784
+ onImageSelect?: (e: ChangeEvent<HTMLInputElement>) => void;
1785
+ onEmojiSelect?: (e: React.MouseEvent<HTMLButtonElement>) => void;
1786
+ className?: string;
1787
+ }
1788
+
1789
+ export declare interface SmartGridEditorToolbarRef {
1790
+ fileInput?: HTMLInputElement | null;
1791
+ imageInput?: HTMLInputElement | null;
1792
+ }
1793
+
1794
+ export declare interface SmartGridEmojiObject {
1795
+ emoji: string;
1796
+ }
1797
+
1798
+ export declare interface SmartGridEmojiPickerProps {
1799
+ open?: boolean;
1800
+ onClose?: () => void;
1801
+ onEmojiClick?: (emoji: string) => void;
1802
+ anchorEl?: HTMLElement | null;
1803
+ }
1804
+
1805
+ export declare interface SmartGridEmptyContainerProps {
1806
+ title?: string;
1807
+ subTitle?: string;
1808
+ }
1809
+
1810
+ declare interface SmartGridEvent {
1811
+ type: string;
1812
+ api?: SmartGridAPI;
1813
+ [key: string]: unknown;
1814
+ }
1815
+
1816
+ declare type SmartGridEventListener = {
1817
+ fn: SmartGridEventListenerFn;
1818
+ once: boolean;
1819
+ };
1820
+
1821
+ declare type SmartGridEventListenerFn = (event: SmartGridEvent) => void;
1822
+
1823
+ declare type SmartGridExpandedChildRows = {
1824
+ childRowsCount: number;
1825
+ rowId: string | number;
1826
+ rowIndex: number;
1827
+ children?: SmartGridRowData[];
1828
+ };
1829
+
1830
+ declare type SmartGridExpandedColumnGroups = {
1831
+ isAllGroupExpanded?: boolean;
1832
+ [key: string]: boolean | undefined;
1833
+ };
1834
+
1835
+ /** Extended filter model with search and column filters */
1836
+ declare interface SmartGridExtendedFilterModel extends SmartGridFilterModel {
1837
+ _search?: SmartGridFilterModel[];
1838
+ _columnFilters?: Record<string, unknown>;
1839
+ }
1840
+
1841
+ declare type SmartGridFetchDataFunctionBody = {
1842
+ range: SmartGridRangeFilter[];
1843
+ search: SmartGridStringFilter[];
1844
+ sort: SmartGridSortModel[];
1845
+ };
1846
+
1847
+ declare interface SmartGridFetchDataResponse {
1848
+ rowData: SmartGridRowData[];
1849
+ lastRow?: number;
1850
+ rowCount?: number;
1851
+ totalCount?: number;
1852
+ }
1853
+
1854
+ /** Fetch function ref type */
1855
+ declare interface SmartGridFetchFunctionRef {
1856
+ current?: SmartGridFetDataParams | null;
1857
+ }
1858
+
1859
+ export declare type SmartGridFetchMoreFn<T> = (page: number) => Promise<T[] | null | undefined>;
1860
+
1861
+ /** Fetch response */
1862
+ declare interface SmartGridFetchResponse {
1863
+ data?: SmartGridRowData[];
1864
+ rowCount?: number;
1865
+ totalItems?: number;
1866
+ total?: number;
1867
+ lastRow?: number;
1868
+ lastRowIndexKnown?: boolean;
1869
+ }
1870
+
1871
+ declare type SmartGridFetDataParams = (body: SmartGridFetchDataFunctionBody, page: number, context?: SmartGridDataSourceContext, pageNum?: number, options?: {
1872
+ pageSize: number;
1873
+ }) => Promise<SmartGridFetchResponse & {
1874
+ totalCount?: number | null;
1875
+ }>;
1876
+
1877
+ export declare interface SmartGridFileUploaderProps {
1878
+ file?: File | null;
1879
+ fileUrl?: string | null;
1880
+ isLoading?: boolean;
1881
+ isError?: boolean;
1882
+ errorMessage?: string;
1883
+ onClear?: () => void;
1884
+ onRetry?: () => void;
1885
+ onDownload?: (url: string, fileName: string) => void;
1886
+ }
1887
+
1888
+ declare interface SmartGridFilterModel {
1889
+ pattern: string;
1890
+ search_type: string;
1891
+ column?: string;
1892
+ field?: string;
1893
+ min_val?: number;
1894
+ max_val?: number;
1895
+ type?: string;
1896
+ operator?: string;
1897
+ value?: string;
1898
+ operators?: SmartGridSearchOperatorOption[];
1899
+ [key: string]: unknown;
1900
+ }
1901
+
1902
+ /**
1903
+ * Parameters for flashCells API (AG Grid compatible)
1904
+ */
1905
+ declare interface SmartGridFlashCellsParams {
1906
+ /** Optional list of row nodes to flash. If not provided with columns, nothing flashes. */
1907
+ rowNodes?: SmartGridRowNode[];
1908
+ /** Optional list of column IDs to flash. If not provided with rowNodes, nothing flashes. */
1909
+ columns?: string[];
1910
+ /** Duration of the flash in milliseconds. Default: 500 */
1911
+ flashDuration?: number;
1912
+ /** Duration of the fade animation in milliseconds. Default: 500 */
1913
+ fadeDuration?: number;
1914
+ /** Custom CSS class to apply during flash */
1915
+ flashCssClass?: string;
1916
+ /** Custom CSS class to apply during fade */
1917
+ fadeCssClass?: string;
1918
+ }
1919
+
1920
+ declare type SmartGridFloatingType = "top" | "bottom" | null;
1921
+
1922
+ declare interface SmartGridFocusedCell extends SmartGridSelectedCell {
1923
+ floating: SmartGridFloatingType;
1924
+ }
1925
+
1926
+ export declare interface SmartGridFormatActiveState {
1927
+ bold: boolean;
1928
+ italic: boolean;
1929
+ link: boolean;
1930
+ bulletList: boolean;
1931
+ orderedList: boolean;
1932
+ strike: boolean;
1933
+ highlight: boolean;
1934
+ h1: boolean;
1935
+ h2: boolean;
1936
+ h3: boolean;
1937
+ h4: boolean;
1938
+ h5: boolean;
1939
+ h6: boolean;
1940
+ }
1941
+
1942
+ declare type SmartGridFrozenColumnsDetails = {
1943
+ indexes: string[];
1944
+ positions: Record<string, number>;
1945
+ totalWidth: number;
1946
+ rightPinned: {
1947
+ indexes: string[];
1948
+ positions: Record<string, number>;
1949
+ totalWidth: number;
1950
+ };
1951
+ };
1952
+
1953
+ declare type SmartGridFrozenState = "left" | "right" | boolean | null | undefined;
1954
+
1955
+ declare interface SmartGridGetRowDataParams {
1956
+ data: SmartGridRowData;
1957
+ rowIndex?: number;
1958
+ node: SmartGridParamsNode;
1959
+ api: SmartGridAPI;
1960
+ }
1961
+
1962
+ /** Request params for getRows */
1963
+ declare interface SmartGridGetRowsRequestParams {
1964
+ startRow: number;
1965
+ endRow: number;
1966
+ pageSize: number;
1967
+ sortModel?: SmartGridSortModel;
1968
+ filterModel?: SmartGridExtendedFilterModel;
1969
+ successCallback: (rows: SmartGridRowData[], lastRow?: number, lastRowIndexKnown?: boolean) => void;
1970
+ failCallback: (error?: unknown) => void;
1971
+ context?: SmartGridDataSourceContext;
1972
+ request?: {
1973
+ startRow: number;
1974
+ endRow: number;
1975
+ sortModel?: SmartGridSortModel;
1976
+ filterModel?: SmartGridFilterModel;
1977
+ pageSize: number;
1978
+ groupKeys: string[];
1979
+ };
1980
+ }
1981
+
1982
+ export declare type SmartGridGroupedMessageItem = (SmartGridChatMessage & {
1983
+ type?: "default" | "deleted" | "edited" | string;
1984
+ }) | SmartGridDateSeparatorItem;
1985
+
1986
+ export declare interface SmartGridHandleToastFn {
1987
+ (isOpen: boolean, message?: string, variant?: SmartGridToastVariant): void;
1988
+ }
1989
+
1990
+ export declare interface SmartGridHeaderChatConfig {
1991
+ participants: SmartGridParticipant[];
1992
+ participantsList: SmartGridParticipant[];
1993
+ headerConfig: SmartGridHeaderConfig;
1994
+ notificationSettings: SmartGridNotificationSettings;
1995
+ loadParticipants: (radioValue: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1996
+ loadParticipantsAvatar: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
1997
+ loadMenuOptions: () => Promise<SmartGridParticipant[]>;
1998
+ onParticipantsClick: (radioValue: string | number) => Promise<SmartGridParticipant[]>;
1999
+ onParticipantAdd: (participantIds: (string | number)[], selectedRadioOption: string, chatId: string | number) => Promise<{
2000
+ success: boolean;
2001
+ participant: SmartGridParticipant;
2002
+ } | null>;
2003
+ onParticipantRemove: (participant: SmartGridParticipant) => Promise<{
2004
+ success: boolean;
2005
+ participant: SmartGridParticipant;
2006
+ }>;
2007
+ onPinnedClick: (chatId: string | number) => Promise<SmartGridChatMessage[]>;
2008
+ onPinnedChatClick: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
2009
+ onChatClick: (chatId: string | number, channelId?: string | number | null) => Promise<void>;
2010
+ onSearchChange: (value: string, radioValue?: string, chatId?: string | number) => Promise<SmartGridParticipant[]>;
2011
+ onNotificationSettingChange: (settings: SmartGridNotificationSettings) => Promise<{
2012
+ success: boolean;
2013
+ settings: SmartGridNotificationSettings;
2014
+ } | void>;
2015
+ }
2016
+
2017
+ export declare interface SmartGridHeaderConfig {
2018
+ showSearch?: boolean;
2019
+ showParticipants?: boolean;
2020
+ showPinned?: boolean;
2021
+ showNotifications?: boolean;
2022
+ selectedRadioOptionMenu?: string;
2023
+ maxAvatars?: number;
2024
+ radioOptions?: SmartGridChatRadioOption[];
2025
+ searchConfig?: SmartGridSearchConfig;
2026
+ }
2027
+
2028
+ declare type SmartGridHeaderRowHeight = {
2029
+ maxHeight: number;
2030
+ maxLineCount: number;
2031
+ };
2032
+
2033
+ declare type SmartGridHeaderStyleParams = {
2034
+ column: SmartGridColumnDefinition;
2035
+ displayName: string;
2036
+ enableSorting: boolean;
2037
+ sortState: SmartGridSortModel;
2038
+ onSort: (field: string, direction: string) => void;
2039
+ isSearchable?: boolean;
2040
+ showSortIcon: boolean;
2041
+ toggleSearchModal: (e: default_2.MouseEvent<HTMLElement>) => void;
2042
+ hasFilters: boolean;
2043
+ isExpandable?: boolean;
2044
+ onToggle?: (field: string, isExpandable: boolean) => void;
2045
+ api: SmartGridAPI;
2046
+ availableWidth: number;
2047
+ wrapHeaderText: boolean;
2048
+ menuButtonRef: default_2.RefObject<HTMLDivElement>;
2049
+ menuToggle: (e: default_2.MouseEvent<HTMLElement>) => void;
2050
+ toggleAdvancedSeach: default_2.Dispatch<default_2.SetStateAction<boolean>>;
2051
+ };
2052
+
2053
+ export declare interface SmartGridImageUploaderProps {
2054
+ image?: string | null;
2055
+ isLoading?: boolean;
2056
+ isError?: boolean;
2057
+ handleClear?: () => void;
2058
+ handleRetry?: () => void;
2059
+ }
2060
+
2061
+ declare interface SmartGridInfiniteCache {
2062
+ analytics: SmartGridCacheAnalytics;
2063
+ blockCount: number;
2064
+ blocks: Record<number, SmartGridCacheBlock>;
2065
+ eventListeners: Record<"cacheUpdated", Function[]>;
2066
+ lastRequestedPage: number;
2067
+ lastRowIndexKnown: boolean;
2068
+ params: SmartGridInfiniteCacheParams;
2069
+ rowCount: number;
2070
+ _currentRequestedPage: number;
2071
+ getAllCachedData: () => SmartGridRowData[];
2072
+ updatePageData?: (page: number, data: SmartGridRowData[], replace: boolean, options?: {
2073
+ isRefreshData?: boolean;
2074
+ }) => void;
2075
+ purgeCache?: (options?: {
2076
+ isRefreshData?: boolean;
2077
+ }) => void;
2078
+ getTotalCachedRowCount?: () => number;
2079
+ printAllCachedData?: () => void;
2080
+ setViewportRange?: (start: number, end: number) => void;
2081
+ updateWholeData: (wholeData: SmartGridRowData[], pageSize?: number) => void;
2082
+ getBlockData: (blockId: number) => (SmartGridRowData | null)[] | null;
2083
+ }
2084
+
2085
+ declare type SmartGridInfiniteCacheDataSourceParams = {
2086
+ getWholeData: () => SmartGridRowData[];
2087
+ updateData?: (state: SmartGridStateContext, data: SmartGridRowData[], rowId?: string, rowIndex?: number) => void;
2088
+ _cacheInjected: boolean;
2089
+ _isDestroyed: boolean;
2090
+ _loadingBlocks: Record<string, unknown>;
2091
+ _originalDatasource: {
2092
+ getRows: (params: SmartGridDataSourceParams) => void;
2093
+ };
2094
+ _pendingRAFs: number[];
2095
+ _pendingRequests: Record<string, unknown>;
2096
+ infiniteCache: SmartGridInfiniteCache;
2097
+ destroy: () => void;
2098
+ getRows: (params: SmartGridDataSourceParams) => void;
2099
+ updateCacheReference: (cache: SmartGridInfiniteCache) => void;
2100
+ updateWholeData: (wholeData: SmartGridRowData[], pageSize?: number) => void;
2101
+ };
2102
+
2103
+ /** Infinite cache interface (forward declaration) */
2104
+ declare interface SmartGridInfiniteCacheInterface {
2105
+ rowsMaxIndex?: number;
2106
+ _currentRequestedPage?: number;
2107
+ isLastRowIndexKnown: () => boolean;
2108
+ getRowCount: () => number;
2109
+ pageLoaded: (block: InfiniteBlock, lastRow?: number) => void;
2110
+ getBlock: (blockId: number) => InfiniteBlock | undefined;
2111
+ isBlockInCreationQueue: (blockId: number) => boolean;
2112
+ createBlock: (blockId: number) => InfiniteBlock;
2113
+ setRowCount?: (count: number, lastRowIndexKnown: boolean) => void;
2114
+ }
2115
+
2116
+ declare interface SmartGridInfiniteCacheParams {
2117
+ datasource: SmartGridInfiniteCacheDataSourceParams;
2118
+ updatedPageSizeRef: MutableRefObject<number>;
2119
+ pageSize: number;
2120
+ overflowSize: number;
2121
+ }
2122
+
2123
+ declare interface SmartGridInfiniteCacheReturn {
2124
+ cacheReady: boolean;
2125
+ shouldUseCacheRef: MutableRefObject<boolean>;
2126
+ getRows: (startRow: number, endRow: number) => SmartGridRowData[];
2127
+ setVisibleRange: (startRow: number, endRow: number) => void;
2128
+ setSortModel: (sortModel: SmartGridSortModel) => void;
2129
+ setFilterModel: (filterModel: SmartGridFilterModel | Record<string, unknown>, options?: Record<string, unknown>) => void;
2130
+ refreshCache: (options?: SmartGridRefreshCacheOptions) => void;
2131
+ setServerSideDataSource: (datasource: SmartGridServerSideDataSource, resetCache?: boolean) => SmartGridWrappedDataSource | null;
2132
+ setPurgeStrategy: (strategy: string) => void;
2133
+ setPersistence: (enabled: boolean, options?: Record<string, unknown>) => void;
2134
+ clearPersistedCache: () => void;
2135
+ getCacheState: () => SmartGridCacheStateReturn | null;
2136
+ modelRef: MutableRefObject<SmartGridInfiniteRowModelRef | null>;
2137
+ dataSourceRef?: MutableRefObject<SmartGridWrappedDataSource | null>;
2138
+ setVisibleData?: (data: SmartGridRowData[]) => void;
2139
+ getAllCachedData?: () => SmartGridRowData[];
2140
+ }
2141
+
2142
+ declare interface SmartGridInfiniteRowModel {
2143
+ infiniteCache?: SmartGridInfiniteCache;
2144
+ setViewportRange?: (startRow: number, endRow: number) => void;
2145
+ logCacheSummary?: () => void;
2146
+ datasource: {
2147
+ getWholeData: () => SmartGridRowData[];
2148
+ };
2149
+ [key: string]: unknown;
2150
+ }
2151
+
2152
+ declare interface SmartGridInfiniteRowModelRef {
2153
+ infiniteCache?: SmartGridInfiniteCache;
2154
+ params?: {
2155
+ context?: unknown;
2156
+ filterModel?: SmartGridFilterModel | Record<string, unknown>;
2157
+ sortModel?: SmartGridSortModel | null;
2158
+ [key: string]: unknown;
2159
+ };
2160
+ setViewportRange?: (startRow: number, endRow: number) => void;
2161
+ logCacheSummary?: () => void;
2162
+ setDatasource?: (datasource: unknown, preserveCache?: boolean) => void;
2163
+ setSortModel?: (sortModel: SmartGridSortModel) => void;
2164
+ setFilterModel?: (filterModel: SmartGridFilterModel | {
2165
+ _search: SmartGridSearchFunctionParams;
2166
+ } | Record<string, unknown>, options?: Record<string, unknown>) => void;
2167
+ purgeCache?: () => void;
2168
+ refreshCache?: () => void;
2169
+ refreshCachePartial?: (preserveFields: string[]) => void;
2170
+ resetCache?: () => void;
2171
+ setPurgeStrategy?: (strategy: string) => void;
2172
+ setCachePersistence?: (enabled: boolean, options?: Record<string, unknown>) => void;
2173
+ clearPersistedCache?: () => void;
2174
+ getCacheState?: () => SmartGridCacheStateReturn;
2175
+ getCacheAnalytics?: () => SmartGridCacheAnalyticsData | null;
2176
+ getMemoryUsageEstimate?: () => number;
2177
+ resetCacheAnalytics?: () => void;
2178
+ datasource?: SmartGridDataSourceContext;
2179
+ getRow?: (index: number) => {
2180
+ data: SmartGridRowData;
2181
+ } | null;
2182
+ }
2183
+
2184
+ export declare interface SmartGridInfiniteScrollOptions {
2185
+ threshold?: number;
2186
+ rootMargin?: string;
2187
+ enabled?: boolean;
2188
+ isRestoringScroll?: MutableRefObject<boolean> | null;
2189
+ }
2190
+
2191
+ export declare interface SmartGridInfiniteScrollReturn {
2192
+ loadMoreRef: RefObject<HTMLDivElement>;
2193
+ isLoading: boolean;
2194
+ hasMore: boolean;
2195
+ error: Error | null;
2196
+ loadMore: () => Promise<void>;
2197
+ reset: () => void;
2198
+ updateHasMore: (newHasMore: boolean) => void;
2199
+ updateCurrentPage: (newPage: number) => void;
2200
+ currentPage: number;
2201
+ }
2202
+
2203
+ export declare interface SmartGridInputChatConfig {
2204
+ inputConfig: SmartGridInputConfig;
2205
+ onSend: (payload: SmartGridSendPayload, chatId: string | number) => Promise<SmartGridChatMessage | {
2206
+ success: boolean;
2207
+ message: string;
2208
+ }>;
2209
+ onMessageReply: (messageId: string | number, chatId: string | number) => void;
2210
+ onMessageBookmark: (messageId: string | number, chatId: string | number) => void;
2211
+ onMessageMore: (messageId: string | number, chatId: string | number) => void;
2212
+ onAttachFile: (file: File) => void;
2213
+ onImageUpload: (image: File) => void;
2214
+ onEmojiSelect: (emoji: string) => void;
2215
+ }
2216
+
2217
+ export declare interface SmartGridInputConfig {
2218
+ placeholder?: string;
2219
+ maxLength?: number;
2220
+ showFormatting?: boolean;
2221
+ showEmojiPicker?: boolean;
2222
+ showAttachments?: boolean;
2223
+ allowedFileTypes?: string[];
2224
+ }
2225
+
2226
+ declare type SmartGridInputType = "text" | "password" | "email" | "number" | "tel" | "int" | "url";
2227
+
2228
+ declare interface SmartGridInternalGetRowsParams {
2229
+ startRow: number;
2230
+ endRow: number;
2231
+ filterModel?: SmartGridFilterModel | null;
2232
+ sortModel?: SmartGridSortModel | null;
2233
+ request?: Record<string, unknown>;
2234
+ successCallback?: (rowData: SmartGridRowData[], lastRow?: number) => void;
2235
+ failCallback?: () => void;
2236
+ noDataUpdate?: boolean;
2237
+ }
2238
+
2239
+ /** Last accessed sequence generator */
2240
+ declare interface SmartGridLastAccessedSequence {
2241
+ value: number;
2242
+ next: () => number;
2243
+ }
2244
+
2245
+ /** Last accessed sequence generator */
2246
+ declare interface SmartGridLastAccessedSequence_2 {
2247
+ value: number;
2248
+ next: () => number;
2249
+ }
2250
+
2251
+ export declare interface SmartGridLeftChatPanel {
2252
+ showCheckbox?: boolean;
2253
+ }
2254
+
2255
+ export declare interface SmartGridLeftHeaderPanel {
2256
+ showAddChat?: boolean;
2257
+ showCheckbox?: boolean;
2258
+ }
2259
+
2260
+ export declare interface SmartGridLeftPanelConfig {
2261
+ leftHeaderPanel: SmartGridLeftHeaderPanel;
2262
+ leftChatPanel: SmartGridLeftChatPanel;
2263
+ rightHeaderPanel: SmartGridRightHeaderPanel;
2264
+ loadChannelsList: () => Promise<SmartGridChannel[]>;
2265
+ loadChatList: (selectedChannelInfo: SmartGridChannel) => Promise<SmartGridChat[]>;
2266
+ handleChatName: (formData: SmartGridChatFormData, selectedChannelId: SmartGridChannel | null) => Promise<SmartGridCreateChatResponse>;
2267
+ deleteChat: (topicId: string | number) => Promise<{
2268
+ success: boolean;
2269
+ topicId: string | number;
2270
+ }>;
2271
+ directChatList: SmartGridChat[];
2272
+ hasDirectChatList: boolean;
2273
+ selectedChatId?: string | number;
2274
+ clearDirectChatList: () => void;
2275
+ }
2276
+
2277
+ export declare interface SmartGridMentionCommand {
2278
+ id: string;
2279
+ label: string;
2280
+ }
2281
+
2282
+ export declare interface SmartGridMentionConfig {
2283
+ chatId?: string | number;
2284
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
2285
+ }
2286
+
2287
+ export declare interface SmartGridMentionEditorProps {
2288
+ value?: string;
2289
+ onChange?: (html: string) => void;
2290
+ onSend?: () => void;
2291
+ disabled?: boolean;
2292
+ maxLength?: number;
2293
+ placeholder?: string;
2294
+ chatId?: string | number;
2295
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
2296
+ }
2297
+
2298
+ export declare interface SmartGridMentionEditorRef {
2299
+ toggleBold: () => void;
2300
+ toggleItalic: () => void;
2301
+ toggleLink: () => void;
2302
+ addImage: (url: string, alt?: string) => void;
2303
+ getHTML: () => string;
2304
+ getJSON: () => Record<string, unknown> | undefined;
2305
+ clearContent: () => void;
2306
+ isEmpty: () => boolean;
2307
+ insertEmoji: (emoji: string) => void;
2308
+ toggleStrike: () => void;
2309
+ toggleHighlight: () => boolean | undefined;
2310
+ toggleBulletList: () => void;
2311
+ toggleOrderedList: () => void;
2312
+ toggleH1: () => void;
2313
+ toggleH2: () => void;
2314
+ toggleH3: () => void;
2315
+ toggleH4: () => void;
2316
+ toggleH5: () => void;
2317
+ toggleH6: () => void;
2318
+ editor: Editor | null;
2319
+ }
2320
+
2321
+ export declare interface SmartGridMentionInfo {
2322
+ id: string | number;
2323
+ label: string;
2324
+ position: number;
2325
+ }
2326
+
2327
+ export declare interface SmartGridMentionListProps {
2328
+ items: SmartGridMentionUser[];
2329
+ command: (item: SmartGridMentionCommand) => void;
2330
+ }
2331
+
2332
+ export declare interface SmartGridMentionListRef {
2333
+ onKeyDown: (props: SmartGridSuggestionRenderProps) => boolean | undefined;
2334
+ }
2335
+
2336
+ export declare interface SmartGridMentionUser {
2337
+ id: string | number;
2338
+ name: string;
2339
+ avatar?: string;
2340
+ status?: string;
2341
+ }
2342
+
2343
+ export declare interface SmartGridMenuOptionsHeaderCustomProps {
2344
+ searchPlaceholder?: string;
2345
+ selectAllLabel?: string;
2346
+ clearButtonText?: string;
2347
+ radioButtonProps?: Record<string, unknown>;
2348
+ searchInputProps?: Record<string, unknown>;
2349
+ checkboxProps?: Record<string, unknown>;
2350
+ clearButtonProps?: Record<string, unknown>;
2351
+ }
2352
+
2353
+ export declare interface SmartGridMenuOptionsHeaderExternalHandlers {
2354
+ onSearchChange?: (value: string) => void;
2355
+ onSelectAll?: (allValues: (string | number)[]) => void;
2356
+ onClearSelection?: () => void;
2357
+ onRadioButtonChange?: (value: string) => void;
2358
+ }
2359
+
2360
+ export declare interface SmartGridMenuOptionsHeaderOverrideConfig {
2361
+ radioButtonOptions?: SmartGridChatRadioOption[];
2362
+ selectedRadioButton?: string;
2363
+ showRadioButton?: boolean;
2364
+ isSearchable?: boolean;
2365
+ isSelectAllAllowed?: boolean;
2366
+ }
2367
+
2368
+ export declare interface SmartGridMenuOptionsHeaderProps {
2369
+ options?: SmartGridParticipant[];
2370
+ selectedItems?: (string | number)[];
2371
+ onSearchChange?: (value: string) => void;
2372
+ onSelectAll?: (allValues: (string | number)[]) => void;
2373
+ searchQuery?: string;
2374
+ onClearSelection?: () => void;
2375
+ onRadioButtonChange?: (value: string) => void;
2376
+ radioButtonOptions?: SmartGridChatRadioOption[];
2377
+ selectedRadioButton?: string;
2378
+ showRadioButton?: boolean;
2379
+ isSearchable?: boolean;
2380
+ isSelectAllAllowed?: boolean;
2381
+ customHeaderProps?: SmartGridMenuOptionsHeaderCustomProps;
2382
+ externalHandlers?: SmartGridMenuOptionsHeaderExternalHandlers;
2383
+ overrideConfig?: SmartGridMenuOptionsHeaderOverrideConfig;
2384
+ }
2385
+
2386
+ export declare interface SmartGridMessageAction {
2387
+ icon: React.ReactNode | null;
2388
+ handler?: (messageId: string | number) => void;
2389
+ ariaLabel: string;
2390
+ }
2391
+
2392
+ export declare type SmartGridMessageActionKey = "reply" | "bookmark" | "pin" | "more";
2393
+
2394
+ export declare interface SmartGridMessageChatConfig {
2395
+ realTimeMessages: SmartGridChatMessage[];
2396
+ isWebSocketConnected: boolean;
2397
+ currentTopicId: string | number | null;
2398
+ isThreadIconVisible: boolean;
2399
+ isPinChatIconVisible: boolean;
2400
+ emptyChannelStateTitle: string;
2401
+ emptyChannelStateSubTitle: string;
2402
+ emptyChatStateTitle: string;
2403
+ emptyChatStateSubTitle: string;
2404
+ currentUserId: string | number | null;
2405
+ selectedMessageId: string | number | null;
2406
+ maxSearchPages: number;
2407
+ highlightDuration: number;
2408
+ scrollBehavior: ScrollBehavior;
2409
+ scrollBlock: ScrollLogicalPosition;
2410
+ highlightColor: string;
2411
+ messageConfig: SmartGridMessageConfig;
2412
+ onRealTimeMessageUpdate: (newMessage: SmartGridChatMessage) => void;
2413
+ onMessageReply: (messageId: string | number, message: SmartGridChatMessage) => void;
2414
+ onMessageBookmark: (messageId: string | number, message: SmartGridChatMessage) => void;
2415
+ onMessagePin: (messageId: string | number, isPinned: boolean, chatId: string | number, item: SmartGridChatMessage) => Promise<SmartGridChatMessage | boolean | undefined>;
2416
+ onMessageUpdate: (messageId: string | number, updatedData: Partial<SmartGridChatMessage>) => Promise<SmartGridChatMessage | {
2417
+ success: boolean;
2418
+ messageId: string | number;
2419
+ updatedData: Partial<SmartGridChatMessage>;
2420
+ }>;
2421
+ onMessageDelete: (messageId: string | number) => Promise<{
2422
+ success: boolean;
2423
+ messageId: string | number;
2424
+ }>;
2425
+ onThreadClick: (messageId: string | number, message: SmartGridChatMessage) => void;
2426
+ loadThreadMessages: (parentMessageId: string | number) => Promise<SmartGridChatMessage[]>;
2427
+ loadPinnedMsg: () => Promise<SmartGridChatMessage[]>;
2428
+ onSearchMessage: (value: string, chatId: string | number) => Promise<SmartGridChatMessage[]>;
2429
+ leaveCurrentTopic: () => void;
2430
+ markTopicAsDeleted: (topicId: string | number) => void;
2431
+ onClearAllMessages: (chatId?: string | number) => void;
2432
+ }
2433
+
2434
+ export declare interface SmartGridMessageConfig {
2435
+ showActions?: boolean;
2436
+ priorityOptions?: SmartGridPriorityOption[];
2437
+ quickActionProps?: SmartGridQuickActionProp[];
2438
+ isMsgFormat?: boolean;
2439
+ }
2440
+
2441
+ export declare interface SmartGridMessageItemProps {
2442
+ type?: SmartGridPinnedPanelType;
2443
+ msg?: SmartGridPinnedMessageItem;
2444
+ onMessageClick?: (messageId: string | number) => void;
2445
+ }
2446
+
2447
+ export declare type SmartGridMessagePriority = "default" | "normal" | "low" | "medium" | "high";
2448
+
2449
+ declare type SmartGridModelType = "normal" | "serverSide" | "infinite";
2450
+
2451
+ export declare interface SmartGridMoreAvatarProps {
2452
+ count: number;
2453
+ size?: SmartGridAvatarSize;
2454
+ }
2455
+
2456
+ declare interface SmartGridNewSortModel {
2457
+ column: string | null;
2458
+ order: SmartGridSortDirection | null;
2459
+ }
2460
+
2461
+ /**
2462
+ * SmartGridNoCommentsProps - Props for NoComments component
2463
+ */
2464
+ export declare interface SmartGridNoCommentsProps {
2465
+ onAddComment?: (cellId: string | number, inputValue: string, taggedUsers?: SmartGridCommentTaggedUser[]) => void | Promise<void>;
2466
+ cellId?: string | number;
2467
+ position?: SmartGridCommentPopupPosition;
2468
+ isInsidePortal?: boolean;
2469
+ editCommentText?: string;
2470
+ isLoading?: boolean;
2471
+ error?: string | null;
2472
+ onClearError?: () => void;
2473
+ isEditFlow?: boolean;
2474
+ onUpdateComment?: (text: string) => void;
2475
+ setEditingComment?: React.Dispatch<React.SetStateAction<SmartGridComment | null>>;
2476
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
2477
+ }
2478
+
2479
+ declare interface SmartGridNotification {
2480
+ message: string;
2481
+ type?: "success" | "error" | "warning" | "info";
2482
+ duration?: number;
2483
+ timeout?: number;
2484
+ }
2485
+
2486
+ export declare interface SmartGridNotificationSettings {
2487
+ notificationSetting?: string;
2488
+ includeChannelMentions?: boolean;
2489
+ muteChannel?: boolean;
2490
+ channelName?: string;
2491
+ }
2492
+
2493
+ declare type SmartGridNumberFormat = "full" | "thousands" | "millions" | "billions";
2494
+
2495
+ declare interface SmartGridOldSortModel {
2496
+ colId: string;
2497
+ sort: SmartGridSortDirection;
2498
+ }
2499
+
2500
+ export declare type SmartGridOnMessagePin = (messageId: string | number, pinned: boolean, chatId: string | number, item: SmartGridChatMessage) => Promise<SmartGridChatMessage | boolean | undefined>;
2501
+
2502
+ declare type SmartGridOnSelectionChangedParams = {
2503
+ api: SmartGridAPI;
2504
+ type: string;
2505
+ source: string;
2506
+ };
2507
+
2508
+ declare interface SmartGridOptions {
2509
+ [key: string]: unknown;
2510
+ }
2511
+
2512
+ /** Page size ref */
2513
+ declare interface SmartGridPageSizeRef {
2514
+ current: number;
2515
+ }
2516
+
2517
+ /** Page size ref */
2518
+ declare interface SmartGridPageSizeRef_2 {
2519
+ current: number;
2520
+ }
2521
+
2522
+ declare interface SmartGridPaginationAPI {
2523
+ paginationGetPageSize: () => number;
2524
+ paginationGetRowCount: () => number;
2525
+ paginationGetCurrentPage: () => number;
2526
+ paginationGetTotalPages: () => number;
2527
+ paginationGoToPage: (pageNumber: number) => void;
2528
+ paginationGoToFirstPage: () => void;
2529
+ paginationGoToLastPage: () => void;
2530
+ paginationGoToNextPage: () => void;
2531
+ paginationGoToPreviousPage: () => void;
2532
+ paginationIsLastPageFound: () => boolean;
2533
+ }
2534
+
2535
+ declare interface SmartGridPaginationModel {
2536
+ currentPage: number;
2537
+ pageSize: number;
2538
+ totalPages: number;
2539
+ totalRecords: number;
2540
+ }
2541
+
2542
+ declare interface SmartGridParamsNode {
2543
+ rowIndex: number;
2544
+ data: SmartGridRowData;
2545
+ api: SmartGridAPI;
2546
+ }
2547
+
2548
+ /**
2549
+ * ParticipantObject - Represents a chat participant
2550
+ * @see MDX Documentation: Data Structures > ParticipantObject
2551
+ */
2552
+ export declare interface SmartGridParticipant {
2553
+ id: string | number;
2554
+ label: string;
2555
+ value: string | number;
2556
+ name?: string;
2557
+ role?: string;
2558
+ url?: string;
2559
+ status?: "online" | "offline";
2560
+ isPinned?: boolean;
2561
+ avatar?: string;
2562
+ otherProps?: {
2563
+ user_name: string;
2564
+ user_code: string | number;
2565
+ email: string;
2566
+ user_image?: string;
2567
+ };
2568
+ }
2569
+
2570
+ /** Pending request with abort capability */
2571
+ declare interface SmartGridPendingRequest {
2572
+ abort?: () => void;
2573
+ }
2574
+
2575
+ /** Persistence options for cache */
2576
+ declare interface SmartGridPersistenceOptions {
2577
+ maxPersistedBlocks: number;
2578
+ persistBlockData: boolean;
2579
+ compressionEnabled: boolean;
2580
+ }
2581
+
2582
+ export declare interface SmartGridPinnedMessageItem {
2583
+ id?: string | number;
2584
+ userInitials?: string;
2585
+ src?: string;
2586
+ senderName?: string;
2587
+ timestamp?: string;
2588
+ content?: string | React.ReactNode;
2589
+ quote?: string | React.ReactNode;
2590
+ edited?: boolean;
2591
+ type?: string;
2592
+ deleted?: boolean;
2593
+ }
2594
+
2595
+ export declare interface SmartGridPinnedPanelProps {
2596
+ type?: SmartGridPinnedPanelType;
2597
+ messages?: SmartGridPinnedMessageItem[];
2598
+ onClose?: () => void;
2599
+ onMessageClick?: (messageId: string | number) => void;
2600
+ handleToast?: SmartGridHandleToastFn;
2601
+ }
2602
+
2603
+ export declare type SmartGridPinnedPanelType = "pinned" | "thread";
2604
+
2605
+ declare type SmartGridPinnedType = "leftPinned" | "rightPinned" | null;
2606
+
2607
+ export declare interface SmartGridPriorityMenuOption {
2608
+ id?: string;
2609
+ label?: string;
2610
+ value?: string;
2611
+ icon?: React.ReactNode;
2612
+ onClick?: (data: SmartGridPriorityMenuOption) => void;
2613
+ }
2614
+
2615
+ export declare interface SmartGridPriorityOption {
2616
+ id: string | number;
2617
+ value: string;
2618
+ label: string | number;
2619
+ icon?: React.ReactNode;
2620
+ onClick?: (value: string | number) => void;
2621
+ }
2622
+
2623
+ export declare interface SmartGridQuickActionOption {
2624
+ id?: string;
2625
+ label?: string;
2626
+ value?: string;
2627
+ icon?: React.ReactNode;
2628
+ onClick?: (data: SmartGridQuickActionOption) => void;
2629
+ prefillText?: string;
2630
+ }
2631
+
2632
+ export declare interface SmartGridQuickActionProp {
2633
+ id: string | number;
2634
+ value: string;
2635
+ label: string | number;
2636
+ prefillText?: string;
2637
+ icon?: React.ReactNode;
2638
+ onClick?: (value: string | number) => void;
2639
+ }
2640
+
2641
+ declare type SmartGridRangeFilter = {
2642
+ column: string;
2643
+ min_val: number;
2644
+ max_val: number;
2645
+ search_type: string;
2646
+ operator?: string;
2647
+ };
2648
+
2649
+ /**
2650
+ * Parameters for redrawRows API (AG Grid compatible)
2651
+ */
2652
+ declare interface SmartGridRedrawRowsParams {
2653
+ /** Optional list of row nodes to redraw. If not provided, all rows are redrawn */
2654
+ rowNodes?: SmartGridRowNode[];
2655
+ }
2656
+
2657
+ declare interface SmartGridRefreshCacheOptions {
2658
+ purge?: boolean;
2659
+ partialRefresh?: boolean;
2660
+ preserveFields?: string[];
2661
+ userInitiated?: boolean;
2662
+ }
2663
+
2664
+ /**
2665
+ * Parameters for refreshCells API (AG Grid compatible)
2666
+ */
2667
+ declare interface SmartGridRefreshCellsParams {
2668
+ /** Optional list of row nodes to refresh. If not provided, all rows are refreshed. */
2669
+ rowNodes?: SmartGridRowNode[];
2670
+ /** Optional list of column IDs to refresh. If not provided, all columns are refreshed. */
2671
+ columns?: string[];
2672
+ /** If true, forces refresh even if the cell value hasn't changed. Default: false */
2673
+ force?: boolean;
2674
+ /** If true, suppresses the flash animation. Default: false */
2675
+ suppressFlash?: boolean;
2676
+ }
2677
+
2678
+ declare interface SmartGridRefreshOptions {
2679
+ purge?: boolean;
2680
+ resetPage?: boolean;
2681
+ userInitiated?: boolean;
2682
+ resetFilters?: boolean;
2683
+ }
2684
+
2685
+ export declare interface SmartGridReplyBadgeProps {
2686
+ text?: string;
2687
+ action?: string;
2688
+ onReplyClick?: () => void;
2689
+ onActionClick?: () => void;
2690
+ className?: string;
2691
+ showIcon?: boolean;
2692
+ }
2693
+
2694
+ /** Response metadata */
2695
+ declare interface SmartGridResponseMetadata {
2696
+ totalCount?: number;
2697
+ lastRowIndexKnown?: boolean;
2698
+ }
2699
+
2700
+ export declare interface SmartGridRightHeaderPanel {
2701
+ showParticipants?: boolean;
2702
+ showPinnedChat?: boolean;
2703
+ showChatSearch?: boolean;
2704
+ showActionBtn?: boolean;
2705
+ }
2706
+
2707
+ export declare interface SmartGridRightPanelConfig {
2708
+ loadMessages: (chatId: string | number, page?: number) => Promise<SmartGridChatMessage[]>;
2709
+ loadOlderMessages: (channelId: string | number) => Promise<SmartGridChatMessage[]>;
2710
+ messagesClearedTrigger?: number;
2711
+ }
2712
+
2713
+ declare interface SmartGridRowData {
2714
+ [key: string]: unknown;
2715
+ id?: string | number;
2716
+ isChildRow?: boolean;
2717
+ isChildGroup?: boolean;
2718
+ childIndex?: number;
2719
+ groupingLevel?: number;
2720
+ level?: number;
2721
+ parentRowIndex?: number;
2722
+ parentRowData?: SmartGridRowData;
2723
+ __parentPath?: string;
2724
+ _rowHeight?: number;
2725
+ _isPinnedTop?: boolean;
2726
+ _isPinnedBottom?: boolean;
2727
+ __isAggregationRow?: boolean;
2728
+ subTotalAggreRow?: boolean;
2729
+ grandTotalAggreRow?: boolean;
2730
+ isGrandTotalRow?: boolean;
2731
+ __parentId?: string | number | null;
2732
+ __rowSpanInfo?: SmartGridRowSpanInfo;
2733
+ __flattenedRowId?: string;
2734
+ __rowIndex?: number;
2735
+ __split?: {
2736
+ key?: string;
2737
+ };
2738
+ }
2739
+
2740
+ /**
2741
+ * Transaction object for applyTransaction API (AG Grid compatible)
2742
+ */
2743
+ declare interface SmartGridRowDataTransaction {
2744
+ /** Rows to add */
2745
+ add?: SmartGridRowData[];
2746
+ /** Index position to add rows at. If not provided, rows are added at the end */
2747
+ addIndex?: number;
2748
+ /** Rows to remove. Only the row ID field is required */
2749
+ remove?: SmartGridRowData[];
2750
+ /** Rows to update. The row ID field is used to match rows */
2751
+ update?: SmartGridRowData[];
2752
+ }
2753
+
2754
+ declare interface SmartGridRowDragEndParams {
2755
+ api: SmartGridAPI;
2756
+ type: "rowDragEnd";
2757
+ fromIndex: number;
2758
+ toIndex: number;
2759
+ rowData: SmartGridRowData;
2760
+ }
2761
+
2762
+ declare interface SmartGridRowDragStartParams {
2763
+ api: SmartGridAPI;
2764
+ type: "rowDragStart";
2765
+ rowIndex: number;
2766
+ rowData: SmartGridRowData;
2767
+ }
2768
+
2769
+ declare type SmartGridRowGrouOpenParams = {
2770
+ rowId: string;
2771
+ rowIndex: number;
2772
+ api: SmartGridAPI;
2773
+ isExpanded: boolean;
2774
+ };
2775
+
2776
+ declare type SmartGridRowGroupState = {
2777
+ expandedGroups: Record<string, SmartGridRowGroupStateExpandedGroups>;
2778
+ loadedData: Record<string, SmartGridRowData[]>;
2779
+ loading: Record<string, boolean>;
2780
+ pagination: Record<string, SmartGridRowGroupStatePagination>;
2781
+ cache: {
2782
+ metadata: Record<string, SmartGridCacheMetadata>;
2783
+ expirationTime: number;
2784
+ };
2785
+ api: SmartGridAPI | null;
2786
+ isLoadingSomething: boolean;
2787
+ isAllRowExpanded: boolean;
2788
+ isManuallyChanged: boolean;
2789
+ };
2790
+
2791
+ declare type SmartGridRowGroupStateExpandedGroups = {
2792
+ count: number;
2793
+ fieldName: string;
2794
+ rowIndex: number;
2795
+ value: string;
2796
+ [key: string]: boolean | number | string;
2797
+ };
2798
+
2799
+ declare type SmartGridRowGroupStatePagination = {
2800
+ hasMore: boolean;
2801
+ lastUpdated: number;
2802
+ page: number;
2803
+ pageSize: number;
2804
+ totalItems?: number;
2805
+ totalPages?: number;
2806
+ error?: boolean;
2807
+ };
2808
+
2809
+ declare type SmartGridRowInfo = {
2810
+ isFirst: boolean;
2811
+ span: number;
2812
+ rowIds?: (string | number)[];
2813
+ };
2814
+
2815
+ declare interface SmartGridRowNode extends SmartGridUpdateData {
2816
+ id: string | number;
2817
+ childIndex?: number;
2818
+ selected: boolean;
2819
+ rowIndex?: number;
2820
+ absoluteRowIndex?: number;
2821
+ originalData?: SmartGridRowData;
2822
+ rowHeight?: number;
2823
+ setSelected: (selected: boolean, clearSelection?: boolean) => void | ((value: string | number | boolean) => void);
2824
+ isGroup?: () => boolean;
2825
+ }
2826
+
2827
+ /**
2828
+ * Result of applyTransaction API (AG Grid compatible)
2829
+ */
2830
+ declare interface SmartGridRowNodeTransaction {
2831
+ /** Row nodes that were added */
2832
+ add: SmartGridRowNode[];
2833
+ /** Row nodes that were removed */
2834
+ remove: SmartGridRowNode[];
2835
+ /** Row nodes that were updated */
2836
+ update: SmartGridRowNode[];
2837
+ }
2838
+
2839
+ declare interface SmartGridRowSpanInfo {
2840
+ [key: string]: SmartGridRowInfo | boolean | undefined;
2841
+ isRowSpan?: boolean;
2842
+ Selection?: SmartGridRowInfo;
2843
+ }
2844
+
2845
+ declare type SmartGridRowStyleParams = {
2846
+ api: SmartGridAPI;
2847
+ data: SmartGridRowData;
2848
+ pinned: boolean;
2849
+ node: {
2850
+ rowIndex: number;
2851
+ data: SmartGridRowData;
2852
+ api: SmartGridAPI;
2853
+ pinned: boolean;
2854
+ };
2855
+ };
2856
+
2857
+ declare type SmartGridSavedViewsOptions = {
2858
+ isActive: boolean;
2859
+ isDefaultView: boolean;
2860
+ viewName: string;
2861
+ viewType: "personal" | "global";
2862
+ };
2863
+
2864
+ declare interface SmartGridSaveViewCallbackRefCurrent {
2865
+ handleSetDefaultView?: ((view: SmartGridSavedViewsOptions) => void) | null;
2866
+ handleSavedViewClick?: ((view: SmartGridSavedViewsOptions) => void) | null;
2867
+ handleEditSaveView?: ((updatedData: SmartGridSavedViewsOptions, view: SmartGridSavedViewsOptions) => void) | null;
2868
+ handleSaveAndApply?: ((view: SmartGridSavedViewsOptions) => void) | null;
2869
+ handleDeleteViewClick?: ((view: SmartGridSavedViewsOptions) => void) | null;
2870
+ }
2871
+
2872
+ export declare interface SmartGridSearchConfig {
2873
+ placeholder?: string;
2874
+ debounceMs?: number;
2875
+ minChars?: number;
2876
+ }
2877
+
2878
+ declare type SmartGridSearchFunctionParams = SmartGridFilterModel[] | Record<string, SmartGridFilterModel[]>;
2879
+
2880
+ declare type SmartGridSearchFunctionParamsWithField = Record<string, SmartGridFilterModel>;
2881
+
2882
+ declare interface SmartGridSearchOperatorOption {
2883
+ value: string;
2884
+ label: string;
2885
+ type?: string;
2886
+ }
2887
+
2888
+ declare interface SmartGridSearchWithSearchKey {
2889
+ _search: SmartGridSearchFunctionParamsWithField;
2890
+ }
2891
+
2892
+ declare interface SmartGridSelectedCell {
2893
+ colIndex: number;
2894
+ column: SmartGridColumnDefinition;
2895
+ data: SmartGridRowData;
2896
+ field: string;
2897
+ rowId: string | number;
2898
+ rowIndex: number;
2899
+ value: unknown;
2900
+ }
2901
+
2902
+ declare interface SmartGridSelectOption {
2903
+ value: string | number;
2904
+ label: string;
2905
+ isDisabled?: boolean;
2906
+ }
2907
+
2908
+ export declare interface SmartGridSendPayload {
2909
+ content: string;
2910
+ [key: string]: unknown;
2911
+ }
2912
+
2913
+ declare interface SmartGridServerSideDataSource {
2914
+ getRows: (params: SmartGridServerSideGetRowsParams) => {
2915
+ abort?: () => void;
2916
+ } | void;
2917
+ }
2918
+
2919
+ /** Server-side datasource interface */
2920
+ declare interface SmartGridServerSideDatasource {
2921
+ infiniteCache: InfiniteCache | undefined;
2922
+ _originalParams: SmartGridServerSideDataSourceParams;
2923
+ _loadingBlocks: Record<number, boolean>;
2924
+ _pendingRequests: Record<string, SmartGridPendingRequest>;
2925
+ _lastRequestParams: SmartGridGetRowsRequestParams | null;
2926
+ _isDestroyed: boolean;
2927
+ updateCacheReference: (newCache: InfiniteCache) => boolean;
2928
+ updateConfig: (newConfig: Partial<SmartGridServerSideDataSourceParams>) => SmartGridServerSideDatasource;
2929
+ destroy: () => void;
2930
+ resetLoadState: () => void;
2931
+ getRows: (requestParams: SmartGridGetRowsRequestParams) => void;
2932
+ _cacheInjected?: boolean;
2933
+ _isWrapped?: boolean;
2934
+ context?: SmartGridDataSourceContext;
2935
+ }
2936
+
2937
+ /** Server-side datasource params */
2938
+ declare interface SmartGridServerSideDataSourceParams {
2939
+ fetchFunc?: SmartGridFetchFunctionRef;
2940
+ apiUrl?: string;
2941
+ sortModel: SmartGridSortModel;
2942
+ filterModel: SmartGridSearchWithSearchKey | null;
2943
+ infiniteCache: InfiniteCache | null;
2944
+ context: SmartGridDataSourceContext;
2945
+ pageSize: number;
2946
+ resetState?: boolean;
2947
+ updatedPageSizeRef?: SmartGridUpdatedPageSizeRef;
2948
+ }
2949
+
2950
+ declare interface SmartGridServerSideGetRowsParams {
2951
+ request: {
2952
+ startRow: number;
2953
+ endRow: number;
2954
+ filterModel?: SmartGridFilterModel | SmartGridSearchWithSearchKey | null;
2955
+ sortModel?: SmartGridSortModel | null;
2956
+ };
2957
+ api: SmartGridAPI;
2958
+ success: (response: SmartGridFetchDataResponse) => void;
2959
+ fail: () => void;
2960
+ }
2961
+
2962
+ declare type SmartGridSortDirection = "asc" | "desc" | "none";
2963
+
2964
+ declare type SmartGridSortModel = SmartGridOldSortModel | SmartGridNewSortModel | null;
2965
+
2966
+ declare interface SmartGridStateContext {
2967
+ data?: SmartGridRowData[] | null;
2968
+ filteredData: SmartGridRowData[] | null;
2969
+ originalData: SmartGridRowData[] | null;
2970
+ previewMode: boolean;
2971
+ isLoading: boolean;
2972
+ columns: SmartGridColumnDefinition[];
2973
+ columnMap: Record<string, SmartGridColumnDefinition>;
2974
+ sortState: SmartGridSortModel;
2975
+ pagination: {
2976
+ currentPage: number;
2977
+ pageSize: number;
2978
+ totalPages: number | null;
2979
+ isCountUnknown: boolean;
2980
+ totalItems: number;
2981
+ currentLoadedPage: number;
2982
+ allTotalPages: number;
2983
+ page: number;
2984
+ };
2985
+ selectedRows: (string | number)[];
2986
+ selectedRowsObject: Record<string, boolean>;
2987
+ columnFilters: Record<string, SmartGridFilterModel[]>;
2988
+ expandedChildRows: Record<string, SmartGridExpandedChildRows>;
2989
+ expandedColumnGroups: SmartGridExpandedColumnGroups;
2990
+ uniqueIdField: string;
2991
+ childKeyField: string;
2992
+ frozenColumns: SmartGridFrozenColumnsDetails;
2993
+ notification: SmartGridNotification & {
2994
+ show: boolean;
2995
+ };
2996
+ columnsToAutosize: string[] | Record<string, boolean>;
2997
+ prevAction: string;
2998
+ checkConfiguration: SmartGridCheckConfiguration[];
2999
+ isSelectAllRecords: boolean;
3000
+ unCheckedRows: Record<string, boolean>;
3001
+ isSelectionChanged: boolean;
3002
+ masterDetail: {
3003
+ enabled: boolean;
3004
+ expandedRows: (string | number)[];
3005
+ detailRenderer: null | Function;
3006
+ detailRowHeight: number;
3007
+ detailPadding: number;
3008
+ expandedRowData: SmartGridRowData | SmartGridRowData[] | null;
3009
+ currentRowStyles?: {
3010
+ height?: number;
3011
+ top?: number;
3012
+ };
3013
+ rowIndex?: number | null;
3014
+ };
3015
+ eventListeners: Record<string, SmartGridEventListener[]>;
3016
+ defaultColDef: SmartGridDefaultColDef | null;
3017
+ api: SmartGridAPI | null;
3018
+ actions: {};
3019
+ serverSide: boolean;
3020
+ enableRowSpan: boolean;
3021
+ rowSpanColumn: string | string[] | null;
3022
+ rowDragManaged: boolean;
3023
+ format: {
3024
+ fontSize: "medium" | "small" | "large";
3025
+ numberFormat: SmartGridNumberFormat;
3026
+ };
3027
+ pinnedTopRows: SmartGridRowData[];
3028
+ pinnedBottomRows: SmartGridRowData[];
3029
+ rowGroupState: SmartGridRowGroupState;
3030
+ tableInstance: MutableRefObject<HTMLElement | null>;
3031
+ headerRowHeightwithIndex: Record<string, SmartGridHeaderRowHeight>;
3032
+ infiniteScroll: boolean;
3033
+ smartGridMenuOptions: {
3034
+ withColumMenu?: boolean;
3035
+ autoWithColumMenu?: boolean;
3036
+ freezeColumnMenu?: boolean;
3037
+ sortColumnMenu?: boolean;
3038
+ collapseColumnAll?: boolean;
3039
+ expandColumnAll?: boolean;
3040
+ wrapText?: boolean;
3041
+ };
3042
+ purgeClosedRowNodes: boolean;
3043
+ detailRendererTable: boolean;
3044
+ isSaveViewEnabled: boolean;
3045
+ rowHeight: {
3046
+ type: "default" | "compact" | "comfortable";
3047
+ height: number;
3048
+ padding: number;
3049
+ };
3050
+ aggregationTotalRow: Record<number, SmartGridRowData> | null;
3051
+ hasAggregation: boolean;
3052
+ callBackRef: MutableRefObject<SmartGridCallbackRefCurrent | null>;
3053
+ exportCallbackRef: MutableRefObject<{
3054
+ downloadExcelHandler?: null | Function;
3055
+ downloadCSVHandler?: null | Function;
3056
+ copyToClipboardHandler?: null | Function;
3057
+ }>;
3058
+ saveViewOptionsRef: MutableRefObject<{
3059
+ maxSavedViews?: null | number;
3060
+ deleteViewPromptText?: null | string;
3061
+ }>;
3062
+ saveViewCallbackRef: MutableRefObject<SmartGridSaveViewCallbackRefCurrent>;
3063
+ clickCallbackRef: MutableRefObject<SmartGridClickCallbackRefCurrent>;
3064
+ customCallback: SmartGridCustomCallbackRefCurrent;
3065
+ contextRef: MutableRefObject<SmartGridCommentContextRef> | null;
3066
+ tableId: string;
3067
+ isSingleSelect: boolean;
3068
+ selectable: boolean;
3069
+ disableSelectAllRecords: boolean;
3070
+ columnBufferSize?: number;
3071
+ lazyLoadCellRenderer?: boolean;
3072
+ hasSplitRenderer?: boolean;
3073
+ splitRendererKeys?: string[] | null;
3074
+ originalFromIndex?: number | null;
3075
+ lastToIndex?: number | null;
3076
+ hasExpandedChildren?: boolean;
3077
+ isDraggingDownward?: boolean;
3078
+ saveViewCallbacks?: {
3079
+ isSavingViewLoading?: boolean;
3080
+ savedViewsOptions?: SmartGridSavedViewsOptions[];
3081
+ } & Record<string, unknown>;
3082
+ pivotPanelColumnDef: null | SmartGridColumnDefinition[];
3083
+ removeCheckConfigurationOnOperation: boolean;
3084
+ totalColumnsCount: number;
3085
+ isCommentFeatureEnabled: boolean;
3086
+ isChatEnabled: boolean;
3087
+ [key: string]: unknown;
3088
+ }
3089
+
3090
+ declare type SmartGridStringFilter = {
3091
+ column: string;
3092
+ pattern: string;
3093
+ search_type: string;
3094
+ operator?: string;
3095
+ };
3096
+
3097
+ export declare interface SmartGridSuggestion {
3098
+ items: (params: SmartGridSuggestionItemsParams) => Promise<SmartGridMentionUser[]>;
3099
+ render: () => SmartGridSuggestionRenderReturn;
3100
+ }
3101
+
3102
+ export declare interface SmartGridSuggestionItemsParams {
3103
+ query: string;
3104
+ editor: Editor & {
3105
+ storage: {
3106
+ mentionConfig?: SmartGridMentionConfig;
3107
+ };
3108
+ };
3109
+ }
3110
+
3111
+ export declare interface SmartGridSuggestionKeyDownProps {
3112
+ event?: KeyboardEvent;
3113
+ }
3114
+
3115
+ export declare interface SmartGridSuggestionRenderProps {
3116
+ editor?: Editor;
3117
+ clientRect?: (() => DOMRect | null) | null;
3118
+ items?: SmartGridMentionUser[];
3119
+ command?: (item: SmartGridMentionCommand) => void;
3120
+ event?: KeyboardEvent;
3121
+ }
3122
+
3123
+ export declare interface SmartGridSuggestionRenderReturn {
3124
+ onStart: (props: SmartGridSuggestionRenderProps) => void;
3125
+ onUpdate: (props: SmartGridSuggestionRenderProps) => void;
3126
+ onKeyDown: (props: SmartGridSuggestionKeyDownProps) => boolean;
3127
+ onExit: () => void;
3128
+ }
3129
+
3130
+ export declare interface SmartGridTableChatChannelHeaderConfig extends SmartGridLeftHeaderPanel {
3131
+ showSearch?: boolean;
3132
+ leftChatPanel?: SmartGridLeftHeaderPanel;
3133
+ }
3134
+
3135
+ export declare interface SmartGridTableChatChannelHeaderProps {
3136
+ title?: string;
3137
+ channels?: SmartGridChatChannelItemProps[];
3138
+ selectedChannelOrChatId?: string | number;
3139
+ onBack?: () => void;
3140
+ onChannelSelect?: (channelId: string | number, channel: SmartGridChatChannelItemProps) => void;
3141
+ onMenuClick?: () => void;
3142
+ onSearchClick?: () => void;
3143
+ onMoreClick?: () => void;
3144
+ showChannelList?: boolean;
3145
+ setShowPinnedMsg?: (value: boolean) => void;
3146
+ onThreadClick?: (messageId?: string | number, payload?: SmartGridChatMessage) => void;
3147
+ isSearchOpen?: boolean;
3148
+ headerConfig?: SmartGridTableChatChannelHeaderConfig;
3149
+ showAddChatBtn?: boolean;
3150
+ showCheckbox?: boolean;
3151
+ handleChatName?: SmartGridLeftPanelConfig["handleChatName"];
3152
+ filterChannelsByTitle?: (value: string) => void;
3153
+ loadingChannels?: boolean;
3154
+ selectedChannelInfo?: SmartGridChannel | null;
3155
+ handleToast?: SmartGridHandleToastFn;
3156
+ onPinnedChatClick?: (chatId: string | number, isPinned: boolean) => Promise<boolean>;
3157
+ onDeleteTopics?: () => void;
3158
+ selectedChat?: (string | number)[];
3159
+ handleChatSelect?: (id: string | number) => void;
3160
+ isCreateNewChatOpen?: boolean;
3161
+ setIsCreateNewChatOpen?: Dispatch<SetStateAction<boolean>>;
3162
+ }
3163
+
3164
+ export declare interface SmartGridTableChatRightSectionProps {
3165
+ title: string;
3166
+ chatId: string | number;
3167
+ CreatedBy: string;
3168
+ participants?: SmartGridParticipant[];
3169
+ participantsList?: SmartGridParticipant[];
3170
+ onParticipantsClick?: () => void;
3171
+ messages?: SmartGridChatMessage[];
3172
+ placeholder?: string;
3173
+ showFormatting?: boolean;
3174
+ maxLength?: number;
3175
+ showParticipantsList?: boolean;
3176
+ showPinnedChat?: boolean;
3177
+ showSearch?: boolean;
3178
+ showActionBtn?: boolean;
3179
+ onMessageReply?: (messageId: string | number, chatId: string | number) => void;
3180
+ onMessageBookmark?: (messageId: string | number, chatId: string | number) => void;
3181
+ onMessagePin?: SmartGridOnMessagePin;
3182
+ onMessageMore?: (messageId: string | number, chatId: string | number) => void;
3183
+ onAttachFile?: (file: File) => void;
3184
+ onImageUpload?: (image: File) => void;
3185
+ onEmojiClick?: (emoji: string) => void;
3186
+ setPinnedMessages?: React.Dispatch<React.SetStateAction<SmartGridChatMessage[]>>;
3187
+ className?: string;
3188
+ showDateSeparators?: boolean;
3189
+ autoScroll?: boolean;
3190
+ onThreadClick?: (messageId: string | number, chatId: string | number) => void;
3191
+ messageConfig: SmartGridMessageChatConfig & {
3192
+ loadMessages?: (chatId: string | number, page: number) => Promise<SmartGridChatMessage[] | {
3193
+ messages: SmartGridChatMessage[];
3194
+ noMoreData: boolean;
3195
+ }>;
3196
+ messagesClearedTrigger?: number;
3197
+ loadParticipantsAvatar?: (selectedRadioOption: string, chatId: string | number) => Promise<SmartGridParticipant[]>;
3198
+ messageConfig?: SmartGridMessageConfig;
3199
+ highlightTrigger?: number | null;
3200
+ };
3201
+ inputChatConfig: SmartGridInputChatConfig & {
3202
+ inputConfig?: SmartGridInputConfig & {
3203
+ showQuickAction?: boolean;
3204
+ quickActionLabel?: string;
3205
+ };
3206
+ };
3207
+ chatHeaderConfig: SmartGridHeaderChatConfig;
3208
+ handleToast: (isOpen: boolean, message: string, variant: SmartGridToastVariant) => void;
3209
+ }
3210
+
3211
+ export declare interface SmartGridTableChatSidePanelProps {
3212
+ isOpen: boolean;
3213
+ handleClose: () => void;
3214
+ chatConfiguration: SmartGridChatConfiguration;
3215
+ }
3216
+
3217
+ export declare type SmartGridTableChatWrapper = {
3218
+ isChatOpen: boolean;
3219
+ handleChatClick: () => void;
3220
+ handleChatClose: () => void;
3221
+ chatConfiguration: SmartGridChatConfiguration;
3222
+ };
3223
+
3224
+ declare interface SmartGridTableContextValue {
3225
+ state: SmartGridStateContext;
3226
+ tableApi: SmartGridAPI | null;
3227
+ dispatch: SmartGridDispatch;
3228
+ ACTION_TYPES: typeof ACTION_TYPES;
3229
+ toggleGroupExpansion: (rowId: string | number, rowIndex: number) => void;
3230
+ dispatchEvent: (eventType: string, eventData: Record<string, unknown>) => void;
3231
+ getRowStyle?: (params: SmartGridRowStyleParams) => CSSProperties;
3232
+ }
3233
+
3234
+ declare interface SmartGridTableInstance {
3235
+ current: HTMLElement | null;
3236
+ }
3237
+
3238
+ declare interface SmartGridTableModel {
3239
+ getData: () => SmartGridRowData[];
3240
+ modelRef?: {
3241
+ current?: SmartGridInfiniteRowModel;
3242
+ };
3243
+ infiniteCache: SmartGridInfiniteCacheReturn | null;
3244
+ getColumnDefs: () => SmartGridColumnDefinition[];
3245
+ getSortModel: () => SmartGridSortModel[];
3246
+ getFilterModel: () => SmartGridFilterModel;
3247
+ getType: () => SmartGridModelType;
3248
+ getRowsToDisplay: () => number;
3249
+ forEachNode: (callback: (node: SmartGridRowNode, index: number) => void | Promise<void>) => Promise<void>;
3250
+ getRowNode: (id: string | number) => SmartGridRowNode | null;
3251
+ getSelectedRows: () => SmartGridRowData[];
3252
+ getPaginationModel: () => SmartGridPaginationModel;
3253
+ getColumnState: () => SmartGridColumnState[];
3254
+ rowsToDisplay: SmartGridRowData[];
3255
+ }
3256
+
3257
+ /**
3258
+ * SmartGridThreadDeleteState - State for thread deletion
3259
+ */
3260
+ export declare interface SmartGridThreadDeleteState {
3261
+ cellId: string;
3262
+ data: SmartGridComment[];
3263
+ }
3264
+
3265
+ export declare interface SmartGridThreeDotMenuOption {
3266
+ id: string;
3267
+ label: string;
3268
+ icon?: React.ReactNode;
3269
+ onClick?: () => void;
3270
+ }
3271
+
3272
+ export declare type SmartGridTipTapEditor = {
3273
+ isActive: (name: string, attrs?: Record<string, unknown>) => boolean;
3274
+ on: (event: string, handler: () => void) => void;
3275
+ off: (event: string, handler: () => void) => void;
3276
+ state: Record<string, unknown>;
3277
+ };
3278
+
3279
+ export declare type SmartGridToastVariant = "info" | "success" | "warning" | "error";
3280
+
3281
+ export declare interface SmartGridToolbarItem {
3282
+ icon: React.FC<React.SVGProps<SVGSVGElement>>;
3283
+ ariaLabel: string;
3284
+ command: string;
3285
+ }
3286
+
3287
+ export declare type SmartGridToolbarItemKey = "bold" | "italic" | "link" | "bulletList" | "orderedList" | "strike" | "highlight" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
3288
+
3289
+ export declare type SmartGridToolbarItems = Record<SmartGridToolbarItemKey, SmartGridToolbarItem>;
3290
+
3291
+ declare type SmartGridTooltipGetterParams = {
3292
+ api: SmartGridAPI;
3293
+ colDef: SmartGridColumnDefinition;
3294
+ column: SmartGridColumnDefinition;
3295
+ data: SmartGridRowData;
3296
+ location: string;
3297
+ node: {
3298
+ data: SmartGridRowData;
3299
+ id: string;
3300
+ level: number;
3301
+ parent: SmartGridUpdateData;
3302
+ rowIndex: number;
3303
+ };
3304
+ rowIndex: number;
3305
+ value: unknown;
3306
+ };
3307
+
3308
+ declare type SmartGridUpdateData = {
3309
+ data: SmartGridRowData;
3310
+ setData: (data: SmartGridRowData) => void;
3311
+ setDataValue: (field: string, value: unknown, callbackNeeded?: boolean) => void;
3312
+ };
3313
+
3314
+ declare type SmartGridUpdateDataReturnType = {
3315
+ success: boolean;
3316
+ totalRows: number;
3317
+ blocksUpdated: number;
3318
+ errors: string[];
3319
+ };
3320
+
3321
+ /** Page size ref for server-side */
3322
+ declare interface SmartGridUpdatedPageSizeRef {
3323
+ current: number;
3324
+ }
3325
+
3326
+ declare type SmartGridValueFormatterConfig = {
3327
+ type?: string;
3328
+ symbol?: string;
3329
+ position?: "prefix" | "suffix";
3330
+ decimals?: number;
3331
+ };
3332
+
3333
+ declare interface SmartGridValueFormatterParams {
3334
+ value: unknown;
3335
+ data: SmartGridRowData;
3336
+ colDef: SmartGridColumnDefinition;
3337
+ }
3338
+
3339
+ declare interface SmartGridValueGetterParams {
3340
+ data: SmartGridRowData;
3341
+ node: {
3342
+ data: SmartGridRowData;
3343
+ };
3344
+ colDef: SmartGridColumnDefinition;
3345
+ column: SmartGridColumnDefinition;
3346
+ api: SmartGridAPI | null;
3347
+ columnApi?: SmartGridAPI;
3348
+ getValue: (field: string) => unknown;
3349
+ }
3350
+
3351
+ /** Viewport range */
3352
+ declare interface SmartGridViewportRange {
3353
+ startRow: number;
3354
+ endRow: number;
3355
+ }
3356
+
3357
+ declare interface SmartGridWrappedDataSource {
3358
+ _originalDatasource: SmartGridServerSideDataSource;
3359
+ _loadingBlocks: Record<number, boolean>;
3360
+ _pendingRequests: Record<number, {
3361
+ abort?: () => void;
3362
+ }>;
3363
+ _isDestroyed: boolean;
3364
+ _pendingRAFs?: number[];
3365
+ infiniteCache: unknown;
3366
+ updateCacheReference: (newCache: unknown) => void;
3367
+ destroy: () => void;
3368
+ getRows: (params: SmartGridInternalGetRowsParams) => void;
3369
+ }
3370
+
3371
+ export declare const TableChatWrapper: ({ isChatOpen, handleChatClick, handleChatClose, chatConfiguration, }: SmartGridTableChatWrapper) => JSX_2.Element;
3372
+
3373
+ export { }