@sheetxl/sdk 0.8.0-beta.1 → 0.8.0-beta.11

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 (775) hide show
  1. package/README.md +1 -1
  2. package/THIRD-PARTY-NOTICES.md +1 -1
  3. package/browser/esm/B7aUIvgUjncMMD_i.mjs +394 -0
  4. package/browser/esm/BFagR2JeWs74iAG3.mjs +171 -0
  5. package/browser/esm/BGOFfpxr2jPIdqmV.mjs +40 -0
  6. package/browser/esm/BLoUBId2xZpXAK_H.mjs +698 -0
  7. package/browser/esm/BMyDRQ716j79h_bH.mjs +86 -0
  8. package/browser/esm/BVDiOXGMc5_FMGfy.mjs +400 -0
  9. package/browser/esm/BjkCiv5Jz6WYKZeu.mjs +598 -0
  10. package/browser/esm/BkBhLS0l6z8sxI6D.mjs +441 -0
  11. package/browser/esm/BnG31I6Oj_HEtSPS.mjs +167 -0
  12. package/browser/esm/BoV6zPBnfqCBCqZ7.mjs +7729 -0
  13. package/browser/esm/BpgskG1Er_lGQ_yS.mjs +142 -0
  14. package/browser/esm/BtvLTTfSBdAKplVG.mjs +466 -0
  15. package/browser/esm/C16ycKja6zG0crV_.mjs +55580 -0
  16. package/browser/esm/C2VbEI_XVAoseAwa.mjs +1552 -0
  17. package/browser/esm/C4MqfLn9Dm-l3OIk.mjs +540 -0
  18. package/browser/esm/C5E6zSGAALWf61n4.mjs +199 -0
  19. package/browser/esm/CHU6iu_WGlm7fLET.mjs +1001 -0
  20. package/browser/esm/CQYjO777cmAznUzK.mjs +527 -0
  21. package/browser/esm/CU3DmJ-YnVVrC1_k.mjs +1123 -0
  22. package/browser/esm/CV5EGEjG5_-CPpP0.mjs +8212 -0
  23. package/browser/esm/{uyWBMSIxMlt8n5Z3.mjs → CaB7J-xgfKO2uAkG.mjs} +2 -2
  24. package/browser/esm/CkxWugaJFjDGZNZ-.mjs +12 -0
  25. package/browser/esm/ClPfI4lODvCece29.mjs +632 -0
  26. package/browser/esm/ClbvFbFzFzXLBKNN.mjs +193 -0
  27. package/browser/esm/{DlPMeIyxT9tG_WDk.mjs → Ctjb0SsxV4K4MMqG.mjs} +179 -202
  28. package/browser/esm/D5np__Jb1euAyaLw.mjs +7 -0
  29. package/browser/esm/DEiPS3Dr-s4fPbVZ.mjs +607 -0
  30. package/browser/esm/DLLE0FZNsKxbBzRn.mjs +128 -0
  31. package/browser/esm/DWNzqw7DUKwoxjri.mjs +20 -0
  32. package/browser/esm/{B0HS42a7lga1k1U_.mjs → Dlmig06rIo7cInRk.mjs} +2 -2
  33. package/browser/esm/{f2G3QRgEbvFJcoa2.mjs → DvAaxH6z_tGvrRzl.mjs} +1704 -1008
  34. package/browser/esm/Dyq_ivuHvlXLwPCl.mjs +12831 -0
  35. package/browser/esm/PcHFjNzQsE54POri.mjs +1141 -0
  36. package/browser/esm/S2dNNx1a5ydRnARM.mjs +367 -0
  37. package/browser/esm/f1IoRb7tEb0QmCSt.mjs +110 -0
  38. package/browser/esm/gssVX_FH1XFN-twD.mjs +210 -0
  39. package/browser/esm/index.mjs +1759 -1161
  40. package/browser/esm/nvU0ClAbf0g94YBK.mjs +1695 -0
  41. package/browser/esm/zlLuW405RSguy4Kn.mjs +357 -0
  42. package/licenses/dependencies.txt +141 -141
  43. package/node/esm/2Kihw_-5lVTEnwMa.mjs +1132 -0
  44. package/node/esm/857CIBgQgGpnqrXk.mjs +199 -0
  45. package/node/esm/B084DssTcdBheTp_.mjs +7966 -0
  46. package/node/esm/B21JjOLghRoDOrkx.mjs +134 -0
  47. package/node/esm/BIRq1kT7lLRzns9t.mjs +610 -0
  48. package/node/esm/BIwObuhTJYf0jpUa.mjs +451 -0
  49. package/node/esm/Bbf1Pm9Gk7YpLTvg.mjs +12 -0
  50. package/node/esm/BqiexuA89caYnAPz.mjs +1135 -0
  51. package/node/esm/BrCKGFRsX_ezFJ4B.mjs +811 -0
  52. package/node/esm/CCN5vD410obwdz38.mjs +405 -0
  53. package/node/esm/{Cku7XiUvw1xrRasi.mjs → CDHdgJXH2vS71WMc.mjs} +1 -1
  54. package/node/esm/CGp6VZL-gZa9Uezx.mjs +1860 -0
  55. package/node/esm/CNCNJNg890KdgkWh.mjs +142 -0
  56. package/node/esm/CZICGK_ss0HoGHCP.mjs +7 -0
  57. package/node/esm/CZiqiay42tFTrLI4.mjs +171 -0
  58. package/node/esm/CdJHUJSBRHZoryPe.mjs +360 -0
  59. package/node/esm/Ct3h15sCus4Tgt6M.mjs +1762 -0
  60. package/node/esm/CwePQwTILHHjGDkZ.mjs +1033 -0
  61. package/node/esm/CzXT00vrQa1_gvW9.mjs +28 -0
  62. package/node/esm/D1TKBVmoKGAXf37B.mjs +402 -0
  63. package/node/esm/D2KBymQJd1XhpeQD.mjs +540 -0
  64. package/node/esm/D6e2z7eZpxOJXHc7.mjs +1783 -0
  65. package/node/esm/D8zEN-6ZdDqDvTxM.mjs +639 -0
  66. package/node/esm/DNRhGK-8Tr9xcRyc.mjs +8320 -0
  67. package/node/esm/DOU54VsOjG-m-NyQ.mjs +210 -0
  68. package/node/esm/DUTskXCXref-IJnI.mjs +133 -0
  69. package/node/esm/D_t5AUxSm7_icjzq.mjs +638 -0
  70. package/node/esm/Db0v7zXNnyjBIjjI.mjs +372 -0
  71. package/node/esm/De2IONBxQhz-Qbyh.mjs +596 -0
  72. package/node/esm/Df1bL6VFvrqIdSLB.mjs +40 -0
  73. package/node/esm/DkwIPzKc3UwdUIfM.mjs +86 -0
  74. package/node/esm/DrTZbfemSLq2mseG.mjs +111 -0
  75. package/node/esm/OVfaSb506tNSIvbv.mjs +57107 -0
  76. package/node/esm/cGwrLA1RCE-WhJ7w.mjs +255 -0
  77. package/node/esm/index.mjs +2873 -53929
  78. package/node/esm/mFiBSM7XgBHV9AY7.mjs +13010 -0
  79. package/node/esm/yavzZOiZW_EjG9lE.mjs +15 -0
  80. package/package.json +15 -17
  81. package/resources/contents.json +184 -0
  82. package/resources/fonts/arial-bold-italic.hinted.json +125 -0
  83. package/resources/fonts/arial-bold-italic.metrics.json +139 -0
  84. package/resources/fonts/arial-bold-italic.rows.json +9 -0
  85. package/resources/fonts/arial-bold.hinted.json +125 -0
  86. package/resources/fonts/arial-bold.metrics.json +139 -0
  87. package/resources/fonts/arial-bold.rows.json +9 -0
  88. package/resources/fonts/arial-italic.hinted.json +125 -0
  89. package/resources/fonts/arial-italic.metrics.json +139 -0
  90. package/resources/fonts/arial-italic.rows.json +9 -0
  91. package/resources/fonts/arial-regular.hinted.json +125 -0
  92. package/resources/fonts/arial-regular.metrics.json +139 -0
  93. package/resources/fonts/arial-regular.rows.json +9 -0
  94. package/resources/fonts/calibri-bold-italic.hinted.json +122 -0
  95. package/resources/fonts/calibri-bold-italic.metrics.json +137 -0
  96. package/resources/fonts/calibri-bold-italic.rows.json +9 -0
  97. package/resources/fonts/calibri-bold.hinted.json +122 -0
  98. package/resources/fonts/calibri-bold.metrics.json +137 -0
  99. package/resources/fonts/calibri-bold.rows.json +9 -0
  100. package/resources/fonts/calibri-italic.hinted.json +121 -0
  101. package/resources/fonts/calibri-italic.metrics.json +137 -0
  102. package/resources/fonts/calibri-italic.rows.json +9 -0
  103. package/resources/fonts/calibri-regular.hinted.json +121 -0
  104. package/resources/fonts/calibri-regular.metrics.json +137 -0
  105. package/resources/fonts/calibri-regular.rows.json +9 -0
  106. package/resources/fonts/cambria-bold-italic.hinted.json +105 -0
  107. package/resources/fonts/cambria-bold-italic.metrics.json +66 -0
  108. package/resources/fonts/cambria-bold-italic.rows.json +9 -0
  109. package/resources/fonts/cambria-bold.hinted.json +108 -0
  110. package/resources/fonts/cambria-bold.metrics.json +66 -0
  111. package/resources/fonts/cambria-bold.rows.json +9 -0
  112. package/resources/fonts/cambria-italic.hinted.json +102 -0
  113. package/resources/fonts/cambria-italic.metrics.json +66 -0
  114. package/resources/fonts/cambria-italic.rows.json +9 -0
  115. package/resources/fonts/cambria-regular.hinted.json +110 -0
  116. package/resources/fonts/cambria-regular.metrics.json +66 -0
  117. package/resources/fonts/cambria-regular.rows.json +9 -0
  118. package/resources/fonts/contents.json +406 -0
  119. package/resources/fonts/courier-new-bold-italic.hinted.json +11 -0
  120. package/resources/fonts/courier-new-bold-italic.metrics.json +143 -0
  121. package/resources/fonts/courier-new-bold-italic.rows.json +9 -0
  122. package/resources/fonts/courier-new-bold.hinted.json +11 -0
  123. package/resources/fonts/courier-new-bold.metrics.json +143 -0
  124. package/resources/fonts/courier-new-bold.rows.json +9 -0
  125. package/resources/fonts/courier-new-italic.hinted.json +11 -0
  126. package/resources/fonts/courier-new-italic.metrics.json +143 -0
  127. package/resources/fonts/courier-new-italic.rows.json +9 -0
  128. package/resources/fonts/courier-new-regular.hinted.json +11 -0
  129. package/resources/fonts/courier-new-regular.metrics.json +143 -0
  130. package/resources/fonts/courier-new-regular.rows.json +9 -0
  131. package/resources/fonts/times-new-roman-bold-italic.hinted.json +125 -0
  132. package/resources/fonts/times-new-roman-bold-italic.metrics.json +141 -0
  133. package/resources/fonts/times-new-roman-bold-italic.rows.json +9 -0
  134. package/resources/fonts/times-new-roman-bold.hinted.json +125 -0
  135. package/resources/fonts/times-new-roman-bold.metrics.json +141 -0
  136. package/resources/fonts/times-new-roman-bold.rows.json +9 -0
  137. package/resources/fonts/times-new-roman-italic.hinted.json +125 -0
  138. package/resources/fonts/times-new-roman-italic.metrics.json +143 -0
  139. package/resources/fonts/times-new-roman-italic.rows.json +9 -0
  140. package/resources/fonts/times-new-roman-regular.hinted.json +125 -0
  141. package/resources/fonts/times-new-roman-regular.metrics.json +141 -0
  142. package/resources/fonts/times-new-roman-regular.rows.json +9 -0
  143. package/resources/locales/de/model.msg.json +199 -21
  144. package/resources/locales/en/model.msg.json +207 -23
  145. package/types/scripting-api.json +10663 -0
  146. package/types/scripting-enums.json +435 -130
  147. package/types/scripting.d.ts +33010 -15730
  148. package/types/src/.generated/wasm/fonts.d.ts +161 -0
  149. package/types/src/.generated/wasm/fonts_bg.inline.d.ts +3 -0
  150. package/types/src/.generated/wasm/sdk.d.ts +122 -0
  151. package/types/src/.generated/wasm/sdk_bg.inline.d.ts +3 -0
  152. package/types/src/address/AddressUtils.d.ts +10 -1
  153. package/types/src/address/_StructuredAddress.d.ts +58 -0
  154. package/types/src/anchored/AbstractAnchored.d.ts +18 -8
  155. package/types/src/anchored/AnchoredMap.d.ts +2 -0
  156. package/types/src/anchored/IAnchoredMap.d.ts +52 -4
  157. package/types/src/autoFill/AutoFill.d.ts +316 -32
  158. package/types/src/autoFill/IAutoFill.d.ts +232 -15
  159. package/types/src/border/{IBorder.d.ts → IBorders.d.ts} +58 -41
  160. package/types/src/border/index.d.ts +1 -1
  161. package/types/src/calculation/Calculation.d.ts +584 -149
  162. package/types/src/calculation/ExternalBookBindings.d.ts +118 -0
  163. package/types/src/calculation/FormulaLiterals.d.ts +2 -1
  164. package/types/src/calculation/FormulaText.d.ts +98 -0
  165. package/types/src/calculation/ICalculation.d.ts +353 -88
  166. package/types/src/calculation/INamedFormulasCollection.d.ts +9 -8
  167. package/types/src/calculation/NamedFormulaCollection.d.ts +322 -115
  168. package/types/src/calculation/NamedLambdaFunction.d.ts +28 -0
  169. package/types/src/calculation/TokenType.d.ts +9 -0
  170. package/types/src/calculation/Types.d.ts +83 -2
  171. package/types/src/calculation/_CloneBoundary.d.ts +80 -0
  172. package/types/src/calculation/_FormulaToolkit.d.ts +9 -0
  173. package/types/src/calculation/_TableExtent.d.ts +60 -0
  174. package/types/src/calculation/_TableRename.d.ts +13 -0
  175. package/types/src/calculation/compiler/ASTTypes.d.ts +71 -0
  176. package/types/src/calculation/compiler/CompilerUtils.d.ts +152 -44
  177. package/types/src/calculation/compiler/FormulaCompiler.d.ts +29 -4
  178. package/types/src/calculation/compiler/FormulaParser.d.ts +1 -2
  179. package/types/src/calculation/compiler/LiteTransform.d.ts +17 -0
  180. package/types/src/calculation/compiler/ParserUtils.d.ts +42 -1
  181. package/types/src/calculation/compiler/SRParser.d.ts +2 -1
  182. package/types/src/calculation/compiler/Types.d.ts +79 -9
  183. package/types/src/calculation/engine/CalcBackend.d.ts +855 -0
  184. package/types/src/calculation/engine/index.d.ts +10 -0
  185. package/types/src/calculation/executor/CalcExecutor.d.ts +331 -33
  186. package/types/src/calculation/executor/CalcExecutorUtils.d.ts +49 -2
  187. package/types/src/calculation/executor/CircularReference.d.ts +2 -0
  188. package/types/src/calculation/formula/Formula.d.ts +67 -21
  189. package/types/src/calculation/formula/FormulaBlock.d.ts +131 -23
  190. package/types/src/calculation/formula/FormulaRecordView.d.ts +79 -0
  191. package/types/src/calculation/formula/FunctionValues.d.ts +10 -0
  192. package/types/src/calculation/formula/IFormulaBlock.d.ts +277 -67
  193. package/types/src/calculation/formula/LambdaValue.d.ts +51 -26
  194. package/types/src/calculation/formula/LazyValue.d.ts +96 -0
  195. package/types/src/calculation/formula/TokenUtils.d.ts +25 -1
  196. package/types/src/calculation/formula/index.d.ts +1 -0
  197. package/types/src/calculation/functions/FunctionDeclarations.d.ts +35 -0
  198. package/types/src/calculation/functions/Operators.d.ts +8 -0
  199. package/types/src/calculation/functions/expandDeclaration.d.ts +15 -0
  200. package/types/src/calculation/functions/initializeFunctions.d.ts +3 -2
  201. package/types/src/calculation/grid/CalcGrid.d.ts +443 -158
  202. package/types/src/calculation/grid/CalcGridBackend.d.ts +523 -0
  203. package/types/src/calculation/grid/CalcGridProxy.d.ts +135 -0
  204. package/types/src/calculation/grid/CalcGridUtils.d.ts +69 -12
  205. package/types/src/calculation/grid/FormulaEntry.d.ts +129 -0
  206. package/types/src/calculation/grid/FormulaHost.d.ts +284 -0
  207. package/types/src/calculation/grid/ICalcGrid.d.ts +528 -141
  208. package/types/src/calculation/grid/_CalcRequest.d.ts +299 -0
  209. package/types/src/calculation/grid/_CellValueRun.d.ts +21 -0
  210. package/types/src/calculation/grid/index.d.ts +4 -0
  211. package/types/src/calculation/index.d.ts +2 -0
  212. package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts +6 -2
  213. package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +364 -11
  214. package/types/src/calculation/spatial/SpillEntry.d.ts +20 -5
  215. package/types/src/calculation/spatial/TouchedWindows.d.ts +86 -0
  216. package/types/src/calculation/spatial/index.d.ts +1 -0
  217. package/types/src/calculation/state/CalcInputs.d.ts +41 -0
  218. package/types/src/calculation/state/CalcNode.d.ts +141 -30
  219. package/types/src/calculation/state/CalcScope.d.ts +46 -0
  220. package/types/src/calculation/state/CalcState.d.ts +32 -1
  221. package/types/src/calculation/state/CalculationContext.d.ts +50 -3
  222. package/types/src/calculation/state/IContextContainer.d.ts +141 -27
  223. package/types/src/calculation/state/_PendingOverlayGrid.d.ts +163 -0
  224. package/types/src/calculation/state/_ReadObservedGrid.d.ts +74 -8
  225. package/types/src/calculation/state/index.d.ts +1 -0
  226. package/types/src/calculation/symbol/ExternalSheetSymbols.d.ts +80 -0
  227. package/types/src/calculation/symbol/ISymbolRegistry.d.ts +23 -0
  228. package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts +16 -2
  229. package/types/src/calculation/symbol/SheetSymbolProvider.d.ts +63 -3
  230. package/types/src/calculation/symbol/SymbolRegistry.d.ts +20 -0
  231. package/types/src/calculation/symbol/index.d.ts +3 -2
  232. package/types/src/calculation/toolkit/FormulaLiteralReader.d.ts +4 -0
  233. package/types/src/calculation/toolkit/FormulaTextParser.d.ts +10 -0
  234. package/types/src/calculation/toolkit/FunctionDeclarationTable.d.ts +4 -0
  235. package/types/src/calculation/toolkit/index.d.ts +12 -0
  236. package/types/src/cell/ICell.d.ts +357 -33
  237. package/types/src/cell/ICellHeader.d.ts +31 -8
  238. package/types/src/cell/ICellProtection.d.ts +50 -10
  239. package/types/src/cellRange/ICellHeaderRange.d.ts +6 -9
  240. package/types/src/cellRange/ICellHeaderRanges.d.ts +5 -0
  241. package/types/src/cellRange/ICellRange.d.ts +737 -130
  242. package/types/src/cellRange/ICellRanges.d.ts +31 -24
  243. package/types/src/chart/Chart.d.ts +246 -16
  244. package/types/src/chart/ChartCollection.d.ts +31 -0
  245. package/types/src/chart/IChart.d.ts +2058 -18
  246. package/types/src/chart/IChartCollection.d.ts +50 -0
  247. package/types/src/chart/_ChartParts.d.ts +1066 -0
  248. package/types/src/chart/_ChartSource.d.ts +47 -0
  249. package/types/src/chart/createChart.d.ts +26 -0
  250. package/types/src/chart/index.d.ts +5 -3
  251. package/types/src/chart/kinds/ChartKind.d.ts +252 -0
  252. package/types/src/chart/kinds/_Area.d.ts +3 -0
  253. package/types/src/chart/kinds/_Bar.d.ts +4 -0
  254. package/types/src/chart/kinds/_BoxWhisker.d.ts +4 -0
  255. package/types/src/chart/kinds/_Bubble.d.ts +3 -0
  256. package/types/src/chart/kinds/_Funnel.d.ts +4 -0
  257. package/types/src/chart/kinds/_Hierarchy.d.ts +31 -0
  258. package/types/src/chart/kinds/_Histogram.d.ts +4 -0
  259. package/types/src/chart/kinds/_HitKinds.d.ts +23 -0
  260. package/types/src/chart/kinds/_Line.d.ts +4 -0
  261. package/types/src/chart/kinds/_OfPie.d.ts +4 -0
  262. package/types/src/chart/kinds/_Pie.d.ts +4 -0
  263. package/types/src/chart/kinds/_Placeholder.d.ts +6 -0
  264. package/types/src/chart/kinds/_Radar.d.ts +4 -0
  265. package/types/src/chart/kinds/_Scatter.d.ts +8 -0
  266. package/types/src/chart/kinds/_Sunburst.d.ts +4 -0
  267. package/types/src/chart/kinds/_Surface.d.ts +4 -0
  268. package/types/src/chart/kinds/_Treemap.d.ts +4 -0
  269. package/types/src/chart/kinds/_Waterfall.d.ts +18 -0
  270. package/types/src/chart/kinds/_builtIns.d.ts +11 -0
  271. package/types/src/chart/layout/ChartLayout.d.ts +825 -0
  272. package/types/src/chart/layout/TextMeasurer.d.ts +38 -0
  273. package/types/src/chart/layout/_HitGeometry.d.ts +50 -0
  274. package/types/src/chart/layout/_HitTest.d.ts +36 -0
  275. package/types/src/chart/layout/_Layout.d.ts +25 -0
  276. package/types/src/chart/layout/_LayoutUtils.d.ts +97 -0
  277. package/types/src/chart/math/BoxStats.d.ts +35 -0
  278. package/types/src/chart/math/DateUnitCalcs.d.ts +80 -0
  279. package/types/src/chart/math/DisplayUnits.d.ts +53 -0
  280. package/types/src/chart/math/Histogram.d.ts +48 -0
  281. package/types/src/chart/math/OrdUnitCalcs.d.ts +166 -0
  282. package/types/src/chart/math/Treemap.d.ts +28 -0
  283. package/types/src/chart/math/Trendlines.d.ts +71 -0
  284. package/types/src/chart/math/UnitCalcs.d.ts +98 -0
  285. package/types/src/chart/model/ChartModel.d.ts +681 -0
  286. package/types/src/chart/model/_ChartType.d.ts +14 -0
  287. package/types/src/chart/model/_Edits.d.ts +489 -0
  288. package/types/src/chart/model/_Grouping.d.ts +83 -0
  289. package/types/src/chart/model/_Inference.d.ts +52 -0
  290. package/types/src/chart/model/_ModelFacts.d.ts +112 -0
  291. package/types/src/chart/model/_NewChart.d.ts +208 -0
  292. package/types/src/chart/model/_OfPie.d.ts +18 -0
  293. package/types/src/chart/resolve/_LegacyStyles.d.ts +48 -0
  294. package/types/src/chart/resolve/_Resolve.d.ts +51 -0
  295. package/types/src/chart/resolve/_ResolvedChart.d.ts +444 -0
  296. package/types/src/collections/ArraysGrid.d.ts +1 -1
  297. package/types/src/collections/IGrid.d.ts +1 -1
  298. package/types/src/collections/ISparseGrid.d.ts +9 -0
  299. package/types/src/collections/ISpatialMap.d.ts +59 -21
  300. package/types/src/collections/ImmutableList.d.ts +28 -0
  301. package/types/src/collections/MixedTypedArrayList.d.ts +168 -108
  302. package/types/src/collections/RTree.d.ts +116 -36
  303. package/types/src/collections/RepeatingList.d.ts +7 -0
  304. package/types/src/collections/ScalarGrid.d.ts +50 -0
  305. package/types/src/collections/SparseGrid.d.ts +7 -4
  306. package/types/src/collections/SpatialMap.d.ts +15 -29
  307. package/types/src/collections/SpatialMap3D.d.ts +2 -0
  308. package/types/src/collections/Tuple.d.ts +128 -16
  309. package/types/src/collections/_GridUtils.d.ts +19 -6
  310. package/types/src/collections/_SpatialUtils.d.ts +20 -2
  311. package/types/src/collections/index.d.ts +2 -1
  312. package/types/src/color/_BuiltInIndexDefs.d.ts +6 -0
  313. package/types/src/comment/Comment.d.ts +246 -0
  314. package/types/src/comment/CommentCollection.d.ts +40 -0
  315. package/types/src/comment/IComment.d.ts +377 -50
  316. package/types/src/comment/ICommentCollection.d.ts +90 -0
  317. package/types/src/comment/NoteMovable.d.ts +26 -0
  318. package/types/src/comment/_CommentUtils.d.ts +50 -0
  319. package/types/src/comment/_NoteBox.d.ts +67 -0
  320. package/types/src/comment/index.d.ts +1 -0
  321. package/types/src/condition/AnchoredConditional.d.ts +110 -19
  322. package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +42 -12
  323. package/types/src/condition/BuiltInOperators/AfterEqualToOperator.d.ts +2 -0
  324. package/types/src/condition/BuiltInOperators/AfterOperator.d.ts +2 -0
  325. package/types/src/condition/BuiltInOperators/AndOperator.d.ts +3 -1
  326. package/types/src/condition/BuiltInOperators/AverageOperator.d.ts +2 -0
  327. package/types/src/condition/BuiltInOperators/BeforeEqualToOperator.d.ts +2 -0
  328. package/types/src/condition/BuiltInOperators/BeforeOperator.d.ts +2 -0
  329. package/types/src/condition/BuiltInOperators/BetweenOperator.d.ts +2 -0
  330. package/types/src/condition/BuiltInOperators/ColorOperator.d.ts +4 -0
  331. package/types/src/condition/BuiltInOperators/ContainsOperator.d.ts +2 -0
  332. package/types/src/condition/BuiltInOperators/EndsWithOperator.d.ts +2 -0
  333. package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts +4 -1
  334. package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts +5 -6
  335. package/types/src/condition/BuiltInOperators/GreaterThanEqualToOperator.d.ts +2 -0
  336. package/types/src/condition/BuiltInOperators/GreaterThanOperator.d.ts +2 -0
  337. package/types/src/condition/BuiltInOperators/IconOperator.d.ts +4 -0
  338. package/types/src/condition/BuiltInOperators/InSetOperator.d.ts +22 -5
  339. package/types/src/condition/BuiltInOperators/LessThanEqualToOperator.d.ts +2 -0
  340. package/types/src/condition/BuiltInOperators/LessThanOperator.d.ts +2 -0
  341. package/types/src/condition/BuiltInOperators/NotOperator.d.ts +2 -0
  342. package/types/src/condition/BuiltInOperators/OrOperator.d.ts +3 -1
  343. package/types/src/condition/BuiltInOperators/StartsWithOperator.d.ts +2 -0
  344. package/types/src/condition/BuiltInOperators/TimePeriodOperator.d.ts +2 -0
  345. package/types/src/condition/BuiltInOperators/TopNOperator.d.ts +6 -0
  346. package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts +21 -6
  347. package/types/src/condition/BuiltinSelectors/DateSelector.d.ts +4 -5
  348. package/types/src/condition/BuiltinSelectors/DisplaySelector.d.ts +20 -0
  349. package/types/src/condition/BuiltinSelectors/TextLengthSelector.d.ts +7 -5
  350. package/types/src/condition/BuiltinSelectors/TimeSelector.d.ts +3 -5
  351. package/types/src/condition/BuiltinSelectors/WholeSelector.d.ts +3 -5
  352. package/types/src/condition/BuiltinSelectors/index.d.ts +12 -6
  353. package/types/src/condition/Condition.d.ts +19 -1
  354. package/types/src/condition/ICondition.d.ts +296 -75
  355. package/types/src/condition/_ConditionFormula.d.ts +152 -0
  356. package/types/src/condition/_ConditionUtils.d.ts +167 -13
  357. package/types/src/conditionalFormat/ConditionalEntry.d.ts +3 -3
  358. package/types/src/conditionalFormat/ConditionalFormat.d.ts +34 -17
  359. package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +19 -8
  360. package/types/src/conditionalFormat/IConditionalFormat.d.ts +16 -13
  361. package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +2 -0
  362. package/types/src/dataTable/DataTable.d.ts +67 -0
  363. package/types/src/dataTable/DataTableCollection.d.ts +19 -0
  364. package/types/src/dataTable/IDataTable.d.ts +99 -0
  365. package/types/src/dataTable/IDataTableCollection.d.ts +18 -0
  366. package/types/src/dataTable/index.d.ts +6 -0
  367. package/types/src/dataValidation/DataValidation.d.ts +70 -4
  368. package/types/src/dataValidation/DataValidationCollection.d.ts +23 -9
  369. package/types/src/dataValidation/IDataValidation.d.ts +150 -31
  370. package/types/src/dataValidation/IDataValidationCollection.d.ts +34 -2
  371. package/types/src/date/DateUtils.d.ts +20 -0
  372. package/types/src/date/_DateUtils.d.ts +91 -7
  373. package/types/src/documentProperties/DocumentProperties.d.ts +66 -0
  374. package/types/src/documentProperties/ICustomProperty.d.ts +69 -0
  375. package/types/src/documentProperties/IDocumentProperties.d.ts +110 -0
  376. package/types/src/documentProperties/index.d.ts +3 -0
  377. package/types/src/externalBook/ExternalBookCollection.d.ts +145 -12
  378. package/types/src/externalBook/ExternalBookName.d.ts +96 -0
  379. package/types/src/externalBook/IExternalBook.d.ts +171 -19
  380. package/types/src/externalBook/IExternalBookCollection.d.ts +79 -7
  381. package/types/src/externalBook/index.d.ts +1 -0
  382. package/types/src/{lib/file → file}/file.browser.d.ts +22 -8
  383. package/types/src/{lib/file → file}/file.node.d.ts +7 -2
  384. package/types/src/fill/IEffect.d.ts +5 -5
  385. package/types/src/fill/IFill.d.ts +129 -77
  386. package/types/src/fill/IFillable.d.ts +47 -0
  387. package/types/src/fill/IStroke.d.ts +204 -64
  388. package/types/src/fill/PaintUtils.d.ts +22 -0
  389. package/types/src/fill/RectAlignment.d.ts +20 -0
  390. package/types/src/fill/_Fills.d.ts +187 -0
  391. package/types/src/fill/_Stroke.d.ts +89 -0
  392. package/types/src/fill/index.d.ts +3 -0
  393. package/types/src/filter/IFilter.d.ts +188 -5
  394. package/types/src/font/AdvanceBuilder.d.ts +59 -0
  395. package/types/src/font/AdvanceTable.d.ts +228 -0
  396. package/types/src/font/CanvasAdvanceBuilder.d.ts +54 -0
  397. package/types/src/font/FontCapture.d.ts +4 -0
  398. package/types/src/font/FontCollection.d.ts +108 -0
  399. package/types/src/font/FontPlatform.d.ts +20 -0
  400. package/types/src/font/FontUtils.d.ts +5 -0
  401. package/types/src/font/IFont.d.ts +208 -61
  402. package/types/src/font/IFontCollection.d.ts +126 -22
  403. package/types/src/font/IFontStyle.d.ts +207 -0
  404. package/types/src/font/TableFileAdvanceBuilder.d.ts +36 -0
  405. package/types/src/font/_BuiltinFontTables.d.ts +10 -0
  406. package/types/src/font/_FontUtils.d.ts +11 -4
  407. package/types/src/font/_FontsVersion.d.ts +7 -0
  408. package/types/src/font/index.d.ts +2 -1
  409. package/types/src/font/platform.browser.d.ts +15 -0
  410. package/types/src/font/platform.node.d.ts +5 -0
  411. package/types/src/group/Group.d.ts +141 -0
  412. package/types/src/group/GroupMovableCollection.d.ts +41 -0
  413. package/types/src/group/IGroup.d.ts +129 -0
  414. package/types/src/group/index.d.ts +2 -0
  415. package/types/src/history/IHistory.d.ts +21 -3
  416. package/types/src/hyperlink/IHyperlink.d.ts +20 -1
  417. package/types/src/hyperlink/_Hyperlink.d.ts +5 -1
  418. package/types/src/i18n/LanguagePack.d.ts +12 -4
  419. package/types/src/index.d.ts +8 -0
  420. package/types/src/io/AbstractBackingStore.d.ts +24 -1
  421. package/types/src/io/ArrayBackingStore.d.ts +1 -1
  422. package/types/src/io/EmbeddedPart.d.ts +20 -0
  423. package/types/src/io/IEmbeddedPart.d.ts +63 -0
  424. package/types/src/io/IWorkbookIO.d.ts +185 -18
  425. package/types/src/io/WorkbookIO.d.ts +9 -0
  426. package/types/src/io/WorkbookOrigin.d.ts +20 -11
  427. package/types/src/io/WorkbookOriginProvider.d.ts +46 -0
  428. package/types/src/io/_XmlFragment.d.ts +49 -0
  429. package/types/src/io/index.d.ts +1 -0
  430. package/types/src/license/LicenseDetails.d.ts +1 -0
  431. package/types/src/license/LicenseManager.d.ts +25 -1
  432. package/types/src/license/Types.d.ts +38 -0
  433. package/types/src/license/_Utils.d.ts +39 -0
  434. package/types/src/license/details.d.ts +24 -0
  435. package/types/src/license/license-key.d.ts +49 -2
  436. package/types/src/license/runtime.browser.d.ts +46 -0
  437. package/types/src/{lib/utils/utils.node.d.ts → license/runtime.node.d.ts} +19 -12
  438. package/types/src/listener/IListener.d.ts +23 -6
  439. package/types/src/listener/ListenerEmitter.d.ts +55 -6
  440. package/types/src/model/AbstractModel.d.ts +14 -5
  441. package/types/src/movable/AbstractMovableContent.d.ts +182 -0
  442. package/types/src/movable/CustomElement.d.ts +4 -5
  443. package/types/src/movable/ErrorContent.d.ts +49 -0
  444. package/types/src/movable/FormControl.d.ts +285 -0
  445. package/types/src/movable/GroupMember.d.ts +87 -0
  446. package/types/src/movable/ICustomElement.d.ts +7 -2
  447. package/types/src/movable/IErrorContent.d.ts +23 -0
  448. package/types/src/movable/IFormControl.d.ts +455 -0
  449. package/types/src/movable/IMovable.d.ts +405 -60
  450. package/types/src/movable/IMovableCollection.d.ts +64 -4
  451. package/types/src/movable/Movable.d.ts +161 -50
  452. package/types/src/movable/MovableCollection.d.ts +21 -10
  453. package/types/src/movable/MovableContentRegistry.d.ts +113 -0
  454. package/types/src/movable/_BuiltInContents.d.ts +14 -0
  455. package/types/src/movable/_ContentFactory.d.ts +35 -0
  456. package/types/src/movable/_DrawnBounds.d.ts +37 -0
  457. package/types/src/movable/_InsertableCollection.d.ts +39 -0
  458. package/types/src/movable/_MovableUtils.d.ts +5 -0
  459. package/types/src/movable/_PendingContent.d.ts +25 -0
  460. package/types/src/movable/_PlacementUtils.d.ts +55 -0
  461. package/types/src/movable/_RotatedFrame.d.ts +20 -0
  462. package/types/src/movable/index.d.ts +7 -1
  463. package/types/src/named/AbstractNamed.d.ts +1 -1
  464. package/types/src/named/INamed.d.ts +34 -1
  465. package/types/src/named/INamedCollection.d.ts +28 -2
  466. package/types/src/named/NamedCollection.d.ts +32 -19
  467. package/types/src/numFmt/BuiltInFormats.d.ts +20 -7
  468. package/types/src/numFmt/IFormatEngine.d.ts +2 -0
  469. package/types/src/numFmt/NumberFormatParser.d.ts +5 -0
  470. package/types/src/numFmt/NumfmtFormatEngine.d.ts +2 -0
  471. package/types/src/numFmt/_FormatCell.d.ts +11 -2
  472. package/types/src/numFmt/_NumFmtUtils.d.ts +0 -1
  473. package/types/src/numFmt/vendor/numfmt/_sheetxl.d.ts +6 -0
  474. package/types/src/outline/IOutline.d.ts +186 -0
  475. package/types/src/outline/Outline.d.ts +157 -0
  476. package/types/src/outline/index.d.ts +2 -0
  477. package/types/src/person/IPerson.d.ts +99 -0
  478. package/types/src/person/IPersonCollection.d.ts +51 -0
  479. package/types/src/person/Person.d.ts +32 -0
  480. package/types/src/person/PersonCollection.d.ts +49 -0
  481. package/types/src/person/index.d.ts +4 -0
  482. package/types/src/picture/IPicture.d.ts +131 -4
  483. package/types/src/picture/Picture.d.ts +42 -14
  484. package/types/src/pivot/IPivotTable.d.ts +72 -0
  485. package/types/src/pivot/IPivotTableCollection.d.ts +25 -0
  486. package/types/src/pivot/PivotCache.d.ts +34 -0
  487. package/types/src/pivot/PivotTable.d.ts +61 -0
  488. package/types/src/pivot/PivotTableCollection.d.ts +25 -0
  489. package/types/src/pivot/_PivotXml.d.ts +24 -0
  490. package/types/src/pivot/index.d.ts +6 -0
  491. package/types/src/primitives/CompositeRangeStats.d.ts +2 -0
  492. package/types/src/primitives/Criteria.d.ts +1 -1
  493. package/types/src/primitives/Grouping.d.ts +65 -0
  494. package/types/src/primitives/LambdaBrand.d.ts +26 -0
  495. package/types/src/primitives/PrimitiveUtils.d.ts +56 -19
  496. package/types/src/primitives/Range.d.ts +133 -25
  497. package/types/src/primitives/RangeStats.d.ts +30 -2
  498. package/types/src/primitives/ReferenceRange.d.ts +44 -0
  499. package/types/src/primitives/Runtime.d.ts +15 -2
  500. package/types/src/primitives/environment.browser.d.ts +9 -0
  501. package/types/src/primitives/environment.node.d.ts +10 -0
  502. package/types/src/primitives/stats/AggregateStats.d.ts +49 -15
  503. package/types/src/primitives/stats/Cancellation.d.ts +13 -0
  504. package/types/src/primitives/stats/FrequencyStats.d.ts +10 -1
  505. package/types/src/primitives/stats/LookupIndex.d.ts +46 -0
  506. package/types/src/primitives/stats/Ranked.d.ts +1 -1
  507. package/types/src/primitives/stats/SortedNumbers.d.ts +4 -2
  508. package/types/src/primitives/stats/index.d.ts +1 -0
  509. package/types/src/print/IPageLayout.d.ts +635 -0
  510. package/types/src/print/PageLayout.d.ts +258 -0
  511. package/types/src/print/index.d.ts +1 -1
  512. package/types/src/protectedRange/IProtectedRange.d.ts +6 -2
  513. package/types/src/protectedRange/IProtectedRangeCollection.d.ts +2 -0
  514. package/types/src/protectedRange/ProtectedRange.d.ts +1 -4
  515. package/types/src/protectedRange/ProtectedRangeCollection.d.ts +19 -8
  516. package/types/src/protection/DefaultProtection.d.ts +12 -1
  517. package/types/src/protection/IProtection.d.ts +42 -2
  518. package/types/src/protection/PasswordHasher.d.ts +13 -0
  519. package/types/src/reference/ReferenceUtils.d.ts +80 -0
  520. package/types/src/reference/index.d.ts +2 -0
  521. package/types/src/resource/IResource.d.ts +21 -1
  522. package/types/src/resource/IResourceCollection.d.ts +9 -1
  523. package/types/src/resource/ResourceCollection.d.ts +6 -6
  524. package/types/src/richData/IRichDataKind.d.ts +22 -0
  525. package/types/src/richData/RichDataRegistry.d.ts +57 -0
  526. package/types/src/richData/RichText.d.ts +59 -0
  527. package/types/src/richData/index.d.ts +3 -0
  528. package/types/src/scripting/FunctionCollection.d.ts +49 -15
  529. package/types/src/scripting/IFunctionCollection.d.ts +62 -32
  530. package/types/src/scripting/IModule.d.ts +25 -0
  531. package/types/src/scripting/IModuleCollection.d.ts +17 -0
  532. package/types/src/scripting/IScript.d.ts +30 -28
  533. package/types/src/scripting/ITypedFunction.d.ts +1 -1
  534. package/types/src/scripting/Module.d.ts +34 -6
  535. package/types/src/scripting/ModuleCollection.d.ts +17 -12
  536. package/types/src/scripting/Runtime.d.ts +15 -0
  537. package/types/src/scripting/Scripts.d.ts +3 -7
  538. package/types/src/scripting/TypedFunction.d.ts +154 -18
  539. package/types/src/scripting/_FunctionIndex.d.ts +8 -3
  540. package/types/src/scripting/_ModuleUtils.d.ts +11 -1
  541. package/types/src/scripting/_ScriptUtils.d.ts +3 -0
  542. package/types/src/scripting/declarations.browser.d.ts +10 -0
  543. package/types/src/scripting/declarations.d.ts +52 -0
  544. package/types/src/scripting/declarations.node.d.ts +9 -0
  545. package/types/src/scripting/index.d.ts +3 -0
  546. package/types/src/selection/ChartElementSelection.d.ts +39 -0
  547. package/types/src/selection/IChartElementSelection.d.ts +103 -0
  548. package/types/src/selection/IItemSelection.d.ts +131 -0
  549. package/types/src/selection/IMovableSelection.d.ts +120 -0
  550. package/types/src/selection/IRangeSelection.d.ts +13 -8
  551. package/types/src/selection/ItemSelection.d.ts +49 -0
  552. package/types/src/selection/MovableSelection.d.ts +29 -0
  553. package/types/src/selection/RangeSelection.d.ts +19 -4
  554. package/types/src/selection/index.d.ts +4 -0
  555. package/types/src/shape/GeometryPreset.d.ts +197 -0
  556. package/types/src/shape/IGeometry.d.ts +380 -0
  557. package/types/src/shape/IShape.d.ts +342 -194
  558. package/types/src/shape/IShapeStyle.d.ts +109 -0
  559. package/types/src/shape/ITextBoxStyle.d.ts +85 -0
  560. package/types/src/shape/Shape.d.ts +107 -21
  561. package/types/src/shape/ShapeStyleUtils.d.ts +66 -0
  562. package/types/src/shape/_ConnectorFrame.d.ts +32 -0
  563. package/types/src/shape/_ConnectorRoute.d.ts +33 -0
  564. package/types/src/shape/_Connectors.d.ts +108 -0
  565. package/types/src/shape/_Geometry.d.ts +14 -0
  566. package/types/src/shape/_GeometryLoader.d.ts +21 -0
  567. package/types/src/shape/_ShapeStyle.d.ts +79 -0
  568. package/types/src/shape/_builtIn/_BuiltInChunks.d.ts +10 -0
  569. package/types/src/shape/_builtIn/_BuiltInDef.d.ts +9 -0
  570. package/types/src/shape/_builtIn/arrows.d.ts +6 -0
  571. package/types/src/shape/_builtIn/basic.d.ts +6 -0
  572. package/types/src/shape/_builtIn/callouts.d.ts +6 -0
  573. package/types/src/shape/_builtIn/flowchart.d.ts +6 -0
  574. package/types/src/shape/_builtIn/lines.d.ts +6 -0
  575. package/types/src/shape/_builtIn/math.d.ts +6 -0
  576. package/types/src/shape/_builtIn/other.d.ts +6 -0
  577. package/types/src/shape/_builtIn/rectangles.d.ts +6 -0
  578. package/types/src/shape/_builtIn/starsBanners.d.ts +6 -0
  579. package/types/src/shape/geometry/_strokeEnds.d.ts +7 -0
  580. package/types/src/shape/geometry/format.d.ts +3 -0
  581. package/types/src/shape/geometry/geometry.d.ts +85 -0
  582. package/types/src/shape/geometry/guides.d.ts +54 -0
  583. package/types/src/shape/geometry/handles.d.ts +14 -0
  584. package/types/src/shape/geometry/index.d.ts +7 -0
  585. package/types/src/shape/geometry/lineEnds.d.ts +54 -0
  586. package/types/src/shape/geometry/paths.d.ts +35 -0
  587. package/types/src/shape/geometry/segments.d.ts +114 -0
  588. package/types/src/shape/index.d.ts +4 -0
  589. package/types/src/sheet/CellRegion.d.ts +43 -3
  590. package/types/src/sheet/ICellContainerOptions.d.ts +50 -0
  591. package/types/src/sheet/IOpaqueSheet.d.ts +46 -0
  592. package/types/src/sheet/ISheet.d.ts +81 -931
  593. package/types/src/sheet/IWorksheet.d.ts +1514 -0
  594. package/types/src/sheet/{ISheetCollection.d.ts → IWorksheetCollection.d.ts} +38 -16
  595. package/types/src/sheet/NamedCellRange.d.ts +17 -8
  596. package/types/src/sheet/NamedRange.d.ts +10 -2
  597. package/types/src/sheet/OpaqueSheet.d.ts +114 -0
  598. package/types/src/sheet/SheetCell.d.ts +96 -39
  599. package/types/src/sheet/SheetRange.d.ts +130 -27
  600. package/types/src/sheet/SheetRanges.d.ts +33 -18
  601. package/types/src/sheet/Worksheet.d.ts +2250 -0
  602. package/types/src/sheet/WorksheetCollection.d.ts +39 -0
  603. package/types/src/sheet/_Anomalies.d.ts +109 -0
  604. package/types/src/sheet/_AnomalyFormulaChecks.d.ts +125 -0
  605. package/types/src/sheet/_AnomalyLabelChecks.d.ts +21 -0
  606. package/types/src/sheet/_CellBuffer.d.ts +224 -0
  607. package/types/src/sheet/_CopyUtils.d.ts +13 -6
  608. package/types/src/sheet/_HeldFormula.d.ts +69 -0
  609. package/types/src/sheet/_IgnoredErrors.d.ts +46 -0
  610. package/types/src/sheet/_InvalidSheetRange.d.ts +10 -9
  611. package/types/src/sheet/_Kinds.d.ts +34 -0
  612. package/types/src/sheet/_Labels.d.ts +38 -0
  613. package/types/src/sheet/_ListenerAnchor.d.ts +104 -0
  614. package/types/src/sheet/_RangeStateSweep.d.ts +15 -0
  615. package/types/src/sheet/_ScalarListFactory.d.ts +61 -0
  616. package/types/src/sheet/_SheetAutoFillUtils.d.ts +74 -0
  617. package/types/src/sheet/_SheetAutoFitUtils.d.ts +5 -5
  618. package/types/src/sheet/_SheetChangeEvent.d.ts +72 -0
  619. package/types/src/sheet/_SheetCoords.d.ts +3 -3
  620. package/types/src/sheet/_SheetEvents.d.ts +43 -0
  621. package/types/src/sheet/_SheetFilterUtils.d.ts +51 -3
  622. package/types/src/sheet/_SheetIntents.d.ts +314 -0
  623. package/types/src/sheet/_SheetMessages.d.ts +1 -1
  624. package/types/src/sheet/_SheetMutations.d.ts +185 -66
  625. package/types/src/sheet/_SheetSortUtils.d.ts +2 -2
  626. package/types/src/sheet/_SheetStateReader.d.ts +35 -11
  627. package/types/src/sheet/_SheetStateTypes.d.ts +143 -79
  628. package/types/src/sheet/_SheetUtils.d.ts +59 -41
  629. package/types/src/sheet/_WatchAnchor.d.ts +106 -0
  630. package/types/src/sheet/clipboard/RangeClipboardItems.d.ts +4 -4
  631. package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts +3 -3
  632. package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts +3 -3
  633. package/types/src/sheet/index.d.ts +5 -2
  634. package/types/src/sheet/spatial/HeldFormulaEntry.d.ts +36 -0
  635. package/types/src/sheet/spatial/index.d.ts +1 -0
  636. package/types/src/sheet/style/SheetCellStyle.d.ts +223 -337
  637. package/types/src/sheet/style/SheetDirectStyle.d.ts +31 -20
  638. package/types/src/sheet/style/SheetNamedStyle.d.ts +19 -17
  639. package/types/src/sheet/style/SheetTableStyle.d.ts +5 -5
  640. package/types/src/sheet/style/_DigitWidth.d.ts +7 -0
  641. package/types/src/sheet/style/_Resolvers.d.ts +17 -10
  642. package/types/src/sheet/style/_StyleUtils.d.ts +34 -40
  643. package/types/src/sheetHeader/ISheetHeader.d.ts +96 -55
  644. package/types/src/sheetHeader/SheetCellHeader.d.ts +6 -0
  645. package/types/src/sheetHeader/SheetCellHeaderRange.d.ts +2 -0
  646. package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts +2 -0
  647. package/types/src/sheetHeader/SheetHeader.d.ts +48 -27
  648. package/types/src/sheetHeader/_HeaderMetrics.d.ts +37 -0
  649. package/types/src/sheetHeader/_HeaderUtils.d.ts +5 -4
  650. package/types/src/sheetProtection/{ISheetProtection.d.ts → IWorksheetProtection.d.ts} +64 -30
  651. package/types/src/sheetProtection/WorksheetProtection.d.ts +51 -0
  652. package/types/src/sheetProtection/index.d.ts +1 -1
  653. package/types/src/sheetView/{ISheetView.d.ts → IWorksheetView.d.ts} +230 -69
  654. package/types/src/sheetView/WorksheetView.d.ts +139 -0
  655. package/types/src/sheetView/_SheetViewUtils.d.ts +5 -3
  656. package/types/src/sheetView/index.d.ts +1 -1
  657. package/types/src/slicer/ISlicer.d.ts +304 -17
  658. package/types/src/slicer/ISlicerStyle.d.ts +109 -0
  659. package/types/src/slicer/Slicer.d.ts +128 -13
  660. package/types/src/slicer/SlicerStyle.d.ts +25 -0
  661. package/types/src/slicer/_BuiltInSlicerStyles.d.ts +13 -0
  662. package/types/src/slicer/_SlicerUtils.d.ts +30 -0
  663. package/types/src/slicer/index.d.ts +1 -0
  664. package/types/src/sort/ISort.d.ts +39 -7
  665. package/types/src/string/IStringCollection.d.ts +5 -0
  666. package/types/src/string/StringCollection.d.ts +6 -6
  667. package/types/src/style/{IStyle.d.ts → ICellStyle.d.ts} +117 -85
  668. package/types/src/style/INamedStyleCollection.d.ts +72 -0
  669. package/types/src/style/ISlicerStyleCollection.d.ts +77 -0
  670. package/types/src/style/IStyleCollection.d.ts +91 -60
  671. package/types/src/style/ITableStyleCollection.d.ts +89 -0
  672. package/types/src/style/NamedStyleCollection.d.ts +39 -0
  673. package/types/src/style/SlicerStyleCollection.d.ts +46 -0
  674. package/types/src/style/StyleCollection.d.ts +81 -26
  675. package/types/src/style/TableStyleCollection.d.ts +49 -0
  676. package/types/src/style/_BuiltInStyleDefs.d.ts +9 -8
  677. package/types/src/style/_BuiltInStyleNames.d.ts +2 -2
  678. package/types/src/style/index.d.ts +7 -1
  679. package/types/src/table/AnchoredTable.d.ts +723 -78
  680. package/types/src/table/AutoTable.d.ts +8 -6
  681. package/types/src/table/ITable.d.ts +289 -49
  682. package/types/src/table/ITableCollection.d.ts +12 -0
  683. package/types/src/table/ITableStyle.d.ts +37 -37
  684. package/types/src/table/TableCollection.d.ts +19 -8
  685. package/types/src/table/_FilterField.d.ts +19 -6
  686. package/types/src/table/_NamedTable.d.ts +20 -4
  687. package/types/src/table/_NamedTableSource.d.ts +3 -2
  688. package/types/src/table/_SortField.d.ts +2 -0
  689. package/types/src/table/_TableColumn.d.ts +13 -2
  690. package/types/src/table/_TableMessages.d.ts +1 -0
  691. package/types/src/table/_TableUtils.d.ts +40 -0
  692. package/types/src/text/Bullet.d.ts +4 -0
  693. package/types/src/text/IText.d.ts +150 -15
  694. package/types/src/text/ITextFrame.d.ts +110 -1
  695. package/types/src/text/TextBoxAlignment.d.ts +25 -16
  696. package/types/src/text/TextEngine.d.ts +34 -0
  697. package/types/src/text/TextFrame.d.ts +8 -2
  698. package/types/src/text/TextLine.d.ts +4 -0
  699. package/types/src/text/TextParagraph.d.ts +4 -0
  700. package/types/src/text/TextRotation.d.ts +3 -3
  701. package/types/src/text/TextRun.d.ts +12 -2
  702. package/types/src/text/TextStacked.d.ts +83 -0
  703. package/types/src/text/TextWrapper.d.ts +32 -26
  704. package/types/src/text/_TextUtils.d.ts +5 -5
  705. package/types/src/text/_TextWrapperFallback.d.ts +49 -0
  706. package/types/src/text/impl/TabStrategy.d.ts +3 -1
  707. package/types/src/text/index.d.ts +1 -0
  708. package/types/src/text/richtext/IRichText.d.ts +50 -0
  709. package/types/src/text/richtext/index.d.ts +1 -1
  710. package/types/src/theme/ITheme.d.ts +153 -11
  711. package/types/src/theme/IThemeCollection.d.ts +2 -0
  712. package/types/src/theme/ThemeCollection.d.ts +16 -7
  713. package/types/src/theme/_OfficeFontScheme.d.ts +8 -0
  714. package/types/src/theme/_OfficeFormatScheme.d.ts +3 -0
  715. package/types/src/transaction/ITransaction.d.ts +277 -45
  716. package/types/src/transaction/Transaction.d.ts +108 -11
  717. package/types/src/transaction/TransactionUndoManager.d.ts +4 -1
  718. package/types/src/transaction/_BatchHandle.d.ts +118 -0
  719. package/types/src/type/AbstractCollection.d.ts +92 -0
  720. package/types/src/type/ICollection.d.ts +131 -1
  721. package/types/src/type/IProperties.d.ts +1 -1
  722. package/types/src/type/ITypes.d.ts +9 -7
  723. package/types/src/type/index.d.ts +1 -0
  724. package/types/src/utils/_CSSUtils.d.ts +4 -4
  725. package/types/src/wasm/_fontsWasm.d.ts +7 -0
  726. package/types/src/wasm/_sdkWasm.d.ts +7 -0
  727. package/types/src/wasm/fontsWasm.d.ts +32 -0
  728. package/types/src/wasm/index.d.ts +3 -0
  729. package/types/src/wasm/loader.browser.d.ts +9 -0
  730. package/types/src/wasm/loader.node.d.ts +9 -0
  731. package/types/src/wasm/sdkWasm.d.ts +32 -0
  732. package/types/src/workbook/IWorkbook.d.ts +404 -73
  733. package/types/src/workbook/Workbook.d.ts +196 -28
  734. package/types/src/workbook/WorkbookRange.d.ts +2 -2
  735. package/types/src/workbook/WorkbookRanges.d.ts +2 -2
  736. package/types/src/workbook/_WorkbookIntents.d.ts +36 -0
  737. package/types/src/workbook/_WorkbookMessages.d.ts +5 -0
  738. package/types/src/workbookProtection/IWorkbookProtection.d.ts +7 -0
  739. package/types/src/workbookProtection/WorkbookProtection.d.ts +3 -0
  740. package/types/src/workbookView/IWorkbookView.d.ts +94 -0
  741. package/types/src/workbookView/WorkbookView.d.ts +26 -0
  742. package/browser/cjs/B7_pDFYCVzt-3hUs.cjs +0 -1
  743. package/browser/cjs/BatsV2UUraVDCRXm.cjs +0 -57
  744. package/browser/cjs/CUz53T65cRGQRgvv.cjs +0 -33
  745. package/browser/cjs/DU0kYUtdFa3jK-im.cjs +0 -1
  746. package/browser/cjs/Dv3x6zut1ZRUt3IF.cjs +0 -10
  747. package/browser/cjs/Dv4yIPLV98M5zLHa.cjs +0 -1
  748. package/browser/cjs/a0Z-SXs_N71CtqYb.cjs +0 -1
  749. package/browser/cjs/index.cjs +0 -3
  750. package/browser/esm/6JKSOvc5czaQB2Bj.mjs +0 -109
  751. package/browser/esm/BtuJ9AGzeURtAsGo.mjs +0 -51241
  752. package/browser/esm/DGU6sM25u0EWCKl1.mjs +0 -824
  753. package/node/esm/-pxdn3M3tc6PLHs7.mjs +0 -114
  754. package/node/esm/0n5bslM9jhO1JnI2.mjs +0 -843
  755. package/types/src/cellRange/_GraphNode.d.ts +0 -38
  756. package/types/src/collections/OverlappingRangeIterator.d.ts +0 -91
  757. package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +0 -12
  758. package/types/src/dataValidation/_Utils.d.ts +0 -10
  759. package/types/src/font/CanvasFontMeasurer.d.ts +0 -25
  760. package/types/src/font/FontKitFontMeasurer.d.ts +0 -11
  761. package/types/src/font/SimpleFontMeasurer.d.ts +0 -4
  762. package/types/src/lib/utils/_Utils.d.ts +0 -27
  763. package/types/src/lib/utils/utils.browser.d.ts +0 -33
  764. package/types/src/movable/IGroup.d.ts +0 -30
  765. package/types/src/movable/IMovableSelection.d.ts +0 -49
  766. package/types/src/print/IPrint.d.ts +0 -234
  767. package/types/src/sheet/Sheet.d.ts +0 -1107
  768. package/types/src/sheet/SheetCollection.d.ts +0 -18
  769. package/types/src/sheet/listener/RangesListener.d.ts +0 -32
  770. package/types/src/sheet/listener/RangesListenerEntry.d.ts +0 -19
  771. package/types/src/sheet/listener/index.d.ts +0 -3
  772. package/types/src/sheetProtection/SheetProtection.d.ts +0 -39
  773. package/types/src/sheetView/SheetView.d.ts +0 -113
  774. package/types/src/text/richtext/IStyledFont.d.ts +0 -330
  775. /package/types/src/{lib/utils → license}/banner.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import { FormulaError, IFunction, IRuntime } from '@sheetxl/primitives';
