@gridsheet/core 3.0.0-rc.8

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 (250) hide show
  1. package/README.md +17 -0
  2. package/dist/constants.d.ts +21 -0
  3. package/dist/constants.d.ts.map +1 -0
  4. package/dist/constants.js +28 -0
  5. package/dist/constants.js.map +1 -0
  6. package/dist/formula/evaluator.d.ts +134 -0
  7. package/dist/formula/evaluator.d.ts.map +1 -0
  8. package/dist/formula/evaluator.js +585 -0
  9. package/dist/formula/evaluator.js.map +1 -0
  10. package/dist/formula/formula-error.d.ts +10 -0
  11. package/dist/formula/formula-error.d.ts.map +1 -0
  12. package/dist/formula/formula-error.js +15 -0
  13. package/dist/formula/formula-error.js.map +1 -0
  14. package/dist/formula/functions/__async.d.ts +67 -0
  15. package/dist/formula/functions/__async.d.ts.map +1 -0
  16. package/dist/formula/functions/__async.js +70 -0
  17. package/dist/formula/functions/__async.js.map +1 -0
  18. package/dist/formula/functions/__base.d.ts +112 -0
  19. package/dist/formula/functions/__base.d.ts.map +1 -0
  20. package/dist/formula/functions/__base.js +265 -0
  21. package/dist/formula/functions/__base.js.map +1 -0
  22. package/dist/formula/functions/__utils.d.ts +28 -0
  23. package/dist/formula/functions/__utils.d.ts.map +1 -0
  24. package/dist/formula/functions/__utils.js +179 -0
  25. package/dist/formula/functions/__utils.js.map +1 -0
  26. package/dist/formula/functions/abs.d.ts +9 -0
  27. package/dist/formula/functions/abs.d.ts.map +1 -0
  28. package/dist/formula/functions/abs.js +15 -0
  29. package/dist/formula/functions/abs.js.map +1 -0
  30. package/dist/formula/functions/add.d.ts +10 -0
  31. package/dist/formula/functions/add.d.ts.map +1 -0
  32. package/dist/formula/functions/add.js +37 -0
  33. package/dist/formula/functions/add.js.map +1 -0
  34. package/dist/formula/functions/and.d.ts +9 -0
  35. package/dist/formula/functions/and.d.ts.map +1 -0
  36. package/dist/formula/functions/and.js +23 -0
  37. package/dist/formula/functions/and.js.map +1 -0
  38. package/dist/formula/functions/arrayformula.d.ts +12 -0
  39. package/dist/formula/functions/arrayformula.d.ts.map +1 -0
  40. package/dist/formula/functions/arrayformula.js +24 -0
  41. package/dist/formula/functions/arrayformula.js.map +1 -0
  42. package/dist/formula/functions/average.d.ts +9 -0
  43. package/dist/formula/functions/average.d.ts.map +1 -0
  44. package/dist/formula/functions/average.js +40 -0
  45. package/dist/formula/functions/average.js.map +1 -0
  46. package/dist/formula/functions/concat.d.ts +9 -0
  47. package/dist/formula/functions/concat.d.ts.map +1 -0
  48. package/dist/formula/functions/concat.js +27 -0
  49. package/dist/formula/functions/concat.js.map +1 -0
  50. package/dist/formula/functions/count.d.ts +9 -0
  51. package/dist/formula/functions/count.d.ts.map +1 -0
  52. package/dist/formula/functions/count.js +32 -0
  53. package/dist/formula/functions/count.js.map +1 -0
  54. package/dist/formula/functions/counta.d.ts +9 -0
  55. package/dist/formula/functions/counta.d.ts.map +1 -0
  56. package/dist/formula/functions/counta.js +32 -0
  57. package/dist/formula/functions/counta.js.map +1 -0
  58. package/dist/formula/functions/divide.d.ts +10 -0
  59. package/dist/formula/functions/divide.d.ts.map +1 -0
  60. package/dist/formula/functions/divide.js +34 -0
  61. package/dist/formula/functions/divide.js.map +1 -0
  62. package/dist/formula/functions/eq.d.ts +9 -0
  63. package/dist/formula/functions/eq.d.ts.map +1 -0
  64. package/dist/formula/functions/eq.js +19 -0
  65. package/dist/formula/functions/eq.js.map +1 -0
  66. package/dist/formula/functions/gt.d.ts +9 -0
  67. package/dist/formula/functions/gt.d.ts.map +1 -0
  68. package/dist/formula/functions/gt.js +19 -0
  69. package/dist/formula/functions/gt.js.map +1 -0
  70. package/dist/formula/functions/gte.d.ts +9 -0
  71. package/dist/formula/functions/gte.d.ts.map +1 -0
  72. package/dist/formula/functions/gte.js +19 -0
  73. package/dist/formula/functions/gte.js.map +1 -0
  74. package/dist/formula/functions/if.d.ts +9 -0
  75. package/dist/formula/functions/if.d.ts.map +1 -0
  76. package/dist/formula/functions/if.js +29 -0
  77. package/dist/formula/functions/if.js.map +1 -0
  78. package/dist/formula/functions/iferror.d.ts +10 -0
  79. package/dist/formula/functions/iferror.d.ts.map +1 -0
  80. package/dist/formula/functions/iferror.js +28 -0
  81. package/dist/formula/functions/iferror.js.map +1 -0
  82. package/dist/formula/functions/len.d.ts +9 -0
  83. package/dist/formula/functions/len.d.ts.map +1 -0
  84. package/dist/formula/functions/len.js +21 -0
  85. package/dist/formula/functions/len.js.map +1 -0
  86. package/dist/formula/functions/lt.d.ts +9 -0
  87. package/dist/formula/functions/lt.d.ts.map +1 -0
  88. package/dist/formula/functions/lt.js +19 -0
  89. package/dist/formula/functions/lt.js.map +1 -0
  90. package/dist/formula/functions/lte.d.ts +9 -0
  91. package/dist/formula/functions/lte.d.ts.map +1 -0
  92. package/dist/formula/functions/lte.js +19 -0
  93. package/dist/formula/functions/lte.js.map +1 -0
  94. package/dist/formula/functions/max.d.ts +9 -0
  95. package/dist/formula/functions/max.d.ts.map +1 -0
  96. package/dist/formula/functions/max.js +37 -0
  97. package/dist/formula/functions/max.js.map +1 -0
  98. package/dist/formula/functions/min.d.ts +9 -0
  99. package/dist/formula/functions/min.d.ts.map +1 -0
  100. package/dist/formula/functions/min.js +37 -0
  101. package/dist/formula/functions/min.js.map +1 -0
  102. package/dist/formula/functions/minus.d.ts +10 -0
  103. package/dist/formula/functions/minus.d.ts.map +1 -0
  104. package/dist/formula/functions/minus.js +41 -0
  105. package/dist/formula/functions/minus.js.map +1 -0
  106. package/dist/formula/functions/multiply.d.ts +9 -0
  107. package/dist/formula/functions/multiply.d.ts.map +1 -0
  108. package/dist/formula/functions/multiply.js +19 -0
  109. package/dist/formula/functions/multiply.js.map +1 -0
  110. package/dist/formula/functions/ne.d.ts +9 -0
  111. package/dist/formula/functions/ne.d.ts.map +1 -0
  112. package/dist/formula/functions/ne.js +19 -0
  113. package/dist/formula/functions/ne.js.map +1 -0
  114. package/dist/formula/functions/not.d.ts +9 -0
  115. package/dist/formula/functions/not.d.ts.map +1 -0
  116. package/dist/formula/functions/not.js +22 -0
  117. package/dist/formula/functions/not.js.map +1 -0
  118. package/dist/formula/functions/now.d.ts +9 -0
  119. package/dist/formula/functions/now.d.ts.map +1 -0
  120. package/dist/formula/functions/now.js +14 -0
  121. package/dist/formula/functions/now.js.map +1 -0
  122. package/dist/formula/functions/or.d.ts +9 -0
  123. package/dist/formula/functions/or.d.ts.map +1 -0
  124. package/dist/formula/functions/or.js +23 -0
  125. package/dist/formula/functions/or.js.map +1 -0
  126. package/dist/formula/functions/power.d.ts +9 -0
  127. package/dist/formula/functions/power.d.ts.map +1 -0
  128. package/dist/formula/functions/power.js +18 -0
  129. package/dist/formula/functions/power.js.map +1 -0
  130. package/dist/formula/functions/sum.d.ts +9 -0
  131. package/dist/formula/functions/sum.d.ts.map +1 -0
  132. package/dist/formula/functions/sum.js +34 -0
  133. package/dist/formula/functions/sum.js.map +1 -0
  134. package/dist/formula/functions/uminus.d.ts +9 -0
  135. package/dist/formula/functions/uminus.d.ts.map +1 -0
  136. package/dist/formula/functions/uminus.js +17 -0
  137. package/dist/formula/functions/uminus.js.map +1 -0
  138. package/dist/formula/mapping.d.ts +11 -0
  139. package/dist/formula/mapping.d.ts.map +1 -0
  140. package/dist/formula/mapping.js +82 -0
  141. package/dist/formula/mapping.js.map +1 -0
  142. package/dist/formula/solver.d.ts +39 -0
  143. package/dist/formula/solver.d.ts.map +1 -0
  144. package/dist/formula/solver.js +71 -0
  145. package/dist/formula/solver.js.map +1 -0
  146. package/dist/index.d.ts +22 -0
  147. package/dist/index.d.ts.map +1 -0
  148. package/dist/index.js +74 -0
  149. package/dist/index.js.map +1 -0
  150. package/dist/lib/autofill.d.ts +22 -0
  151. package/dist/lib/autofill.d.ts.map +1 -0
  152. package/dist/lib/autofill.js +276 -0
  153. package/dist/lib/autofill.js.map +1 -0
  154. package/dist/lib/book.d.ts +131 -0
  155. package/dist/lib/book.d.ts.map +1 -0
  156. package/dist/lib/book.js +53 -0
  157. package/dist/lib/book.js.map +1 -0
  158. package/dist/lib/cell.d.ts +17 -0
  159. package/dist/lib/cell.d.ts.map +1 -0
  160. package/dist/lib/cell.js +17 -0
  161. package/dist/lib/cell.js.map +1 -0
  162. package/dist/lib/coords.d.ts +22 -0
  163. package/dist/lib/coords.d.ts.map +1 -0
  164. package/dist/lib/coords.js +73 -0
  165. package/dist/lib/coords.js.map +1 -0
  166. package/dist/lib/date.d.ts +2 -0
  167. package/dist/lib/date.d.ts.map +1 -0
  168. package/dist/lib/date.js +91 -0
  169. package/dist/lib/date.js.map +1 -0
  170. package/dist/lib/dom.d.ts +7 -0
  171. package/dist/lib/dom.d.ts.map +1 -0
  172. package/dist/lib/dom.js +28 -0
  173. package/dist/lib/dom.js.map +1 -0
  174. package/dist/lib/filter.d.ts +7 -0
  175. package/dist/lib/filter.d.ts.map +1 -0
  176. package/dist/lib/filter.js +122 -0
  177. package/dist/lib/filter.js.map +1 -0
  178. package/dist/lib/input.d.ts +28 -0
  179. package/dist/lib/input.d.ts.map +1 -0
  180. package/dist/lib/input.js +73 -0
  181. package/dist/lib/input.js.map +1 -0
  182. package/dist/lib/label.d.ts +4 -0
  183. package/dist/lib/label.d.ts.map +1 -0
  184. package/dist/lib/label.js +10 -0
  185. package/dist/lib/label.js.map +1 -0
  186. package/dist/lib/operation.d.ts +31 -0
  187. package/dist/lib/operation.d.ts.map +1 -0
  188. package/dist/lib/operation.js +36 -0
  189. package/dist/lib/operation.js.map +1 -0
  190. package/dist/lib/palette.d.ts +2 -0
  191. package/dist/lib/palette.d.ts.map +1 -0
  192. package/dist/lib/palette.js +26 -0
  193. package/dist/lib/palette.js.map +1 -0
  194. package/dist/lib/popup.d.ts +24 -0
  195. package/dist/lib/popup.d.ts.map +1 -0
  196. package/dist/lib/popup.js +21 -0
  197. package/dist/lib/popup.js.map +1 -0
  198. package/dist/lib/reference.d.ts +19 -0
  199. package/dist/lib/reference.d.ts.map +1 -0
  200. package/dist/lib/reference.js +40 -0
  201. package/dist/lib/reference.js.map +1 -0
  202. package/dist/lib/sheet.d.ts +512 -0
  203. package/dist/lib/sheet.d.ts.map +1 -0
  204. package/dist/lib/sheet.js +1530 -0
  205. package/dist/lib/sheet.js.map +1 -0
  206. package/dist/lib/sheet_utils.d.ts +55 -0
  207. package/dist/lib/sheet_utils.d.ts.map +1 -0
  208. package/dist/lib/sheet_utils.js +125 -0
  209. package/dist/lib/sheet_utils.js.map +1 -0
  210. package/dist/lib/spatial.d.ts +79 -0
  211. package/dist/lib/spatial.d.ts.map +1 -0
  212. package/dist/lib/spatial.js +227 -0
  213. package/dist/lib/spatial.js.map +1 -0
  214. package/dist/lib/time.d.ts +29 -0
  215. package/dist/lib/time.d.ts.map +1 -0
  216. package/dist/lib/time.js +113 -0
  217. package/dist/lib/time.js.map +1 -0
  218. package/dist/lib/virtualization.d.ts +22 -0
  219. package/dist/lib/virtualization.d.ts.map +1 -0
  220. package/dist/lib/virtualization.js +91 -0
  221. package/dist/lib/virtualization.js.map +1 -0
  222. package/dist/policy/core.d.ts +161 -0
  223. package/dist/policy/core.d.ts.map +1 -0
  224. package/dist/policy/core.js +248 -0
  225. package/dist/policy/core.js.map +1 -0
  226. package/dist/policy/thousand_separator.d.ts +4 -0
  227. package/dist/policy/thousand_separator.d.ts.map +1 -0
  228. package/dist/policy/thousand_separator.js +13 -0
  229. package/dist/policy/thousand_separator.js.map +1 -0
  230. package/dist/sentinels.d.ts +40 -0
  231. package/dist/sentinels.d.ts.map +1 -0
  232. package/dist/sentinels.js +41 -0
  233. package/dist/sentinels.js.map +1 -0
  234. package/dist/styles/embedder.d.ts +2 -0
  235. package/dist/styles/embedder.d.ts.map +1 -0
  236. package/dist/styles/embedder.js +11 -0
  237. package/dist/styles/embedder.js.map +1 -0
  238. package/dist/styles/minified.d.ts +3 -0
  239. package/dist/styles/minified.d.ts.map +1 -0
  240. package/dist/styles/minified.js +6 -0
  241. package/dist/styles/minified.js.map +1 -0
  242. package/dist/types.d.ts +310 -0
  243. package/dist/types.d.ts.map +1 -0
  244. package/dist/types.js +2 -0
  245. package/dist/types.js.map +1 -0
  246. package/dist/utils.d.ts +2 -0
  247. package/dist/utils.d.ts.map +1 -0
  248. package/dist/utils.js +5 -0
  249. package/dist/utils.js.map +1 -0
  250. package/package.json +59 -0
