@sheetxl/sdk 0.7.28-beta.4 → 0.8.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) hide show
  1. package/THIRD-PARTY-NOTICES.md +1 -1
  2. package/browser/cjs/4f5eoQQfV-V7LO2_.cjs +1 -0
  3. package/browser/cjs/BEnEDC1m546-gzWS.cjs +1 -0
  4. package/browser/cjs/CwCUa4IzGNGissLL.cjs +1 -0
  5. package/browser/cjs/Dg3GaW0QWwnlqetX.cjs +1 -0
  6. package/browser/cjs/KWQPie2u7AP69web.cjs +93 -0
  7. package/browser/cjs/index.cjs +2 -2
  8. package/browser/esm/{DBIu6NUHIcxOOBQp.mjs → BJ9hcZAGY8Tj5_9L.mjs} +1 -1
  9. package/browser/esm/C8vpA2ZBtZf6w4nq.mjs +394 -0
  10. package/browser/esm/DDojiE2-oycJ7qGi.mjs +20 -0
  11. package/browser/esm/DEPT7zmpiMdZ-_qC.mjs +70253 -0
  12. package/browser/esm/DOvCi3lf49To36WP.mjs +8 -0
  13. package/browser/esm/{CHSahmMFYNB0Ajkf.mjs → Dq3sc4B_HQHBrT5N.mjs} +2 -2
  14. package/browser/esm/index.mjs +871 -696
  15. package/browser/esm/{CKk58ZLcrllMzfou.mjs → trwZArJQQq7K9kL7.mjs} +2 -2
  16. package/licenses/dependencies.txt +204 -204
  17. package/node/esm/CGWsQOMWdnDeF4dX.mjs +8 -0
  18. package/node/esm/{DUYP6faJJHCaW1Xf.mjs → CL9MI-b6D9BmtVXW.mjs} +1 -1
  19. package/node/esm/CressiwiIhxCVp1v.mjs +28 -0
  20. package/node/esm/O2cOO3xIynWUgOWe.mjs +403 -0
  21. package/node/esm/index.mjs +53973 -38584
  22. package/package.json +6 -7
  23. package/resources/locales/de/model.msg.json +45 -9
  24. package/resources/locales/en/model.msg.json +42 -9
  25. package/types/scripting-api.json +7093 -0
  26. package/types/scripting-enums.json +54 -4
  27. package/types/scripting.d.ts +7185 -1079
  28. package/types/src/anchored/AbstractAnchored.d.ts +18 -8
  29. package/types/src/anchored/AnchoredMap.d.ts +2 -0
  30. package/types/src/anchored/IAnchoredMap.d.ts +52 -4
  31. package/types/src/autoFill/AutoFill.d.ts +316 -32
  32. package/types/src/autoFill/IAutoFill.d.ts +232 -15
  33. package/types/src/border/{IBorder.d.ts → IBorders.d.ts} +41 -40
  34. package/types/src/border/index.d.ts +1 -1
  35. package/types/src/calculation/Calculation.d.ts +745 -35
  36. package/types/src/calculation/ExternalBookBindings.d.ts +118 -0
  37. package/types/src/calculation/FormulaText.d.ts +74 -0
  38. package/types/src/calculation/ICalculation.d.ts +318 -81
  39. package/types/src/calculation/INamedFormulasCollection.d.ts +5 -8
  40. package/types/src/calculation/NamedFormulaCollection.d.ts +139 -107
  41. package/types/src/calculation/NamedLambdaFunction.d.ts +28 -0
  42. package/types/src/calculation/TokenType.d.ts +9 -0
  43. package/types/src/calculation/Types.d.ts +83 -2
  44. package/types/src/calculation/_CloneBoundary.d.ts +80 -0
  45. package/types/src/calculation/compiler/ASTTypes.d.ts +58 -0
  46. package/types/src/calculation/compiler/CompilerUtils.d.ts +134 -12
  47. package/types/src/calculation/compiler/FormulaCompiler.d.ts +29 -4
  48. package/types/src/calculation/compiler/FormulaParser.d.ts +1 -2
  49. package/types/src/calculation/compiler/LiteTransform.d.ts +17 -0
  50. package/types/src/calculation/compiler/ParserUtils.d.ts +26 -1
  51. package/types/src/calculation/compiler/SRParser.d.ts +2 -1
  52. package/types/src/calculation/compiler/Types.d.ts +79 -9
  53. package/types/src/calculation/executor/CalcExecutor.d.ts +422 -34
  54. package/types/src/calculation/executor/CalcExecutorUtils.d.ts +43 -2
  55. package/types/src/calculation/executor/CircularReference.d.ts +2 -0
  56. package/types/src/calculation/formula/Formula.d.ts +58 -21
  57. package/types/src/calculation/formula/FormulaBlock.d.ts +124 -21
  58. package/types/src/calculation/formula/FormulaRecordView.d.ts +79 -0
  59. package/types/src/calculation/formula/IFormulaBlock.d.ts +261 -67
  60. package/types/src/calculation/formula/LambdaValue.d.ts +15 -16
  61. package/types/src/calculation/formula/LazyValue.d.ts +96 -0
  62. package/types/src/calculation/formula/TokenUtils.d.ts +25 -1
  63. package/types/src/calculation/formula/index.d.ts +1 -0
  64. package/types/src/calculation/functions/FunctionDeclarations.d.ts +31 -0
  65. package/types/src/calculation/functions/initializeFunctions.d.ts +15 -2
  66. package/types/src/calculation/grid/CalcGrid.d.ts +384 -158
  67. package/types/src/calculation/grid/CalcGridBackend.d.ts +450 -0
  68. package/types/src/calculation/grid/CalcGridProxy.d.ts +133 -0
  69. package/types/src/calculation/grid/CalcGridUtils.d.ts +62 -12
  70. package/types/src/calculation/grid/FormulaEntry.d.ts +129 -0
  71. package/types/src/calculation/grid/FormulaHost.d.ts +236 -0
  72. package/types/src/calculation/grid/ICalcGrid.d.ts +456 -143
  73. package/types/src/calculation/grid/_CalcRequest.d.ts +272 -0
  74. package/types/src/calculation/grid/index.d.ts +4 -0
  75. package/types/src/calculation/index.d.ts +2 -0
  76. package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts +6 -2
  77. package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +339 -11
  78. package/types/src/calculation/spatial/SpillEntry.d.ts +20 -5
  79. package/types/src/calculation/spatial/TouchedWindows.d.ts +86 -0
  80. package/types/src/calculation/spatial/index.d.ts +1 -0
  81. package/types/src/calculation/state/CalcInputs.d.ts +41 -0
  82. package/types/src/calculation/state/CalcNode.d.ts +160 -29
  83. package/types/src/calculation/state/CalcScope.d.ts +37 -0
  84. package/types/src/calculation/state/CalcState.d.ts +22 -1
  85. package/types/src/calculation/state/CalculationContext.d.ts +39 -3
  86. package/types/src/calculation/state/IContextContainer.d.ts +159 -26
  87. package/types/src/calculation/state/_PendingOverlayGrid.d.ts +163 -0
  88. package/types/src/calculation/state/_ReadObservedGrid.d.ts +74 -8
  89. package/types/src/calculation/state/index.d.ts +1 -0
  90. package/types/src/calculation/symbol/ExternalSheetSymbols.d.ts +80 -0
  91. package/types/src/calculation/symbol/ISymbolRegistry.d.ts +23 -0
  92. package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts +16 -2
  93. package/types/src/calculation/symbol/SheetSymbolProvider.d.ts +63 -3
  94. package/types/src/calculation/symbol/SymbolRegistry.d.ts +20 -0
  95. package/types/src/calculation/symbol/index.d.ts +3 -2
  96. package/types/src/cell/ICell.d.ts +78 -23
  97. package/types/src/cell/ICellProtection.d.ts +50 -10
  98. package/types/src/cellRange/ICellRange.d.ts +368 -90
  99. package/types/src/cellRange/ICellRanges.d.ts +9 -7
  100. package/types/src/chart/Chart.d.ts +72 -2
  101. package/types/src/chart/ChartCollection.d.ts +26 -0
  102. package/types/src/chart/IChart.d.ts +162 -9
  103. package/types/src/chart/IChartCollection.d.ts +25 -0
  104. package/types/src/chart/_ChartXml.d.ts +70 -0
  105. package/types/src/chart/index.d.ts +1 -3
  106. package/types/src/collections/ArraysGrid.d.ts +1 -1
  107. package/types/src/collections/IGrid.d.ts +1 -1
  108. package/types/src/collections/ISparseGrid.d.ts +9 -0
  109. package/types/src/collections/ISpatialMap.d.ts +59 -21
  110. package/types/src/collections/ImmutableList.d.ts +28 -0
  111. package/types/src/collections/MixedTypedArrayList.d.ts +168 -108
  112. package/types/src/collections/OverlappingRangeIterator.d.ts +13 -17
  113. package/types/src/collections/RepeatingList.d.ts +7 -0
  114. package/types/src/collections/ScalarGrid.d.ts +50 -0
  115. package/types/src/collections/SparseGrid.d.ts +1 -1
  116. package/types/src/collections/SpatialMap.d.ts +13 -21
  117. package/types/src/collections/Tuple.d.ts +128 -16
  118. package/types/src/collections/_GridUtils.d.ts +19 -6
  119. package/types/src/collections/_RangeSweep.d.ts +97 -0
  120. package/types/src/collections/_SpatialUtils.d.ts +20 -2
  121. package/types/src/collections/index.d.ts +1 -0
  122. package/types/src/comment/Comment.d.ts +159 -0
  123. package/types/src/comment/CommentCollection.d.ts +40 -0
  124. package/types/src/comment/IComment.d.ts +319 -48
  125. package/types/src/comment/ICommentCollection.d.ts +90 -0
  126. package/types/src/comment/_CommentUtils.d.ts +28 -0
  127. package/types/src/comment/index.d.ts +1 -0
  128. package/types/src/condition/AnchoredConditional.d.ts +76 -17
  129. package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +8 -7
  130. package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts +2 -1
  131. package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts +3 -6
  132. package/types/src/condition/BuiltInOperators/InSetOperator.d.ts +1 -1
  133. package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts +7 -0
  134. package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +9 -0
  135. package/types/src/condition/Condition.d.ts +16 -0
  136. package/types/src/condition/ICondition.d.ts +86 -33
  137. package/types/src/condition/_ConditionFormula.d.ts +152 -0
  138. package/types/src/condition/_ConditionUtils.d.ts +73 -10
  139. package/types/src/conditionalFormat/ConditionalFormat.d.ts +21 -10
  140. package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +19 -8
  141. package/types/src/conditionalFormat/IConditionalFormat.d.ts +5 -3
  142. package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +2 -0
  143. package/types/src/dataValidation/DataValidation.d.ts +50 -3
  144. package/types/src/dataValidation/DataValidationCollection.d.ts +20 -9
  145. package/types/src/dataValidation/IDataValidation.d.ts +119 -30
  146. package/types/src/dataValidation/IDataValidationCollection.d.ts +10 -2
  147. package/types/src/date/DateUtils.d.ts +20 -0
  148. package/types/src/date/_DateUtils.d.ts +91 -7
  149. package/types/src/externalBook/ExternalBookCollection.d.ts +145 -12
  150. package/types/src/externalBook/ExternalBookName.d.ts +96 -0
  151. package/types/src/externalBook/IExternalBook.d.ts +170 -18
  152. package/types/src/externalBook/IExternalBookCollection.d.ts +79 -7
  153. package/types/src/externalBook/index.d.ts +1 -0
  154. package/types/src/fill/IStroke.d.ts +1 -1
  155. package/types/src/filter/IFilter.d.ts +29 -4
  156. package/types/src/font/IFont.d.ts +17 -0
  157. package/types/src/history/IHistory.d.ts +3 -2
  158. package/types/src/i18n/LanguagePack.d.ts +12 -4
  159. package/types/src/index.d.ts +3 -0
  160. package/types/src/io/AbstractBackingStore.d.ts +24 -1
  161. package/types/src/io/ArrayBackingStore.d.ts +1 -1
  162. package/types/src/io/EmbeddedPart.d.ts +20 -0
  163. package/types/src/io/IEmbeddedPart.d.ts +63 -0
  164. package/types/src/io/IWorkbookIO.d.ts +185 -18
  165. package/types/src/io/WorkbookIO.d.ts +9 -0
  166. package/types/src/io/WorkbookOrigin.d.ts +20 -11
  167. package/types/src/io/WorkbookOriginProvider.d.ts +46 -0
  168. package/types/src/io/_XmlFragment.d.ts +49 -0
  169. package/types/src/io/index.d.ts +1 -0
  170. package/types/src/lib/file/file.browser.d.ts +19 -5
  171. package/types/src/lib/file/file.node.d.ts +5 -0
  172. package/types/src/lib/utils/_Utils.d.ts +18 -0
  173. package/types/src/lib/utils/utils.browser.d.ts +9 -3
  174. package/types/src/license/license-key.d.ts +27 -0
  175. package/types/src/listener/IListener.d.ts +12 -7
  176. package/types/src/listener/ListenerEmitter.d.ts +46 -5
  177. package/types/src/model/AbstractModel.d.ts +14 -5
  178. package/types/src/movable/Control.d.ts +57 -0
  179. package/types/src/movable/IControl.d.ts +84 -0
  180. package/types/src/movable/IMovable.d.ts +23 -1
  181. package/types/src/movable/IMovableCollection.d.ts +2 -0
  182. package/types/src/movable/Movable.d.ts +4 -6
  183. package/types/src/movable/MovableCollection.d.ts +7 -7
  184. package/types/src/movable/index.d.ts +4 -0
  185. package/types/src/named/AbstractNamed.d.ts +1 -1
  186. package/types/src/named/INamed.d.ts +4 -1
  187. package/types/src/named/INamedCollection.d.ts +26 -0
  188. package/types/src/named/NamedCollection.d.ts +16 -15
  189. package/types/src/numFmt/BuiltInFormats.d.ts +15 -7
  190. package/types/src/numFmt/IFormatEngine.d.ts +2 -0
  191. package/types/src/numFmt/NumfmtFormatEngine.d.ts +2 -0
  192. package/types/src/person/IPerson.d.ts +99 -0
  193. package/types/src/person/IPersonCollection.d.ts +51 -0
  194. package/types/src/person/Person.d.ts +32 -0
  195. package/types/src/person/PersonCollection.d.ts +49 -0
  196. package/types/src/person/index.d.ts +3 -0
  197. package/types/src/picture/IPicture.d.ts +2 -0
  198. package/types/src/picture/Picture.d.ts +2 -0
  199. package/types/src/pivot/IPivotTable.d.ts +107 -0
  200. package/types/src/pivot/IPivotTableCollection.d.ts +25 -0
  201. package/types/src/pivot/PivotTable.d.ts +57 -0
  202. package/types/src/pivot/PivotTableCollection.d.ts +25 -0
  203. package/types/src/pivot/index.d.ts +6 -0
  204. package/types/src/primitives/CompositeRangeStats.d.ts +2 -0
  205. package/types/src/primitives/Criteria.d.ts +1 -1
  206. package/types/src/primitives/LambdaBrand.d.ts +21 -0
  207. package/types/src/primitives/PrimitiveUtils.d.ts +60 -21
  208. package/types/src/primitives/Range.d.ts +105 -25
  209. package/types/src/primitives/RangeStats.d.ts +24 -1
  210. package/types/src/primitives/ReferenceRange.d.ts +42 -0
  211. package/types/src/primitives/Runtime.d.ts +15 -2
  212. package/types/src/primitives/stats/FrequencyStats.d.ts +9 -0
  213. package/types/src/primitives/stats/LookupIndex.d.ts +46 -0
  214. package/types/src/primitives/stats/SortedNumbers.d.ts +2 -0
  215. package/types/src/primitives/stats/index.d.ts +1 -0
  216. package/types/src/print/IPrint.d.ts +0 -22
  217. package/types/src/protectedRange/IProtectedRange.d.ts +4 -0
  218. package/types/src/protectedRange/IProtectedRangeCollection.d.ts +2 -0
  219. package/types/src/protectedRange/ProtectedRange.d.ts +1 -4
  220. package/types/src/protectedRange/ProtectedRangeCollection.d.ts +19 -8
  221. package/types/src/protection/DefaultProtection.d.ts +12 -1
  222. package/types/src/protection/IProtection.d.ts +36 -2
  223. package/types/src/reference/ReferenceUtils.d.ts +80 -0
  224. package/types/src/reference/index.d.ts +2 -0
  225. package/types/src/resource/IResource.d.ts +21 -1
  226. package/types/src/resource/IResourceCollection.d.ts +9 -1
  227. package/types/src/resource/ResourceCollection.d.ts +6 -6
  228. package/types/src/scripting/FunctionArguments.d.ts +22 -0
  229. package/types/src/scripting/FunctionCollection.d.ts +41 -11
  230. package/types/src/scripting/IFunctionCollection.d.ts +41 -0
  231. package/types/src/scripting/IModule.d.ts +25 -0
  232. package/types/src/scripting/IModuleCollection.d.ts +17 -0
  233. package/types/src/scripting/IScript.d.ts +18 -0
  234. package/types/src/scripting/Module.d.ts +34 -6
  235. package/types/src/scripting/ModuleCollection.d.ts +17 -12
  236. package/types/src/scripting/Runtime.d.ts +15 -0
  237. package/types/src/scripting/Scripts.d.ts +2 -0
  238. package/types/src/scripting/TypedFunction.d.ts +197 -4
  239. package/types/src/scripting/_FunctionIndex.d.ts +5 -0
  240. package/types/src/scripting/_ModuleUtils.d.ts +11 -1
  241. package/types/src/scripting/_ScriptUtils.d.ts +3 -0
  242. package/types/src/scripting/declarations.browser.d.ts +10 -0
  243. package/types/src/scripting/declarations.d.ts +49 -0
  244. package/types/src/scripting/declarations.node.d.ts +9 -0
  245. package/types/src/scripting/index.d.ts +3 -0
  246. package/types/src/selection/IRangeSelection.d.ts +9 -4
  247. package/types/src/selection/RangeSelection.d.ts +2 -0
  248. package/types/src/shape/IShape.d.ts +41 -3
  249. package/types/src/shape/Shape.d.ts +10 -0
  250. package/types/src/shape/_ShapeXml.d.ts +28 -0
  251. package/types/src/sheet/CellRegion.d.ts +6 -0
  252. package/types/src/sheet/ICellContainerOptions.d.ts +50 -0
  253. package/types/src/sheet/ISheet.d.ts +224 -41
  254. package/types/src/sheet/ISheetCollection.d.ts +2 -5
  255. package/types/src/sheet/NamedCellRange.d.ts +16 -7
  256. package/types/src/sheet/Sheet.d.ts +757 -114
  257. package/types/src/sheet/SheetCell.d.ts +81 -21
  258. package/types/src/sheet/SheetCollection.d.ts +19 -8
  259. package/types/src/sheet/SheetRange.d.ts +65 -14
  260. package/types/src/sheet/SheetRanges.d.ts +4 -6
  261. package/types/src/sheet/_CellBuffer.d.ts +214 -0
  262. package/types/src/sheet/_InvalidSheetRange.d.ts +5 -5
  263. package/types/src/sheet/_ListenerAnchor.d.ts +104 -0
  264. package/types/src/sheet/_RangeStateSweep.d.ts +16 -0
  265. package/types/src/sheet/_ScalarListFactory.d.ts +61 -0
  266. package/types/src/sheet/_SheetAutoFillUtils.d.ts +74 -0
  267. package/types/src/sheet/_SheetAutoFitUtils.d.ts +28 -0
  268. package/types/src/sheet/_SheetEvents.d.ts +43 -0
  269. package/types/src/sheet/_SheetFilterUtils.d.ts +32 -1
  270. package/types/src/sheet/_SheetIntents.d.ts +250 -0
  271. package/types/src/sheet/_SheetMutations.d.ts +179 -59
  272. package/types/src/sheet/_SheetStateReader.d.ts +16 -10
  273. package/types/src/sheet/_SheetStateTypes.d.ts +57 -73
  274. package/types/src/sheet/_SheetUtils.d.ts +2 -18
  275. package/types/src/sheet/_WatchAnchor.d.ts +93 -0
  276. package/types/src/sheet/spatial/HeldFormulaEntry.d.ts +36 -0
  277. package/types/src/sheet/spatial/index.d.ts +1 -0
  278. package/types/src/sheet/style/SheetCellStyle.d.ts +91 -64
  279. package/types/src/sheet/style/SheetDirectStyle.d.ts +16 -5
  280. package/types/src/sheet/style/_Resolvers.d.ts +5 -3
  281. package/types/src/sheet/style/_StyleUtils.d.ts +37 -7
  282. package/types/src/sheetHeader/ISheetHeader.d.ts +2 -0
  283. package/types/src/sheetHeader/SheetHeader.d.ts +14 -0
  284. package/types/src/sheetProtection/ISheetProtection.d.ts +41 -7
  285. package/types/src/sheetProtection/SheetProtection.d.ts +12 -0
  286. package/types/src/sheetView/ISheetView.d.ts +45 -1
  287. package/types/src/sheetView/SheetView.d.ts +11 -0
  288. package/types/src/slicer/ISlicer.d.ts +2 -0
  289. package/types/src/slicer/Slicer.d.ts +2 -0
  290. package/types/src/sort/ISort.d.ts +2 -0
  291. package/types/src/string/IStringCollection.d.ts +5 -0
  292. package/types/src/string/StringCollection.d.ts +6 -6
  293. package/types/src/style/INamedStyleCollection.d.ts +72 -0
  294. package/types/src/style/IStyle.d.ts +30 -10
  295. package/types/src/style/IStyleCollection.d.ts +63 -42
  296. package/types/src/style/ITableStyleCollection.d.ts +89 -0
  297. package/types/src/style/NamedStyleCollection.d.ts +39 -0
  298. package/types/src/style/StyleCollection.d.ts +41 -5
  299. package/types/src/style/TableStyleCollection.d.ts +49 -0
  300. package/types/src/style/_BuiltInStyleDefs.d.ts +3 -3
  301. package/types/src/style/index.d.ts +4 -0
  302. package/types/src/table/AnchoredTable.d.ts +644 -68
  303. package/types/src/table/AutoTable.d.ts +5 -5
  304. package/types/src/table/ITable.d.ts +228 -30
  305. package/types/src/table/ITableCollection.d.ts +2 -0
  306. package/types/src/table/TableCollection.d.ts +19 -8
  307. package/types/src/table/_FilterField.d.ts +7 -5
  308. package/types/src/table/_NamedTable.d.ts +17 -1
  309. package/types/src/table/_NamedTableSource.d.ts +1 -0
  310. package/types/src/table/_SortField.d.ts +2 -0
  311. package/types/src/table/_TableColumn.d.ts +13 -2
  312. package/types/src/table/_TableMessages.d.ts +1 -0
  313. package/types/src/table/_TableUtils.d.ts +40 -0
  314. package/types/src/text/Bullet.d.ts +4 -0
  315. package/types/src/text/ITextFrame.d.ts +25 -1
  316. package/types/src/text/TextBoxAlignment.d.ts +15 -6
  317. package/types/src/text/TextFrame.d.ts +4 -0
  318. package/types/src/text/TextLine.d.ts +4 -0
  319. package/types/src/text/TextParagraph.d.ts +4 -0
  320. package/types/src/text/TextRun.d.ts +9 -0
  321. package/types/src/text/TextStacked.d.ts +83 -0
  322. package/types/src/text/index.d.ts +1 -0
  323. package/types/src/theme/ITheme.d.ts +2 -0
  324. package/types/src/theme/IThemeCollection.d.ts +2 -0
  325. package/types/src/theme/ThemeCollection.d.ts +8 -7
  326. package/types/src/transaction/ITransaction.d.ts +238 -36
  327. package/types/src/transaction/Transaction.d.ts +99 -11
  328. package/types/src/type/AbstractCollection.d.ts +101 -0
  329. package/types/src/type/ICollection.d.ts +117 -0
  330. package/types/src/type/ITypes.d.ts +9 -7
  331. package/types/src/type/index.d.ts +1 -0
  332. package/types/src/utils/_CSSUtils.d.ts +3 -3
  333. package/types/src/workbook/IWorkbook.d.ts +171 -40
  334. package/types/src/workbook/Workbook.d.ts +103 -7
  335. package/types/src/workbook/_WorkbookIntents.d.ts +36 -0
  336. package/types/src/workbookProtection/IWorkbookProtection.d.ts +7 -0
  337. package/types/src/workbookProtection/WorkbookProtection.d.ts +3 -0
  338. package/types/src/workbookView/IWorkbookView.d.ts +12 -0
  339. package/types/src/workbookView/WorkbookView.d.ts +5 -0
  340. package/browser/cjs/BF14ZEAnaqxXroSj.cjs +0 -1
  341. package/browser/cjs/BXtvdT1Z-MsB_o5F.cjs +0 -1
  342. package/browser/cjs/Bc4JjVVZfFo3R4He.cjs +0 -33
  343. package/browser/cjs/CD2RXdnfqSYNc6gX.cjs +0 -57
  344. package/browser/cjs/DcLpXGexEtOxi-dD.cjs +0 -1
  345. package/browser/esm/0Mj5WKM362q6CECb.mjs +0 -824
  346. package/browser/esm/CPTtL2f6_4iblmFM.mjs +0 -4436
  347. package/browser/esm/CoA-sUxjiIUIpTUF.mjs +0 -109
  348. package/browser/esm/Dy4Sdpju1T2icURu.mjs +0 -50854
  349. package/node/esm/BtGxbEbBm79YvF_k.mjs +0 -843
  350. package/node/esm/DqgWsVXROpSgKq6c.mjs +0 -114
  351. package/types/src/cellRange/_GraphNode.d.ts +0 -38
  352. package/types/src/dataValidation/_Utils.d.ts +0 -10
  353. package/types/src/sheet/listener/RangesListener.d.ts +0 -32
  354. package/types/src/sheet/listener/RangesListenerEntry.d.ts +0 -19
  355. package/types/src/sheet/listener/index.d.ts +0 -3