2
2
  import { ICalculation } from '../ICalculation';
3
- import { ISymbolRegistry } from '../symbol';
3
+ import { ISymbolRegistry, SheetCtx } from '../symbol';
4
4
  import { TokenType } from '../TokenType';
5
5
  import { CompiledFormula, ParseError } from './Types';
6
6
  import { ASTNode } from './ASTTypes';
@@ -62,6 +62,30 @@ export declare function normalizeStructuredRefs(ast: ASTNode): ASTNode;
62
62
  * @returns A new AST (structurally shared where unchanged).
63
63
  */
64
64
  export declare function rewriteThisRowToAt(ast: ASTNode): ASTNode;
65
+ /**
66
+ * Collapses a table reference with EMPTY brackets to the bare table name: `Table1[]` → `Table1`.
67
+ *
68
+ * @remarks
69
+ * Both are the data body. Excel accepts either on entry and shows the bare name; on disk it writes
70
+ * `Table1[]`, which is io-xlsx's spelling. Commit-path only, the boundary {@link rewriteThisRowToAt}
71
+ * observes. A reference with no table name (`[]`) and an unterminated one are left alone.
72
+ *
73
+ * @returns A new AST (structurally shared where unchanged).
74
+ */
75
+ export declare function collapseEmptyStructuredRefs(ast: ASTNode): ASTNode;
76
+ /**
77
+ * Gives an unqualified structured reference (`[@Qty]`, `[#All]`) its table name: `Table1[@Qty]`.
78
+ *
79
+ * @remarks
80
+ * Linking already bound it to the table at the formula's cell; this drops the typed image that kept
81
+ * the name out of the text. Every reference is stored qualified, as Excel writes it. Which ones show
82
+ * without the name is decided at display time, from where the formula sits.
83
+ *
84
+ * Commit-path only, the boundary {@link rewriteThisRowToAt} observes: an editor keeps what was typed.
85
+ *
86
+ * @returns A new AST (structurally shared where unchanged).
87
+ */
88
+ export declare function qualifyStructuredRefs(ast: ASTNode): ASTNode;
65
89
  /**
66
90
  * Sorts the items inside every `TableReference` into Excel's canonical order — section specifiers
67
91
  * in band order (`#All` | `#Headers`, `#Data`, `#Totals`), then the column selector.
@@ -81,6 +105,72 @@ export declare function rewriteThisRowToAt(ast: ASTNode): ASTNode;
81
105
  * @returns A new AST (structurally shared where unchanged).
82
106
  */
