@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
@@ -1,38 +1,325 @@
1
+ import { Scalar } from '@sheetxl/primitives';
2
+ import { ITransaction } from '../transaction';
1
3
  import { IResource } from '../resource';
4
+ import { IListener } from '../listener';
2
5
  import { IModel } from '../model';
6
+ import { IMovable, IMovableCollection } from '../movable';
7
+ import { ITable } from '../table';
8
+ import { ISheet } from '../sheet';
3
9
  /**
4
- * ISplicer
10
+ * A slicer: buttons that filter one column of a table.
5
11
  *
6
12
  * @remarks
7
- * Not fully implemented.
13
+ * A slicer holds no selection of its own. What it shows as selected is the column's filter
14
+ * ({@link ITable.IColumn.getFilter}), so a filter set from the column's menu shows on the slicer,
15
+ * and a selection made on the slicer is the column's filter, saved with the table. Two slicers on
16
+ * one column always agree.
8
17
  *
9
- * @hidden
10
- * @internal
18
+ * The column is named by a structured reference ({@link getSource}), which follows the table and
19
+ * the column through a rename. When the column or its table is deleted, the slicer is deleted with
20
+ * it, in the same step; an undo brings both back.
21
+ *
22
+ * Where a slicer sits is its movable's ({@link IMovable.getBounds}); it moves freely of the cells
23
+ * under it by default.
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * const table = sheet.getTables().getByName('Sales');
28
+ * const slicer = await table.addSlicer('Region');
29
+ * await slicer.selectItems(['East', 'West']);
30
+ * ```
11
31
  */
