@sheetxl/sdk 0.8.0-beta.10 → 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 (480) hide show
  1. package/README.md +1 -1
  2. package/browser/esm/B7aUIvgUjncMMD_i.mjs +394 -0
  3. package/browser/esm/{Cgd5BnM3hg9RyUel.mjs → BFagR2JeWs74iAG3.mjs} +1 -1
  4. package/browser/esm/BGOFfpxr2jPIdqmV.mjs +40 -0
  5. package/browser/esm/{CdLZWVcH8cncBUPJ.mjs → BLoUBId2xZpXAK_H.mjs} +110 -261
  6. package/browser/esm/BMyDRQ716j79h_bH.mjs +86 -0
  7. package/browser/esm/{o8MFgcVXns987D6_.mjs → BVDiOXGMc5_FMGfy.mjs} +6 -6
  8. package/browser/esm/{BzLfNyc6OOShIErH.mjs → BjkCiv5Jz6WYKZeu.mjs} +2 -2
  9. package/browser/esm/{De175LygU7ot4nQm.mjs → BkBhLS0l6z8sxI6D.mjs} +2 -2
  10. package/browser/esm/{Y79I7Sm8kjaYexhf.mjs → BnG31I6Oj_HEtSPS.mjs} +1 -1
  11. package/browser/esm/BoV6zPBnfqCBCqZ7.mjs +7729 -0
  12. package/browser/esm/{CYyv6uGjo10ig5FP.mjs → BpgskG1Er_lGQ_yS.mjs} +1 -1
  13. package/browser/esm/{C9B0djuUarfNdoj0.mjs → BtvLTTfSBdAKplVG.mjs} +1 -1
  14. package/browser/esm/{zqJOaweiXE9D8RY1.mjs → C16ycKja6zG0crV_.mjs} +27687 -38788
  15. package/browser/esm/C2VbEI_XVAoseAwa.mjs +1552 -0
  16. package/browser/esm/{Btg43M1Bf-ENDreu.mjs → C4MqfLn9Dm-l3OIk.mjs} +1 -1
  17. package/browser/esm/C5E6zSGAALWf61n4.mjs +199 -0
  18. package/browser/esm/{CjsUGJEQSbGjnH6R.mjs → CHU6iu_WGlm7fLET.mjs} +1 -1
  19. package/browser/esm/{DhKkrCVASZ6Isvz6.mjs → CQYjO777cmAznUzK.mjs} +1 -1
  20. package/browser/esm/{D4uVlrG0xEFctsSM.mjs → CU3DmJ-YnVVrC1_k.mjs} +285 -67
  21. package/browser/esm/{ClB5ix51roQOpZEr.mjs → CV5EGEjG5_-CPpP0.mjs} +2877 -2067
  22. package/browser/esm/{CSx9ed1JOs7K5BXO.mjs → CaB7J-xgfKO2uAkG.mjs} +2 -2
  23. package/browser/esm/CkxWugaJFjDGZNZ-.mjs +12 -0
  24. package/browser/esm/{CZ5oa92wZEAXebgk.mjs → ClPfI4lODvCece29.mjs} +32 -22
  25. package/browser/esm/ClbvFbFzFzXLBKNN.mjs +193 -0
  26. package/browser/esm/{Cqr3knDsBvoVZ6MN.mjs → Ctjb0SsxV4K4MMqG.mjs} +2 -2
  27. package/browser/esm/{Bk7xxbdDpa7-sIwd.mjs → D5np__Jb1euAyaLw.mjs} +2 -2
  28. package/browser/esm/{Di58Ji1n--3Mgc_2.mjs → DEiPS3Dr-s4fPbVZ.mjs} +1 -1
  29. package/browser/esm/DLLE0FZNsKxbBzRn.mjs +128 -0
  30. package/browser/esm/{BqskM7wA8oPfFQue.mjs → DWNzqw7DUKwoxjri.mjs} +2 -2
  31. package/browser/esm/{BEAY9XgKNx-bakXW.mjs → Dlmig06rIo7cInRk.mjs} +1 -1
  32. package/browser/esm/DvAaxH6z_tGvrRzl.mjs +5132 -0
  33. package/browser/esm/Dyq_ivuHvlXLwPCl.mjs +12831 -0
  34. package/browser/esm/{Dtoyt8q5RyGAlxCp.mjs → PcHFjNzQsE54POri.mjs} +1 -1
  35. package/browser/esm/S2dNNx1a5ydRnARM.mjs +367 -0
  36. package/browser/esm/f1IoRb7tEb0QmCSt.mjs +110 -0
  37. package/browser/esm/gssVX_FH1XFN-twD.mjs +210 -0
  38. package/browser/esm/index.mjs +999 -850
  39. package/browser/esm/nvU0ClAbf0g94YBK.mjs +1695 -0
  40. package/browser/esm/{BcHmrKHwMMOlzc9_.mjs → zlLuW405RSguy4Kn.mjs} +34 -34
  41. package/licenses/dependencies.txt +75 -75
  42. package/node/esm/{CnSQ7MTXAUAyBOoS.mjs → 2Kihw_-5lVTEnwMa.mjs} +285 -64
  43. package/node/esm/857CIBgQgGpnqrXk.mjs +199 -0
  44. package/node/esm/B084DssTcdBheTp_.mjs +7966 -0
  45. package/node/esm/B21JjOLghRoDOrkx.mjs +134 -0
  46. package/node/esm/{CImNvdz1iP-lUlro.mjs → BIRq1kT7lLRzns9t.mjs} +181 -181
  47. package/node/esm/{CD9wbvufChVYYkrI.mjs → BIwObuhTJYf0jpUa.mjs} +2 -2
  48. package/node/esm/Bbf1Pm9Gk7YpLTvg.mjs +12 -0
  49. package/node/esm/{B6D7sSetrcOWLsKj.mjs → BqiexuA89caYnAPz.mjs} +1 -1
  50. package/node/esm/{BH1v-E4Ro3bR7Znw.mjs → BrCKGFRsX_ezFJ4B.mjs} +151 -302
  51. package/node/esm/CCN5vD410obwdz38.mjs +405 -0
  52. package/node/esm/{Bh4dv6tMjXX3X4nI.mjs → CDHdgJXH2vS71WMc.mjs} +1 -1
  53. package/node/esm/{DCplLG93GfTs1vNw.mjs → CGp6VZL-gZa9Uezx.mjs} +1 -1
  54. package/node/esm/{B9ljpEIZg6wOTzRE.mjs → CNCNJNg890KdgkWh.mjs} +1 -1
  55. package/node/esm/{Bqd62L8KFgdS0Vou.mjs → CZICGK_ss0HoGHCP.mjs} +2 -2
  56. package/node/esm/{D7MfcID2Wf6l6VpC.mjs → CZiqiay42tFTrLI4.mjs} +1 -1
  57. package/node/esm/{Bsx9uijd4X_SKV3L.mjs → CdJHUJSBRHZoryPe.mjs} +41 -41
  58. package/node/esm/Ct3h15sCus4Tgt6M.mjs +1762 -0
  59. package/node/esm/CwePQwTILHHjGDkZ.mjs +1033 -0
  60. package/node/esm/{CUUoseJmFsCf82bb.mjs → CzXT00vrQa1_gvW9.mjs} +1 -1
  61. package/node/esm/{C6ZXsNyLXI6zA63X.mjs → D1TKBVmoKGAXf37B.mjs} +9 -9
  62. package/node/esm/{BN9j8V9gCExMjVtJ.mjs → D2KBymQJd1XhpeQD.mjs} +1 -1
  63. package/node/esm/{MiU4rDOiocmJ-9Ry.mjs → D6e2z7eZpxOJXHc7.mjs} +1 -1
  64. package/node/esm/{BtuY37FumvLE7EBo.mjs → D8zEN-6ZdDqDvTxM.mjs} +156 -146
  65. package/node/esm/DNRhGK-8Tr9xcRyc.mjs +8320 -0
  66. package/node/esm/DOU54VsOjG-m-NyQ.mjs +210 -0
  67. package/node/esm/DUTskXCXref-IJnI.mjs +133 -0
  68. package/node/esm/{DMD12JUh7HJw2-jl.mjs → D_t5AUxSm7_icjzq.mjs} +1 -1
  69. package/node/esm/Db0v7zXNnyjBIjjI.mjs +372 -0
  70. package/node/esm/{CUQi5ZtMO02nhG0W.mjs → De2IONBxQhz-Qbyh.mjs} +1 -1
  71. package/node/esm/Df1bL6VFvrqIdSLB.mjs +40 -0
  72. package/node/esm/DkwIPzKc3UwdUIfM.mjs +86 -0
  73. package/node/esm/DrTZbfemSLq2mseG.mjs +111 -0
  74. package/node/esm/OVfaSb506tNSIvbv.mjs +57107 -0
  75. package/node/esm/{DefYISWfdZJFx57m.mjs → cGwrLA1RCE-WhJ7w.mjs} +1 -1
  76. package/node/esm/index.mjs +2657 -65664
  77. package/node/esm/mFiBSM7XgBHV9AY7.mjs +13010 -0
  78. package/node/esm/{DdFgXl-Ux2cMBTs_.mjs → yavzZOiZW_EjG9lE.mjs} +1 -1
  79. package/package.json +6 -7
  80. package/resources/contents.json +120 -0
  81. package/resources/fonts/arial-bold-italic.hinted.json +125 -0
  82. package/resources/fonts/arial-bold-italic.metrics.json +13 -13
  83. package/resources/fonts/arial-bold-italic.rows.json +9 -0
  84. package/resources/fonts/arial-bold.hinted.json +125 -0
  85. package/resources/fonts/arial-bold.metrics.json +12 -12
  86. package/resources/fonts/arial-bold.rows.json +9 -0
  87. package/resources/fonts/arial-italic.hinted.json +125 -0
  88. package/resources/fonts/arial-italic.metrics.json +13 -13
  89. package/resources/fonts/arial-italic.rows.json +9 -0
  90. package/resources/fonts/arial-regular.hinted.json +125 -0
  91. package/resources/fonts/arial-regular.metrics.json +12 -12
  92. package/resources/fonts/arial-regular.rows.json +9 -0
  93. package/resources/fonts/calibri-bold-italic.hinted.json +122 -0
  94. package/resources/fonts/calibri-bold-italic.metrics.json +2 -2
  95. package/resources/fonts/calibri-bold-italic.rows.json +9 -0
  96. package/resources/fonts/calibri-bold.hinted.json +122 -0
  97. package/resources/fonts/calibri-bold.metrics.json +1 -1
  98. package/resources/fonts/calibri-bold.rows.json +9 -0
  99. package/resources/fonts/calibri-italic.hinted.json +121 -0
  100. package/resources/fonts/calibri-italic.metrics.json +2 -2
  101. package/resources/fonts/calibri-italic.rows.json +9 -0
  102. package/resources/fonts/calibri-regular.hinted.json +121 -0
  103. package/resources/fonts/calibri-regular.metrics.json +1 -1
  104. package/resources/fonts/calibri-regular.rows.json +9 -0
  105. package/resources/fonts/cambria-bold-italic.hinted.json +105 -0
  106. package/resources/fonts/cambria-bold-italic.metrics.json +26 -26
  107. package/resources/fonts/cambria-bold-italic.rows.json +9 -0
  108. package/resources/fonts/cambria-bold.hinted.json +108 -0
  109. package/resources/fonts/cambria-bold.metrics.json +19 -19
  110. package/resources/fonts/cambria-bold.rows.json +9 -0
  111. package/resources/fonts/cambria-italic.hinted.json +102 -0
  112. package/resources/fonts/cambria-italic.metrics.json +23 -23
  113. package/resources/fonts/cambria-italic.rows.json +9 -0
  114. package/resources/fonts/cambria-regular.hinted.json +110 -0
  115. package/resources/fonts/cambria-regular.metrics.json +18 -18
  116. package/resources/fonts/cambria-regular.rows.json +9 -0
  117. package/resources/fonts/contents.json +280 -0
  118. package/resources/fonts/courier-new-bold-italic.hinted.json +11 -0
  119. package/resources/fonts/courier-new-bold-italic.metrics.json +12 -12
  120. package/resources/fonts/courier-new-bold-italic.rows.json +9 -0
  121. package/resources/fonts/courier-new-bold.hinted.json +11 -0
  122. package/resources/fonts/courier-new-bold.metrics.json +12 -12
  123. package/resources/fonts/courier-new-bold.rows.json +9 -0
  124. package/resources/fonts/courier-new-italic.hinted.json +11 -0
  125. package/resources/fonts/courier-new-italic.metrics.json +12 -12
  126. package/resources/fonts/courier-new-italic.rows.json +9 -0
  127. package/resources/fonts/courier-new-regular.hinted.json +11 -0
  128. package/resources/fonts/courier-new-regular.metrics.json +12 -12
  129. package/resources/fonts/courier-new-regular.rows.json +9 -0
  130. package/resources/fonts/times-new-roman-bold-italic.hinted.json +125 -0
  131. package/resources/fonts/times-new-roman-bold-italic.metrics.json +15 -15
  132. package/resources/fonts/times-new-roman-bold-italic.rows.json +9 -0
  133. package/resources/fonts/times-new-roman-bold.hinted.json +125 -0
  134. package/resources/fonts/times-new-roman-bold.metrics.json +12 -12
  135. package/resources/fonts/times-new-roman-bold.rows.json +9 -0
  136. package/resources/fonts/times-new-roman-italic.hinted.json +125 -0
  137. package/resources/fonts/times-new-roman-italic.metrics.json +16 -16
  138. package/resources/fonts/times-new-roman-italic.rows.json +9 -0
  139. package/resources/fonts/times-new-roman-regular.hinted.json +125 -0
  140. package/resources/fonts/times-new-roman-regular.metrics.json +16 -16
  141. package/resources/fonts/times-new-roman-regular.rows.json +9 -0
  142. package/resources/locales/de/model.msg.json +87 -9
  143. package/resources/locales/en/model.msg.json +88 -10
  144. package/types/scripting-api.json +10636 -8021
  145. package/types/scripting-enums.json +181 -43
  146. package/types/scripting.d.ts +15886 -8459
  147. package/types/src/.generated/wasm/fonts.d.ts +161 -0
  148. package/types/src/.generated/wasm/fonts_bg.inline.d.ts +3 -0
  149. package/types/src/.generated/wasm/sdk.d.ts +122 -0
  150. package/types/src/.generated/wasm/sdk_bg.inline.d.ts +3 -0
  151. package/types/src/address/AddressUtils.d.ts +10 -1
  152. package/types/src/address/_StructuredAddress.d.ts +58 -0
  153. package/types/src/border/IBorders.d.ts +16 -0
  154. package/types/src/calculation/Calculation.d.ts +93 -363
  155. package/types/src/calculation/FormulaLiterals.d.ts +2 -1
  156. package/types/src/calculation/FormulaText.d.ts +18 -2
  157. package/types/src/calculation/ICalculation.d.ts +37 -9
  158. package/types/src/calculation/INamedFormulasCollection.d.ts +4 -0
  159. package/types/src/calculation/NamedFormulaCollection.d.ts +190 -15
  160. package/types/src/calculation/_FormulaToolkit.d.ts +9 -0
  161. package/types/src/calculation/_TableExtent.d.ts +60 -0
  162. package/types/src/calculation/compiler/CompilerUtils.d.ts +17 -0
  163. package/types/src/calculation/compiler/ParserUtils.d.ts +16 -0
  164. package/types/src/calculation/compiler/Types.d.ts +1 -1
  165. package/types/src/calculation/engine/CalcBackend.d.ts +855 -0
  166. package/types/src/calculation/engine/index.d.ts +10 -0
  167. package/types/src/calculation/executor/CalcExecutor.d.ts +21 -2
  168. package/types/src/calculation/executor/CalcExecutorUtils.d.ts +6 -0
  169. package/types/src/calculation/formula/Formula.d.ts +9 -0
  170. package/types/src/calculation/formula/FormulaBlock.d.ts +6 -0
  171. package/types/src/calculation/formula/IFormulaBlock.d.ts +16 -0
  172. package/types/src/calculation/formula/LambdaValue.d.ts +5 -3
  173. package/types/src/calculation/functions/FunctionDeclarations.d.ts +5 -1
  174. package/types/src/calculation/functions/expandDeclaration.d.ts +15 -0
  175. package/types/src/calculation/functions/initializeFunctions.d.ts +0 -12
  176. package/types/src/calculation/grid/CalcGrid.d.ts +40 -4
  177. package/types/src/calculation/grid/CalcGridBackend.d.ts +30 -0
  178. package/types/src/calculation/grid/CalcGridProxy.d.ts +2 -0
  179. package/types/src/calculation/grid/CalcGridUtils.d.ts +8 -1
  180. package/types/src/calculation/grid/FormulaHost.d.ts +51 -6
  181. package/types/src/calculation/grid/ICalcGrid.d.ts +35 -6
  182. package/types/src/calculation/grid/_CalcRequest.d.ts +11 -1
  183. package/types/src/calculation/grid/_CellValueRun.d.ts +21 -0
  184. package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +27 -2
  185. package/types/src/calculation/state/CalcScope.d.ts +15 -6
  186. package/types/src/calculation/state/CalcState.d.ts +10 -0
  187. package/types/src/calculation/state/CalculationContext.d.ts +2 -2
  188. package/types/src/calculation/state/IContextContainer.d.ts +12 -0
  189. package/types/src/calculation/toolkit/FormulaLiteralReader.d.ts +4 -0
  190. package/types/src/calculation/toolkit/FormulaTextParser.d.ts +10 -0
  191. package/types/src/calculation/toolkit/FunctionDeclarationTable.d.ts +4 -0
  192. package/types/src/calculation/toolkit/index.d.ts +12 -0
  193. package/types/src/cell/ICell.d.ts +256 -7
  194. package/types/src/cell/ICellHeader.d.ts +7 -6
  195. package/types/src/cell/ICellProtection.d.ts +1 -1
  196. package/types/src/cellRange/ICellHeaderRange.d.ts +6 -9
  197. package/types/src/cellRange/ICellHeaderRanges.d.ts +5 -0
  198. package/types/src/cellRange/ICellRange.d.ts +322 -55
  199. package/types/src/cellRange/ICellRanges.d.ts +8 -3
  200. package/types/src/chart/Chart.d.ts +217 -15
  201. package/types/src/chart/ChartCollection.d.ts +7 -2
  202. package/types/src/chart/IChart.d.ts +1921 -35
  203. package/types/src/chart/IChartCollection.d.ts +27 -2
  204. package/types/src/chart/_ChartParts.d.ts +1066 -0
  205. package/types/src/chart/_ChartSource.d.ts +47 -0
  206. package/types/src/chart/createChart.d.ts +26 -0
  207. package/types/src/chart/index.d.ts +4 -0
  208. package/types/src/chart/kinds/ChartKind.d.ts +252 -0
  209. package/types/src/chart/kinds/_Area.d.ts +3 -0
  210. package/types/src/chart/kinds/_Bar.d.ts +4 -0
  211. package/types/src/chart/kinds/_BoxWhisker.d.ts +4 -0
  212. package/types/src/chart/kinds/_Bubble.d.ts +3 -0
  213. package/types/src/chart/kinds/_Funnel.d.ts +4 -0
  214. package/types/src/chart/kinds/_Hierarchy.d.ts +31 -0
  215. package/types/src/chart/kinds/_Histogram.d.ts +4 -0
  216. package/types/src/chart/kinds/_HitKinds.d.ts +23 -0
  217. package/types/src/chart/kinds/_Line.d.ts +4 -0
  218. package/types/src/chart/kinds/_OfPie.d.ts +4 -0
  219. package/types/src/chart/kinds/_Pie.d.ts +4 -0
  220. package/types/src/chart/kinds/_Placeholder.d.ts +6 -0
  221. package/types/src/chart/kinds/_Radar.d.ts +4 -0
  222. package/types/src/chart/kinds/_Scatter.d.ts +8 -0
  223. package/types/src/chart/kinds/_Sunburst.d.ts +4 -0
  224. package/types/src/chart/kinds/_Surface.d.ts +4 -0
  225. package/types/src/chart/kinds/_Treemap.d.ts +4 -0
  226. package/types/src/chart/kinds/_Waterfall.d.ts +18 -0
  227. package/types/src/chart/kinds/_builtIns.d.ts +11 -0
  228. package/types/src/chart/layout/ChartLayout.d.ts +825 -0
  229. package/types/src/chart/layout/TextMeasurer.d.ts +38 -0
  230. package/types/src/chart/layout/_HitGeometry.d.ts +50 -0
  231. package/types/src/chart/layout/_HitTest.d.ts +36 -0
  232. package/types/src/chart/layout/_Layout.d.ts +25 -0
  233. package/types/src/chart/layout/_LayoutUtils.d.ts +97 -0
  234. package/types/src/chart/math/BoxStats.d.ts +35 -0
  235. package/types/src/chart/math/DateUnitCalcs.d.ts +80 -0
  236. package/types/src/chart/math/DisplayUnits.d.ts +53 -0
  237. package/types/src/chart/math/Histogram.d.ts +48 -0
  238. package/types/src/chart/math/OrdUnitCalcs.d.ts +166 -0
  239. package/types/src/chart/math/Treemap.d.ts +28 -0
  240. package/types/src/chart/math/Trendlines.d.ts +71 -0
  241. package/types/src/chart/math/UnitCalcs.d.ts +98 -0
  242. package/types/src/chart/model/ChartModel.d.ts +681 -0
  243. package/types/src/chart/model/_ChartType.d.ts +14 -0
  244. package/types/src/chart/model/_Edits.d.ts +489 -0
  245. package/types/src/chart/model/_Grouping.d.ts +83 -0
  246. package/types/src/chart/model/_Inference.d.ts +52 -0
  247. package/types/src/chart/model/_ModelFacts.d.ts +112 -0
  248. package/types/src/chart/model/_NewChart.d.ts +208 -0
  249. package/types/src/chart/model/_OfPie.d.ts +18 -0
  250. package/types/src/chart/resolve/_LegacyStyles.d.ts +48 -0
  251. package/types/src/chart/resolve/_Resolve.d.ts +51 -0
  252. package/types/src/chart/resolve/_ResolvedChart.d.ts +444 -0
  253. package/types/src/collections/RTree.d.ts +116 -36
  254. package/types/src/collections/SparseGrid.d.ts +6 -3
  255. package/types/src/collections/SpatialMap.d.ts +2 -8
  256. package/types/src/collections/SpatialMap3D.d.ts +2 -0
  257. package/types/src/collections/index.d.ts +1 -1
  258. package/types/src/comment/Comment.d.ts +32 -9
  259. package/types/src/comment/IComment.d.ts +41 -4
  260. package/types/src/comment/_NoteBox.d.ts +19 -2
  261. package/types/src/condition/AnchoredConditional.d.ts +28 -2
  262. package/types/src/condition/ICondition.d.ts +3 -2
  263. package/types/src/conditionalFormat/ConditionalFormat.d.ts +9 -3
  264. package/types/src/conditionalFormat/IConditionalFormat.d.ts +4 -3
  265. package/types/src/dataTable/DataTable.d.ts +67 -0
  266. package/types/src/dataTable/DataTableCollection.d.ts +19 -0
  267. package/types/src/dataTable/IDataTable.d.ts +99 -0
  268. package/types/src/dataTable/IDataTableCollection.d.ts +18 -0
  269. package/types/src/dataTable/index.d.ts +6 -0
  270. package/types/src/dataValidation/DataValidation.d.ts +1 -1
  271. package/types/src/dataValidation/DataValidationCollection.d.ts +4 -1
  272. package/types/src/dataValidation/IDataValidation.d.ts +1 -1
  273. package/types/src/dataValidation/IDataValidationCollection.d.ts +24 -0
  274. package/types/src/documentProperties/DocumentProperties.d.ts +66 -0
  275. package/types/src/documentProperties/ICustomProperty.d.ts +69 -0
  276. package/types/src/documentProperties/IDocumentProperties.d.ts +110 -0
  277. package/types/src/documentProperties/index.d.ts +3 -0
  278. package/types/src/externalBook/IExternalBook.d.ts +1 -1
  279. package/types/src/fill/IFill.d.ts +7 -0
  280. package/types/src/fill/IFillable.d.ts +47 -0
  281. package/types/src/fill/IStroke.d.ts +15 -1
  282. package/types/src/fill/PaintUtils.d.ts +22 -0
  283. package/types/src/fill/index.d.ts +2 -0
  284. package/types/src/font/AdvanceBuilder.d.ts +34 -0
  285. package/types/src/font/AdvanceTable.d.ts +128 -14
  286. package/types/src/font/CanvasAdvanceBuilder.d.ts +54 -0
  287. package/types/src/font/FontCapture.d.ts +4 -0
  288. package/types/src/font/FontCollection.d.ts +53 -2
  289. package/types/src/font/FontPlatform.d.ts +20 -0
  290. package/types/src/font/FontUtils.d.ts +5 -0
  291. package/types/src/font/IFont.d.ts +191 -61
  292. package/types/src/font/IFontCollection.d.ts +20 -14
  293. package/types/src/font/IFontStyle.d.ts +207 -0
  294. package/types/src/font/TableFileAdvanceBuilder.d.ts +9 -0
  295. package/types/src/font/_FontUtils.d.ts +11 -4
  296. package/types/src/font/_FontsVersion.d.ts +7 -0
  297. package/types/src/font/index.d.ts +1 -3
  298. package/types/src/font/platform.browser.d.ts +15 -0
  299. package/types/src/font/platform.node.d.ts +5 -0
  300. package/types/src/group/Group.d.ts +5 -0
  301. package/types/src/group/GroupMovableCollection.d.ts +4 -0
  302. package/types/src/history/IHistory.d.ts +19 -2
  303. package/types/src/hyperlink/IHyperlink.d.ts +7 -1
  304. package/types/src/index.d.ts +3 -0
  305. package/types/src/license/LicenseManager.d.ts +21 -0
  306. package/types/src/license/_Utils.d.ts +18 -1
  307. package/types/src/license/runtime.browser.d.ts +5 -0
  308. package/types/src/license/runtime.node.d.ts +10 -0
  309. package/types/src/listener/IListener.d.ts +14 -2
  310. package/types/src/listener/ListenerEmitter.d.ts +11 -3
  311. package/types/src/movable/IMovable.d.ts +28 -15
  312. package/types/src/movable/IMovableCollection.d.ts +1 -1
  313. package/types/src/movable/Movable.d.ts +12 -1
  314. package/types/src/movable/MovableCollection.d.ts +7 -3
  315. package/types/src/movable/_InsertableCollection.d.ts +16 -5
  316. package/types/src/named/INamed.d.ts +30 -0
  317. package/types/src/named/INamedCollection.d.ts +2 -2
  318. package/types/src/named/NamedCollection.d.ts +16 -4
  319. package/types/src/numFmt/NumberFormatParser.d.ts +5 -0
  320. package/types/src/outline/IOutline.d.ts +1 -1
  321. package/types/src/outline/Outline.d.ts +2 -2
  322. package/types/src/picture/IPicture.d.ts +98 -1
  323. package/types/src/picture/Picture.d.ts +15 -7
  324. package/types/src/pivot/IPivotTable.d.ts +2 -2
  325. package/types/src/pivot/PivotTable.d.ts +5 -5
  326. package/types/src/primitives/ReferenceRange.d.ts +2 -2
  327. package/types/src/print/IPageLayout.d.ts +635 -0
  328. package/types/src/print/PageLayout.d.ts +258 -0
  329. package/types/src/print/index.d.ts +1 -1
  330. package/types/src/protectedRange/IProtectedRange.d.ts +2 -2
  331. package/types/src/protection/IProtection.d.ts +6 -0
  332. package/types/src/protection/PasswordHasher.d.ts +13 -0
  333. package/types/src/richData/IRichDataKind.d.ts +22 -0
  334. package/types/src/richData/RichDataRegistry.d.ts +57 -0
  335. package/types/src/richData/RichText.d.ts +59 -0
  336. package/types/src/richData/index.d.ts +3 -0
  337. package/types/src/scripting/IModule.d.ts +3 -3
  338. package/types/src/scripting/IScript.d.ts +2 -2
  339. package/types/src/scripting/ITypedFunction.d.ts +1 -1
  340. package/types/src/scripting/declarations.d.ts +3 -0
  341. package/types/src/selection/ChartElementSelection.d.ts +39 -0
  342. package/types/src/selection/IChartElementSelection.d.ts +103 -0
  343. package/types/src/selection/IItemSelection.d.ts +131 -0
  344. package/types/src/selection/IMovableSelection.d.ts +6 -34
  345. package/types/src/selection/IRangeSelection.d.ts +4 -4
  346. package/types/src/selection/ItemSelection.d.ts +49 -0
  347. package/types/src/selection/MovableSelection.d.ts +11 -30
  348. package/types/src/selection/RangeSelection.d.ts +4 -4
  349. package/types/src/selection/index.d.ts +3 -0
  350. package/types/src/shape/IShape.d.ts +2 -1
  351. package/types/src/shape/IShapeStyle.d.ts +5 -31
  352. package/types/src/shape/ITextBoxStyle.d.ts +85 -0
  353. package/types/src/shape/ShapeStyleUtils.d.ts +13 -1
  354. package/types/src/shape/_Connectors.d.ts +9 -9
  355. package/types/src/shape/_ShapeStyle.d.ts +9 -0
  356. package/types/src/shape/index.d.ts +1 -0
  357. package/types/src/sheet/CellRegion.d.ts +37 -3
  358. package/types/src/sheet/IOpaqueSheet.d.ts +46 -0
  359. package/types/src/sheet/ISheet.d.ts +81 -1078
  360. package/types/src/sheet/IWorksheet.d.ts +1514 -0
  361. package/types/src/sheet/{ISheetCollection.d.ts → IWorksheetCollection.d.ts} +37 -12
  362. package/types/src/sheet/NamedCellRange.d.ts +2 -2
  363. package/types/src/sheet/NamedRange.d.ts +2 -2
  364. package/types/src/sheet/OpaqueSheet.d.ts +114 -0
  365. package/types/src/sheet/SheetCell.d.ts +24 -27
  366. package/types/src/sheet/SheetRange.d.ts +42 -11
  367. package/types/src/sheet/SheetRanges.d.ts +12 -10
  368. package/types/src/sheet/{Sheet.d.ts → Worksheet.d.ts} +510 -144
  369. package/types/src/sheet/WorksheetCollection.d.ts +39 -0
  370. package/types/src/sheet/_Anomalies.d.ts +109 -0
  371. package/types/src/sheet/_AnomalyFormulaChecks.d.ts +125 -0
  372. package/types/src/sheet/_AnomalyLabelChecks.d.ts +21 -0
  373. package/types/src/sheet/_CellBuffer.d.ts +11 -1
  374. package/types/src/sheet/_CopyUtils.d.ts +13 -6
  375. package/types/src/sheet/_IgnoredErrors.d.ts +46 -0
  376. package/types/src/sheet/_InvalidSheetRange.d.ts +3 -2
  377. package/types/src/sheet/_Kinds.d.ts +34 -0
  378. package/types/src/sheet/_Labels.d.ts +38 -0
  379. package/types/src/sheet/_RangeStateSweep.d.ts +2 -3
  380. package/types/src/sheet/_ScalarListFactory.d.ts +1 -1
  381. package/types/src/sheet/_SheetAutoFillUtils.d.ts +3 -3
  382. package/types/src/sheet/_SheetAutoFitUtils.d.ts +3 -3
  383. package/types/src/sheet/_SheetChangeEvent.d.ts +72 -0
  384. package/types/src/sheet/_SheetCoords.d.ts +3 -3
  385. package/types/src/sheet/_SheetEvents.d.ts +1 -1
  386. package/types/src/sheet/_SheetFilterUtils.d.ts +6 -6
  387. package/types/src/sheet/_SheetIntents.d.ts +32 -14
  388. package/types/src/sheet/_SheetMessages.d.ts +1 -1
  389. package/types/src/sheet/_SheetMutations.d.ts +7 -8
  390. package/types/src/sheet/_SheetSortUtils.d.ts +2 -2
  391. package/types/src/sheet/_SheetStateReader.d.ts +18 -0
  392. package/types/src/sheet/_SheetStateTypes.d.ts +60 -1
  393. package/types/src/sheet/_SheetUtils.d.ts +20 -19
  394. package/types/src/sheet/_WatchAnchor.d.ts +15 -2
  395. package/types/src/sheet/clipboard/RangeClipboardItems.d.ts +4 -4
  396. package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts +3 -3
  397. package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts +3 -3
  398. package/types/src/sheet/index.d.ts +5 -2
  399. package/types/src/sheet/style/SheetCellStyle.d.ts +67 -86
  400. package/types/src/sheet/style/SheetDirectStyle.d.ts +3 -3
  401. package/types/src/sheet/style/SheetNamedStyle.d.ts +2 -0
  402. package/types/src/sheet/style/_DigitWidth.d.ts +7 -0
  403. package/types/src/sheet/style/_Resolvers.d.ts +3 -2
  404. package/types/src/sheet/style/_StyleUtils.d.ts +7 -43
  405. package/types/src/sheetHeader/ISheetHeader.d.ts +2 -2
  406. package/types/src/sheetHeader/SheetCellHeader.d.ts +2 -0
  407. package/types/src/sheetHeader/SheetCellHeaderRange.d.ts +2 -0
  408. package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts +2 -0
  409. package/types/src/sheetHeader/SheetHeader.d.ts +7 -6
  410. package/types/src/sheetHeader/_HeaderUtils.d.ts +2 -3
  411. package/types/src/sheetProtection/{ISheetProtection.d.ts → IWorksheetProtection.d.ts} +28 -28
  412. package/types/src/sheetProtection/WorksheetProtection.d.ts +51 -0
  413. package/types/src/sheetProtection/index.d.ts +1 -1
  414. package/types/src/sheetView/{ISheetView.d.ts → IWorksheetView.d.ts} +168 -61
  415. package/types/src/sheetView/WorksheetView.d.ts +139 -0
  416. package/types/src/sheetView/_SheetViewUtils.d.ts +5 -3
  417. package/types/src/sheetView/index.d.ts +1 -1
  418. package/types/src/slicer/ISlicer.d.ts +2 -2
  419. package/types/src/sort/ISort.d.ts +35 -5
  420. package/types/src/style/ICellStyle.d.ts +56 -44
  421. package/types/src/style/_BuiltInStyleDefs.d.ts +4 -3
  422. package/types/src/table/AnchoredTable.d.ts +23 -7
  423. package/types/src/table/AutoTable.d.ts +1 -1
  424. package/types/src/table/ITable.d.ts +32 -19
  425. package/types/src/table/_NamedTable.d.ts +3 -3
  426. package/types/src/table/_NamedTableSource.d.ts +2 -2
  427. package/types/src/text/IText.d.ts +4 -51
  428. package/types/src/text/TextEngine.d.ts +34 -0
  429. package/types/src/text/TextFrame.d.ts +4 -2
  430. package/types/src/text/TextRun.d.ts +3 -2
  431. package/types/src/text/TextWrapper.d.ts +32 -26
  432. package/types/src/text/_TextUtils.d.ts +5 -5
  433. package/types/src/text/_TextWrapperFallback.d.ts +49 -0
  434. package/types/src/text/impl/TabStrategy.d.ts +3 -1
  435. package/types/src/text/richtext/IRichText.d.ts +16 -2
  436. package/types/src/text/richtext/index.d.ts +0 -1
  437. package/types/src/theme/ITheme.d.ts +108 -7
  438. package/types/src/theme/ThemeCollection.d.ts +5 -0
  439. package/types/src/theme/_OfficeFontScheme.d.ts +8 -0
  440. package/types/src/transaction/ITransaction.d.ts +20 -1
  441. package/types/src/transaction/Transaction.d.ts +8 -1
  442. package/types/src/transaction/_BatchHandle.d.ts +118 -0
  443. package/types/src/type/AbstractCollection.d.ts +4 -13
  444. package/types/src/type/ICollection.d.ts +17 -4
  445. package/types/src/type/IProperties.d.ts +1 -1
  446. package/types/src/utils/_CSSUtils.d.ts +1 -1
  447. package/types/src/wasm/_fontsWasm.d.ts +7 -0
  448. package/types/src/wasm/_sdkWasm.d.ts +1 -1
  449. package/types/src/wasm/fontsWasm.d.ts +32 -0
  450. package/types/src/wasm/index.d.ts +1 -0
  451. package/types/src/wasm/loader.browser.d.ts +9 -0
  452. package/types/src/wasm/loader.node.d.ts +9 -0
  453. package/types/src/wasm/sdkWasm.d.ts +6 -3
  454. package/types/src/workbook/IWorkbook.d.ts +229 -38
  455. package/types/src/workbook/Workbook.d.ts +77 -22
  456. package/types/src/workbook/WorkbookRange.d.ts +2 -2
  457. package/types/src/workbook/WorkbookRanges.d.ts +2 -2
  458. package/types/src/workbook/_WorkbookIntents.d.ts +2 -2
  459. package/types/src/workbook/_WorkbookMessages.d.ts +5 -0
  460. package/types/src/workbookView/IWorkbookView.d.ts +82 -0
  461. package/types/src/workbookView/WorkbookView.d.ts +21 -0
  462. package/browser/esm/BbSmt62FpFIpoVzu.mjs +0 -392
  463. package/browser/esm/BgcZ-CoTbMfmyDJL.mjs +0 -412
  464. package/browser/esm/DOMHmhYzPcLVcpAW.mjs +0 -7
  465. package/browser/esm/DUvUK61b2_4pf4tG.mjs +0 -484
  466. package/node/esm/CCouEwT37f08qO3V.mjs +0 -7
  467. package/node/esm/CT0CN82y0_Qgoryk.mjs +0 -7568
  468. package/node/esm/DHUADiCmxNQS1ARz.mjs +0 -417
  469. package/node/esm/Ds0d8zXzmgOu3MGx.mjs +0 -403
  470. package/types/src/chart/_ChartXml.d.ts +0 -70
  471. package/types/src/collections/OverlappingRangeIterator.d.ts +0 -87
  472. package/types/src/collections/_RangeSweep.d.ts +0 -97
  473. package/types/src/font/CanvasFontMeasurer.d.ts +0 -25
  474. package/types/src/font/FontKitFontMeasurer.d.ts +0 -11
  475. package/types/src/font/SimpleFontMeasurer.d.ts +0 -4
  476. package/types/src/print/IPrint.d.ts +0 -212
  477. package/types/src/sheet/SheetCollection.d.ts +0 -29
  478. package/types/src/sheetProtection/SheetProtection.d.ts +0 -51
  479. package/types/src/sheetView/SheetView.d.ts +0 -122
  480. package/types/src/text/richtext/IStyledFont.d.ts +0 -330