83
107
  export declare function reorderStructuredRefItems(ast: ASTNode): ASTNode;
108
+ /**
109
+ * Annotates every call node with its implicit-intersection MODE (DESIGN-IMPLICIT-INTERSECTION §2,
110
+ * measured on Excel 16.0 by `probe-ii-propagation{,2,3}.ps1`): `true` is VALUE mode, where a
111
+ * multi-cell reference at a single-value slot intersects with the formula cell; `false` is ARRAY
112
+ * mode, where it reads its first cell. The mode is INHERITED — a call evaluates its arguments in
113
+ * the mode it was given — and set at four places only:
114
+ *
115
+ * - the root: array mode when the root expression is statically array-valued (`=LINEST(..)`,
116
+ * `=TRANSPOSE(..)`, `=A1:A3+0`), value mode when it is scalar (`=SUM(..)`, `=INDEX(..,1,1)`);
117
+ * - an operand of an operator, or the argument at a lifting scalar slot, when that operand is
118
+ * array-valued (the lift needs the whole array);
119
+ * - a `LAMBDA` body, always;
120
+ * - an array-entered block, at evaluation (`CalculationContext.isImplicitIntersect`).
121
+ *
122
+ * A LEGACY (pre-dynamic-array) formula skips all four: its WHOLE tree is value mode, which is the
123
+ * era's own regime (DESIGN-IMPLICIT-INTERSECTION §2, `probe-ii-propagation3.ps1` §I —
124
+ * `=SUM(LINEST(y,x,ref)+0)` intersects in a legacy cell where the operator would otherwise give
125
+ * the call array mode). It changes the answer for the LINEST family's logical slots ALONE: every
126
+ * other legacy site Excel spells with an `@`, which the reader's transform has already inserted,
127
+ * and the two slots that take no `@` either read their first cell in both eras (`N`, `T`) or
128
+ * intersect in both (`AGGREGATE`'s `k`).
129
+ *
130
+ * "Array-valued" is static: a range or array literal, a call whose declared return is an array or
131
+ * a reference, an operator over one, a pass-through (`IF`, `IFERROR`, …) over one, `INDEX` with a
132
+ * zero, empty or array index, a name or a lambda application (unknown, so array — what Excel does
133
+ * at the root). The two runtime refinements Excel makes (`INDEX` on a CELL holding 0, and a
134
+ * defined name taking the mode of its reference site) are not modelled here.
135
+ */
136
+ export declare function annotateImplicitIntersect(root: ASTNode, getFunction: ((name: string) => IFunction | null) | null | undefined, legacy?: boolean): void;
137
+ /**
138
+ * Annotates the nodes whose result is read only at element `[0,0]` when the formula is evaluated
139
+ * under a first-cell demand (DESIGN-LIFT-AND-DEMAND §2, PLAN-CF-BODY-DEMAND step 3): the body of a
140
+ * block whose every cell is its own 1x1 array-entered extent, which is how Excel evaluates a
141
+ * conditional-format formula.
142
+ *
143
+ * @remarks
144
+ * The demand starts at the root and is INHERITED through elementwise positions only — an operator
145
+ * that is not a reference operator, a one-element paren, a lifting scalar slot, an `any` slot
146
+ * (`IF`/`IFS`/`SWITCH`/`CHOOSE` arms, which size and sample in the lift), a `LET` body. At each of
147
+ * those `[0,0]` of the output depends only on `[0,0]` of each operand, and `(0,0)` is never a pad,
148
+ * so computing one element is computing `[0,0]`. It stops (`false`) at every other position: a
149
+ * range, array, reference-only, lambda or flattened slot takes its argument whole (`SUM` still sees
150
+ * the array), and so do a reference operator, `@`, a name, a lambda body and a `LET` binding (a
151
+ * binding may be read under an aggregate).
152
+ *
153
+ * Idempotent and a property of the tree alone, so a compiled formula shared by several blocks
154
+ * carries it harmlessly: nothing reads it unless the block evaluating the formula demands it.
155
+ */
156
+ export declare function annotateFirstCell(root: ASTNode, getFunction: ((name: string) => IFunction | null) | null | undefined): void;
157
+ /**
158
+ * The formula with every POSITION TEST replaced by `TRUE` and by `FALSE`, in every combination:
159
+ * what a block's blank-region representative is re-evaluated as to show its answer does not
160
+ * depend on which cell is asking (`IFormulaBlock.getPositionVariants`).
161
+ *
162
+ * @remarks
163
+ * A position test is a maximal subtree that reads the position (`ROW()`, `COLUMN()`) and is
164
+ * BOOLEAN at every cell, never an error: a comparison of position arithmetic with a literal
165
+ * (`ROW()>1`, `MOD(ROW(),2)=0`), `ISODD`/`ISEVEN` of it, and `NOT`/`AND`/`OR`/`XOR` of tests. Its
166
+ * value at any cell is `TRUE` or `FALSE`, so when the formula answers alike for every combination,
167
+ * the position cannot change the answer.
168
+ *
169
+ * `null` — nothing to vary — when the formula has no position test, more than
170
+ * {@link MAX_POSITION_TESTS}, a lazy argument (an `IF` arm a variant takes could read what the
171
+ * formula itself never did), or a `LET`/`LAMBDA` binding.
172
+ */
173
+ export declare function positionVariants(root: ASTNode, getFunction: ((name: string) => IFunction | null) | null | undefined): ASTNode[] | null;
84
174
  export declare function compileAST(runtime: IRuntime, symbols: ISymbolRegistry | undefined, original: ASTNode, preserveExpression?: boolean, error?: ParseError | null, getFunction?: ((name: string) => IFunction | null) | null): CompiledFormula;