@@ -0,0 +1,512 @@
1
+ import { Id, AreaType, CellsByAddressType, PointType, Address, CellFilter, MatrixType, CellType, FilterConfig, HistoryType, StorePatchType, ShapeType, RectType, OperatorType, OperationType, RawCellType, RefLike, Resolution, System } from '../types';
2
+ import { FunctionMapping } from '../formula/functions/__base';
3
+ import { ProcessFormulaProps } from '../formula/evaluator';
4
+ import { SolveOptions } from '../formula/solver';
5
+ import { Registry } from './book';
6
+ import { PolicyType, RenderProps } from '../policy/core';
7
+ type CellField = keyof CellType;
8
+ export type SheetLimits = {
9
+ minRows?: number;
10
+ maxRows?: number;
11
+ minCols?: number;
12
+ maxCols?: number;
13
+ };
14
+ type Props = {
15
+ limits?: SheetLimits;
16
+ functions?: FunctionMapping;
17
+ name?: string;
18
+ registry?: Registry;
19
+ };
20
+ type MoveProps = {
21
+ srcSheet?: UserSheet;
22
+ src: AreaType;
23
+ dst: AreaType;
24
+ operator?: OperatorType;
25
+ undoReflection?: StorePatchType;
26
+ redoReflection?: StorePatchType;
27
+ historicize?: boolean;
28
+ };
29
+ export interface UserSheet {
30
+ changedTime: number;
31
+ lastChangedTime?: number;
32
+ area: AreaType;
33
+ top: number;
34
+ left: number;
35
+ bottom: number;
36
+ right: number;
37
+ minNumRows: number;
38
+ maxNumRows: number;
39
+ minNumCols: number;
40
+ maxNumCols: number;
41
+ headerWidth: number;
42
+ headerHeight: number;
43
+ name: string;
44
+ /**
45
+ * Returns the raw sheet object, which is used for internal operations.
46
+ * This is not intended for public use and may change in future versions.
47
+ */
48
+ __raw__: Sheet;
49
+ getRectSize(area: AreaType): RectType;
50
+ getCell(point: PointType, options?: {
51
+ resolution?: Resolution;
52
+ raise?: boolean;
53
+ }): CellType | undefined;
54
+ getPolicy(point: PointType): PolicyType;
55
+ get numRows(): number;
56
+ get numCols(): number;
57
+ get shape(): ShapeType;
58
+ move(args: MoveProps): UserSheet;
59
+ copy(args: MoveProps & {
60
+ onlyValue?: boolean;
61
+ }): UserSheet;
62
+ update(args: {
63
+ diff: CellsByAddressType;
64
+ historicize?: boolean;
65
+ partial?: boolean;
66
+ updateChangedTime?: boolean;
67
+ reflection?: StorePatchType;
68
+ }): UserSheet;
69
+ writeMatrix(args: {
70
+ point: PointType;
71
+ matrix: MatrixType<string>;
72
+ updateChangedTime?: boolean;
73
+ reflection?: StorePatchType;
74
+ }): UserSheet;
75
+ write(args: {
76
+ point: PointType;
77
+ value: string;
78
+ updateChangedTime?: boolean;
79
+ reflection?: StorePatchType;
80
+ }): UserSheet;
81
+ insertRows(args: {
82
+ y: number;
83
+ numRows: number;
84
+ baseY: number;
85
+ diff?: CellsByAddressType;
86
+ partial?: boolean;
87
+ updateChangedTime?: boolean;
88
+ reflection?: StorePatchType;
89
+ }): UserSheet;
90
+ removeRows(args: {
91
+ y: number;
92
+ numRows: number;
93
+ reflection?: StorePatchType;
94
+ }): UserSheet;
95
+ insertCols(args: {
96
+ x: number;
97
+ numCols: number;
98
+ baseX: number;
99
+ diff?: CellsByAddressType;
100
+ partial?: boolean;
101
+ updateChangedTime?: boolean;
102
+ reflection?: StorePatchType;
103
+ }): UserSheet;
104
+ removeCols(args: {
105
+ x: number;
106
+ numCols: number;
107
+ reflection?: StorePatchType;
108
+ }): UserSheet;
109
+ undo(): {
110
+ history: HistoryType | null;
111
+ };
112
+ redo(): {
113
+ history: HistoryType | null;
114
+ };
115
+ histories(): HistoryType[];
116
+ historyIndex(): number;
117
+ historySize(): number;
118
+ setHeaderHeight(height: number, historicize?: boolean): UserSheet;
119
+ setHeaderWidth(width: number, historicize?: boolean): UserSheet;
120
+ sortRows(args: {
121
+ x: number;
122
+ direction: 'asc' | 'desc';
123
+ }): UserSheet;
124
+ filterRows(args?: {
125
+ x?: number;
126
+ filter?: FilterConfig;
127
+ }): UserSheet;
128
+ isRowFiltered(y: number): boolean;
129
+ hasActiveFilters(): boolean;
130
+ hasPendingCells(): boolean;
131
+ waitForPending(): Promise<void>;
132
+ getLastChangedAddresses(): Address[];
133
+ getSerializedValue(props: {
134
+ point: PointType;
135
+ cell?: CellType;
136
+ resolution?: Resolution;
137
+ }): string;
138
+ }
139
+ type InternalToValueMatrixProps = {
140
+ area?: AreaType;
141
+ resolution?: Resolution;
142
+ raise?: boolean;
143
+ filter?: CellFilter;
144
+ asScalar?: boolean;
145
+ at?: Id;
146
+ };
147
+ export declare class Sheet implements UserSheet {
148
+ /** @internal */
149
+ __gsType: string;
150
+ changedTime: number;
151
+ lastChangedTime?: number;
152
+ area: AreaType;
153
+ /** @internal */
154
+ private _limits;
155
+ get minNumRows(): number;
156
+ get maxNumRows(): number;
157
+ get minNumCols(): number;
158
+ get maxNumCols(): number;
159
+ /** @internal */
160
+ id: number;
161
+ name: string;
162
+ /** @internal */
163
+ prevName: string;
164
+ /** @internal */
165
+ status: 0 | 1 | 2;
166
+ /** @internal */
167
+ registry: Registry;
168
+ /** @internal */
169
+ idsToBeIdentified: Id[];
170
+ /** @internal */
171
+ totalWidth: number;
172
+ /** @internal */
173
+ totalHeight: number;
174
+ /** @internal */
175
+ fullHeight: number;
176
+ /** @internal */
177
+ defaultColWidth: number;
178
+ /** @internal */
179
+ defaultRowHeight: number;
180
+ /** @internal */
181
+ private version;
182
+ /** @internal */
183
+ private idMatrix;
184
+ /** @internal */
185
+ private addressCaches;
186
+ /** @internal */
187
+ private lastChangedAddresses;
188
+ constructor({ limits, name, registry }: Props);
189
+ static is(obj: any): obj is Sheet;
190
+ toString(): string;
191
+ get headerHeight(): number;
192
+ setHeaderHeight(height: number, historicize?: boolean): Sheet;
193
+ get headerWidth(): number;
194
+ setHeaderWidth(width: number, historicize?: boolean): Sheet;
195
+ /**
196
+ * Get the raw (mutable) cell data for a point. Unlike getCell, this returns the actual registry.data reference.
197
+ * @internal
198
+ */
199
+ private _pointToRawCell;
200
+ isRowFiltered(y: number): boolean;
201
+ hasActiveFilters(): boolean;
202
+ /**
203
+ * Returns true if any data cell in this sheet currently holds a Pending value
204
+ * (i.e. an async formula that hasn't resolved yet).
205
+ */
206
+ hasPendingCells(): boolean;
207
+ /**
208
+ * Returns a Promise that resolves when all in-flight async formula computations
209
+ * have completed and no data cells hold Pending values.
210
+ * If nothing is pending, resolves immediately.
211
+ * Useful for waiting before sort/filter so that cell values are fully resolved.
212
+ */
213
+ waitForPending(): Promise<void>;
214
+ /**
215
+ * Returns the addresses that were changed in the most recent `_update()` call.
216
+ * Useful inside `onChange` to know which cells were modified.
217
+ */
218
+ getLastChangedAddresses(): Address[];
219
+ /**
220
+ * Capture the full cell state of all filter-related header cells as a CellsByIdType snapshot.
221
+ * @internal
222
+ */
223
+ private _captureFilterCellStates;
224
+ filterRows({ x, filter, }?: {
225
+ x?: number;
226
+ filter?: FilterConfig;
227
+ }): Sheet;
228
+ /** @internal */
229
+ private _reapplyFilters;
230
+ sortRows({ x, direction }: {
231
+ x: number;
232
+ direction: 'asc' | 'desc';
233
+ }): Sheet;
234
+ /** @internal */
235
+ private _sortRowMapping;
236
+ get isInitialized(): boolean;
237
+ get policies(): {
238
+ [policyName: string]: import('..').Policy | null;
239
+ };
240
+ /** @internal */
241
+ getSystem(point: PointType): System | undefined;
242
+ /** @internal */
243
+ processFormula(value: any, { idMap, ...props }: ProcessFormulaProps): any;
244
+ /** @internal */
245
+ resolveFormulas(): void;
246
+ /** @internal */
247
+ getSheetBySheetName(sheetName: string): any;
248
+ /** @internal */
249
+ getSheetBySheetId(sheetId: number): any;
250
+ /** @internal */
251
+ private static _stack;
252
+ /** @internal */
253
+ initialize(cells: CellsByAddressType): void;
254
+ /** @internal */
255
+ private _incrementVersion;
256
+ /** @internal */
257
+ private _xsheetDispatch;
258
+ /** @internal */
259
+ private _generateId;
260
+ getRectSize({ top, left, bottom, right }: AreaType): RectType;
261
+ /** @internal */
262
+ setTotalSize(): void;
263
+ /** @internal */
264
+ refresh(relocate?: boolean, resize?: boolean): Sheet;
265
+ /** @internal */
266
+ clone(relocate?: boolean): Sheet;
267
+ /** @internal */
268
+ getPointById(id: Id, slideY?: number, slideX?: number): PointType & {
269
+ absCol: boolean;
270
+ absRow: boolean;
271
+ };
272
+ /** @internal */
273
+ getAddressById(id: Id, slideY?: number, slideX?: number): string | undefined;
274
+ /** @internal */
275
+ clearAddressCaches(): void;
276
+ /** @internal */
277
+ private _warmAddressCaches;
278
+ /** @internal */
279
+ getId(point: PointType): string;
280
+ /** @internal */
281
+ getCell(point: PointType, { resolution, raise }?: SolveOptions): CellType | undefined;
282
+ /** @internal */
283
+ get numRows(): number;
284
+ get numCols(): number;
285
+ get top(): number;
286
+ get left(): number;
287
+ get bottom(): number;
288
+ get right(): number;
289
+ /** @internal */
290
+ _toValueMatrix({ area, at, resolution, raise, filter, asScalar, }?: InternalToValueMatrixProps): any[][];
291
+ /** @internal */
292
+ private _pushHistory;
293
+ /** @internal */
294
+ private _cleanObsolete;
295
+ /** @internal */
296
+ private _cleanStrayed;
297
+ /**
298
+ * Remove an id from registry.data and registry.dependents entirely.
299
+ * @internal
300
+ */
301
+ private _deleteOrphanedId;
302
+ /** @internal */
303
+ private _copyCellLayout;
304
+ move({ srcSheet, src, dst, historicize, operator, undoReflection, redoReflection, }: MoveProps): Sheet;
305
+ /**
306
+ * Build MoveRelations from src area to dst area, skipping filtered rows.
307
+ *
308
+ * Layout of the returned array (processed in this order by _moveCells):
309
+ * 1. Entries where [0] is a newly-generated ID — these fill the vacated src cells (processed last in forward order)
310
+ * 2. Entries where [0] is a src address and [1] is a dst address — the actual moves (processed first in forward order, descending)
311
+ * Entries whose [1] is an existing ID mean the destination cell is displaced/overflowed and
312
+ * is no longer addressable; on forward pass they are skipped; on reverse pass the ID is written back.
313
+ */
314
+ /** @internal */
315
+ private _createMoveRelations;
316
+ get defaultPolicy(): PolicyType;
317
+ /**
318
+ * Apply (or reverse) a MoveRelations list.
319
+ *
320
+ * Forward (reverse=false): process descending — actual ID moves happen bottom-up so
321
+ * earlier entries don't clobber later ones; vacate entries (at front of array) are
322
+ * applied last.
323
+ * Reverse (reverse=true): process ascending — restores IDs in the natural order.
324
+ *
325
+ * On forward pass: applies policy, collects diffBefore, runs ReferencePreserver.
326
+ * On reverse pass: only moves IDs (caller is responsible for applyDiff(diffBefore)).
327
+ */
328
+ /** @internal */
329
+ private _moveCells;
330
+ copy({ srcSheet, src, dst, onlyValue, operator, undoReflection, redoReflection, }: MoveProps & {
331
+ onlyValue?: boolean;
332
+ }): Sheet;
333
+ getPolicy(point: PointType): PolicyType;
334
+ /** @internal */
335
+ private _update;
336
+ update({ diff, partial, updateChangedTime, historicize, operator, operation: op, ignoreFields, undoReflection, redoReflection, }: {
337
+ diff: CellsByAddressType;
338
+ partial?: boolean;
339
+ updateChangedTime?: boolean;
340
+ historicize?: boolean;
341
+ operator?: OperatorType;
342
+ operation?: OperationType;
343
+ ignoreFields?: CellField[];
344
+ undoReflection?: StorePatchType;
345
+ redoReflection?: StorePatchType;
346
+ }): Sheet;
347
+ /** @internal */
348
+ writeRawCellMatrix({ point, matrix, updateChangedTime, historicize, onlyValue, operator, undoReflection, redoReflection, }: {
349
+ point: PointType;
350
+ matrix: MatrixType<RawCellType>;
351
+ updateChangedTime?: boolean;
352
+ historicize?: boolean;
353
+ onlyValue?: boolean;
354
+ operator?: OperatorType;
355
+ undoReflection?: StorePatchType;
356
+ redoReflection?: StorePatchType;
357
+ }): Sheet;
358
+ writeMatrix(props: {
359
+ point: PointType;
360
+ matrix: MatrixType<string>;
361
+ updateChangedTime?: boolean;
362
+ historicize?: boolean;
363
+ operator?: OperatorType;
364
+ undoReflection?: StorePatchType;
365
+ redoReflection?: StorePatchType;
366
+ }): Sheet;
367
+ write(props: {
368
+ point: PointType;
369
+ value: string;
370
+ updateChangedTime?: boolean;
371
+ historicize?: boolean;
372
+ operator?: OperatorType;
373
+ undoReflection?: StorePatchType;
374
+ redoReflection?: StorePatchType;
375
+ }): Sheet;
376
+ insertRows({ y, numRows, baseY, diff, partial, updateChangedTime, operator, undoReflection, redoReflection, }: {
377
+ y: number;
378
+ numRows: number;
379
+ baseY: number;
380
+ diff?: CellsByAddressType;
381
+ partial?: boolean;
382
+ updateChangedTime?: boolean;
383
+ operator?: OperatorType;
384
+ undoReflection?: StorePatchType;
385
+ redoReflection?: StorePatchType;
386
+ }): Sheet;
387
+ removeRows({ y, numRows, operator, undoReflection, redoReflection, }: {
388
+ y: number;
389
+ numRows: number;
390
+ operator?: OperatorType;
391
+ undoReflection?: StorePatchType;
392
+ redoReflection?: StorePatchType;
393
+ }): Sheet;
394
+ insertCols({ x, numCols, baseX, diff, partial, updateChangedTime, operator, undoReflection, redoReflection, }: {
395
+ x: number;
396
+ numCols: number;
397
+ baseX: number;
398
+ diff?: CellsByAddressType;
399
+ partial?: boolean;
400
+ updateChangedTime?: boolean;
401
+ operator?: OperatorType;
402
+ undoReflection?: StorePatchType;
403
+ redoReflection?: StorePatchType;
404
+ }): Sheet;
405
+ removeCols({ x, numCols, operator, undoReflection, redoReflection, }: {
406
+ x: number;
407
+ numCols: number;
408
+ operator?: OperatorType;
409
+ undoReflection?: StorePatchType;
410
+ redoReflection?: StorePatchType;
411
+ }): Sheet;
412
+ /** @internal */
413
+ histories(): HistoryType[];
414
+ /** @internal */
415
+ historyIndex(): number;
416
+ /** @internal */
417
+ historySize(): number;
418
+ /** @internal */
419
+ getHistoryLimit(): number;
420
+ /** @internal */
421
+ parse(point: PointType, value: any): CellType;
422
+ /** @internal */
423
+ render(props: RenderProps): any;
424
+ getSerializedValue({ point, cell, resolution, }: {
425
+ point: PointType;
426
+ cell?: CellType;
427
+ resolution?: Resolution;
428
+ }): string;
429
+ /** @internal */
430
+ trim(area: AreaType): Sheet;
431
+ /**
432
+ * Solve all formulas in this sheet and return a 2D matrix of resolved values.
433
+ * @internal
434
+ */
435
+ solve({ raise, at }: {
436
+ raise?: boolean;
437
+ at: Id;
438
+ }): any[][];
439
+ /**
440
+ * Collapse this sheet to a scalar (top-left cell value).
441
+ * @internal
442
+ */
443
+ strip({ raise, at }: {
444
+ raise?: boolean;
445
+ at?: Id;
446
+ }): any;
447
+ /** @internal */
448
+ private _applyDiff;
449
+ undo(): {
450
+ history: null;
451
+ newSheet: Sheet;
452
+ callback?: undefined;
453
+ } | {
454
+ history: HistoryType;
455
+ callback: ({ sheetReactive: sheetRef }: {
456
+ sheetReactive: RefLike<Sheet>;
457
+ }) => void;
458
+ newSheet?: undefined;
459
+ };
460
+ redo(): {
461
+ history: null;
462
+ newSheet: Sheet;
463
+ callback?: undefined;
464
+ } | {
465
+ history: HistoryType;
466
+ callback: ({ sheetReactive: sheetRef }: {
467
+ sheetReactive: RefLike<Sheet>;
468
+ }) => void;
469
+ newSheet?: undefined;
470
+ };
471
+ /** @internal */
472
+ getFunctionByName(name: string): typeof import('..').BaseFunction;
473
+ /** @internal */
474
+ clearDependencies(id: Id): void;
475
+ /** @internal */
476
+ addDependency(id: Id, dependency: Id): void;
477
+ /** @internal */
478
+ getSolvedCache(point: PointType): [boolean, any];
479
+ /** @internal */
480
+ setSolvingCache(point: PointType): void;
481
+ /** @internal */
482
+ finishSolvedCache(point: PointType, value: any): void;
483
+ /** @internal */
484
+ clearSolvedCaches(): void;
485
+ /**
486
+ * Spill a 2D matrix of values starting from the origin cell.
487
+ * The origin cell receives matrix[0][0] and adjacent cells receive spill values in solvedCaches.
488
+ * For a 1×1 matrix, no spill occurs — the single value is cached directly.
489
+ * Throws FormulaError('#REF!') if the spill range is obstructed.
490
+ *
491
+ * @param origin The anchor cell that produced the spill.
492
+ * @param matrix The 2D array of resolved scalar values.
493
+ * @returns The top-left value (matrix[0][0]).
494
+ * @internal
495
+ */
496
+ spill(origin: PointType, matrix: any[][]): any;
497
+ /** @internal */
498
+ sheetPrefix(omit?: boolean): string;
499
+ /** @internal */
500
+ rangeToArea(range: string): {
501
+ top: number;
502
+ left: number;
503
+ bottom: number;
504
+ right: number;
505
+ };
506
+ get __raw__(): Sheet;
507
+ get shape(): ShapeType;
508
+ get hasSingleCell(): boolean;
509
+ get currentVersion(): number;
510
+ }
511
+ export {};
512
+ //# sourceMappingURL=sheet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheet.d.ts","sourceRoot":"","sources":["../../src/lib/sheet.ts"],"names":[],"mappings":"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"}