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

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 (564) hide show
  1. package/THIRD-PARTY-NOTICES.md +1 -1
  2. package/browser/esm/{B0HS42a7lga1k1U_.mjs → BEAY9XgKNx-bakXW.mjs} +2 -2
  3. package/browser/esm/BbSmt62FpFIpoVzu.mjs +392 -0
  4. package/browser/esm/BcHmrKHwMMOlzc9_.mjs +357 -0
  5. package/browser/esm/BgcZ-CoTbMfmyDJL.mjs +412 -0
  6. package/browser/esm/Bk7xxbdDpa7-sIwd.mjs +7 -0
  7. package/browser/esm/BqskM7wA8oPfFQue.mjs +20 -0
  8. package/browser/esm/Btg43M1Bf-ENDreu.mjs +540 -0
  9. package/browser/esm/BzLfNyc6OOShIErH.mjs +598 -0
  10. package/browser/esm/C9B0djuUarfNdoj0.mjs +466 -0
  11. package/browser/esm/{uyWBMSIxMlt8n5Z3.mjs → CSx9ed1JOs7K5BXO.mjs} +2 -2
  12. package/browser/esm/CYyv6uGjo10ig5FP.mjs +142 -0
  13. package/browser/esm/CZ5oa92wZEAXebgk.mjs +622 -0
  14. package/browser/esm/CdLZWVcH8cncBUPJ.mjs +849 -0
  15. package/browser/esm/Cgd5BnM3hg9RyUel.mjs +171 -0
  16. package/browser/esm/CjsUGJEQSbGjnH6R.mjs +1001 -0
  17. package/browser/esm/ClB5ix51roQOpZEr.mjs +7402 -0
  18. package/browser/esm/{DlPMeIyxT9tG_WDk.mjs → Cqr3knDsBvoVZ6MN.mjs} +179 -202
  19. package/browser/esm/D4uVlrG0xEFctsSM.mjs +905 -0
  20. package/browser/esm/DOMHmhYzPcLVcpAW.mjs +7 -0
  21. package/browser/esm/DUvUK61b2_4pf4tG.mjs +484 -0
  22. package/browser/esm/De175LygU7ot4nQm.mjs +441 -0
  23. package/browser/esm/DhKkrCVASZ6Isvz6.mjs +527 -0
  24. package/browser/esm/Di58Ji1n--3Mgc_2.mjs +607 -0
  25. package/browser/esm/Dtoyt8q5RyGAlxCp.mjs +1141 -0
  26. package/browser/esm/Y79I7Sm8kjaYexhf.mjs +167 -0
  27. package/browser/esm/index.mjs +1472 -1023
  28. package/browser/esm/o8MFgcVXns987D6_.mjs +400 -0
  29. package/browser/esm/zqJOaweiXE9D8RY1.mjs +66681 -0
  30. package/licenses/dependencies.txt +209 -209
  31. package/node/esm/B6D7sSetrcOWLsKj.mjs +1135 -0
  32. package/node/esm/B9ljpEIZg6wOTzRE.mjs +142 -0
  33. package/node/esm/BH1v-E4Ro3bR7Znw.mjs +962 -0
  34. package/node/esm/BN9j8V9gCExMjVtJ.mjs +540 -0
  35. package/node/esm/{Cku7XiUvw1xrRasi.mjs → Bh4dv6tMjXX3X4nI.mjs} +1 -1
  36. package/node/esm/Bqd62L8KFgdS0Vou.mjs +7 -0
  37. package/node/esm/Bsx9uijd4X_SKV3L.mjs +360 -0
  38. package/node/esm/BtuY37FumvLE7EBo.mjs +629 -0
  39. package/node/esm/C6ZXsNyLXI6zA63X.mjs +402 -0
  40. package/node/esm/CCouEwT37f08qO3V.mjs +7 -0
  41. package/node/esm/CD9wbvufChVYYkrI.mjs +451 -0
  42. package/node/esm/CImNvdz1iP-lUlro.mjs +610 -0
  43. package/node/esm/CT0CN82y0_Qgoryk.mjs +7568 -0
  44. package/node/esm/CUQi5ZtMO02nhG0W.mjs +596 -0
  45. package/node/esm/CUUoseJmFsCf82bb.mjs +28 -0
  46. package/node/esm/CnSQ7MTXAUAyBOoS.mjs +911 -0
  47. package/node/esm/D7MfcID2Wf6l6VpC.mjs +171 -0
  48. package/node/esm/DCplLG93GfTs1vNw.mjs +1860 -0
  49. package/node/esm/DHUADiCmxNQS1ARz.mjs +417 -0
  50. package/node/esm/DMD12JUh7HJw2-jl.mjs +638 -0
  51. package/node/esm/DdFgXl-Ux2cMBTs_.mjs +15 -0
  52. package/node/esm/DefYISWfdZJFx57m.mjs +255 -0
  53. package/node/esm/Ds0d8zXzmgOu3MGx.mjs +403 -0
  54. package/node/esm/MiU4rDOiocmJ-9Ry.mjs +1783 -0
  55. package/node/esm/index.mjs +51616 -39665
  56. package/package.json +15 -16
  57. package/resources/contents.json +64 -0
  58. package/resources/fonts/arial-bold-italic.metrics.json +139 -0
  59. package/resources/fonts/arial-bold.metrics.json +139 -0
  60. package/resources/fonts/arial-italic.metrics.json +139 -0
  61. package/resources/fonts/arial-regular.metrics.json +139 -0
  62. package/resources/fonts/calibri-bold-italic.metrics.json +137 -0
  63. package/resources/fonts/calibri-bold.metrics.json +137 -0
  64. package/resources/fonts/calibri-italic.metrics.json +137 -0
  65. package/resources/fonts/calibri-regular.metrics.json +137 -0
  66. package/resources/fonts/cambria-bold-italic.metrics.json +66 -0
  67. package/resources/fonts/cambria-bold.metrics.json +66 -0
  68. package/resources/fonts/cambria-italic.metrics.json +66 -0
  69. package/resources/fonts/cambria-regular.metrics.json +66 -0
  70. package/resources/fonts/contents.json +126 -0
  71. package/resources/fonts/courier-new-bold-italic.metrics.json +143 -0
  72. package/resources/fonts/courier-new-bold.metrics.json +143 -0
  73. package/resources/fonts/courier-new-italic.metrics.json +143 -0
  74. package/resources/fonts/courier-new-regular.metrics.json +143 -0
  75. package/resources/fonts/times-new-roman-bold-italic.metrics.json +141 -0
  76. package/resources/fonts/times-new-roman-bold.metrics.json +141 -0
  77. package/resources/fonts/times-new-roman-italic.metrics.json +143 -0
  78. package/resources/fonts/times-new-roman-regular.metrics.json +141 -0
  79. package/resources/locales/de/model.msg.json +112 -12
  80. package/resources/locales/en/model.msg.json +119 -13
  81. package/types/scripting-api.json +8048 -0
  82. package/types/scripting-enums.json +277 -110
  83. package/types/scripting.d.ts +13077 -3224
  84. package/types/src/anchored/AbstractAnchored.d.ts +18 -8
  85. package/types/src/anchored/AnchoredMap.d.ts +2 -0
  86. package/types/src/anchored/IAnchoredMap.d.ts +52 -4
  87. package/types/src/autoFill/AutoFill.d.ts +316 -32
  88. package/types/src/autoFill/IAutoFill.d.ts +232 -15
  89. package/types/src/border/{IBorder.d.ts → IBorders.d.ts} +42 -41
  90. package/types/src/border/index.d.ts +1 -1
  91. package/types/src/calculation/Calculation.d.ts +754 -49
  92. package/types/src/calculation/ExternalBookBindings.d.ts +118 -0
  93. package/types/src/calculation/FormulaText.d.ts +82 -0
  94. package/types/src/calculation/ICalculation.d.ts +318 -81
  95. package/types/src/calculation/INamedFormulasCollection.d.ts +5 -8
  96. package/types/src/calculation/NamedFormulaCollection.d.ts +139 -107
  97. package/types/src/calculation/NamedLambdaFunction.d.ts +28 -0
  98. package/types/src/calculation/TokenType.d.ts +9 -0
  99. package/types/src/calculation/Types.d.ts +83 -2
  100. package/types/src/calculation/_CloneBoundary.d.ts +80 -0
  101. package/types/src/calculation/_TableRename.d.ts +13 -0
  102. package/types/src/calculation/compiler/ASTTypes.d.ts +71 -0
  103. package/types/src/calculation/compiler/CompilerUtils.d.ts +135 -44
  104. package/types/src/calculation/compiler/FormulaCompiler.d.ts +29 -4
  105. package/types/src/calculation/compiler/FormulaParser.d.ts +1 -2
  106. package/types/src/calculation/compiler/LiteTransform.d.ts +17 -0
  107. package/types/src/calculation/compiler/ParserUtils.d.ts +26 -1
  108. package/types/src/calculation/compiler/SRParser.d.ts +2 -1
  109. package/types/src/calculation/compiler/Types.d.ts +79 -9
  110. package/types/src/calculation/executor/CalcExecutor.d.ts +312 -33
  111. package/types/src/calculation/executor/CalcExecutorUtils.d.ts +43 -2
  112. package/types/src/calculation/executor/CircularReference.d.ts +2 -0
  113. package/types/src/calculation/formula/Formula.d.ts +58 -21
  114. package/types/src/calculation/formula/FormulaBlock.d.ts +125 -23
  115. package/types/src/calculation/formula/FormulaRecordView.d.ts +79 -0
  116. package/types/src/calculation/formula/FunctionValues.d.ts +10 -0
  117. package/types/src/calculation/formula/IFormulaBlock.d.ts +261 -67
  118. package/types/src/calculation/formula/LambdaValue.d.ts +46 -23
  119. package/types/src/calculation/formula/LazyValue.d.ts +96 -0
  120. package/types/src/calculation/formula/TokenUtils.d.ts +25 -1
  121. package/types/src/calculation/formula/index.d.ts +1 -0
  122. package/types/src/calculation/functions/FunctionDeclarations.d.ts +31 -0
  123. package/types/src/calculation/functions/Operators.d.ts +8 -0
  124. package/types/src/calculation/functions/initializeFunctions.d.ts +15 -2
  125. package/types/src/calculation/grid/CalcGrid.d.ts +407 -158
  126. package/types/src/calculation/grid/CalcGridBackend.d.ts +493 -0
  127. package/types/src/calculation/grid/CalcGridProxy.d.ts +133 -0
  128. package/types/src/calculation/grid/CalcGridUtils.d.ts +62 -12
  129. package/types/src/calculation/grid/FormulaEntry.d.ts +129 -0
  130. package/types/src/calculation/grid/FormulaHost.d.ts +239 -0
  131. package/types/src/calculation/grid/ICalcGrid.d.ts +499 -141
  132. package/types/src/calculation/grid/_CalcRequest.d.ts +289 -0
  133. package/types/src/calculation/grid/index.d.ts +4 -0
  134. package/types/src/calculation/index.d.ts +2 -0
  135. package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts +6 -2
  136. package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +339 -11
  137. package/types/src/calculation/spatial/SpillEntry.d.ts +20 -5
  138. package/types/src/calculation/spatial/TouchedWindows.d.ts +86 -0
  139. package/types/src/calculation/spatial/index.d.ts +1 -0
  140. package/types/src/calculation/state/CalcInputs.d.ts +41 -0
  141. package/types/src/calculation/state/CalcNode.d.ts +141 -30
  142. package/types/src/calculation/state/CalcScope.d.ts +37 -0
  143. package/types/src/calculation/state/CalcState.d.ts +22 -1
  144. package/types/src/calculation/state/CalculationContext.d.ts +50 -3
  145. package/types/src/calculation/state/IContextContainer.d.ts +129 -27
  146. package/types/src/calculation/state/_PendingOverlayGrid.d.ts +163 -0
  147. package/types/src/calculation/state/_ReadObservedGrid.d.ts +74 -8
  148. package/types/src/calculation/state/index.d.ts +1 -0
  149. package/types/src/calculation/symbol/ExternalSheetSymbols.d.ts +80 -0
  150. package/types/src/calculation/symbol/ISymbolRegistry.d.ts +23 -0
  151. package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts +16 -2
  152. package/types/src/calculation/symbol/SheetSymbolProvider.d.ts +63 -3
  153. package/types/src/calculation/symbol/SymbolRegistry.d.ts +20 -0
  154. package/types/src/calculation/symbol/index.d.ts +3 -2
  155. package/types/src/cell/ICell.d.ts +104 -29
  156. package/types/src/cell/ICellHeader.d.ts +24 -2
  157. package/types/src/cell/ICellProtection.d.ts +50 -10
  158. package/types/src/cellRange/ICellRange.d.ts +419 -79
  159. package/types/src/cellRange/ICellRanges.d.ts +23 -21
  160. package/types/src/chart/Chart.d.ts +41 -13
  161. package/types/src/chart/ChartCollection.d.ts +26 -0
  162. package/types/src/chart/IChart.d.ts +166 -12
  163. package/types/src/chart/IChartCollection.d.ts +25 -0
  164. package/types/src/chart/_ChartXml.d.ts +70 -0
  165. package/types/src/chart/index.d.ts +1 -3
  166. package/types/src/collections/ArraysGrid.d.ts +1 -1
  167. package/types/src/collections/IGrid.d.ts +1 -1
  168. package/types/src/collections/ISparseGrid.d.ts +9 -0
  169. package/types/src/collections/ISpatialMap.d.ts +59 -21
  170. package/types/src/collections/ImmutableList.d.ts +28 -0
  171. package/types/src/collections/MixedTypedArrayList.d.ts +168 -108
  172. package/types/src/collections/OverlappingRangeIterator.d.ts +13 -17
  173. package/types/src/collections/RepeatingList.d.ts +7 -0
  174. package/types/src/collections/ScalarGrid.d.ts +50 -0
  175. package/types/src/collections/SparseGrid.d.ts +1 -1
  176. package/types/src/collections/SpatialMap.d.ts +13 -21
  177. package/types/src/collections/Tuple.d.ts +128 -16
  178. package/types/src/collections/_GridUtils.d.ts +19 -6
  179. package/types/src/collections/_RangeSweep.d.ts +97 -0
  180. package/types/src/collections/_SpatialUtils.d.ts +20 -2
  181. package/types/src/collections/index.d.ts +1 -0
  182. package/types/src/color/_BuiltInIndexDefs.d.ts +6 -0
  183. package/types/src/comment/Comment.d.ts +223 -0
  184. package/types/src/comment/CommentCollection.d.ts +40 -0
  185. package/types/src/comment/IComment.d.ts +340 -50
  186. package/types/src/comment/ICommentCollection.d.ts +90 -0
  187. package/types/src/comment/NoteMovable.d.ts +26 -0
  188. package/types/src/comment/_CommentUtils.d.ts +50 -0
  189. package/types/src/comment/_NoteBox.d.ts +50 -0
  190. package/types/src/comment/index.d.ts +1 -0
  191. package/types/src/condition/AnchoredConditional.d.ts +82 -17
  192. package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +42 -12
  193. package/types/src/condition/BuiltInOperators/AfterEqualToOperator.d.ts +2 -0
  194. package/types/src/condition/BuiltInOperators/AfterOperator.d.ts +2 -0
  195. package/types/src/condition/BuiltInOperators/AndOperator.d.ts +3 -1
  196. package/types/src/condition/BuiltInOperators/AverageOperator.d.ts +2 -0
  197. package/types/src/condition/BuiltInOperators/BeforeEqualToOperator.d.ts +2 -0
  198. package/types/src/condition/BuiltInOperators/BeforeOperator.d.ts +2 -0
  199. package/types/src/condition/BuiltInOperators/BetweenOperator.d.ts +2 -0
  200. package/types/src/condition/BuiltInOperators/ColorOperator.d.ts +4 -0
  201. package/types/src/condition/BuiltInOperators/ContainsOperator.d.ts +2 -0
  202. package/types/src/condition/BuiltInOperators/EndsWithOperator.d.ts +2 -0
  203. package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts +4 -1
  204. package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts +5 -6
  205. package/types/src/condition/BuiltInOperators/GreaterThanEqualToOperator.d.ts +2 -0
  206. package/types/src/condition/BuiltInOperators/GreaterThanOperator.d.ts +2 -0
  207. package/types/src/condition/BuiltInOperators/IconOperator.d.ts +4 -0
  208. package/types/src/condition/BuiltInOperators/InSetOperator.d.ts +22 -5
  209. package/types/src/condition/BuiltInOperators/LessThanEqualToOperator.d.ts +2 -0
  210. package/types/src/condition/BuiltInOperators/LessThanOperator.d.ts +2 -0
  211. package/types/src/condition/BuiltInOperators/NotOperator.d.ts +2 -0
  212. package/types/src/condition/BuiltInOperators/OrOperator.d.ts +3 -1
  213. package/types/src/condition/BuiltInOperators/StartsWithOperator.d.ts +2 -0
  214. package/types/src/condition/BuiltInOperators/TimePeriodOperator.d.ts +2 -0
  215. package/types/src/condition/BuiltInOperators/TopNOperator.d.ts +6 -0
  216. package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts +21 -6
  217. package/types/src/condition/BuiltinSelectors/DateSelector.d.ts +4 -5
  218. package/types/src/condition/BuiltinSelectors/DisplaySelector.d.ts +20 -0
  219. package/types/src/condition/BuiltinSelectors/TextLengthSelector.d.ts +7 -5
  220. package/types/src/condition/BuiltinSelectors/TimeSelector.d.ts +3 -5
  221. package/types/src/condition/BuiltinSelectors/WholeSelector.d.ts +3 -5
  222. package/types/src/condition/BuiltinSelectors/index.d.ts +12 -6
  223. package/types/src/condition/Condition.d.ts +19 -1
  224. package/types/src/condition/ICondition.d.ts +293 -73
  225. package/types/src/condition/_ConditionFormula.d.ts +152 -0
  226. package/types/src/condition/_ConditionUtils.d.ts +167 -13
  227. package/types/src/conditionalFormat/ConditionalEntry.d.ts +3 -3
  228. package/types/src/conditionalFormat/ConditionalFormat.d.ts +25 -14
  229. package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +19 -8
  230. package/types/src/conditionalFormat/IConditionalFormat.d.ts +12 -10
  231. package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +2 -0
  232. package/types/src/dataValidation/DataValidation.d.ts +69 -3
  233. package/types/src/dataValidation/DataValidationCollection.d.ts +20 -9
  234. package/types/src/dataValidation/IDataValidation.d.ts +149 -30
  235. package/types/src/dataValidation/IDataValidationCollection.d.ts +10 -2
  236. package/types/src/date/DateUtils.d.ts +20 -0
  237. package/types/src/date/_DateUtils.d.ts +91 -7
  238. package/types/src/externalBook/ExternalBookCollection.d.ts +145 -12
  239. package/types/src/externalBook/ExternalBookName.d.ts +96 -0
  240. package/types/src/externalBook/IExternalBook.d.ts +170 -18
  241. package/types/src/externalBook/IExternalBookCollection.d.ts +79 -7
  242. package/types/src/externalBook/index.d.ts +1 -0
  243. package/types/src/{lib/file → file}/file.browser.d.ts +22 -8
  244. package/types/src/{lib/file → file}/file.node.d.ts +7 -2
  245. package/types/src/fill/IEffect.d.ts +5 -5
  246. package/types/src/fill/IFill.d.ts +123 -78
  247. package/types/src/fill/IStroke.d.ts +190 -64
  248. package/types/src/fill/RectAlignment.d.ts +20 -0
  249. package/types/src/fill/_Fills.d.ts +187 -0
  250. package/types/src/fill/_Stroke.d.ts +89 -0
  251. package/types/src/fill/index.d.ts +1 -0
  252. package/types/src/filter/IFilter.d.ts +188 -5
  253. package/types/src/font/AdvanceBuilder.d.ts +25 -0
  254. package/types/src/font/AdvanceTable.d.ts +114 -0
  255. package/types/src/font/FontCollection.d.ts +57 -0
  256. package/types/src/font/IFont.d.ts +17 -0
  257. package/types/src/font/IFontCollection.d.ts +120 -22
  258. package/types/src/font/TableFileAdvanceBuilder.d.ts +27 -0
  259. package/types/src/font/_BuiltinFontTables.d.ts +10 -0
  260. package/types/src/font/index.d.ts +4 -1
  261. package/types/src/group/Group.d.ts +136 -0
  262. package/types/src/group/GroupMovableCollection.d.ts +37 -0
  263. package/types/src/group/IGroup.d.ts +129 -0
  264. package/types/src/group/index.d.ts +2 -0
  265. package/types/src/history/IHistory.d.ts +3 -2
  266. package/types/src/hyperlink/IHyperlink.d.ts +13 -0
  267. package/types/src/hyperlink/_Hyperlink.d.ts +5 -1
  268. package/types/src/i18n/LanguagePack.d.ts +12 -4
  269. package/types/src/index.d.ts +5 -0
  270. package/types/src/io/AbstractBackingStore.d.ts +24 -1
  271. package/types/src/io/ArrayBackingStore.d.ts +1 -1
  272. package/types/src/io/EmbeddedPart.d.ts +20 -0
  273. package/types/src/io/IEmbeddedPart.d.ts +63 -0
  274. package/types/src/io/IWorkbookIO.d.ts +185 -18
  275. package/types/src/io/WorkbookIO.d.ts +9 -0
  276. package/types/src/io/WorkbookOrigin.d.ts +20 -11
  277. package/types/src/io/WorkbookOriginProvider.d.ts +46 -0
  278. package/types/src/io/_XmlFragment.d.ts +49 -0
  279. package/types/src/io/index.d.ts +1 -0
  280. package/types/src/license/LicenseDetails.d.ts +1 -0
  281. package/types/src/license/LicenseManager.d.ts +4 -1
  282. package/types/src/license/Types.d.ts +38 -0
  283. package/types/src/license/_Utils.d.ts +22 -0
  284. package/types/src/license/details.d.ts +24 -0
  285. package/types/src/license/license-key.d.ts +49 -2
  286. package/types/src/license/runtime.browser.d.ts +41 -0
  287. package/types/src/{lib/utils/utils.node.d.ts → license/runtime.node.d.ts} +9 -12
  288. package/types/src/listener/IListener.d.ts +12 -7
  289. package/types/src/listener/ListenerEmitter.d.ts +46 -5
  290. package/types/src/model/AbstractModel.d.ts +14 -5
  291. package/types/src/movable/AbstractMovableContent.d.ts +182 -0
  292. package/types/src/movable/CustomElement.d.ts +4 -5
  293. package/types/src/movable/ErrorContent.d.ts +49 -0
  294. package/types/src/movable/FormControl.d.ts +285 -0
  295. package/types/src/movable/GroupMember.d.ts +87 -0
  296. package/types/src/movable/ICustomElement.d.ts +7 -2
  297. package/types/src/movable/IErrorContent.d.ts +23 -0
  298. package/types/src/movable/IFormControl.d.ts +455 -0
  299. package/types/src/movable/IMovable.d.ts +378 -46
  300. package/types/src/movable/IMovableCollection.d.ts +63 -3
  301. package/types/src/movable/Movable.d.ts +149 -49
  302. package/types/src/movable/MovableCollection.d.ts +15 -8
  303. package/types/src/movable/MovableContentRegistry.d.ts +113 -0
  304. package/types/src/movable/_BuiltInContents.d.ts +14 -0
  305. package/types/src/movable/_ContentFactory.d.ts +35 -0
  306. package/types/src/movable/_DrawnBounds.d.ts +37 -0
  307. package/types/src/movable/_InsertableCollection.d.ts +28 -0
  308. package/types/src/movable/_MovableUtils.d.ts +5 -0
  309. package/types/src/movable/_PendingContent.d.ts +25 -0
  310. package/types/src/movable/_PlacementUtils.d.ts +55 -0
  311. package/types/src/movable/_RotatedFrame.d.ts +20 -0
  312. package/types/src/movable/index.d.ts +7 -1
  313. package/types/src/named/AbstractNamed.d.ts +1 -1
  314. package/types/src/named/INamed.d.ts +4 -1
  315. package/types/src/named/INamedCollection.d.ts +26 -0
  316. package/types/src/named/NamedCollection.d.ts +16 -15
  317. package/types/src/numFmt/BuiltInFormats.d.ts +20 -7
  318. package/types/src/numFmt/IFormatEngine.d.ts +2 -0
  319. package/types/src/numFmt/NumfmtFormatEngine.d.ts +2 -0
  320. package/types/src/numFmt/_FormatCell.d.ts +11 -2
  321. package/types/src/numFmt/_NumFmtUtils.d.ts +0 -1
  322. package/types/src/numFmt/vendor/numfmt/_sheetxl.d.ts +6 -0
  323. package/types/src/outline/IOutline.d.ts +186 -0
  324. package/types/src/outline/Outline.d.ts +157 -0
  325. package/types/src/outline/index.d.ts +2 -0
  326. package/types/src/person/IPerson.d.ts +99 -0
  327. package/types/src/person/IPersonCollection.d.ts +51 -0
  328. package/types/src/person/Person.d.ts +32 -0
  329. package/types/src/person/PersonCollection.d.ts +49 -0
  330. package/types/src/person/index.d.ts +4 -0
  331. package/types/src/picture/IPicture.d.ts +33 -3
  332. package/types/src/picture/Picture.d.ts +33 -13
  333. package/types/src/pivot/IPivotTable.d.ts +72 -0
  334. package/types/src/pivot/IPivotTableCollection.d.ts +25 -0
  335. package/types/src/pivot/PivotCache.d.ts +34 -0
  336. package/types/src/pivot/PivotTable.d.ts +61 -0
  337. package/types/src/pivot/PivotTableCollection.d.ts +25 -0
  338. package/types/src/pivot/_PivotXml.d.ts +24 -0
  339. package/types/src/pivot/index.d.ts +6 -0
  340. package/types/src/primitives/CompositeRangeStats.d.ts +2 -0
  341. package/types/src/primitives/Criteria.d.ts +1 -1
  342. package/types/src/primitives/Grouping.d.ts +65 -0
  343. package/types/src/primitives/LambdaBrand.d.ts +26 -0
  344. package/types/src/primitives/PrimitiveUtils.d.ts +56 -19
  345. package/types/src/primitives/Range.d.ts +133 -25
  346. package/types/src/primitives/RangeStats.d.ts +30 -2
  347. package/types/src/primitives/ReferenceRange.d.ts +44 -0
  348. package/types/src/primitives/Runtime.d.ts +15 -2
  349. package/types/src/primitives/environment.browser.d.ts +9 -0
  350. package/types/src/primitives/environment.node.d.ts +10 -0
  351. package/types/src/primitives/stats/AggregateStats.d.ts +49 -15
  352. package/types/src/primitives/stats/Cancellation.d.ts +13 -0
  353. package/types/src/primitives/stats/FrequencyStats.d.ts +10 -1
  354. package/types/src/primitives/stats/LookupIndex.d.ts +46 -0
  355. package/types/src/primitives/stats/Ranked.d.ts +1 -1
  356. package/types/src/primitives/stats/SortedNumbers.d.ts +4 -2
  357. package/types/src/primitives/stats/index.d.ts +1 -0
  358. package/types/src/print/IPrint.d.ts +0 -22
  359. package/types/src/protectedRange/IProtectedRange.d.ts +4 -0
  360. package/types/src/protectedRange/IProtectedRangeCollection.d.ts +2 -0
  361. package/types/src/protectedRange/ProtectedRange.d.ts +1 -4
  362. package/types/src/protectedRange/ProtectedRangeCollection.d.ts +19 -8
  363. package/types/src/protection/DefaultProtection.d.ts +12 -1
  364. package/types/src/protection/IProtection.d.ts +36 -2
  365. package/types/src/reference/ReferenceUtils.d.ts +80 -0
  366. package/types/src/reference/index.d.ts +2 -0
  367. package/types/src/resource/IResource.d.ts +21 -1
  368. package/types/src/resource/IResourceCollection.d.ts +9 -1
  369. package/types/src/resource/ResourceCollection.d.ts +6 -6
  370. package/types/src/scripting/FunctionCollection.d.ts +49 -15
  371. package/types/src/scripting/IFunctionCollection.d.ts +62 -32
  372. package/types/src/scripting/IModule.d.ts +25 -0
  373. package/types/src/scripting/IModuleCollection.d.ts +17 -0
  374. package/types/src/scripting/IScript.d.ts +28 -26
  375. package/types/src/scripting/Module.d.ts +34 -6
  376. package/types/src/scripting/ModuleCollection.d.ts +17 -12
  377. package/types/src/scripting/Runtime.d.ts +15 -0
  378. package/types/src/scripting/Scripts.d.ts +3 -7
  379. package/types/src/scripting/TypedFunction.d.ts +154 -18
  380. package/types/src/scripting/_FunctionIndex.d.ts +8 -3
  381. package/types/src/scripting/_ModuleUtils.d.ts +11 -1
  382. package/types/src/scripting/_ScriptUtils.d.ts +3 -0
  383. package/types/src/scripting/declarations.browser.d.ts +10 -0
  384. package/types/src/scripting/declarations.d.ts +49 -0
  385. package/types/src/scripting/declarations.node.d.ts +9 -0
  386. package/types/src/scripting/index.d.ts +3 -0
  387. package/types/src/selection/IMovableSelection.d.ts +148 -0
  388. package/types/src/selection/IRangeSelection.d.ts +9 -4
  389. package/types/src/selection/MovableSelection.d.ts +48 -0
  390. package/types/src/selection/RangeSelection.d.ts +15 -0
  391. package/types/src/selection/index.d.ts +1 -0
  392. package/types/src/shape/GeometryPreset.d.ts +197 -0
  393. package/types/src/shape/IGeometry.d.ts +380 -0
  394. package/types/src/shape/IShape.d.ts +341 -194
  395. package/types/src/shape/IShapeStyle.d.ts +135 -0
  396. package/types/src/shape/Shape.d.ts +107 -21
  397. package/types/src/shape/ShapeStyleUtils.d.ts +54 -0
  398. package/types/src/shape/_ConnectorFrame.d.ts +32 -0
  399. package/types/src/shape/_ConnectorRoute.d.ts +33 -0
  400. package/types/src/shape/_Connectors.d.ts +108 -0
  401. package/types/src/shape/_Geometry.d.ts +14 -0
  402. package/types/src/shape/_GeometryLoader.d.ts +21 -0
  403. package/types/src/shape/_ShapeStyle.d.ts +70 -0
  404. package/types/src/shape/_builtIn/_BuiltInChunks.d.ts +10 -0
  405. package/types/src/shape/_builtIn/_BuiltInDef.d.ts +9 -0
  406. package/types/src/shape/_builtIn/arrows.d.ts +6 -0
  407. package/types/src/shape/_builtIn/basic.d.ts +6 -0
  408. package/types/src/shape/_builtIn/callouts.d.ts +6 -0
  409. package/types/src/shape/_builtIn/flowchart.d.ts +6 -0
  410. package/types/src/shape/_builtIn/lines.d.ts +6 -0
  411. package/types/src/shape/_builtIn/math.d.ts +6 -0
  412. package/types/src/shape/_builtIn/other.d.ts +6 -0
  413. package/types/src/shape/_builtIn/rectangles.d.ts +6 -0
  414. package/types/src/shape/_builtIn/starsBanners.d.ts +6 -0
  415. package/types/src/shape/geometry/_strokeEnds.d.ts +7 -0
  416. package/types/src/shape/geometry/format.d.ts +3 -0
  417. package/types/src/shape/geometry/geometry.d.ts +85 -0
  418. package/types/src/shape/geometry/guides.d.ts +54 -0
  419. package/types/src/shape/geometry/handles.d.ts +14 -0
  420. package/types/src/shape/geometry/index.d.ts +7 -0
  421. package/types/src/shape/geometry/lineEnds.d.ts +54 -0
  422. package/types/src/shape/geometry/paths.d.ts +35 -0
  423. package/types/src/shape/geometry/segments.d.ts +114 -0
  424. package/types/src/shape/index.d.ts +3 -0
  425. package/types/src/sheet/CellRegion.d.ts +6 -0
  426. package/types/src/sheet/ICellContainerOptions.d.ts +50 -0
  427. package/types/src/sheet/ISheet.d.ts +197 -50
  428. package/types/src/sheet/ISheetCollection.d.ts +2 -5
  429. package/types/src/sheet/NamedCellRange.d.ts +16 -7
  430. package/types/src/sheet/NamedRange.d.ts +8 -0
  431. package/types/src/sheet/Sheet.d.ts +915 -138
  432. package/types/src/sheet/SheetCell.d.ts +92 -32
  433. package/types/src/sheet/SheetCollection.d.ts +19 -8
  434. package/types/src/sheet/SheetRange.d.ts +90 -18
  435. package/types/src/sheet/SheetRanges.d.ts +22 -9
  436. package/types/src/sheet/_CellBuffer.d.ts +214 -0
  437. package/types/src/sheet/_HeldFormula.d.ts +69 -0
  438. package/types/src/sheet/_InvalidSheetRange.d.ts +7 -7
  439. package/types/src/sheet/_ListenerAnchor.d.ts +104 -0
  440. package/types/src/sheet/_RangeStateSweep.d.ts +16 -0
  441. package/types/src/sheet/_ScalarListFactory.d.ts +61 -0
  442. package/types/src/sheet/_SheetAutoFillUtils.d.ts +74 -0
  443. package/types/src/sheet/_SheetAutoFitUtils.d.ts +2 -2
  444. package/types/src/sheet/_SheetEvents.d.ts +43 -0
  445. package/types/src/sheet/_SheetFilterUtils.d.ts +49 -1
  446. package/types/src/sheet/_SheetIntents.d.ts +296 -0
  447. package/types/src/sheet/_SheetMutations.d.ts +182 -62
  448. package/types/src/sheet/_SheetStateReader.d.ts +19 -13
  449. package/types/src/sheet/_SheetStateTypes.d.ts +83 -78
  450. package/types/src/sheet/_SheetUtils.d.ts +39 -22
  451. package/types/src/sheet/_WatchAnchor.d.ts +93 -0
  452. package/types/src/sheet/spatial/HeldFormulaEntry.d.ts +36 -0
  453. package/types/src/sheet/spatial/index.d.ts +1 -0
  454. package/types/src/sheet/style/SheetCellStyle.d.ts +209 -304
  455. package/types/src/sheet/style/SheetDirectStyle.d.ts +30 -19
  456. package/types/src/sheet/style/SheetNamedStyle.d.ts +17 -17
  457. package/types/src/sheet/style/SheetTableStyle.d.ts +5 -5
  458. package/types/src/sheet/style/_Resolvers.d.ts +14 -8
  459. package/types/src/sheet/style/_StyleUtils.d.ts +38 -8
  460. package/types/src/sheetHeader/ISheetHeader.d.ts +94 -53
  461. package/types/src/sheetHeader/SheetCellHeader.d.ts +4 -0
  462. package/types/src/sheetHeader/SheetHeader.d.ts +42 -22
  463. package/types/src/sheetHeader/_HeaderMetrics.d.ts +37 -0
  464. package/types/src/sheetHeader/_HeaderUtils.d.ts +5 -3
  465. package/types/src/sheetProtection/ISheetProtection.d.ts +41 -7
  466. package/types/src/sheetProtection/SheetProtection.d.ts +12 -0
  467. package/types/src/sheetView/ISheetView.d.ts +69 -15
  468. package/types/src/sheetView/SheetView.d.ts +20 -11
  469. package/types/src/slicer/ISlicer.d.ts +304 -17
  470. package/types/src/slicer/ISlicerStyle.d.ts +109 -0
  471. package/types/src/slicer/Slicer.d.ts +128 -13
  472. package/types/src/slicer/SlicerStyle.d.ts +25 -0
  473. package/types/src/slicer/_BuiltInSlicerStyles.d.ts +13 -0
  474. package/types/src/slicer/_SlicerUtils.d.ts +30 -0
  475. package/types/src/slicer/index.d.ts +1 -0
  476. package/types/src/sort/ISort.d.ts +4 -2
  477. package/types/src/string/IStringCollection.d.ts +5 -0
  478. package/types/src/string/StringCollection.d.ts +6 -6
  479. package/types/src/style/{IStyle.d.ts → ICellStyle.d.ts} +72 -52
  480. package/types/src/style/INamedStyleCollection.d.ts +72 -0
  481. package/types/src/style/ISlicerStyleCollection.d.ts +77 -0
  482. package/types/src/style/IStyleCollection.d.ts +91 -60
  483. package/types/src/style/ITableStyleCollection.d.ts +89 -0
  484. package/types/src/style/NamedStyleCollection.d.ts +39 -0
  485. package/types/src/style/SlicerStyleCollection.d.ts +46 -0
  486. package/types/src/style/StyleCollection.d.ts +81 -26
  487. package/types/src/style/TableStyleCollection.d.ts +49 -0
  488. package/types/src/style/_BuiltInStyleDefs.d.ts +6 -6
  489. package/types/src/style/_BuiltInStyleNames.d.ts +2 -2
  490. package/types/src/style/index.d.ts +7 -1
  491. package/types/src/table/AnchoredTable.d.ts +701 -72
  492. package/types/src/table/AutoTable.d.ts +7 -5
  493. package/types/src/table/ITable.d.ts +261 -34
  494. package/types/src/table/ITableCollection.d.ts +12 -0
  495. package/types/src/table/ITableStyle.d.ts +37 -37
  496. package/types/src/table/TableCollection.d.ts +19 -8
  497. package/types/src/table/_FilterField.d.ts +19 -6
  498. package/types/src/table/_NamedTable.d.ts +17 -1
  499. package/types/src/table/_NamedTableSource.d.ts +1 -0
  500. package/types/src/table/_SortField.d.ts +2 -0
  501. package/types/src/table/_TableColumn.d.ts +13 -2
  502. package/types/src/table/_TableMessages.d.ts +1 -0
  503. package/types/src/table/_TableUtils.d.ts +40 -0
  504. package/types/src/text/Bullet.d.ts +4 -0
  505. package/types/src/text/IText.d.ts +182 -0
  506. package/types/src/text/ITextFrame.d.ts +110 -1
  507. package/types/src/text/TextBoxAlignment.d.ts +25 -16
  508. package/types/src/text/TextFrame.d.ts +4 -0
  509. package/types/src/text/TextLine.d.ts +4 -0
  510. package/types/src/text/TextParagraph.d.ts +4 -0
  511. package/types/src/text/TextRotation.d.ts +3 -3
  512. package/types/src/text/TextRun.d.ts +9 -0
  513. package/types/src/text/TextStacked.d.ts +83 -0
  514. package/types/src/text/index.d.ts +1 -0
  515. package/types/src/text/richtext/IRichText.d.ts +36 -0
  516. package/types/src/text/richtext/IStyledFont.d.ts +18 -18
  517. package/types/src/text/richtext/index.d.ts +1 -0
  518. package/types/src/theme/ITheme.d.ts +45 -4
  519. package/types/src/theme/IThemeCollection.d.ts +2 -0
  520. package/types/src/theme/ThemeCollection.d.ts +11 -7
  521. package/types/src/theme/_OfficeFormatScheme.d.ts +3 -0
  522. package/types/src/transaction/ITransaction.d.ts +258 -45
  523. package/types/src/transaction/Transaction.d.ts +101 -11
  524. package/types/src/transaction/TransactionUndoManager.d.ts +4 -1
  525. package/types/src/type/AbstractCollection.d.ts +101 -0
  526. package/types/src/type/ICollection.d.ts +117 -0
  527. package/types/src/type/ITypes.d.ts +9 -7
  528. package/types/src/type/index.d.ts +1 -0
  529. package/types/src/utils/_CSSUtils.d.ts +3 -3
  530. package/types/src/wasm/_sdkWasm.d.ts +7 -0
  531. package/types/src/wasm/index.d.ts +2 -0
  532. package/types/src/wasm/sdkWasm.d.ts +29 -0
  533. package/types/src/workbook/IWorkbook.d.ts +180 -40
  534. package/types/src/workbook/Workbook.d.ts +123 -10
  535. package/types/src/workbook/_WorkbookIntents.d.ts +36 -0
  536. package/types/src/workbookProtection/IWorkbookProtection.d.ts +7 -0
  537. package/types/src/workbookProtection/WorkbookProtection.d.ts +3 -0
  538. package/types/src/workbookView/IWorkbookView.d.ts +12 -0
  539. package/types/src/workbookView/WorkbookView.d.ts +5 -0
  540. package/browser/cjs/B7_pDFYCVzt-3hUs.cjs +0 -1
  541. package/browser/cjs/BatsV2UUraVDCRXm.cjs +0 -57
  542. package/browser/cjs/CUz53T65cRGQRgvv.cjs +0 -33
  543. package/browser/cjs/DU0kYUtdFa3jK-im.cjs +0 -1
  544. package/browser/cjs/Dv3x6zut1ZRUt3IF.cjs +0 -10
  545. package/browser/cjs/Dv4yIPLV98M5zLHa.cjs +0 -1
  546. package/browser/cjs/a0Z-SXs_N71CtqYb.cjs +0 -1
  547. package/browser/cjs/index.cjs +0 -3
  548. package/browser/esm/6JKSOvc5czaQB2Bj.mjs +0 -109
  549. package/browser/esm/BtuJ9AGzeURtAsGo.mjs +0 -51241
  550. package/browser/esm/DGU6sM25u0EWCKl1.mjs +0 -824
  551. package/browser/esm/f2G3QRgEbvFJcoa2.mjs +0 -4436
  552. package/node/esm/-pxdn3M3tc6PLHs7.mjs +0 -114
  553. package/node/esm/0n5bslM9jhO1JnI2.mjs +0 -843
  554. package/types/src/cellRange/_GraphNode.d.ts +0 -38
  555. package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +0 -12
  556. package/types/src/dataValidation/_Utils.d.ts +0 -10
  557. package/types/src/lib/utils/_Utils.d.ts +0 -27
  558. package/types/src/lib/utils/utils.browser.d.ts +0 -33
  559. package/types/src/movable/IGroup.d.ts +0 -30
  560. package/types/src/movable/IMovableSelection.d.ts +0 -49
  561. package/types/src/sheet/listener/RangesListener.d.ts +0 -32
  562. package/types/src/sheet/listener/RangesListenerEntry.d.ts +0 -19
  563. package/types/src/sheet/listener/index.d.ts +0 -3
  564. /package/types/src/{lib/utils → license}/banner.d.ts +0 -0