85
175
  /**
86
176
  * Convert a chevrotain error into a {@link FormulaError.Parse}.
@@ -279,35 +369,52 @@ export declare const findInvalidCallee: (root: ASTNode, getFunction: ((name: str
279
369
  */
280
370
  export declare function rewriteUnknownFunctionCalls(root: ASTNode, getFunction: ((name: string) => IFunction | null) | null): ASTNode;
281
371
  /**
282
- * Annotates the `LET`/`LAMBDA` scopes in a parsed AST: each declaration position is marked a
283
- * BINDER and every use its scope covers is bound to that binder's slot.
372
+ * `bound` with `name` added last — an inner declaration replaces an outer one spelled the same
373
+ * (case-insensitively). Builds {@link ICalculation.FormulaTokenContext.bound}.
374
+ */
375
+ export declare function appendBound(bound: readonly ICalculation.BoundName[] | undefined, entry: ICalculation.BoundName): readonly ICalculation.BoundName[];
376
+ /**
377
+ * The declarations of a literal `LAMBDA(…)` node, as {@link ICalculation.BoundName.params}, or
378
+ * `undefined` for any other node.
379
+ */
380
+ export declare function lambdaParamsOf(node: ASTNode | undefined): ICalculation.BoundName['params'];
381
+ export declare function bindScopes(root: ASTNode, getFunction?: ((name: string) => IFunction | null) | null): ASTNode;
382
+ /**
383
+ * Re-reads every REFERENCE token in the formula as a NAME, when any `LET`/`LAMBDA` declaration
384
+ * position is a cell reference.
284
385
  *
285
- * @param root The parsed AST (post read-transform, pre {@link linkSymbols}).
386
+ * @param root The parsed AST.
286
387
  * @param getFunction Resolves a function name to its declaration; see {@link _binderKind}.
287
- * @returns A new root, or the SAME root when nothing is bound (copy-on-write).
388
+ * @returns A new root, the SAME root when no declaration is reference-shaped, or a MESSAGE when
389
+ * the formula has to be refused at entry.
288
390
  *
289
391
  * @remarks
290
- * **Runs before {@link linkSymbols}, and that is the point.** A bound node is claimed here, so no
291
- * `NamedFormula` symbol is minted for it, no dependency edge is drawn, and no dead id is left
292
- * behind: a parameter is not a name. The node stays a `named` node — the public lite view (and so
293
- * io-xlsx's `_xlpm.` spelling) is unchanged — but it stops being a REFERENCE and reads its value
294
- * from its binding rather than from the resolver.
295
- *
296
- * Declaration positions are purely syntactic, the same rule io-xlsx's `_prefixScopeParameters`
297
- * proved on the lite tree:
298
- * - `LAMBDA` — every argument except the last declares; the last is the body.
299
- * - `LET` — the even-indexed arguments except the last declare, the odd ones are their values, and
300
- * the last is the body.
301
- *
302
- * Binding ORDER is the one rule the shape does not give away, and it is measured: a `LET` name is
303
- * in scope only from the argument AFTER its own value, so the same spelling in an earlier one is
304
- * the outer / defined name — `LET(zz,zz,zz)` binds only the third `zz`.
305
- *
306
- * Shadowing needs no special case: the environment is a stack and a use takes the INNERMOST
307
- * binding, so an inner scope's name wins over an outer one's, and a parameter wins over a defined
308
- * name (it never reaches the resolver at all).
392
+ * `LET(A1,7,A1)` is 7 in Excel, and the consequence is far wider than the name that caused it:
393
+ * ONE reference-shaped declaration anywhere in a formula stops EVERY A1-style token in that
394
+ * formula from reading as a cell. It is not a scope rule and not a shadow — the switch covers the
395
+ * whole formula text, measured in every direction (probe-let-ref-names.ps1):
396
+ *
397
+ * | formula | Excel |
398
+ * | --- | --- |
399
+ * | `LET(BA1,7,BA1)` | 7 — the declaration resolves |
400
+ * | `LET(BA1,7,BA2)` | `#NAME?` — a token bound nowhere no longer names a cell |
401
+ * | `LET(BA1,BA2,BA1)` | `#NAME?` — the declaration's OWN value expression is included |
402
+ * | `BA2+LET(BA1,7,BA1)` | `#NAME?` — so is text BEFORE the `LET`, outside it |
403
+ * | `LET(BA1,7,BA1)+LET(q,1,q+BA2)` | `#NAME?` — and an unrelated SIBLING scope |
404
+ * | `LET(BA1,7,BA2,9,BA1+BA2)` | 16 — two declarations, both resolving |
405
+ * | `LET(BA1,7,BA2,9,SUM(BA1:BA2))` | `#VALUE!` — `7:9`, the range OPERATOR over two values |
406
+ *
407
+ * Excel refuses to create a defined name that looks like a cell reference, so a re-read token can
408
+ * only resolve to a `LET`/`LAMBDA` declaration; everything else is `#NAME?`, which is what the
409
+ * ordinary resolver answers once the node is a name. That is why this pass has no resolution of
410
+ * its own — it changes what the tokens ARE and lets `bindScopes` and the resolver do the rest.
411
+ *
412
+ * The one entry refusal is `$`: a name cannot contain one, so under the switch any `$` in an
413
+ * A1-style token makes the formula untypeable — in a declaration or in a use, on one axis or both
414
+ * (`LET(BA1,7,BA1+$BA$2)`, `LET(BA1,7,BA1+BA$2)`, `LET($BA$1,7,$BA$1)`;
415
+ * probe-let-ref-names2.ps1 §B).
309
416
  */