12
- export interface ISlicer extends IModel {
32
+ export interface ISlicer extends IModel, IMovable.IContent {
33
+ /**
34
+ * Returns the column the slicer filters, as a structured reference: `Sales[Region]`.
35
+ *
36
+ * @remarks
37
+ * Follows a rename of the table or the column.
38
+ */
39
+ getSource(): string;
40
+ /**
41
+ * Returns the table the slicer filters, or `null` if it names none.
42
+ */
43
+ getTable(): ITable | null;
44
+ /**
45
+ * Returns the column the slicer filters, or `null` if it names none.
46
+ */
47
+ getColumn(): ITable.IColumn | null;
48
+ /**
49
+ * Returns the text shown in the slicer's header.
50
+ *
51
+ * @remarks
52
+ * The column's name unless a caption has been set, and then it follows a rename of the column.
53
+ */
54
+ getCaption(): string;
55
+ /**
56
+ * Sets the text shown in the slicer's header.
57
+ *
58
+ * @param caption The caption, or `null` to show the column's name.
59
+ */
60
+ setCaption(caption: string | null, options?: ITransaction.OperationOptions): this;
61
+ /**
62
+ * Returns whether the header is shown.
63
+ */
64
+ isShowCaption(): boolean;
65
+ /**
66
+ * Sets whether the header is shown.
67
+ */
68
+ setShowCaption(show: boolean, options?: ITransaction.OperationOptions): this;
69
+ /**
70
+ * Returns the name a formula refers to the slicer's selection by: `Slicer_Region`.
71
+ *
72
+ * @remarks
73
+ * Made from the column's name when the slicer is created, and kept through a rename of the
74
+ * column, as Excel keeps it.
75
+ */
76
+ getCacheName(): string;
77
+ /**
78
+ * Returns the name of the slicer style.
79
+ *
80
+ * @defaultValue `'SlicerStyleLight1'`
81
+ */
82
+ getStyle(): string;
83
+ /**
84
+ * Sets the slicer style by name.
85
+ */
86
+ setStyle(style: string, options?: ITransaction.OperationOptions): this;
87
+ /**
88
+ * Returns the order the items are listed in.
89
+ */
90
+ getSortOrder(): ISlicer.SortOrder;
91
+ /**
92
+ * Sets the order the items are listed in.
93
+ */
94
+ setSortOrder(sortOrder: ISlicer.SortOrder, options?: ITransaction.OperationOptions): this;
95
+ /**
96
+ * Returns how items without data are shown: those whose rows the other columns' filters hide.
97
+ */
98
+ getCrossFilter(): ISlicer.CrossFilter;
99
+ /**
100
+ * Sets how items without data are shown.
101
+ */
102
+ setCrossFilter(crossFilter: ISlicer.CrossFilter, options?: ITransaction.OperationOptions): this;
103
+ /**
104
+ * Returns the number of columns the items are laid out in.
105
+ */
106
+ getColumnCount(): number;
107
+ /**
108
+ * Sets the number of columns the items are laid out in, at least 1.
109
+ */
110
+ setColumnCount(count: number, options?: ITransaction.OperationOptions): this;
111
+ /**
112
+ * Returns the height of each item's button, in pixels.
113
+ */
114
+ getRowHeight(): number;
115
+ /**
116
+ * Sets the height of each item's button, in pixels.
117
+ */
118
+ setRowHeight(height: number, options?: ITransaction.OperationOptions): this;
119
+ /**
120
+ * Returns whether the slicer is marked as not to be moved or resized.
121
+ */
122
+ isLockedPosition(): boolean;
123
+ /**
124
+ * Sets whether the slicer is marked as not to be moved or resized.
125
+ */
126
+ setLockedPosition(locked: boolean, options?: ITransaction.OperationOptions): this;
127
+ /**
128
+ * Returns `true` when the column has no filter: every item is selected.
129
+ */
130
+ isFilterCleared(): boolean;
131
+ /**
132
+ * Returns the items: the column's distinct values as it shows them, in the slicer's order.
133
+ *
134
+ * @remarks
135
+ * Every row of the column is read, hidden or not. An item has data when at least one row
136
+ * holding it passes the other columns' filters. Blanks are one item, keyed `''`, listed last.
137
+ */
138
+ getItems(): Promise<readonly ISlicer.Item[]>;
139
+ /**
140
+ * Returns the item with `key`, or `null`.
141
+ */
142
+ getItem(key: string): Promise<ISlicer.Item | null>;
143
+ /**
144
+ * Selects the items with `keys` and no others, by filtering the column.
145
+ *
146
+ * @param keys The items' keys. `null`, an empty list or every item clears the filter.
147
+ *
148
+ * @remarks
149
+ * The other columns' filters stay. On a date column the selection is saved as the dates
150
+ * themselves, not their text.
151
+ */
152
+ selectItems(keys: readonly string[] | null, options?: ITransaction.OperationOptions): Promise<this>;
153
+ /**
154
+ * Clears the column's filter, selecting every item.
155
+ */
156
+ clearFilters(options?: ITransaction.OperationOptions): Promise<this>;
157
+ /**
158
+ * Deletes the slicer, and with it the movable that places it.
159
+ */
160
+ delete(options?: ITransaction.OperationOptions): void;
161
+ /**
162
+ * Add Listeners.
163
+ *
164
+ * @see
165
+ * {@link IListener.ISource.addListeners}
166
+ */
167
+ addListeners(listeners: ISlicer.IListeners, options?: IListener.Options): IListener.Remove;
168
+ /**
169
+ * @returns The current state as JSON, or `null` once deleted.
170
+ */
13
171
  toJSON(toResourceId?: (resource: IResource) => number | null): ISlicer.JSON | null;
14
- getDescription(): string;
172
+ /** For runtime type checking. */
173
+ readonly isISlicer: true;
15
174
  }
175
+ /**
176
+ * {@inheritDoc ISlicer}
177
+ *
178
+ * @see
179
+ * ### **Interface**
180
+ *
181
+ * {@link ISlicer}
182
+ */
16
183
  export declare namespace ISlicer {
184
+ /**
185
+ * The order items are listed in.
186
+ *
187
+ * - `'ascending'` / `'descending'`: by value, as the column sorts.
188
+ * - `'dataSource'`: in the order the values first appear in the column.
189
+ */
190
+ type SortOrder = 'ascending' | 'descending' | 'dataSource';
191
+ /**
192
+ * How items without data are shown.
193
+ *
194
+ * - `'showItemsWithDataAtTop'`: after the items with data.
195
+ * - `'showItemsWithNoData'`: in their place in the order.
196
+ * - `'none'`: not at all.
197
+ */
198
+ type CrossFilter = 'showItemsWithDataAtTop' | 'showItemsWithNoData' | 'none';
199
+ /**
200
+ * One button of a slicer.
201
+ */
202
+ interface Item {
203
+ /**
204
+ * The item's identity: the text the column shows for it, `''` for the blank item. What
205
+ * {@link ISlicer.selectItems} takes.
206
+ */
207
+ key: string;
208
+ /** The text shown on the button. */
209
+ name: string;
210
+ /** The value of the first cell showing the item; `null` for the blank item. */
211
+ value: Scalar;
212
+ /** Whether at least one row holding the item passes the other columns' filters. */
213
+ hasData: boolean;
214
+ /** Whether the column's filter selects the item. */
215
+ isSelected: boolean;
216
+ }
217
+ /**
218
+ * Options for {@link ITable.addSlicer}.
219
+ */
220
+ interface AddOptions extends IMovableCollection.AddOptions<ISlicer.JSON> {
221
+ /**
222
+ * The sheet the slicer is placed on.
223
+ *
224
+ * @defaultValue The table's sheet.
225
+ */
226
+ sheet?: ISheet;
227
+ /** {@inheritDoc ISlicer.JSON.caption} */
228
+ caption?: string;
229
+ /**
230
+ * The slicer style's name.
231
+ *
232
+ * @defaultValue The workbook's default slicer style, {@link ISlicerStyleCollection.getDefault}.
233
+ */
234
+ style?: string;
235
+ /** {@inheritDoc ISlicer.JSON.columnCount} */
236
+ columnCount?: number;
237
+ }
238
+ /**
239
+ * Events a slicer announces.
240
+ */
241
+ interface Events extends IMovable.ContentEvents {
242
+ /**
243
+ * Called when the column's filter changes, by this slicer or anything else.
244
+ */
245
+ onSelectionChange?(source: ISlicer): void;
246
+ /**
247
+ * Called when the column's values change, so the items may have.
248
+ */
249
+ onItemsChange?(source: ISlicer): void;
250
+ }
251
+ interface IListeners extends IListener.Callbacks<ISlicer, ISlicer.Events> {
252
+ }
17
253
  /**
18
254
  * JSON representation of a slicer.
19
255
  */
20
256
  interface JSON {
21
- tableId: string;
22
- columnId: string;
257
+ /**
258
+ * The column, as a structured reference: `Sales[Region]`.
259
+ */
260
+ source: string;
261
+ /**
262
+ * The header text. Absent, the column's name.
263
+ */
23
264
  caption?: string;
265
+ /**
266
+ * Whether the header is hidden.
267
+ */
268
+ hiddenCaption?: boolean;
269
+ /**
270
+ * @defaultValue 1
271
+ */
24
272
  columnCount?: number;
273
+ /**
274
+ * Each item's height in pixels.
275
+ *
276
+ * @defaultValue 27
277
+ */
278
+ rowHeight?: number;
279
+ /**
280
+ * @defaultValue `'SlicerStyleLight1'`
281
+ */
282
+ style?: string;
283
+ /**
284
+ * @defaultValue `'ascending'`
285
+ */
286
+ sortOrder?: ISlicer.SortOrder;
287
+ /**
288
+ * @defaultValue `'showItemsWithDataAtTop'`
289
+ */
290
+ crossFilter?: ISlicer.CrossFilter;
291
+ /**
292
+ * Whether the slicer is marked as not to be moved or resized.
293
+ */
294
+ lockedPosition?: boolean;
295
+ /**
296
+ * Whether a custom list is ignored when sorting the items.
297
+ */
298
+ disabledCustomListSort?: boolean;
299
+ /**
300
+ * The name formulas refer to the selection by, as the file had it. Absent, made from the
301
+ * column's name.
302
+ */
303
+ cacheName?: string;
304
+ /**
305
+ * The index of the first item showing: where the list was scrolled to when saved.
306
+ *
307
+ * @remarks
308
+ * Restored when the slicer is first drawn. Scrolling the slicer does not change it.
309
+ */
25
310
  startItem?: number;
26
- showCaption?: boolean;
311
+ /**
312
+ * The level of a hierarchy shown, for a slicer read from a file.
313
+ */
27
314
  level?: number;
28
- locked?: boolean;
29
- displayHeader?: boolean;
30
- sortDescending?: boolean;
31
- useCustomLists?: boolean;
32
- hideNoDataItems?: boolean;
33
- indicateNoDataItems?: boolean;
34
- showNoDataItemsLast?: boolean;
35
- style?: string;
315
+ /**
316
+ * The id the file gave the slicer's frame.
317
+ */
318
+ sourceId?: number;
319
+ /**
320
+ * The id the file gave the slicer.
321
+ */
322
+ uid?: string;
36
323
  }
37
324
  }
38
325
  //# sourceMappingURL=ISlicer.d.ts.map
@@ -0,0 +1,109 @@
1
+ import { IProperties } from '../type';
2
+ import { ICellStyle } from '../style';
3
+ /**
4
+ * A slicer style: how a slicer draws its frame, its caption and its items in each state.
5
+ *
6
+ * @remarks
7
+ * Office Scripts has the same type, `SlicerStyle`. A slicer names its style with
8
+ * {@link ISlicer.getStyle}; the workbook's slicer styles, built-ins included, are
9
+ * {@link IStyleCollection.getSlicerStyles}.
10
+ */
11
+ export interface ISlicerStyle {
12
+ /**
13
+ * Returns the name of the slicer style.
14
+ */
15
+ getName(): string;
16
+ /**
17
+ * Indicates whether this is one of Excel's built-in slicer styles.
18
+ */
19
+ isBuiltIn(): boolean;
20
+ /**
21
+ * Deletes the style from the workbook. A built-in style is not deleted.
22
+ */
23
+ delete(): void;
24
+ /**
25
+ * Returns the style's elements, resolved against the workbook's styles.
26
+ */
27
+ getProperties(): Readonly<ISlicerStyle.Properties>;
28
+ /**
29
+ * Serializes the style.
30
+ */
31
+ toJSON(): ISlicerStyle.JSON;
32
+ /**
33
+ * For runtime type checking.
34
+ */
35
+ readonly isISlicerStyle: true;
36
+ }
37
+ /**
38
+ * {@inheritDoc ISlicerStyle}
39
+ * @see
40
+ * ### **Interface**
41
+ *
42
+ * {@link ISlicerStyle}
43
+ */
44
+ export declare namespace ISlicerStyle {
45
+ /**
46
+ * The parts of a slicer a style formats.
47
+ */
48
+ const ElementType: {
49
+ /** The frame. */
50
+ readonly WholeTable: "wholeTable";
51
+ /** The caption. */
52
+ readonly HeaderRow: "headerRow";
53
+ readonly UnselectedItemWithData: "unselectedItemWithData";
54
+ readonly SelectedItemWithData: "selectedItemWithData";
55
+ readonly UnselectedItemWithNoData: "unselectedItemWithNoData";
56
+ readonly SelectedItemWithNoData: "selectedItemWithNoData";
57
+ readonly HoveredUnselectedItemWithData: "hoveredUnselectedItemWithData";
58
+ readonly HoveredSelectedItemWithData: "hoveredSelectedItemWithData";
59
+ readonly HoveredUnselectedItemWithNoData: "hoveredUnselectedItemWithNoData";
60
+ readonly HoveredSelectedItemWithNoData: "hoveredSelectedItemWithNoData";
61
+ };
62
+ type ElementType = typeof ElementType[keyof typeof ElementType];
63
+ /**
64
+ * A slicer style's elements, each a differential cell format: only what it sets is applied.
65
+ */
66
+ interface Properties {
67
+ /**
68
+ * The name of the style. This is the name shown in the UI.
69
+ */
70
+ name: string;
71
+ /** The frame. */
72
+ wholeTable?: ICellStyle.Properties;
73
+ /** The caption. */
74
+ headerRow?: ICellStyle.Properties;
75
+ /** An item the filter leaves out, that has data. */
76
+ unselectedItemWithData?: ICellStyle.Properties;
77
+ /** An item the filter selects, that has data. */
78
+ selectedItemWithData?: ICellStyle.Properties;
79
+ /** An item the filter leaves out, that the other filters leave without data. */
80
+ unselectedItemWithNoData?: ICellStyle.Properties;
81
+ /** An item the filter selects, that the other filters leave without data. */
82
+ selectedItemWithNoData?: ICellStyle.Properties;
83
+ /** {@link unselectedItemWithData} under the pointer. */
84
+ hoveredUnselectedItemWithData?: ICellStyle.Properties;
85
+ /** {@link selectedItemWithData} under the pointer. */
86
+ hoveredSelectedItemWithData?: ICellStyle.Properties;
87
+ /** {@link unselectedItemWithNoData} under the pointer. */
88
+ hoveredUnselectedItemWithNoData?: ICellStyle.Properties;
89
+ /** {@link selectedItemWithNoData} under the pointer. */
90
+ hoveredSelectedItemWithNoData?: ICellStyle.Properties;
91
+ }
92
+ type ResolvableProperties = IProperties.ResolvableProperties<ISlicerStyle.Properties>;
93
+ interface JSON extends ISlicerStyle.Properties {
94
+ }
95
+ /**
96
+ * The document's slicer styles and the default.
97
+ */
98
+ interface JSONS {
99
+ /**
100
+ * The style a new slicer is given.
101
+ *
102
+ * @defaultValue `'SlicerStyleLight1'`
103
+ */
104
+ defaultSlicerStyle?: string;
105
+ /** The document's own slicer styles, keyed by name. */
106
+ styles?: Record<string, Omit<ISlicerStyle.JSON, 'name'>>;
107
+ }
108
+ }
109
+ //# sourceMappingURL=ISlicerStyle.d.ts.map
@@ -1,21 +1,141 @@
1
+ import { ITransaction } from '../transaction';
1
2
  import { IResource } from '../resource';
2
- import { IModel, AbstractModel } from '../model';
3
+ import { IListener } from '../listener';
4
+ import { ITable } from '../table';
5
+ import { IAnchored } from '../anchored';
6
+ import { AbstractMovableContent } from '../movable/AbstractMovableContent';
3
7
  import { ISlicer } from './ISlicer';
8
+ interface State extends AbstractMovableContent.State {
9
+ data?: ISlicer.JSON;
10
+ }
4
11
  /**
5
12
  * Implementation for {@link ISlicer}.
6
13
  */
7
- export declare class Slicer extends AbstractModel<State, ISlicer.JSON> implements ISlicer {
14
+ export declare class Slicer extends AbstractMovableContent<State, ISlicer.JSON, ISlicer.Events> implements ISlicer {
15
+ /** The engine's formula for the source, from the last delivery; `null` until the engine holds it. */
16
+ private _formula;
17
+ /** The engine's text as first delivered: while the formula still reads so, nothing has moved. */
18
+ private _wired;
19
+ private _binding;
20
+ /** A lost source was seen as an operation closed; the delete waits for its commit to land. */
21
+ private _lossPending;
22
+ /**
23
+ * The column's name when the source last named a live column, else as the source was given.
24
+ * What the slicer is labeled by while its column does not resolve: the engine's own text then
25
+ * may be an internal spelling, never a name.
26
+ */
27
+ private _columnName;
8
28
  constructor(options: Slicer.ConstructorOptions);
9
29
  /** {@inheritDoc IModel.getType} */
10
30
  getType(): string;
11
- /** {@inheritDoc Movable.Content.getDescription} */
12
- getDescription(): string;
31
+ /** {@inheritDoc IMovable.IContent.getTypeDescription} */
32
+ getTypeDescription(): string;
33
+ /** {@inheritDoc IMovable.IContent.getDefaultAnchorType} */
34
+ getDefaultAnchorType(): IAnchored.Type;
35
+ /** {@inheritDoc ISlicer.getSource} */
36
+ getSource(): string;
37
+ /** {@inheritDoc ISlicer.getTable} */
38
+ getTable(): ITable | null;
39
+ /** {@inheritDoc ISlicer.getColumn} */
40
+ getColumn(): ITable.IColumn | null;
41
+ /** {@inheritDoc IMovable.IContent.setName} */
42
+ setName(name: string): this;
43
+ /** {@inheritDoc ISlicer.getCaption} */
44
+ getCaption(): string;
45
+ /** {@inheritDoc ISlicer.setCaption} */
46
+ setCaption(caption: string | null, options?: ITransaction.OperationOptions): this;
47
+ /** {@inheritDoc ISlicer.isShowCaption} */
48
+ isShowCaption(): boolean;
49
+ /** {@inheritDoc ISlicer.setShowCaption} */
50
+ setShowCaption(show: boolean, options?: ITransaction.OperationOptions): this;
51
+ /** {@inheritDoc ISlicer.getCacheName} */
52
+ getCacheName(): string;
53
+ /** {@inheritDoc ISlicer.getStyle} */
54
+ getStyle(): string;
55
+ /** {@inheritDoc ISlicer.setStyle} */
56
+ setStyle(style: string, options?: ITransaction.OperationOptions): this;
57
+ /** {@inheritDoc ISlicer.getSortOrder} */
58
+ getSortOrder(): ISlicer.SortOrder;
59
+ /** {@inheritDoc ISlicer.setSortOrder} */
60
+ setSortOrder(sortOrder: ISlicer.SortOrder, options?: ITransaction.OperationOptions): this;
61
+ /** {@inheritDoc ISlicer.getCrossFilter} */
62
+ getCrossFilter(): ISlicer.CrossFilter;
63
+ /** {@inheritDoc ISlicer.setCrossFilter} */
64
+ setCrossFilter(crossFilter: ISlicer.CrossFilter, options?: ITransaction.OperationOptions): this;
65
+ /** {@inheritDoc ISlicer.getColumnCount} */
66
+ getColumnCount(): number;
67
+ /** {@inheritDoc ISlicer.setColumnCount} */
68
+ setColumnCount(count: number, options?: ITransaction.OperationOptions): this;
69
+ /** {@inheritDoc ISlicer.getRowHeight} */
70
+ getRowHeight(): number;
71
+ /** {@inheritDoc ISlicer.setRowHeight} */
72
+ setRowHeight(height: number, options?: ITransaction.OperationOptions): this;
73
+ /** {@inheritDoc ISlicer.isLockedPosition} */
74
+ isLockedPosition(): boolean;
75
+ /** {@inheritDoc ISlicer.setLockedPosition} */
76
+ setLockedPosition(locked: boolean, options?: ITransaction.OperationOptions): this;
77
+ /** {@inheritDoc ISlicer.isFilterCleared} */
78
+ isFilterCleared(): boolean;
79
+ /** {@inheritDoc ISlicer.getItems} */
80
+ getItems(): Promise<readonly ISlicer.Item[]>;
81
+ /** {@inheritDoc ISlicer.getItem} */
82
+ getItem(key: string): Promise<ISlicer.Item | null>;
83
+ /** {@inheritDoc ISlicer.selectItems} */
84
+ selectItems(keys: readonly string[] | null, options?: ITransaction.OperationOptions): Promise<this>;
85
+ /** {@inheritDoc ISlicer.clearFilters} */
86
+ clearFilters(options?: ITransaction.OperationOptions): Promise<this>;
87
+ /** {@inheritDoc ISlicer.addListeners} */
88
+ addListeners(listeners: ISlicer.IListeners, options?: IListener.Options): IListener.Remove;
13
89
  /** {@inheritDoc Movable.Content.toJSON} */
14
90
  toJSON(_toResourceId?: (resource: IResource) => number | null): ISlicer.JSON | null;
15
- /** {@inheritDoc Movable.Content.getTypeDescription} */
16
- getTypeDescription(): string;
91
+ /** {@inheritDoc ISlicer.isISlicer} */
92
+ get isISlicer(): true;
17
93
  get [Symbol.toStringTag](): string;
18
94
  toString(): string;
95
+ /**
96
+ * Binds the slicer to its table now, rather than once the engine holds its source: what a
97
+ * slicer just added does, so a delete of its column right after takes it too.
98
+ * @internal
99
+ */
100
+ _attach(): void;
101
+ private _data;
102
+ private _getWorkbook;
103
+ /** The table and column the source names now, or `null` when it names no column of a live table. */
104
+ private _resolve;
105
+ /**
106
+ * The column's name: the live column's, else the last one the source named.
107
+ * @internal
108
+ */
109
+ _getColumnName(): string;
110
+ /**
111
+ * Called when the source or its table may have changed. A slicer whose column is gone - the
112
+ * column or its table deleted, the table made a range - is deleted as part of the operation
113
+ * that took it, so one undo brings both back, as Excel does.
114
+ *
115
+ * The table tells the slicer as its operation's commit closes, when the engine has rewritten
116
+ * the source. The commit is still landing then, so the delete waits for it to land and is
117
+ * folded into it; by then a table cut to another sheet has arrived there and resolves again. A
118
+ * delivery from the engine is acted on only inside an operation: one from a calculation pass
119
+ * belongs to no edit. A restore is never acted on: it brings back a state in which the slicer
120
+ * agrees with its tables.
121
+ *
122
+ * @param fromTable Whether the table is asking, after its operation.
123
+ */
124
+ private _checkSource;
125
+ /** Listens to the table the source resolves to. */
126
+ private _bind;
127
+ /** Keeps the range listener on the column's data rows; a change of them is a change of items. */
128
+ private _bindRange;
129
+ private _unbind;
130
+ private _notify;
131
+ /** Writes fields into the slicer's data as one operation; a field set to `undefined` is removed. */
132
+ private _set;
133
+ /** @internal */
134
+ protected _processDelete(): void;
135
+ /** @internal */
136
+ protected _processRestoreOrRevert(state: State, commit: ITransaction.ICommit): void;
137
+ /** @internal */
138
+ close(): void;
19
139
  }
20
140
  /**
21
141
  * Interfaces for creating `Slicer` items.
@@ -27,15 +147,10 @@ export declare class Slicer extends AbstractModel<State, ISlicer.JSON> implement
27
147
  */
28
148
  export declare namespace Slicer {
29
149
  /**
30
- * Options for creating a chart.
150
+ * Options for creating a slicer.
31
151
  */
32
- interface ConstructorOptions extends IModel.ConstructorOptions<ISlicer.JSON> {
33
- name: string;
152
+ interface ConstructorOptions extends AbstractMovableContent.ConstructorOptions<ISlicer.JSON> {
34
153
  }
35
154
  }
36
- interface State extends AbstractModel.State {
37
- data?: any;
38
- name?: string;
39
- }
40
155
  export {};
41
156
  //# sourceMappingURL=Slicer.d.ts.map
@@ -0,0 +1,25 @@
1
+ import { IStyleCollection } from '../style';
2
+ import { ISlicerStyle } from './ISlicerStyle';
3
+ /**
4
+ * Implementation for {@link ISlicerStyle}: its elements resolved once, against the style
5
+ * collection that owns it.
6
+ */
7
+ export declare class SlicerStyle implements ISlicerStyle {
8
+ protected _properties: Readonly<ISlicerStyle.Properties>;
9
+ protected _isBuiltIn: boolean;
10
+ protected _doDelete: ((name: string) => void) | undefined;
11
+ constructor(styles: IStyleCollection, properties: ISlicerStyle.Properties, isBuiltIn: boolean, doDelete?: (name: string) => void);
12
+ /** {@inheritDoc ISlicerStyle.getName} */
13
+ getName(): string;
14
+ /** {@inheritDoc ISlicerStyle.isBuiltIn} */
15
+ isBuiltIn(): boolean;
16
+ /** {@inheritDoc ISlicerStyle.delete} */
17
+ delete(): void;
18
+ /** {@inheritDoc ISlicerStyle.getProperties} */
19
+ getProperties(): Readonly<ISlicerStyle.Properties>;
20
+ /** {@inheritDoc ISlicerStyle.toJSON} */
21
+ toJSON(): ISlicerStyle.JSON;
22
+ /** {@inheritDoc ISlicerStyle.isISlicerStyle} */
23
+ get isISlicerStyle(): true;
24
+ }
25
+ //# sourceMappingURL=SlicerStyle.d.ts.map
@@ -0,0 +1,13 @@
1
+ import { ISlicerStyle } from './ISlicerStyle';
2
+ /**
3
+ * Excel's built-in slicer styles, taken from Excel (each built-in duplicated and saved, the dxfs
4
+ * read back; `private-assets/design/shapes/fixtures/slicers/`). Light 1–6 and Dark 1–6 are each one
5
+ * design over the six accents; Other 1 and 2 stand alone.
6
+ */
7
+ /** The style a slicer is given when nothing names another. */
8
+ export declare const DefaultSlicerStyleName: string;
9
+ /**
10
+ * Returns the built-in slicer styles in gallery order: Light, Other, Dark. Built on the first call.
11
+ */
12
+ export declare const _BuiltInSlicerStyles: () => readonly ISlicerStyle.Properties[];
13
+ //# sourceMappingURL=_BuiltInSlicerStyles.d.ts.map
@@ -0,0 +1,30 @@
1
+ import { IWorkbook } from '../workbook';
2
+ import { ITable } from '../table';
3
+ import { ISlicer } from './ISlicer';
4
+ /**
5
+ * The table and column a slicer's source names, or `null` when it is not one column of one table
6
+ * (`#REF!` once the column is gone, a plain range once the table is).
7
+ */
8
+ export declare function parseSource(source: string | null | undefined): {
9
+ table: string;
10
+ column: string;
11
+ } | null;
12
+ /** `Sales[Region]`: the source text for one column of a table, as a formula spells it. */
13
+ export declare function formatSource(tableName: string, columnName: string): string;
14
+ /** The table named `name` on any sheet of the workbook, or `null`. */
15
+ export declare function findTable(workbook: IWorkbook | null | undefined, name: string): ITable | null;
16
+ /** Every slicer of the workbook, in sheet order and then in each sheet's movable order. */
17
+ export declare function getSlicers(workbook: IWorkbook | null | undefined): ISlicer[];
18
+ /**
19
+ * `base`, or the first of `base 1`, `base 2`, ... no other slicer of the workbook is named
20
+ * (compared without case), as Excel names a second slicer on a column.
21
+ */
22
+ export declare function uniqueSlicerName(workbook: IWorkbook | null | undefined, base: string, except?: ISlicer): string;
23
+ /** `Slicer_` and the column name, each character that is not a letter, digit or `_` made `_`. */
24
+ export declare function deriveCacheName(columnName: string): string;
25
+ /**
26
+ * The cache names of the workbook's slicers, by slicer: a carried name as it is, then a derived
27
+ * one in workbook order, numbered past any name already taken (`Slicer_Region1`).
28
+ */
29
+ export declare function resolveCacheNames(workbook: IWorkbook | null | undefined): Map<ISlicer, string>;
30
+ //# sourceMappingURL=_SlicerUtils.d.ts.map