@mescius/spread-sheets-collaboration-client 18.0.7 → 18.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,41 +1,642 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { OT_Type, SharedDoc } from "@mescius/js-collaboration-ot-client";
3
- import {Presence} from "@mescius/js-collaboration-presence-client";
1
+ import { Presence } from "@mescius/js-collaboration-presence-client";
2
+ import { SharedDoc, OT_Type } from "@mescius/js-collaboration-ot-client";
3
+
4
4
  /**
5
- * The ot type of spread-sheets.
5
+ * Defines the Operational type
6
+ * @enum {number}
6
7
  */
7
- export declare const type: OT_Type;
8
-
9
- export interface IOpComponent {
10
- type: string;
8
+ export enum OpType {
9
+ /**
10
+ * addSheet
11
+ */
12
+ addSheet = 1,
13
+ /**
14
+ * removeSheet
15
+ */
16
+ removeSheet = 2,
17
+ /**
18
+ * clearSheets
19
+ */
20
+ clearSheets = 3,
21
+ /**
22
+ * reorderSheet
23
+ */
24
+ reorderSheet = 4,
25
+ /**
26
+ * setStartSheetIndex
27
+ */
28
+ setStartSheetIndex = 5,
29
+ /**
30
+ * setActiveSheetId
31
+ */
32
+ setActiveSheetId = 6,
33
+ /**
34
+ * setWorkbookOptions
35
+ */
36
+ setWorkbookOptions = 7,
37
+ /**
38
+ * addNamedStyle
39
+ */
40
+ addNamedStyle = 8,
41
+ /**
42
+ * removeNamedStyle
43
+ */
44
+ removeNamedStyle = 9,
45
+ /**
46
+ * addSheetNamedStyle
47
+ */
48
+ addSheetNamedStyle = 10,
49
+ /**
50
+ * removeSheetNamedStyle
51
+ */
52
+ removeSheetNamedStyle = 11,
53
+ /**
54
+ * addCustomTheme
55
+ */
56
+ addCustomTheme = 12,
57
+ /**
58
+ * removeCustomTheme
59
+ */
60
+ removeCustomTheme = 13,
61
+ /**
62
+ * updateCustomTheme
63
+ */
64
+ updateCustomTheme = 14,
65
+ /**
66
+ * addSheetTabStyle
67
+ */
68
+ addSheetTabStyle = 15,
69
+ /**
70
+ * removeSheetTabStyle
71
+ */
72
+ removeSheetTabStyle = 16,
73
+ /**
74
+ * clearSheetTabStyle
75
+ */
76
+ clearSheetTabStyle = 17,
77
+ /**
78
+ * updateDocProp
79
+ */
80
+ updateDocProp = 18,
81
+ /**
82
+ * updateDocPropForApp
83
+ */
84
+ updateDocPropForApp = 19,
85
+ /**
86
+ * updateDocPropForCore
87
+ */
88
+ updateDocPropForCore = 20,
89
+ /**
90
+ * addCustomDocProp
91
+ */
92
+ addCustomDocProp = 21,
93
+ /**
94
+ * removeCustomDocProp
95
+ */
96
+ removeCustomDocProp = 22,
97
+ /**
98
+ * clearCustomDocProp
99
+ */
100
+ clearCustomDocProp = 23,
101
+ /**
102
+ * updateCustomDocProp
103
+ */
104
+ updateCustomDocProp = 24,
105
+ /**
106
+ * setCustomDocProps
107
+ */
108
+ setCustomDocProps = 25,
109
+ /**
110
+ * setTabSelected
111
+ */
112
+ setTabSelected = 26,
113
+ /**
114
+ * setSheetName
115
+ */
116
+ setSheetName = 27,
117
+ /**
118
+ * setRange
119
+ */
120
+ setRange = 28,
121
+ /**
122
+ * setCustomName
123
+ */
124
+ setCustomName = 29,
125
+ /**
126
+ * setSheetScopeCustomName
127
+ */
128
+ setSheetScopeCustomName = 30,
129
+ /**
130
+ * clearCustomName
131
+ */
132
+ clearCustomName = 31,
133
+ /**
134
+ * clearSheetScopeCustomName
135
+ */
136
+ clearSheetScopeCustomName = 32,
137
+ /**
138
+ * addRows
139
+ */
140
+ addRows = 33,
141
+ /**
142
+ * deleteRows
143
+ */
144
+ deleteRows = 34,
145
+ /**
146
+ * addSpan
147
+ */
148
+ addSpan = 35,
149
+ /**
150
+ * removeSpan
151
+ */
152
+ removeSpan = 36,
153
+ /**
154
+ * updateSpan
155
+ */
156
+ updateSpan = 37,
157
+ /**
158
+ * addColumns
159
+ */
160
+ addColumns = 39,
161
+ /**
162
+ * deleteColumns
163
+ */
164
+ deleteColumns = 40,
165
+ /**
166
+ * setRowCount
167
+ */
168
+ setRowCount = 41,
169
+ /**
170
+ * setColumnCount
171
+ */
172
+ setColumnCount = 42,
173
+ /**
174
+ * setFrozen
175
+ */
176
+ setFrozen = 43,
177
+ /**
178
+ * setFreeAreaCount
179
+ */
180
+ setFreeAreaCount = 44,
181
+ /**
182
+ * setAxisSize
183
+ */
184
+ setAxisSize = 45,
185
+ /**
186
+ * updateZoom
187
+ */
188
+ updateZoom = 46,
189
+ /**
190
+ * setAxisOptions
191
+ */
192
+ setAxisOptions = 47,
193
+ /**
194
+ * setHeaderFitMode
195
+ */
196
+ setHeaderFitMode = 48,
197
+ /**
198
+ * setWorksheetOptions
199
+ */
200
+ setWorksheetOptions = 49,
201
+ /**
202
+ * setCurrentTheme
203
+ */
204
+ setCurrentTheme = 50,
205
+ /**
206
+ * clearRange
207
+ */
208
+ clearRange = 51,
209
+ /**
210
+ * setSheetVisible
211
+ */
212
+ setSheetVisible = 52,
213
+ /**
214
+ * setFileInfo
215
+ */
216
+ setFileInfo = 53,
217
+ /**
218
+ * updateTopLeftPosition
219
+ */
220
+ updateTopLeftPosition = 54,
221
+ /**
222
+ * setWorkbookProperty
223
+ */
224
+ setWorkbookProperty = 55,
225
+ /**
226
+ * addExternalReference
227
+ */
228
+ addExternalReference = 101,
229
+ /**
230
+ * updateExternalReference
231
+ */
232
+ updateExternalReference = 102,
233
+ /**
234
+ * sortSwap
235
+ */
236
+ sortSwap = 111,
237
+ /**
238
+ * updateSortState
239
+ */
240
+ updateSortState = 112,
241
+ /**
242
+ * setFilter
243
+ */
244
+ setFilter = 121,
245
+ /**
246
+ * filterItemMap
247
+ */
248
+ filterItemMap = 122,
249
+ /**
250
+ * filteredColumns
251
+ */
252
+ filteredColumns = 123,
253
+ /**
254
+ * updateFilterSortInfo
255
+ */
256
+ updateFilterSortInfo = 124,
257
+ /**
258
+ * updateFilterButtonVisibleInfo
259
+ */
260
+ updateFilterButtonVisibleInfo = 125,
261
+ /**
262
+ * updateFilterRange
263
+ */
264
+ updateFilterRange = 126,
265
+ /**
266
+ * filterRowVisibleInfo
267
+ */
268
+ filterRowVisibleInfo = 127,
269
+ /**
270
+ * addGroup
271
+ */
272
+ addGroup = 141,
273
+ /**
274
+ * removeGroup
275
+ */
276
+ removeGroup = 142,
277
+ /**
278
+ * resetGroup
279
+ */
280
+ resetGroup = 143,
281
+ /**
282
+ * updateCollapsed
283
+ */
284
+ updateCollapsed = 144,
285
+ /**
286
+ * setDirection
287
+ */
288
+ setDirection = 145,
289
+ /**
290
+ * showOutline
291
+ */
292
+ showOutline = 146,
293
+ /**
294
+ * insertGroupItem
295
+ */
296
+ insertGroupItem = 147,
297
+ /**
298
+ * setGroupItems
299
+ */
300
+ setGroupItems = 148,
301
+ /**
302
+ * deleteGroupItem
303
+ */
304
+ deleteGroupItem = 149,
305
+ /**
306
+ * addComment
307
+ */
308
+ addComment = 161,
309
+ /**
310
+ * removeComment
311
+ */
312
+ removeComment = 162,
313
+ /**
314
+ * updateComment
315
+ */
316
+ updateComment = 163,
317
+ /**
318
+ * addTable
319
+ */
320
+ addTable = 171,
321
+ /**
322
+ * removeTable
323
+ */
324
+ removeTable = 172,
325
+ /**
326
+ * showHeader
327
+ */
328
+ showHeader = 173,
329
+ /**
330
+ * showFooter
331
+ */
332
+ showFooter = 174,
333
+ /**
334
+ * setTableProperty
335
+ */
336
+ setTableProperty = 175,
337
+ /**
338
+ * setTableLayoutStyle
339
+ */
340
+ setTableLayoutStyle = 176,
341
+ /**
342
+ * addTableRow
343
+ */
344
+ addTableRow = 177,
345
+ /**
346
+ * removeTableRow
347
+ */
348
+ removeTableRow = 178,
349
+ /**
350
+ * updateTablePosition
351
+ */
352
+ updateTablePosition = 179,
353
+ /**
354
+ * addTableColumn
355
+ */
356
+ addTableColumn = 180,
357
+ /**
358
+ * removeTableColumn
359
+ */
360
+ removeTableColumn = 181,
361
+ /**
362
+ * setTableColumnProperty
363
+ */
364
+ setTableColumnProperty = 182,
365
+ /**
366
+ * addShape
367
+ */
368
+ addShape = 201,
369
+ /**
370
+ * removeShape
371
+ */
372
+ removeShape = 202,
373
+ /**
374
+ * reorderShape
375
+ */
376
+ reorderShape = 203,
377
+ /**
378
+ * updateShapeProp
379
+ */
380
+ updateShapeProp = 204,
381
+ /**
382
+ * updateShapeFormula
383
+ */
384
+ updateShapeFormula = 205,
385
+ /**
386
+ * updateShapeTransform
387
+ */
388
+ updateShapeTransform = 206,
389
+ /**
390
+ * addChildShape
391
+ */
392
+ addChildShape = 207,
393
+ /**
394
+ * removeChildShape
395
+ */
396
+ removeChildShape = 208,
397
+ /**
398
+ * reorderChildShape
399
+ */
400
+ reorderChildShape = 209,
401
+ /**
402
+ * updateChartSeries
403
+ */
404
+ updateChartSeries = 221,
405
+ /**
406
+ * updateChart
407
+ */
408
+ updateChart = 222,
409
+ /**
410
+ * addPivotCache
411
+ */
412
+ addPivotCache = 251,
413
+ /**
414
+ * removePivotCache
415
+ */
416
+ removePivotCache = 252,
417
+ /**
418
+ * updatePivotCache
419
+ */
420
+ updatePivotCache = 253,
421
+ /**
422
+ * switchPivotCache
423
+ */
424
+ switchPivotCache = 254,
425
+ /**
426
+ * updatePivotCacheField
427
+ */
428
+ updatePivotCacheField = 255,
429
+ /**
430
+ * addPivotTable
431
+ */
432
+ addPivotTable = 271,
433
+ /**
434
+ * removePivotTable
435
+ */
436
+ removePivotTable = 272,
437
+ /**
438
+ * updatePivotTableLayout
439
+ */
440
+ updatePivotTableLayout = 273,
441
+ /**
442
+ * updateFieldsModel
443
+ */
444
+ updateFieldsModel = 274,
445
+ /**
446
+ * addPivotField
447
+ */
448
+ addPivotField = 275,
449
+ /**
450
+ * removePivotField
451
+ */
452
+ removePivotField = 276,
453
+ /**
454
+ * addRule
455
+ */
456
+ addRule = 301,
457
+ /**
458
+ * updateRule
459
+ */
460
+ updateRule = 302,
461
+ /**
462
+ * removeRule
463
+ */
464
+ removeRule = 303,
465
+ /**
466
+ * clearRule
467
+ */
468
+ clearRule = 304,
469
+ /**
470
+ * addAutoMerge
471
+ */
472
+ addAutoMerge = 311,
473
+ /**
474
+ * removeAutoMerge
475
+ */
476
+ removeAutoMerge = 312,
477
+ /**
478
+ * setSheetAreaAutoMerge
479
+ */
480
+ setSheetAreaAutoMerge = 313,
481
+ /**
482
+ * addSparklineEx
483
+ */
484
+ addSparklineEx = 321,
485
+ /**
486
+ * removeSparklineEx
487
+ */
488
+ removeSparklineEx = 322,
489
+ /**
490
+ * updateSparklineGroup
491
+ */
492
+ updateSparklineGroup = 323,
493
+ /**
494
+ * addSparklineGroup
495
+ */
496
+ addSparklineGroup = 324,
497
+ /**
498
+ * removeSparklineGroup
499
+ */
500
+ removeSparklineGroup = 325,
501
+ /**
502
+ * groupSparkline
503
+ */
504
+ groupSparkline = 326,
505
+ /**
506
+ * setGroupSparklines
507
+ */
508
+ setGroupSparklines = 327,
509
+ /**
510
+ * addSparklineForGroup
511
+ */
512
+ addSparklineForGroup = 328,
513
+ /**
514
+ * removeSparklineForGroup
515
+ */
516
+ removeSparklineForGroup = 329,
517
+ /**
518
+ * clearSparklineForGroup
519
+ */
520
+ clearSparklineForGroup = 330,
521
+ /**
522
+ * updateSparkline
523
+ */
524
+ updateSparkline = 331,
525
+ /**
526
+ * addCellState
527
+ */
528
+ addCellState = 351,
529
+ /**
530
+ * removeCellState
531
+ */
532
+ removeCellState = 352,
533
+ /**
534
+ * updateCellState
535
+ */
536
+ updateCellState = 353,
537
+ /**
538
+ * setCellState
539
+ */
540
+ setCellState = 354,
541
+ /**
542
+ * addDataValidator
543
+ */
544
+ addDataValidator = 361,
545
+ /**
546
+ * updateDataValidator
547
+ */
548
+ updateDataValidator = 362,
549
+ /**
550
+ * removeDataValidator
551
+ */
552
+ removeDataValidator = 363,
553
+ /**
554
+ * setDataValidatorRange
555
+ */
556
+ setDataValidatorRange = 364,
557
+ /**
558
+ * setOutlineColumnOptions
559
+ */
560
+ setOutlineColumnOptions = 371,
561
+ /**
562
+ * setOutlineColumnProperty
563
+ */
564
+ setOutlineColumnProperty = 372,
565
+ /**
566
+ * setPrintInfo
567
+ */
568
+ setPrintInfo = 381,
569
+ /**
570
+ * setPrintInfoOption
571
+ */
572
+ setPrintInfoOption = 382,
11
573
  }
12
574
 
13
- export interface IChangeSet {
14
- ops: IOpComponent[];
575
+ /**
576
+ * Enumerates the browsing modes for document interaction.
577
+ * @enum {number}
578
+ */
579
+ export enum BrowsingMode {
580
+ /** Allows the user to edit the document.
581
+ */
582
+ edit,
583
+ /** Restricts the user to viewing the document only.
584
+ */
585
+ view,
15
586
  }
16
587
 
17
588
  /**
18
- * Binds workbook with the document.
19
- * @param workbook - The instance of GC.Spread.Sheets.Workbook.
20
- * @param doc - The instance of SharedDoc.
589
+ * Enumerates permission types for viewers.
590
+ * @enum {number}
21
591
  */
22
- export declare function bind(workbook: any, doc: SharedDoc<any, IChangeSet>): void;
23
-
24
- export interface ISelections {
25
- selections?: Range[];
26
- sheetId?: string;
592
+ export enum PermissionTypes {
593
+ /**
594
+ * Permits non-data-modifying operations
595
+ */
596
+ allowNonDataModifyingOperations = 1,
597
+ /**
598
+ * Permits hide or unhide rows/columns.
599
+ */
600
+ allowHideRowsOrColumns = 2,
601
+ /**
602
+ * Permits resizing rows/columns.
603
+ */
604
+ allowResizeRowsOrColumns = 4,
605
+ /**
606
+ * Permits filtering ranges.
607
+ */
608
+ allowFilter = 8,
609
+ /**
610
+ * Permits sorting.
611
+ */
612
+ allowSort = 16,
27
613
  }
28
614
 
29
- export enum BrowsingMode {
30
- edit,
31
- view
615
+ /**
616
+ * Represents a set of changes for operational transformation.
617
+ */
618
+ export interface IChangeSet {
619
+ ops: IOpComponent[];
32
620
  }
33
621
 
622
+ /**
623
+ * Represents a single operation component.
624
+ */
625
+ export interface IOpComponent {
626
+ type: OpType;
627
+ }
34
628
 
629
+ /**
630
+ * Defines user permissions for document interaction.
631
+ */
35
632
  export interface IPermission {
36
633
  mode: BrowsingMode;
634
+ viewModePermissions?: PermissionTypes;
37
635
  }
38
636
 
637
+ /**
638
+ * Represents a user in the collaboration system.
639
+ */
39
640
  export interface IUser {
40
641
  id: string;
41
642
  name: string;
@@ -43,34 +644,53 @@ export interface IUser {
43
644
  permission?: IPermission;
44
645
  }
45
646
 
647
+ /**
648
+ * Represents selection data for a worksheet.
649
+ */
650
+ export interface ISelections {
651
+ selections?: Range[];
652
+ sheetId?: string;
653
+ }
654
+
655
+ /**
656
+ * Represents presence information for a user.
657
+ */
46
658
  export interface IPresence {
47
659
  user: IUser;
48
- status: {
49
- selections?: ISelections;
50
- };
660
+ status: { selections?: ISelections };
51
661
  }
52
-
662
+ /**
663
+ * Binds a workbook to a presence instance.
664
+ * @param {any} workbook - The instance of GC.Spread.Sheets.Workbook.
665
+ * @param {Presence<IPresence>} presence - The presence instance.
666
+ * @param {IUser} user - The user information.
667
+ * @param {IBindPresenceOptions} [options] - Optional binding options.
668
+ * @returns {Promise<void>} A promise that resolves when the binding is complete.
669
+ */
670
+ export declare function bindPresence(workbook: any, presence: Presence<IPresence>, user: IUser, options?: IBindPresenceOptions): Promise<void>;
671
+ /**
672
+ * Options for binding presence to a workbook.
673
+ */
53
674
  export interface IBindPresenceOptions {
54
675
  onPresencesUpdate?: (presences?: IPresence[]) => void;
55
676
  colorScheme?: string[];
56
677
  }
57
678
  /**
58
- * Binds workbook with the presence.
59
- * @param workbook - The instance of GC.Spread.Sheets.Workbook.
60
- * @param {Presence} presence - The instance of Presence.
61
- * @param {IUser} user - The user info.
62
- * @param {IBindPresenceOptions} [options] - The bind presence options.
679
+ * Binds a workbook to a shared document.
680
+ * @param {any} workbook - The instance of GC.Spread.Sheets.Workbook.
681
+ * @param {SharedDoc<any, IChangeSet>} doc - The instance of SharedDoc.
682
+ * @returns {Promise<void>} A promise that resolves when the binding is complete.
683
+ */
684
+ export declare function bind(workbook: any, doc: SharedDoc<any, IChangeSet>): Promise<void>;
685
+ /**
686
+ * Defines the interface for a worksheet.
63
687
  */
64
- export declare function bindPresence(workbook: any, presence: Presence<IPresence>, user: IUser, options?: IBindPresenceOptions): void;
65
-
66
688
  export interface IWorksheet {
67
689
  getId(): string;
68
690
  getSelections(): Range[];
69
691
  }
70
692
 
71
- export interface IPresence {
72
- user: IUser;
73
- status: {
74
- selections?: ISelections;
75
- };
76
- }
693
+ /**
694
+ * Defines the OT type for spreadsheets.
695
+ **/
696
+ export declare const type: OT_Type<unknown, IChangeSet>;