310
- export declare function bindScopes(root: ASTNode, getFunction?: ((name: string) => IFunction | null) | null): ASTNode;
417
+ export declare const retypeReferenceBinders: (root: ASTNode, getFunction?: ((name: string) => IFunction | null) | null) => ASTNode | string;
311
418
  /**
312
419
  * Finds a malformed `LET`/`LAMBDA` scope — a shape Excel refuses at ENTRY.
313
420
  *
@@ -318,29 +425,30 @@ export declare function bindScopes(root: ASTNode, getFunction?: ((name: string)
318
425
  * @remarks
319
426
  * Same channel and same reason as {@link findArityViolation}: Excel decides these before the
320
427
  * formula can exist, so we do too — a refused shape is a parse error, not a cell that evaluates to
321
- * something. Read from the shipping Excel Online analyzer
322
- * (`d:/dev/excel-calc-ref/excelOnlineCalc.min.js`, `applySpecificWorksheetFunctionChecks`), which
323
- * reports `Duplicate_binder` / `Invalid_binder` / `Missing_binder` per declaration and
324
- * `Insufficient_function_arguments` with `numArgsExpected: max(3, n + 1 + n % 2)` for `LET` — the
325
- * `n % 2` term being exactly the even-argument-count refusal.
326
- *
327
- * Duplicates compare case-INSENSITIVELY (Excel keys them in a `stringCompareCI` map), the same
328
- * normalization a name comparison gets everywhere else.
428
+ * something. Excel refuses a duplicate, invalid or missing binder per declaration, and a `LET`
429
+ * with too few arguments — at least `max(3, n + 1 + n % 2)` for `n` arguments, the `n % 2` term
430
+ * being exactly the even-argument-count refusal.
431
+ *
432
+ * Duplicates compare case-INSENSITIVELY, the same normalization a name comparison gets everywhere
433
+ * else.
329
434
  */
