@bilig/headless 0.8.0 → 0.8.2

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.
Files changed (164) hide show
  1. package/README.md +15 -0
  2. package/dist/persistence.d.ts +1 -1
  3. package/dist/persistence.js +13 -11
  4. package/dist/persistence.js.map +1 -1
  5. package/dist/tracked-cell-index-changes.d.ts +1 -7
  6. package/dist/tracked-cell-index-changes.js +20 -434
  7. package/dist/tracked-cell-index-changes.js.map +1 -1
  8. package/dist/tracked-cell-lazy-physical-changes.d.ts +21 -0
  9. package/dist/tracked-cell-lazy-physical-changes.js +333 -0
  10. package/dist/tracked-cell-lazy-physical-changes.js.map +1 -0
  11. package/dist/tracked-cell-value-read.d.ts +18 -0
  12. package/dist/tracked-cell-value-read.js +46 -0
  13. package/dist/tracked-cell-value-read.js.map +1 -0
  14. package/dist/tracked-engine-event-refs.d.ts +1 -1
  15. package/dist/tracked-engine-event-refs.js +14 -4
  16. package/dist/tracked-engine-event-refs.js.map +1 -1
  17. package/dist/tracked-index-source-order.d.ts +5 -0
  18. package/dist/tracked-index-source-order.js +15 -0
  19. package/dist/tracked-index-source-order.js.map +1 -0
  20. package/dist/work-paper-address-format.d.ts +33 -0
  21. package/dist/work-paper-address-format.js +116 -0
  22. package/dist/work-paper-address-format.js.map +1 -0
  23. package/dist/work-paper-axis-helpers.d.ts +26 -0
  24. package/dist/work-paper-axis-helpers.js +104 -0
  25. package/dist/work-paper-axis-helpers.js.map +1 -0
  26. package/dist/work-paper-capability-checks.d.ts +17 -0
  27. package/dist/work-paper-capability-checks.js +101 -0
  28. package/dist/work-paper-capability-checks.js.map +1 -0
  29. package/dist/work-paper-capability-operations.d.ts +34 -0
  30. package/dist/work-paper-capability-operations.js +70 -0
  31. package/dist/work-paper-capability-operations.js.map +1 -0
  32. package/dist/work-paper-capability-surface.d.ts +97 -0
  33. package/dist/work-paper-capability-surface.js +236 -0
  34. package/dist/work-paper-capability-surface.js.map +1 -0
  35. package/dist/work-paper-cell-content-setter.d.ts +37 -0
  36. package/dist/work-paper-cell-content-setter.js +87 -0
  37. package/dist/work-paper-cell-content-setter.js.map +1 -0
  38. package/dist/work-paper-cell-mutation-refs.d.ts +23 -0
  39. package/dist/work-paper-cell-mutation-refs.js +50 -0
  40. package/dist/work-paper-cell-mutation-refs.js.map +1 -0
  41. package/dist/work-paper-cell-read.d.ts +41 -0
  42. package/dist/work-paper-cell-read.js +54 -0
  43. package/dist/work-paper-cell-read.js.map +1 -0
  44. package/dist/work-paper-clipboard-operations.d.ts +24 -0
  45. package/dist/work-paper-clipboard-operations.js +56 -0
  46. package/dist/work-paper-clipboard-operations.js.map +1 -0
  47. package/dist/work-paper-clipboard.d.ts +13 -0
  48. package/dist/work-paper-clipboard.js +19 -0
  49. package/dist/work-paper-clipboard.js.map +1 -0
  50. package/dist/work-paper-config.d.ts +11 -0
  51. package/dist/work-paper-config.js +247 -0
  52. package/dist/work-paper-config.js.map +1 -0
  53. package/dist/work-paper-date-time.d.ts +4 -0
  54. package/dist/work-paper-date-time.js +38 -0
  55. package/dist/work-paper-date-time.js.map +1 -0
  56. package/dist/work-paper-dependency-refs.d.ts +11 -0
  57. package/dist/work-paper-dependency-refs.js +74 -0
  58. package/dist/work-paper-dependency-refs.js.map +1 -0
  59. package/dist/work-paper-emitter.d.ts +22 -0
  60. package/dist/work-paper-emitter.js +130 -0
  61. package/dist/work-paper-emitter.js.map +1 -0
  62. package/dist/work-paper-engine-event-tracker.d.ts +24 -0
  63. package/dist/work-paper-engine-event-tracker.js +92 -0
  64. package/dist/work-paper-engine-event-tracker.js.map +1 -0
  65. package/dist/work-paper-errors.d.ts +4 -0
  66. package/dist/work-paper-errors.js +7 -0
  67. package/dist/work-paper-errors.js.map +1 -1
  68. package/dist/work-paper-existing-numeric-fast-path.d.ts +31 -0
  69. package/dist/work-paper-existing-numeric-fast-path.js +120 -0
  70. package/dist/work-paper-existing-numeric-fast-path.js.map +1 -0
  71. package/dist/work-paper-fill-helpers.d.ts +8 -0
  72. package/dist/work-paper-fill-helpers.js +34 -0
  73. package/dist/work-paper-fill-helpers.js.map +1 -0
  74. package/dist/work-paper-formula-analysis.d.ts +18 -0
  75. package/dist/work-paper-formula-analysis.js +54 -0
  76. package/dist/work-paper-formula-analysis.js.map +1 -0
  77. package/dist/work-paper-formula-rewrite.d.ts +22 -0
  78. package/dist/work-paper-formula-rewrite.js +71 -0
  79. package/dist/work-paper-formula-rewrite.js.map +1 -0
  80. package/dist/work-paper-function-registry.d.ts +39 -0
  81. package/dist/work-paper-function-registry.js +66 -0
  82. package/dist/work-paper-function-registry.js.map +1 -0
  83. package/dist/work-paper-history-operations.d.ts +15 -0
  84. package/dist/work-paper-history-operations.js +14 -0
  85. package/dist/work-paper-history-operations.js.map +1 -0
  86. package/dist/work-paper-history.d.ts +50 -0
  87. package/dist/work-paper-history.js +136 -0
  88. package/dist/work-paper-history.js.map +1 -0
  89. package/dist/work-paper-internals.d.ts +24 -0
  90. package/dist/work-paper-internals.js +59 -0
  91. package/dist/work-paper-internals.js.map +1 -0
  92. package/dist/work-paper-literal-mutation-queue.d.ts +18 -0
  93. package/dist/work-paper-literal-mutation-queue.js +40 -0
  94. package/dist/work-paper-literal-mutation-queue.js.map +1 -0
  95. package/dist/work-paper-matrix-application.d.ts +31 -0
  96. package/dist/work-paper-matrix-application.js +85 -0
  97. package/dist/work-paper-matrix-application.js.map +1 -0
  98. package/dist/work-paper-mutation-queues.d.ts +29 -0
  99. package/dist/work-paper-mutation-queues.js +72 -0
  100. package/dist/work-paper-mutation-queues.js.map +1 -0
  101. package/dist/work-paper-named-expression-fast-path.d.ts +37 -0
  102. package/dist/work-paper-named-expression-fast-path.js +100 -0
  103. package/dist/work-paper-named-expression-fast-path.js.map +1 -0
  104. package/dist/work-paper-named-expression-helpers.d.ts +54 -0
  105. package/dist/work-paper-named-expression-helpers.js +179 -0
  106. package/dist/work-paper-named-expression-helpers.js.map +1 -0
  107. package/dist/work-paper-named-expression-operations.d.ts +39 -0
  108. package/dist/work-paper-named-expression-operations.js +82 -0
  109. package/dist/work-paper-named-expression-operations.js.map +1 -0
  110. package/dist/work-paper-public-surface.d.ts +73 -0
  111. package/dist/work-paper-public-surface.js +165 -0
  112. package/dist/work-paper-public-surface.js.map +1 -0
  113. package/dist/work-paper-read-operations.d.ts +52 -0
  114. package/dist/work-paper-read-operations.js +185 -0
  115. package/dist/work-paper-read-operations.js.map +1 -0
  116. package/dist/work-paper-runtime-adapters.d.ts +144 -0
  117. package/dist/work-paper-runtime-adapters.js +256 -0
  118. package/dist/work-paper-runtime-adapters.js.map +1 -0
  119. package/dist/work-paper-runtime-helpers.d.ts +27 -0
  120. package/dist/work-paper-runtime-helpers.js +305 -0
  121. package/dist/work-paper-runtime-helpers.js.map +1 -0
  122. package/dist/work-paper-runtime-surface.d.ts +137 -0
  123. package/dist/work-paper-runtime-surface.js +702 -0
  124. package/dist/work-paper-runtime-surface.js.map +1 -0
  125. package/dist/work-paper-runtime.d.ts +56 -285
  126. package/dist/work-paper-runtime.js +403 -4809
  127. package/dist/work-paper-runtime.js.map +1 -1
  128. package/dist/work-paper-scratch-evaluator.js +29 -26
  129. package/dist/work-paper-scratch-evaluator.js.map +1 -1
  130. package/dist/work-paper-sheet-dimension-cache.d.ts +36 -0
  131. package/dist/work-paper-sheet-dimension-cache.js +158 -0
  132. package/dist/work-paper-sheet-dimension-cache.js.map +1 -0
  133. package/dist/work-paper-sheet-initialization.d.ts +19 -0
  134. package/dist/work-paper-sheet-initialization.js +93 -0
  135. package/dist/work-paper-sheet-initialization.js.map +1 -0
  136. package/dist/work-paper-sheet-inspection.d.ts +66 -0
  137. package/dist/work-paper-sheet-inspection.js +204 -0
  138. package/dist/work-paper-sheet-inspection.js.map +1 -0
  139. package/dist/work-paper-sheet-operations.d.ts +59 -0
  140. package/dist/work-paper-sheet-operations.js +104 -0
  141. package/dist/work-paper-sheet-operations.js.map +1 -0
  142. package/dist/work-paper-sheet-read.d.ts +21 -0
  143. package/dist/work-paper-sheet-read.js +32 -0
  144. package/dist/work-paper-sheet-read.js.map +1 -0
  145. package/dist/work-paper-sheet-rename-fast-path.d.ts +18 -0
  146. package/dist/work-paper-sheet-rename-fast-path.js +43 -0
  147. package/dist/work-paper-sheet-rename-fast-path.js.map +1 -0
  148. package/dist/work-paper-static-api.d.ts +18 -0
  149. package/dist/work-paper-static-api.js +44 -0
  150. package/dist/work-paper-static-api.js.map +1 -0
  151. package/dist/work-paper-static-registry.d.ts +21 -0
  152. package/dist/work-paper-static-registry.js +150 -0
  153. package/dist/work-paper-static-registry.js.map +1 -0
  154. package/dist/work-paper-tracked-change-reducer.d.ts +41 -0
  155. package/dist/work-paper-tracked-change-reducer.js +281 -0
  156. package/dist/work-paper-tracked-change-reducer.js.map +1 -0
  157. package/dist/work-paper-tracked-event-helpers.d.ts +89 -0
  158. package/dist/work-paper-tracked-event-helpers.js +366 -0
  159. package/dist/work-paper-tracked-event-helpers.js.map +1 -0
  160. package/dist/work-paper-types.d.ts +6 -5
  161. package/dist/work-paper-visibility-snapshot.d.ts +36 -0
  162. package/dist/work-paper-visibility-snapshot.js +62 -0
  163. package/dist/work-paper-visibility-snapshot.js.map +1 -0
  164. package/package.json +13 -5
