@sheetxl/sdk 0.7.28-beta.4 → 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 (565) hide show
  1. package/THIRD-PARTY-NOTICES.md +1 -1
  2. package/browser/esm/{DBIu6NUHIcxOOBQp.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/{CHSahmMFYNB0Ajkf.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/{CKk58ZLcrllMzfou.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/{DUYP6faJJHCaW1Xf.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 +49153 -36824
  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 -106
  83. package/types/scripting.d.ts +18126 -7971
  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 +759 -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 +422 -34
  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 +160 -29
  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 +53 -4
  145. package/types/src/calculation/state/IContextContainer.d.ts +159 -26
  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 +458 -97
  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 +60 -21
  345. package/types/src/primitives/Range.d.ts +136 -26
  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/FunctionArguments.d.ts +22 -0
  371. package/types/src/scripting/FunctionCollection.d.ts +49 -15
  372. package/types/src/scripting/IFunctionCollection.d.ts +62 -32
  373. package/types/src/scripting/IModule.d.ts +25 -0
  374. package/types/src/scripting/IModuleCollection.d.ts +17 -0
  375. package/types/src/scripting/IScript.d.ts +28 -26
  376. package/types/src/scripting/Module.d.ts +34 -6
  377. package/types/src/scripting/ModuleCollection.d.ts +17 -12
  378. package/types/src/scripting/Runtime.d.ts +15 -0
  379. package/types/src/scripting/Scripts.d.ts +3 -7
  380. package/types/src/scripting/TypedFunction.d.ts +200 -4
  381. package/types/src/scripting/_FunctionIndex.d.ts +8 -3
  382. package/types/src/scripting/_ModuleUtils.d.ts +11 -1
  383. package/types/src/scripting/_ScriptUtils.d.ts +3 -0
  384. package/types/src/scripting/declarations.browser.d.ts +10 -0
  385. package/types/src/scripting/declarations.d.ts +49 -0
  386. package/types/src/scripting/declarations.node.d.ts +9 -0
  387. package/types/src/scripting/index.d.ts +3 -0
  388. package/types/src/selection/IMovableSelection.d.ts +148 -0
  389. package/types/src/selection/IRangeSelection.d.ts +9 -4
  390. package/types/src/selection/MovableSelection.d.ts +48 -0
  391. package/types/src/selection/RangeSelection.d.ts +15 -0
  392. package/types/src/selection/index.d.ts +1 -0
  393. package/types/src/shape/GeometryPreset.d.ts +197 -0
  394. package/types/src/shape/IGeometry.d.ts +380 -0
  395. package/types/src/shape/IShape.d.ts +341 -194
  396. package/types/src/shape/IShapeStyle.d.ts +135 -0
  397. package/types/src/shape/Shape.d.ts +107 -21
  398. package/types/src/shape/ShapeStyleUtils.d.ts +54 -0
  399. package/types/src/shape/_ConnectorFrame.d.ts +32 -0
  400. package/types/src/shape/_ConnectorRoute.d.ts +33 -0
  401. package/types/src/shape/_Connectors.d.ts +108 -0
  402. package/types/src/shape/_Geometry.d.ts +14 -0
  403. package/types/src/shape/_GeometryLoader.d.ts +21 -0
  404. package/types/src/shape/_ShapeStyle.d.ts +70 -0
  405. package/types/src/shape/_builtIn/_BuiltInChunks.d.ts +10 -0
  406. package/types/src/shape/_builtIn/_BuiltInDef.d.ts +9 -0
  407. package/types/src/shape/_builtIn/arrows.d.ts +6 -0
  408. package/types/src/shape/_builtIn/basic.d.ts +6 -0
  409. package/types/src/shape/_builtIn/callouts.d.ts +6 -0
  410. package/types/src/shape/_builtIn/flowchart.d.ts +6 -0
  411. package/types/src/shape/_builtIn/lines.d.ts +6 -0
  412. package/types/src/shape/_builtIn/math.d.ts +6 -0
  413. package/types/src/shape/_builtIn/other.d.ts +6 -0
  414. package/types/src/shape/_builtIn/rectangles.d.ts +6 -0
  415. package/types/src/shape/_builtIn/starsBanners.d.ts +6 -0
  416. package/types/src/shape/geometry/_strokeEnds.d.ts +7 -0
  417. package/types/src/shape/geometry/format.d.ts +3 -0
  418. package/types/src/shape/geometry/geometry.d.ts +85 -0
  419. package/types/src/shape/geometry/guides.d.ts +54 -0
  420. package/types/src/shape/geometry/handles.d.ts +14 -0
  421. package/types/src/shape/geometry/index.d.ts +7 -0
  422. package/types/src/shape/geometry/lineEnds.d.ts +54 -0
  423. package/types/src/shape/geometry/paths.d.ts +35 -0
  424. package/types/src/shape/geometry/segments.d.ts +114 -0
  425. package/types/src/shape/index.d.ts +3 -0
  426. package/types/src/sheet/CellRegion.d.ts +6 -0
  427. package/types/src/sheet/ICellContainerOptions.d.ts +50 -0
  428. package/types/src/sheet/ISheet.d.ts +197 -50
  429. package/types/src/sheet/ISheetCollection.d.ts +2 -5
  430. package/types/src/sheet/NamedCellRange.d.ts +16 -7
  431. package/types/src/sheet/NamedRange.d.ts +8 -0
  432. package/types/src/sheet/Sheet.d.ts +923 -138
  433. package/types/src/sheet/SheetCell.d.ts +92 -32
  434. package/types/src/sheet/SheetCollection.d.ts +19 -8
  435. package/types/src/sheet/SheetRange.d.ts +92 -17
  436. package/types/src/sheet/SheetRanges.d.ts +22 -9
  437. package/types/src/sheet/_CellBuffer.d.ts +214 -0
  438. package/types/src/sheet/_HeldFormula.d.ts +69 -0
  439. package/types/src/sheet/_InvalidSheetRange.d.ts +7 -7
  440. package/types/src/sheet/_ListenerAnchor.d.ts +104 -0
  441. package/types/src/sheet/_RangeStateSweep.d.ts +16 -0
  442. package/types/src/sheet/_ScalarListFactory.d.ts +61 -0
  443. package/types/src/sheet/_SheetAutoFillUtils.d.ts +74 -0
  444. package/types/src/sheet/_SheetAutoFitUtils.d.ts +28 -0
  445. package/types/src/sheet/_SheetEvents.d.ts +43 -0
  446. package/types/src/sheet/_SheetFilterUtils.d.ts +49 -1
  447. package/types/src/sheet/_SheetIntents.d.ts +296 -0
  448. package/types/src/sheet/_SheetMutations.d.ts +182 -62
  449. package/types/src/sheet/_SheetStateReader.d.ts +19 -13
  450. package/types/src/sheet/_SheetStateTypes.d.ts +83 -78
  451. package/types/src/sheet/_SheetUtils.d.ts +39 -22
  452. package/types/src/sheet/_WatchAnchor.d.ts +93 -0
  453. package/types/src/sheet/spatial/HeldFormulaEntry.d.ts +36 -0
  454. package/types/src/sheet/spatial/index.d.ts +1 -0
  455. package/types/src/sheet/style/SheetCellStyle.d.ts +209 -304
  456. package/types/src/sheet/style/SheetDirectStyle.d.ts +30 -19
  457. package/types/src/sheet/style/SheetNamedStyle.d.ts +17 -17
  458. package/types/src/sheet/style/SheetTableStyle.d.ts +5 -5
  459. package/types/src/sheet/style/_Resolvers.d.ts +14 -8
  460. package/types/src/sheet/style/_StyleUtils.d.ts +38 -8
  461. package/types/src/sheetHeader/ISheetHeader.d.ts +94 -53
  462. package/types/src/sheetHeader/SheetCellHeader.d.ts +4 -0
  463. package/types/src/sheetHeader/SheetHeader.d.ts +42 -22
  464. package/types/src/sheetHeader/_HeaderMetrics.d.ts +37 -0
  465. package/types/src/sheetHeader/_HeaderUtils.d.ts +5 -3
  466. package/types/src/sheetProtection/ISheetProtection.d.ts +41 -7
  467. package/types/src/sheetProtection/SheetProtection.d.ts +12 -0
  468. package/types/src/sheetView/ISheetView.d.ts +69 -15
  469. package/types/src/sheetView/SheetView.d.ts +20 -11
  470. package/types/src/slicer/ISlicer.d.ts +304 -17
  471. package/types/src/slicer/ISlicerStyle.d.ts +109 -0
  472. package/types/src/slicer/Slicer.d.ts +128 -13
  473. package/types/src/slicer/SlicerStyle.d.ts +25 -0
  474. package/types/src/slicer/_BuiltInSlicerStyles.d.ts +13 -0
  475. package/types/src/slicer/_SlicerUtils.d.ts +30 -0
  476. package/types/src/slicer/index.d.ts +1 -0
  477. package/types/src/sort/ISort.d.ts +4 -2
  478. package/types/src/string/IStringCollection.d.ts +5 -0
  479. package/types/src/string/StringCollection.d.ts +6 -6
  480. package/types/src/style/{IStyle.d.ts → ICellStyle.d.ts} +72 -52
  481. package/types/src/style/INamedStyleCollection.d.ts +72 -0
  482. package/types/src/style/ISlicerStyleCollection.d.ts +77 -0
  483. package/types/src/style/IStyleCollection.d.ts +91 -60
  484. package/types/src/style/ITableStyleCollection.d.ts +89 -0
  485. package/types/src/style/NamedStyleCollection.d.ts +39 -0
  486. package/types/src/style/SlicerStyleCollection.d.ts +46 -0
  487. package/types/src/style/StyleCollection.d.ts +81 -26
  488. package/types/src/style/TableStyleCollection.d.ts +49 -0
  489. package/types/src/style/_BuiltInStyleDefs.d.ts +6 -6
  490. package/types/src/style/_BuiltInStyleNames.d.ts +2 -2
  491. package/types/src/style/index.d.ts +7 -1
  492. package/types/src/table/AnchoredTable.d.ts +701 -72
  493. package/types/src/table/AutoTable.d.ts +7 -5
  494. package/types/src/table/ITable.d.ts +261 -34
  495. package/types/src/table/ITableCollection.d.ts +12 -0
  496. package/types/src/table/ITableStyle.d.ts +37 -37
  497. package/types/src/table/TableCollection.d.ts +19 -8
  498. package/types/src/table/_FilterField.d.ts +19 -6
  499. package/types/src/table/_NamedTable.d.ts +17 -1
  500. package/types/src/table/_NamedTableSource.d.ts +1 -0
  501. package/types/src/table/_SortField.d.ts +2 -0
  502. package/types/src/table/_TableColumn.d.ts +13 -2
  503. package/types/src/table/_TableMessages.d.ts +1 -0
  504. package/types/src/table/_TableUtils.d.ts +40 -0
  505. package/types/src/text/Bullet.d.ts +4 -0
  506. package/types/src/text/IText.d.ts +182 -0
  507. package/types/src/text/ITextFrame.d.ts +110 -1
  508. package/types/src/text/TextBoxAlignment.d.ts +25 -16
  509. package/types/src/text/TextFrame.d.ts +4 -0
  510. package/types/src/text/TextLine.d.ts +4 -0
  511. package/types/src/text/TextParagraph.d.ts +4 -0
  512. package/types/src/text/TextRotation.d.ts +3 -3
  513. package/types/src/text/TextRun.d.ts +9 -0
  514. package/types/src/text/TextStacked.d.ts +83 -0
  515. package/types/src/text/index.d.ts +1 -0
  516. package/types/src/text/richtext/IRichText.d.ts +36 -0
  517. package/types/src/text/richtext/IStyledFont.d.ts +18 -18
  518. package/types/src/text/richtext/index.d.ts +1 -0
  519. package/types/src/theme/ITheme.d.ts +45 -4
  520. package/types/src/theme/IThemeCollection.d.ts +2 -0
  521. package/types/src/theme/ThemeCollection.d.ts +11 -7
  522. package/types/src/theme/_OfficeFormatScheme.d.ts +3 -0
  523. package/types/src/transaction/ITransaction.d.ts +258 -45
  524. package/types/src/transaction/Transaction.d.ts +101 -11
  525. package/types/src/transaction/TransactionUndoManager.d.ts +4 -1
  526. package/types/src/type/AbstractCollection.d.ts +101 -0
  527. package/types/src/type/ICollection.d.ts +117 -0
  528. package/types/src/type/ITypes.d.ts +9 -7
  529. package/types/src/type/index.d.ts +1 -0
  530. package/types/src/utils/_CSSUtils.d.ts +3 -3
  531. package/types/src/wasm/_sdkWasm.d.ts +7 -0
  532. package/types/src/wasm/index.d.ts +2 -0
  533. package/types/src/wasm/sdkWasm.d.ts +29 -0
  534. package/types/src/workbook/IWorkbook.d.ts +180 -40
  535. package/types/src/workbook/Workbook.d.ts +123 -10
  536. package/types/src/workbook/_WorkbookIntents.d.ts +36 -0
  537. package/types/src/workbookProtection/IWorkbookProtection.d.ts +7 -0
  538. package/types/src/workbookProtection/WorkbookProtection.d.ts +3 -0
  539. package/types/src/workbookView/IWorkbookView.d.ts +12 -0
  540. package/types/src/workbookView/WorkbookView.d.ts +5 -0
  541. package/browser/cjs/B7_pDFYCVzt-3hUs.cjs +0 -1
  542. package/browser/cjs/BF14ZEAnaqxXroSj.cjs +0 -1
  543. package/browser/cjs/BXtvdT1Z-MsB_o5F.cjs +0 -1
  544. package/browser/cjs/Bc4JjVVZfFo3R4He.cjs +0 -33
  545. package/browser/cjs/CD2RXdnfqSYNc6gX.cjs +0 -57
  546. package/browser/cjs/DcLpXGexEtOxi-dD.cjs +0 -1
  547. package/browser/cjs/Dv3x6zut1ZRUt3IF.cjs +0 -10
  548. package/browser/cjs/index.cjs +0 -3
  549. package/browser/esm/0Mj5WKM362q6CECb.mjs +0 -824
  550. package/browser/esm/CPTtL2f6_4iblmFM.mjs +0 -4436
  551. package/browser/esm/CoA-sUxjiIUIpTUF.mjs +0 -109
  552. package/browser/esm/Dy4Sdpju1T2icURu.mjs +0 -50854
  553. package/node/esm/BtGxbEbBm79YvF_k.mjs +0 -843
  554. package/node/esm/DqgWsVXROpSgKq6c.mjs +0 -114
  555. package/types/src/cellRange/_GraphNode.d.ts +0 -38
  556. package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +0 -12
  557. package/types/src/dataValidation/_Utils.d.ts +0 -10
  558. package/types/src/lib/utils/_Utils.d.ts +0 -20
  559. package/types/src/lib/utils/utils.browser.d.ts +0 -33
  560. package/types/src/movable/IGroup.d.ts +0 -30
  561. package/types/src/movable/IMovableSelection.d.ts +0 -49
  562. package/types/src/sheet/listener/RangesListener.d.ts +0 -32
  563. package/types/src/sheet/listener/RangesListenerEntry.d.ts +0 -19
  564. package/types/src/sheet/listener/index.d.ts +0 -3
  565. /package/types/src/{lib/utils → license}/banner.d.ts +0 -0
@@ -2,21 +2,23 @@ import { IRange, IRuntime, Scalar } from '@sheetxl/primitives';
2
2
  import { MaybePromise } from '@sheetxl/utils';
3
3
  import { IListener } from '../listener';
4
4
  import { ITransaction } from '../transaction';
5
- import { ISparseGrid } from '../collections';
5
+ import { Tuple, ISparseGrid } from '../collections';
6
6
  import { ICalculation } from '../calculation';
7
7
  import { ICellRange, ICellRanges } from '../cellRange';
8
8
  import { ICondition } from '../condition';
9
+ import { ConditionFormulaBinding } from '../condition/_ConditionFormula';
9
10
  import { IAnchored } from '../anchored';
10
11
  import { AbstractAnchored } from '../anchored/AbstractAnchored';
11
12
  import { Anchored } from '../anchored/Anchored';
13
+ import * as _ConditionUtils from '../condition/_ConditionUtils';
12
14
  /**
13
15
  * Implementation of {@link IDataValidation}.
14
16
  */
15
- export declare abstract class AnchoredConditional<STATE extends AnchoredConditional.State, VIEW extends AnchoredConditional.CommitView = AnchoredConditional.CommitView, EVENTS extends ICondition.Events = ICondition.Events, JSON = any> extends AbstractAnchored<STATE, VIEW, EVENTS> implements IAnchored, ITransaction.ITransactional, IListener.ISource<IAnchored> {
17
+ export declare abstract class AnchoredConditional<STATE extends AnchoredConditional.State, EVENTS extends ICondition.Events = ICondition.Events, JSON = any> extends AbstractAnchored<STATE, EVENTS> implements IAnchored, ITransaction.ITransactional, IListener.ISource<IAnchored> {
16
18
  protected _rangeListener: ICellRange.Listener | null;
17
19
  protected _getValueGrid: () => ISparseGrid<Scalar>;
18
20
  /**
19
- * One registered watch per formula the condition asked for, keyed by expression: its remove, and
21
+ * One registered watch per formula the condition asked for, keyed by the formula: its remove, and
20
22
  * the values delivered so far, indexed by anchored area.
21
23
  *
22
24
  * @remarks
@@ -26,10 +28,16 @@ export declare abstract class AnchoredConditional<STATE extends AnchoredConditio
26
28
  * the difference between a new formula-valued operator working automatically and needing this
27
29
  * class edited to know about it.
28
30
  */
29
- protected _conditionWatches: Map<string, WatchEntry>;
31
+ protected _conditionWatches: Map<ICalculation.IFormula | string, WatchEntry>;
32
+ /** What this rule's condition formulas compile with — see {@link _getFormulaBinding}. */
33
+ protected _formulaBinding: ConditionFormulaBinding | undefined;
30
34
  /**
31
35
  * The area marked stale since the last flush: `undefined` = nothing, `null` = the whole rule,
32
36
  * a range = just that part. See {@link _markValueUpdates}.
37
+ *
38
+ * NO initializers, for the same reason as {@link _rangeListener}: `_initialize` marks the rule
39
+ * from the base constructor, and an initializer would then reset both, so the flush already
40
+ * queued finds nothing marked and the first evaluation never runs.
33
41
  */
34
42
  protected _markedValueRange: ICellRange | null | undefined;
35
43
  protected _valueUpdatesScheduled: boolean;
@@ -75,10 +83,11 @@ export declare abstract class AnchoredConditional<STATE extends AnchoredConditio
75
83
  *
76
84
  * Registered through `ICellRanges.addWatch`, which fills the expression to every area — a rule
77
85
  * over `'C19:C23 C3:C7'` reads different cells in its second area, and only the filled form knows
78
- * which. The delivery re-runs the rule; the pass after it has values.
86
+ * which. The delivery re-runs the rule; the pass after it has values. Evaluated as a rule's
87
+ * formula is (`arrayFirstCell`): each cell an array-entered formula over itself.
79
88
  * @internal
80
89
  */
81
- protected _watchConditionFormula(ranges: ICellRanges, expression: string, areaIndex: number, used: Set<string>): MaybePromise<IRange | null>;
90
+ protected _watchConditionFormula(ranges: ICellRanges, formula: ICalculation.IFormula | string, areaIndex: number, used: Set<ICalculation.IFormula | string>): MaybePromise<IRange | null>;
82
91
  /**
83
92
  * Drops watches nothing asked for during the evaluation that just finished.
84
93
  *
@@ -88,7 +97,7 @@ export declare abstract class AnchoredConditional<STATE extends AnchoredConditio
88
97
  * the pass and pruning after is what closes that.
89
98
  * @internal
90
99
  */
91
- protected _pruneConditionWatches(used: Set<string>): void;
100
+ protected _pruneConditionWatches(used: Set<ICalculation.IFormula | string>): void;
92
101
  /** @internal */
93
102
  protected _removeConditionWatches(): void;
94
103
  /**
@@ -100,13 +109,35 @@ export declare abstract class AnchoredConditional<STATE extends AnchoredConditio
100
109
  * resolve. They resolve to `null` — "no values", which reads as an inert condition.
101
110
  * @internal
102
111
  */
103
- protected _removeConditionWatch(entry: WatchEntry): void;
112
+ protected _removeConditionWatch(formula: ICalculation.IFormula | string, entry: WatchEntry): void;
104
113
  /** @internal */
105
114
  protected _processClose(): void;
115
+ /**
116
+ * An undo or redo can hand back a different condition while no value changes, so no range
117
+ * listener fires to re-derive the results. Heard here, not in `_processRestoreOrRevert`: that
118
+ * is told of every record in the store on every undo, this only of the ones the undo changed.
119
+ * @internal
120
+ */
121
+ protected _processAfterStateChange(state: STATE, commit: ITransaction.ICommit, isRevert?: boolean, isRestore?: boolean): void;
106
122
  /** @internal */
107
123
  protected _processAnchorCoords(): void;
124
+ /**
125
+ * Set while the container is shifting or deleting this rule, so {@link _processAnchorCoords}
126
+ * leaves the listener alone.
127
+ *
128
+ * @remarks
129
+ * Both run INSIDE the anchored map's own pass. The listener's reference lives in a map of the
130
+ * same kind and is moved (or dropped) by the same pass, so there is nothing to re-register - and
131
+ * reaching into a map that is mid-shift to do it is what used to throw.
132
+ * @internal
133
+ */
134
+ protected _isContainerShifting: boolean;
135
+ /** @internal */
136
+ protected _processContainerDelete(): void;
108
137
  /** @internal */
109
138
  protected _processContainerShift(options: Anchored.ShiftOptions): IRange.Coords | null | void;
139
+ /** @internal */
140
+ protected _doProcessContainerShift(options: Anchored.ShiftOptions): IRange.Coords | null | void;
110
141
  /**
111
142
  * Whether the anchor is absolute. See {@link AbstractAnchored._isAnchorAbsolute}.
112
143
  *
@@ -132,11 +163,19 @@ export declare abstract class AnchoredConditional<STATE extends AnchoredConditio
132
163
  setIndex(index: number): this;
133
164
  /** {@inheritDoc ICondition.Stateful.getCondition} */
134
165
  getCondition(): Readonly<ICondition> | null;
166
+ /**
167
+ * The engine and anchor this rule's condition formulas compile with: the rule's calculation, at
168
+ * the top-left of the bounding box of its ranges.
169
+ * @internal
170
+ */
171
+ protected _getFormulaBinding(): ConditionFormulaBinding;
172
+ /** @internal */
173
+ protected _bindConditionFormulas(condition: ICondition | null): void;
135
174
  /** {@inheritDoc IDataValidation.setCondition} */
136
175
  setCondition(condition: ICondition.Input | ICondition.Predicate | string | null, options?: ITransaction.OperationOptions): this;
137
176
  /**
138
- * Rewrites the condition's anchor-relative formulas after the anchor cell (the first
139
- * range's top-left) moves — fill semantics: relative references follow the anchor,
177
+ * Rewrites the condition's anchor-relative formulas after the anchor cell (the top-left of
178
+ * the bounding box of every range) moves — fill semantics: relative references follow the anchor,
140
179
  * absolute ones stay put. Excel does the same when extending a rule's applies-to moves
141
180
  * its origin: `G5>5` on `F5:F10` becomes `G1>5` when the rule grows to `F1:F10`.
142
181
  *
@@ -214,8 +253,6 @@ export declare abstract class AnchoredConditional<STATE extends AnchoredConditio
214
253
  * @internal
215
254
  */
216
255
  protected _shiftFormulaText(text: string, from: IRange.CellCoords, to: IRange.CellCoords): string | null;
217
- /** {@inheritDoc ICondition.createDefaultCondition} */
218
- createDefaultCondition(): ICondition;
219
256
  /** {@inheritDoc ICondition.Stateful.apply} */
220
257
  apply(): void;
221
258
  /**
@@ -229,12 +266,43 @@ export declare abstract class AnchoredConditional<STATE extends AnchoredConditio
229
266
  * be answered from a single cell's value.
230
267
  */
231
268
  protected _evalConditionRanges(handlers: {
232
- onTrue?: (coords: IRange.CellCoords, value: Scalar) => void;
233
- onFalse?: (coords: IRange.CellCoords, value: Scalar) => void;
269
+ /** `area` is the anchored area the cell belongs to — see {@link AreaResultCollector}. */
270
+ onTrue?: (coords: IRange.CellCoords, value: Scalar, area: IRange.Coords) => void;
271
+ onFalse?: (coords: IRange.CellCoords, value: Scalar, area: IRange.Coords) => void;
272
+ /**
273
+ * The answer for the BLANK cells of one anchored area, once per area — see
274
+ * `DoRunConditionsOptions.onBlank`. `area` is that area's coords, so a caller keeping the
275
+ * resolver can tell which cells it answers for.
276
+ */
277
+ onBlank?: (resolve: _ConditionUtils.BlankResolver, area: IRange.Coords) => void;
278
+ /** {@inheritDoc DoRunConditionsOptions.spacesAreBlank} */
279
+ spacesAreBlank?: boolean;
234
280
  }): Promise<void>;
235
281
  get [Symbol.toStringTag](): string;
236
282
  toString(): string;
237
283
  }
284
+ /**
285
+ * Collects a rule's per-cell `true` results across its anchored areas into one grid.
286
+ *
287
+ * @remarks
288
+ * One tuple builder PER AREA. A builder takes cells in axis order, and a rule's areas are in
289
+ * authored order, not axis order — Excel writes `C3 C1` when it merges identical rules on save —
290
+ * and two areas can interleave on the major axis besides. One builder across all of them throws
291
+ * on the first area that runs backwards.
292
+ * @internal
293
+ */
294
+ export declare class AreaResultCollector {
295
+ protected _isColumn: boolean;
296
+ protected _regions: Tuple.GridTuple<boolean>[];
297
+ protected _builder: Tuple.IBuilder<boolean> | null;
298
+ protected _area: IRange.Coords | null;
299
+ constructor(isColumn: boolean);
300
+ /** Adds a cell. Cells of one area arrive together, in axis order. */
301
+ push(coords: IRange.CellCoords, area: IRange.Coords): void;
302
+ /** The collected cells, or `null` when none were pushed. */
303
+ build(axis: IRange.Axis): ISparseGrid<boolean> | null;
304
+ protected _flush(): void;
305
+ }
238
306
  /**
239
307
  * One registered formula watch: its remove, the values delivered per area, and any resolver still
240
308
  * waiting on an area's first delivery.
@@ -275,9 +343,6 @@ export declare namespace AnchoredConditional {
275
343
  condition: ICondition | null;
276
344
  removeListener: IListener.Remove | null;
277
345
  }
278
- /** @internal */
279
- interface CommitView extends AbstractAnchored.CommitView {
280
- }
281
346
  }
282
347
  export {};
283
348
  //# sourceMappingURL=AnchoredConditional.d.ts.map
@@ -1,5 +1,6 @@
1
1
  import { InteropScalarType, IRange, Scalar } from '@sheetxl/primitives';
2
2
  import { MaybePromise } from '@sheetxl/utils';
3
+ import { ICalculation } from '../../calculation';
3
4
  import { ICondition } from '../ICondition';
4
5
  /**
5
6
  * Reads a comparison operand's value at the cell being evaluated. Built once per
@@ -20,14 +21,12 @@ export declare abstract class AbstractOperator<P> implements ICondition.IOperato
20
21
  getName(): string;
21
22
  /** {@inheritDoc ICondition.IOperator.getAcceptsTypes} */
22
23
  getAcceptsTypes(): readonly (InteropScalarType | null)[] | null;
23
- /** {@inheritDoc ICondition.IOperator.acceptsList} */
24
- acceptsList(): boolean;
25
24
  /** {@inheritDoc ICondition.IOperator.getParamType} */
26
25
  getParamType(lhsSelector?: ICondition.ISelector): string | null;
27
26
  /** {@inheritDoc ICondition.IOperator.isCombinator} */
28
27
  isCombinator(): boolean;
29
28
  /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
30
- createDefaultParam(lhsSelector?: ICondition.ISelector): P | null | undefined;
29
+ createDefaultParam(lhsSelector?: ICondition.ISelector, context?: ICondition.DefaultConditionContext): P | null | undefined;
31
30
  /**
32
31
  * {@inheritDoc ICondition.IOperator.getTitle}
33
32
  *
@@ -42,8 +41,8 @@ export declare abstract class AbstractOperator<P> implements ICondition.IOperato
42
41
  /** {@inheritDoc ICondition.doBatch} */
43
42
  doBatch(keys: Set<any>, param: P, ctx: ICondition.IContext): MaybePromise<IRange<boolean> | null>;
44
43
  /**
45
- * Resolves a comparison operand that may be formula-valued — a string param with a leading `=`,
46
- * the Scalar-param convention — into a per-cell {@link OperandReader}.
44
+ * Resolves a comparison operand that may be formula-valued — an {@link ICalculation.IFormula}, or
45
+ * a string param with a leading `=` — into a per-cell {@link OperandReader}.
47
46
  *
48
47
  * @returns The reader, or `null` when the operand is a formula with nothing to read (no engine,
49
48
  * an empty expression) — the caller returns a `null` predicate and the condition is inert
@@ -57,18 +56,49 @@ export declare abstract class AbstractOperator<P> implements ICondition.IOperato
57
56
  * same code path.
58
57
  *
59
58
  * A per-cell value that is an ERROR is returned as the error — comparisons must treat it as
60
- * no-match, never a throw — and warns once per predicate build. A value that is a RANGE (a
61
- * reference operand) takes its top-left: Excel does NOT implicitly intersect here (`$E$5:$F$6>10`
62
- * tested `E5` for every cell; measured 2026-08-21).
59
+ * no-match, never a throw — and warns once per predicate build. A reference operand reads its
60
+ * top-left: Excel does NOT implicitly intersect here (`$E$5:$F$6>10` tested `E5` for every cell;
61
+ * measured 2026-08-21), which is the watch's `arrayFirstCell` evaluation.
63
62
  */
64
- protected _resolveOperand(param: Scalar | undefined, ctx: ICondition.IContext): Promise<OperandReader | null>;
63
+ protected _resolveOperand(param: Scalar | ICalculation.IFormula | undefined, ctx: ICondition.IContext): Promise<OperandReader | null>;
64
+ /**
65
+ * Whether a comparison operand has not been given: absent, or blank text.
66
+ *
67
+ * @remarks
68
+ * A comparison missing an operand is inert, never a comparison against 0. Excel reads a rule
69
+ * whose `<formula>` is absent or empty that way — a validation flags nothing, a format paints
70
+ * nothing (measured, `probe-dv-operands` and `probe-cf-operands`) — and its dialogs refuse to
71
+ * author one.
72
+ */
73
+ protected _isMissingOperand(param: Scalar | ICalculation.IFormula | undefined): boolean;
74
+ /**
75
+ * The first problem with a comparison operand under `lhsSelector`, as a message key, or `null`.
76
+ *
77
+ * @param allowEmptyText Whether `''` is an operand (equal to empty text) rather than one not given.
78
+ *
79
+ * @remarks
80
+ * The rules Excel's dialogs refuse on (measured, `probe-dv-operands`): an operand is required; a
81
+ * whole-number rule takes an integer, a text-length rule a non-negative integer, a date a serial
82
+ * from 0, a time a serial in [0, 1); text where a number belongs is refused; a formula must parse.
83
+ * With no selector (a format's Cell Value rule) any scalar is an operand — Excel accepts text there.
84
+ */
85
+ protected _validateOperand(param: Scalar | ICalculation.IFormula | undefined, lhsSelector: ICondition.ISelector | null | undefined, allowEmptyText?: boolean): string | null;
65
86
  /**
66
87
  * The shared predicate shape of the ordered comparisons (`greaterThan` … `before`): resolve the
67
88
  * operand (formula or literal — see {@link _resolveOperand}), then compare per cell. An ERROR
68
- * operand never matches; a `null` return means the operand could not resolve and the condition
69
- * is inert.
89
+ * operand never matches; a `null` return means the operand is missing
90
+ * ({@link _isMissingOperand}) or could not resolve, and the condition is inert.
91
+ *
92
+ * An empty cell arrives as `null` and compares as 0, which is how Excel judges one (measured,
93
+ * `probe-dv-blank`).
94
+ */
95
+ protected _createComparePredicate(param: Scalar | ICalculation.IFormula | undefined, ctx: ICondition.IContext, compare: (value: number, operand: number) => boolean): Promise<ICondition.Predicate | null>;
96
+ /**
97
+ * An operand as a rule's text reads it: a date or time serial as the date or time it is,
98
+ * under a selector that reads one (`34995` is `10/23/1995` under Date); anything else as it is.
99
+ * The host locale is not known here, so the format is the en-US short form.
70
100
  */
71
- protected _createComparePredicate(param: Scalar | undefined, ctx: ICondition.IContext, compare: (value: number, operand: number) => boolean): Promise<ICondition.Predicate | null>;
101
+ protected _operandText(value: Scalar | ICalculation.IFormula | undefined, lhsSelector?: ICondition.ISelector | null): unknown;
72
102
  /** {@inheritDoc ICondition.IOperator.toString} */
73
103
  toString(param?: P, lhsSelector?: ICondition.ISelector): string | undefined;
74
104
  }
@@ -4,5 +4,7 @@ export declare class AfterEqualToOperator extends AbstractOperator<number | stri
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=AfterEqualToOperator.d.ts.map
@@ -4,5 +4,7 @@ export declare class AfterOperator extends AbstractOperator<number | string> imp
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=AfterOperator.d.ts.map
@@ -5,7 +5,9 @@ export declare class AndOperator extends AbstractOperator<readonly ICondition.In
5
5
  /** {@inheritDoc ICondition.IOperator.isCombinator} */
6
6
  isCombinator(): boolean;
7
7
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
8
- createPredicate(param: readonly ICondition.Input[], ctx: ICondition.IContext): Promise<ICondition.Predicate>;
8
+ createPredicate(param: readonly ICondition.Input[], ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
9
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
10
+ validateParam(param: readonly ICondition.Input[], lhsSelector?: ICondition.ISelector | null): string | null;
9
11
  /** {@inheritDoc ICondition.IOperator.toString} */
10
12
  toString(param?: readonly ICondition.Input[], lhsSelector?: ICondition.ISelector): string | undefined;
11
13
  }
@@ -4,6 +4,8 @@ export declare class AverageOperator extends AbstractOperator<ICondition.Average
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: ICondition.AverageOption, ctx: ICondition.IContext): Promise<ICondition.Predicate>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: ICondition.AverageOption, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
8
10
  createDefaultParam(lhsSelector?: ICondition.ISelector): ICondition.AverageOption;
9
11
  /** {@inheritDoc ICondition.IOperator.toString} */
@@ -4,5 +4,7 @@ export declare class BeforeEqualToOperator extends AbstractOperator<number | str
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=BeforeEqualToOperator.d.ts.map
@@ -4,5 +4,7 @@ export declare class BeforeOperator extends AbstractOperator<number | string> im
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=BeforeOperator.d.ts.map
@@ -6,6 +6,8 @@ export declare class BetweenOperator extends AbstractOperator<ICondition.Between
6
6
  createPredicate(param: ICondition.BetweenOption, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
7
  /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
8
8
  createDefaultParam(lhsSelector?: ICondition.ISelector): ICondition.BetweenOption;
9
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
10
+ validateParam(param: ICondition.BetweenOption, lhsSelector?: ICondition.ISelector | null): string | null;
9
11
  /** {@inheritDoc ICondition.IOperator.toString} */
10
12
  toString(param?: ICondition.BetweenOption, lhsSelector?: ICondition.ISelector): string | undefined;
11
13
  }
@@ -1,5 +1,9 @@
1
1
  import { ICondition } from '../ICondition';
2
2
  import { AbstractOperator } from './AbstractOperator';
3
+ /**
4
+ * Filter by cell or font color. Carried and written back; not evaluated until a condition can
5
+ * read a cell's style, so applying one throws.
6
+ */
3
7
  export declare class ColorOperator extends AbstractOperator<ICondition.ColorOption> implements ICondition.IOperator<ICondition.ColorOption> {
4
8
  constructor();
5
9
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
@@ -4,5 +4,7 @@ export declare class ContainsOperator extends AbstractOperator<string> implement
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: string, ctx: ICondition.IContext): ICondition.Predicate;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=ContainsOperator.d.ts.map
@@ -4,5 +4,7 @@ export declare class EndsWithOperator extends AbstractOperator<string> implement
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: string, ctx: ICondition.IContext): ICondition.Predicate;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=EndsWithOperator.d.ts.map
@@ -1,10 +1,13 @@
1
1
  import { Scalar } from '@sheetxl/primitives';
2
+ import { ICalculation } from '../../calculation';
2
3
  import { ICondition } from '../ICondition';
3
4
  import { AbstractOperator } from './AbstractOperator';
4
5
  export declare class EqualToOperator extends AbstractOperator<Scalar> implements ICondition.IOperator<Scalar> {
5
6
  constructor();
6
7
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
7
- createPredicate(param: Scalar, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
8
+ createPredicate(param: Scalar | ICalculation.IFormula, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
9
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
10
+ validateParam(param: Scalar | ICalculation.IFormula, lhsSelector?: ICondition.ISelector | null): string | null;
8
11
  /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
9
12
  createDefaultParam(lhsSelector?: ICondition.ISelector): Scalar | undefined;
10
13
  }
@@ -1,17 +1,16 @@
1
+ import { ICalculation } from '../../calculation';
1
2
  import { ICondition } from '../ICondition';
2
3
  import { AbstractOperator } from './AbstractOperator';
3
4
  /**
4
5
  * Evaluates a formula expression against the value of the cell.
5
6
  */
6
- export declare class ExpressionOperator extends AbstractOperator<string> implements ICondition.IOperator<string> {
7
+ export declare class ExpressionOperator extends AbstractOperator<ICalculation.IFormula | string> implements ICondition.IOperator<ICalculation.IFormula | string> {
7
8
  constructor();
9
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
10
+ validateParam(param: ICalculation.IFormula | string, lhsSelector?: ICondition.ISelector | null): string | null;
8
11
  /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
9
12
  createDefaultParam(lhsSelector?: ICondition.ISelector): string;
10
13
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
11
- createPredicate(param: string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
14
+ createPredicate(param: ICalculation.IFormula | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
12
15
  }
13
- /**
14
- * Creates a temporary range. This is for illustrations only.
15
- */
16
- export declare const ExpressionRuleAccumulate: ICondition.IOperator<string>;
17
16
  //# sourceMappingURL=ExpressionOperator.d.ts.map
@@ -4,5 +4,7 @@ export declare class GreaterThanEqualToOperator extends AbstractOperator<number
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=GreaterThanEqualToOperator.d.ts.map
@@ -4,5 +4,7 @@ export declare class GreaterThanOperator extends AbstractOperator<number | strin
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=GreaterThanOperator.d.ts.map
@@ -1,5 +1,9 @@
1
1
  import { ICondition } from '../ICondition';
2
2
  import { AbstractOperator } from './AbstractOperator';
3
+ /**
4
+ * Filter by conditional-format icon. Carried and written back; not evaluated until a condition
5
+ * can read a cell's decorations, so applying one throws.
6
+ */
3
7
  export declare class IconOperator extends AbstractOperator<ICondition.IconOption> implements ICondition.IOperator<ICondition.IconOption> {
4
8
  constructor();
5
9
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
@@ -1,13 +1,30 @@
1
+ import { Scalar } from '@sheetxl/primitives';
2
+ import { MaybePromise } from '@sheetxl/utils';
1
3
  import { ICondition } from '../ICondition';
2
4
  import { AbstractOperator } from './AbstractOperator';
3
5
  export declare class InSetOperator extends AbstractOperator<ICondition.InSetOption> implements ICondition.IOperator<ICondition.InSetOption> {
4
6
  constructor();
5
- /** {@inheritDoc ICondition.IOperator.acceptsList} */
6
- acceptsList(): boolean;
7
7
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
8
- createPredicate(param: ICondition.InSetOption, ctx: ICondition.IContext): ICondition.Predicate;
9
- /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
10
- createDefaultParam(lhsSelector?: ICondition.ISelector): ICondition.InSetOption;
8
+ createPredicate(param: ICondition.InSetOption, ctx: ICondition.IContext): ICondition.Predicate | Promise<ICondition.Predicate | null>;
9
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
10
+ validateParam(param: ICondition.InSetOption, lhsSelector?: ICondition.ISelector | null): string | null;
11
+ /**
12
+ * {@inheritDoc ICondition.IOperator.getCandidates}
13
+ *
14
+ * @remarks
15
+ * `items`, then what the `source` lists (with a context to evaluate it in), then `additions`,
16
+ * less `subtractions`: the parts in the order the author gave them. A date group is an
17
+ * interval and lists nothing.
18
+ */
19
+ getCandidates(param: ICondition.InSetOption, ctx?: ICondition.IContext | null): MaybePromise<readonly Scalar[] | null>;
20
+ /**
21
+ * {@inheritDoc ICondition.IOperator.createDefaultParam}
22
+ *
23
+ * @remarks
24
+ * The distinct values already in the cells, sorted as a filter lists them, when there are a
25
+ * few; otherwise no items. Read through the range's stats.
26
+ */
27
+ createDefaultParam(lhsSelector?: ICondition.ISelector, context?: ICondition.DefaultConditionContext): ICondition.InSetOption;
11
28
  /** {@inheritDoc ICondition.IOperator.toString} */
12
29
  toString(param?: ICondition.InSetOption, lhsSelector?: ICondition.ISelector): string | undefined;
13
30
  }
@@ -4,5 +4,7 @@ export declare class LessThanEqualToOperator extends AbstractOperator<number | s
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=LessThanEqualToOperator.d.ts.map
@@ -4,5 +4,7 @@ export declare class LessThanOperator extends AbstractOperator<number | string>
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: number | string, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: number | string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=LessThanOperator.d.ts.map
@@ -6,6 +6,8 @@ export declare class NotOperator extends AbstractOperator<ICondition.Input> impl
6
6
  isCombinator(): boolean;
7
7
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
8
8
  createPredicate(param: ICondition.Input, ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
9
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
10
+ validateParam(param: ICondition.Input, lhsSelector?: ICondition.ISelector | null): string | null;
9
11
  /** {@inheritDoc ICondition.IOperator.toString} */
10
12
  toString(param?: ICondition.Input, lhsSelector?: ICondition.ISelector): string | undefined;
11
13
  }
@@ -5,7 +5,9 @@ export declare class OrOperator extends AbstractOperator<readonly ICondition.Inp
5
5
  /** {@inheritDoc ICondition.IOperator.isCombinator} */
6
6
  isCombinator(): boolean;
7
7
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
8
- createPredicate(param: readonly ICondition.Input[], ctx: ICondition.IContext): Promise<ICondition.Predicate>;
8
+ createPredicate(param: readonly ICondition.Input[], ctx: ICondition.IContext): Promise<ICondition.Predicate | null>;
9
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
10
+ validateParam(param: readonly ICondition.Input[], lhsSelector?: ICondition.ISelector | null): string | null;
9
11
  /** {@inheritDoc ICondition.IOperator.toString} */
10
12
  toString(param?: readonly ICondition.Input[], lhsSelector?: ICondition.ISelector): string | undefined;
11
13
  }
@@ -4,5 +4,7 @@ export declare class StartsWithOperator extends AbstractOperator<string> impleme
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: string, ctx: ICondition.IContext): ICondition.Predicate;
7
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
8
+ validateParam(param: string, lhsSelector?: ICondition.ISelector | null): string | null;
7
9
  }
8
10
  //# sourceMappingURL=StartsWithOperator.d.ts.map
@@ -3,6 +3,8 @@ import { AbstractOperator } from './AbstractOperator';
3
3
  export declare class TimePeriodOperator extends AbstractOperator<ICondition.TimePeriodOption> {
4
4
  constructor();
5
5
  createPredicate(param: ICondition.TimePeriodOption, ctx: ICondition.IContext): Promise<ICondition.Predicate>;
6
+ /** {@inheritDoc ICondition.IOperator.validateParam} */
7
+ validateParam(param: ICondition.TimePeriodOption, lhsSelector?: ICondition.ISelector | null): string | null;
6
8
  /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
7
9
  createDefaultParam(lhsSelector?: ICondition.ISelector): ICondition.TimePeriodOption;
8
10
  /** {@inheritDoc ICondition.IOperator.toString} */
@@ -4,6 +4,12 @@ export declare class TopNOperator extends AbstractOperator<ICondition.TopNOption
4
4
  constructor();
5
5
  /** {@inheritDoc ICondition.IOperator.createPredicate} */
6
6
  createPredicate(param: ICondition.TopNOption, ctx: ICondition.IContext): ICondition.Predicate;
7
+ /**
8
+ * {@inheritDoc ICondition.IOperator.validateParam}
9
+ *
10
+ * Excel's Top 10 dialog takes 1 to 1000 items, or 1 to 100 percent.
11
+ */
12
+ validateParam(param: ICondition.TopNOption, lhsSelector?: ICondition.ISelector | null): string | null;
7
13
  /** {@inheritDoc ICondition.IOperator.createDefaultParam} */
8
14
  createDefaultParam(lhsSelector?: ICondition.ISelector): ICondition.TopNOption;
9
15
  /** {@inheritDoc ICondition.IOperator.toString} */
@@ -1,14 +1,19 @@
1
1
  import { InteropScalarType, Scalar } from '@sheetxl/primitives';
2
2
  import { MaybePromise } from '@sheetxl/utils';
3
3
  import { ICondition } from '../ICondition';
4
+ /**
5
+ * A selector that gates and does not project: a value it accepts is read as itself, any other
6
+ * is {@link ICondition.NotApplicable}.
7
+ */
4
8
  export declare class BaseSelector<T extends Scalar = Scalar, I extends Scalar = T> implements ICondition.ISelector<T, I> {
5
9
  protected _name: string;
6
10
  protected _type: InteropScalarType | null;
7
11
  protected _inputType: InteropScalarType | null;
8
12
  protected _title: string | undefined;
9
13
  protected _description: string | undefined;
10
- protected _renderingHints: readonly string[] | null;
11
- constructor(options: ConstructorOptions);
14
+ protected _gate: ((value: I) => boolean) | null;
15
+ protected _defaultCondition: ICondition.DefaultCondition | null;
16
+ constructor(options: ConstructorOptions<I>);
12
17
  /** {@inheritDoc ICondition.ISelector.createTransformer} */
13
18
  createTransformer(ctx: ICondition.IContext): MaybePromise<ICondition.Transformer<T, I> | null>;
14
19
  /** {@inheritDoc ICondition.ISelector.getName} */
@@ -29,15 +34,25 @@ export declare class BaseSelector<T extends Scalar = Scalar, I extends Scalar =
29
34
  getTitle(): string;
30
35
  /** {@inheritDoc ICondition.ISelector.getDescription} — resolved at display; see {@link getTitle}. */
31
36
  getDescription(): string;
32
- /** {@inheritDoc ICondition.ISelector.getRenderHints} */
33
- getRenderHints(): readonly string[] | null;
37
+ /** {@inheritDoc ICondition.ISelector.getDefaultCondition} */
38
+ getDefaultCondition(_context?: ICondition.DefaultConditionContext): ICondition.DefaultCondition | null;
34
39
  }
35
- export interface ConstructorOptions {
40
+ export interface ConstructorOptions<I extends Scalar = Scalar> {
36
41
  name: string;
37
42
  type: InteropScalarType | null;
38
43
  inputType?: InteropScalarType | null;
39
44
  title?: string;
40
45
  description?: string;
41
- renderingHints?: string | string[];
46
+ /**
47
+ * The selector's domain: whether a (non-blank) value is of the kind it reads. Omitted, every
48
+ * value is.
49
+ */
50
+ gate?: (value: I) => boolean;
51
+ /**
52
+ * What {@link ICondition.ISelector.getDefaultCondition} returns.
53
+ */
54
+ defaultCondition?: ICondition.DefaultCondition | null;
42
55
  }
56
+ /** A number: what Whole, Number, Date and Time read. A boolean is not one (DIFFERENCES-CONDITIONS §1). */
57
+ export declare const isNumberValue: (value: Scalar) => boolean;
43
58
  //# sourceMappingURL=BaseSelector.d.ts.map