330
435
  export declare const findBinderViolation: (root: ASTNode, getFunction: ((name: string) => IFunction | null) | null) => string | null;
436
+ export declare function linkSymbols(ast: ASTNode, symbols: ISymbolRegistry, scope?: string | null, sheetCtx?: SheetCtx, home?: {
437
+ rowIndex: number;
438
+ colIndex: number;
439
+ } | null): ASTNode;
331
440
  /**
332
- * Visits the AST and links display names to stable IDs using the symbol registry.
333
- *
334
- * @param ast The root AST node to start the traversal.
335
- * @param symbols The symbol registry used to resolve display names to stable IDs.
336
- * @param scope The sheet this formula is written on, or `null`/omitted when there is none.
337
- * Only defined names need it, and only because they can be sheet-scoped: `MonthName` on January
338
- * and the same text on February are two different names when each sheet defines its own, so the
339
- * vantage is part of the question. Without it every reference binds to whichever definition
340
- * happened to win globally.
341
- * @returns The updated AST with linked symbols.
441
+ * The first structured reference Excel refuses at entry, after {@link linkSymbols}: an unqualified one
442
+ * (`[@Qty]`) whose formula is not in a table or whose table has no such column, and a qualified one
443
+ * naming a table that does not exist (`Nope[Qty]`) or a column its table does not have
444
+ * (`Table1[Nope]`).
445
+ *
446
+ * @remarks
447
+ * A bare name (`=Nope`) is not a structured reference and is not refused: it is `#NAME?`.
448
+ *
449
+ * @returns A message, or `null` when every structured reference names its table's columns.
342
450
  */