@@ -0,0 +1,236 @@
1
+ import { editWorkPaperAxisIntervals, moveWorkPaperAxis, setWorkPaperAxisOrder, swapWorkPaperAxisIndexes, } from './work-paper-axis-helpers.js';
2
+ import { setWorkPaperCellContents } from './work-paper-cell-content-setter.js';
3
+ export class WorkPaperCapabilitySurface {
4
+ isItPossibleToSetCellContents(addressOrRange, content) {
5
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToSetCellContents(addressOrRange, content);
6
+ }
7
+ isItPossibleToSwapRowIndexes(sheetId, rowAOrMappings, rowB) {
8
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToSwapRowIndexes(sheetId, rowAOrMappings, rowB);
9
+ }
10
+ isItPossibleToSetRowOrder(sheetId, rowOrder) {
11
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToSetRowOrder(sheetId, rowOrder);
12
+ }
13
+ isItPossibleToSwapColumnIndexes(sheetId, columnAOrMappings, columnB) {
14
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToSwapColumnIndexes(sheetId, columnAOrMappings, columnB);
15
+ }
16
+ isItPossibleToSetColumnOrder(sheetId, columnOrder) {
17
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToSetColumnOrder(sheetId, columnOrder);
18
+ }
19
+ isItPossibleToAddRows(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
20
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToAddRows(sheetId, startOrInterval, countOrInterval, restIntervals);
21
+ }
22
+ isItPossibleToRemoveRows(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
23
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToRemoveRows(sheetId, startOrInterval, countOrInterval, restIntervals);
24
+ }
25
+ isItPossibleToAddColumns(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
26
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToAddColumns(sheetId, startOrInterval, countOrInterval, restIntervals);
27
+ }
28
+ isItPossibleToRemoveColumns(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
29
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToRemoveColumns(sheetId, startOrInterval, countOrInterval, restIntervals);
30
+ }
31
+ isItPossibleToMoveCells(source, target) {
32
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToMoveCells(source, target);
33
+ }
34
+ isItPossibleToMoveRows(sheetId, start, count, target) {
35
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToMoveRows(sheetId, start, count, target);
36
+ }
37
+ isItPossibleToMoveColumns(sheetId, start, count, target) {
38
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToMoveColumns(sheetId, start, count, target);
39
+ }
40
+ isItPossibleToAddSheet(sheetName) {
41
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToAddSheet(sheetName);
42
+ }
43
+ isItPossibleToRemoveSheet(sheetId) {
44
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToRemoveSheet(sheetId);
45
+ }
46
+ isItPossibleToClearSheet(sheetId) {
47
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToClearSheet(sheetId);
48
+ }
49
+ isItPossibleToReplaceSheetContent(sheetId, content) {
50
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToReplaceSheetContent(sheetId, content);
51
+ }
52
+ isItPossibleToRenameSheet(sheetId, nextName) {
53
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToRenameSheet(sheetId, nextName);
54
+ }
55
+ isItPossibleToAddNamedExpression(expressionName, expression, scope) {
56
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToAddNamedExpression(expressionName, expression, scope);
57
+ }
58
+ isItPossibleToChangeNamedExpression(expressionName, expression, scope) {
59
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToChangeNamedExpression(expressionName, expression, scope);
60
+ }
61
+ isItPossibleToRemoveNamedExpression(expressionName, scope) {
62
+ return this.runtimeAdapters.capabilityOperations.isItPossibleToRemoveNamedExpression(expressionName, scope);
63
+ }
64
+ copy(range) {
65
+ return this.runtimeAdapters.clipboardOperations.copy(range);
66
+ }
67
+ cut(range) {
68
+ return this.runtimeAdapters.clipboardOperations.cut(range);
69
+ }
70
+ paste(targetLeftCorner) {
71
+ return this.runtimeAdapters.clipboardOperations.paste(targetLeftCorner);
72
+ }
73
+ isClipboardEmpty() {
74
+ return this.runtimeAdapters.clipboardOperations.isClipboardEmpty();
75
+ }
76
+ clearClipboard() {
77
+ this.runtimeAdapters.clipboardOperations.clearClipboard();
78
+ }
79
+ getFillRangeData(source, target, offsetsFromTarget = false) {
80
+ return this.runtimeAdapters.clipboardOperations.getFillRangeData(source, target, offsetsFromTarget);
81
+ }
82
+ getCellValue(address) {
83
+ return this.runtimeAdapters.readOperations.getCellValue(address);
84
+ }
85
+ getCellFormula(address) {
86
+ return this.runtimeAdapters.readOperations.getCellFormula(address);
87
+ }
88
+ getCellHyperlink(address) {
89
+ return this.runtimeAdapters.readOperations.getCellHyperlink(address);
90
+ }
91
+ getCellSerialized(address) {
92
+ return this.runtimeAdapters.readOperations.getCellSerialized(address);
93
+ }
94
+ getRangeValues(range) {
95
+ return this.runtimeAdapters.readOperations.getRangeValues(range);
96
+ }
97
+ getRangeFormulas(range) {
98
+ return this.runtimeAdapters.readOperations.getRangeFormulas(range);
99
+ }
100
+ getRangeSerialized(range) {
101
+ return this.runtimeAdapters.readOperations.getRangeSerialized(range);
102
+ }
103
+ getSheetValues(sheetId) {
104
+ return this.runtimeAdapters.readOperations.getSheetValues(sheetId);
105
+ }
106
+ getSheetFormulas(sheetId) {
107
+ return this.runtimeAdapters.readOperations.getSheetFormulas(sheetId);
108
+ }
109
+ getSheetSerialized(sheetId) {
110
+ return this.runtimeAdapters.readOperations.getSheetSerialized(sheetId);
111
+ }
112
+ getAllSheetsValues() {
113
+ return this.runtimeAdapters.readOperations.getAllSheetsValues();
114
+ }
115
+ getAllSheetsFormulas() {
116
+ return this.runtimeAdapters.readOperations.getAllSheetsFormulas();
117
+ }
118
+ getAllSheetsSerialized() {
119
+ return this.runtimeAdapters.readOperations.getAllSheetsSerialized();
120
+ }
121
+ getAllSheetsDimensions() {
122
+ return this.runtimeAdapters.readOperations.getAllSheetsDimensions();
123
+ }
124
+ getSheetDimensions(sheetId) {
125
+ return this.runtimeAdapters.readOperations.getSheetDimensions(sheetId);
126
+ }
127
+ simpleCellAddressFromString(value, defaultSheetId) {
128
+ return this.runtimeAdapters.readOperations.simpleCellAddressFromString(value, defaultSheetId);
129
+ }
130
+ simpleCellRangeFromString(value, defaultSheetId) {
131
+ return this.runtimeAdapters.readOperations.simpleCellRangeFromString(value, defaultSheetId);
132
+ }
133
+ simpleCellAddressToString(address, optionsOrContextSheetId = {}) {
134
+ return this.runtimeAdapters.readOperations.simpleCellAddressToString(address, optionsOrContextSheetId);
135
+ }
136
+ simpleCellRangeToString(range, optionsOrContextSheetId = {}) {
137
+ return this.runtimeAdapters.readOperations.simpleCellRangeToString(range, optionsOrContextSheetId);
138
+ }
139
+ getCellType(address) {
140
+ return this.runtimeAdapters.readOperations.getCellType(address);
141
+ }
142
+ doesCellHaveSimpleValue(address) {
143
+ return this.runtimeAdapters.readOperations.doesCellHaveSimpleValue(address);
144
+ }
145
+ doesCellHaveFormula(address) {
146
+ return this.runtimeAdapters.readOperations.doesCellHaveFormula(address);
147
+ }
148
+ isCellEmpty(address) {
149
+ return this.runtimeAdapters.readOperations.isCellEmpty(address);
150
+ }
151
+ isCellPartOfArray(address) {
152
+ return this.runtimeAdapters.readOperations.isCellPartOfArray(address);
153
+ }
154
+ getCellValueType(address) {
155
+ return this.runtimeAdapters.readOperations.getCellValueType(address);
156
+ }
157
+ getCellValueDetailedType(address) {
158
+ return this.runtimeAdapters.readOperations.getCellValueDetailedType(address);
159
+ }
160
+ getCellValueFormat(address) {
161
+ return this.runtimeAdapters.readOperations.getCellValueFormat(address);
162
+ }
163
+ getNamedExpressionValue(name, scope) {
164
+ return this.runtimeAdapters.namedExpressionOperations.getNamedExpressionValue(name, scope);
165
+ }
166
+ getNamedExpressionFormula(name, scope) {
167
+ return this.runtimeAdapters.namedExpressionOperations.getNamedExpressionFormula(name, scope);
168
+ }
169
+ getNamedExpression(name, scope) {
170
+ return this.runtimeAdapters.namedExpressionOperations.getNamedExpression(name, scope);
171
+ }
172
+ addNamedExpression(expressionName, expression, scope, options) {
173
+ return this.runtimeAdapters.namedExpressionOperations.addNamedExpression(expressionName, expression, scope, options);
174
+ }
175
+ changeNamedExpression(expressionName, expression, scope, options) {
176
+ return this.runtimeAdapters.namedExpressionOperations.changeNamedExpression(expressionName, expression, scope, options);
177
+ }
178
+ removeNamedExpression(expressionName, scope) {
179
+ return this.runtimeAdapters.namedExpressionOperations.removeNamedExpression(expressionName, scope);
180
+ }
181
+ listNamedExpressions(scope) {
182
+ return this.runtimeAdapters.namedExpressionOperations.listNamedExpressions(scope);
183
+ }
184
+ getAllNamedExpressionsSerialized() {
185
+ return this.runtimeAdapters.namedExpressionOperations.getAllNamedExpressionsSerialized();
186
+ }
187
+ setCellContents(address, content) {
188
+ return setWorkPaperCellContents(this.runtimeAdapters.setCellContentsRuntime, address, content);
189
+ }
190
+ swapRowIndexes(sheetId, rowAOrMappings, rowB) {
191
+ return swapWorkPaperAxisIndexes(this.runtimeAdapters.axisEditRuntime, 'row', sheetId, rowAOrMappings, rowB);
192
+ }
193
+ setRowOrder(sheetId, rowOrder) {
194
+ return setWorkPaperAxisOrder(this.runtimeAdapters.axisEditRuntime, 'row', sheetId, rowOrder);
195
+ }
196
+ swapColumnIndexes(sheetId, columnAOrMappings, columnB) {
197
+ return swapWorkPaperAxisIndexes(this.runtimeAdapters.axisEditRuntime, 'column', sheetId, columnAOrMappings, columnB);
198
+ }
199
+ setColumnOrder(sheetId, columnOrder) {
200
+ return setWorkPaperAxisOrder(this.runtimeAdapters.axisEditRuntime, 'column', sheetId, columnOrder);
201
+ }
202
+ addRows(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
203
+ return editWorkPaperAxisIntervals(this.runtimeAdapters.axisEditRuntime, 'row', 'add', sheetId, startOrInterval, countOrInterval, restIntervals);
204
+ }
205
+ removeRows(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
206
+ return editWorkPaperAxisIntervals(this.runtimeAdapters.axisEditRuntime, 'row', 'remove', sheetId, startOrInterval, countOrInterval, restIntervals);
207
+ }
208
+ addColumns(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
209
+ return editWorkPaperAxisIntervals(this.runtimeAdapters.axisEditRuntime, 'column', 'add', sheetId, startOrInterval, countOrInterval, restIntervals);
210
+ }
211
+ removeColumns(sheetId, startOrInterval, countOrInterval, ...restIntervals) {
212
+ return editWorkPaperAxisIntervals(this.runtimeAdapters.axisEditRuntime, 'column', 'remove', sheetId, startOrInterval, countOrInterval, restIntervals);
213
+ }
214
+ moveRows(sheetId, start, count, target) {
215
+ return moveWorkPaperAxis(this.runtimeAdapters.axisEditRuntime, 'row', sheetId, start, count, target);
216
+ }
217
+ moveColumns(sheetId, start, count, target) {
218
+ return moveWorkPaperAxis(this.runtimeAdapters.axisEditRuntime, 'column', sheetId, start, count, target);
219
+ }
220
+ addSheet(sheetName) {
221
+ return this.runtimeAdapters.sheetOperations.addSheet(sheetName);
222
+ }
223
+ removeSheet(sheetId) {
224
+ return this.runtimeAdapters.sheetOperations.removeSheet(sheetId);
225
+ }
226
+ clearSheet(sheetId) {
227
+ return this.runtimeAdapters.sheetOperations.clearSheet(sheetId);
228
+ }
229
+ setSheetContent(sheetId, content) {
230
+ return this.runtimeAdapters.sheetOperations.setSheetContent(sheetId, content);
231
+ }
232
+ renameSheet(sheetId, nextName) {
233
+ return this.runtimeAdapters.sheetOperations.renameSheet(sheetId, nextName);
234
+ }
235
+ }
236
+ //# sourceMappingURL=work-paper-capability-surface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"work-paper-capability-surface.js","sourceRoot":"","sources":["../src/work-paper-capability-surface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { EngineCellMutationRef, SheetRecord, SpreadsheetEngine } from '@bilig/core';
2
+ import type { WorkPaperCellMutationApplyOptions } from './work-paper-cell-mutation-refs.js';
3
+ import type { RawCellContent, WorkPaperCellAddress, WorkPaperChange, WorkPaperConfig, WorkPaperSheet } from './work-paper-types.js';
4
+ export interface WorkPaperSetCellContentsRuntime {
5
+ readonly assertNotDisposed: () => void;
6
+ readonly getConfig: () => Pick<WorkPaperConfig, 'maxRows' | 'maxColumns'>;
7
+ readonly getEngine: () => SpreadsheetEngine;
8
+ readonly sheetRecord: (sheetId: number) => SheetRecord;
9
+ readonly getVisibleCellIndexInSheet: (sheet: SheetRecord, row: number, col: number) => number | undefined;
10
+ readonly isEvaluationSuspended: () => boolean;
11
+ readonly getBatchDepth: () => number;
12
+ readonly enqueueSuspendedLiteralMutation: (sheetId: number, row: number, col: number, content: RawCellContent, cellIndex: number | undefined) => boolean;
13
+ readonly enqueueDeferredBatchLiteral: (sheetId: number, row: number, col: number, content: RawCellContent, cellIndex: number | undefined) => boolean;
14
+ readonly trySetExistingNumericCellContentsWithTrackedFastPath: (args: {
15
+ readonly sheet: SheetRecord;
16
+ readonly address: WorkPaperCellAddress;
17
+ readonly cellIndex: number;
18
+ readonly value: number;
19
+ }) => WorkPaperChange[] | null;
20
+ readonly flushPendingBatchOps: () => void;
21
+ readonly rewriteFormulaForStorage: (formula: string, ownerSheetId: number) => string;
22
+ readonly applyCellMutationRefs: (refs: readonly EngineCellMutationRef[], options: WorkPaperCellMutationApplyOptions) => void;
23
+ readonly canUseTrackedMutationFastPath: () => boolean;
24
+ readonly captureTrackedChangesWithoutVisibilityCache: (mutate: () => void, options: {
25
+ readonly singleLiteralChange?: {
26
+ readonly address: WorkPaperCellAddress;
27
+ readonly cellIndex?: number;
28
+ readonly isPhysicalSheet: boolean;
29
+ readonly sheetName: string;
30
+ readonly value: RawCellContent;
31
+ };
32
+ }) => WorkPaperChange[];
33
+ readonly captureChanges: (mutate: () => void) => WorkPaperChange[];
34
+ readonly isItPossibleToSetCellContents: (address: WorkPaperCellAddress, content: RawCellContent | WorkPaperSheet) => boolean;
35
+ readonly applyMatrixContents: (address: WorkPaperCellAddress, content: WorkPaperSheet) => void;
36
+ }
37
+ export declare function setWorkPaperCellContents(runtime: WorkPaperSetCellContentsRuntime, address: WorkPaperCellAddress, content: RawCellContent | WorkPaperSheet): WorkPaperChange[];
@@ -0,0 +1,87 @@
1
+ import { MAX_COLS, MAX_ROWS } from '@bilig/protocol';
2
+ import { WorkPaperOperationError } from './work-paper-errors.js';
3
+ import { assertRowAndColumn, isFormulaContent, isWorkPaperSheetMatrix } from './work-paper-runtime-helpers.js';
4
+ import { buildWorkPaperRawCellMutation } from './work-paper-literal-mutation-queue.js';
5
+ export function setWorkPaperCellContents(runtime, address, content) {
6
+ runtime.assertNotDisposed();
7
+ const sheet = runtime.sheetRecord(address.sheet);
8
+ assertRowAndColumn(address.row, 'address.row');
9
+ assertRowAndColumn(address.col, 'address.col');
10
+ if (!isWorkPaperSheetMatrix(content)) {
11
+ const config = runtime.getConfig();
12
+ if (address.row >= (config.maxRows ?? MAX_ROWS) || address.col >= (config.maxColumns ?? MAX_COLS)) {
13
+ throw new WorkPaperOperationError('Cell contents cannot be set');
14
+ }
15
+ const visibleCellIndex = runtime.getVisibleCellIndexInSheet(sheet, address.row, address.col);
16
+ if (runtime.isEvaluationSuspended() &&
17
+ runtime.enqueueSuspendedLiteralMutation(address.sheet, address.row, address.col, content, visibleCellIndex)) {
18
+ return [];
19
+ }
20
+ if (runtime.getBatchDepth() !== 0 &&
21
+ runtime.enqueueDeferredBatchLiteral(address.sheet, address.row, address.col, content, visibleCellIndex)) {
22
+ return [];
23
+ }
24
+ if (typeof content === 'number' && visibleCellIndex !== undefined) {
25
+ const fastPathChanges = runtime.trySetExistingNumericCellContentsWithTrackedFastPath({
26
+ sheet,
27
+ address,
28
+ cellIndex: visibleCellIndex,
29
+ value: content,
30
+ });
31
+ if (fastPathChanges !== null) {
32
+ return fastPathChanges;
33
+ }
34
+ }
35
+ const mutate = () => {
36
+ runtime.flushPendingBatchOps();
37
+ const existingNumericMutationEngine = runtime.getEngine();
38
+ if (typeof content === 'number' &&
39
+ visibleCellIndex !== undefined &&
40
+ sheet.structureVersion === 1 &&
41
+ existingNumericMutationEngine.tryApplyExistingNumericCellMutationAt?.({
42
+ sheetId: address.sheet,
43
+ row: address.row,
44
+ col: address.col,
45
+ cellIndex: visibleCellIndex,
46
+ value: content,
47
+ })) {
48
+ return;
49
+ }
50
+ const mutation = buildWorkPaperRawCellMutation({
51
+ row: address.row,
52
+ col: address.col,
53
+ content,
54
+ rewriteFormulaForStorage: (formula) => runtime.rewriteFormulaForStorage(formula, address.sheet),
55
+ });
56
+ runtime.applyCellMutationRefs([{ sheetId: address.sheet, mutation, ...(visibleCellIndex !== undefined ? { cellIndex: visibleCellIndex } : {}) }], {
57
+ captureUndo: true,
58
+ potentialNewCells: content === null || visibleCellIndex !== undefined ? 0 : 1,
59
+ source: 'local',
60
+ returnUndoOps: false,
61
+ reuseRefs: true,
62
+ });
63
+ };
64
+ if (runtime.canUseTrackedMutationFastPath()) {
65
+ const captureOptions = {};
66
+ if (!isFormulaContent(content)) {
67
+ captureOptions.singleLiteralChange = {
68
+ address: { sheet: address.sheet, row: address.row, col: address.col },
69
+ ...(visibleCellIndex === undefined ? {} : { cellIndex: visibleCellIndex }),
70
+ isPhysicalSheet: sheet.structureVersion === 1,
71
+ sheetName: sheet.name,
72
+ value: content,
73
+ };
74
+ }
75
+ return runtime.captureTrackedChangesWithoutVisibilityCache(mutate, captureOptions);
76
+ }
77
+ return runtime.captureChanges(mutate);
78
+ }
79
+ if (!runtime.isItPossibleToSetCellContents(address, content)) {
80
+ throw new WorkPaperOperationError('Cell contents cannot be set');
81
+ }
82
+ return runtime.captureChanges(() => {
83
+ runtime.flushPendingBatchOps();
84
+ runtime.applyMatrixContents(address, content);
85
+ });
86
+ }
87
+ //# sourceMappingURL=work-paper-cell-content-setter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"work-paper-cell-content-setter.js","sourceRoot":"","sources":["../src/work-paper-cell-content-setter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { EngineCellMutationRef } from '@bilig/core';
2
+ export interface WorkPaperCellMutationApplyOptions {
3
+ readonly captureUndo?: boolean;
4
+ readonly potentialNewCells?: number;
5
+ readonly source?: 'local' | 'restore';
6
+ readonly returnUndoOps?: boolean;
7
+ readonly reuseRefs?: boolean;
8
+ }
9
+ export interface WorkPaperCellMutationApplyRuntime {
10
+ readonly isEvaluationSuspended: () => boolean;
11
+ readonly appendSuspendedCellMutationRefs: (refs: readonly EngineCellMutationRef[]) => void;
12
+ readonly addSuspendedCellMutationPotentialNewCells: (amount: number) => void;
13
+ readonly applyCellMutationsAtWithOptions: (refs: readonly EngineCellMutationRef[], options: WorkPaperCellMutationApplyOptions) => void;
14
+ readonly updateSheetDimensionsAfterCellMutationRefs: (refs: readonly EngineCellMutationRef[]) => void;
15
+ }
16
+ export declare function applyWorkPaperCellMutationRefs(runtime: WorkPaperCellMutationApplyRuntime, refs: readonly EngineCellMutationRef[], options: WorkPaperCellMutationApplyOptions): void;
17
+ export declare function applyQueuedWorkPaperCellMutationRefs(args: {
18
+ readonly refs: readonly EngineCellMutationRef[];
19
+ readonly potentialNewCells: number;
20
+ readonly applyCellMutationsAtWithOptions: (refs: readonly EngineCellMutationRef[], options: WorkPaperCellMutationApplyOptions) => void;
21
+ readonly updateSheetDimensionsAfterCellMutationRefs: (refs: readonly EngineCellMutationRef[]) => void;
22
+ readonly alwaysUpdateDimensions?: boolean;
23
+ }): void;
@@ -0,0 +1,50 @@
1
+ import { canSkipDimensionUpdateAfterLiteralMutation, countPotentialNewTrackedCellMutations } from './work-paper-tracked-event-helpers.js';
2
+ export function applyWorkPaperCellMutationRefs(runtime, refs, options) {
3
+ if (runtime.isEvaluationSuspended() && (options.source ?? 'local') === 'local') {
4
+ runtime.appendSuspendedCellMutationRefs(cloneWorkPaperCellMutationRefs(refs));
5
+ runtime.addSuspendedCellMutationPotentialNewCells(options.potentialNewCells ?? countPotentialNewTrackedCellMutations(refs));
6
+ return;
7
+ }
8
+ runtime.applyCellMutationsAtWithOptions(refs, options);
9
+ if (!canSkipDimensionUpdateAfterLiteralMutation(refs, options.potentialNewCells)) {
10
+ runtime.updateSheetDimensionsAfterCellMutationRefs(refs);
11
+ }
12
+ }
13
+ export function applyQueuedWorkPaperCellMutationRefs(args) {
14
+ args.applyCellMutationsAtWithOptions(args.refs, {
15
+ captureUndo: true,
16
+ potentialNewCells: args.potentialNewCells,
17
+ source: 'local',
18
+ returnUndoOps: false,
19
+ reuseRefs: true,
20
+ });
21
+ if (args.alwaysUpdateDimensions || !canSkipDimensionUpdateAfterLiteralMutation(args.refs, args.potentialNewCells)) {
22
+ args.updateSheetDimensionsAfterCellMutationRefs(args.refs);
23
+ }
24
+ }
25
+ function cloneWorkPaperCellMutationRefs(refs) {
26
+ return refs.map((ref) => ({
27
+ sheetId: ref.sheetId,
28
+ ...(ref.cellIndex !== undefined ? { cellIndex: ref.cellIndex } : {}),
29
+ mutation: ref.mutation.kind === 'setCellValue'
30
+ ? {
31
+ kind: 'setCellValue',
32
+ row: ref.mutation.row,
33
+ col: ref.mutation.col,
34
+ value: ref.mutation.value,
35
+ }
36
+ : ref.mutation.kind === 'setCellFormula'
37
+ ? {
38
+ kind: 'setCellFormula',
39
+ row: ref.mutation.row,
40
+ col: ref.mutation.col,
41
+ formula: ref.mutation.formula,
42
+ }
43
+ : {
44
+ kind: 'clearCell',
45
+ row: ref.mutation.row,
46
+ col: ref.mutation.col,
47
+ },
48
+ }));
49
+ }
50
+ //# sourceMappingURL=work-paper-cell-mutation-refs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"work-paper-cell-mutation-refs.js","sourceRoot":"","sources":["../src/work-paper-cell-mutation-refs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0CAA0C,EAAE,qCAAqC,EAAE,MAAM,uCAAuC,CAAA;AAkBzI,MAAM,UAAU,8BAA8B,CAC5C,OAA0C,EAC1C,IAAsC,EACtC,OAA0C;IAE1C,IAAI,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,OAAO,EAAE,CAAC;QAC/E,OAAO,CAAC,+BAA+B,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7E,OAAO,CAAC,yCAAyC,CAAC,OAAO,CAAC,iBAAiB,IAAI,qCAAqC,CAAC,IAAI,CAAC,CAAC,CAAA;QAC3H,OAAM;IACR,CAAC;IACD,OAAO,CAAC,+BAA+B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACtD,IAAI,CAAC,0CAA0C,CAAC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACjF,OAAO,CAAC,0CAA0C,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oCAAoC,CAAC,IAMpD;IACC,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,IAAI,EAAE;QAC9C,WAAW,EAAE,IAAI;QACjB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,MAAM,EAAE,OAAO;QACf,aAAa,EAAE,KAAK;QACpB,SAAS,EAAE,IAAI;KAChB,CAAC,CAAA;IACF,IAAI,IAAI,CAAC,sBAAsB,IAAI,CAAC,0CAA0C,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAClH,IAAI,CAAC,0CAA0C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC;AAED,SAAS,8BAA8B,CAAC,IAAsC;IAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,QAAQ,EACN,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc;YAClC,CAAC,CAAC;gBACE,IAAI,EAAE,cAAc;gBACpB,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG;gBACrB,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG;gBACrB,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;aAC1B;YACH,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,gBAAgB;gBACtC,CAAC,CAAC;oBACE,IAAI,EAAE,gBAAgB;oBACtB,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG;oBACrB,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG;oBACrB,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO;iBAC9B;gBACH,CAAC,CAAC;oBACE,IAAI,EAAE,WAAW;oBACjB,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG;oBACrB,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG;iBACtB;KACV,CAAC,CAAC,CAAA;AACL,CAAC"}
@@ -0,0 +1,41 @@
1
+ import type { SheetRecord, SpreadsheetEngine } from '@bilig/core';
2
+ import { type CellValue } from '@bilig/protocol';
3
+ import type { WorkPaperCellAddress, WorkPaperCellRange, WorkPaperCellType, WorkPaperCellValueDetailedType, WorkPaperCellValueType } from './work-paper-types.js';
4
+ export declare function getVisibleWorkPaperCellIndexInSheet(sheet: SheetRecord, row: number, col: number): number | undefined;
5
+ export declare function readWorkPaperCellValue(args: {
6
+ readonly engine: SpreadsheetEngine;
7
+ readonly sheet: SheetRecord;
8
+ readonly address: WorkPaperCellAddress;
9
+ }): CellValue;
10
+ export declare function readWorkPaperCellFormula(args: {
11
+ readonly engine: SpreadsheetEngine;
12
+ readonly sheetName: string;
13
+ readonly a1: string;
14
+ readonly ownerSheetId: number;
15
+ readonly restorePublicFormula: (formula: string, ownerSheetId: number) => string;
16
+ }): string | undefined;
17
+ export declare function readWorkPaperCellHyperlink(formula: string | undefined): string | undefined;
18
+ export declare function readWorkPaperRangeValues(args: {
19
+ readonly engine: SpreadsheetEngine;
20
+ readonly range: WorkPaperCellRange;
21
+ readonly rangeRef: () => Parameters<SpreadsheetEngine['getRangeValues']>[0];
22
+ }): CellValue[][];
23
+ export declare function readWorkPaperCellClassification(args: {
24
+ readonly hasFormula: boolean;
25
+ readonly isEmpty: boolean;
26
+ readonly isPartOfArray: boolean;
27
+ }): WorkPaperCellType;
28
+ export declare function readWorkPaperCellHasSimpleValue(args: {
29
+ readonly hasFormula: boolean;
30
+ readonly isEmpty: boolean;
31
+ }): boolean;
32
+ export declare function readWorkPaperCellPartOfArray(args: {
33
+ readonly address: WorkPaperCellAddress;
34
+ readonly spillRanges: ReturnType<SpreadsheetEngine['getSpillRanges']>;
35
+ readonly requireSheetId: (sheetName: string) => number;
36
+ }): boolean;
37
+ export declare function readWorkPaperCellValueType(value: CellValue): WorkPaperCellValueType;
38
+ export declare function readWorkPaperCellValueDetailedType(args: {
39
+ readonly value: CellValue;
40
+ readonly format: string | undefined;
41
+ }): WorkPaperCellValueDetailedType;
@@ -0,0 +1,54 @@
1
+ import { ValueTag } from '@bilig/protocol';
2
+ import { parseFormula } from '@bilig/formula';
3
+ import { readFastPhysicalRangeValues } from './fast-range-read.js';
4
+ import { readTrackedRuntimeCellValue } from './work-paper-tracked-event-helpers.js';
5
+ import { stripLeadingEquals } from './work-paper-runtime-helpers.js';
6
+ import { classifyWorkPaperCell, doesWorkPaperCellHaveSimpleValue, isWorkPaperCellPartOfArray, workPaperCellValueDetailedType, workPaperCellValueType, } from './work-paper-sheet-inspection.js';
7
+ export function getVisibleWorkPaperCellIndexInSheet(sheet, row, col) {
8
+ if (sheet.structureVersion === 1) {
9
+ const cellIndex = sheet.grid.getPhysical(row, col);
10
+ return cellIndex === -1 ? undefined : cellIndex;
11
+ }
12
+ return sheet.logical.getVisibleCell(row, col);
13
+ }
14
+ export function readWorkPaperCellValue(args) {
15
+ const cellIndex = getVisibleWorkPaperCellIndexInSheet(args.sheet, args.address.row, args.address.col);
16
+ return cellIndex === undefined
17
+ ? { tag: ValueTag.Empty }
18
+ : readTrackedRuntimeCellValue(args.engine.workbook.cellStore, cellIndex, args.engine.strings);
19
+ }
20
+ export function readWorkPaperCellFormula(args) {
21
+ const cell = args.engine.getCell(args.sheetName, args.a1);
22
+ return cell.formula ? `=${args.restorePublicFormula(cell.formula, args.ownerSheetId)}` : undefined;
23
+ }
24
+ export function readWorkPaperCellHyperlink(formula) {
25
+ if (!formula) {
26
+ return undefined;
27
+ }
28
+ const parsed = parseFormula(stripLeadingEquals(formula));
29
+ if (parsed.kind !== 'CallExpr' || parsed.callee.trim().toUpperCase() !== 'HYPERLINK') {
30
+ return undefined;
31
+ }
32
+ const firstArgument = parsed.args[0];
33
+ return firstArgument?.kind === 'StringLiteral' ? firstArgument.value : undefined;
34
+ }
35
+ export function readWorkPaperRangeValues(args) {
36
+ const fastValues = readFastPhysicalRangeValues(args.engine, args.range);
37
+ return fastValues ?? args.engine.getRangeValues(args.rangeRef());
38
+ }
39
+ export function readWorkPaperCellClassification(args) {
40
+ return classifyWorkPaperCell(args);
41
+ }
42
+ export function readWorkPaperCellHasSimpleValue(args) {
43
+ return doesWorkPaperCellHaveSimpleValue(args);
44
+ }
45
+ export function readWorkPaperCellPartOfArray(args) {
46
+ return isWorkPaperCellPartOfArray(args);
47
+ }
48
+ export function readWorkPaperCellValueType(value) {
49
+ return workPaperCellValueType(value);
50
+ }
51
+ export function readWorkPaperCellValueDetailedType(args) {
52
+ return workPaperCellValueDetailedType(args);
53
+ }
54
+ //# sourceMappingURL=work-paper-cell-read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"work-paper-cell-read.js","sourceRoot":"","sources":["../src/work-paper-cell-read.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { CellValue } from '@bilig/protocol';
2
+ import { type WorkPaperClipboardPayload } from './work-paper-clipboard.js';
3
+ import type { RawCellContent, WorkPaperCellAddress, WorkPaperCellRange, WorkPaperChange, WorkPaperSheet } from './work-paper-types.js';
4
+ export interface WorkPaperClipboardOperationsRuntime {
5
+ readonly assertReadable: () => void;
6
+ readonly assertNotDisposed: () => void;
7
+ readonly getClipboard: () => WorkPaperClipboardPayload | null;
8
+ readonly setClipboard: (clipboard: WorkPaperClipboardPayload | null) => void;
9
+ readonly getRangeSerialized: (range: WorkPaperCellRange) => RawCellContent[][];
10
+ readonly getRangeValues: (range: WorkPaperCellRange) => CellValue[][];
11
+ readonly batch: (operations: () => void) => WorkPaperChange[];
12
+ readonly setCellContents: (address: WorkPaperCellAddress, content: RawCellContent | WorkPaperSheet) => WorkPaperChange[];
13
+ readonly captureChanges: (mutate: () => void) => WorkPaperChange[];
14
+ readonly applySerializedMatrix: (targetLeftCorner: WorkPaperCellAddress, content: RawCellContent[][], sourceAnchor: WorkPaperCellAddress) => void;
15
+ }
16
+ export interface WorkPaperClipboardOperations {
17
+ readonly copy: (range: WorkPaperCellRange) => CellValue[][];
18
+ readonly cut: (range: WorkPaperCellRange) => CellValue[][];
19
+ readonly paste: (targetLeftCorner: WorkPaperCellAddress) => WorkPaperChange[];
20
+ readonly isClipboardEmpty: () => boolean;
21
+ readonly clearClipboard: () => void;
22
+ readonly getFillRangeData: (source: WorkPaperCellRange, target: WorkPaperCellRange, offsetsFromTarget?: boolean) => RawCellContent[][];
23
+ }
24
+ export declare function createWorkPaperClipboardOperations(runtime: WorkPaperClipboardOperationsRuntime): WorkPaperClipboardOperations;