@@ -4,17 +4,18 @@ import { ITypes } from '../type';
4
4
  import { IListener } from '../listener';
5
5
  import { ITransaction } from '../transaction';
6
6
  import { IHyperlink } from '../hyperlink';
7
- import { IComment } from '../comment';
7
+ import { IComment, ICommentCollection } from '../comment';
8
8
  import { ISort } from '../sort';
9
9
  import { ICondition } from '../condition';
10
10
  import { IAutoFill } from '../autoFill';
11
- import { IStyle } from '../style';
11
+ import { ICellStyle } from '../style';
12
12
  import { ICalculation } from '../calculation';
13
13
  import { ITable, ITableCollection } from '../table';
14
14
  import { IMovable, IMovableCollection } from '../movable';
15
15
  import { IDataValidation, IDataValidationCollection } from '../dataValidation';
16
16
  import { IConditionalFormat } from '../conditionalFormat/IConditionalFormat';
17
17
  import { IConditionalFormatCollection } from '../conditionalFormat/IConditionalFormatCollection';
18
+ import { IProtectedRange, IProtectedRangeCollection } from '../protectedRange';
18
19
  import { ISheet } from '../sheet';
19
20
  import { ICell } from '../cell';
20
21
  import { ICellRanges } from './ICellRanges';