343
- export declare function linkSymbols(ast: ASTNode, symbols: ISymbolRegistry, scope?: string | null): ASTNode;
451
+ export declare function findUnboundTableReference(ast: ASTNode, symbols?: ISymbolRegistry): string | null;
344
452
  /**
345
453
  * Returns a new AST with every relative Cell node's coordinates shifted by (rowDelta, colDelta),
346
454
  * wrapping out-of-bounds results within [0, max) (Excel behavioral).
@@ -1,5 +1,5 @@
1
1
  import { IFunction, IRuntime } from '@sheetxl/primitives';
2
- import { ISymbolRegistry } from '../symbol';
2
+ import { ISymbolRegistry, SheetCtx } from '../symbol';
3
3
  import { ICalculation } from '../ICalculation';
4
4
  import { IFormulaCompiler, CompiledFormula } from './Types';
5
5
  import { FormulaParseOptions } from './FormulaParser';
@@ -37,13 +37,16 @@ export declare class FormulaCompiler implements IFormulaCompiler {
37
37
  private readonly _editing;
38
38
  constructor(options?: FormulaCompilerOptions);
39
39
  /** @inheritdoc IFormulaCompiler.compile */
40
- compile(runtime: IRuntime, rowIndex: number, colIndex: number, expression: string, symbols?: ISymbolRegistry, getFunction?: ((name: string) => IFunction | null) | null, scope?: string | null, formulaTransform?: ICalculation.FormulaTransform): CompiledFormula;
40
+ compile(runtime: IRuntime, rowIndex: number, colIndex: number, expression: string, symbols?: ISymbolRegistry, getFunction?: ((name: string) => IFunction | null) | null, scope?: string | null, legacyIntersect?: boolean, sheetCtx?: SheetCtx): CompiledFormula;
41
41
  /** @inheritdoc IFormulaCompiler.autoCorrect */
42
42
  autoCorrect(expression: string): string | null;
43
43
  /**
44
44
  * The zero-recovery parse-failure result: a compiled formula whose only token is the raw expression
45
45
  * as `unparsed`, evaluating to the parse error. Nothing is lost (the text round-trips), nothing is
46
46
  * spent — this is the calc profile's entire failure path, and editing's last resort.
47
+ *
48
+ * `partialTable` (editing only): an expression that is nothing but a structured reference being
49
+ * typed (`[@Co`) still gets its table tokens — no prefix parses, so recovery never reaches it.
47
50
  */
48
51
  private _compileUnparsed;
49
52
  /**
@@ -61,9 +64,31 @@ export declare class FormulaCompiler implements IFormulaCompiler {
61
64
  * Append the un-parseable `tail` to `tokens` as `unparsed` token(s): stamp the enclosing function
62
65
  * context (from the last token that has one) so a caret in the tail still resolves to the right
63
66
  * function + argument, and split off a trailing identifier run (`[A-Za-z_][A-Za-z0-9_]*` at a token
64
- * boundary, not glued to a preceding digit like `12abc`) as its own `isLookup` token, so a partial
65
- * name being typed can still drive autocomplete.
67
+ * boundary, not glued to a preceding digit like `12abc`) as its own `named` token — what it would
68
+ * parse as once the rest of the formula does — so a partial name being typed can still drive
69
+ * autocomplete.
70
+ *
71
+ * A tail ending inside a structured reference's brackets (`Sales[Co`) becomes that reference's
72
+ * tokens instead — see {@link appendPartialStructuredReference}.
66
73
  */
67
74
  private _appendUnparsedTail;
68
75
  }
76
+ /**
77
+ * Append a structured reference still being typed at the end of `tail` — `Sales[`, `Sales[Co`,
78
+ * `Sales[#Da`, `Sales[[#This Row],[Co`, `[@Co` — as the tokens it will be once it closes, in the shape
79
+ * `generateFormulaTokens` gives a complete one: a `tableReference` for the name, `paren` tokens for every
80
+ * bracket, and a `tableColumn` / `tableSpecifier` per part whose value is an
81
+ * {@link ICalculation.TablePartRef} naming the table (`''` when unqualified).
82
+ *
83
+ * The unfinished part is marked `partial` with what may finish it, and a part not yet started — right
84
+ * after the `[` or `@` that opened it — is an empty token, so an editor completes from the tokens alone.
85
+ *
86
+ * The name may already sit in `tokens` as the `named` token the parsed prefix ended with; it is
87
+ * re-typed in place. Anything in `tail` before the reference is one `unparsed` token.
88
+ *
89
+ * @returns `false`, with `tokens` untouched, when the tail does not end inside a structured reference.
90
+ */
91
+ export declare function appendPartialStructuredReference(tokens: ICalculation.FormulaToken[], tail: string, context: ICalculation.FormulaTokenContext | undefined,
92
+ /** The display name of the table at the formula's cell, which an unqualified reference names. */
93
+ homeTable?: () => string | undefined): boolean;
69
94
  //# sourceMappingURL=FormulaCompiler.d.ts.map
@@ -4,7 +4,6 @@ import { ASTNode, ParseResult } from './ASTTypes';
4
4
  import { FormulaLexer, FormulaLexerOptions } from './FormulaLexer';
5
5
  import { CompilerLocale } from './CompilerLocale';
6
6
  import { SRParser } from './SRParser';