@@ -7,7 +7,7 @@ import { ICalculation } from '../calculation';
7
7
  import { IFontCollection } from '../font';
8
8
  import { IScript, IModule, IModuleCollection } from '../scripting';
9
9
  import { ICell } from '../cell';
10
- import { ICellRange, ICellRanges } from '../cellRange';
10
+ import { ICellRange, ICellRanges, ICellRegions } from '../cellRange';
11
11
  import { ICommentCollection } from '../comment';
12
12
  import { IPerson, IPersonCollection } from '../person';
13
13
  import { INamedCollection } from '../named';
@@ -15,57 +15,120 @@ import { IExternalBook, IExternalBookCollection } from '../externalBook';
15
15
  import { IPivotTable, IPivotTableCollection } from '../pivot';
16
16
  import { ITheme } from '../theme';
17
17
  import { IStyleCollection } from '../style';
18
- import { ISheet, ISheetCollection, ICellContainerOptions } from '../sheet';
18
+ import { ISheet, IOpaqueSheet, IWorksheet, IWorksheetCollection, ICellContainerOptions } from '../sheet';
19
19
  import { IWorkbookView } from '../workbookView';
20
20
  import { IWorkbookProtection } from '../workbookProtection';
21
+ import { IDocumentProperties } from '../documentProperties';
21
22
  import { IWorkbookIO } from '../io';