@@ -66,6 +67,18 @@ export interface ICellRange {
66
67
  * * @returns An array of 'IRange.Coords` that contain merges.
67
68
  */
68
69
  getMerges(): IRange.Coords[];
70
+ /**
71
+ * Returns the unlocked ranges (Excel's *Allow Edit Ranges*) that overlap the range.
72
+ *
73
+ * @param options The filters of {@link IProtectedRangeCollection.getItems} without `address` —
74
+ * this range is the address.
75
+ *
76
+ * @remarks
77
+ * See {@link getConditionalFormats} for the overlap and one-entry-per-item rules, which are the
78
+ * same for every ranged item lookup. A cell can also be unlocked by its style
79
+ * (`ICellStyle.getProtection()`); {@link ICell.isEditAllowed} answers for both.
80
+ */
81
+ getUnlocked(options?: ICellRange.GetItemsOptions<IProtectedRangeCollection.GetItemsOptions>): IProtectedRange[];
69
82
  /**
70
83
  * Returns the {@link IConditionalFormat}s that overlap the range.
71
84
  *
@@ -96,6 +109,17 @@ export interface ICellRange {
96
109
  * same for every ranged item lookup.
97
110
  */
98
111
  getDataValidations(options?: ICellRange.GetItemsOptions<IDataValidationCollection.GetItemsOptions>): IDataValidation[];
112
+ /**
113
+ * Returns the {@link IComment}s on cells within the range.
114
+ *
115
+ * @param options The filters of {@link ICommentCollection.getItems} without `address` — this
116
+ * range is the address.
117
+ *
118
+ * @remarks
119
+ * The items are the sheet's — a scoped view of `getSheet().getComments()`, not a copy. A
120
+ * comment is on one cell, so each appears once, in reading order.
121
+ */
122
+ getComments(options?: ICellRange.GetItemsOptions<ICommentCollection.GetItemsOptions>): IComment[];
99
123
  /**
100
124
  * Returns the {@link ITable}s that overlap the range.
101
125
  *
@@ -164,7 +188,7 @@ export interface ICellRange {
164
188
  * When querying the style the values will always be for the top left. However the
165
189
  * set values work for the entire range.
166
190
  */
167
- getStyle(): IStyle;
191
+ getStyle(): ICellStyle;
168
192
  /**
169
193
  * Returns the formula for the range.
170
194
  *
@@ -173,13 +197,73 @@ export interface ICellRange {
173
197
  * @remarks
174
198
  * When querying the formula this will always be for the top left. However the
175
199
  * set values work for the entire range.
200
+ *
201
+ * Returns the formula object, or `null` for a cell without one. For formula text across the
202
+ * whole range use {@link ICellRange.getFormulas}, which reads `''` for cells without a formula.
176
203
  */
177
204
  getFormula(address?: ICell.Address): ICalculation.IFormula;
205
+ /**
206
+ * Returns the formula text of every cell in the range.
207
+ *
208
+ * @returns A row-major 2D array in the shape of the range.
209
+ *
210
+ * @remarks
211
+ * - Each formula reads as entered, with its leading `=` (`'=SUM(A1:A3)'`), so the result can be
212
+ * passed straight back to {@link ICellRange.setFormulas}.
213
+ * - A cell without a formula reads as an empty string `''`, not `null`. This differs from
214
+ * {@link ICell.getFormulaText} and {@link ICellRange.getFormula}, which return `null`.
215
+ * - Throws if the range holds more than `10000` cells, like {@link ICellRange.getValues}.
216
+ *
217
+ * @see {@link ICellRange.getFormula}
218
+ */
219
+ getFormulas(): string[][];
220
+ /**
221
+ * Returns the number format of the top-left cell.
222
+ *
223
+ * @remarks
224
+ * Reads the top-left cell, the same contract as {@link ICellRange.getValue} and
225
+ * {@link ICellRange.getStyle}. A cell without an authored format reads `'General'`.
226
+ *
227
+ * @see {@link ICellStyle.getNumberFormat}
228
+ */
229
+ getNumberFormat(): string;
230
+ /**
231
+ * Returns the number format of every cell in the range.
232
+ *
233
+ * @returns A row-major 2D array in the shape of the range.
234
+ *
235
+ * @remarks
236
+ * - A cell without an authored format reads `'General'`.
237
+ * - Throws if the range holds more than `10000` cells, like {@link ICellRange.getValues}.
238
+ *
239
+ * @see {@link ICellStyle.getNumberFormat}
240
+ */
241
+ getNumberFormats(): string[][];
242
+ /**
243
+ * Sets one number format on every cell in the range.
244
+ *
245
+ * @param numFmt The format code, or `null` to clear it.
246
+ *
247
+ * @see {@link ICellStyle.setNumberFormat}
248
+ */
249
+ setNumberFormat(numFmt: string | null, options?: ICellStyle.UpdateOptions): this;
250
+ /**
251
+ * Sets the number format of each cell in the range.
252
+ *
253
+ * @param formats Format codes in row-major order.
254
+ *
255
+ * @remarks
256
+ * An array smaller than the range writes only the cells it covers, as {@link ICellRange.setValues} does.
257
+ *
258
+ * @see {@link ICellRange.setNumberFormat}
259
+ */
260
+ setNumberFormats(formats: readonly string[][], options?: ICellRange.UpdateCellsOptions): this;
178
261
  /**
179
262
  * Parses a formula expression and returns a *transient* formula object anchored at this range's
180
263
  * top-left cell.
181
264
  *
182
265
  * @param expression The formula expression to parse.
266
+ * @param options Optional parse options; the expression is storage text unless `target` is `'display'`.
183
267
  *
184
268
  * @remarks
185
269
  * The anchored convenience form: equivalent to
@@ -196,7 +280,7 @@ export interface ICellRange {
196
280
  * @see {@link ISheet.createFormula}
197
281
  * @see {@link ICalculation.createFormula}
198
282
  */
199
- createFormula(expression: string): ICalculation.IFormula;
283
+ createFormula(expression: string, options?: ICalculation.CreateFormulaOptions): ICalculation.IFormula;
200
284
  /**
201
285
  * Returns the intersection of the current range and the specified range.
202
286
  *
@@ -486,6 +570,27 @@ export interface ICellRange {
486
570
  * merges.
487
571
  */
488
572
  getDefaultSortCriteria(axis?: IRange.Axis, cell?: ICell.Address): ISort.DefaultSortCriteria | null;
573
+ /**
574
+ * Returns the fill this range implies — which cells it would read, which it would cover, the
575
+ * fill types that can be offered for it, and the one to open on.
576
+ *
577
+ * @param direction Which way the series runs. Defaults to the range's own shape: a single row
578
+ * runs `Right`, anything else runs `Down` — or, with a `destination`, to the way it extends.
579
+ * @param destination Fill the range as it is to here — the fill handle's drag. The template is
580
+ * then the WHOLE range, blanks included, rather than its leading run, and `destination` must
581
+ * extend it on exactly one edge as {@link autoFill} requires.
582
+ * @returns `IAutoFill.DefaultCriteria`, or `null` where there is nowhere to fill: the range is
583
+ * one cell deep along `direction`, or `destination` does not extend it — which is also how a
584
+ * surface learns that a direction is not on offer at all.
585
+ * @throws `Error` If `destination` does not share three edges with the range, or `direction` is
586
+ * not the way it extends.
587
+ *
588
+ * @remarks
589
+ * Useful for displaying options to the ui — a Series dialog, or a fill menu deciding what to
590
+ * grey. Nothing is filled and nothing is committed; see {@link autoFill} to run one, and
591
+ * {@link AutoFill.toFillOptions} for the options a chosen {@link IAutoFill.Preset} amounts to.
592
+ */
593
+ getDefaultAutoFillCriteria(direction?: IRange.Direction, destination?: ICellRange.Address): IAutoFill.DefaultCriteria | null;
489
594
  /**
490
595
  * Returns the ranges immediately referenced by the formulas in this range.
491
596
  *
@@ -494,39 +599,39 @@ export interface ICellRange {
494
599
  * rather than a fan-out — the calculation graph is indexed by range, so the cell form is this
495
600
  * one over a 1×1.
496
601
  *
497
- * - Returns `null` when there are none.
602
+ * - Resolves `null` when there are none; see {@link ICell.getDirectPrecedents} for when it resolves.
498
603
  * - **Not filtered against the range itself.** A block containing both a formula and its input
499
604
  * lists that input; "what does this block read" and "what does it read from outside" are
500
605
  * different questions, and the second is {@link getDifferences} away.
501
606
  */
502
- getDirectPrecedents(): ICellRanges | null;
607
+ getDirectPrecedents(): Promise<ICellRanges | null>;
503
608
  /**
504
609
  * Returns the cells that directly reference any cell in this range.
505
610
  *
506
611
  * @remarks
507
612
  * The range form of {@link ICell.getDirectDependents} — the immediate consumers of anything
508
- * this range produces. Returns `null` when there are none.
613
+ * this range produces. Resolves `null` when there are none.
509
614
  */
510
- getDirectDependents(): ICellRanges | null;
615
+ getDirectDependents(): Promise<ICellRanges | null>;
511
616
  /**
512
617
  * Returns all ranges contributing to this range's values, through the full calculation chain.
513
618
  *
514
619
  * @remarks
515
620
  * The range form of {@link ICell.getPrecedents}: a recursive walk upstream to the root data
516
- * sources. Returns `null` when there are none.
621
+ * sources. Resolves `null` when there are none.
517
622
  *
518
623
  * **Reach for this before editing.** The precedents of a block are what its values depend on,
519
624
  * so they are what a change to it can be wrong about.
520
625
  */
521
- getPrecedents(): ICellRanges | null;
626
+ getPrecedents(): Promise<ICellRanges | null>;
522
627
  /**
523
628
  * Returns all cells eventually affected by this range, through the full calculation chain.
524
629
  *
525
630
  * @remarks
526
631
  * The range form of {@link ICell.getDependents}: a recursive walk downstream giving the total
527
- * blast radius of a write here. Returns `null` when there are none.
632
+ * blast radius of a write here. Resolves `null` when there are none.
528
633
  */
529
- getDependents(): ICellRanges | null;
634
+ getDependents(): Promise<ICellRanges | null>;
530
635
  /**
531
636
  * Returns the statistics for the range.
532
637
  *
@@ -541,12 +646,6 @@ export interface ICellRange {
541
646
  * indexes) — they do not overlap.
542
647
  */
543
648
  getStats(options?: ICellRange.GetStatsOptions): IRangeStats;
544
- /**
545
- * Returns a count for of values.
546
- *
547
- * @deprecated Use `getStats`.
548
- */
549
- getCount(): number;
550
649
  /**
551
650
  * Returns per-feature cell counts for the range.
552
651
  *
@@ -595,13 +694,15 @@ export interface ICellRange {
595
694
  * feature-bearing side of the partition.
596
695
  * - **Nothing is computed until the result is iterated or counted.** The returned
597
696
  * {@link ICellRegions} is a lazily backed handle, so building the query costs nothing.
598
- * - **`Contentful` regions are maximal rectangles.** Every other feature's stored blocks stand
599
- * for a payload two adjacent blocks can disagree about — a fill's color, a formula's
600
- * expression — so distinct blocks stay distinct or the region stops being uniform. Occupancy
601
- * is a boolean: any two occupied rectangles agree, so its blocks carry no information and are
602
- * coalesced. A solid `A1:D4` is one region, not the four column strips it is stored as.
603
- * Refinement is unaffected — `[Contentful, Fill]` still partitions by fill and still excludes
604
- * unoccupied cells.
697
+ * - **Regions follow the payload, not how it was written.** A solid `A1:D4` is one
698
+ * `Contentful` region, and a number format applied in three strokes (or loaded from a file
699
+ * that stored it in pieces) is one `NumberFormat` region. The same holds for `Fill` and the
700
+ * other content-style features (`Font`, `Alignment`, `Protection`), and each of those splits
701
+ * only on its own part: a bold column inside a uniform number format does not split the
702
+ * `NumberFormat` region. `Borders` is the exception — a border's edges belong to the block
703
+ * it was applied to, so two equal boxes side by side are two regions. Refinement is
704
+ * unaffected — `[Contentful, Fill]` still partitions by fill and still excludes unoccupied
705
+ * cells.
605
706
  * - Every {@link Feature} partitions — there is no throwing member left. `DateFormat` splits by
606
707
  * format string, the same way `Fill` splits by color; `Error` splits by error value, backed
607
708
  * by the reconciled error index. Scalar kinds (`String`/`Number`/`Boolean`) are not in this
@@ -636,7 +737,7 @@ export interface ICellRange {
636
737
  * @remarks
637
738
  * - `null` values will clear the corresponding cells.
638
739
  * - `undefined` values will be ignored, leaving the existing cell values unchanged.
639
- * - If an array is passed the values will be in row-major order and will repeat if the range is larger than the array
740
+ * - If an array is passed the values will be in row-major order. An array smaller than the range writes only the cells it covers.
640
741
  * - If a single value is passed in it will repeat the entire range.
641
742
  */
642
743
  setValues(values: ICellRange.ValuesUpdate, options?: ICellRange.SetValuesOptions): this;
@@ -668,11 +769,24 @@ export interface ICellRange {
668
769
  * @returns The current `ICellRange`.
669
770
  *
670
771
  * @remarks
671
- * Identical behavior to setValue. Exists for ergonomics
772
+ * Identical behavior to setValue. Exists for ergonomics.
773
+ *
672
774
  * @see
673
775
  * {@link ICellRange.setValue}
674
776
  */
675
777
  setFormula(value: ICellRange.ValuesUpdateOrCallback, options?: ICellRange.SetValuesOptions): this;
778
+ /**
779
+ * Sets the formula of each cell in the range.
780
+ *
781
+ * @param formulas Formula text in row-major order, each with a leading `=`.
782
+ *
783
+ * @remarks
784
+ * The same write as {@link ICellRange.setValues}: text with a leading `=` is entered as a
785
+ * formula, and an array smaller than the range writes only the cells it covers.
786
+ *
787
+ * @see {@link ICellRange.getFormulas}
788
+ */
789
+ setFormulas(formulas: readonly string[][], options?: ICellRange.SetValuesOptions): this;
676
790
  /**
677
791
  * Re-evaluates and formulas within the range.
678
792
  *
@@ -718,10 +832,68 @@ export interface ICellRange {
718
832
  * @returns The current `ICellRange`.
719
833
  */
720
834
  autoFit(options?: ICellRange.AutoFitOptions): this;
835
+ /**
836
+ * Groups the rows or columns of the range: each one moves one outline level deeper.
837
+ *
838
+ * @param axis Whether to group the rows or the columns. When omitted, entire rows group the rows,
839
+ * entire columns group the columns, and any other range groups both.
840
+ * @returns The current `ICellRange`.
841
+ * @throws `Error` If a row or column in the range is already at the deepest level, `7`. Nothing is
842
+ * grouped.
843
+ *
844
+ * @see {@link ISheet.getOutline}
845
+ */
846
+ group(axis?: IRange.Axis, options?: ITransaction.OperationOptions): this;
847
+ /**
848
+ * Ungroups the rows or columns of the range: each grouped one moves one outline level out.
849
+ * Rows or columns that are not grouped are left alone.
850
+ *
851
+ * @param axis Whether to ungroup the rows or the columns. When omitted, chosen as for
852
+ * {@link group}.
853
+ * @returns The current `ICellRange`.
854
+ */
855
+ ungroup(axis?: IRange.Axis, options?: ITransaction.OperationOptions): this;
856
+ /**
857
+ * Expands the groups the range selects: those whose summary row or column is in the range or,
858
+ * when there are none, the innermost groups the range meets.
859
+ *
860
+ * @param axis Whether to expand row groups or column groups. Inferred when the range is entire
861
+ * rows or entire columns; required otherwise.
862
+ * @returns The current `ICellRange`.
863
+ * @throws `Error` If the axis is not given and cannot be inferred.
864
+ *
865
+ * @remarks
866
+ * Groups nested inside that are collapsed stay collapsed.
867
+ */
868
+ showGroupDetails(axis?: IRange.Axis, options?: ITransaction.OperationOptions): this;
869
+ /**
870
+ * Collapses the groups the range selects, chosen as for {@link showGroupDetails}: their details are
871
+ * hidden.
872
+ *
873
+ * @param axis Whether to collapse row groups or column groups. Inferred as for
874
+ * {@link showGroupDetails}.
875
+ * @returns The current `ICellRange`.
876
+ * @throws `Error` If the axis is not given and cannot be inferred.
877
+ */
878
+ hideGroupDetails(axis?: IRange.Axis, options?: ITransaction.OperationOptions): this;
879
+ /**
880
+ * Removes the outline levels from the rows and columns of the range. Hidden rows and columns
881
+ * stay hidden.
882
+ *
883
+ * @param axes Which levels to remove. Default `IRange.AxisSelection.Both`.
884
+ * @returns The current `ICellRange`.
885
+ *
886
+ * @remarks
887
+ * The counterpart of Excel's `Range.ClearOutline`: both axes over the range's rows and columns,
888
+ * so entire rows also clear every column's levels unless `axes` names the rows, and a single
889
+ * cell clears the whole sheet. To outline a sheet from its formulas see
890
+ * {@link IOutline.autoOutline}.
891
+ */
892
+ clearGroups(axes?: IRange.AxisSelection, options?: ITransaction.OperationOptions): this;
721
893
  /**
722
894
  * Clear the range.
723
895
  *
724
- * @param applyTo The type of content to clear. Default `ICell.Content.Values`
896
+ * @param applyTo The type of content to clear. Defaults to all`
725
897
  * @returns The current `ICellRange`.
726
898
  */
727
899
  clear(applyTo?: ICell.Content, options?: ITransaction.OperationOptions): this;
@@ -736,15 +908,18 @@ export interface ICellRange {
736
908
  */
737
909
  setHyperlink(hyperlink: IHyperlink.Update, options?: ITransaction.OperationOptions): this;
738
910
  /**
739
- * Update the comments for the range.
911
+ * Sets or clears the comment on the range's first cell.
740
912
  *
741
- * @param comments Comment properties
913
+ * @param comments Comment modifiers, a plain string as the content, or `null` to remove.
742
914
  * @returns The current `ICellRange`.
743
915
  *
744
916
  * @remarks
745
- * **NOT FINISHED**
917
+ * A comment is on one cell, so a value goes on the range's top-left cell — updating the comment
918
+ * there if it has one, adding one otherwise — while `null` clears every comment within the
919
+ * range. The comment itself is the richer surface: `getSheet().getComments()` to add, and
920
+ * {@link ICell.getComments} to reach the one on a cell.
746
921
  */
747
- setComments(comments: IComment.Properties, options?: ITransaction.OperationOptions): this;
922
+ setComments(comments: IComment.Update, options?: ITransaction.OperationOptions): this;
748
923
  /**
749
924
  * Merges all cells within the selection ranges.
750
925
  *
@@ -908,6 +1083,24 @@ export interface ICellRange {
908
1083
  * * Will return `null` if nothing was inserted or the source doesn't have a range.
909
1084
  */
910
1085
  insertFrom(source: ICellRange.Address | ICellRange.ISnapshot, options?: ICellRange.InsertFromOptions): Promise<this | null>;
1086
+ /**
1087
+ * Whether {@link insertFrom} would go through, asked without performing it.
1088
+ *
1089
+ * @param source The source that would be inserted - the same argument `insertFrom` takes.
1090
+ * @param options The same options `insertFrom` would be given; `axis` and `isCut` both change the
1091
+ * answer, so pass the ones the real call will use.
1092
+ * @returns `false` when `insertFrom` would refuse, `true` otherwise.
1093
+ *
1094
+ * @remarks
1095
+ * A drop can be refused for reasons the caller cannot see: a cut whose gap the insert would only
1096
+ * half close, a merge the shift would tear or land inside of, a table it would split. This answers
1097
+ * the same question `insertFrom` asks itself before it commits, which is what lets an interactive
1098
+ * drag show a drop as refused BEFORE the user commits to it, rather than reporting an error after.
1099
+ *
1100
+ * It reports only what can be known up front. A refusal raised deeper in the operation (protection,
1101
+ * or content pushed off the end of the sheet) still surfaces as a thrown error.
1102
+ */
1103
+ canInsertFrom(source: ICellRange.Address | ICellRange.ISnapshot, options?: ICellRange.InsertFromOptions): boolean;
911
1104
  /**
912
1105
  * Copies (or cuts) data and formatting from a specified source to the current range.
913
1106
  *
@@ -1018,11 +1211,17 @@ export interface ICellRange {
1018
1211
  * caller did not ask. To watch a formula belonging to a multi-area rule, fill it first — or use
1019
1212
  * {@link ICellRanges.addWatch}, which does that for every area.
1020
1213
  *
1021
- * Known limits, both from watching the formula's *written* references: a range discovered at
1022
- * evaluation time (`INDIRECT`, `OFFSET`) is not watched, and a volatile formula (`NOW`, `RAND`)
1023
- * has nothing to watch at all. Neither re-fires.
1214
+ * The formula is held by the calculation engine like a formula in a cell: its references follow
1215
+ * row and column inserts and deletes, a reference to deleted cells reads `#REF!`, and undo
1216
+ * restores it. A range the formula discovers at evaluation time (`INDIRECT`, `OFFSET`) is watched
1217
+ * too. A volatile formula (`NOW`, `RAND`) re-evaluates with the engine's pass and does not re-fire
1218
+ * on its own.
1219
+ *
1220
+ * With {@link ICellRange.WatchOptions.arrayFirstCell} each cell is evaluated the way a
1221
+ * conditional-format or data-validation rule evaluates its formula: as an array-entered formula
1222
+ * whose extent is that one cell.
1024
1223
  */
1025
- addWatch(formula: ICalculation.IFormula | string, callback: ICellRange.WatchCallback): IListener.Remove;
1224
+ addWatch(formula: ICalculation.IFormula | string, callback: ICellRange.WatchCallback, options?: ICellRange.WatchOptions): IListener.Remove;
1026
1225
  /**
1027
1226
  * Returns an iterator that allows you to iterate over the individual values within the range.
1028
1227
  *
@@ -1072,11 +1271,17 @@ export interface ICellRange {
1072
1271
  */
1073
1272
  isContentful(features?: ICellRange.Feature | readonly ICellRange.Feature[]): boolean;
1074
1273
  /**
1075
- * Returns `true` if the range represents the entire rows.
1274
+ * Returns `true` if the range is entire rows, such as `2:4`: it spans every column of the sheet.
1275
+ *
1276
+ * @remarks
1277
+ * The counterpart of Office Scripts' `isEntireRow`.
1076
1278
  */
1077
1279
  isEntireRows(): boolean;
1078
1280
  /**
1079
- * Returns `true` if the range represents the entire columns.
1281
+ * Returns `true` if the range is entire columns, such as `B:D`: it spans every row of the sheet.
1282
+ *
1283
+ * @remarks
1284
+ * The counterpart of Office Scripts' `isEntireColumn`.
1080
1285
  */
1081
1286
  isEntireColumns(): boolean;
1082
1287
  /**
@@ -1162,7 +1367,7 @@ export interface ICellRange {
1162
1367
  * Checks if the ranges is empty, meaning it has no values or formatting.
1163
1368
  *
1164
1369
  * @remarks
1165
- * Convenience ```getUsedRange() !== null``` or `getCount() === 0`.
1370
+ * Convenience ```getUsedRange() === null```.
1166
1371
  *
1167
1372
  * @see
1168
1373
  * {@link ICellRange.getUsedRange}
@@ -1294,6 +1499,20 @@ export declare namespace ICellRange {
1294
1499
  * while leaving hidden columns in place.
1295
1500
  */
1296
1501
  ignoreHidden?: boolean | IRange.Axis;
1502
+ /**
1503
+ * Skip cells that only hold a spilled value - the members of a dynamic array's spill.
1504
+ *
1505
+ * @defaultValue false
1506
+ *
1507
+ * @remarks
1508
+ * A spilled value is not a cell's own content: it belongs to the formula at the spill's anchor,
1509
+ * which is NOT skipped. Writing over a spilled cell loses nothing - the spill is blocked and its
1510
+ * anchor reports `#SPILL!` - so this is the lens for "would writing here overwrite anything?".
1511
+ * A blocked spill occupies only its anchor, so the cells it would have taken are never skipped.
1512
+ *
1513
+ * Honored by the aggregates: {@link ICellRange.isContentful} and {@link ICellRange.getCounts}.
1514
+ */
1515
+ ignoreSpilled?: boolean;
1297
1516
  /**
1298
1517
  * The features reads through this range resolve and report.
1299
1518
  *
@@ -1322,10 +1541,71 @@ export declare namespace ICellRange {
1322
1541
  * dropped because the range **is** the address — a second one would be a contradictory scope.
1323
1542
  */
1324
1543
  type GetItemsOptions<T> = Omit<T, 'address'>;
1544
+ /**
1545
+ * Options shared by every operation on a range.
1546
+ *
1547
+ * @remarks
1548
+ * `autoSelect` and `autoFit` are *directives*: they name something to do once the operation
1549
+ * completes rather than a change the operation makes. Both are resolved once, for the whole
1550
+ * operation, and neither adds an undo entry of its own - a batch that sets values and fits
1551
+ * the columns is one undo step that puts both back.
1552
+ */
1553
+ interface OperationOptions extends ITransaction.OperationOptions {
1554
+ /**
1555
+ * Select the affected range once the operation completes.
1556
+ *
1557
+ * @defaultValue `false` - the selection is left alone.
1558
+ *
1559
+ * @remarks
1560
+ * The selection is applied once, after the whole operation - within a batch, the last
1561
+ * operation to ask for one wins. It is applied only if the selection is still where it was
1562
+ * when the operation began: a user who moved while it ran keeps where they went.
1563
+ *
1564
+ * Pass it for an edit the user made. A script that passes neither this nor
1565
+ * {@link autoSelectRestore} never moves the user, whether it runs, is undone or is redone.
1566
+ */
1567
+ autoSelect?: boolean | ICellRange.SelectOptions;
1568
+ /**
1569
+ * Select the affected range when the operation is undone or redone.
1570
+ *
1571
+ * @defaultValue {@link autoSelect}
1572
+ *
1573
+ * @remarks
1574
+ * An undo lands where the operation began - for most operations the range they affected, for
1575
+ * an auto-fill the template it was dragged from - and a redo where it left the user. Within a
1576
+ * batch an undo lands where the first operation to ask says, a redo where the last one does.
1577
+ *
1578
+ * For an edit made from where the user already is, pass this without {@link autoSelect}: a
1579
+ * value typed into a cell of a selected block leaves the block selected, and undoing it
1580
+ * selects the cell.
1581
+ */
1582
+ autoSelectRestore?: boolean | ICellRange.SelectOptions;
1583
+ /**
1584
+ * Fit the affected columns and rows to their content once the operation completes.
1585
+ *
1586
+ * @defaultValue the rows only, as Excel sizes them: a row with no custom height fits its
1587
+ * content (growing or shrinking); a custom height and every column width are left alone.
1588
+ *
1589
+ * @remarks
1590
+ * The fit runs once, as the last write of the operation, so it measures the finished
1591
+ * content and its sizes belong to the same undo entry - one undo puts both the content
1592
+ * and the sizes back.
1593
+ *
1594
+ * Pass `false` to leave every size alone. Pass `true` to fit as the UI does - rows and columns:
1595
+ ```
1596
+ {
1597
+ skipCustomSize: true,
1598
+ expandOnly: 'column', // columns only grow; rows fit exactly
1599
+ minContent: true
1600
+ }
1601
+ ```
1602
+ */
1603
+ autoFit?: boolean | ICellRange.AutoFitOptions;
1604
+ }
1325
1605
  /**
1326
1606
  * Options for adding an auto table to a range.
1327
1607
  */
1328
- interface AddAutoTableOptions extends ITransaction.OperationOptions {
1608
+ interface AddAutoTableOptions extends ICellRange.OperationOptions {
1329
1609
  /**
1330
1610
  * Include sort options.
1331
1611
  */
@@ -1342,7 +1622,7 @@ export declare namespace ICellRange {
1342
1622
  /**
1343
1623
  * Options for `ICellRange.delete`.
1344
1624
  */
1345
- interface InsertOptions extends ITransaction.OperationOptions {
1625
+ interface InsertOptions extends ICellRange.OperationOptions {
1346
1626
  /**
1347
1627
  * The direction in which to shift existing cells.
1348
1628
  *
@@ -1371,7 +1651,7 @@ export declare namespace ICellRange {
1371
1651
  /**
1372
1652
  * Options for `ICellRange.delete`.
1373
1653
  */
1374
- interface DeleteOptions extends ITransaction.OperationOptions {
1654
+ interface DeleteOptions extends ICellRange.OperationOptions {
1375
1655
  /**
1376
1656
  * The direction in which to shift existing cells.
1377
1657
  *
@@ -1474,8 +1754,9 @@ export declare namespace ICellRange {
1474
1754
  * @defaultValue false
1475
1755
  *
1476
1756
  * @remarks
1477
- * If `true` then tables and sheet boundaries will be ignored mimicking the behavior
1478
- * of 'Ctrl+Shift+*'.
1757
+ * If `true`, the region is the contiguous block of content around the range (Excel's
1758
+ * 'Ctrl+Shift+*' current region): tables are not treated as regions of their own, and a range
1759
+ * with no content nearby returns itself rather than the entire sheet.
1479
1760
  */
1480
1761
  contentOnly?: boolean;
1481
1762
  }
@@ -1491,7 +1772,7 @@ export declare namespace ICellRange {
1491
1772
  /**
1492
1773
  * Options for {@link ICellRange.ISnapshot.copyTo}.
1493
1774
  */
1494
- interface CopyOptions extends ITransaction.OperationOptions, ReferenceableClipboard.CopyOptions {
1775
+ interface CopyOptions extends ICellRange.OperationOptions, ReferenceableClipboard.CopyOptions {
1495
1776
  /**
1496
1777
  * When pasting from a smaller range to a larger range copy will repeat or 'wallpaper' the
1497
1778
  * source values.
@@ -1546,7 +1827,7 @@ export declare namespace ICellRange {
1546
1827
  /**
1547
1828
  * Options for {@link ICellRange.setValues}.
1548
1829
  */
1549
- interface SetValuesOptions extends ITransaction.OperationOptions {
1830
+ interface SetValuesOptions extends ICellRange.OperationOptions {
1550
1831
  /**
1551
1832
  * By default setValue will attempt to parse text values into a native type.
1552
1833
  * This can be disabled or customized using the parseText flag.
@@ -1562,21 +1843,6 @@ export declare namespace ICellRange {
1562
1843
  * Both {@link SetValuesOptions} and {@link GetValuesOptions} allow for {@link IRange.Axis}s.
1563
1844
  */
1564
1845
  axis?: IRange.Axis;
1565
- /**
1566
- * Convenience method that calls autoFit after the setValues.
1567
- * @defaultValue `none` - No autofit.
1568
- *
1569
- * @remarks
1570
- * If set to `true` then autoFit will mimic the UI with the following options:
1571
- ```
1572
- {
1573
- skipCustomSize: true,
1574
- expandOnly: true,
1575
- minContent: true
1576
- }
1577
- ```
1578
- */
1579
- autoFit?: boolean | ICellRange.AutoFitOptions;
1580
1846
  /**
1581
1847
  * Skip the bounds check when setting values.
1582
1848
  *
@@ -1587,6 +1853,43 @@ export declare namespace ICellRange {
1587
1853
  * size requires processing the entire dataset.
1588
1854
  */
1589
1855
  skipBoundsCheck?: boolean;
1856
+ /**
1857
+ * Enter a single formula as an array formula (Excel's Ctrl+Shift+Enter) over the whole range.
1858
+ *
1859
+ * @defaultValue `false`
1860
+ *
1861
+ * @remarks
1862
+ * The range is the block's extent and the formula sits at its top-left; the result is fitted
1863
+ * to the extent rather than spilling from it - a dimension of 1 broadcasts, a longer one is
1864
+ * clipped, a shorter one is padded with `#N/A` - and the block never resizes. Its cells can
1865
+ * only be changed as a whole: overwriting, clearing, or inserting/deleting through part of a
1866
+ * block is refused ("You can't change part of an array"); rewriting it through this option
1867
+ * with the same range replaces it.
1868
+ *
1869
+ * Only meaningful for {@link ICellRange.setFormula} with one formula.
1870
+ */
1871
+ arrayFixed?: boolean;
1872
+ /**
1873
+ * Give each entered formula the number format of the first cell it reads that has one, or
1874
+ * failing that the format its result carries, once it has been calculated.
1875
+ *
1876
+ * @defaultValue `false` - the cell keeps the format it has.
1877
+ *
1878
+ * @remarks
1879
+ * What typing a formula into a cell does: `=A1*2` shows currency when `A1` does, `=NOW()`
1880
+ * shows a date, `=DATE(2024,1,15)` a short date. A cell the formula reads ranks ahead of a
1881
+ * function's format (`=A1+TODAY()` is currency when `A1` is); references are taken in the
1882
+ * order written, a range stands for its top-left cell, and a reference a function only
1883
+ * points at (`=ROW(A1)`, `=OFFSET(A1,0,0)`) does not count. The format becomes the cell's
1884
+ * own, exactly as if set by hand, so it stays when the formula is replaced by a value and is
1885
+ * part of the same undo entry as the formula. A format the cell already had wins.
1886
+ *
1887
+ * Only the formulas this operation enters are formatted, and only when they are first
1888
+ * compiled and calculated - a later recalculation of the same cell changes nothing, and
1889
+ * neither does formatting a cell it reads. Pair with {@link OperationOptions.autoFit} to also
1890
+ * widen a column the formatted result no longer fits.
1891
+ */
1892
+ autoFormat?: boolean;
1590
1893
  }
1591
1894
  /**
1592
1895
  * Options for {@link ICellRange.getValues}.
@@ -1729,7 +2032,7 @@ export declare namespace ICellRange {
1729
2032
  /**
1730
2033
  * Options for {@link ICellRange.autoFill}.
1731
2034
  */
1732
- interface AutoFillOptions extends ITransaction.OperationOptions {
2035
+ interface AutoFillOptions extends ICellRange.OperationOptions {
1733
2036
  /**
1734
2037
  * Provide custom fillers.
1735
2038
  *
@@ -1743,11 +2046,21 @@ export declare namespace ICellRange {
1743
2046
  */
1744
2047
  fillerOptions?: IAutoFill.Options;
1745
2048
  /**
1746
- * If `true` then will only copy values and not formatting.
2049
+ * Which part of the cells the fill carries — the same selector {@link CopyOptions.type} takes.
1747
2050
  *
1748
- * @defaultValue false (unless starting within a table)
2051
+ * @defaultValue Everything: values, formulas and formatting.
2052
+ *
2053
+ * @remarks
2054
+ * * {@link ICell.Content.Formats} is Excel's *Fill Formatting Only*: the template's formatting
2055
+ * (styles, number formats, merges, conditional formats and validations) is tiled into the
2056
+ * destination and the values already there are left alone. The `filler` is not consulted.
2057
+ * * {@link ICell.Content.Values} is *Fill Without Formatting*: the series is written and the
2058
+ * destination keeps its own formatting — a date series lands as plain serials in a cell that
2059
+ * has no date format of its own.
2060
+ * * On a shrinking destination the vacated cells lose only the selected part.
2061
+ * * Any other member throws — a fill has no notion of copying just hyperlinks or comments.
1749
2062
  */
1750
- contentsOnly?: boolean;
2063
+ type?: ICell.Content;
1751
2064
  /**
1752
2065
  * Compute the fill but commit nothing — the returned range is a projection of the result.
1753
2066
  *
@@ -1874,7 +2187,7 @@ export declare namespace ICellRange {
1874
2187
  /**
1875
2188
  * Options for {@link ICellRange.textToColumns}.
1876
2189
  */
1877
- interface TextToColumnsOptions extends ITransaction.OperationOptions {
2190
+ interface TextToColumnsOptions extends ICellRange.OperationOptions {
1878
2191
  /**
1879
2192
  * The character used to split the text.
1880
2193
  *
@@ -1940,7 +2253,7 @@ export declare namespace ICellRange {
1940
2253
  /**
1941
2254
  * Options for {@link ICellRange.removeDuplicates}.
1942
2255
  */
1943
- interface RemoveDuplicatesOptions extends ITransaction.OperationOptions {
2256
+ interface RemoveDuplicatesOptions extends ICellRange.OperationOptions {
1944
2257
  /**
1945
2258
  * Indicates if the range has a header row.
1946
2259
  *
@@ -2082,7 +2395,7 @@ export declare namespace ICellRange {
2082
2395
  * Represents an immutable reference to an `ICellRange`, capturing its content and metadata.
2083
2396
  * It may include complex objects such as tables, movables, images, listeners, or other items.
2084
2397
  *
2085
- * `ISnapshot` can be provided to `ICellRange.copyFrom``.
2398
+ * `ISnapshot` can be provided to `ICellRange.copyFrom`.
2086
2399
  */
2087
2400
  interface ISnapshot<T = any, J = any> {
2088
2401
  /**
@@ -2229,13 +2542,18 @@ export declare namespace ICellRange {
2229
2542
  /** Direct fill. */
2230
2543
  readonly Fill: "fill";
2231
2544
  /** Direct borders. */
2232
- readonly Border: "border";
2545
+ readonly Borders: "borders";
2233
2546
  /** Direct number format. Region payloads carry the format string and its category. */
2234
2547
  readonly NumberFormat: "numberFormat";
2235
2548
  /** Direct alignment. */
2236
2549
  readonly Alignment: "alignment";
2237
2550
  /** Direct font. */
2238
2551
  readonly Font: "font";
2552
+ /**
2553
+ * Direct cell protection format (`ICellStyle.getProtection()`): always unlocked, show formulas.
2554
+ * A cell with none of its own reads its named style's, then Normal's.
2555
+ */
2556
+ readonly Protection: "protection";
2239
2557
  /** Merged spans. */
2240
2558
  readonly Merge: "merge";
2241
2559
  /** Table membership. */
@@ -2246,7 +2564,10 @@ export declare namespace ICellRange {
2246
2564
  readonly Hyperlink: "hyperlink";
2247
2565
  /** Has comments. */
2248
2566
  readonly Comments: "comments";
2249
- /** Explicitly unlocked cells — *can I write here* is a precondition, not a detail. */
2567
+ /**
2568
+ * Unlocked cells — covered by an unlocked range, or with an always-unlocked style. *Can I write
2569
+ * here* is a precondition, not a detail.
2570
+ */
2250
2571
  readonly Unlock: "unlock";
2251
2572
  /** Cells under conditional-format rules. */
2252
2573
  readonly Conditionals: "conditionals";
@@ -2464,7 +2785,10 @@ export declare namespace ICellRange {
2464
2785
  * * `'data'`: Data within the range has changed.
2465
2786
  * The range's address and dimensions remain the same.
2466
2787
  * * `'address'`: The range's *address* or *dimensions* have changed. This
2467
- * occurs due to row/column insertions, deletions, or move operations.
2788
+ * occurs due to row/column insertions, deletions, or move operations — and, for a
2789
+ * sheet-qualified range (one from {@link IWorkbook.getRange}, or a sheet's range naming
2790
+ * another sheet), when the sheet it names is renamed. A bare range on its own sheet has no
2791
+ * qualifier, so a rename is not a change to it.
2468
2792
  * * `'restore'`: The range has been restored to a different revision
2469
2793
  * (undo/redo). The 'restore' trigger is not available for transactional listeners.
2470
2794
  */
@@ -2526,22 +2850,38 @@ export declare namespace ICellRange {
2526
2850
  interface WatchCallback {
2527
2851
  (values: IRange): void;
2528
2852
  }
2853
+ /**
2854
+ * Options for {@link ICellRange.addWatch}.
2855
+ */
2856
+ interface WatchOptions {
2857
+ /**
2858
+ * Evaluate each cell of the range as an array-entered formula whose extent is that one cell.
2859
+ *
2860
+ * @remarks
2861
+ * This is how a conditional-format or data-validation formula is evaluated. Nothing
2862
+ * implicitly intersects — a range reads as the whole array wherever it appears — and each
2863
+ * cell keeps the top-left value of its own result, the way an array-entered formula fits its
2864
+ * result to its extent. So `$J$1:$J$9="x"` answers `J1="x"` in every cell, while
2865
+ * `SUM(IF($J$1:$J$9="x",1,0))>1` still sums the whole array. A relative range moves with the
2866
+ * cell, so `$J1:$J9="x"` answers each row's own `J` cell.
2867
+ *
2868
+ * By default a cell whose result is an array spills, as a formula filled across the range
2869
+ * would.
2870
+ *
2871
+ * @defaultValue `false`
2872
+ */
2873
+ arrayFirstCell?: boolean;
2874
+ }
2529
2875
  /**
2530
2876
  * Options to control which events trigger a listener. By default, all
2531
2877
  * event types will trigger the listener. Setting any of these options to
2532
2878
  * `true` will *prevent* the listener from being called for that event type.
2533
2879
  */
2534
2880
  interface ListenerOptions {
2535
- /**
2536
- * The actual range can also change due to insert/removes or delete of a sheet.
2537
- * Setting absoluteCoords to `true` will ignore shifts in the range.
2538
- *
2539
- * @defaultValue false
2540
- */
2541
- ignoreShifts?: boolean;
2542
2881
  /**
2543
2882
  * If `true`, the listener will *not* be called when the range's
2544
- * address changes (due to row/column insert/delete, or moves)
2883
+ * address changes (due to row/column insert/delete, moves, or a rename of
2884
+ * the sheet a qualified range names)
2545
2885
  *
2546
2886
  * @defaultValue false
2547
2887
  */