7
- import { ICalculation } from '../ICalculation';
8
7
  declare module 'chevrotain' {
9
8
  interface EmbeddedActionsParser {
10
9
  getLexerPosition(): number;
@@ -80,7 +79,7 @@ export declare class FormulaParser extends EmbeddedActionsParser {
80
79
  * none, so `=_xlfn.SUM(A1)` typed is an unknown name, as in Excel. Runs where the hardcoded
81
80
  * legacy visit used to run — no extra parse.
82
81
  */
83
- parse(rowIndex: number, colIndex: number, expression: string, formulaTransform?: ICalculation.FormulaTransform): ParseResult;
82
+ parse(rowIndex: number, colIndex: number, expression: string): ParseResult;
84
83
  /**
85
84
  * Parses a flat sequence of infix-operator / operand pairs, then folds them into a
86
85
  * left-associative AST using the precedence table in `ParserUtils.binaryOperatorsPrecedence`.
@@ -1,6 +1,13 @@
1
1
  import { ICalculation } from '../ICalculation';
2
2
  import { ISymbolRegistry } from '../symbol';
3
3
  import { ASTNode } from './ASTTypes';
4
+ /**
5
+ * The public node view of an internal AST — what {@link ICalculation.IFormula.getNode} answers.
6
+ *
7
+ * @param root The internal AST root.
8
+ * @param symbols The registry the AST was linked against.
9
+ */
10
+ export declare function toFormulaNode(root: ASTNode, symbols: ISymbolRegistry | null | undefined): ICalculation.FormulaNode;
4
11
  /**
5
12
  * Applies a public {@link ICalculation.FormulaTransform} to an internal AST.
6
13
  *
@@ -12,4 +19,14 @@ import { ASTNode } from './ASTTypes';
12
19
  * that identity to skip recompilation.
13
20
  */
14
21
  export declare function applyTransformToAST(root: ASTNode, transform: ICalculation.FormulaTransform, symbols?: ISymbolRegistry | null): ASTNode;
22
+ /**
23
+ * Walks a lite tree with a transform, post-order, and returns the transformed root: the SAME
24
+ * object when nothing changed.
25
+ */
26
+ export declare function transformFormulaNode(root: ICalculation.FormulaNode, transform: ICalculation.FormulaTransform): ICalculation.FormulaNode;
27
+ /**
28
+ * Rebuilds an AST from a lite tree: nodes a transform left alone come back as the AST nodes they
29
+ * were made from, replacements are built fresh.
30
+ */
31
+ export declare function fromFormulaNode(root: ICalculation.FormulaNode): ASTNode;
15
32
  //# sourceMappingURL=LiteTransform.d.ts.map
@@ -1,4 +1,5 @@
1
1
  import { FormulaError, IRange } from '@sheetxl/primitives';
2
+ import { ICalculation } from '../ICalculation';
2
3
  import { CompilerLocale } from './CompilerLocale';
3
4
  import { ASTNode, ASTVisitor, CellNode, FunctionNode } from './ASTTypes';
4
5
  /**
@@ -49,6 +50,37 @@ export declare function createTableReference(value: string, inputs: any[]): ASTN
49
50
  * word → canonical. Display re-imaging (`tokensToString`) re-localizes for a localized target.
50
51
  */
51
52
  export declare function createTableSpecifier(image: string, locale?: CompilerLocale): ASTNode;
53
+ /** The canonical specifier words a structured reference accepts — the text inside `[#…]`, minus the `#`. */
54
+ export declare const CANONICAL_SPECIFIER_WORDS: readonly string[];
55
+ /**
56
+ * The section (`StructuredReference.spec`) a structured reference's specifiers designate.
57
+ */
58
+ export declare function structuredReferenceSpec(all: boolean, headers: boolean, data: boolean, totals: boolean): number;
59
+ /**
60
+ * A column name as a structured reference spells it: a `'` before each `[`, `]`, `#` and `'`,
61
+ * which is Excel's escape inside a column specifier. Without it a name holding a bracket cannot be
62
+ * referenced at all — the bracket would close the reference.
63
+ */
64
+ export declare function escapeColumnName(name: string): string;
65
+ /**
66
+ * The column name a specifier spells — the inverse of {@link escapeColumnName}.
67
+ *
68
+ * @remarks
69
+ * A `'` before anything else is a literal `'`, not a dangling escape: `#` and `'` were referenced
70
+ * unescaped long before the escape was read, and text written then still has to name the same
71
+ * column (`[Q#1]` and `[Q'#1]` are both `Q#1`).
72
+ */
73
+ export declare function unescapeColumnName(image: string): string;
74
+ /**
75
+ * The table reference starting at `startOffset` — `Table1[Col]`, `[1]!Table1[Col]` — as a one-element
76
+ * match, or `null`. The formula lexer's matcher for the token, and the address parser's.
77
+ */
78
+ export declare function matchTableReference(text: string, startOffset: number): [string] | null;
79
+ /**
80
+ * The outermost bracketed string starting at `startOffset` — `[Workbook]`, an unqualified `[Col]` —
81
+ * as a one-element match, or `null`.
82
+ */
83
+ export declare function matchBracketedString(text: string, startOffset: number): [string] | null;
52
84
  export declare function createTableColumn(image: string): ASTNode;
53
85
  export declare function createInfix(operator: string, left: ASTNode, right: ASTNode, isReference?: boolean): ASTNode;
54
86
  export declare function createPostfix(operator: string, input: ASTNode | null | undefined, isReference?: boolean): ASTNode;
@@ -108,11 +140,20 @@ export declare function createRefError(image?: string, locale?: CompilerLocale,
108
140
  export declare function createNameError(): ASTNode;
109
141
  /**
110
142
  * The plain error behind an `error` node/token value, whichever shape it is: an error REFERENCE
111
- * carries an {@link ICalculation.ErrorRef} (qualifier and all), an error LITERAL the bare
143
+ * carries an {@link ErrorReference} (qualifier and all), an error LITERAL the bare
112
144
  * {@link FormulaError}. Evaluation and precedent resolution want the error itself either way — an
113
145
  * `ErrorRef` never escapes the reference layer into a cell value.
114
146
  */
115
147
  export declare function errorOfValue(value: unknown): FormulaError.Known;
148
+ /**
149
+ * An `error` node's value as its TOKEN carries it: the error's canonical label for a literal, an
150
+ * {@link ICalculation.ErrorRef} for a reference. Plain data either way.
151
+ */
152
+ export declare function errorTokenValue(value: unknown): string | ICalculation.ErrorRef | undefined;
153
+ /**
154
+ * The error an `error` TOKEN names, from the label it carries ({@link errorTokenValue}).
155
+ */
156
+ export declare function errorOfTokenValue(value: unknown): FormulaError.Known | undefined;
116
157
  /**
117
158
  * Does an error token's `text` already carry its sheet qualifier (`Data!#REF!`)?
118
159
  *
@@ -29,9 +29,10 @@ export declare class SRParser extends EmbeddedActionsParser {
29
29
  /**
30
30
  * Parses a complete structured reference and returns a ParseResult.
31
31
  *
32
- * Accepts the full token image in either form:
32
+ * Accepts the full token image in any of three forms:
33
33
  * '[Column1]' — no table name (BracketedString token)
34
34
  * 'Table1[#Headers,[Col1]]' — with table name (TableReference token)
35
+ * '[1]!Table1[Col1]' — with an EXTERNAL book prefix, which belongs to the table NAME
35
36
  */
36
37
  parse(rowIndex: number, colIndex: number, expression: string): ParseResult;
37
38
  }
@@ -1,5 +1,5 @@
1
1
  import { IFunction, IRange, IRuntime } from '@sheetxl/primitives';
2
- import { ISymbolRegistry } from '../symbol';
2
+ import { ISymbolRegistry, SheetCtx } from '../symbol';
3
3
  import { ICalculation } from '../ICalculation';
4
4
  import { ASTNode, ASTVisitor } from './ASTTypes';
5
5
  /**
@@ -33,14 +33,19 @@ export interface IFormulaCompiler {
33
33
  */
34
34
  scope?: string | null,
35
35
  /**
36
- * A structural transform applied to the parsed tree before compilation (pre-link) — the READ
37
- * half of the dialect hook. A format reader (io-xlsx) supplies its legacy unwrap here; typed
38
- * text compiles without one.
36
+ * Compile in the legacy entry era: the whole tree evaluates in implicit-intersection value
37
+ * mode (`ICalculation.JSON.legacyIntersect`). A loaded block that is not an array anchor, in a
38
+ * calculation in that era; typed text compiles without it.
39
39
  */
40
- formulaTransform?: ICalculation.FormulaTransform): CompiledFormula;
40
+ legacyIntersect?: boolean,
41
+ /**
42
+ * How SHEET scopes bind — a body linked inside an external book names that book's sheets
43
+ * (`SheetCtx.book`). A committed cell formula passes nothing and may mint a link.
44
+ */
45
+ sheetCtx?: SheetCtx): CompiledFormula;
41
46
  /**
42
47
  * Excel-parity **Formula AutoCorrect** at the TEXT level: repair `expression` by appending the
43
- * trailing closers (`)` / `}`) its unmatched openers imply. Purely lexical — brackets inside
48
+ * trailing closers (`]` / `)` / `}`) its unmatched openers imply. Purely lexical — brackets inside
44
49
  * string literals / structured references never count (they lex as single tokens), and the repair
45
50
  * is NOT validated here: the caller re-compiles and accepts it only when it parses clean (see
46
51
  * `ICalculation.IFormula.autoCorrect`).
@@ -162,10 +167,24 @@ export interface CompiledFormula {
162
167
  */
163
168
  bindings: number[];
164
169
  /**
165
- * Represents all references as absolute ranges.
170
+ * Reusable scratch for resolving references to absolute ranges: ONE pre-allocated
171
+ * `IRange.Coords` per {@link referencesRelative} entry, mutated in place at each resolution.
166
172
  *
167
173
  * @remarks
168
- * A cache
174
+ * The invariant every consumer must keep: **slot `k` always means declared reference `k`**
175
+ * (`CompiledPrecedent.value` is the slot for a leaf), and a resolution overwrites EVERY field
176
+ * of the slot — bounds and `scope` (`null` when unscoped, never left over from a previous
177
+ * resolution). Both resolution passes go through `toSimpleAbsoluteRange`, so the slots carry
178
+ * NO `$` marks: nothing on the evaluation path reads them from a resolved-absolute coords,
179
+ * and `_appendRootPrecedents` requires their absence (it stamps `$` onto copies from the
180
+ * compiler's per-axis flags, and only ever sets). Indexing by anything else (an execute
181
+ * position, an eval index) makes one object stand for different references between passes,
182
+ * and any field written conditionally then leaks across them — a bare `$A4` once inherited a
183
+ * stale cross-sheet scope this way and dereferenced against the wrong grid.
184
+ *
185
+ * The objects are yielded to callers (`evaluations`, precedent lists) and are only valid
186
+ * until the block's next resolution — a consumer that retains one across evaluations (or an
187
+ * `await`) must copy it.
169
188
  */
170
189
  referencesAbsolute: IRange.Coords[];
171
190
  /**
@@ -191,6 +210,16 @@ export interface CompiledFormula {
191
210
  * Because we manage as cells but update as ranges we need to track the start and end of the references.
192
211
  */
193
212
  referenceIndices: number[];
213
+ /**
214
+ * Positions in {@link referenceIndices} (so in `getReferences()`) of the cell and range
215
+ * literals that are value operands, in text order - the cells an entered formula inherits its
216
+ * number format from. A literal at a reference-typed parameter, a name, a structured reference
217
+ * and a `#REF!` are not listed.
218
+ *
219
+ * @remarks
220
+ * A cache, computed once at compile time from {@link ast}.
221
+ */
222
+ formatReferenceIndices: number[];
194
223
  /**
195
224
  * The formula's editor tokens (syntax highlighting, function/argument hints). Computed lazily and
196
225
  * cached on first call — most compiles (grid cells) never need them. On a parse failure this returns
@@ -223,7 +252,7 @@ export interface CompiledFormula {
223
252
  * @remarks
224
253
  * A cache, computed once at compile time from {@link ast}. What `IFormulaContext.filterTotals`
225
254
  * needs to answer per CELL, and computing it here is what keeps that answer free: the alternative
226
- * is re-inspecting a neighbour's formula on every recalculation of every enclosing total.
255
+ * is re-inspecting a neighbor's formula on every recalculation of every enclosing total.
227
256
  *
228
257
  * "Anywhere in its tree", not "is the outermost call" — measured, `=SUM(SUBTOTAL(9,A1:A3))` is
229
258
  * excluded from an enclosing SUBTOTAL exactly as a bare `=SUBTOTAL(9,A1:A3)` is. Resolved through
@@ -231,6 +260,47 @@ export interface CompiledFormula {
231
260
  * `_xlfn.`-prefixed one both answer correctly.
232
261
  */
233
262
  hasTotals: boolean;
263
+ /**
264
+ * Whether the formula names a VOLATILE function anywhere in its tree — the cell recalculates on
265
+ * every pass, whether or not that call is ever reached.
266
+ *
267
+ * @remarks
268
+ * Volatility is otherwise marked at RUNTIME, by the body (`IFormulaContext.markVolatile`), which
269
+ * was equivalent while every argument was evaluated. It stopped being equivalent with lazy
270
+ * arguments: `=IF(TRUE,1,RAND())` never runs `RAND` and would silently stop recalculating.
271
+ * Excel keeps it volatile — measured 2026-09-07, `probe-lazy-args.ps1` P1: the cell costs a full
272
+ * recalculation on every idle F9, for `RAND`, `NOW` and `OFFSET` alike, in an arm no branch
273
+ * selects. So the mark is a property of the formula TEXT and is collected here.
274
+ *
275
+ * The declaration answers it (`Volatile<T>` on the return), so a UDF counts exactly as a
276
+ * built-in does and no list of names lives in the engine. `IFormulaContext.markVolatile()`
277
+ * remains on the context for a function that cannot declare — it is not how a built-in says it.
278
+ */
279
+ hasVolatile: boolean;
280
+ /**
281
+ * Whether every cell of a block running this formula whose RELATIVE inputs are all blank must
282
+ * evaluate to the same value within one pass — so the engine may evaluate one of them and share
283
+ * the answer (PLAN-WATCHES-BLANK-AWARE §4).
284
+ *
285
+ * @remarks
286
+ * A property of the formula TEXT, like {@link hasVolatile}, and `false` whenever the text shows
287
+ * the answer could depend on which cell is asking: an implicit intersection, a name, an
288
+ * expression callee, or a function the registry does not know. `TODAY()` and `NOW()` are
289
+ * accepted: volatile, but one value per pass. So are `RAND()` and every function taking a
290
+ * reference (`ROW()`, `OFFSET`, `FORMULATEXT`, the `SUMIF` family): whether the body reads a
291
+ * position (or draws) is a per-cell READ (`CalcScope.perCellRead`, `positionRead`) that the pass sees when it
292
+ * evaluates the representative, not a property of the text. The block adds its own gates (a
293
+ * precedent template, not array-entered) and the pass its run-time ones (no dynamic read, no
294
+ * per-cell read, a scalar result); this is only the half that can be known from the text.
295
+ */
296
+ isBlankCacheable: boolean;
297
+ /**
298
+ * {@link isBlankCacheable} for a block evaluated in ARRAY mode throughout — every cell its own
299
+ * 1x1 array-entered extent (a conditional-format body). The same refusals less the value-mode
300
+ * one: with nothing intersecting, a value-or-range slot over a multi-cell reference reads the
301
+ * same cells at every cell.
302
+ */
303
+ isBlankCacheableArray: boolean;
234
304
  /**
235
305
  * Indicates if the formula is reference-only (i.e. it only returns a range and does not return a scalar value).
236
306
  */