22
23
  /**
23
- * An `IWorkbook` represents a collection of {@link ISheet | sheets}, along with shared resources.
24
+ * An `IWorkbook` represents a collection of {@link IWorksheet | sheets}, along with shared resources.
24
25
  *
25
26
  * This interface provides methods for accessing its elements and event handling.
26
27
  *
27
28
  * @remarks
28
- * Most interactions with a {@link IWorkbook | workbook} or {@link ISheet | sheet} are done through a
29
+ * Most interactions with a {@link IWorkbook | workbook} or {@link IWorksheet | sheet} are done through a
29
30
  * {@link ICellRange | workbook range}.
30
31
  *
31
32
  * @see
32
- * * {@link getRange} - For interacting with cell values and formatting on a single {@link ISheet | sheet}.
33
- * * {@link getSheets} - For managing {@link ISheet | sheet}.
33
+ * * {@link getRange} - For interacting with cell values and formatting on a single {@link IWorksheet | sheet}.
34
+ * * {@link getWorksheets} - For managing {@link IWorksheet | sheet}.
34
35
  * * {@link getNames} - For managing items with defined names.
35
36
  */
36
37
  export interface IWorkbook extends ITransaction.ITransactional, IListener.ISource<IWorkbook, IWorkbook.IListeners> {
37
38
  /**
38
- * Returns the collection of sheets within the workbook.
39
+ * Returns every sheet in tab order, of every kind: worksheets, chart sheets, macro sheets and
40
+ * dialog sheets.
41
+ *
42
+ * @param options Which sheets to return; by default the visible ones.
43
+ *
44
+ * @remarks
45
+ * Use {@link getWorksheets} for the grids alone.
46
+ */
47
+ getSheets(options?: IWorkbook.GetSheetsOptions): ISheet[];
48
+ /**
49
+ * Returns the sheet of any kind with the given name, or the selected sheet when no name is
50
+ * given.
51
+ *
52
+ * @param name The name of the sheet, ignoring case.
53
+ *
54
+ * @remarks
55
+ * Throws when there is no sheet with that name. Use {@link getWorksheet} when the sheet must be a
56
+ * grid.
57
+ */
58
+ getSheet(name?: string): ISheet;
59
+ /**
60
+ * Returns the active tab, whatever its kind.
61
+ *
62
+ * @remarks
63
+ * Use {@link getSelectedWorksheet} for the active grid.
64
+ */
65
+ getSelectedSheet(): ISheet;
66
+ /**
67
+ * Returns the collection of worksheets within the workbook.
68
+ *
69
+ * @remarks
70
+ * Only the grids. Use {@link getSheets} for every tab, chart sheets included.
39
71
  */
40
- getSheets(): ISheetCollection;
72
+ getWorksheets(): IWorksheetCollection;
41
73
  /**
42
74
  * Adds a new sheet to the workbook.
43
75
  *
44
76
  * @remarks
45
- * This is a convenience method that wraps `{@link ISheetCollection.add}`.
77
+ * This is a convenience method that wraps `{@link IWorksheetCollection.add}`.
46
78
  */
47
- addSheet(options?: ISheetCollection.AddOptions | string | number): ISheet;
79
+ addWorksheet(options?: IWorksheetCollection.AddOptions | string | number): IWorksheet;
48
80
  /**
49
- * Returns the sheet at the given offset.
81
+ * Returns the worksheet at the given offset among the worksheets.
50
82
  *
51
- * @param index A 0-based index of the sheet.
83
+ * @param index A 0-based index into the worksheets with the given visibility. Sheets of other
84
+ * kinds are not counted, so this is not the tab position ({@link ISheet.getIndex}).
52
85
  * @param visibility The visibility of the sheet.
53
86
  */
54
- getSheetAt(index: number, visibility?: ISheet.Visibility): ISheet;
87
+ getWorksheetAt(index: number, visibility?: ISheet.Visibility): IWorksheet;
55
88
  /**
56
- * Returns the sheet for the given name, or the selected sheet when no name is given.
89
+ * Returns the worksheet for the given name, or the selected worksheet when no name is given.
57
90
  *
58
91
  * @param name The name of the sheet. Omit for the selected sheet — "the sheet", unqualified,
59
- * is the one the user (or agent) is looking at. `getSelectedSheet` remains the explicit form.
92
+ * is the one the user (or agent) is looking at. `getSelectedWorksheet` remains the explicit form.
60
93
  * @param visibility The visibility of the sheet.
94
+ *
95
+ * @remarks
96
+ * Throws when the sheet is not a worksheet: a chart sheet, say, or the selected tab when that is
97
+ * not a worksheet. Use {@link getSheet} for any kind.
61
98
  */
62
- getSheet(name?: string, visibility?: ISheet.Visibility): ISheet;
99
+ getWorksheet(name?: string, visibility?: ISheet.Visibility): IWorksheet;
63
100
  /**
64
- * Returns the currently active sheet within the workbook.
101
+ * Exists to have api parity with Office Scripts.
102
+ *
103
+ * @deprecated Use {@link getWorksheetAt}.
104
+ * @hidden
65
105
  */
66
- getSelectedSheet(): ISheet;
106
+ getWorksheet(index: number, visibility?: ISheet.Visibility): IWorksheet;
67
107
  /**
68
- * Returns the currently active sheet index within the workbook.
108
+ * Returns the active worksheet, or `null` when the active tab is not a worksheet.
109
+ *
110
+ * @remarks
111
+ * A chart sheet (or a macro or dialog sheet) can be the active tab, and then there is no active
112
+ * worksheet: like VBA's `ActiveCell`, this is `null` rather than some other worksheet.
113
+ * {@link getSelectedSheet} returns the active tab whatever its kind.
114
+ */
115
+ getSelectedWorksheet(): IWorksheet | null;
116
+ /**
117
+ * Exists to have api parity with Google Apps Script.
118
+ *
119
+ * @deprecated Use {@link getSelectedWorksheet}.
120
+ * @hidden
121
+ */
122
+ getActiveSheet(): IWorksheet | null;
123
+ /**
124
+ * Exists to have api parity with Office Scripts.
125
+ *
126
+ * @deprecated Use {@link getSelectedWorksheet}.
127
+ * @hidden
128
+ */
129
+ getActiveWorksheet(): IWorksheet | null;
130
+ /**
131
+ * Returns the position of the active tab among the visible sheets of every kind.
69
132
  */
70
133
  getSelectedSheetIndex(): number;
71
134
  /**
@@ -116,7 +179,7 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
116
179
  * default `'throw'` policy treats one as a fault when aggregating.
117
180
  *
118
181
  * @remarks
119
- * The workbook form of {@link ISheet.getStats}: every sheet's used range contributes,
182
+ * The workbook form of {@link IWorksheet.getStats}: every sheet's used range contributes,
120
183
  * including hidden and very-hidden sheets — visibility is a display concern, not a data
121
184
  * one. A workbook with no used cells returns empty statistics (`getSize() === 0`),
122
185
  * never `null`.
@@ -127,16 +190,40 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
127
190
  * {@link ICellRange.getStats}
128
191
  */
129
192
  getStats(options?: ICellRange.GetStatsOptions): IRangeStats;
193
+ /**
194
+ * Returns the regions of the `anomalies` feature across every sheet, in reading order.
195
+ *
196
+ * @example
197
+ * ```ts
198
+ * wb.getAnomalies({ checks: ['linkLabelMismatch', 'styleRole'], limit: 25 });
199
+ * ```
200
+ *
201
+ * @remarks
202
+ * The workbook form of {@link ICellRange.getAnomalies}: every sheet contributes, hidden and
203
+ * very hidden included, in one order, and each region's address names its sheet. The listing
204
+ * spans sheets, so its {@link ICellRegions.getRange} is the selected sheet's; each region is
205
+ * clipped against its own sheet.
206
+ */
207
+ getAnomalies(options?: ICellRange.GetAnomaliesOptions): ICellRegions;
130
208
  /**
131
209
  * Returns a range of cells for the current selection.
210
+ *
211
+ * @remarks
212
+ * Throws when the active tab is not a worksheet.
132
213
  */
133
214
  getSelectedRange(options?: ICellRange.GetRangeOptions): ICellRange;
134
215
  /**
135
216
  * Returns ranges of cells for the current selection.
217
+ *
218
+ * @remarks
219
+ * Throws when the active tab is not a worksheet.
136
220
  */
137
221
  getSelectedRanges(options?: ICellRange.GetRangeOptions): ICellRanges;
138
222
  /**
139
223
  * Returns the selected cell.
224
+ *
225
+ * @remarks
226
+ * Throws when the active tab is not a worksheet.
140
227
  */
141
228
  getSelectedCell(): ICell;
142
229
  /**
@@ -159,14 +246,16 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
159
246
  */
160
247
  replace(cells: Iterator<ICell>, replace: ICell.Update | ((original: ICell) => ICell.Update), options?: IWorkbook.ReplaceOptions): IWorkbook.ReplaceResults;
161
248
  /**
162
- * Returns the next sheet in the sheets collection. If the last one it will return the first.
249
+ * Returns the next visible sheet, of any kind, after the given tab position. If the last one it
250
+ * will return the first.
163
251
  *
164
252
  * @remarks
165
253
  * If there is only 1 sheet this will return the current sheet.
166
254
  */
167
255
  getNextSheet(index: number): ISheet;
168
256
  /**
169
- * Returns the previous sheet in the sheets collection. If the first one it will return the last.
257
+ * Returns the previous visible sheet, of any kind, before the given tab position. If the first
258
+ * one it will return the last.
170
259
  *
171
260
  * @remarks
172
261
  * If there is only 1 sheet this will return the current sheet.
@@ -210,6 +299,62 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
210
299
  * Returns the current shared resources.
211
300
  */
212
301
  getTransactions(): ITransaction.IStore;
302
+ /**
303
+ * Performs a set of operations as one: one commit, one undo step, one round of events.
304
+ *
305
+ * @param callback Performs the operations. Handed the commit being written and `workbook`,
306
+ * this workbook bound to the batch.
307
+ * @param options Description of the operation or additional options. Used for undo/redo and
308
+ * history.
309
+ *
310
+ * @remarks
311
+ * Work through `workbook` rather than this one. Everything reached through it - sheets, ranges,
312
+ * tables - is part of the batch, and a listener added through it takes part in the batch by
313
+ * default ({@link IListener.Options.transactional}). A range listener added through it hears each
314
+ * operation as it is made, rather than once when the batch lands, and what it writes joins the
315
+ * batch ({@link ICellRange.ListenerOptions.transactional}). A listener added any other way, while
316
+ * the batch is open, is outside it.
317
+ *
318
+ * The objects reached through `workbook` are not `===` to the ones reached through this workbook,
319
+ * though the same object always compares equal to itself. They can be passed to any method of
320
+ * either.
321
+ *
322
+ * A batch that performs no writes is elided: the commit id is unchanged, no events fire, and
323
+ * nothing is added to the undo stack or commit log.
324
+ *
325
+ * @example
326
+ * ```ts
327
+ * await workbook.doBatch(async (_commit, wb) => {
328
+ * const cell = wb.getSelectedWorksheet()!.getRange('A1');
329
+ * cell.addListener(() => console.log('A1 changed'));
330
+ * cell.setValue(1); // logs 'A1 changed' before the next line runs
331
+ * });
332
+ * ```
333
+ */
334
+ doBatch<R = any>(callback: (commit: ITransaction.ICommit, workbook: this) => R | Promise<R>, options?: string | ITransaction.OperationOptions): R | Promise<R>;
335
+ /**
336
+ * What a commit wrote: the {@link IWorksheet.ChangeEvent}s it announced, one for each sheet and
337
+ * {@link IWorksheet.ChangeEvent.getKind | kind} (data, formatting, merges, spills).
338
+ *
339
+ * @param commitId The commit to describe. Omit for the current one.
340
+ * @returns Empty for a commit that changed no cells (a view, a name, a chart).
341
+ *
342
+ * @remarks
343
+ * The same events the sheets announced when the commit landed, read afterwards: the
344
+ * previous commit is its parent, and an undo is reported as the commit it moved to, so
345
+ * {@link IWorksheet.ChangeEvent.isUndo} is always `false` here.
346
+ *
347
+ * @throws If the store no longer has the commit.
348
+ *
349
+ * @example
350
+ * ```ts
351
+ * for (const change of wb.getChanges()) {
352
+ * if (change.getKind() !== 'onDataChange') continue; // values and formulas, not formatting
353
+ * console.log(change.getSheet().getName(), change.getRanges()?.toString());
354
+ * }
355
+ * ```
356
+ */
357
+ getChanges(commitId?: string): IWorksheet.ChangeEvent[];
213
358
  /**
214
359
  * Get the current theme.
215
360
  */
@@ -337,16 +482,20 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
337
482
  * Returns the protection object for the workbook.
338
483
  */
339
484
  getProtection(): IWorkbookProtection;
485
+ /**
486
+ * The workbook's document properties: author, title, company and the like.
487
+ */
488
+ getProperties(): IDocumentProperties;
340
489
  /**
341
490
  * The workbook's VBA code name — conventionally `ThisWorkbook` — or `null` if it has none.
342
491
  *
343
492
  * @defaultValue null
344
493
  *
345
494
  * @remarks
346
- * The workbook-level counterpart to {@link ISheet.getCodeName}: the identifier VBA binds the
495
+ * The workbook-level counterpart to {@link IWorksheet.getCodeName}: the identifier VBA binds the
347
496
  * workbook's own document module through, where workbook event handlers such as `Workbook_Open`
348
497
  * live. Like a sheet's, it is carried from the file and **read-only** — see
349
- * {@link ISheet.getCodeName} for why SheetXL never mints one.
498
+ * {@link IWorksheet.getCodeName} for why SheetXL never mints one.
350
499
  */
351
500
  getCodeName(): string | null;
352
501
  /**
@@ -356,7 +505,7 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
356
505
  * @remarks
357
506
  * The name-manager view: what EXISTS, not what any one sheet can see. A global name and a
358
507
  * sheet-scoped name that share a name are two items here and both are returned; ask
359
- * {@link ISheet.getNames} for the one a formula on that sheet would resolve to.
508
+ * {@link IWorksheet.getNames} for the one a formula on that sheet would resolve to.
360
509
  */
361
510
  getNames(): INamedCollection;
362
511
  /**
@@ -374,7 +523,7 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
374
523
  * Returns the pivot tables on every sheet, in sheet order.
375
524
  *
376
525
  * @remarks
377
- * A view over each sheet's {@link ISheet.getPivotTables}; `getByName` searches them all.
526
+ * A view over each sheet's {@link IWorksheet.getPivotTables}; `getByName` searches them all.
378
527
  * Read-only for now: each table is carried as it was read and written back unchanged.
379
528
  */
380
529
  getPivotTables(): IPivotTableCollection;
@@ -382,7 +531,7 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
382
531
  * Returns the comments and notes on every sheet, in sheet order.
383
532
  *
384
533
  * @remarks
385
- * A view over each sheet's {@link ISheet.getComments}; `getById` and `getByReplyId` search
534
+ * A view over each sheet's {@link IWorksheet.getComments}; `getById` and `getByReplyId` search
386
535
  * them all. A comment is added on a sheet's collection.
387
536
  */
388
537
  getComments(): ICommentCollection;
@@ -431,7 +580,7 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
431
580
  * @remarks
432
581
  * This is a convenience method for `getCalculation().createFormula(expression, coords, options)`.
433
582
  * A bare reference (`A2`) resolves against the active cell's sheet; use
434
- * {@link ISheet.createFormula} to anchor against a specific sheet.
583
+ * {@link IWorksheet.createFormula} to anchor against a specific sheet.
435
584
  *
436
585
  * @see {@link ICalculation.createFormula}
437
586
  */
@@ -456,6 +605,23 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
456
605
  * it has not been started.
457
606
  */
458
607
  whenCalculationReady(): Promise<ICalculation.Status>;
608
+ /**
609
+ * Returns when every font the workbook measures with has loaded and every autofit that was
610
+ * taken with a stand-in meanwhile has been taken again.
611
+ *
612
+ * @remarks
613
+ * Measuring never waits: a style naming a face not yet loaded measures with a related or
614
+ * built-in one and the lookup starts the load, the way a browser paints with a fallback until
615
+ * a web font arrives. This is the point after which sizes are final. Fonts are shared, so this
616
+ * also waits for faces other workbooks started loading; a load that fails leaves its stand-in
617
+ * and still settles.
618
+ */
619
+ whenFontsReady(): Promise<void>;
620
+ /**
621
+ * Returns when the workbook is settled: {@link whenCalculationReady} and {@link whenFontsReady}
622
+ * both hold.
623
+ */
624
+ whenReady(): Promise<void>;
459
625
  /**
460
626
  * Returns any user defined functions stored with the workbook.
461
627
  */
@@ -464,7 +630,7 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
464
630
  * Returns the modules this workbook owns.
465
631
  *
466
632
  * @remarks
467
- * The workbook half of {@link ISheet.getModules}, and the same collection
633
+ * The workbook half of {@link IWorksheet.getModules}, and the same collection
468
634
  * `getScripts().getModules()` answers with — modules belong to the model, whereas
469
635
  * {@link IScript} is what runs them.
470
636
  *
@@ -481,7 +647,7 @@ export interface IWorkbook extends ITransaction.ITransactional, IListener.ISourc
481
647
  *
482
648
  * @param options Options to control the JSON output.
483
649
  */
484
- toJSON(options?: ISheet.ToJSONOptions): Promise<IWorkbook.JSON>;
650
+ toJSON(options?: IWorksheet.ToJSONOptions): Promise<IWorkbook.JSON>;
485
651
  /**
486
652
  * Returns any custom workbook options that are provided in constructor.
487
653
  */
@@ -690,9 +856,24 @@ export declare namespace IWorkbook {
690
856
  last: ICell | null;
691
857
  }
692
858
  /**
693
- * Used for persisting metadata about a `ISheet`.
859
+ * Options for {@link IWorkbook.getSheets}.
694
860
  */
695
- interface SheetRefJSON {
861
+ interface GetSheetsOptions {
862
+ /**
863
+ * The least visible sheets to include: `Hidden` includes the hidden sheets, `VeryHidden` every
864
+ * sheet.
865
+ *
866
+ * @defaultValue ISheet.Visibility.Visible
867
+ */
868
+ visibility?: ISheet.Visibility;
869
+ }
870
+ /**
871
+ * Used for persisting an {@link ISheet}: its tab, and its body as {@link SheetRefJSON.kind} says.
872
+ *
873
+ * @typeParam T The body: {@link IWorksheet.JSON} for a worksheet, {@link IOpaqueSheet.JSON} for
874
+ * the other kinds.
875
+ */
876
+ interface SheetRefJSON<T extends ISheet.JSON = IWorksheet.JSON | IOpaqueSheet.JSON> {
696
877
  /**
697
878
  * A unique name for the sheet.
698
879
  */
@@ -714,9 +895,15 @@ export declare namespace IWorkbook {
714
895
  */
715
896
  visibility?: ISheet.Visibility;
716
897
  /**
717
- * The actual sheet.
898
+ * What the sheet holds, and so what {@link sheet} is.
899
+ *
900
+ * @defaultValue ISheet.Kind.Worksheet
901
+ */
902
+ kind?: ISheet.Kind;
903
+ /**
904
+ * The sheet's body.
718
905
  */
719
- sheet?: ISheet.JSON;
906
+ sheet?: T;
720
907
  }
721
908
  /**
722
909
  * JSON representation of an `IWorkbook` used for serialization and deserialization.
@@ -766,6 +953,10 @@ export declare namespace IWorkbook {
766
953
  modules?: Record<string, IModule.JSON>;
767
954
  calc?: ICalculation.JSON;
768
955
  protection?: IWorkbookProtection.JSON;
956
+ /**
957
+ * @see {@link IWorkbook.getProperties}
958
+ */
959
+ properties?: IDocumentProperties.JSON;
769
960
  date1904?: boolean;
770
961
  /**
771
962
  * The workbook's VBA code name. Absent when it has none.
@@ -792,12 +983,12 @@ export declare namespace IWorkbook {
792
983
  /**
793
984
  * Callback to allow for custom `ISheets`. The Workbook provides a default implementation.
794
985
  */
795
- interface CreateSheetCallback {
986
+ interface CreateWorksheetCallback {
796
987
  (
797
988
  /**
798
989
  * Options used for creating the Sheet instance.
799
990
  */
800
- options: ISheet.ConstructorOptions,
991
+ options: IWorksheet.ConstructorOptions,
801
992
  /**
802
993
  * The name of the new sheet.
803
994
  */
@@ -809,7 +1000,7 @@ export declare namespace IWorkbook {
809
1000
  /**
810
1001
  * @defaultValue ISheet.Visibility.Visible
811
1002
  */
812
- visibility: ISheet.Visibility): ISheet;
1003
+ visibility: ISheet.Visibility): IWorksheet;
813
1004
  }
814
1005
  /**
815
1006
  * Options available when creating an IWorkbook.
@@ -818,7 +1009,7 @@ export declare namespace IWorkbook {
818
1009
  /**
819
1010
  * Hook to allow for custom sheet creation.
820
1011
  */
821
- createSheetCallback?: CreateSheetCallback;
1012
+ createWorksheetCallback?: CreateWorksheetCallback;
822
1013
  /**
823
1014
  * Returns a human readable sheet name given a 0-based index.
824
1015
  *