@@ -29,11 +29,7 @@ export declare class AutoTable extends AnchoredTable {
29
29
  protected _initialize(options: AnchoredTable.ConstructorOptions): void;
30
30
  protected initializeColumnCreator(table: ITable, getProps: (id: number | string) => ColumnPropertiesState, updateProps: (id: number | string, update: Partial<ITable.ColumnProperties> | null, options?: string | ITransaction.OperationOptions) => void, deleteColumn: (id: number | string, options?: ITransaction.OperationOptions) => void): (id: number | string) => ITable.IColumn;
31
31
  protected _processHeaderListener(): void;
32
- protected _readSyncSheet(ignoreBlanks?: boolean): {
33
- columns: ITable.ColumnProperties[];
34
- converted: boolean;
35
- } | null;
36
- protected _writeSyncSheet(isRemove?: boolean): void;
32
+ protected _syncHeader(): void;
37
33
  protected _calcVisible(): void;
38
34
  isShowHeaders(): boolean;
39
35
  addRows(index: number, count?: number, options?: ITransaction.OperationOptions): this;
@@ -41,6 +37,10 @@ export declare class AutoTable extends AnchoredTable {
41
37
  deleteRowsAt(index: number, count?: number, options?: ITransaction.OperationOptions): this;
42
38
  getColumnByName(name: string): ITable.IColumn | null;
43
39
  convertToRange(maxCells?: number, options?: ITransaction.OperationOptions): ICellRange;
40
+ /**
41
+ * Removes the AutoFilter. Its cells are the sheet's data and are left as they are.
42
+ */
43
+ delete(_options?: ITransaction.OperationOptions): void;
44
44
  setName(name: string, options?: ITransaction.OperationOptions): this;
45
45
  setDescription(description: string, options?: ITransaction.OperationOptions): this;
46
46
  updateStyleOptions(options: ITableStyle.StyleOptions, description?: string): this;
@@ -36,6 +36,59 @@ import { ITableStyle } from './ITableStyle';
36
36
  * * {@link ITableCollection}
37
37
  */
38
38
  export declare namespace ITable {
39
+ /**
40
+ * Which edges of a table grow when something is entered just beside it.
41
+ *
42
+ * @remarks
43
+ * A value entered in the column just right of the table makes a new column, and one entered in
44
+ * the row just below it makes a new row (or, for a formula, a totals row - see
45
+ * {@link ITable.FormulaBelow}). The table only grows over cells that are otherwise blank.
46
+ *
47
+ * Growing down also lets Tab from the last cell of the body add a row; without it, Tab wraps to
48
+ * the first cell of the body.
49
+ */
50
+ const AutoExpand: {
51
+ /**
52
+ * Grow right and down. The default.
53
+ */
54
+ readonly Both: "both";
55
+ /**
56
+ * Grow down only.
57
+ */
58
+ readonly Rows: "rows";
59
+ /**
60
+ * Grow right only.
61
+ */
62
+ readonly Columns: "columns";
63
+ /**
64
+ * Never grow.
65
+ */
66
+ readonly None: "none";
67
+ };
68
+ type AutoExpand = typeof AutoExpand[keyof typeof AutoExpand];
69
+ /**
70
+ * Where a formula entered in the row just below a table goes, when the table has no totals row
71
+ * showing and grows down (see {@link ITable.AutoExpand}).
72
+ *
73
+ * @remarks
74
+ * A value that is not a formula always makes a new row.
75
+ */
76
+ const FormulaBelow: {
77
+ /**
78
+ * The row becomes the table's totals row, and the formula its column's total. The other columns
79
+ * total nothing, unless the table held totals from a totals row shown earlier. The default.
80
+ */
81
+ readonly TotalsRow: "totalsRow";
82
+ /**
83
+ * The row becomes a row of the table, as a value would.
84
+ */
85
+ readonly InsideTable: "insideTable";
86
+ /**
87
+ * The formula stays below the table, which does not grow.
88
+ */
89
+ readonly BelowTable: "belowTable";
90
+ };
91
+ type FormulaBelow = typeof FormulaBelow[keyof typeof FormulaBelow];
39
92
  /**
40
93
  * Returns a column for the table.
41
94
  */
@@ -63,27 +116,75 @@ export declare namespace ITable {
63
116
  */
64
117
  getIndex(): number;
65
118
  /**
66
- * A string representing a label in the totals row for the given column.
119
+ * Sets the text shown in the totals row for this column.
120
+ *
121
+ * @param label The text, or an empty string for none.
122
+ *
123
+ * @remarks
124
+ * A totals cell shows a label or a formula, never both: setting a label removes the column's
125
+ * totals formula. While the totals row is hidden the label is kept, and shown with the row.
67
126
  */
68
127
  setTotalsRowLabel(label: string): this;
69
128
  /**
70
- * Returns a string representing a label in the totals row for the given column.
129
+ * Returns the text shown in the totals row for this column.
71
130
  *
72
131
  * @returns The label or `null` if there is none.
132
+ *
133
+ * @remarks
134
+ * While the totals row is shown this is what its cell holds, so text typed into the cell is
135
+ * the label.
73
136
  */
74
137
  getTotalsRowLabel(): string | null;
75
138
  /**
76
- * This is either a number or a string.
139
+ * Sets what this column totals.
140
+ *
141
+ * @param formula A `SUBTOTAL` function number (`101` to `110`; `109` is sum, `101` average,
142
+ * `103` count), a formula with or without the leading `=`, or `undefined` for none. A function
143
+ * number totals this column: `109` is `=SUBTOTAL(109,[Column])`.
77
144
  *
78
145
  * @remarks
79
- * If this is a custom formula then this is a string if it is a number then
80
- * is is treated as the functionNum param to the SUBTOTAL function.
146
+ * A totals cell shows a label or a formula, never both: setting a formula removes the column's
147
+ * totals label. While the totals row is hidden the formula is kept, and shown with the row.
148
+ *
149
+ * @example
150
+ * ```ts
151
+ * table.setShowTotals(true);
152
+ * table.getColumnByName('Amount').setTotalsRowFormula(109);
153
+ * table.getColumnByName('Price').setTotalsRowFormula('=MAX([Price])-MIN([Price])');
154
+ * ```
81
155
  */
82
156
  setTotalsRowFormula(formula: string | number | undefined): this;
83
157
  /**
84
- * Returns this is either a number or a string.
158
+ * Returns what this column totals.
159
+ *
160
+ * @returns A `SUBTOTAL` function number when the column is totaled by one over itself, the
161
+ * formula without its leading `=` for anything else, or `null` if there is none.
162
+ *
163
+ * @remarks
164
+ * While the totals row is shown this is what its cell holds, so a formula typed into the cell
165
+ * is returned here, and `=SUBTOTAL(109,[Column])` typed into it returns `109`.
85
166
  */
86
167
  getTotalsRowFormula(): string | number | null;
168
+ /**
169
+ * Returns the formula this column calculates its rows with.
170
+ *
171
+ * @returns The formula without its leading `=`, as it reads in the column's first body row, or
172
+ * `null` if this is not a calculated column.
173
+ *
174
+ * @remarks
175
+ * A column becomes calculated when a formula is entered into one of its cells and the rest of
176
+ * the column is empty: the formula is filled down the column, and every row added to the
177
+ * table afterwards is given it too. Entering a different formula into a calculated column
178
+ * replaces it for the whole column, unless the column already holds a cell that differs.
179
+ *
180
+ * @example
181
+ * ```ts
182
+ * sheet.getRange('D2').setFormula('=[@Price]*[@Qty]');
183
+ * // once the column has filled
184
+ * table.getColumnByName('Total').getCalculatedFormula(); // '[@Price]*[@Qty]'
185
+ * ```
186
+ */
187
+ getCalculatedFormula(): string | null;
87
188
  /**
88
189
  * Returns the sort field for this column.
89
190
  */
@@ -140,17 +241,24 @@ export declare namespace ITable {
140
241
  */
141
242
  id?: string;
142
243
  /**
143
- * A string representing a label in the totals row for the given column.
244
+ * The text shown in the totals row for this column. A column with a
245
+ * {@link totalsRowFormula} shows that instead.
144
246
  */
145
247
  totalsRowLabel?: string;
146
248
  /**
147
- * This is either a number or a string.
249
+ * What this column totals: a `SUBTOTAL` function number (`101` to `110`; `109` is sum) that
250
+ * totals this column, or a formula without its leading `=`.
148
251
  *
149
- * @remarks
150
- * If this is a custom formula then this is a string if it is a number then
151
- * is is treated as the functionNum param to the SUBTOTAL function.
252
+ * @see {@link ITable.IColumn.setTotalsRowFormula}
152
253
  */
153
254
  totalsRowFormula?: string | number;
255
+ /**
256
+ * The formula a calculated column gives its rows, without its leading `=`, as it reads in the
257
+ * column's first body row.
258
+ *
259
+ * @see {@link ITable.IColumn.getCalculatedFormula}
260
+ */
261
+ calculatedColumnFormula?: string;
154
262
  }
155
263
  /**
156
264
  * A set of values that can be set on a ITable.
@@ -193,15 +301,38 @@ export declare namespace ITable {
193
301
  * @defaultValue 0
194
302
  */
195
303
  totalsRowCount?: number;
304
+ /**
305
+ * Whether the table has ever shown a totals row.
306
+ *
307
+ * @remarks
308
+ * The first time a totals row is shown the last column is given a total - a sum when the
309
+ * column holds only numbers, a count otherwise. A table that has already shown one keeps
310
+ * whatever its columns had when the row was hidden, including nothing.
311
+ *
312
+ * @defaultValue false
313
+ */
314
+ totalsRowShown?: boolean;
196
315
  /**
197
316
  * If not specified then the default table style is used
198
317
  * If the style name isn't valid then uses a 'none' style.
199
318
  */
200
319
  style?: ITableStyle.StyleOptions | string;
201
320
  /**
202
- * If true the table will not auto expand.
321
+ * Which edges of the table grow when something is entered just beside it.
322
+ *
323
+ * @defaultValue {@link ITable.AutoExpand.Both}
203
324
  */
204
- disabledAutoExpand?: boolean;
325
+ autoExpand?: ITable.AutoExpand;
326
+ /**
327
+ * Where a formula entered in the row just below the table goes.
328
+ *
329
+ * @defaultValue {@link ITable.FormulaBelow.TotalsRow}
330
+ */
331
+ formulaBelow?: ITable.FormulaBelow;
332
+ /**
333
+ * If true a formula entered into a column is not filled down it.
334
+ */
335
+ disabledColumnFill?: boolean;
205
336
  /**
206
337
  * A unique id for all tables in the workbook.
207
338
  *
@@ -322,6 +453,9 @@ export interface ITable extends IAnchored {
322
453
  /**
323
454
  * Add a single row to the table.
324
455
  *
456
+ * @param index The body row the new row goes in before, `0` being the first. Omitted, the row
457
+ * is added at the end.
458
+ *
325
459
  * @remarks
326
460
  * This is a convenience method for {@link addRows(index, 1)}
327
461
  */
@@ -329,11 +463,19 @@ export interface ITable extends IAnchored {
329
463
  /**
330
464
  * Add a number of rows to a table.
331
465
  *
466
+ * @param index The body row the new rows go in before, `0` being the first. An index at or past
467
+ * the number of body rows adds them at the end, above the totals row if there is one.
468
+ * @param count The number of rows to add. Defaults to `1`.
469
+ *
332
470
  * @remarks
333
- * Not implemented
471
+ * The rows are inserted across the table's columns only: cells below the table move down, and
472
+ * cells beside it stay where they are. A calculated column gives the new rows its formula.
334
473
  *
335
- * @param index
336
- * @param count
474
+ * @example
475
+ * ```ts
476
+ * table.addRows(0, 2); // two rows at the top of the body
477
+ * table.addRow(); // one at the end
478
+ * ```
337
479
  */
338
480
  addRows(index: number, count?: number, options?: ITransaction.OperationOptions): ITable;
339
481
  /**
@@ -386,6 +528,15 @@ export interface ITable extends IAnchored {
386
528
  * @returns The column or `null` if not found.
387
529
  */
388
530
  getColumnAt(index: number): ITable.IColumn | null;
531
+ /**
532
+ * Deletes the table and clears its cells.
533
+ *
534
+ * @remarks
535
+ * A formula that references the table has each reference replaced by `#REF!`.
536
+ *
537
+ * @see {@link ITable.convertToRange} to remove the table and keep its cells.
538
+ */
539
+ delete(options?: ITransaction.OperationOptions): void;
389
540
  /**
390
541
  * Convert the existing table to a range.
391
542
  * This will remove the table but preserve the original
@@ -395,6 +546,9 @@ export interface ITable extends IAnchored {
395
546
  *
396
547
  * @remarks
397
548
  * This can be an expensive operation.
549
+ *
550
+ * A formula that references the table has each reference replaced by the absolute address it
551
+ * designated (`Sheet1!$A$2:$C$4`).
398
552
  */
399
553
  convertToRange(maxCells?: number, options?: ITransaction.OperationOptions): ICellRange;
400
554
  /**
@@ -556,13 +710,42 @@ export interface ITable extends IAnchored {
556
710
  */
557
711
  setShowBandedRows(showBandedRows: boolean, options?: ITransaction.OperationOptions): this;
558
712
  /**
559
- * If true the table will not auto expand.
713
+ * Set which edges of the table grow when something is entered just beside it.
714
+ *
715
+ * @remarks
716
+ * The growth is its own step, so the first undo takes back the growth and keeps what was entered.
717
+ */
718
+ setAutoExpand(autoExpand: ITable.AutoExpand, options?: ITransaction.OperationOptions): this;
719
+ /**
720
+ * Returns which edges of the table grow when something is entered just beside it.
721
+ */
722
+ getAutoExpand(): ITable.AutoExpand;
723
+ /**
724
+ * Set where a formula entered in the row just below the table goes.
725
+ *
726
+ * @example
727
+ * ```ts
728
+ * // formulas typed under the table become new rows, as values do
729
+ * table.setFormulaBelow(ITable.FormulaBelow.InsideTable);
730
+ * ```
731
+ */
732
+ setFormulaBelow(formulaBelow: ITable.FormulaBelow, options?: ITransaction.OperationOptions): this;
733
+ /**
734
+ * Returns where a formula entered in the row just below the table goes.
735
+ */
736
+ getFormulaBelow(): ITable.FormulaBelow;
737
+ /**
738
+ * If true a formula entered into one cell of an empty column is not filled down the column.
739
+ *
740
+ * @remarks
741
+ * A column that is already calculated keeps its formula, and rows added to the table are still
742
+ * given it.
560
743
  */
561
- setDisabledAutoExpand(disabledAutoSize: boolean, options?: ITransaction.OperationOptions): this;
744
+ setDisabledColumnFill(disabledColumnFill: boolean, options?: ITransaction.OperationOptions): this;
562
745
  /**
563
- * Returns if the table is set to not auto expand.
746
+ * Returns if the table is set to not fill a formula down its column.
564
747
  */
565
- isDisabledAutoExpand(): boolean;
748
+ isDisabledColumnFill(): boolean;
566
749
  /**
567
750
  * Returns the bounds for the ref accounting for hidden headers.
568
751
  *
@@ -600,16 +783,19 @@ export interface ITable extends IAnchored {
600
783
  */
601
784
  getSnapshot(options?: ReferenceableClipboard.CopyOptions): ITable.ISnapshot;
602
785
  /**
603
- * Applied all filters using the existing criteria.
786
+ * Applies all filters using the existing criteria.
604
787
  *
605
788
  * @remarks
606
789
  * Does not change criteria; only recomputes which rows are visible.
790
+ *
791
+ * @returns Resolves once the rows are hidden; one transaction, one undo step.
607
792
  */
608
- applyFilters(options?: ITransaction.OperationOptions): this;
793
+ applyFilters(options?: ITransaction.OperationOptions): Promise<this>;
609
794
  /**
610
- * Clears all filters.
795
+ * Clears all filters and shows every row of the table, as Excel's Clear does — a row hidden by
796
+ * hand inside the table comes back too. The header and totals rows are never touched.
611
797
  */
612
- deleteFilters(options?: ITransaction.OperationOptions): this;
798
+ deleteFilters(options?: ITransaction.OperationOptions): Promise<this>;
613
799
  /**
614
800
  * Returns the active filter entries as handle objects,
615
801
  */
@@ -619,9 +805,21 @@ export interface ITable extends IAnchored {
619
805
  */
620
806
  getFilterAt(index: number): IFilter | null;
621
807
  /**
622
- * Perform filtering on the table.
808
+ * Replaces the filter levels and hides the rows that fail them.
809
+ *
810
+ * @param conditions
811
+ * - `undefined` or `{ conditions: [] }` → clears every filter, as {@link deleteFilters}.
812
+ * - a bare `ICondition.Input` → one filter on the first column, as `ICellRange.filter`.
813
+ * - `{ conditions: [...] }` → one level per condition, on the column each `index` names
814
+ * (its position in the array when omitted), in that order.
815
+ *
816
+ * @remarks
817
+ * Every row the table holds is judged, whatever hid it before (`includeHidden` defaults to
818
+ * `true` for a filter); the header and totals rows are never evaluated or hidden.
819
+ *
820
+ * @returns Resolves once the rows are hidden; one transaction, one undo step.
623
821
  */
624
- filter(conditions?: ICondition.Input | ICondition.RangeOptions, options?: ITransaction.OperationOptions): this;
822
+ filter(conditions?: ICondition.Input | ICondition.RangeOptions, options?: ITransaction.OperationOptions): Promise<this>;
625
823
  /**
626
824
  * Replaces the sort chain.
627
825
  *
@@ -658,13 +856,13 @@ export interface ITable extends IAnchored {
658
856
  */
659
857
  getActiveSorts(): readonly ISort[];
660
858
  /**
661
- * Applies both applySorts and applyFilters.
859
+ * Applies both applyFilters and applySorts, in that order, as one transaction.
662
860
  */
663
- applySortsAndFilters(options?: ITransaction.OperationOptions): this;
861
+ applySortsAndFilters(options?: ITransaction.OperationOptions): Promise<this>;
664
862
  /**
665
- * Deletes both sorts and filters.
863
+ * Deletes both sorts and filters as one transaction.
666
864
  */
667
- deleteSortsAndFilters(options?: ITransaction.OperationOptions): this;
865
+ deleteSortsAndFilters(options?: ITransaction.OperationOptions): Promise<this>;
668
866
  /**
669
867
  * Sets whether the filter/sort button at the specified index is hidden.
670
868
  */
@@ -28,6 +28,8 @@ export interface ITableCollection extends ICollection<ITable> {
28
28
  * @param name The name to filter for This is case insensitive.
29
29
  */
30
30
  getByName(name: string): ITable | null;
31
+ /** For runtime type checking. */
32
+ readonly isITableCollection: true;
31
33
  }
32
34
  /**
33
35
  * {@inheritDoc ITableCollection}
@@ -1,20 +1,31 @@
1
1
  import { ICellRange, ICellRanges } from '../cellRange';
2
+ import { ICollection, AbstractCollection } from '../type';
3
+ import { IListener } from '../listener';
2
4
  import { ITableCollection } from './ITableCollection';
3
5
  import { ITable } from './ITable';
4
- export declare class TableCollection implements ITableCollection {
6
+ /**
7
+ * Implementation for {@link ITableCollection}.
8
+ *
9
+ * @remarks
10
+ * A front over the sheet's own table state — the sheet keeps the store and the events, this
11
+ * class keeps the API. `onCollectionChange` is the sheet's `onTablesChange`, forwarded with this
12
+ * collection as the source.
13
+ */
14
+ export declare class TableCollection extends AbstractCollection<ITable, ITableCollection.GetItemsOptions> implements ITableCollection {
5
15
  private _add;
6
16
  private _get;
7
17
  private _getByName;
8
- constructor(add: (address: ICellRange.Address, options: ITableCollection.AddOptions | boolean) => ITable, get: (address: ICellRanges.Address, ignoreHidden?: boolean, fullyContained?: boolean) => ITable[], getByName: (name: string) => ITable);
18
+ private _addListeners;
19
+ constructor(add: (address: ICellRange.Address, options: ITableCollection.AddOptions | boolean) => ITable, get: (address: ICellRanges.Address, ignoreHidden?: boolean, fullyContained?: boolean) => ITable[], getByName: (name: string) => ITable, addListeners: (listeners: ICollection.IListeners, options?: IListener.Options) => IListener.Remove);
9
20
  /** {@inheritDoc ITableCollection.add} */
10
21
  add(address: ICellRange.Address, options?: ITableCollection.AddOptions): ITable;
11
- /** {@inheritDoc ICollection.[Symbol.iterator]} */
12
- [Symbol.iterator](): IterableIterator<ITable>;
13
- /** {@inheritDoc ITableCollection.getItems} */
14
- getItems(options?: ITableCollection.GetItemsOptions): ITable[];
22
+ /** {@inheritDoc AbstractCollection._getItems} */
23
+ protected _getItems(options?: ITableCollection.GetItemsOptions): ITable[];
15
24
  /** {@inheritDoc ITableCollection.getByName} */
16
25
  getByName(name: string): ITable;
17
- /** {@inheritDoc ITableCollection.getCount} */
18
- getCount(): number;
26
+ /** {@inheritDoc ICollection.addListeners} */
27
+ addListeners(listeners: ICollection.IListeners, options?: IListener.Options): IListener.Remove;
28
+ /** {@inheritDoc ITableCollection.isITableCollection} */
29
+ get isITableCollection(): true;
19
30
  }
20
31
  //# sourceMappingURL=TableCollection.d.ts.map
@@ -10,14 +10,14 @@ export declare class FilterField implements IFilter {
10
10
  private _getProps;
11
11
  private _getColumnProps;
12
12
  constructor(table: ITable, id: number | string, getProps: (id: number | string) => FilterPropertiesState, getColumnProps: (id: number | string) => ColumnPropertiesState);
13
- /** {@inheritDoc IFilter.Filterable.filter} */
14
- filter(condition?: ICondition.Input | null, options?: ITransaction.OperationOptions): this;
13
+ /** {@inheritDoc IFilter.IFilterable.filter} */
14
+ filter(condition?: ICondition.Input | null, options?: ITransaction.OperationOptions): Promise<this>;
15
15
  /** {@inheritDoc IFilter.getCondition} */
16
16
  getCondition(): ICondition | null;
17
17
  /** {@inheritDoc IFilter.setCondition} */
18
- setCondition(condition: ICondition.Input | null | undefined, append?: boolean, options?: ITransaction.OperationOptions): void;
18
+ setCondition(condition: ICondition.Input | null | undefined, replace?: boolean, options?: ITransaction.OperationOptions): Promise<this>;
19
19
  /** {@inheritDoc IFilter.apply} */
20
- apply(): void;
20
+ apply(options?: ITransaction.OperationOptions): Promise<this>;
21
21
  /** {@inheritDoc IFilter.getIndex} */
22
22
  getIndex(): number;
23
23
  /** {@inheritDoc IFilter.getRange} */
@@ -25,6 +25,8 @@ export declare class FilterField implements IFilter {
25
25
  /** {@inheritDoc IFilter.getLevel} */
26
26
  getLevel(): number;
27
27
  /** {@inheritDoc IFilter.delete} */
28
- delete(options?: ITransaction.OperationOptions): void;
28
+ delete(options?: ITransaction.OperationOptions): Promise<this>;
29
+ /** {@inheritDoc IFilter.isIFilter} */
30
+ get isIFilter(): true;
29
31
  }
30
32
  //# sourceMappingURL=_FilterField.d.ts.map
@@ -2,6 +2,7 @@ import { IRange } from '@sheetxl/primitives';
2
2
  import { ICellRange, ICellRanges } from '../cellRange';
3
3
  import { INamed } from '../named';
4
4
  import { ISheet } from '../sheet';
5
+ import { ITransaction } from '../transaction';
5
6
  import { ITable } from './ITable';
6
7
  import { AbstractNamed } from '../named/AbstractNamed';
7
8
  export declare class NamedTable extends AbstractNamed<ITable, any> {
@@ -43,8 +44,14 @@ export declare class NamedTable extends AbstractNamed<ITable, any> {
43
44
  *
44
45
  * Only single-rectangle selections are answered, because only those have a spelling: a structured
45
46
  * reference names one contiguous region.
47
+ *
48
+ * Cells in `home`'s own data row are this-row references, whichever sheet `home` is on:
49
+ * `Sales[@Amount]` for one cell, `Sales[@[Qty]:[Cost]]` for adjacent ones and `Sales[@]` for the
50
+ * whole row. For a `home` cell
51
+ * inside this table, a single column drops the table name as Excel shows it: `[Amount]` for the
52
+ * column's data cells, `[@Amount]` for the one cell in `home`'s row.
46
53
  */
47
- getPartReference(coords: readonly IRange.Coords[]): string | null;
54
+ getPartReference(coords: readonly IRange.Coords[], home?: IRange.CellCoords | null): string | null;
48
55
  /**
49
56
  * The item specifiers naming the rows `target` spans exactly, or `null` for a partial/oversized
50
57
  * one. Usually one (`['#Data']`); two for a band that is the union of two adjacent ones
@@ -79,6 +86,15 @@ export declare class NamedTable extends AbstractNamed<ITable, any> {
79
86
  getScope(): string;
80
87
  getType(): string;
81
88
  getName(): string;
89
+ /**
90
+ * {@inheritDoc INamed.setName}
91
+ *
92
+ * @remarks
93
+ * The table owns the name; this item only presents it. Delegated so that renaming through either
94
+ * handle is the same operation, rather than writing a name into this item's own state that
95
+ * {@link getName} never reads back.
96
+ */
97
+ setName(name: string, options?: ITransaction.OperationOptions): this;
82
98
  getValue(): ITable;
83
99
  }
84
100
  //# sourceMappingURL=_NamedTable.d.ts.map
@@ -37,6 +37,7 @@ export declare class NamedTableSource implements NamedCollection.Source {
37
37
  */
38
38
  addListeners(listeners: {
39
39
  onCollectionChange?: (...args: any[]) => void;
40
+ onInvalidated?: (...args: any[]) => void;
40
41
  }, options?: IListener.Options): IListener.Remove;
41
42
  /** Re-points a subscription at the current sheets, if they have changed. */
42
43
  private _syncSubscription;
@@ -25,5 +25,7 @@ export declare class SortField implements ISort {
25
25
  getLevel(): number;
26
26
  /** {@inheritDoc ISort.delete} */
27
27
  delete(options?: ITransaction.OperationOptions): void;
28
+ /** {@inheritDoc ISort.isISort} */
29
+ get isISort(): true;
28
30
  }
29
31
  //# sourceMappingURL=_SortField.d.ts.map
@@ -3,14 +3,23 @@ import { ICellRange } from '../cellRange';
3
3
  import { ISort } from '../sort';
4
4
  import { IFilter } from '../filter';
5
5
  import { ITable } from './ITable';
6
- import { ColumnPropertiesState } from './_TableUtils';
6
+ import { ColumnPropertiesState, ColumnTotals } from './_TableUtils';
7
7
  export declare class TableColumn implements ITable.IColumn {
8
8
  protected _table: ITable;
9
9
  protected _id: number | string;
10
10
  protected _getProps: (id: number | string) => ColumnPropertiesState;
11
11
  protected _updateProps: (id: number | string, update: Partial<ITable.ColumnProperties> | null, options?: string | ITransaction.OperationOptions) => void;
12
12
  protected _deleteSelf: (id: number | string, options?: ITransaction.OperationOptions) => void;
13
- constructor(table: ITable, id: number | string, getProps: (id: number | string) => ColumnPropertiesState, updateProps: (id: number | string, update: Partial<ITable.ColumnProperties> | null, options?: string | ITransaction.OperationOptions) => void, deleteSelf: (id: number | string, options?: ITransaction.OperationOptions) => void);
13
+ protected _getTotals: ((id: number | string) => ColumnTotals) | undefined;
14
+ protected _getCalculated: ((id: number | string) => string | null) | undefined;
15
+ /**
16
+ * @param getTotals What the column's totals cell holds. A table whose totals row is on a sheet
17
+ * answers from the cell; without this the column props are all there is.
18
+ * @param getCalculated The column's calculated formula as the engine has it now; without this
19
+ * the column props are all there is.
20
+ */
21
+ constructor(table: ITable, id: number | string, getProps: (id: number | string) => ColumnPropertiesState, updateProps: (id: number | string, update: Partial<ITable.ColumnProperties> | null, options?: string | ITransaction.OperationOptions) => void, deleteSelf: (id: number | string, options?: ITransaction.OperationOptions) => void, getTotals?: (id: number | string) => ColumnTotals, getCalculated?: (id: number | string) => string | null);
22
+ private _totals;
14
23
  /** {@inheritDoc ITable.IColumn.getTable} */
15
24
  getTable(): ITable;
16
25
  /** {@inheritDoc ITable.IColumn.getName} */
@@ -29,6 +38,8 @@ export declare class TableColumn implements ITable.IColumn {
29
38
  setTotalsRowFormula(formula: string | number | undefined): this;
30
39
  /** {@inheritDoc ITable.IColumn.getTotalsRowFormula} */
31
40
  getTotalsRowFormula(): string | number | null;
41
+ /** {@inheritDoc ITable.IColumn.getCalculatedFormula} */
42
+ getCalculatedFormula(): string | null;
32
43
  /** {@inheritDoc ITable.IColumn.getSort} */
33
44
  getSort(): ISort | null;
34
45
  /** {@inheritDoc ITable.IColumn.getFilter} */
@@ -2,4 +2,5 @@ export declare const MODEL_DELETED = "Table has been deleted. No further operati
2
2
  export declare const MODEL_CLOSED = "Table has been closed. No further operations are allowed.";
3
3
  export declare const ERROR_GET_BY_NAME = "Get by name must take a valid name.";
4
4
  export declare const ERROR_TABLE_COLUMN_ID_IMMUTABLE = "Table column ID is immutable and can not be changed.";
5
+ export declare const ERROR_NO_SHEET = "Table is not on a sheet. A preview table has no cells to operate on.";
5
6
  //# sourceMappingURL=_TableMessages.d.ts.map
@@ -20,9 +20,49 @@ export declare function defaultAutoTableName(): string;
20
20
  export declare function defaultAutoTableDescription(): string;
21
21
  export type ColumnNamer = (name: string, index: number) => string;
22
22
  export declare function DefaultColumnNamer(name: string, index: number): string;
23
+ /**
24
+ * The case-insensitive key a column name is deduplicated by. Not trimmed: Excel keeps ` `, `a ` and
25
+ * `a` as three distinct columns, and only an empty name is blank.
26
+ */
23
27
  export declare function toKey(name: string | null | undefined): string | null;
24
28
  export declare function deserializeRef(ref?: IRange.Coords | any): IRange.Coords;
25
29
  export declare const DefaultStyleOptions: ITableStyle.StyleOptions;
30
+ /**
31
+ * What a column's totals cell shows: a label, a formula, or nothing. Never both - a cell is one
32
+ * thing.
33
+ */
34
+ export type ColumnTotals = Pick<ITable.ColumnProperties, 'totalsRowLabel' | 'totalsRowFormula'>;
35
+ /** Whether `value` is a `SUBTOTAL` function number a totals row can hold (`101` to `110`). */
36
+ export declare function isTotalsFunctionNumber(value: unknown): value is number;
37
+ /**
38
+ * A totals formula as the table holds it: a `SUBTOTAL` function number, or an expression in
39
+ * storage form without the leading `=`. `undefined` when there is none.
40
+ *
41
+ * @remarks
42
+ * Input arrives three ways - a number, an expression, and the function NAME a file uses (`'sum'`).
43
+ * A name becomes its number, so nothing past this point has to know the names exist.
44
+ */
45
+ export declare function normalizeTotalsRowFormula(value: string | number | null | undefined): string | number | undefined;
46
+ /**
47
+ * A column as a structured reference spells it, without the brackets: `[`, `]`, `#` and `'` each
48
+ * escaped with a leading `'`, as Excel spells them.
49
+ */
50
+ export declare function columnSpecifier(name: string): string;
51
+ /**
52
+ * The expression a totals function number stands for, in the column it totals.
53
+ *
54
+ * @remarks
55
+ * The bare `[Column]` form, as it is typed into a totals cell. It binds to the table the cell is
56
+ * in, so it can only be written once the sheet has that table.
57
+ */
58
+ export declare function totalsFunctionExpression(functionNum: number, columnName: string): string;
59
+ /**
60
+ * The function number a totals expression is the built-in form of - `SUBTOTAL(10x,` this column
61
+ * `)` - or `null` for anything else.
62
+ *
63
+ * @param expression Storage or display form; the column may be qualified by its table or not.
64
+ */
65
+ export declare function asTotalsFunctionNumber(expression: string, tableName: string, columnName: string): number | null;
26
66
  /**
27
67
  * Faster solution for normalize columns when empty.
28
68
  */
@@ -10,6 +10,8 @@ export interface IBullet {
10
10
  readonly imageNaturalWidth: number;
11
11
  readonly imageNaturalHeight: number;
12
12
  readonly bounds?: Bounds;
13
+ /** For runtime type checking. */
14
+ readonly isIBullet: true;
13
15
  }
14
16
  export declare class DefaultBullet implements IBullet {
15
17
  private _fontName;
@@ -30,5 +32,7 @@ export declare class DefaultBullet implements IBullet {
30
32
  get imageNaturalWidth(): number;
31
33
  get imageNaturalHeight(): number;
32
34
  get bounds(): Bounds | undefined;
35
+ /** {@inheritDoc IBullet.isIBullet} */
36
+ get isIBullet(): true;
33
37
  }
34
38
  //# sourceMappingURL=Bullet.d.ts.map