@sheetxl/sdk 0.7.21 → 0.7.23-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/THIRD-PARTY-NOTICES.md +34 -0
- package/browser/cjs/A5-b-7zx2sEOEcvl.cjs +33 -0
- package/browser/cjs/B7_pDFYCVzt-3hUs.cjs +1 -0
- package/browser/cjs/Ccctey_HrpWuagT6.cjs +1 -0
- package/browser/cjs/CniTOg7oLRZwmgyM.cjs +57 -0
- package/browser/cjs/Dv3x6zut1ZRUt3IF.cjs +10 -0
- package/browser/cjs/E1pJfQiTbMva4WCz.cjs +1 -0
- package/browser/cjs/Y8ZGOM8g4sbsbA1Y.cjs +1 -0
- package/browser/cjs/index.cjs +3 -6
- package/browser/esm/BBJT6wXyXEvBQZKA.mjs +24 -0
- package/browser/esm/Ba8ViNCurmu-pQzB.mjs +818 -0
- package/browser/esm/Cnay4yeRx2XxT4Yp.mjs +50007 -0
- package/browser/esm/CrUqWGb8XSOVpWCS.mjs +109 -0
- package/browser/esm/DIqScru4YD2CC9q7.mjs +4436 -0
- package/browser/esm/DvShgCfX0MBnppXt.mjs +503 -0
- package/browser/esm/VD1vENLIu7_1r1UY.mjs +14 -0
- package/browser/esm/index.mjs +3225 -62
- package/licenses/dependencies.txt +74 -193
- package/node/esm/AiAlZ5mkssqXTadr.mjs +22 -0
- package/node/esm/Pg7h7EA11A6iLSIA.mjs +837 -0
- package/node/esm/index.mjs +53637 -23246
- package/node/esm/k4ZdzJqmTRplKGLv.mjs +114 -0
- package/package.json +19 -14
- package/resources/contents.json +21 -0
- package/resources/locales/contents.json +19 -0
- package/resources/locales/de/grammar.json +16 -0
- package/resources/locales/de/model.msg.json +510 -0
- package/resources/locales/en/model.msg.json +525 -0
- package/types/index.d.ts +2 -21284
- package/types/scripting-enums.json +1009 -0
- package/types/scripting.d.ts +26139 -31019
- package/types/src/address/AddressUtils.d.ts +252 -0
- package/types/src/address/AddressUtils.d.ts.map +1 -0
- package/types/src/address/_AddressMessages.d.ts +7 -0
- package/types/src/address/_AddressMessages.d.ts.map +1 -0
- package/types/src/address/index.d.ts +35 -0
- package/types/src/address/index.d.ts.map +1 -0
- package/types/src/anchored/AbstractAnchored.d.ts +200 -0
- package/types/src/anchored/AbstractAnchored.d.ts.map +1 -0
- package/types/src/anchored/Anchored.d.ts +154 -0
- package/types/src/anchored/Anchored.d.ts.map +1 -0
- package/types/src/anchored/AnchoredMap.d.ts +178 -0
- package/types/src/anchored/AnchoredMap.d.ts.map +1 -0
- package/types/src/anchored/IAnchored.d.ts +118 -0
- package/types/src/anchored/IAnchored.d.ts.map +1 -0
- package/types/src/anchored/IAnchoredMap.d.ts +207 -0
- package/types/src/anchored/IAnchoredMap.d.ts.map +1 -0
- package/types/src/anchored/_AnchorMessages.d.ts +3 -0
- package/types/src/anchored/_AnchorMessages.d.ts.map +1 -0
- package/types/src/anchored/index.d.ts +2 -0
- package/types/src/anchored/index.d.ts.map +1 -0
- package/types/src/autoFill/AutoFill.d.ts +161 -0
- package/types/src/autoFill/AutoFill.d.ts.map +1 -0
- package/types/src/autoFill/IAutoFill.d.ts +117 -0
- package/types/src/autoFill/IAutoFill.d.ts.map +1 -0
- package/types/src/autoFill/index.d.ts +3 -0
- package/types/src/autoFill/index.d.ts.map +1 -0
- package/types/src/border/IBorder.d.ts +284 -0
- package/types/src/border/IBorder.d.ts.map +1 -0
- package/types/src/border/index.d.ts +2 -0
- package/types/src/border/index.d.ts.map +1 -0
- package/types/src/calculation/Calculation.d.ts +440 -0
- package/types/src/calculation/Calculation.d.ts.map +1 -0
- package/types/src/calculation/FormulaLiterals.d.ts +18 -0
- package/types/src/calculation/FormulaLiterals.d.ts.map +1 -0
- package/types/src/calculation/ICalculation.d.ts +1016 -0
- package/types/src/calculation/ICalculation.d.ts.map +1 -0
- package/types/src/calculation/INamedFormulasCollection.d.ts +141 -0
- package/types/src/calculation/INamedFormulasCollection.d.ts.map +1 -0
- package/types/src/calculation/NamedFormulaCollection.d.ts +671 -0
- package/types/src/calculation/NamedFormulaCollection.d.ts.map +1 -0
- package/types/src/calculation/TokenType.d.ts +117 -0
- package/types/src/calculation/TokenType.d.ts.map +1 -0
- package/types/src/calculation/Types.d.ts +110 -0
- package/types/src/calculation/Types.d.ts.map +1 -0
- package/types/src/calculation/_CalculationMessages.d.ts +3 -0
- package/types/src/calculation/_CalculationMessages.d.ts.map +1 -0
- package/types/src/calculation/builtInNames.d.ts +2 -0
- package/types/src/calculation/builtInNames.d.ts.map +1 -0
- package/types/src/calculation/compiler/ASTTypes.d.ts +180 -0
- package/types/src/calculation/compiler/ASTTypes.d.ts.map +1 -0
- package/types/src/calculation/compiler/CompilerLocale.d.ts +69 -0
- package/types/src/calculation/compiler/CompilerLocale.d.ts.map +1 -0
- package/types/src/calculation/compiler/CompilerUtils.d.ts +331 -0
- package/types/src/calculation/compiler/CompilerUtils.d.ts.map +1 -0
- package/types/src/calculation/compiler/FormulaCompiler.d.ts +69 -0
- package/types/src/calculation/compiler/FormulaCompiler.d.ts.map +1 -0
- package/types/src/calculation/compiler/FormulaLexer.d.ts +85 -0
- package/types/src/calculation/compiler/FormulaLexer.d.ts.map +1 -0
- package/types/src/calculation/compiler/FormulaParser.d.ts +270 -0
- package/types/src/calculation/compiler/FormulaParser.d.ts.map +1 -0
- package/types/src/calculation/compiler/FormulaSeparators.d.ts +35 -0
- package/types/src/calculation/compiler/FormulaSeparators.d.ts.map +1 -0
- package/types/src/calculation/compiler/LiteTransform.d.ts +15 -0
- package/types/src/calculation/compiler/LiteTransform.d.ts.map +1 -0
- package/types/src/calculation/compiler/ParserUtils.d.ts +167 -0
- package/types/src/calculation/compiler/ParserUtils.d.ts.map +1 -0
- package/types/src/calculation/compiler/SRLexer.d.ts +19 -0
- package/types/src/calculation/compiler/SRLexer.d.ts.map +1 -0
- package/types/src/calculation/compiler/SRParser.d.ts +38 -0
- package/types/src/calculation/compiler/SRParser.d.ts.map +1 -0
- package/types/src/calculation/compiler/Types.d.ts +274 -0
- package/types/src/calculation/compiler/Types.d.ts.map +1 -0
- package/types/src/calculation/compiler/index.d.ts +3 -0
- package/types/src/calculation/compiler/index.d.ts.map +1 -0
- package/types/src/calculation/executor/CalcExecutor.d.ts +115 -0
- package/types/src/calculation/executor/CalcExecutor.d.ts.map +1 -0
- package/types/src/calculation/executor/CalcExecutorUtils.d.ts +11 -0
- package/types/src/calculation/executor/CalcExecutorUtils.d.ts.map +1 -0
- package/types/src/calculation/executor/index.d.ts +3 -0
- package/types/src/calculation/executor/index.d.ts.map +1 -0
- package/types/src/calculation/formula/Formula.d.ts +168 -0
- package/types/src/calculation/formula/Formula.d.ts.map +1 -0
- package/types/src/calculation/formula/FormulaBlock.d.ts +207 -0
- package/types/src/calculation/formula/FormulaBlock.d.ts.map +1 -0
- package/types/src/calculation/formula/IFormulaBlock.d.ts +181 -0
- package/types/src/calculation/formula/IFormulaBlock.d.ts.map +1 -0
- package/types/src/calculation/formula/LambdaValue.d.ts +166 -0
- package/types/src/calculation/formula/LambdaValue.d.ts.map +1 -0
- package/types/src/calculation/formula/TokenUtils.d.ts +26 -0
- package/types/src/calculation/formula/TokenUtils.d.ts.map +1 -0
- package/types/src/calculation/formula/index.d.ts +4 -0
- package/types/src/calculation/formula/index.d.ts.map +1 -0
- package/types/src/calculation/functions/Operators.d.ts +30 -0
- package/types/src/calculation/functions/Operators.d.ts.map +1 -0
- package/types/src/calculation/functions/index.d.ts +2 -0
- package/types/src/calculation/functions/index.d.ts.map +1 -0
- package/types/src/calculation/functions/initializeFunctions.d.ts +22 -0
- package/types/src/calculation/functions/initializeFunctions.d.ts.map +1 -0
- package/types/src/calculation/grid/CalcGrid.d.ts +205 -0
- package/types/src/calculation/grid/CalcGrid.d.ts.map +1 -0
- package/types/src/calculation/grid/CalcGridUtils.d.ts +172 -0
- package/types/src/calculation/grid/CalcGridUtils.d.ts.map +1 -0
- package/types/src/calculation/grid/ICalcGrid.d.ts +500 -0
- package/types/src/calculation/grid/ICalcGrid.d.ts.map +1 -0
- package/types/src/calculation/grid/index.d.ts +3 -0
- package/types/src/calculation/grid/index.d.ts.map +1 -0
- package/types/src/calculation/index.d.ts +5 -0
- package/types/src/calculation/index.d.ts.map +1 -0
- package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts +25 -0
- package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts.map +1 -0
- package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +120 -0
- package/types/src/calculation/spatial/FormulaSpatialValue.d.ts.map +1 -0
- package/types/src/calculation/spatial/PrecedentSpatialValue.d.ts +115 -0
- package/types/src/calculation/spatial/PrecedentSpatialValue.d.ts.map +1 -0
- package/types/src/calculation/spatial/SpillEntry.d.ts +40 -0
- package/types/src/calculation/spatial/SpillEntry.d.ts.map +1 -0
- package/types/src/calculation/spatial/index.d.ts +5 -0
- package/types/src/calculation/spatial/index.d.ts.map +1 -0
- package/types/src/calculation/state/CalcNode.d.ts +71 -0
- package/types/src/calculation/state/CalcNode.d.ts.map +1 -0
- package/types/src/calculation/state/CalcScope.d.ts +35 -0
- package/types/src/calculation/state/CalcScope.d.ts.map +1 -0
- package/types/src/calculation/state/CalcState.d.ts +28 -0
- package/types/src/calculation/state/CalcState.d.ts.map +1 -0
- package/types/src/calculation/state/CalculationContext.d.ts +125 -0
- package/types/src/calculation/state/CalculationContext.d.ts.map +1 -0
- package/types/src/calculation/state/IContextContainer.d.ts +320 -0
- package/types/src/calculation/state/IContextContainer.d.ts.map +1 -0
- package/types/src/calculation/state/index.d.ts +6 -0
- package/types/src/calculation/state/index.d.ts.map +1 -0
- package/types/src/calculation/symbol/FunctionSymbolProvider.d.ts +44 -0
- package/types/src/calculation/symbol/FunctionSymbolProvider.d.ts.map +1 -0
- package/types/src/calculation/symbol/ISymbolRegistry.d.ts +93 -0
- package/types/src/calculation/symbol/ISymbolRegistry.d.ts.map +1 -0
- package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts +144 -0
- package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts.map +1 -0
- package/types/src/calculation/symbol/SheetSymbolProvider.d.ts +18 -0
- package/types/src/calculation/symbol/SheetSymbolProvider.d.ts.map +1 -0
- package/types/src/calculation/symbol/SymbolRegistry.d.ts +19 -0
- package/types/src/calculation/symbol/SymbolRegistry.d.ts.map +1 -0
- package/types/src/calculation/symbol/TableColumnSymbolProvider.d.ts +21 -0
- package/types/src/calculation/symbol/TableColumnSymbolProvider.d.ts.map +1 -0
- package/types/src/calculation/symbol/TableSymbolProvider.d.ts +19 -0
- package/types/src/calculation/symbol/TableSymbolProvider.d.ts.map +1 -0
- package/types/src/calculation/symbol/index.d.ts +9 -0
- package/types/src/calculation/symbol/index.d.ts.map +1 -0
- package/types/src/cell/ICell.d.ts +672 -0
- package/types/src/cell/ICell.d.ts.map +1 -0
- package/types/src/cell/ICellHeader.d.ts +142 -0
- package/types/src/cell/ICellHeader.d.ts.map +1 -0
- package/types/src/cell/ICellProtection.d.ts +41 -0
- package/types/src/cell/ICellProtection.d.ts.map +1 -0
- package/types/src/cell/index.d.ts +4 -0
- package/types/src/cell/index.d.ts.map +1 -0
- package/types/src/cellRange/ICellHeaderRange.d.ts +306 -0
- package/types/src/cellRange/ICellHeaderRange.d.ts.map +1 -0
- package/types/src/cellRange/ICellHeaderRanges.d.ts +107 -0
- package/types/src/cellRange/ICellHeaderRanges.d.ts.map +1 -0
- package/types/src/cellRange/ICellRange.d.ts +2509 -0
- package/types/src/cellRange/ICellRange.d.ts.map +1 -0
- package/types/src/cellRange/ICellRanges.d.ts +407 -0
- package/types/src/cellRange/ICellRanges.d.ts.map +1 -0
- package/types/src/cellRange/ICellRegion.d.ts +133 -0
- package/types/src/cellRange/ICellRegion.d.ts.map +1 -0
- package/types/src/cellRange/_GraphNode.d.ts +38 -0
- package/types/src/cellRange/_GraphNode.d.ts.map +1 -0
- package/types/src/cellRange/index.d.ts +6 -0
- package/types/src/cellRange/index.d.ts.map +1 -0
- package/types/src/chart/Chart.d.ts +53 -0
- package/types/src/chart/Chart.d.ts.map +1 -0
- package/types/src/chart/IChart.d.ts +42 -0
- package/types/src/chart/IChart.d.ts.map +1 -0
- package/types/src/chart/index.d.ts +5 -0
- package/types/src/chart/index.d.ts.map +1 -0
- package/types/src/collections/ArraysGrid.d.ts +72 -0
- package/types/src/collections/ArraysGrid.d.ts.map +1 -0
- package/types/src/collections/BooleanList.d.ts +67 -0
- package/types/src/collections/BooleanList.d.ts.map +1 -0
- package/types/src/collections/GridMap.d.ts +47 -0
- package/types/src/collections/GridMap.d.ts.map +1 -0
- package/types/src/collections/HashMap.d.ts +15 -0
- package/types/src/collections/HashMap.d.ts.map +1 -0
- package/types/src/collections/IGrid.d.ts +278 -0
- package/types/src/collections/IGrid.d.ts.map +1 -0
- package/types/src/collections/IList.d.ts +89 -0
- package/types/src/collections/IList.d.ts.map +1 -0
- package/types/src/collections/IMap.d.ts +45 -0
- package/types/src/collections/IMap.d.ts.map +1 -0
- package/types/src/collections/IReadableList.d.ts +120 -0
- package/types/src/collections/IReadableList.d.ts.map +1 -0
- package/types/src/collections/ISortedMap.d.ts +171 -0
- package/types/src/collections/ISortedMap.d.ts.map +1 -0
- package/types/src/collections/ISparseGrid.d.ts +61 -0
- package/types/src/collections/ISparseGrid.d.ts.map +1 -0
- package/types/src/collections/ISparseList.d.ts +103 -0
- package/types/src/collections/ISparseList.d.ts.map +1 -0
- package/types/src/collections/ISpatialMap.d.ts +515 -0
- package/types/src/collections/ISpatialMap.d.ts.map +1 -0
- package/types/src/collections/ISpatialMap3D.d.ts +116 -0
- package/types/src/collections/ISpatialMap3D.d.ts.map +1 -0
- package/types/src/collections/IWritableList.d.ts +41 -0
- package/types/src/collections/IWritableList.d.ts.map +1 -0
- package/types/src/collections/ImmutableList.d.ts +52 -0
- package/types/src/collections/ImmutableList.d.ts.map +1 -0
- package/types/src/collections/IteratorUtils.d.ts +91 -0
- package/types/src/collections/IteratorUtils.d.ts.map +1 -0
- package/types/src/collections/MixedTypedArrayList.d.ts +140 -0
- package/types/src/collections/MixedTypedArrayList.d.ts.map +1 -0
- package/types/src/collections/OverlappingRangeIterator.d.ts +91 -0
- package/types/src/collections/OverlappingRangeIterator.d.ts.map +1 -0
- package/types/src/collections/RTree.d.ts +111 -0
- package/types/src/collections/RTree.d.ts.map +1 -0
- package/types/src/collections/RepeatingList.d.ts +20 -0
- package/types/src/collections/RepeatingList.d.ts.map +1 -0
- package/types/src/collections/SortedMap.d.ts +396 -0
- package/types/src/collections/SortedMap.d.ts.map +1 -0
- package/types/src/collections/SparseGrid.d.ts +99 -0
- package/types/src/collections/SparseGrid.d.ts.map +1 -0
- package/types/src/collections/SparseList.d.ts +90 -0
- package/types/src/collections/SparseList.d.ts.map +1 -0
- package/types/src/collections/SpatialMap.d.ts +102 -0
- package/types/src/collections/SpatialMap.d.ts.map +1 -0
- package/types/src/collections/SpatialMap3D.d.ts +64 -0
- package/types/src/collections/SpatialMap3D.d.ts.map +1 -0
- package/types/src/collections/Tuple.d.ts +160 -0
- package/types/src/collections/Tuple.d.ts.map +1 -0
- package/types/src/collections/_CollectionUtils.d.ts +25 -0
- package/types/src/collections/_CollectionUtils.d.ts.map +1 -0
- package/types/src/collections/_GridUtils.d.ts +268 -0
- package/types/src/collections/_GridUtils.d.ts.map +1 -0
- package/types/src/collections/_RunUtils.d.ts +170 -0
- package/types/src/collections/_RunUtils.d.ts.map +1 -0
- package/types/src/collections/_SpatialUtils.d.ts +115 -0
- package/types/src/collections/_SpatialUtils.d.ts.map +1 -0
- package/types/src/collections/index.d.ts +21 -0
- package/types/src/collections/index.d.ts.map +1 -0
- package/types/src/color/Color.d.ts +120 -0
- package/types/src/color/Color.d.ts.map +1 -0
- package/types/src/color/ColorSpace.d.ts +45 -0
- package/types/src/color/ColorSpace.d.ts.map +1 -0
- package/types/src/color/IColor.d.ts +1110 -0
- package/types/src/color/IColor.d.ts.map +1 -0
- package/types/src/color/_BuiltInIndexDefs.d.ts +4 -0
- package/types/src/color/_BuiltInIndexDefs.d.ts.map +1 -0
- package/types/src/color/_BuiltInNamedDefs.d.ts +29 -0
- package/types/src/color/_BuiltInNamedDefs.d.ts.map +1 -0
- package/types/src/color/_BuiltInSchemeDefs.d.ts +7 -0
- package/types/src/color/_BuiltInSchemeDefs.d.ts.map +1 -0
- package/types/src/color/_ColorUtils.d.ts +93 -0
- package/types/src/color/_ColorUtils.d.ts.map +1 -0
- package/types/src/color/index.d.ts +3 -0
- package/types/src/color/index.d.ts.map +1 -0
- package/types/src/comment/IComment.d.ts +108 -0
- package/types/src/comment/IComment.d.ts.map +1 -0
- package/types/src/comment/index.d.ts +2 -0
- package/types/src/comment/index.d.ts.map +1 -0
- package/types/src/condition/AnchoredConditional.d.ts +263 -0
- package/types/src/condition/AnchoredConditional.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +83 -0
- package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/AfterEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/AfterEqualToOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/AfterOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/AfterOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/AndOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/AndOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/AverageOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/AverageOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/BeforeEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/BeforeEqualToOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/BeforeOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/BeforeOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/BetweenOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/BetweenOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/BlankOperator.d.ts +9 -0
- package/types/src/condition/BuiltInOperators/BlankOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/ColorOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/ColorOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/ContainsOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/ContainsOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/EndsWithOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/EndsWithOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts +11 -0
- package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/ErrorOperator.d.ts +9 -0
- package/types/src/condition/BuiltInOperators/ErrorOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts +17 -0
- package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/GreaterThanEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/GreaterThanEqualToOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/GreaterThanOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/GreaterThanOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/IconOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/IconOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/InSetOperator.d.ts +14 -0
- package/types/src/condition/BuiltInOperators/InSetOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/LessThanEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/LessThanEqualToOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/LessThanOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/LessThanOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/NotOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/NotOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/OrOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/OrOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/StartsWithOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/StartsWithOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/TimePeriodOperator.d.ts +13 -0
- package/types/src/condition/BuiltInOperators/TimePeriodOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/TopNOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/TopNOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/UniqueOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/UniqueOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/ValidEmailOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/ValidEmailOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/ValidUrlOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/ValidUrlOperator.d.ts.map +1 -0
- package/types/src/condition/BuiltInOperators/index.d.ts +59 -0
- package/types/src/condition/BuiltInOperators/index.d.ts.map +1 -0
- package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts +43 -0
- package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts.map +1 -0
- package/types/src/condition/BuiltinSelectors/DateSelector.d.ts +14 -0
- package/types/src/condition/BuiltinSelectors/DateSelector.d.ts.map +1 -0
- package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +12 -0
- package/types/src/condition/BuiltinSelectors/ListSelector.d.ts.map +1 -0
- package/types/src/condition/BuiltinSelectors/TextLengthSelector.d.ts +16 -0
- package/types/src/condition/BuiltinSelectors/TextLengthSelector.d.ts.map +1 -0
- package/types/src/condition/BuiltinSelectors/TimeSelector.d.ts +14 -0
- package/types/src/condition/BuiltinSelectors/TimeSelector.d.ts.map +1 -0
- package/types/src/condition/BuiltinSelectors/WholeSelector.d.ts +14 -0
- package/types/src/condition/BuiltinSelectors/WholeSelector.d.ts.map +1 -0
- package/types/src/condition/BuiltinSelectors/index.d.ts +18 -0
- package/types/src/condition/BuiltinSelectors/index.d.ts.map +1 -0
- package/types/src/condition/Condition.d.ts +123 -0
- package/types/src/condition/Condition.d.ts.map +1 -0
- package/types/src/condition/ICondition.d.ts +915 -0
- package/types/src/condition/ICondition.d.ts.map +1 -0
- package/types/src/condition/_ConditionUtils.d.ts +190 -0
- package/types/src/condition/_ConditionUtils.d.ts.map +1 -0
- package/types/src/condition/index.d.ts +3 -0
- package/types/src/condition/index.d.ts.map +1 -0
- package/types/src/conditionalFormat/ConditionalEntry.d.ts +20 -0
- package/types/src/conditionalFormat/ConditionalEntry.d.ts.map +1 -0
- package/types/src/conditionalFormat/ConditionalFormat.d.ts +190 -0
- package/types/src/conditionalFormat/ConditionalFormat.d.ts.map +1 -0
- package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +20 -0
- package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts.map +1 -0
- package/types/src/conditionalFormat/IConditionalFormat.d.ts +518 -0
- package/types/src/conditionalFormat/IConditionalFormat.d.ts.map +1 -0
- package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +70 -0
- package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts.map +1 -0
- package/types/src/conditionalFormat/_ConditionalMessages.d.ts +2 -0
- package/types/src/conditionalFormat/_ConditionalMessages.d.ts.map +1 -0
- package/types/src/conditionalFormat/index.d.ts +3 -0
- package/types/src/conditionalFormat/index.d.ts.map +1 -0
- package/types/src/dataValidation/DataValidation.d.ts +121 -0
- package/types/src/dataValidation/DataValidation.d.ts.map +1 -0
- package/types/src/dataValidation/DataValidationCollection.d.ts +20 -0
- package/types/src/dataValidation/DataValidationCollection.d.ts.map +1 -0
- package/types/src/dataValidation/IDataValidation.d.ts +327 -0
- package/types/src/dataValidation/IDataValidation.d.ts.map +1 -0
- package/types/src/dataValidation/IDataValidationCollection.d.ts +63 -0
- package/types/src/dataValidation/IDataValidationCollection.d.ts.map +1 -0
- package/types/src/dataValidation/_DataValidationMessages.d.ts +2 -0
- package/types/src/dataValidation/_DataValidationMessages.d.ts.map +1 -0
- package/types/src/dataValidation/_Utils.d.ts +10 -0
- package/types/src/dataValidation/_Utils.d.ts.map +1 -0
- package/types/src/dataValidation/index.d.ts +3 -0
- package/types/src/dataValidation/index.d.ts.map +1 -0
- package/types/src/date/DateUtils.d.ts +8 -0
- package/types/src/date/DateUtils.d.ts.map +1 -0
- package/types/src/date/_DateUtils.d.ts +122 -0
- package/types/src/date/_DateUtils.d.ts.map +1 -0
- package/types/src/date/index.d.ts +2 -0
- package/types/src/date/index.d.ts.map +1 -0
- package/types/src/externalBook/ExternalBookCollection.d.ts +36 -0
- package/types/src/externalBook/ExternalBookCollection.d.ts.map +1 -0
- package/types/src/externalBook/IExternalBook.d.ts +97 -0
- package/types/src/externalBook/IExternalBook.d.ts.map +1 -0
- package/types/src/externalBook/IExternalBookCollection.d.ts +29 -0
- package/types/src/externalBook/IExternalBookCollection.d.ts.map +1 -0
- package/types/src/externalBook/index.d.ts +3 -0
- package/types/src/externalBook/index.d.ts.map +1 -0
- package/types/src/fill/IEffect.d.ts +389 -0
- package/types/src/fill/IEffect.d.ts.map +1 -0
- package/types/src/fill/IFill.d.ts +597 -0
- package/types/src/fill/IFill.d.ts.map +1 -0
- package/types/src/fill/IStroke.d.ts +265 -0
- package/types/src/fill/IStroke.d.ts.map +1 -0
- package/types/src/fill/_BuiltInPatterns.d.ts +27 -0
- package/types/src/fill/_BuiltInPatterns.d.ts.map +1 -0
- package/types/src/fill/index.d.ts +4 -0
- package/types/src/fill/index.d.ts.map +1 -0
- package/types/src/filter/IFilter.d.ts +83 -0
- package/types/src/filter/IFilter.d.ts.map +1 -0
- package/types/src/filter/index.d.ts +2 -0
- package/types/src/filter/index.d.ts.map +1 -0
- package/types/src/font/CanvasFontMeasurer.d.ts +25 -0
- package/types/src/font/CanvasFontMeasurer.d.ts.map +1 -0
- package/types/src/font/ExtendedTextMetrics.d.ts +1 -0
- package/types/src/font/ExtendedTextMetrics.d.ts.map +1 -0
- package/types/src/font/Font.d.ts +19 -0
- package/types/src/font/Font.d.ts.map +1 -0
- package/types/src/font/FontKitFontMeasurer.d.ts +11 -0
- package/types/src/font/FontKitFontMeasurer.d.ts.map +1 -0
- package/types/src/font/FontUtils.d.ts +9 -0
- package/types/src/font/FontUtils.d.ts.map +1 -0
- package/types/src/font/IFont.d.ts +261 -0
- package/types/src/font/IFont.d.ts.map +1 -0
- package/types/src/font/IFontCollection.d.ts +31 -0
- package/types/src/font/IFontCollection.d.ts.map +1 -0
- package/types/src/font/SimpleFontMeasurer.d.ts +4 -0
- package/types/src/font/SimpleFontMeasurer.d.ts.map +1 -0
- package/types/src/font/_FontUtils.d.ts +22 -0
- package/types/src/font/_FontUtils.d.ts.map +1 -0
- package/types/src/font/index.d.ts +5 -0
- package/types/src/font/index.d.ts.map +1 -0
- package/types/src/history/IHistory.d.ts +110 -0
- package/types/src/history/IHistory.d.ts.map +1 -0
- package/types/src/history/index.d.ts +2 -0
- package/types/src/history/index.d.ts.map +1 -0
- package/types/src/hyperlink/IHyperlink.d.ts +96 -0
- package/types/src/hyperlink/IHyperlink.d.ts.map +1 -0
- package/types/src/hyperlink/_Hyperlink.d.ts +21 -0
- package/types/src/hyperlink/_Hyperlink.d.ts.map +1 -0
- package/types/src/hyperlink/index.d.ts +2 -0
- package/types/src/hyperlink/index.d.ts.map +1 -0
- package/types/src/i18n/LanguagePack.d.ts +97 -0
- package/types/src/i18n/LanguagePack.d.ts.map +1 -0
- package/types/src/i18n/LocaleProfile.d.ts +15 -0
- package/types/src/i18n/LocaleProfile.d.ts.map +1 -0
- package/types/src/i18n/_CurrencyData.d.ts +20 -0
- package/types/src/i18n/_CurrencyData.d.ts.map +1 -0
- package/types/src/i18n/functionLocales.d.ts +6 -0
- package/types/src/i18n/functionLocales.d.ts.map +1 -0
- package/types/src/i18n/index.d.ts +4 -0
- package/types/src/i18n/index.d.ts.map +1 -0
- package/types/src/i18n/locales.d.ts +3 -0
- package/types/src/i18n/locales.d.ts.map +1 -0
- package/types/src/index.d.ts +71 -0
- package/types/src/index.d.ts.map +1 -0
- package/types/src/io/AbstractBackingStore.d.ts +53 -0
- package/types/src/io/AbstractBackingStore.d.ts.map +1 -0
- package/types/src/io/ArrayBackingStore.d.ts +34 -0
- package/types/src/io/ArrayBackingStore.d.ts.map +1 -0
- package/types/src/io/IWorkbookIO.d.ts +1322 -0
- package/types/src/io/IWorkbookIO.d.ts.map +1 -0
- package/types/src/io/WorkbookIO.d.ts +91 -0
- package/types/src/io/WorkbookIO.d.ts.map +1 -0
- package/types/src/io/WorkbookOrigin.d.ts +114 -0
- package/types/src/io/WorkbookOrigin.d.ts.map +1 -0
- package/types/src/io/WorkbookRegistry.d.ts +49 -0
- package/types/src/io/WorkbookRegistry.d.ts.map +1 -0
- package/types/src/io/index.d.ts +5 -0
- package/types/src/io/index.d.ts.map +1 -0
- package/types/src/lib/file/file.browser.d.ts +41 -0
- package/types/src/lib/file/file.browser.d.ts.map +1 -0
- package/types/src/lib/file/file.node.d.ts +25 -0
- package/types/src/lib/file/file.node.d.ts.map +1 -0
- package/types/src/lib/utils/_Utils.d.ts +20 -0
- package/types/src/lib/utils/_Utils.d.ts.map +1 -0
- package/types/src/lib/utils/banner.d.ts +6 -0
- package/types/src/lib/utils/banner.d.ts.map +1 -0
- package/types/src/lib/utils/utils.browser.d.ts +28 -0
- package/types/src/lib/utils/utils.browser.d.ts.map +1 -0
- package/types/src/lib/utils/utils.node.d.ts +42 -0
- package/types/src/lib/utils/utils.node.d.ts.map +1 -0
- package/types/src/license/LicenseDetails.d.ts +22 -0
- package/types/src/license/LicenseDetails.d.ts.map +1 -0
- package/types/src/license/LicenseManager.d.ts +63 -0
- package/types/src/license/LicenseManager.d.ts.map +1 -0
- package/types/src/license/index.d.ts +3 -0
- package/types/src/license/index.d.ts.map +1 -0
- package/types/src/license/license-key.d.ts +33 -0
- package/types/src/license/license-key.d.ts.map +1 -0
- package/types/src/listener/IListener.d.ts +62 -0
- package/types/src/listener/IListener.d.ts.map +1 -0
- package/types/src/listener/ListenerEmitter.d.ts +47 -0
- package/types/src/listener/ListenerEmitter.d.ts.map +1 -0
- package/types/src/listener/index.d.ts +2 -0
- package/types/src/listener/index.d.ts.map +1 -0
- package/types/src/model/AbstractModel.d.ts +90 -0
- package/types/src/model/AbstractModel.d.ts.map +1 -0
- package/types/src/model/IModel.d.ts +108 -0
- package/types/src/model/IModel.d.ts.map +1 -0
- package/types/src/model/_ModelMessages.d.ts +2 -0
- package/types/src/model/_ModelMessages.d.ts.map +1 -0
- package/types/src/model/index.d.ts +3 -0
- package/types/src/model/index.d.ts.map +1 -0
- package/types/src/movable/CustomElement.d.ts +42 -0
- package/types/src/movable/CustomElement.d.ts.map +1 -0
- package/types/src/movable/ICustomElement.d.ts +29 -0
- package/types/src/movable/ICustomElement.d.ts.map +1 -0
- package/types/src/movable/IGroup.d.ts +30 -0
- package/types/src/movable/IGroup.d.ts.map +1 -0
- package/types/src/movable/IMovable.d.ts +327 -0
- package/types/src/movable/IMovable.d.ts.map +1 -0
- package/types/src/movable/IMovableCollection.d.ts +129 -0
- package/types/src/movable/IMovableCollection.d.ts.map +1 -0
- package/types/src/movable/IMovableSelection.d.ts +49 -0
- package/types/src/movable/IMovableSelection.d.ts.map +1 -0
- package/types/src/movable/Movable.d.ts +221 -0
- package/types/src/movable/Movable.d.ts.map +1 -0
- package/types/src/movable/MovableCollection.d.ts +29 -0
- package/types/src/movable/MovableCollection.d.ts.map +1 -0
- package/types/src/movable/_MovableUtils.d.ts +4 -0
- package/types/src/movable/_MovableUtils.d.ts.map +1 -0
- package/types/src/movable/index.d.ts +4 -0
- package/types/src/movable/index.d.ts.map +1 -0
- package/types/src/named/AbstractNamed.d.ts +41 -0
- package/types/src/named/AbstractNamed.d.ts.map +1 -0
- package/types/src/named/INamed.d.ts +225 -0
- package/types/src/named/INamed.d.ts.map +1 -0
- package/types/src/named/INamedCollection.d.ts +230 -0
- package/types/src/named/INamedCollection.d.ts.map +1 -0
- package/types/src/named/NamedCollection.d.ts +302 -0
- package/types/src/named/NamedCollection.d.ts.map +1 -0
- package/types/src/named/_BuiltInNamed.d.ts +6 -0
- package/types/src/named/_BuiltInNamed.d.ts.map +1 -0
- package/types/src/named/index.d.ts +3 -0
- package/types/src/named/index.d.ts.map +1 -0
- package/types/src/numFmt/BuiltInFormats.d.ts +49 -0
- package/types/src/numFmt/BuiltInFormats.d.ts.map +1 -0
- package/types/src/numFmt/IFormatEngine.d.ts +149 -0
- package/types/src/numFmt/IFormatEngine.d.ts.map +1 -0
- package/types/src/numFmt/NumberFormatBuilder.d.ts +46 -0
- package/types/src/numFmt/NumberFormatBuilder.d.ts.map +1 -0
- package/types/src/numFmt/NumberFormatParser.d.ts +168 -0
- package/types/src/numFmt/NumberFormatParser.d.ts.map +1 -0
- package/types/src/numFmt/NumberFormatStyles.d.ts +43 -0
- package/types/src/numFmt/NumberFormatStyles.d.ts.map +1 -0
- package/types/src/numFmt/NumberFormatType.d.ts +79 -0
- package/types/src/numFmt/NumberFormatType.d.ts.map +1 -0
- package/types/src/numFmt/NumfmtFormatEngine.d.ts +33 -0
- package/types/src/numFmt/NumfmtFormatEngine.d.ts.map +1 -0
- package/types/src/numFmt/_BuiltInNumberFormats.d.ts +12 -0
- package/types/src/numFmt/_BuiltInNumberFormats.d.ts.map +1 -0
- package/types/src/numFmt/_FormatCell.d.ts +52 -0
- package/types/src/numFmt/_FormatCell.d.ts.map +1 -0
- package/types/src/numFmt/_NumFmtUtils.d.ts +102 -0
- package/types/src/numFmt/_NumFmtUtils.d.ts.map +1 -0
- package/types/src/numFmt/index.d.ts +105 -0
- package/types/src/numFmt/index.d.ts.map +1 -0
- package/types/src/numFmt/vendor/numfmt/_sheetxl.d.ts +15 -0
- package/types/src/numFmt/vendor/numfmt/index.d.ts +721 -0
- package/types/src/picture/IPicture.d.ts +69 -0
- package/types/src/picture/IPicture.d.ts.map +1 -0
- package/types/src/picture/Picture.d.ts +67 -0
- package/types/src/picture/Picture.d.ts.map +1 -0
- package/types/src/picture/index.d.ts +2 -0
- package/types/src/picture/index.d.ts.map +1 -0
- package/types/src/primitives/CompositeRangeStats.d.ts +63 -0
- package/types/src/primitives/CompositeRangeStats.d.ts.map +1 -0
- package/types/src/primitives/Criteria.d.ts +35 -0
- package/types/src/primitives/Criteria.d.ts.map +1 -0
- package/types/src/primitives/FormulaContext.d.ts +2 -0
- package/types/src/primitives/FormulaContext.d.ts.map +1 -0
- package/types/src/primitives/PrimitiveUtils.d.ts +255 -0
- package/types/src/primitives/PrimitiveUtils.d.ts.map +1 -0
- package/types/src/primitives/Range.d.ts +221 -0
- package/types/src/primitives/Range.d.ts.map +1 -0
- package/types/src/primitives/RangeStats.d.ts +48 -0
- package/types/src/primitives/RangeStats.d.ts.map +1 -0
- package/types/src/primitives/ReferenceRange.d.ts +19 -0
- package/types/src/primitives/ReferenceRange.d.ts.map +1 -0
- package/types/src/primitives/Runtime.d.ts +55 -0
- package/types/src/primitives/Runtime.d.ts.map +1 -0
- package/types/src/primitives/ScalarCollation.d.ts +174 -0
- package/types/src/primitives/ScalarCollation.d.ts.map +1 -0
- package/types/src/primitives/TextFold.d.ts +62 -0
- package/types/src/primitives/TextFold.d.ts.map +1 -0
- package/types/src/primitives/_PrimitiveMessages.d.ts +3 -0
- package/types/src/primitives/_PrimitiveMessages.d.ts.map +1 -0
- package/types/src/primitives/index.d.ts +7 -0
- package/types/src/primitives/index.d.ts.map +1 -0
- package/types/src/primitives/stats/AggregateStats.d.ts +119 -0
- package/types/src/primitives/stats/AggregateStats.d.ts.map +1 -0
- package/types/src/primitives/stats/Cancellation.d.ts +43 -0
- package/types/src/primitives/stats/Cancellation.d.ts.map +1 -0
- package/types/src/primitives/stats/FrequencyStats.d.ts +94 -0
- package/types/src/primitives/stats/FrequencyStats.d.ts.map +1 -0
- package/types/src/primitives/stats/Ranked.d.ts +26 -0
- package/types/src/primitives/stats/Ranked.d.ts.map +1 -0
- package/types/src/primitives/stats/ScalarOrder.d.ts +18 -0
- package/types/src/primitives/stats/ScalarOrder.d.ts.map +1 -0
- package/types/src/primitives/stats/SortedNumbers.d.ts +48 -0
- package/types/src/primitives/stats/SortedNumbers.d.ts.map +1 -0
- package/types/src/primitives/stats/index.d.ts +7 -0
- package/types/src/primitives/stats/index.d.ts.map +1 -0
- package/types/src/print/IPrint.d.ts +234 -0
- package/types/src/print/IPrint.d.ts.map +1 -0
- package/types/src/print/index.d.ts +2 -0
- package/types/src/print/index.d.ts.map +1 -0
- package/types/src/protectedRange/IProtectedRange.d.ts +239 -0
- package/types/src/protectedRange/IProtectedRange.d.ts.map +1 -0
- package/types/src/protectedRange/IProtectedRangeCollection.d.ts +73 -0
- package/types/src/protectedRange/IProtectedRangeCollection.d.ts.map +1 -0
- package/types/src/protectedRange/ProtectedRange.d.ts +101 -0
- package/types/src/protectedRange/ProtectedRange.d.ts.map +1 -0
- package/types/src/protectedRange/ProtectedRangeCollection.d.ts +21 -0
- package/types/src/protectedRange/ProtectedRangeCollection.d.ts.map +1 -0
- package/types/src/protectedRange/index.d.ts +3 -0
- package/types/src/protectedRange/index.d.ts.map +1 -0
- package/types/src/protection/DefaultProtection.d.ts +43 -0
- package/types/src/protection/DefaultProtection.d.ts.map +1 -0
- package/types/src/protection/IProtection.d.ts +170 -0
- package/types/src/protection/IProtection.d.ts.map +1 -0
- package/types/src/protection/PasswordHasher.d.ts +35 -0
- package/types/src/protection/PasswordHasher.d.ts.map +1 -0
- package/types/src/protection/index.d.ts +6 -0
- package/types/src/protection/index.d.ts.map +1 -0
- package/types/src/resource/IResource.d.ts +98 -0
- package/types/src/resource/IResource.d.ts.map +1 -0
- package/types/src/resource/IResourceCollection.d.ts +96 -0
- package/types/src/resource/IResourceCollection.d.ts.map +1 -0
- package/types/src/resource/Resource.d.ts +39 -0
- package/types/src/resource/Resource.d.ts.map +1 -0
- package/types/src/resource/ResourceCollection.d.ts +19 -0
- package/types/src/resource/ResourceCollection.d.ts.map +1 -0
- package/types/src/resource/_ResourceMessages.d.ts +4 -0
- package/types/src/resource/_ResourceMessages.d.ts.map +1 -0
- package/types/src/resource/index.d.ts +5 -0
- package/types/src/resource/index.d.ts.map +1 -0
- package/types/src/resource/resourceKinds.d.ts +23 -0
- package/types/src/resource/resourceKinds.d.ts.map +1 -0
- package/types/src/richData/index.d.ts +1 -0
- package/types/src/richData/index.d.ts.map +1 -0
- package/types/src/scripting/FunctionCollection.d.ts +88 -0
- package/types/src/scripting/FunctionCollection.d.ts.map +1 -0
- package/types/src/scripting/IFunctionCollection.d.ts +208 -0
- package/types/src/scripting/IFunctionCollection.d.ts.map +1 -0
- package/types/src/scripting/IModule.d.ts +82 -0
- package/types/src/scripting/IModule.d.ts.map +1 -0
- package/types/src/scripting/IModuleCollection.d.ts +79 -0
- package/types/src/scripting/IModuleCollection.d.ts.map +1 -0
- package/types/src/scripting/IScript.d.ts +289 -0
- package/types/src/scripting/IScript.d.ts.map +1 -0
- package/types/src/scripting/ITypedFunction.d.ts +61 -0
- package/types/src/scripting/ITypedFunction.d.ts.map +1 -0
- package/types/src/scripting/MacroFunction.d.ts +15 -0
- package/types/src/scripting/MacroFunction.d.ts.map +1 -0
- package/types/src/scripting/Module.d.ts +39 -0
- package/types/src/scripting/Module.d.ts.map +1 -0
- package/types/src/scripting/ModuleCollection.d.ts +56 -0
- package/types/src/scripting/ModuleCollection.d.ts.map +1 -0
- package/types/src/scripting/Runtime.d.ts +16 -0
- package/types/src/scripting/Runtime.d.ts.map +1 -0
- package/types/src/scripting/Scripts.d.ts +79 -0
- package/types/src/scripting/Scripts.d.ts.map +1 -0
- package/types/src/scripting/TypedFunction.d.ts +161 -0
- package/types/src/scripting/TypedFunction.d.ts.map +1 -0
- package/types/src/scripting/_FunctionIndex.d.ts +111 -0
- package/types/src/scripting/_FunctionIndex.d.ts.map +1 -0
- package/types/src/scripting/_FunctionMessages.d.ts +6 -0
- package/types/src/scripting/_FunctionMessages.d.ts.map +1 -0
- package/types/src/scripting/_ModuleUtils.d.ts +5 -0
- package/types/src/scripting/_ModuleUtils.d.ts.map +1 -0
- package/types/src/scripting/_ScriptUtils.d.ts +18 -0
- package/types/src/scripting/_ScriptUtils.d.ts.map +1 -0
- package/types/src/scripting/enumManifest.browser.d.ts +9 -0
- package/types/src/scripting/enumManifest.browser.d.ts.map +1 -0
- package/types/src/scripting/enumManifest.node.d.ts +13 -0
- package/types/src/scripting/enumManifest.node.d.ts.map +1 -0
- package/types/src/scripting/index.d.ts +4 -0
- package/types/src/scripting/index.d.ts.map +1 -0
- package/types/src/selection/IRangeSelection.d.ts +307 -0
- package/types/src/selection/IRangeSelection.d.ts.map +1 -0
- package/types/src/selection/RangeSelection.d.ts +144 -0
- package/types/src/selection/RangeSelection.d.ts.map +1 -0
- package/types/src/selection/_RangeSelectionUtils.d.ts +32 -0
- package/types/src/selection/_RangeSelectionUtils.d.ts.map +1 -0
- package/types/src/selection/index.d.ts +2 -0
- package/types/src/selection/index.d.ts.map +1 -0
- package/types/src/shape/IShape.d.ts +279 -0
- package/types/src/shape/IShape.d.ts.map +1 -0
- package/types/src/shape/Shape.d.ts +54 -0
- package/types/src/shape/Shape.d.ts.map +1 -0
- package/types/src/shape/index.d.ts +2 -0
- package/types/src/shape/index.d.ts.map +1 -0
- package/types/src/sheet/CellRegion.d.ts +106 -0
- package/types/src/sheet/CellRegion.d.ts.map +1 -0
- package/types/src/sheet/ICellContainerOptions.d.ts +97 -0
- package/types/src/sheet/ICellContainerOptions.d.ts.map +1 -0
- package/types/src/sheet/ISheet.d.ts +1074 -0
- package/types/src/sheet/ISheet.d.ts.map +1 -0
- package/types/src/sheet/ISheetCollection.d.ts +70 -0
- package/types/src/sheet/ISheetCollection.d.ts.map +1 -0
- package/types/src/sheet/NamedCellRange.d.ts +45 -0
- package/types/src/sheet/NamedCellRange.d.ts.map +1 -0
- package/types/src/sheet/NamedRange.d.ts +30 -0
- package/types/src/sheet/NamedRange.d.ts.map +1 -0
- package/types/src/sheet/Sheet.d.ts +1068 -0
- package/types/src/sheet/Sheet.d.ts.map +1 -0
- package/types/src/sheet/SheetCell.d.ts +335 -0
- package/types/src/sheet/SheetCell.d.ts.map +1 -0
- package/types/src/sheet/SheetCollection.d.ts +18 -0
- package/types/src/sheet/SheetCollection.d.ts.map +1 -0
- package/types/src/sheet/SheetRange.d.ts +362 -0
- package/types/src/sheet/SheetRange.d.ts.map +1 -0
- package/types/src/sheet/SheetRanges.d.ts +225 -0
- package/types/src/sheet/SheetRanges.d.ts.map +1 -0
- package/types/src/sheet/_CopyUtils.d.ts +33 -0
- package/types/src/sheet/_CopyUtils.d.ts.map +1 -0
- package/types/src/sheet/_InvalidSheetRange.d.ts +70 -0
- package/types/src/sheet/_InvalidSheetRange.d.ts.map +1 -0
- package/types/src/sheet/_SheetAutoFitUtils.d.ts +18 -0
- package/types/src/sheet/_SheetAutoFitUtils.d.ts.map +1 -0
- package/types/src/sheet/_SheetCoords.d.ts +54 -0
- package/types/src/sheet/_SheetCoords.d.ts.map +1 -0
- package/types/src/sheet/_SheetFilterUtils.d.ts +9 -0
- package/types/src/sheet/_SheetFilterUtils.d.ts.map +1 -0
- package/types/src/sheet/_SheetMessages.d.ts +11 -0
- package/types/src/sheet/_SheetMessages.d.ts.map +1 -0
- package/types/src/sheet/_SheetMutations.d.ts +137 -0
- package/types/src/sheet/_SheetMutations.d.ts.map +1 -0
- package/types/src/sheet/_SheetSortUtils.d.ts +9 -0
- package/types/src/sheet/_SheetSortUtils.d.ts.map +1 -0
- package/types/src/sheet/_SheetStateReader.d.ts +161 -0
- package/types/src/sheet/_SheetStateReader.d.ts.map +1 -0
- package/types/src/sheet/_SheetStateTypes.d.ts +446 -0
- package/types/src/sheet/_SheetStateTypes.d.ts.map +1 -0
- package/types/src/sheet/_SheetUtils.d.ts +265 -0
- package/types/src/sheet/_SheetUtils.d.ts.map +1 -0
- package/types/src/sheet/clipboard/IHTMLParser.d.ts +92 -0
- package/types/src/sheet/clipboard/IHTMLParser.d.ts.map +1 -0
- package/types/src/sheet/clipboard/RangeClipboardItems.d.ts +55 -0
- package/types/src/sheet/clipboard/RangeClipboardItems.d.ts.map +1 -0
- package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts +29 -0
- package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts.map +1 -0
- package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts +46 -0
- package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts.map +1 -0
- package/types/src/sheet/clipboard/_ClipboardUtils.d.ts +10 -0
- package/types/src/sheet/clipboard/_ClipboardUtils.d.ts.map +1 -0
- package/types/src/sheet/clipboard/index.d.ts +2 -0
- package/types/src/sheet/clipboard/index.d.ts.map +1 -0
- package/types/src/sheet/index.d.ts +6 -0
- package/types/src/sheet/index.d.ts.map +1 -0
- package/types/src/sheet/listener/RangesListener.d.ts +32 -0
- package/types/src/sheet/listener/RangesListener.d.ts.map +1 -0
- package/types/src/sheet/listener/RangesListenerEntry.d.ts +19 -0
- package/types/src/sheet/listener/RangesListenerEntry.d.ts.map +1 -0
- package/types/src/sheet/listener/index.d.ts +3 -0
- package/types/src/sheet/listener/index.d.ts.map +1 -0
- package/types/src/sheet/spatial/MergeEntry.d.ts +17 -0
- package/types/src/sheet/spatial/MergeEntry.d.ts.map +1 -0
- package/types/src/sheet/spatial/index.d.ts +2 -0
- package/types/src/sheet/spatial/index.d.ts.map +1 -0
- package/types/src/sheet/style/SheetCellStyle.d.ts +540 -0
- package/types/src/sheet/style/SheetCellStyle.d.ts.map +1 -0
- package/types/src/sheet/style/SheetDirectStyle.d.ts +130 -0
- package/types/src/sheet/style/SheetDirectStyle.d.ts.map +1 -0
- package/types/src/sheet/style/SheetNamedStyle.d.ts +47 -0
- package/types/src/sheet/style/SheetNamedStyle.d.ts.map +1 -0
- package/types/src/sheet/style/SheetTableStyle.d.ts +47 -0
- package/types/src/sheet/style/SheetTableStyle.d.ts.map +1 -0
- package/types/src/sheet/style/UsedRangeSpatialMap.d.ts +80 -0
- package/types/src/sheet/style/UsedRangeSpatialMap.d.ts.map +1 -0
- package/types/src/sheet/style/_Resolvers.d.ts +41 -0
- package/types/src/sheet/style/_Resolvers.d.ts.map +1 -0
- package/types/src/sheet/style/_StyleUtils.d.ts +69 -0
- package/types/src/sheet/style/_StyleUtils.d.ts.map +1 -0
- package/types/src/sheet/style/index.d.ts +1 -0
- package/types/src/sheet/style/index.d.ts.map +1 -0
- package/types/src/sheetHeader/ISheetHeader.d.ts +217 -0
- package/types/src/sheetHeader/ISheetHeader.d.ts.map +1 -0
- package/types/src/sheetHeader/SheetCellHeader.d.ts +61 -0
- package/types/src/sheetHeader/SheetCellHeader.d.ts.map +1 -0
- package/types/src/sheetHeader/SheetCellHeaderRange.d.ts +54 -0
- package/types/src/sheetHeader/SheetCellHeaderRange.d.ts.map +1 -0
- package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts +46 -0
- package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts.map +1 -0
- package/types/src/sheetHeader/SheetHeader.d.ts +257 -0
- package/types/src/sheetHeader/SheetHeader.d.ts.map +1 -0
- package/types/src/sheetHeader/_HeaderUtils.d.ts +94 -0
- package/types/src/sheetHeader/_HeaderUtils.d.ts.map +1 -0
- package/types/src/sheetHeader/_InvalidSheetHeaderRange.d.ts +7 -0
- package/types/src/sheetHeader/_InvalidSheetHeaderRange.d.ts.map +1 -0
- package/types/src/sheetHeader/index.d.ts +2 -0
- package/types/src/sheetHeader/index.d.ts.map +1 -0
- package/types/src/sheetProtection/ISheetProtection.d.ts +150 -0
- package/types/src/sheetProtection/ISheetProtection.d.ts.map +1 -0
- package/types/src/sheetProtection/SheetProtection.d.ts +39 -0
- package/types/src/sheetProtection/SheetProtection.d.ts.map +1 -0
- package/types/src/sheetProtection/index.d.ts +2 -0
- package/types/src/sheetProtection/index.d.ts.map +1 -0
- package/types/src/sheetView/ISheetView.d.ts +439 -0
- package/types/src/sheetView/ISheetView.d.ts.map +1 -0
- package/types/src/sheetView/SheetView.d.ts +113 -0
- package/types/src/sheetView/SheetView.d.ts.map +1 -0
- package/types/src/sheetView/_SheetViewUtils.d.ts +19 -0
- package/types/src/sheetView/_SheetViewUtils.d.ts.map +1 -0
- package/types/src/sheetView/index.d.ts +2 -0
- package/types/src/sheetView/index.d.ts.map +1 -0
- package/types/src/slicer/ISlicer.d.ts +38 -0
- package/types/src/slicer/ISlicer.d.ts.map +1 -0
- package/types/src/slicer/Slicer.d.ts +41 -0
- package/types/src/slicer/Slicer.d.ts.map +1 -0
- package/types/src/slicer/index.d.ts +2 -0
- package/types/src/slicer/index.d.ts.map +1 -0
- package/types/src/sort/ISort.d.ts +318 -0
- package/types/src/sort/ISort.d.ts.map +1 -0
- package/types/src/sort/Sort.d.ts +48 -0
- package/types/src/sort/Sort.d.ts.map +1 -0
- package/types/src/sort/_SortUtils.d.ts +12 -0
- package/types/src/sort/_SortUtils.d.ts.map +1 -0
- package/types/src/sort/index.d.ts +3 -0
- package/types/src/sort/index.d.ts.map +1 -0
- package/types/src/string/IStringCollection.d.ts +50 -0
- package/types/src/string/IStringCollection.d.ts.map +1 -0
- package/types/src/string/StringCollection.d.ts +26 -0
- package/types/src/string/StringCollection.d.ts.map +1 -0
- package/types/src/string/index.d.ts +3 -0
- package/types/src/string/index.d.ts.map +1 -0
- package/types/src/style/IStyle.d.ts +485 -0
- package/types/src/style/IStyle.d.ts.map +1 -0
- package/types/src/style/IStyleCollection.d.ts +292 -0
- package/types/src/style/IStyleCollection.d.ts.map +1 -0
- package/types/src/style/StyleCollection.d.ts +125 -0
- package/types/src/style/StyleCollection.d.ts.map +1 -0
- package/types/src/style/_BuiltInStyleDefs.d.ts +18 -0
- package/types/src/style/_BuiltInStyleDefs.d.ts.map +1 -0
- package/types/src/style/_BuiltInStyleNames.d.ts +20 -0
- package/types/src/style/_BuiltInStyleNames.d.ts.map +1 -0
- package/types/src/style/index.d.ts +5 -0
- package/types/src/style/index.d.ts.map +1 -0
- package/types/src/table/AnchoredTable.d.ts +349 -0
- package/types/src/table/AnchoredTable.d.ts.map +1 -0
- package/types/src/table/AutoTable.d.ts +64 -0
- package/types/src/table/AutoTable.d.ts.map +1 -0
- package/types/src/table/ITable.d.ts +714 -0
- package/types/src/table/ITable.d.ts.map +1 -0
- package/types/src/table/ITableCollection.d.ts +88 -0
- package/types/src/table/ITableCollection.d.ts.map +1 -0
- package/types/src/table/ITableStyle.d.ts +318 -0
- package/types/src/table/ITableStyle.d.ts.map +1 -0
- package/types/src/table/Table.d.ts +8 -0
- package/types/src/table/Table.d.ts.map +1 -0
- package/types/src/table/TableCollection.d.ts +20 -0
- package/types/src/table/TableCollection.d.ts.map +1 -0
- package/types/src/table/_AutoTableColumn.d.ts +27 -0
- package/types/src/table/_AutoTableColumn.d.ts.map +1 -0
- package/types/src/table/_BuiltInTableStyles.d.ts +9 -0
- package/types/src/table/_BuiltInTableStyles.d.ts.map +1 -0
- package/types/src/table/_FilterField.d.ts +30 -0
- package/types/src/table/_FilterField.d.ts.map +1 -0
- package/types/src/table/_NamedTable.d.ts +84 -0
- package/types/src/table/_NamedTable.d.ts.map +1 -0
- package/types/src/table/_NamedTableSource.d.ts +57 -0
- package/types/src/table/_NamedTableSource.d.ts.map +1 -0
- package/types/src/table/_SortField.d.ts +29 -0
- package/types/src/table/_SortField.d.ts.map +1 -0
- package/types/src/table/_TableColumn.d.ts +51 -0
- package/types/src/table/_TableColumn.d.ts.map +1 -0
- package/types/src/table/_TableMessages.d.ts +5 -0
- package/types/src/table/_TableMessages.d.ts.map +1 -0
- package/types/src/table/_TableUtils.d.ts +94 -0
- package/types/src/table/_TableUtils.d.ts.map +1 -0
- package/types/src/table/index.d.ts +5 -0
- package/types/src/table/index.d.ts.map +1 -0
- package/types/src/text/AutoNumberingScheme.d.ts +175 -0
- package/types/src/text/AutoNumberingScheme.d.ts.map +1 -0
- package/types/src/text/Bullet.d.ts +34 -0
- package/types/src/text/Bullet.d.ts.map +1 -0
- package/types/src/text/IText.d.ts +53 -0
- package/types/src/text/IText.d.ts.map +1 -0
- package/types/src/text/ITextFrame.d.ts +313 -0
- package/types/src/text/ITextFrame.d.ts.map +1 -0
- package/types/src/text/TextBoxAlignment.d.ts +141 -0
- package/types/src/text/TextBoxAlignment.d.ts.map +1 -0
- package/types/src/text/TextFrame.d.ts +43 -0
- package/types/src/text/TextFrame.d.ts.map +1 -0
- package/types/src/text/TextLine.d.ts +24 -0
- package/types/src/text/TextLine.d.ts.map +1 -0
- package/types/src/text/TextParagraph.d.ts +61 -0
- package/types/src/text/TextParagraph.d.ts.map +1 -0
- package/types/src/text/TextRotation.d.ts +106 -0
- package/types/src/text/TextRotation.d.ts.map +1 -0
- package/types/src/text/TextRun.d.ts +85 -0
- package/types/src/text/TextRun.d.ts.map +1 -0
- package/types/src/text/TextUtils.d.ts +165 -0
- package/types/src/text/TextUtils.d.ts.map +1 -0
- package/types/src/text/TextVisitor.d.ts +11 -0
- package/types/src/text/TextVisitor.d.ts.map +1 -0
- package/types/src/text/TextWrapper.d.ts +78 -0
- package/types/src/text/TextWrapper.d.ts.map +1 -0
- package/types/src/text/_TextUtils.d.ts +90 -0
- package/types/src/text/_TextUtils.d.ts.map +1 -0
- package/types/src/text/impl/Phrase.d.ts +3 -0
- package/types/src/text/impl/Phrase.d.ts.map +1 -0
- package/types/src/text/impl/TabStrategy.d.ts +9 -0
- package/types/src/text/impl/TabStrategy.d.ts.map +1 -0
- package/types/src/text/impl/WordWrapUtils.d.ts +6 -0
- package/types/src/text/impl/WordWrapUtils.d.ts.map +1 -0
- package/types/src/text/index.d.ts +7 -0
- package/types/src/text/index.d.ts.map +1 -0
- package/types/src/text/richtext/IStyledFont.d.ts +330 -0
- package/types/src/text/richtext/IStyledFont.d.ts.map +1 -0
- package/types/src/text/richtext/index.d.ts +2 -0
- package/types/src/text/richtext/index.d.ts.map +1 -0
- package/types/src/theme/ITheme.d.ts +252 -0
- package/types/src/theme/ITheme.d.ts.map +1 -0
- package/types/src/theme/IThemeCollection.d.ts +84 -0
- package/types/src/theme/IThemeCollection.d.ts.map +1 -0
- package/types/src/theme/ThemeCollection.d.ts +62 -0
- package/types/src/theme/ThemeCollection.d.ts.map +1 -0
- package/types/src/theme/_BuiltInColorSchemes.d.ts +3 -0
- package/types/src/theme/_BuiltInColorSchemes.d.ts.map +1 -0
- package/types/src/theme/_BuiltInFontSchemes.d.ts +3 -0
- package/types/src/theme/_BuiltInFontSchemes.d.ts.map +1 -0
- package/types/src/theme/_BuiltInThemeDefs.d.ts +3 -0
- package/types/src/theme/_BuiltInThemeDefs.d.ts.map +1 -0
- package/types/src/theme/_ThemeMessages.d.ts +3 -0
- package/types/src/theme/_ThemeMessages.d.ts.map +1 -0
- package/types/src/theme/_ThemeUtils.d.ts +3 -0
- package/types/src/theme/_ThemeUtils.d.ts.map +1 -0
- package/types/src/theme/index.d.ts +4 -0
- package/types/src/theme/index.d.ts.map +1 -0
- package/types/src/transaction/ITransaction.d.ts +594 -0
- package/types/src/transaction/ITransaction.d.ts.map +1 -0
- package/types/src/transaction/Transaction.d.ts +184 -0
- package/types/src/transaction/Transaction.d.ts.map +1 -0
- package/types/src/transaction/TransactionSaveStateManager.d.ts +85 -0
- package/types/src/transaction/TransactionSaveStateManager.d.ts.map +1 -0
- package/types/src/transaction/TransactionUndoManager.d.ts +60 -0
- package/types/src/transaction/TransactionUndoManager.d.ts.map +1 -0
- package/types/src/transaction/index.d.ts +5 -0
- package/types/src/transaction/index.d.ts.map +1 -0
- package/types/src/type/ICollection.d.ts +110 -0
- package/types/src/type/ICollection.d.ts.map +1 -0
- package/types/src/type/IProperties.d.ts +51 -0
- package/types/src/type/IProperties.d.ts.map +1 -0
- package/types/src/type/ITypes.d.ts +69 -0
- package/types/src/type/ITypes.d.ts.map +1 -0
- package/types/src/type/Registry.d.ts +66 -0
- package/types/src/type/Registry.d.ts.map +1 -0
- package/types/src/type/index.d.ts +5 -0
- package/types/src/type/index.d.ts.map +1 -0
- package/types/src/utils/GeomUtils.d.ts +61 -0
- package/types/src/utils/GeomUtils.d.ts.map +1 -0
- package/types/src/utils/ObjectPath.d.ts +9 -0
- package/types/src/utils/ObjectPath.d.ts.map +1 -0
- package/types/src/utils/Profiler.d.ts +38 -0
- package/types/src/utils/Profiler.d.ts.map +1 -0
- package/types/src/utils/_CSSUtils.d.ts +156 -0
- package/types/src/utils/_CSSUtils.d.ts.map +1 -0
- package/types/src/utils/_GeomUtils.d.ts +14 -0
- package/types/src/utils/_GeomUtils.d.ts.map +1 -0
- package/types/src/utils/_RangeCoordUtils.d.ts +84 -0
- package/types/src/utils/_RangeCoordUtils.d.ts.map +1 -0
- package/types/src/utils/_RangeSetUtils.d.ts +55 -0
- package/types/src/utils/_RangeSetUtils.d.ts.map +1 -0
- package/types/src/utils/index.d.ts +2 -0
- package/types/src/utils/index.d.ts.map +1 -0
- package/types/src/workbook/IWorkbook.d.ts +711 -0
- package/types/src/workbook/IWorkbook.d.ts.map +1 -0
- package/types/src/workbook/Workbook.d.ts +342 -0
- package/types/src/workbook/Workbook.d.ts.map +1 -0
- package/types/src/workbook/WorkbookRange.d.ts +25 -0
- package/types/src/workbook/WorkbookRange.d.ts.map +1 -0
- package/types/src/workbook/WorkbookRanges.d.ts +39 -0
- package/types/src/workbook/WorkbookRanges.d.ts.map +1 -0
- package/types/src/workbook/_WorkbookMessages.d.ts +8 -0
- package/types/src/workbook/_WorkbookMessages.d.ts.map +1 -0
- package/types/src/workbook/_WorkbookUtils.d.ts +35 -0
- package/types/src/workbook/_WorkbookUtils.d.ts.map +1 -0
- package/types/src/workbook/index.d.ts +3 -0
- package/types/src/workbook/index.d.ts.map +1 -0
- package/types/src/workbookProtection/IWorkbookProtection.d.ts +57 -0
- package/types/src/workbookProtection/IWorkbookProtection.d.ts.map +1 -0
- package/types/src/workbookProtection/WorkbookProtection.d.ts +14 -0
- package/types/src/workbookProtection/WorkbookProtection.d.ts.map +1 -0
- package/types/src/workbookProtection/index.d.ts +2 -0
- package/types/src/workbookProtection/index.d.ts.map +1 -0
- package/types/src/workbookView/IWorkbookView.d.ts +134 -0
- package/types/src/workbookView/IWorkbookView.d.ts.map +1 -0
- package/types/src/workbookView/WorkbookView.d.ts +49 -0
- package/types/src/workbookView/WorkbookView.d.ts.map +1 -0
- package/types/src/workbookView/index.d.ts +3 -0
- package/types/src/workbookView/index.d.ts.map +1 -0
- package/browser/cjs/B1wkCHMcDuFkMcC_.cjs +0 -6
- package/browser/cjs/B6GPcN051NmcYcIT.cjs +0 -124
- package/browser/cjs/BLBAZ-Bmj0EAhunn.cjs +0 -6
- package/browser/cjs/BP8dBZEDNeacQUNp.cjs +0 -7
- package/browser/cjs/BhNultME1o9xbmcX.cjs +0 -15
- package/browser/cjs/Bm_Mc6TDFCZ1OJNj.cjs +0 -6
- package/browser/cjs/Bo1CE3hgxUD5DGqu.cjs +0 -6
- package/browser/cjs/Btp8A0kzb6cHSEMD.cjs +0 -6
- package/browser/cjs/BvS2Hclafqxj6DCP.cjs +0 -6
- package/browser/cjs/CASsDxt2bA8JHiEW.cjs +0 -6
- package/browser/cjs/CI7HTC82ehwZZ7G9.cjs +0 -55
- package/browser/cjs/CNw4tHphpF3kplDH.cjs +0 -6
- package/browser/cjs/CO7SAK1ru6qnh7fr.cjs +0 -6
- package/browser/cjs/CdLUUmZCUY5uWnq5.cjs +0 -6
- package/browser/cjs/Cegi9isUAUZKUYFl.cjs +0 -6
- package/browser/cjs/CnlnOI_NWWeETB4i.cjs +0 -6
- package/browser/cjs/CphmaCdyCfgLRsS0.cjs +0 -6
- package/browser/cjs/D0Qme7PcsKfdtShi.cjs +0 -6
- package/browser/cjs/D74bWkyzhU8E2TDh.cjs +0 -6
- package/browser/cjs/DFQA35q7KQ-zS2eo.cjs +0 -6
- package/browser/cjs/DK27kwlwz0N4_IpD.cjs +0 -6
- package/browser/cjs/DMfUZBX5dMS-QcFB.cjs +0 -6
- package/browser/cjs/DTrbxLKRbIsj3mPI.cjs +0 -6
- package/browser/cjs/DUbyVNEdEpgkjI-U.cjs +0 -6
- package/browser/cjs/DUiZ8WcVcUyjfILT.cjs +0 -6
- package/browser/cjs/DzZ_6y4OF7HzFZLT.cjs +0 -6
- package/browser/cjs/vQgVD2EniUvkeXnq.cjs +0 -6
- package/browser/esm/B8depZMfw4f8vJ6H.mjs +0 -10
- package/browser/esm/B9z2sURkI9ThbLxE.mjs +0 -10
- package/browser/esm/BDSqdyFcw4FRrODg.mjs +0 -23823
- package/browser/esm/BLoU0uz84A8fWYom.mjs +0 -10
- package/browser/esm/BgKy-xWSJeSV_EyO.mjs +0 -10
- package/browser/esm/Bi2_8iLEY_M-v_34.mjs +0 -10
- package/browser/esm/Bzs_r45vqhZAtTZK.mjs +0 -10
- package/browser/esm/C39Yfk__mPOF8auo.mjs +0 -10
- package/browser/esm/C4EnSMaP8fTEJmhu.mjs +0 -10
- package/browser/esm/CWj2Ts01muSR6zp-.mjs +0 -12
- package/browser/esm/Cd2b3Z4DxOR0M3qa.mjs +0 -4022
- package/browser/esm/Cg7YNnt2uhmFG_3d.mjs +0 -10
- package/browser/esm/CkU9J_RtpNfpxh0y.mjs +0 -10
- package/browser/esm/D0Mb17_7UFEFNmkU.mjs +0 -426
- package/browser/esm/D6VvBNUOfq8QUBY5.mjs +0 -10
- package/browser/esm/DE0iHIHhP7sczC_y.mjs +0 -10
- package/browser/esm/DORXFXgRUsjkR1kA.mjs +0 -10
- package/browser/esm/DTPLUnlOvF2feqR4.mjs +0 -10
- package/browser/esm/DTzUiMAnLD_Zuf0f.mjs +0 -10
- package/browser/esm/D_lQo-PErOoj-8tN.mjs +0 -10
- package/browser/esm/DbK0GAKpj9hwwFwY.mjs +0 -10
- package/browser/esm/DflesN5VzS43jsHK.mjs +0 -5653
- package/browser/esm/DoMqoQP6F7OPue_g.mjs +0 -10
- package/browser/esm/DrIkV6ixO7gbuv7Q.mjs +0 -10
- package/browser/esm/mxYovIi79sCzcZtQ.mjs +0 -10
- package/browser/esm/oRsIla0R_H7slM9k.mjs +0 -10
- package/browser/esm/u5XTTNCFdsbCZ-ud.mjs +0 -10
- package/node/esm/3vOMW8PI4UI73pTa.mjs +0 -10
- package/node/esm/B9z2sURkI9ThbLxE.mjs +0 -10
- package/node/esm/BE2XMKirjoBI9zkt.mjs +0 -1072
- package/node/esm/BL_7m0SH43tASZc8.mjs +0 -10
- package/node/esm/BLoU0uz84A8fWYom.mjs +0 -10
- package/node/esm/BNoPG6CBaybfp_G7.mjs +0 -10
- package/node/esm/BgKy-xWSJeSV_EyO.mjs +0 -10
- package/node/esm/Bi2_8iLEY_M-v_34.mjs +0 -10
- package/node/esm/C4EnSMaP8fTEJmhu.mjs +0 -10
- package/node/esm/CS080xy3HgmgAFgx.mjs +0 -10
- package/node/esm/Cg7YNnt2uhmFG_3d.mjs +0 -10
- package/node/esm/D6VvBNUOfq8QUBY5.mjs +0 -10
- package/node/esm/D7cm1_99nK7c_-6L.mjs +0 -13
- package/node/esm/DE0iHIHhP7sczC_y.mjs +0 -10
- package/node/esm/DElHitSTYjDdkUx1.mjs +0 -10
- package/node/esm/DORXFXgRUsjkR1kA.mjs +0 -10
- package/node/esm/DP7a0Jrz8vTZnv2W.mjs +0 -10
- package/node/esm/DTzUiMAnLD_Zuf0f.mjs +0 -10
- package/node/esm/D_lQo-PErOoj-8tN.mjs +0 -10
- package/node/esm/DbK0GAKpj9hwwFwY.mjs +0 -10
- package/node/esm/DoMqoQP6F7OPue_g.mjs +0 -10
- package/node/esm/mxYovIi79sCzcZtQ.mjs +0 -10
- package/node/esm/oRsIla0R_H7slM9k.mjs +0 -10
- package/node/esm/sVuz1UjytOtK5gck.mjs +0 -2458
- package/node/esm/u5XTTNCFdsbCZ-ud.mjs +0 -10
|
@@ -0,0 +1,2509 @@
|
|
|
1
|
+
import { FormulaError, IRange, Scalar, InteropScalar, IRangeStats } from '@sheetxl/primitives';
|
|
2
|
+
import { Bounds, ReferenceableClipboard } from '@sheetxl/utils';
|
|
3
|
+
import { ITypes } from '../type';
|
|
4
|
+
import { IListener } from '../listener';
|
|
5
|
+
import { ITransaction } from '../transaction';
|
|
6
|
+
import { IHyperlink } from '../hyperlink';
|
|
7
|
+
import { IComment } from '../comment';
|
|
8
|
+
import { ISort } from '../sort';
|
|
9
|
+
import { ICondition } from '../condition';
|
|
10
|
+
import { IAutoFill } from '../autoFill';
|
|
11
|
+
import { IStyle } from '../style';
|
|
12
|
+
import { ICalculation } from '../calculation';
|
|
13
|
+
import { ITable, ITableCollection } from '../table';
|
|
14
|
+
import { IMovable, IMovableCollection } from '../movable';
|
|
15
|
+
import { IDataValidation, IDataValidationCollection } from '../dataValidation';
|
|
16
|
+
import { IConditionalFormat } from '../conditionalFormat/IConditionalFormat';
|
|
17
|
+
import { IConditionalFormatCollection } from '../conditionalFormat/IConditionalFormatCollection';
|
|
18
|
+
import { ISheet } from '../sheet';
|
|
19
|
+
import { ICell } from '../cell';
|
|
20
|
+
import { ICellRanges } from './ICellRanges';
|
|
21
|
+
import { ICellRegions } from './ICellRegion';
|
|
22
|
+
import { ICellHeaderRange } from './ICellHeaderRange';
|
|
23
|
+
/**
|
|
24
|
+
* A {@link ICellRange} represents a rectangular collection of {@link ICell} within an {@link ISheet}.
|
|
25
|
+
*
|
|
26
|
+
* **Naming Conventions:** Methods usually adhere to the following conventions except
|
|
27
|
+
* when adhering to a idiomatic existing conventions of Typescript (for example `size` or 'length'):
|
|
28
|
+
*
|
|
29
|
+
* - Methods returning information about the range (e.g., width, count) use a `get` prefix.
|
|
30
|
+
* - Methods that transform the range's data into a different type use a `to` prefix (e.g., `toArray()`).
|
|
31
|
+
*/
|
|
32
|
+
export interface ICellRange {
|
|
33
|
+
/**
|
|
34
|
+
* Returns an immutable {@link IRange} snapshot of the cell range's current values.
|
|
35
|
+
*
|
|
36
|
+
* @remarks
|
|
37
|
+
* `IRange` is SheetXL's stateless value computation layer — it has no knowledge of
|
|
38
|
+
* the sheet, and the same logic runs identically in a browser, Node.js, or a Web Worker.
|
|
39
|
+
*
|
|
40
|
+
* This is the bridge between the live sheet (`ICellRange`) and pure value computation (`IRange`):
|
|
41
|
+
* - Pass the result to {@link setValues} or {@link setComputedValues} to write back to the sheet.
|
|
42
|
+
* - Use directly with formula functions and UDFs, which only operate on `IRange`.
|
|
43
|
+
*
|
|
44
|
+
* @see {@link https://www.sheetxl.com/docs/guides/concepts/two-ranges | ICellRange and IRange} for a full guide.
|
|
45
|
+
*/
|
|
46
|
+
getValuesRange(): IRange;
|
|
47
|
+
/**
|
|
48
|
+
* Applies a transformation to the cell range's values and writes the result back to the sheet.
|
|
49
|
+
*
|
|
50
|
+
* @remarks
|
|
51
|
+
* Convenience wrapper around {@link getValuesRange} and {@link setValues}:
|
|
52
|
+
* ```ts
|
|
53
|
+
* setComputedValues(fn) ≡ this.setValues(fn(this.getValuesRange()))
|
|
54
|
+
* ```
|
|
55
|
+
* The callback receives the current values as an immutable {@link IRange},
|
|
56
|
+
* and the returned `IRange` is written back to the sheet.
|
|
57
|
+
*
|
|
58
|
+
* @param callback - A pure function that transforms the cell range's `IRange`.
|
|
59
|
+
*
|
|
60
|
+
* @see {@link https://www.sheetxl.com/docs/guides/concepts/two-ranges | ICellRange and IRange}
|
|
61
|
+
*/
|
|
62
|
+
setComputedValues(callback: (range: IRange) => IRange, options?: ITransaction.OperationOptions): this;
|
|
63
|
+
/**
|
|
64
|
+
* Return an array of coords for all merges.
|
|
65
|
+
*
|
|
66
|
+
* * @returns An array of 'IRange.Coords` that contain merges.
|
|
67
|
+
*/
|
|
68
|
+
getMerges(): IRange.Coords[];
|
|
69
|
+
/**
|
|
70
|
+
* Returns the {@link IConditionalFormat}s that overlap the range.
|
|
71
|
+
*
|
|
72
|
+
* @param options The filters of {@link IConditionalFormatCollection.getItems} without `address` —
|
|
73
|
+
* this range is the address.
|
|
74
|
+
*
|
|
75
|
+
* @remarks
|
|
76
|
+
* **Overlap, not containment.** A format anchored to `A1:D10` is returned for a query on `B2`;
|
|
77
|
+
* pass `fullyContained` for the stricter question.
|
|
78
|
+
*
|
|
79
|
+
* The items are the sheet's — this is a scoped view of
|
|
80
|
+
* `getSheet().getConditionalFormats()`, not a copy — and each appears **once**, however many of
|
|
81
|
+
* its ranges the query hit. The range only says *which* items; ask an item where it lives with
|
|
82
|
+
* {@link IConditionalFormat.getRanges}.
|
|
83
|
+
*/
|
|
84
|
+
getConditionalFormats(options?: ICellRange.GetItemsOptions<IConditionalFormatCollection.GetItemsOptions>): IConditionalFormat[];
|
|
85
|
+
/**
|
|
86
|
+
* Returns the {@link IDataValidation}s that overlap the range.
|
|
87
|
+
*
|
|
88
|
+
* @param options The filters of {@link IDataValidationCollection.getItems} without `address` —
|
|
89
|
+
* this range is the address.
|
|
90
|
+
*
|
|
91
|
+
* @remarks
|
|
92
|
+
* **Plural, unlike Excel.** A cell carries at most one validation there, so Excel's range accessor
|
|
93
|
+
* is singular; here a range may overlap any number of independently anchored validations.
|
|
94
|
+
*
|
|
95
|
+
* See {@link getConditionalFormats} for the overlap and one-entry-per-item rules, which are the
|
|
96
|
+
* same for every ranged item lookup.
|
|
97
|
+
*/
|
|
98
|
+
getDataValidations(options?: ICellRange.GetItemsOptions<IDataValidationCollection.GetItemsOptions>): IDataValidation[];
|
|
99
|
+
/**
|
|
100
|
+
* Returns the {@link ITable}s that overlap the range.
|
|
101
|
+
*
|
|
102
|
+
* @param options The filters of {@link ITableCollection.getItems} without `address` — this range
|
|
103
|
+
* is the address.
|
|
104
|
+
*
|
|
105
|
+
* @remarks
|
|
106
|
+
* Overlap, not containment — a range clipping one corner of a table returns it. Pass
|
|
107
|
+
* `fullyContained` to ask only for tables the range wholly encloses.
|
|
108
|
+
*/
|
|
109
|
+
getTables(options?: ICellRange.GetItemsOptions<ITableCollection.GetItemsOptions>): ITable[];
|
|
110
|
+
/**
|
|
111
|
+
* Returns the {@link IMovable}s anchored over the range.
|
|
112
|
+
*
|
|
113
|
+
* @param options The filters of {@link IMovableCollection.getItems} without `address` — this
|
|
114
|
+
* range is the address.
|
|
115
|
+
*
|
|
116
|
+
* @remarks
|
|
117
|
+
* A movable is anchored to cells but sized in pixels, so what it overlaps is its **anchor**, not
|
|
118
|
+
* the pixels it paints.
|
|
119
|
+
*/
|
|
120
|
+
getMovables(options?: ICellRange.GetItemsOptions<IMovableCollection.GetItemsOptions>): IMovable[];
|
|
121
|
+
/**
|
|
122
|
+
* Returns a cell in the range.
|
|
123
|
+
*
|
|
124
|
+
* @param address The address of the cell to retrieve. This must be within the range bounds. Default Value the 'top left'
|
|
125
|
+
*
|
|
126
|
+
* @see
|
|
127
|
+
* {@link ICellRange.getCells}
|
|
128
|
+
*/
|
|
129
|
+
getCell(address?: ICell.Address): ICell;
|
|
130
|
+
/**
|
|
131
|
+
* Return a 2D array of {@link ICell | cells} in the shape of the range.
|
|
132
|
+
*
|
|
133
|
+
* @returns A 2D array of {@link ICell}s.
|
|
134
|
+
*
|
|
135
|
+
* @remarks
|
|
136
|
+
* * Empty values will be `null`.
|
|
137
|
+
* * {@link ICellRange.GetValuesOptions.asInteropValues} is ignored; use {@link ICell.getInteropValue()} when working with {@link ICell}.
|
|
138
|
+
*/
|
|
139
|
+
getCells(options?: ICellRange.GetValuesOptions): ICell[][];
|
|
140
|
+
/**
|
|
141
|
+
* Returns the value for the top left `Scalar`.
|
|
142
|
+
*
|
|
143
|
+
* @remarks
|
|
144
|
+
* The `ignoreHidden` option is ignored.
|
|
145
|
+
*
|
|
146
|
+
* @see
|
|
147
|
+
* {@link ICellRange.getValues}
|
|
148
|
+
*/
|
|
149
|
+
getValue(): Scalar;
|
|
150
|
+
/**
|
|
151
|
+
* Returns the value for the top left `InteropScalar`.
|
|
152
|
+
*
|
|
153
|
+
* @remarks
|
|
154
|
+
* The `ignoreHidden` option is ignored.
|
|
155
|
+
*
|
|
156
|
+
* @see
|
|
157
|
+
* {@link ICellRange.getValues}
|
|
158
|
+
*/
|
|
159
|
+
getInteropValue(): InteropScalar;
|
|
160
|
+
/**
|
|
161
|
+
* Returns the style for the range.
|
|
162
|
+
*
|
|
163
|
+
* @remarks
|
|
164
|
+
* When querying the style the values will always be for the top left. However the
|
|
165
|
+
* set values work for the entire range.
|
|
166
|
+
*/
|
|
167
|
+
getStyle(): IStyle;
|
|
168
|
+
/**
|
|
169
|
+
* Returns the formula for the range.
|
|
170
|
+
*
|
|
171
|
+
* @param address The address of the cell to retrieve the formula for. Default value is the 'top left' cell of the range.
|
|
172
|
+
*
|
|
173
|
+
* @remarks
|
|
174
|
+
* When querying the formula this will always be for the top left. However the
|
|
175
|
+
* set values work for the entire range.
|
|
176
|
+
*/
|
|
177
|
+
getFormula(address?: ICell.Address): ICalculation.IFormula;
|
|
178
|
+
/**
|
|
179
|
+
* Parses a formula expression and returns a *transient* formula object anchored at this range's
|
|
180
|
+
* top-left cell.
|
|
181
|
+
*
|
|
182
|
+
* @param expression The formula expression to parse.
|
|
183
|
+
*
|
|
184
|
+
* @remarks
|
|
185
|
+
* The anchored convenience form: equivalent to
|
|
186
|
+
* `getSheet().createFormula(expression, topLeftCoords)`, where the anchor is this
|
|
187
|
+
* range's top-left cell. Nothing is committed — the formula is not registered in the workbook
|
|
188
|
+
* or the dependency graph.
|
|
189
|
+
*
|
|
190
|
+
* Two behaviors follow from the sheet form (see {@link ISheet.createFormula}):
|
|
191
|
+
*
|
|
192
|
+
* - A bare reference (`A2`) resolves against THIS range's sheet, never the selected one.
|
|
193
|
+
* - Relative references resolve **relative to the anchor cell**, so the expression reads
|
|
194
|
+
* exactly as it would if it were authored here.
|
|
195
|
+
*
|
|
196
|
+
* @see {@link ISheet.createFormula}
|
|
197
|
+
* @see {@link ICalculation.createFormula}
|
|
198
|
+
*/
|
|
199
|
+
createFormula(expression: string): ICalculation.IFormula;
|
|
200
|
+
/**
|
|
201
|
+
* Returns the intersection of the current range and the specified range.
|
|
202
|
+
*
|
|
203
|
+
* @param address The address of the other range to intersect with..
|
|
204
|
+
* @returns `ICellRange` at the intersection of the two ranges, or `null` if there's no overlap.
|
|
205
|
+
*/
|
|
206
|
+
getIntersect(address?: ICellRange.Address, options?: ICellRange.GetRangeOptions): this | null;
|
|
207
|
+
/**
|
|
208
|
+
* Returns the union of the current range with the specified range.
|
|
209
|
+
*
|
|
210
|
+
* @param address The address of the other range to intersect with.
|
|
211
|
+
* @returns `ICellRange` at the union of the two ranges.
|
|
212
|
+
*/
|
|
213
|
+
getUnion(address?: ICellRange.Address, options?: ICellRange.GetRangeOptions): this;
|
|
214
|
+
/**
|
|
215
|
+
* Returns a set of non-overlapping ranges the represents the difference between the current
|
|
216
|
+
* range and the specified range.
|
|
217
|
+
*
|
|
218
|
+
* @param address The address of the range to subtract from the current range.
|
|
219
|
+
* @returns `ICellRanges` containing the resulting non-overlapping ranges,
|
|
220
|
+
* or `null` if:
|
|
221
|
+
* - There is no intersection between the current range and the specified address.
|
|
222
|
+
* - The specified address is the same as or encompasses the current range.
|
|
223
|
+
*
|
|
224
|
+
* @remarks
|
|
225
|
+
* - The method will always return between 0 and 4 ranges.
|
|
226
|
+
* - If there's no intersection, it returns an `ICellRanges` containing only the current range.
|
|
227
|
+
*/
|
|
228
|
+
getDifferences(address: ICellRange.Address, options?: ICellRange.GetRangeOptions): ICellRanges | null;
|
|
229
|
+
/**
|
|
230
|
+
* Returns a range that includes the columns for the entire sheet.
|
|
231
|
+
* For example, if the range is `A1:B2`, this method will return `A:B`.
|
|
232
|
+
*
|
|
233
|
+
* @param shift If `true` this will also shift the columns by the width of the range. default `false`.
|
|
234
|
+
* @returns `ICellRange` at the repositioned range.
|
|
235
|
+
*/
|
|
236
|
+
getEntireColumns(shift?: boolean, options?: ICellRange.GetRangeOptions): this;
|
|
237
|
+
/**
|
|
238
|
+
* Returns a range that includes the rows for the entire sheet.
|
|
239
|
+
* For example, if the range is `A1:B2`, this method will return `1:2`.
|
|
240
|
+
*
|
|
241
|
+
* @param shift If `true` this will also shift the rows by the height of the range. default `false`.
|
|
242
|
+
* @returns `ICellRange` at the repositioned range.
|
|
243
|
+
*/
|
|
244
|
+
getEntireRows(shift?: boolean, options?: ICellRange.GetRangeOptions): this;
|
|
245
|
+
/**
|
|
246
|
+
* Returns a range that includes the current range up to a content edge boundary.
|
|
247
|
+
*
|
|
248
|
+
* @param direction The direction.
|
|
249
|
+
* @param cell The cell to use as a starting point.
|
|
250
|
+
* If not provide the cell closest to the edge will be used.
|
|
251
|
+
* @returns `ICellRange` extended in the given direction.
|
|
252
|
+
*/
|
|
253
|
+
getExtended(direction: IRange.Direction, cell?: ICell.Address): this;
|
|
254
|
+
/**
|
|
255
|
+
* Returns a range with coordinates adjusted to be fixed (absolute) or flexible (relative).
|
|
256
|
+
*
|
|
257
|
+
* @param options Either a {@link ICellRange.GetFixedOptions} object to
|
|
258
|
+
* specify individual coordinate settings, or a `boolean`
|
|
259
|
+
* to adjust all coordinates at once. If a `boolean` is provided:
|
|
260
|
+
* - `true` sets all coordinates to absolute.
|
|
261
|
+
* - `false` sets all coordinates to relative.
|
|
262
|
+
* @returns `ICellRange` with updated coordinate references types.
|
|
263
|
+
*
|
|
264
|
+
* @remarks
|
|
265
|
+
* If no `options` are provided, this method toggles the fixed flags for the range's coordinates
|
|
266
|
+
* based on their current settings. Calling this repeatedly will cycle between relative and absolute references.
|
|
267
|
+
* For example: `A1` → `$A$1` → `A$1` → `$A1` → `A1`
|
|
268
|
+
*/
|
|
269
|
+
getFixed(options?: ICellRange.GetFixedOptions | boolean): this;
|
|
270
|
+
/**
|
|
271
|
+
* Returns a 1×1 cell or an explicit range at the specified **absolute** sheet coordinates.
|
|
272
|
+
*
|
|
273
|
+
* @param rowStart The absolute row index (0-based, inclusive). Must be ≥ 0.
|
|
274
|
+
* @param colStart The absolute column index (0-based, inclusive). Must be ≥ 0.
|
|
275
|
+
* @param rowEnd The absolute ending row index (inclusive). If not provided, defaults to `rowStart` (1×1 cell).
|
|
276
|
+
* @param colEnd The absolute ending column index (inclusive). If not provided, defaults to `columnStart` (1×1 cell).
|
|
277
|
+
* @returns `ICellRange` at the specified coordinates.
|
|
278
|
+
*
|
|
279
|
+
* @remarks
|
|
280
|
+
* All indices are **absolute** — they are used directly as sheet coordinates and are not
|
|
281
|
+
* relative to the current range. Negative indices are not supported.
|
|
282
|
+
*
|
|
283
|
+
* When only `rowStart` and `columnStart` are supplied the result is always a single cell (1×1),
|
|
284
|
+
* regardless of the current range's shape. Use {@link getOffsetTo} to move the top-left corner
|
|
285
|
+
* while preserving the original dimensions.
|
|
286
|
+
*/
|
|
287
|
+
getRangeAt(rowStart: number, colStart: number, rowEnd?: number, colEnd?: number, options?: ICellRange.GetRangeOptions): this;
|
|
288
|
+
/**
|
|
289
|
+
* Returns the row at the specified **absolute** row index, retaining the current column span.
|
|
290
|
+
*
|
|
291
|
+
* @param rowIndex The absolute row index (0-based). Must be ≥ 0. Not relative to the current range.
|
|
292
|
+
* @returns `ICellRange` with a row height of 1 and the original column width.
|
|
293
|
+
*/
|
|
294
|
+
getRowAt(rowIndex: number, options?: ICellRange.GetRangeOptions): this;
|
|
295
|
+
/**
|
|
296
|
+
* Returns the row after the current range.
|
|
297
|
+
*
|
|
298
|
+
* @returns `ICellRange` with the top-left corner immediately after the current range.
|
|
299
|
+
*
|
|
300
|
+
* @remarks
|
|
301
|
+
* This will return a range with a row height of 1 but the original column width.
|
|
302
|
+
*/
|
|
303
|
+
getRowAfter(options?: ICellRange.GetRangeOptions): this;
|
|
304
|
+
/**
|
|
305
|
+
* Returns the row before the current range.
|
|
306
|
+
*
|
|
307
|
+
* @returns `ICellRange` with the top-left corner immediately before the current range.
|
|
308
|
+
*
|
|
309
|
+
* @remarks
|
|
310
|
+
* This will return a range with a row height of 1 but the original column width.
|
|
311
|
+
*/
|
|
312
|
+
getRowBefore(options?: ICellRange.GetRangeOptions): this;
|
|
313
|
+
/**
|
|
314
|
+
* Returns the row at the specified delta relative to the **start** of the current range,
|
|
315
|
+
* retaining the current column span.
|
|
316
|
+
*
|
|
317
|
+
* @param rowDelta Number of rows to move from `rowStart`. Positive moves down; negative moves up.
|
|
318
|
+
* @returns `ICellRange` with a row height of 1 and the original column width.
|
|
319
|
+
*
|
|
320
|
+
* @remarks
|
|
321
|
+
* `getRowBy(0)` is equivalent to `getRowAt(rowStart)` — the first row of the current range.
|
|
322
|
+
* To advance past the end of the range, use {@link getRowAfter} instead.
|
|
323
|
+
*/
|
|
324
|
+
getRowBy(rowDelta: number, options?: ICellRange.GetRangeOptions): this;
|
|
325
|
+
/**
|
|
326
|
+
* Returns the header range for the rows.
|
|
327
|
+
*
|
|
328
|
+
* @returns `ICellHeaderRange` for the rows.
|
|
329
|
+
*/
|
|
330
|
+
getRowHeaders(options?: ICellHeaderRange.GetRangeOptions): ICellHeaderRange;
|
|
331
|
+
/**
|
|
332
|
+
* Returns the column at the specified **absolute** column index, retaining the current row span.
|
|
333
|
+
*
|
|
334
|
+
* @param columnIndex The absolute column index (0-based). Must be ≥ 0. Not relative to the current range.
|
|
335
|
+
* @returns `ICellRange` with a column width of 1 and the original row height.
|
|
336
|
+
*/
|
|
337
|
+
getColumnAt(columnIndex: number, options?: ICellRange.GetRangeOptions): this;
|
|
338
|
+
/**
|
|
339
|
+
* Returns the column after the current range.
|
|
340
|
+
*
|
|
341
|
+
* @returns `ICellRange` with the top-left corner immediately after the current range.
|
|
342
|
+
*
|
|
343
|
+
* @remarks
|
|
344
|
+
* This will return a range with a column width of 1 but the original row height.
|
|
345
|
+
*/
|
|
346
|
+
getColumnAfter(options?: ICellRange.GetRangeOptions): this;
|
|
347
|
+
/**
|
|
348
|
+
* Returns the column before the current range.
|
|
349
|
+
*
|
|
350
|
+
* @returns `ICellRange` with the top-left corner immediately before the current range.
|
|
351
|
+
*
|
|
352
|
+
* @remarks
|
|
353
|
+
* This will return a range with a column width of 1 but the original row height.
|
|
354
|
+
*/
|
|
355
|
+
getColumnBefore(options?: ICellRange.GetRangeOptions): this;
|
|
356
|
+
/**
|
|
357
|
+
* Returns the column at the specified delta relative to the **start** of the current range,
|
|
358
|
+
* retaining the current row span.
|
|
359
|
+
*
|
|
360
|
+
* @param columnDelta Number of columns to move from `columnStart`. Positive moves right; negative moves left.
|
|
361
|
+
* @returns `ICellRange` with a column width of 1 and the original row height.
|
|
362
|
+
*
|
|
363
|
+
* @remarks
|
|
364
|
+
* `getColumnBy(0)` is equivalent to `getColumnAt(columnStart)` — the first column of the current range.
|
|
365
|
+
* To advance past the end of the range, use {@link getColumnAfter} instead.
|
|
366
|
+
*/
|
|
367
|
+
getColumnBy(columnDelta: number, options?: ICellRange.GetRangeOptions): this;
|
|
368
|
+
/**
|
|
369
|
+
* Returns the header range for the columns.
|
|
370
|
+
*
|
|
371
|
+
* @returns `ICellHeaderRange` for the columns.
|
|
372
|
+
*/
|
|
373
|
+
getColumnHeaders(options?: ICellHeaderRange.GetRangeOptions): ICellHeaderRange;
|
|
374
|
+
/**
|
|
375
|
+
* Returns the top-left corner of the range.
|
|
376
|
+
*
|
|
377
|
+
* @returns 1×1 `ICellRange` at the top-left corner.
|
|
378
|
+
*/
|
|
379
|
+
getTopLeft(options?: ICellRange.GetRangeOptions): this;
|
|
380
|
+
/**
|
|
381
|
+
* Returns the bottom-right corner of the range.
|
|
382
|
+
*/
|
|
383
|
+
getBottomRight(options?: ICellRange.GetRangeOptions): this;
|
|
384
|
+
/**
|
|
385
|
+
* Returns a range with the top-left corner moved by the specified row and column offsets.
|
|
386
|
+
*
|
|
387
|
+
* @param rowDelta The number of rows to move the top-left corner up (negative) or down (positive).
|
|
388
|
+
* @param colDelta The number of columns to move the top-left corner left (negative) or right (positive).
|
|
389
|
+
* @returns `ICellRange` at the repositioned range.
|
|
390
|
+
*/
|
|
391
|
+
getOffsetBy(rowDelta: number, colDelta: number, options?: ICellRange.GetRangeOptions): this;
|
|
392
|
+
/**
|
|
393
|
+
* Returns a range repositioned to the specified starting row and column indices.
|
|
394
|
+
*
|
|
395
|
+
* @param rowStart The new starting row index (inclusive).
|
|
396
|
+
* @param colStart The new starting column index (inclusive).
|
|
397
|
+
* @returns `ICellRange` at the repositioned range.
|
|
398
|
+
*/
|
|
399
|
+
getOffsetTo(rowStart: number, colStart: number, options?: ICellRange.GetRangeOptions): this;
|
|
400
|
+
/**
|
|
401
|
+
* Returns a range with the bottom-right corner moved by the specified row and column offsets.
|
|
402
|
+
*
|
|
403
|
+
* @param rowDelta The number of rows to move the bottom-right corner up (negative) or down (positive).
|
|
404
|
+
* @param colDelta The number of columns to move the bottom-right corner left (negative) or right (positive).
|
|
405
|
+
* @returns `ICellRange` with the resized range.
|
|
406
|
+
*/
|
|
407
|
+
getResizeBy(rowDelta: number, colDelta: number, options?: ICellRange.GetRangeOptions): this;
|
|
408
|
+
/**
|
|
409
|
+
* Resizes the current range to the specified ending row and column indices.
|
|
410
|
+
*
|
|
411
|
+
* @param rowEnd The new ending row index (inclusive).
|
|
412
|
+
* @param colEnd The new ending column index (inclusive).
|
|
413
|
+
* @returns `ICellRange` with the resized range.
|
|
414
|
+
*/
|
|
415
|
+
getResizeTo(rowEnd: number, colEnd: number, options?: ICellRange.GetRangeOptions): this;
|
|
416
|
+
/**
|
|
417
|
+
* Returns a range with surrounding data or the entire range if there is no data nearby.
|
|
418
|
+
*
|
|
419
|
+
* @returns `ICellRange` containing either nearby content or the entire range.
|
|
420
|
+
*/
|
|
421
|
+
getSurrounding(options?: ICellRange.GetSurroundingOptions): this;
|
|
422
|
+
/**
|
|
423
|
+
* Returns the smallest range within the range that contains any used cells.
|
|
424
|
+
*
|
|
425
|
+
* @returns `ICellRange` that contains the smallest range with used cells, or `null` if the range is empty.
|
|
426
|
+
*
|
|
427
|
+
* @remarks
|
|
428
|
+
* This method returns the range of cells that have been "used," which includes cells with data,
|
|
429
|
+
* as well as certain types of formatting or styling. It focuses on cells that have been interacted with
|
|
430
|
+
* in some form, whether through data entry or other modifications. Merged cells and overflow values
|
|
431
|
+
* may not always be included in this range.
|
|
432
|
+
*
|
|
433
|
+
* Narrow what counts as used with {@link GetRangeOptions.features}: cells with values always
|
|
434
|
+
* count, and each listed feature widens the extent beyond them — so `features: []` is the
|
|
435
|
+
* values-only fast path (no feature index is consulted) and `['merge']` is values plus merged
|
|
436
|
+
* spans. The selection is sticky: the returned range carries it.
|
|
437
|
+
*/
|
|
438
|
+
getUsedRange(options?: ICellRange.GetRangeOptions): this | null;
|
|
439
|
+
/**
|
|
440
|
+
* Returns a range that excludes any hidden rows or columns.
|
|
441
|
+
*
|
|
442
|
+
* @param options Optional parameters that can adjust how visibility is determined (e.g., by ignoring specific visibility rules).
|
|
443
|
+
* @returns An `ICellRanges` object that contains the visible portions of the range, excluding any hidden rows or columns.
|
|
444
|
+
*
|
|
445
|
+
* @remarks
|
|
446
|
+
* - If all ranges within the original selection are visible, this method returns an `ICellRanges` object with a single range and a length of `1`.
|
|
447
|
+
* - If the entire range is hidden, the method will return `null`.
|
|
448
|
+
* - The resulting ranges reflect the currently visible state of the sheet, including hidden rows, columns, or headers.
|
|
449
|
+
*/
|
|
450
|
+
getVisible(options?: ICellRange.GetVisibleOptions): ICellRanges | null;
|
|
451
|
+
/**
|
|
452
|
+
* Returns the default shift {@link IRange.Axis} for {@link insert} and {@link delete}
|
|
453
|
+
* if no axis is provided.
|
|
454
|
+
*
|
|
455
|
+
* @returns Default `IRange.Axis` that will be used to shift the range.
|
|
456
|
+
*
|
|
457
|
+
* @remarks
|
|
458
|
+
* By default the direction of the shift will be the direction that shifts the fewest cells. If
|
|
459
|
+
* the range is the same size in both directions `IRange.Axis.Row` will be used.
|
|
460
|
+
*
|
|
461
|
+
* For example, a range with 5 columns and 1 row will have a default axis of `IRange.Axis.Row`.
|
|
462
|
+
*/
|
|
463
|
+
getDefaultShiftAxis(): IRange.Axis;
|
|
464
|
+
/**
|
|
465
|
+
* Returns a default sort that would be used if no overrides where provided.
|
|
466
|
+
*
|
|
467
|
+
* @param axis The axis to sort. Default Value `IRange.Axis.Row`.
|
|
468
|
+
* @param cell A cell location that can be used to determine the sort column.
|
|
469
|
+
* @returns Default `ISort.DefaultSortCriteria` or `null` if there is not valid sort criteria.
|
|
470
|
+
*
|
|
471
|
+
* @remarks
|
|
472
|
+
* Useful for displaying options to the ui. The default behavior will look for headers and
|
|
473
|
+
* merges.
|
|
474
|
+
*/
|
|
475
|
+
getDefaultSortCriteria(axis?: IRange.Axis, cell?: ICell.Address): ISort.DefaultSortCriteria | null;
|
|
476
|
+
/**
|
|
477
|
+
* Returns the ranges immediately referenced by the formulas in this range.
|
|
478
|
+
*
|
|
479
|
+
* @remarks
|
|
480
|
+
* The range form of {@link ICell.getDirectPrecedents}: the union over every cell, one call
|
|
481
|
+
* rather than a fan-out — the calculation graph is indexed by range, so the cell form is this
|
|
482
|
+
* one over a 1×1.
|
|
483
|
+
*
|
|
484
|
+
* - Returns `null` when there are none.
|
|
485
|
+
* - **Not filtered against the range itself.** A block containing both a formula and its input
|
|
486
|
+
* lists that input; "what does this block read" and "what does it read from outside" are
|
|
487
|
+
* different questions, and the second is {@link getDifferences} away.
|
|
488
|
+
*/
|
|
489
|
+
getDirectPrecedents(): ICellRanges | null;
|
|
490
|
+
/**
|
|
491
|
+
* Returns the cells that directly reference any cell in this range.
|
|
492
|
+
*
|
|
493
|
+
* @remarks
|
|
494
|
+
* The range form of {@link ICell.getDirectDependents} — the immediate consumers of anything
|
|
495
|
+
* this range produces. Returns `null` when there are none.
|
|
496
|
+
*/
|
|
497
|
+
getDirectDependents(): ICellRanges | null;
|
|
498
|
+
/**
|
|
499
|
+
* Returns all ranges contributing to this range's values, through the full calculation chain.
|
|
500
|
+
*
|
|
501
|
+
* @remarks
|
|
502
|
+
* The range form of {@link ICell.getPrecedents}: a recursive walk upstream to the root data
|
|
503
|
+
* sources. Returns `null` when there are none.
|
|
504
|
+
*
|
|
505
|
+
* **Reach for this before editing.** The precedents of a block are what its values depend on,
|
|
506
|
+
* so they are what a change to it can be wrong about.
|
|
507
|
+
*/
|
|
508
|
+
getPrecedents(): ICellRanges | null;
|
|
509
|
+
/**
|
|
510
|
+
* Returns all cells eventually affected by this range, through the full calculation chain.
|
|
511
|
+
*
|
|
512
|
+
* @remarks
|
|
513
|
+
* The range form of {@link ICell.getDependents}: a recursive walk downstream giving the total
|
|
514
|
+
* blast radius of a write here. Returns `null` when there are none.
|
|
515
|
+
*/
|
|
516
|
+
getDependents(): ICellRanges | null;
|
|
517
|
+
/**
|
|
518
|
+
* Returns the statistics for the range.
|
|
519
|
+
*
|
|
520
|
+
* @param options Iterator options the stats are created with — most usefully
|
|
521
|
+
* `{ onError: 'ignore' }` so aggregate reads degrade instead of faulting on error values.
|
|
522
|
+
* The same override is available per-call on {@link IRangeStats.getAggregates}.
|
|
523
|
+
* `{ ignoreHidden: true }` measures only what the sheet is showing.
|
|
524
|
+
*
|
|
525
|
+
* @remarks
|
|
526
|
+
* **`getStats` answers "what are the values like"; {@link getCounts} answers "how much of
|
|
527
|
+
* each feature is here".** Value analysis (visits values) vs feature occupancy (reads the
|
|
528
|
+
* indexes) — they do not overlap.
|
|
529
|
+
*/
|
|
530
|
+
getStats(options?: ICellRange.GetStatsOptions): IRangeStats;
|
|
531
|
+
/**
|
|
532
|
+
* Returns a count for of values.
|
|
533
|
+
*
|
|
534
|
+
* @deprecated Use `getStats`.
|
|
535
|
+
*/
|
|
536
|
+
getCount(): number;
|
|
537
|
+
/**
|
|
538
|
+
* Returns per-feature cell counts for the range.
|
|
539
|
+
*
|
|
540
|
+
* @param features The features to count. Defaults to **all** public features — counting is
|
|
541
|
+
* the discovery call.
|
|
542
|
+
*
|
|
543
|
+
* @remarks
|
|
544
|
+
* **`getCounts` answers "how much of each feature is here"; {@link getStats} answers "what
|
|
545
|
+
* are the values like".** Feature occupancy vs value analysis — they do not overlap.
|
|
546
|
+
*
|
|
547
|
+
* - Every public {@link ICellRange.Feature} appears as a key; features not requested, or not
|
|
548
|
+
* present, are an explicit `0` — the shape is stable and self-describing, never `null`.
|
|
549
|
+
* - Each feature is counted **independently**. `getCounts([Fill, Border])` is two numbers,
|
|
550
|
+
* not the count of their refined intersection — the refined count *is* `getRegions`.
|
|
551
|
+
* - Counts are cells, never regions: a region count would either disagree with the partition
|
|
552
|
+
* `getRegions` returns or cost as much as computing it.
|
|
553
|
+
*/
|
|
554
|
+
getCounts(features?: ICellRange.Feature | readonly ICellRange.Feature[]): ICellRange.Counts;
|
|
555
|
+
/**
|
|
556
|
+
* Returns the uniform regions for the requested features within the range.
|
|
557
|
+
*
|
|
558
|
+
* @param features The features to partition by. Defaults to `['Contentful']` — **never all**;
|
|
559
|
+
* combining features refines the partition (a cross-product), so all-features is the
|
|
560
|
+
* maximum-fragmentation call. Query one feature at a time; combine only when the relationship
|
|
561
|
+
* between features is the question.
|
|
562
|
+
* @param options {@link ICellRange.GetRegionsOptions}
|
|
563
|
+
*
|
|
564
|
+
* @remarks
|
|
565
|
+
* **A region answers *where*, not *what*.** It carries its address, its shape and the features
|
|
566
|
+
* it was partitioned by, and it bridges to the objects that answer reads:
|
|
567
|
+
* {@link ICellRegion.getCell} (the anchor — whose read IS the region's payload, since a region
|
|
568
|
+
* is uniform by construction) and {@link ICellRegion.getRange} (the block). Reading is a
|
|
569
|
+
* different verb on a different object, and the hop is the point — it is what keeps a
|
|
570
|
+
* discovery result from answering a question it was never asked.
|
|
571
|
+
*
|
|
572
|
+
* - **`getRegions` combines features into one partition; {@link getCounts} counts each
|
|
573
|
+
* feature separately.** The refined count is this method; the cheap discovery is that one.
|
|
574
|
+
* - **A count is presence; a partition is payload identity.** `getCounts(Fill)` counts the
|
|
575
|
+
* cells that have a fill and `getRegions(Fill)` splits them by color; `getCounts(Formula)`
|
|
576
|
+
* counts formula cells and `getRegions(Formula)` splits them by authored R1C1 — so a filled
|
|
577
|
+
* block is ONE region and the value pasted over the middle of it is a hole. The rule holds
|
|
578
|
+
* for every feature.
|
|
579
|
+
* - Regions are maximal **rectangles**, never runs: a block filled down *and* across is one
|
|
580
|
+
* region, not one per column.
|
|
581
|
+
* - Regions carrying none of the requested features are elided — the yielded regions are the
|
|
582
|
+
* feature-bearing side of the partition.
|
|
583
|
+
* - **Nothing is computed until the result is iterated or counted.** The returned
|
|
584
|
+
* {@link ICellRegions} is a lazily backed handle, so building the query costs nothing.
|
|
585
|
+
* - **`Contentful` regions are maximal rectangles.** Every other feature's stored blocks stand
|
|
586
|
+
* for a payload two adjacent blocks can disagree about — a fill's color, a formula's
|
|
587
|
+
* expression — so distinct blocks stay distinct or the region stops being uniform. Occupancy
|
|
588
|
+
* is a boolean: any two occupied rectangles agree, so its blocks carry no information and are
|
|
589
|
+
* coalesced. A solid `A1:D4` is one region, not the four column strips it is stored as.
|
|
590
|
+
* Refinement is unaffected — `[Contentful, Fill]` still partitions by fill and still excludes
|
|
591
|
+
* unoccupied cells.
|
|
592
|
+
* - Every {@link Feature} partitions — there is no throwing member left. `DateFormat` splits by
|
|
593
|
+
* format string, the same way `Fill` splits by color; `Error` splits by error value, backed
|
|
594
|
+
* by the reconciled error index. Scalar kinds (`String`/`Number`/`Boolean`) are not in this
|
|
595
|
+
* vocabulary at all — see {@link Feature}'s own remarks for where they went.
|
|
596
|
+
*/
|
|
597
|
+
getRegions(features?: ICellRange.Feature | readonly ICellRange.Feature[], options?: ICellRange.GetRegionsOptions): ICellRegions;
|
|
598
|
+
/**
|
|
599
|
+
* Returns a 2D array of {@link Scalar | values} in the shape of the range.
|
|
600
|
+
*
|
|
601
|
+
* @param options -
|
|
602
|
+
* - `asJSDate` Return dates as Javascript dates instead of SerialDates but is slower due to need to create dates.
|
|
603
|
+
* - `maxSize` Limit the size of the results. defaultValue `10000`.
|
|
604
|
+
*
|
|
605
|
+
* @returns A 2D array of values.
|
|
606
|
+
*
|
|
607
|
+
* @remarks
|
|
608
|
+
* * Empty values will be `null`.
|
|
609
|
+
*/
|
|
610
|
+
getValues(options?: ICellRange.GetValuesOptions): Scalar[][];
|
|
611
|
+
/**
|
|
612
|
+
* Returns a 2D array of {@link InteropScalar | values} in the shape of the range.
|
|
613
|
+
*
|
|
614
|
+
* @see {@link ICellRange.getValues} for options and remarks.
|
|
615
|
+
*/
|
|
616
|
+
getInteropValues(options?: ICellRange.GetValuesOptions): InteropScalar[][];
|
|
617
|
+
/**
|
|
618
|
+
* Set the value(s) of one or more cells within a range.
|
|
619
|
+
*
|
|
620
|
+
* @param values The value to be set or a callback that will generate a value.
|
|
621
|
+
* @returns The current `ICellRange`.
|
|
622
|
+
*
|
|
623
|
+
* @remarks
|
|
624
|
+
* - `null` values will clear the corresponding cells.
|
|
625
|
+
* - `undefined` values will be ignored, leaving the existing cell values unchanged.
|
|
626
|
+
* - If an array is passed the values will be in row-major order and will repeat if the range is larger than the array
|
|
627
|
+
* - If a single value is passed in it will repeat the entire range.
|
|
628
|
+
*/
|
|
629
|
+
setValues(values: ICellRange.ValuesUpdate, options?: ICellRange.SetValuesOptions): this;
|
|
630
|
+
/**
|
|
631
|
+
* Provides a convenient method for setting values with a range of calls.
|
|
632
|
+
*
|
|
633
|
+
* @returns The current `ICellRange`.
|
|
634
|
+
*
|
|
635
|
+
* @remarks
|
|
636
|
+
* - **Performance** This is will always be significantly slow than setting attributes
|
|
637
|
+
* use the related range APIs.
|
|
638
|
+
* - For setting non contiguous values see {@link ICellRange.createSparseBuilder}
|
|
639
|
+
* @see
|
|
640
|
+
* * {@link updateStyle}
|
|
641
|
+
* * {@link setHyperlink}
|
|
642
|
+
*/
|
|
643
|
+
updateCells(update: ICellRange.Update, options?: ICellRange.UpdateCellsOptions): this;
|
|
644
|
+
/**
|
|
645
|
+
* Set a single value to the entire range.
|
|
646
|
+
*
|
|
647
|
+
* @see
|
|
648
|
+
* {@link ICellRange.setValues}
|
|
649
|
+
*/
|
|
650
|
+
setValue(value: ICellRange.ValuesUpdateOrCallback, options?: ICellRange.SetValuesOptions): this;
|
|
651
|
+
/**
|
|
652
|
+
* Set the formula for a range.
|
|
653
|
+
*
|
|
654
|
+
* @param value The formula to be set or a callback that will generate a formula.
|
|
655
|
+
* @returns The current `ICellRange`.
|
|
656
|
+
*
|
|
657
|
+
* @remarks
|
|
658
|
+
* Identical behavior to setValue. Exists for ergonomics
|
|
659
|
+
* @see
|
|
660
|
+
* {@link ICellRange.setValue}
|
|
661
|
+
*/
|
|
662
|
+
setFormula(value: ICellRange.ValuesUpdateOrCallback, options?: ICellRange.SetValuesOptions): this;
|
|
663
|
+
/**
|
|
664
|
+
* Re-evaluates and formulas within the range.
|
|
665
|
+
*
|
|
666
|
+
* @param full If `true` then all formulas will be recalculated.
|
|
667
|
+
*/
|
|
668
|
+
calculate(full?: boolean): this;
|
|
669
|
+
/**
|
|
670
|
+
* Fill the range to a destination using an array of {@link IAutoFill.Filler}.
|
|
671
|
+
*
|
|
672
|
+
* @param destination The range to autoFill including the current range.
|
|
673
|
+
* @throws `Error` If the destination range does not share 3 edges with the range.
|
|
674
|
+
* @returns `ICellRange` for the destination.
|
|
675
|
+
*
|
|
676
|
+
* @remarks
|
|
677
|
+
* * The destination must share 3 edges with the range and move exactly one edge.
|
|
678
|
+
* * An edge moved outward extends the fill; an edge moved inward shrinks it — the vacated
|
|
679
|
+
* cells are cleared (mirrors dragging Excel's fill handle back over the source).
|
|
680
|
+
* * A destination equal to the range is a no-op.
|
|
681
|
+
* * If the range contains merges then the fill amount must be a multiple of the merge unit on the fill
|
|
682
|
+
* axis, otherwise this throws — pass {@link AutoFillOptions.snap} to fill the nearest amount that
|
|
683
|
+
* qualifies instead.
|
|
684
|
+
* * With {@link AutoFillOptions.preview} nothing is committed and the returned range projects the
|
|
685
|
+
* result instead: its cells are computed, not read from the sheet, so
|
|
686
|
+
* {@link ICell.getValue} / {@link ICell.getText} report what *would* be filled. A projected cell
|
|
687
|
+
* also carries the merge the fill would create, so {@link ICell.getRange},
|
|
688
|
+
* {@link ICell.getSpans} and {@link ICell.getExtrusions} describe the block rather than a single
|
|
689
|
+
* cell — and asking for any coord inside that block returns the block's anchor cell, where the
|
|
690
|
+
* value lives. Cells the fill does not touch (the range itself) read straight from the sheet.
|
|
691
|
+
*
|
|
692
|
+
* @example
|
|
693
|
+
* ```typescript
|
|
694
|
+
* // What would land in the last cell, and how big will that cell be?
|
|
695
|
+
* const preview = sheet.getRange('A1:B4').autoFill('A1:B8', { preview: true });
|
|
696
|
+
* const last = preview.getCell({ rowIndex: 7, colIndex: 1 });
|
|
697
|
+
* last.getText(); // the value the fill would write
|
|
698
|
+
* last.getExtrusions(); // the merged block it would occupy (null if not merged)
|
|
699
|
+
* ```
|
|
700
|
+
*/
|
|
701
|
+
autoFill(destination: ICellRange.Address, options?: ICellRange.AutoFillOptions): this;
|
|
702
|
+
/**
|
|
703
|
+
* Adjusts the column widths and rows heights to fit the content.
|
|
704
|
+
*
|
|
705
|
+
* @returns The current `ICellRange`.
|
|
706
|
+
*/
|
|
707
|
+
autoFit(options?: ICellRange.AutoFitOptions): this;
|
|
708
|
+
/**
|
|
709
|
+
* Clear the range.
|
|
710
|
+
*
|
|
711
|
+
* @param applyTo The type of content to clear. Default `ICell.Content.Values`
|
|
712
|
+
* @returns The current `ICellRange`.
|
|
713
|
+
*/
|
|
714
|
+
clear(applyTo?: ICell.Content, options?: ITransaction.OperationOptions): this;
|
|
715
|
+
/**
|
|
716
|
+
* Set the hyperlink for a range of values.
|
|
717
|
+
*
|
|
718
|
+
* @param hyperlink A hyperlink update
|
|
719
|
+
* @returns The current `ICellRange`.
|
|
720
|
+
*
|
|
721
|
+
* @remarks
|
|
722
|
+
* To clear hyperlinks either set to `null` or call `clear(ICell.Content.Hyperlinks)`.
|
|
723
|
+
*/
|
|
724
|
+
setHyperlink(hyperlink: IHyperlink.Update, options?: ITransaction.OperationOptions): this;
|
|
725
|
+
/**
|
|
726
|
+
* Update the comments for the range.
|
|
727
|
+
*
|
|
728
|
+
* @param comments Comment properties
|
|
729
|
+
* @returns The current `ICellRange`.
|
|
730
|
+
*
|
|
731
|
+
* @remarks
|
|
732
|
+
* **NOT FINISHED**
|
|
733
|
+
*/
|
|
734
|
+
setComments(comments: IComment.Properties, options?: ITransaction.OperationOptions): this;
|
|
735
|
+
/**
|
|
736
|
+
* Merges all cells within the selection ranges.
|
|
737
|
+
*
|
|
738
|
+
* @returns The current `ICellRange`.
|
|
739
|
+
*
|
|
740
|
+
* @remarks
|
|
741
|
+
* If the ranges overlap then this operation will throw an exception
|
|
742
|
+
*/
|
|
743
|
+
merge(options?: IRange.AxisSelection | ICellRange.MergeOptions): this;
|
|
744
|
+
/**
|
|
745
|
+
* Unmerge all cells within the selection ranges.
|
|
746
|
+
*
|
|
747
|
+
* @returns The current `ICellRange`.
|
|
748
|
+
*/
|
|
749
|
+
unmerge(options?: ITransaction.OperationOptions): this;
|
|
750
|
+
/**
|
|
751
|
+
* Returns an iterator of ICells that match the results.
|
|
752
|
+
*
|
|
753
|
+
* @param options The text to search for or {@link FindOptions}
|
|
754
|
+
*/
|
|
755
|
+
find(options: string | ICellRange.FindOptions): Iterator<ICell>;
|
|
756
|
+
/**
|
|
757
|
+
* Sort the given range.
|
|
758
|
+
*
|
|
759
|
+
* @param options If a boolean then this is sort ascending or descending.
|
|
760
|
+
* @returns The current `ICellRange`.
|
|
761
|
+
*
|
|
762
|
+
* @remarks
|
|
763
|
+
* The sorting of various data types has a default priority of of boolean > string > number and dates are treated as numbers.
|
|
764
|
+
* If a boolean is used then this is a 'descending' flag. `true` then the sort is reversed (descending).
|
|
765
|
+
*/
|
|
766
|
+
sort(options?: boolean | ISort.Options[] | ISort.RangeOptions & ITransaction.OperationOptions): this;
|
|
767
|
+
/**
|
|
768
|
+
* Sort the given range by a single column or row.
|
|
769
|
+
*/
|
|
770
|
+
sortAt(index: number, options?: boolean | (ISort.Criteria & ITransaction.OperationOptions)): this;
|
|
771
|
+
/**
|
|
772
|
+
* Parses the text in the selected column into multiple columns based on a delimiter.
|
|
773
|
+
*
|
|
774
|
+
* @param options - Delimiter or Configuration for the split operation, including delimiter and handling of existing data.
|
|
775
|
+
* @returns `ICellRange` containing the the newly split data
|
|
776
|
+
* @throws Error if the destination cells are not empty and `replaceExisting` is false.
|
|
777
|
+
*
|
|
778
|
+
* @remarks
|
|
779
|
+
* This method mimics the "Delimited" mode of Excel's Text-to-Columns feature.
|
|
780
|
+
* By default, this operation is non-destructive (it will not overwrite existing data unless `replaceExisting` is true).
|
|
781
|
+
*/
|
|
782
|
+
textToColumns(options?: ICellRange.TextToColumnsOptions | string): this;
|
|
783
|
+
/**
|
|
784
|
+
* Removes duplicate rows based on specified columns.
|
|
785
|
+
*
|
|
786
|
+
* @param options - Configuration for the duplicate removal operation, including the columns to consider.
|
|
787
|
+
* @returns `ICellRange` containing the rows that remain. This is the original range resized by the
|
|
788
|
+
* number of rows that were removed (the origin and the columns are unchanged).
|
|
789
|
+
* @throws Error if the range has no data or if a `columns` entry is not within the range.
|
|
790
|
+
*
|
|
791
|
+
* @remarks
|
|
792
|
+
* This method mimics the "Remove Duplicates" feature in Excel.
|
|
793
|
+
*
|
|
794
|
+
* The duplicate rows are deleted rather than cleared, so the rows that remain keep their
|
|
795
|
+
* formatting, hyperlinks and comments. Only the range is compacted - the same number of rows is
|
|
796
|
+
* given back at the bottom of the range so that the cells below it stay where they are.
|
|
797
|
+
*
|
|
798
|
+
* A row with no values is still a row. The first blank row is unique and any that follow are
|
|
799
|
+
* duplicates of it. Blank rows after the last row with a value are left alone.
|
|
800
|
+
*/
|
|
801
|
+
removeDuplicates(options?: ICellRange.RemoveDuplicatesOptions): this;
|
|
802
|
+
/**
|
|
803
|
+
* Hide the rows that do not meet the condition.
|
|
804
|
+
*
|
|
805
|
+
* @remarks
|
|
806
|
+
* Apply filter to multiple spans in either axis.
|
|
807
|
+
*
|
|
808
|
+
* Example – hide rows where column C is >= 3:
|
|
809
|
+
*
|
|
810
|
+
* ``` ts
|
|
811
|
+
* sheet.getRange('A2:E100').filter({
|
|
812
|
+
* axis: IRange.Axis.Row, // default but could be column
|
|
813
|
+
* conditions: [
|
|
814
|
+
* {
|
|
815
|
+
* operator: ICondition.BuiltInOperatorNames.GreaterThanEqualTo,
|
|
816
|
+
* param: 3,
|
|
817
|
+
* // 0-based index of column C within the range (relative to the range, not the sheet)
|
|
818
|
+
* index: 2,
|
|
819
|
+
* },
|
|
820
|
+
* ],
|
|
821
|
+
* });
|
|
822
|
+
*
|
|
823
|
+
* @see
|
|
824
|
+
* {@link IFilter.IFilterable}
|
|
825
|
+
*/
|
|
826
|
+
filter(condition: ICondition.Input | ICondition.RangeOptions, options?: ITransaction.OperationOptions): Promise<this>;
|
|
827
|
+
/**
|
|
828
|
+
* Insert a new, empty range within the sheet and shifts existing cells to accommodate it.
|
|
829
|
+
*
|
|
830
|
+
* @param options The axis or The direction in which to shift existing cells.
|
|
831
|
+
* Defaults to the axis where the range's dimension is smaller (e.g., shifts down if the range is wider than it is tall).
|
|
832
|
+
* See {@link ICellRange.getDefaultShiftAxis} for details on the default behavior.
|
|
833
|
+
* See {@link ITransaction.OperationOptions}
|
|
834
|
+
* @throws `Error` If the insertion would cause data to exceed the maximum sheet size.
|
|
835
|
+
* @returns The current `ICellRange`.
|
|
836
|
+
*
|
|
837
|
+
* @remarks
|
|
838
|
+
* By default the values will direction in whichever direction the selection shape is smaller.
|
|
839
|
+
* For example a selection with a 5 column by 1 row will direction Down (rows).
|
|
840
|
+
* Note - This will error if direction data will fall outsize of the max sheet size.
|
|
841
|
+
*/
|
|
842
|
+
insert(options?: IRange.Axis | ICellRange.InsertOptions): this;
|
|
843
|
+
/**
|
|
844
|
+
* Delete the cells within the range and shifts the remaining cells to fill the gap.
|
|
845
|
+
*
|
|
846
|
+
* @param options The axis or The direction in which to shift existing cells.
|
|
847
|
+
* Defaults to the axis where the range's dimension is smaller (e.g., shifts down if the range is wider than it is tall).
|
|
848
|
+
* See {@link ICellRange.getDefaultShiftAxis} for details on the default behavior.
|
|
849
|
+
* See {@link ITransaction.OperationOptions}
|
|
850
|
+
* @returns The current `ICellRange`.
|
|
851
|
+
*
|
|
852
|
+
* @remarks
|
|
853
|
+
* This is different from clearing cells, which removes their content but doesn't affect the
|
|
854
|
+
* overall sheet structure. Deleting cells results in a shift of the remaining data.
|
|
855
|
+
*/
|
|
856
|
+
delete(options?: IRange.Axis | ICellRange.DeleteOptions): this;
|
|
857
|
+
/**
|
|
858
|
+
* Add an `ITable` at the range.
|
|
859
|
+
*
|
|
860
|
+
* @param options If a boolean then this indicates if headers are present.
|
|
861
|
+
*
|
|
862
|
+
* @remarks
|
|
863
|
+
* This behaves similarly to {@link ISheet.getTables.add} but uses the current range
|
|
864
|
+
*/
|
|
865
|
+
addTable(options?: ITableCollection.AddOptions | boolean): ITable;
|
|
866
|
+
/**
|
|
867
|
+
* Creates a 'light' table used for stateful filtering and sorting with-in a sheet.
|
|
868
|
+
*
|
|
869
|
+
* @see {@link ITable}
|
|
870
|
+
*/
|
|
871
|
+
addAutoTable(options?: ICellRange.AddAutoTableOptions): ITable;
|
|
872
|
+
/**
|
|
873
|
+
* Returns a snapshot of the current range's data and formatting suitable for copying or archiving.
|
|
874
|
+
*
|
|
875
|
+
* @param options Default options when apply the snapshot (Usually copy).
|
|
876
|
+
* @returns A `ISnapshot` object representing the range.
|
|
877
|
+
*
|
|
878
|
+
* @remarks
|
|
879
|
+
* - **Option Merging:** If options are provided on getSnapshot and the copy operation,
|
|
880
|
+
* the two will be merged with the copy options taking precedence.
|
|
881
|
+
* - `getSnapshot` can be called multiple times allowing for multiple snapshots.
|
|
882
|
+
*/
|
|
883
|
+
getSnapshot(options?: ICellRange.CopyOptions): ICellRange.ISnapshot;
|
|
884
|
+
/**
|
|
885
|
+
* Inserts the contents of the `source` into the sheet, shifting existing cells to make space.
|
|
886
|
+
*
|
|
887
|
+
* @param source The source of the data and formatting to insert.
|
|
888
|
+
* This can be either a range address, another range object, or an `ISnapshot`
|
|
889
|
+
* created using the `getSnapshot` method.
|
|
890
|
+
* @returns A promise that resolve to an `ICellRange` or 'null' when the copy has completed.
|
|
891
|
+
*
|
|
892
|
+
* @remarks
|
|
893
|
+
* * Behaves similarly to {@link insert} and {@link copyFrom}, but instead of inserting empty space at the range
|
|
894
|
+
* it also inserts the content of the `source`.
|
|
895
|
+
* * Will return `null` if nothing was inserted or the source doesn't have a range.
|
|
896
|
+
*/
|
|
897
|
+
insertFrom(source: ICellRange.Address | ICellRange.ISnapshot, options?: ICellRange.InsertFromOptions): Promise<this | null>;
|
|
898
|
+
/**
|
|
899
|
+
* Copies (or cuts) data and formatting from a specified source to the current range.
|
|
900
|
+
*
|
|
901
|
+
* @param source The source of the data and formatting to be copied or cut.
|
|
902
|
+
* This can be either a range address, another range object, or an `ISnapshot`
|
|
903
|
+
* created using the `getSnapshot` method.
|
|
904
|
+
* @returns A promise that resolve to an `ICellRange` or 'null' when the copy has completed.
|
|
905
|
+
*
|
|
906
|
+
* @remarks
|
|
907
|
+
* * Will return `null` if nothing was inserted or the source doesn't have a range.
|
|
908
|
+
* @see
|
|
909
|
+
* {@link ICellRange.getSnapshot}
|
|
910
|
+
*/
|
|
911
|
+
copyFrom(source: ICellRange.Address | ICellRange.ISnapshot, options?: ICellRange.CopyOptions): Promise<this | null>;
|
|
912
|
+
/**
|
|
913
|
+
* Update the protection for the range.
|
|
914
|
+
*
|
|
915
|
+
* @returns The current `ICellRange`.
|
|
916
|
+
*
|
|
917
|
+
* @remarks
|
|
918
|
+
* Setting to `null` will remove protections.
|
|
919
|
+
*/
|
|
920
|
+
/**
|
|
921
|
+
* Perform a set of operations as a batch.
|
|
922
|
+
*
|
|
923
|
+
* @param callback Function to perform the operations.
|
|
924
|
+
* @param options Description of the operation or additional options. This will be used for tracking undo/redo and history. @defaultValue 'Range Update'
|
|
925
|
+
* @template R - The callback return type.
|
|
926
|
+
* @returns The result of the callback.
|
|
927
|
+
*/
|
|
928
|
+
doBatch<R>(callback: (commit: ITransaction.ICommit) => Promise<R> | R, options?: string | ITransaction.OperationOptions): Promise<R> | R;
|
|
929
|
+
/**
|
|
930
|
+
* Creates a `SparseBuilder` for efficiently updating sparsely populated cells in a streaming low memory way.
|
|
931
|
+
*
|
|
932
|
+
* For contiguous or mostly contiguous updates, the {@link ICellRange.updateCells} method is simpler
|
|
933
|
+
* and will use {@link ICellRange.SparseBuilder} internally.
|
|
934
|
+
*
|
|
935
|
+
* @remarks
|
|
936
|
+
* - **Ordering:** By default updates must be added in either row-major or column-major order, as specified
|
|
937
|
+
* by the `axis` parameter, with major/minor coordinates increasing monotonically. Unless
|
|
938
|
+
* `allowUnorderedWrites` is set to `true out of order updates will result in an error.
|
|
939
|
+
|
|
940
|
+
* - **Performance:** Setting `axis` to `IRange.Axis.Column` is generally faster as it aligns with the internal data representation.
|
|
941
|
+
* - **Performance:** Setting `allowUnorderedWrites` adds a nominal performance overhead for all updates and will do a full apply when an
|
|
942
|
+
* out of order update is detected.
|
|
943
|
+
* The default `IRange.Axis.Row` is provided for compatibility with common spreadsheet APIs.
|
|
944
|
+
* - **Validation:** Data validation (e.g., for protected cells or boundaries) is performed when the `apply` method is called.
|
|
945
|
+
* - **Transactions:**
|
|
946
|
+
* - Adding values to the `SparseBuilder` only builds a temporary representation of the updates.
|
|
947
|
+
* No actual changes are made to the sheet until `apply` is called.
|
|
948
|
+
* - This allows for safe batching of updates within a single transaction using `doBatch`.
|
|
949
|
+
|
|
950
|
+
* @example
|
|
951
|
+
```typescript createSparseBuilder
|
|
952
|
+
const builder = range.createSparseBuilder()
|
|
953
|
+
.push('A1', 2)
|
|
954
|
+
.push('A2', 567)
|
|
955
|
+
.push('A3', 3)
|
|
956
|
+
.push('A4', 123)
|
|
957
|
+
.push('A5', 1)
|
|
958
|
+
.apply();
|
|
959
|
+
});
|
|
960
|
+
```
|
|
961
|
+
*/
|
|
962
|
+
createSparseBuilder(options?: ICellRange.SparseBuilderOptions): ICellRange.SparseBuilder;
|
|
963
|
+
/**
|
|
964
|
+
* Selects the current range.
|
|
965
|
+
*
|
|
966
|
+
* @returns An async `ICellRange`.
|
|
967
|
+
*/
|
|
968
|
+
select(options?: ICellRange.SelectOptions): Promise<this>;
|
|
969
|
+
/**
|
|
970
|
+
* Add a listener to the range.
|
|
971
|
+
*
|
|
972
|
+
* @returns A callback to remove. {@link IListener.Remove}
|
|
973
|
+
*
|
|
974
|
+
* @remarks
|
|
975
|
+
* If the range becomes invalid through a delete this will auto remove.
|
|
976
|
+
*/
|
|
977
|
+
addListener(listener: ICellRange.Listener, options?: ICellRange.ListenerOptions): IListener.Remove;
|
|
978
|
+
/**
|
|
979
|
+
* Evaluates `formula` across this range and calls `callback` with the results — then again every
|
|
980
|
+
* time anything the formula reads changes.
|
|
981
|
+
*
|
|
982
|
+
* @param formula An expression, compiled at this range's top-left, or an already-compiled formula
|
|
983
|
+
* anchored there (see the anchor note below).
|
|
984
|
+
* @param callback Receives one value per cell of this range, read with local coordinates
|
|
985
|
+
* (`getValueAt(0, 0)` is this range's top-left).
|
|
986
|
+
*
|
|
987
|
+
* @returns A callback to remove the watch. {@link IListener.Remove}
|
|
988
|
+
*
|
|
989
|
+
* @remarks
|
|
990
|
+
* The difference from {@link createFormula} is the lifetime: that one compiles and
|
|
991
|
+
* evaluates once and registers nothing, so its answer silently ages. This one keeps answering.
|
|
992
|
+
*
|
|
993
|
+
* Block-shaped, always. A rule's operand is a value *per cell*, not one value for the range: an
|
|
994
|
+
* absolute reference (`$A$1`) yields the same value in every cell and a relative one (`A1`)
|
|
995
|
+
* yields each cell's own — the same code path, which is why per-cell semantics cost nothing here.
|
|
996
|
+
*
|
|
997
|
+
* The callback fires on the first evaluation as well as on every change, so a caller never has to
|
|
998
|
+
* evaluate separately and then watch — a sequence with a window in it where a change is lost. An
|
|
999
|
+
* evaluation superseded by a newer one is dropped rather than delivered late, so the callback
|
|
1000
|
+
* never goes backwards in time.
|
|
1001
|
+
*
|
|
1002
|
+
* **The anchor must be this range's top-left**, and a compiled formula anchored elsewhere throws
|
|
1003
|
+
* rather than being quietly re-sited. A formula means different things read from different cells
|
|
1004
|
+
* ({@link ICalculation.IFormula.shift}), so silently moving one would answer a question the
|
|
1005
|
+
* caller did not ask. To watch a formula belonging to a multi-area rule, fill it first — or use
|
|
1006
|
+
* {@link ICellRanges.addWatch}, which does that for every area.
|
|
1007
|
+
*
|
|
1008
|
+
* Known limits, both from watching the formula's *written* references: a range discovered at
|
|
1009
|
+
* evaluation time (`INDIRECT`, `OFFSET`) is not watched, and a volatile formula (`NOW`, `RAND`)
|
|
1010
|
+
* has nothing to watch at all. Neither re-fires.
|
|
1011
|
+
*/
|
|
1012
|
+
addWatch(formula: ICalculation.IFormula | string, callback: ICellRange.WatchCallback): IListener.Remove;
|
|
1013
|
+
/**
|
|
1014
|
+
* Returns an iterator that allows you to iterate over the individual values within the range.
|
|
1015
|
+
*
|
|
1016
|
+
* @remarks
|
|
1017
|
+
* For more advanced iteration, use {@link ICellRange.entries} or {@link ICellRange.forEach}.
|
|
1018
|
+
*/
|
|
1019
|
+
[Symbol.iterator](): IterableIterator<Scalar>;
|
|
1020
|
+
/**
|
|
1021
|
+
* Returns an iterator that allows you to iterate over the individual entries within the range,
|
|
1022
|
+
* yielding pairs of `IteratorContext` and a `Value`.
|
|
1023
|
+
*
|
|
1024
|
+
* @returns An iterator that yields `ICellRange.Entry` tuples for each value within the range.
|
|
1025
|
+
*/
|
|
1026
|
+
entries(options?: ICellRange.IteratorOptions): IterableIterator<ICellRange.Entry>;
|
|
1027
|
+
/**
|
|
1028
|
+
* Returns the values within the range, yielding each value.
|
|
1029
|
+
*
|
|
1030
|
+
* @returns An iterator that yields `Scalar` each value within the range.
|
|
1031
|
+
*/
|
|
1032
|
+
values(options?: ICellRange.IteratorOptions): IterableIterator<Scalar>;
|
|
1033
|
+
/**
|
|
1034
|
+
* Iterates over the cells within the range, applying the provided callback function to each cell.
|
|
1035
|
+
*
|
|
1036
|
+
* This method is a more scalable alternative to `getValues` or `getCells` for large or sparse ranges,
|
|
1037
|
+
* as it:
|
|
1038
|
+
* 1. Skips empty values by default.
|
|
1039
|
+
* 2. Avoids creating large arrays.
|
|
1040
|
+
* 3. Allows for early termination.
|
|
1041
|
+
|
|
1042
|
+
* @param callback A function that will be called for each non-empty cell in the range. The callback receives:
|
|
1043
|
+
* - `value`: The `Scalar` at the current cell.
|
|
1044
|
+
* - `context`: A `IteratorContext` object providing additional information and utilities for the cell.
|
|
1045
|
+
* - The callback can return `{ break: T }` to stop the iteration early.
|
|
1046
|
+
* @template R - The callback return type.
|
|
1047
|
+
* @returns The value returned by the callback function if it explicitly returned to stop the iteration early; otherwise, `void`.
|
|
1048
|
+
*/
|
|
1049
|
+
forEach<B>(callback: ICellRange.ForEachCallback<B>, options?: ICellRange.IteratorOptions): B | void;
|
|
1050
|
+
/**
|
|
1051
|
+
* Returns `true` if there is any content within the range.
|
|
1052
|
+
*
|
|
1053
|
+
* @param features Restrict the check to specific features. Defaults to any content.
|
|
1054
|
+
* @returns 'boolean' indicating if there is content.
|
|
1055
|
+
*
|
|
1056
|
+
* @remarks
|
|
1057
|
+
* Some uses cases for this are checking for data to delete a sheet, checking for multiple values
|
|
1058
|
+
* for merges.
|
|
1059
|
+
*/
|
|
1060
|
+
isContentful(features?: ICellRange.Feature | readonly ICellRange.Feature[]): boolean;
|
|
1061
|
+
/**
|
|
1062
|
+
* Returns `true` if the range represents the entire rows.
|
|
1063
|
+
*/
|
|
1064
|
+
isEntireRows(): boolean;
|
|
1065
|
+
/**
|
|
1066
|
+
* Returns `true` if the range represents the entire columns.
|
|
1067
|
+
*/
|
|
1068
|
+
isEntireColumns(): boolean;
|
|
1069
|
+
/**
|
|
1070
|
+
* Returns `true` if the range represents both entire rows and entire columns.
|
|
1071
|
+
*/
|
|
1072
|
+
isEntireRange(): boolean;
|
|
1073
|
+
/**
|
|
1074
|
+
* Returns `true` if the range is a single cell.
|
|
1075
|
+
*/
|
|
1076
|
+
isSingleCell(): boolean;
|
|
1077
|
+
/**
|
|
1078
|
+
* Returns `true` if the given address represents the same range as the current range.
|
|
1079
|
+
*
|
|
1080
|
+
* @param address The address to compare against.
|
|
1081
|
+
* @param options Options for getting the range from the address.
|
|
1082
|
+
*/
|
|
1083
|
+
isEqual(address: ICellRange.Address, options?: ICellRange.GetRangeOptions): boolean;
|
|
1084
|
+
/**
|
|
1085
|
+
* Returns the size of the range this is the rows * columns.
|
|
1086
|
+
*/
|
|
1087
|
+
get size(): number;
|
|
1088
|
+
/**
|
|
1089
|
+
* Returns the absolute bounds for the range.
|
|
1090
|
+
*/
|
|
1091
|
+
getBounds(): Bounds;
|
|
1092
|
+
/**
|
|
1093
|
+
* Indicates if the range is readonly only.
|
|
1094
|
+
*
|
|
1095
|
+
* @remarks
|
|
1096
|
+
* Not an indicator of if the range is protected but rather
|
|
1097
|
+
* if the range is being used in a way that doesn't support write operations.
|
|
1098
|
+
* (e.g. the range is being provided as a listener source {@link ICellRange.Event}
|
|
1099
|
+
* or the range belongs to a historical snapshot.)
|
|
1100
|
+
*/
|
|
1101
|
+
isReadOnly(): boolean;
|
|
1102
|
+
/**
|
|
1103
|
+
* Returns the `coords` as a string address (e.g., 'A1' or 'A1:E5').
|
|
1104
|
+
*
|
|
1105
|
+
* @param r1c1 If unspecified returns the environment's default.
|
|
1106
|
+
*/
|
|
1107
|
+
getAddress(r1c1?: boolean): string;
|
|
1108
|
+
/**
|
|
1109
|
+
* Returns the column start.
|
|
1110
|
+
*/
|
|
1111
|
+
getColumnStart(): number;
|
|
1112
|
+
/**
|
|
1113
|
+
* Returns the top of the range.
|
|
1114
|
+
*/
|
|
1115
|
+
getRowStart(): number;
|
|
1116
|
+
/**
|
|
1117
|
+
* Returns the right of the range.
|
|
1118
|
+
*/
|
|
1119
|
+
getColumnEnd(): number;
|
|
1120
|
+
/**
|
|
1121
|
+
* Returns the bottom of the range.
|
|
1122
|
+
*/
|
|
1123
|
+
getRowEnd(): number;
|
|
1124
|
+
/**
|
|
1125
|
+
* Returns the number of columns of the range.
|
|
1126
|
+
*/
|
|
1127
|
+
getColumnCount(): number;
|
|
1128
|
+
/**
|
|
1129
|
+
* Returns the number of rows of the range.
|
|
1130
|
+
*/
|
|
1131
|
+
getRowCount(): number;
|
|
1132
|
+
/**
|
|
1133
|
+
* Checks if the ranges is empty, meaning it has no values or formatting.
|
|
1134
|
+
*
|
|
1135
|
+
* @remarks
|
|
1136
|
+
* Convenience ```getUsedRange() !== null``` or `getCount() === 0`.
|
|
1137
|
+
*
|
|
1138
|
+
* @see
|
|
1139
|
+
* {@link ICellRange.getUsedRange}
|
|
1140
|
+
*/
|
|
1141
|
+
isEmpty(): boolean;
|
|
1142
|
+
/**
|
|
1143
|
+
* Returns the Sheet.
|
|
1144
|
+
*/
|
|
1145
|
+
getSheet(): ISheet;
|
|
1146
|
+
/**
|
|
1147
|
+
* The IRange.Coords.
|
|
1148
|
+
*/
|
|
1149
|
+
getCoords(): Readonly<IRange.FixableCoords>;
|
|
1150
|
+
/**
|
|
1151
|
+
* Returns `true` if the range is invalid.
|
|
1152
|
+
*
|
|
1153
|
+
* @remarks
|
|
1154
|
+
* Ranges can be invalid if a range is removed due to deleting rows or columns or if the
|
|
1155
|
+
* range is created with invalid coordinates.
|
|
1156
|
+
*/
|
|
1157
|
+
isInvalid(): boolean;
|
|
1158
|
+
/**
|
|
1159
|
+
* Returns the address as a string.
|
|
1160
|
+
*/
|
|
1161
|
+
toString(): string;
|
|
1162
|
+
/**
|
|
1163
|
+
* For runtime type checking.
|
|
1164
|
+
*/
|
|
1165
|
+
readonly isICellRange: true;
|
|
1166
|
+
}
|
|
1167
|
+
/**
|
|
1168
|
+
* An {@link ICellRange} that represents a named range.
|
|
1169
|
+
*
|
|
1170
|
+
* @remarks
|
|
1171
|
+
* Consumers that need the named identity check `isINamedRange` before casting.
|
|
1172
|
+
*/
|
|
1173
|
+
export interface INamedRange extends ICellRange {
|
|
1174
|
+
/** Returns the user-visible display name. */
|
|
1175
|
+
getName(): string;
|
|
1176
|
+
/** Returns the internal ID of the named range. */
|
|
1177
|
+
getId(): string;
|
|
1178
|
+
/**
|
|
1179
|
+
* EVERY range this name designates, or `null` when it designates none.
|
|
1180
|
+
*
|
|
1181
|
+
* @remarks
|
|
1182
|
+
* A name's refers-to may be a UNION (`Revenue = $A$1:$B$2,$D$3:$E$4`), and an `INamedRange` is
|
|
1183
|
+
* ONE range — its own coords cannot carry two areas. This is the door to the full extent, so a
|
|
1184
|
+
* holder of a branded member never has to re-resolve the name to learn there was more.
|
|
1185
|
+
*
|
|
1186
|
+
* `null` matches `INamed.getRanges`: a name holding an expression (`Doubled = Base*2`)
|
|
1187
|
+
* designates no cells — its coords here are a graph ANCHOR, not a target.
|
|
1188
|
+
*/
|
|
1189
|
+
getRanges(): ICellRanges | null;
|
|
1190
|
+
/** For runtime type checking. */
|
|
1191
|
+
readonly isINamedRange: true;
|
|
1192
|
+
}
|
|
1193
|
+
/**
|
|
1194
|
+
* {@inheritDoc ICellRange}
|
|
1195
|
+
* @see
|
|
1196
|
+
* ### **Interface**
|
|
1197
|
+
*
|
|
1198
|
+
* {@link ICellRange}
|
|
1199
|
+
*/
|
|
1200
|
+
export declare namespace ICellRange {
|
|
1201
|
+
/**
|
|
1202
|
+
* This is either:
|
|
1203
|
+
* 1. A string that can be parsed into a CellRange (e.g. 'A1:B2') or a named range.
|
|
1204
|
+
* 2. Another ICellRange
|
|
1205
|
+
* 3. An IRange
|
|
1206
|
+
* 4. Partial IRange.FixableCoords
|
|
1207
|
+
*/
|
|
1208
|
+
type Address = string | ICellRange | IRange | Readonly<Partial<IRange.FixableCoords>> | ICell.Address | FormulaError.Ref;
|
|
1209
|
+
/**
|
|
1210
|
+
* Represents an update to a cell's value, allowing `null` to clear the cell.
|
|
1211
|
+
*
|
|
1212
|
+
* @remarks
|
|
1213
|
+
* This type is used to update a cell's value. Passing `null` will clear the cell's content.
|
|
1214
|
+
* The value must conform to the native types allowed in a cell (`Scalar`).
|
|
1215
|
+
*/
|
|
1216
|
+
type ScalarUpdate = Scalar | null | undefined;
|
|
1217
|
+
/**
|
|
1218
|
+
* Represents an update to a cell's value in JavaScript, allowing `Date` and `null`.
|
|
1219
|
+
*
|
|
1220
|
+
* @remarks
|
|
1221
|
+
* This type allows for updating a cell's value, including `Date` for convenience.
|
|
1222
|
+
* As with `ScalarUpdate`, `null` can be used to clear the cell's value.
|
|
1223
|
+
*
|
|
1224
|
+
* * See {@link InteropScalar} for more details on JavaScript scalar values.
|
|
1225
|
+
*/
|
|
1226
|
+
type InteropScalarUpdate = InteropScalar | null | undefined;
|
|
1227
|
+
/**
|
|
1228
|
+
* Single or 2D.
|
|
1229
|
+
*/
|
|
1230
|
+
type Update = ICell.Update | readonly ICell.Update[][];
|
|
1231
|
+
/**
|
|
1232
|
+
* A union of either a Scalar and 2D array of Scalars or an IRange.
|
|
1233
|
+
*/
|
|
1234
|
+
type ValuesUpdate = InteropScalarUpdate | IRange | readonly InteropScalarUpdate[][];
|
|
1235
|
+
/**
|
|
1236
|
+
* Allows for Values to be set via a callback.
|
|
1237
|
+
*/
|
|
1238
|
+
type ValuesUpdateOrCallback<T = Scalar> = ValuesUpdate | ((row: number, column: number) => T | null);
|
|
1239
|
+
/**
|
|
1240
|
+
* The read options a range carries.
|
|
1241
|
+
*
|
|
1242
|
+
* @remarks
|
|
1243
|
+
* **These are sticky.** A range created with them keeps them, and every derivation
|
|
1244
|
+
* (`getOffsetBy`, `getIntersect`, `getUsedRange`, `getRowAt`…) hands them to the range it
|
|
1245
|
+
* returns. That is what keeps the API fluent: if a read is scoped by an option, everything
|
|
1246
|
+
* chained off its result stays scoped the same way, rather than silently widening back out
|
|
1247
|
+
* at the first hop.
|
|
1248
|
+
*
|
|
1249
|
+
* They are defaults, not locks — the same key passed to an individual read wins for that
|
|
1250
|
+
* call, and a derivation that passes new options merges them over the carried ones.
|
|
1251
|
+
*/
|
|
1252
|
+
interface GetRangeOptions {
|
|
1253
|
+
/**
|
|
1254
|
+
* Skip cells hidden via headers.
|
|
1255
|
+
*
|
|
1256
|
+
* @defaultValue false
|
|
1257
|
+
*
|
|
1258
|
+
* @remarks
|
|
1259
|
+
* Honored by every read that walks cells — iteration ({@link ICellRange.forEach},
|
|
1260
|
+
* {@link ICellRange.entries}), the aggregates ({@link ICellRange.getCounts},
|
|
1261
|
+
* {@link ICellRange.getCount}, {@link ICellRange.isContentful}), {@link ICellRange.getMerges}
|
|
1262
|
+
* and {@link ICellRange.getRegions}.
|
|
1263
|
+
*
|
|
1264
|
+
* Optionally an {@link IRange.Axis} to skip on one axis only — sorting skips hidden rows
|
|
1265
|
+
* while leaving hidden columns in place.
|
|
1266
|
+
*/
|
|
1267
|
+
ignoreHidden?: boolean | IRange.Axis;
|
|
1268
|
+
/**
|
|
1269
|
+
* The features reads through this range resolve and report.
|
|
1270
|
+
*
|
|
1271
|
+
* @defaultValue all features
|
|
1272
|
+
*
|
|
1273
|
+
* @remarks
|
|
1274
|
+
* The lens for every feature-aware read: iteration visits only cells that exist through a
|
|
1275
|
+
* listed feature, {@link ICellRange.getCounts} / {@link ICellRange.isContentful} /
|
|
1276
|
+
* {@link ICellRange.getRegions} report on that selection, and
|
|
1277
|
+
* {@link ICellRange.getUsedRange} measures its extent.
|
|
1278
|
+
*
|
|
1279
|
+
* An empty list is the raw-value fast path — no feature state is resolved at all.
|
|
1280
|
+
*
|
|
1281
|
+
* {@link ICellRange.getValues} and {@link ICellRange.values} are deliberately exempt — a
|
|
1282
|
+
* value is a value regardless of the lens.
|
|
1283
|
+
*/
|
|
1284
|
+
features?: ICellRange.Feature | readonly ICellRange.Feature[];
|
|
1285
|
+
}
|
|
1286
|
+
/**
|
|
1287
|
+
* A sheet collection's own `getItems` filters, without `address`.
|
|
1288
|
+
*
|
|
1289
|
+
* @remarks
|
|
1290
|
+
* The ranged item lookups ({@link ICellRange.getTables}, {@link ICellRange.getConditionalFormats},
|
|
1291
|
+
* {@link ICellRange.getDataValidations}, {@link ICellRange.getMovables}) are scoped views of the
|
|
1292
|
+
* sheet's collections, so each takes exactly the filters its own collection takes. `address` is
|
|
1293
|
+
* dropped because the range **is** the address — a second one would be a contradictory scope.
|
|
1294
|
+
*/
|
|
1295
|
+
type GetItemsOptions<T> = Omit<T, 'address'>;
|
|
1296
|
+
/**
|
|
1297
|
+
* Options for adding an auto table to a range.
|
|
1298
|
+
*/
|
|
1299
|
+
interface AddAutoTableOptions extends ITransaction.OperationOptions {
|
|
1300
|
+
/**
|
|
1301
|
+
* Include sort options.
|
|
1302
|
+
*/
|
|
1303
|
+
sort?: ISort.RangeOptions;
|
|
1304
|
+
/**
|
|
1305
|
+
* Include filter options.
|
|
1306
|
+
*/
|
|
1307
|
+
filter?: ICondition.RangeOptions;
|
|
1308
|
+
/**
|
|
1309
|
+
* If `true` then any existing auto table at the range will be replaced.
|
|
1310
|
+
*/
|
|
1311
|
+
replaceExisting?: boolean;
|
|
1312
|
+
}
|
|
1313
|
+
/**
|
|
1314
|
+
* Options for `ICellRange.delete`.
|
|
1315
|
+
*/
|
|
1316
|
+
interface InsertOptions extends ITransaction.OperationOptions {
|
|
1317
|
+
/**
|
|
1318
|
+
* The direction in which to shift existing cells.
|
|
1319
|
+
*
|
|
1320
|
+
* @remarks
|
|
1321
|
+
* Defaults to the axis where the range's dimension is smaller (e.g., shifts down if the range is wider than it is tall).
|
|
1322
|
+
* See {@link ICellRange.getDefaultShiftAxis}
|
|
1323
|
+
*/
|
|
1324
|
+
axis?: IRange.Axis;
|
|
1325
|
+
/**
|
|
1326
|
+
* Expand the shifted range to the enclosing region's full extent across the shift axis before
|
|
1327
|
+
* inserting: within a table, the table's width/height (a **table** row/column insert — column
|
|
1328
|
+
* state, undo labels and validity are owned by the table); otherwise the **entire sheet** (an
|
|
1329
|
+
* entire row/column insert). The range's own extent on the shift axis still supplies the count.
|
|
1330
|
+
*
|
|
1331
|
+
* @remarks
|
|
1332
|
+
* - A range that only *partially* overlaps a table throws (cells cannot shift across a table
|
|
1333
|
+
* boundary) — select entirely inside or outside the table.
|
|
1334
|
+
* - A table row insert requires the range's rows to lie within the table **body** (not the
|
|
1335
|
+
* header/totals rows) and throws otherwise.
|
|
1336
|
+
* - Requires a single range at the `ICellRanges` level.
|
|
1337
|
+
*
|
|
1338
|
+
* @defaultValue `false` (classic shift-cells)
|
|
1339
|
+
*/
|
|
1340
|
+
span?: boolean;
|
|
1341
|
+
}
|
|
1342
|
+
/**
|
|
1343
|
+
* Options for `ICellRange.delete`.
|
|
1344
|
+
*/
|
|
1345
|
+
interface DeleteOptions extends ITransaction.OperationOptions {
|
|
1346
|
+
/**
|
|
1347
|
+
* The direction in which to shift existing cells.
|
|
1348
|
+
*
|
|
1349
|
+
* @remarks
|
|
1350
|
+
* Defaults to the axis where the range's dimension is smaller (e.g., shifts down if the range is wider than it is tall).
|
|
1351
|
+
* See {@link ICellRange.getDefaultShiftAxis}
|
|
1352
|
+
*/
|
|
1353
|
+
axis?: IRange.Axis;
|
|
1354
|
+
/**
|
|
1355
|
+
* Expand the shifted range to the enclosing region's full extent across the shift axis before
|
|
1356
|
+
* deleting: within a table, the table's width/height (a **table** row/column delete); otherwise
|
|
1357
|
+
* the **entire sheet** (an entire row/column delete). See {@link InsertOptions.span} for the
|
|
1358
|
+
* boundary and validity rules.
|
|
1359
|
+
*
|
|
1360
|
+
* @defaultValue `false` (classic shift-cells)
|
|
1361
|
+
*/
|
|
1362
|
+
span?: boolean;
|
|
1363
|
+
}
|
|
1364
|
+
/**
|
|
1365
|
+
* Options for configuring range coordinate reference types.
|
|
1366
|
+
* Each option allows you to specify whether a coordinate should be fixed
|
|
1367
|
+
* (absolute) or flexible (relative).
|
|
1368
|
+
*
|
|
1369
|
+
* @see
|
|
1370
|
+
* {@link ICellRange.getFixed}
|
|
1371
|
+
*/
|
|
1372
|
+
interface GetFixedOptions {
|
|
1373
|
+
/**
|
|
1374
|
+
* If `true`, sets the starting row coordinate as absolute; if `false`,
|
|
1375
|
+
* sets it as relative. Defaults to no change if not provided.
|
|
1376
|
+
*/
|
|
1377
|
+
rowStart?: boolean;
|
|
1378
|
+
/**
|
|
1379
|
+
* If `true`, sets the starting column coordinate as absolute; if `false`,
|
|
1380
|
+
* sets it as relative. Defaults to no change if not provided.
|
|
1381
|
+
*/
|
|
1382
|
+
colStart?: boolean;
|
|
1383
|
+
/**
|
|
1384
|
+
* If `true`, sets the ending row coordinate as absolute; if `false`,
|
|
1385
|
+
* sets it as relative. Defaults to no change if not provided.
|
|
1386
|
+
*/
|
|
1387
|
+
rowEnd?: boolean;
|
|
1388
|
+
/**
|
|
1389
|
+
* If `true`, sets the ending column coordinate as absolute; if `false`,
|
|
1390
|
+
* sets it as relative. Defaults to no change if not provided.
|
|
1391
|
+
*/
|
|
1392
|
+
colEnd?: boolean;
|
|
1393
|
+
}
|
|
1394
|
+
/**
|
|
1395
|
+
* Options for {@link ICellRange.getSurrounding}.
|
|
1396
|
+
*/
|
|
1397
|
+
interface GetSurroundingOptions {
|
|
1398
|
+
/**
|
|
1399
|
+
* If `true` then only the content will be included.
|
|
1400
|
+
*
|
|
1401
|
+
* @defaultValue false
|
|
1402
|
+
*
|
|
1403
|
+
* @remarks
|
|
1404
|
+
* If `true` then tables and sheet boundaries will be ignored mimicking the behavior
|
|
1405
|
+
* of 'Ctrl+Shift+*'.
|
|
1406
|
+
*/
|
|
1407
|
+
contentOnly?: boolean;
|
|
1408
|
+
}
|
|
1409
|
+
/**
|
|
1410
|
+
* A callback to enabled additional customization during copy.
|
|
1411
|
+
*
|
|
1412
|
+
* @remarks
|
|
1413
|
+
* Return `undefined` will leave the value undefined altered.
|
|
1414
|
+
*/
|
|
1415
|
+
interface CopyCellsCallback {
|
|
1416
|
+
(value: Scalar, context: ICell.IteratorContext, to: IRange.CellCoords, options: ICellRange.CopyOptions): ICell.Update;
|
|
1417
|
+
}
|
|
1418
|
+
/**
|
|
1419
|
+
* Options for {@link ICellRange.ISnapshot.copyTo}.
|
|
1420
|
+
*/
|
|
1421
|
+
interface CopyOptions extends ITransaction.OperationOptions, ReferenceableClipboard.CopyOptions {
|
|
1422
|
+
/**
|
|
1423
|
+
* When pasting from a smaller range to a larger range copy will repeat or 'wallpaper' the
|
|
1424
|
+
* source values.
|
|
1425
|
+
*
|
|
1426
|
+
* @remarks
|
|
1427
|
+
* Note - If the destination range is only a single cell then fitDestination will always be applied.
|
|
1428
|
+
*/
|
|
1429
|
+
fitDestination?: boolean;
|
|
1430
|
+
/**
|
|
1431
|
+
* Have the data transposed for the original axis.
|
|
1432
|
+
*
|
|
1433
|
+
* @defaultValue false
|
|
1434
|
+
*/
|
|
1435
|
+
transpose?: boolean;
|
|
1436
|
+
/**
|
|
1437
|
+
* Indicate which items are copied.
|
|
1438
|
+
*/
|
|
1439
|
+
type?: ICell.Content;
|
|
1440
|
+
/**
|
|
1441
|
+
* Indicates if the header (size) should be copied.
|
|
1442
|
+
*
|
|
1443
|
+
* @remarks
|
|
1444
|
+
* The default is to only copy the headers if the range is entire header span.
|
|
1445
|
+
*/
|
|
1446
|
+
includeHeaders?: boolean;
|
|
1447
|
+
/**
|
|
1448
|
+
* Allows for undo to range selection to be altered.
|
|
1449
|
+
*
|
|
1450
|
+
* @remarks
|
|
1451
|
+
* TODO - API leakage - This is used to during drag.
|
|
1452
|
+
*/
|
|
1453
|
+
undoRange?: ICellRange;
|
|
1454
|
+
/**
|
|
1455
|
+
* Callback to allow for additional customizations.
|
|
1456
|
+
*/
|
|
1457
|
+
adjustCells?: ICellRange.CopyCellsCallback;
|
|
1458
|
+
}
|
|
1459
|
+
/**
|
|
1460
|
+
* Options for {@link ICellRange.insertFrom}.
|
|
1461
|
+
*
|
|
1462
|
+
* @remarks
|
|
1463
|
+
* This extends {@link ICellRange.CopyOptions} and adds an {@link IRange.Axis}.
|
|
1464
|
+
*/
|
|
1465
|
+
interface InsertFromOptions extends ICellRange.CopyOptions {
|
|
1466
|
+
/**
|
|
1467
|
+
* The direction in which to shift existing cells.
|
|
1468
|
+
* Defaults to the axis where the copied range's dimension is smaller.
|
|
1469
|
+
* See {@link ICellRange.getDefaultShiftAxis} for details on the default behavior.
|
|
1470
|
+
*/
|
|
1471
|
+
axis?: IRange.Axis;
|
|
1472
|
+
}
|
|
1473
|
+
/**
|
|
1474
|
+
* Options for {@link ICellRange.setValues}.
|
|
1475
|
+
*/
|
|
1476
|
+
interface SetValuesOptions extends ITransaction.OperationOptions {
|
|
1477
|
+
/**
|
|
1478
|
+
* By default setValue will attempt to parse text values into a native type.
|
|
1479
|
+
* This can be disabled or customized using the parseText flag.
|
|
1480
|
+
* Setting this to false will use the raw text value.
|
|
1481
|
+
*/
|
|
1482
|
+
textParser?: boolean | ICell.ModifiersFromStringOptions;
|
|
1483
|
+
/**
|
|
1484
|
+
* Specifies the direction for iterating over the range (row-major or column-major).
|
|
1485
|
+
*
|
|
1486
|
+
* @defaultValue `IRange.Axis.Row`
|
|
1487
|
+
*
|
|
1488
|
+
* @remarks
|
|
1489
|
+
* Both {@link SetValuesOptions} and {@link GetValuesOptions} allow for {@link IRange.Axis}s.
|
|
1490
|
+
*/
|
|
1491
|
+
axis?: IRange.Axis;
|
|
1492
|
+
/**
|
|
1493
|
+
* Convenience method that calls autoFit after the setValues.
|
|
1494
|
+
* @defaultValue `none` - No autofit.
|
|
1495
|
+
*
|
|
1496
|
+
* @remarks
|
|
1497
|
+
* If set to `true` then autoFit will mimic the UI with the following options:
|
|
1498
|
+
```
|
|
1499
|
+
{
|
|
1500
|
+
skipCustomSize: true,
|
|
1501
|
+
expandOnly: true,
|
|
1502
|
+
minContent: true
|
|
1503
|
+
}
|
|
1504
|
+
```
|
|
1505
|
+
*/
|
|
1506
|
+
autoFit?: boolean | ICellRange.AutoFitOptions;
|
|
1507
|
+
/**
|
|
1508
|
+
* Skip the bounds check when setting values.
|
|
1509
|
+
*
|
|
1510
|
+
* @remarks
|
|
1511
|
+
* When set to `true`, this option allows value arrays to exceed the
|
|
1512
|
+
* dimensions of the range. This is useful for setting values in a table
|
|
1513
|
+
* where the range is smaller than the data, but determining the exact
|
|
1514
|
+
* size requires processing the entire dataset.
|
|
1515
|
+
*/
|
|
1516
|
+
skipBoundsCheck?: boolean;
|
|
1517
|
+
}
|
|
1518
|
+
/**
|
|
1519
|
+
* Options for {@link ICellRange.getValues}.
|
|
1520
|
+
*/
|
|
1521
|
+
interface GetValuesOptions {
|
|
1522
|
+
/**
|
|
1523
|
+
* Limits the maximum number of values returned. An error will be thrown if results contain more values than `maxSize`.
|
|
1524
|
+
*
|
|
1525
|
+
* @defaultValue 10000
|
|
1526
|
+
*/
|
|
1527
|
+
maxSize?: number;
|
|
1528
|
+
/**
|
|
1529
|
+
* Specifies the primary direction for iterating over the range (row-major or column-major).
|
|
1530
|
+
*
|
|
1531
|
+
* @defaultValue IRange.Axis.Row
|
|
1532
|
+
*
|
|
1533
|
+
* @remarks
|
|
1534
|
+
* Both {@link SetValuesOptions} and {@link GetValuesOptions} allow for {@link IRange.Axis}s.
|
|
1535
|
+
*/
|
|
1536
|
+
axis?: IRange.Axis;
|
|
1537
|
+
/**
|
|
1538
|
+
* Reverses the iteration order (e.g., from bottom to top for rows, or from right to left for columns).
|
|
1539
|
+
*
|
|
1540
|
+
* @defaultValue false
|
|
1541
|
+
*/
|
|
1542
|
+
reverse?: boolean;
|
|
1543
|
+
/**
|
|
1544
|
+
* Excludes hidden cells from the returned values.
|
|
1545
|
+
*
|
|
1546
|
+
* @defaultValue false
|
|
1547
|
+
*
|
|
1548
|
+
* @remarks
|
|
1549
|
+
* - When enabled, the number of returned rows or columns might be less than the range size.
|
|
1550
|
+
* - If the entire range is hidden, the result will be empty and empty Array (`[]`).
|
|
1551
|
+
* - Optionally, you can specify a `IRange.Axis` to indicate the header axis for skipping cases.
|
|
1552
|
+
* For example, in sorting, you might want to skip hidden rows but not hidden columns.
|
|
1553
|
+
*/
|
|
1554
|
+
ignoreHidden?: boolean | IRange.Axis;
|
|
1555
|
+
/** {@inheritDoc ICellRange.IteratorOptions.includeMergeOverflow} */
|
|
1556
|
+
includeMergeOverflow?: boolean;
|
|
1557
|
+
}
|
|
1558
|
+
/**
|
|
1559
|
+
* Options for {@link ICellRange.autoFit}.
|
|
1560
|
+
*/
|
|
1561
|
+
interface AutoFitOptions extends ITransaction.OperationOptions {
|
|
1562
|
+
/**
|
|
1563
|
+
* Best fit using the minimum amount of space required.
|
|
1564
|
+
*
|
|
1565
|
+
* @defaultValue false
|
|
1566
|
+
*
|
|
1567
|
+
* @remarks
|
|
1568
|
+
* When `true` the numbers will include as few decimals as allowed overflow into the next cell.
|
|
1569
|
+
* For example allowing numbers to round or use scientific notation.
|
|
1570
|
+
*/
|
|
1571
|
+
minContent?: boolean;
|
|
1572
|
+
/**
|
|
1573
|
+
* Restricts autoFit to only grow, never shrink.
|
|
1574
|
+
*
|
|
1575
|
+
* @defaultValue false - adjust in both directions.
|
|
1576
|
+
*
|
|
1577
|
+
* @remarks
|
|
1578
|
+
* This is useful when adjusting fonts and wan the columns to resize but not the rows.
|
|
1579
|
+
*/
|
|
1580
|
+
expandOnly?: boolean | IRange.Axis;
|
|
1581
|
+
/**
|
|
1582
|
+
* If this is set to `true` then any headers that have custom sizes will be ignored.
|
|
1583
|
+
*
|
|
1584
|
+
* @defaultValue false
|
|
1585
|
+
*/
|
|
1586
|
+
skipCustomSize?: boolean;
|
|
1587
|
+
/**
|
|
1588
|
+
* The axes to autoFit.
|
|
1589
|
+
*
|
|
1590
|
+
* @defaultValue IRange.AxisSelection.Both
|
|
1591
|
+
*/
|
|
1592
|
+
axes?: IRange.AxisSelection;
|
|
1593
|
+
/**
|
|
1594
|
+
* Fit to what **formula view** displays rather than to the rendered values.
|
|
1595
|
+
*
|
|
1596
|
+
* @defaultValue the sheet view's {@link ISheetView.isShowFormulas}
|
|
1597
|
+
*
|
|
1598
|
+
* @remarks
|
|
1599
|
+
* In formula view a cell with a formula shows `=` + its formula text, and every other cell
|
|
1600
|
+
* shows its raw value with no number format. Both are usually much wider than the formatted
|
|
1601
|
+
* value, which is why Excel also renders columns at twice their stored width while it is on.
|
|
1602
|
+
*
|
|
1603
|
+
* Normally left unset — autoFit follows the view. Pass it explicitly to fit for a view other
|
|
1604
|
+
* than the current one (or, in tests, without a view at all).
|
|
1605
|
+
*/
|
|
1606
|
+
formulaView?: boolean;
|
|
1607
|
+
}
|
|
1608
|
+
/**
|
|
1609
|
+
* Options for {@link ICellRanges.getFlattened}.
|
|
1610
|
+
*/
|
|
1611
|
+
interface GetFlattenOptions extends GetRangeOptions {
|
|
1612
|
+
/**
|
|
1613
|
+
* Returns a set of ranges with overlaps removed and attempts to merge adjacent ranges into larger ranges.
|
|
1614
|
+
*
|
|
1615
|
+
* @param axes The overlap detection and initial merge axis.
|
|
1616
|
+
* @returns A new `ICellRanges` object with non-overlapping, and where possible, merged ranges.
|
|
1617
|
+
*
|
|
1618
|
+
* @defaultValue `IRange.AxisSelection.Both`.
|
|
1619
|
+
*/
|
|
1620
|
+
axes?: IRange.AxisSelection;
|
|
1621
|
+
}
|
|
1622
|
+
/**
|
|
1623
|
+
* Options for {@link ICellRange.getStats}.
|
|
1624
|
+
*/
|
|
1625
|
+
interface GetStatsOptions extends IRange.IteratorOptions {
|
|
1626
|
+
/**
|
|
1627
|
+
* Measure only the rows/columns the sheet is showing.
|
|
1628
|
+
*
|
|
1629
|
+
* @defaultValue `false`
|
|
1630
|
+
*
|
|
1631
|
+
* @remarks
|
|
1632
|
+
* The same lens {@link ICellRange.getCounts} and {@link ICellRange.getRegions} take, and it
|
|
1633
|
+
* costs no extra scan: the range is split at the hidden runs first (off the header run
|
|
1634
|
+
* structure, no per-cell probe) and the resulting pieces are measured as ONE population.
|
|
1635
|
+
*
|
|
1636
|
+
* Optionally an {@link IRange.Axis} to skip on one axis only.
|
|
1637
|
+
*/
|
|
1638
|
+
ignoreHidden?: boolean | IRange.Axis;
|
|
1639
|
+
}
|
|
1640
|
+
/**
|
|
1641
|
+
* Options for {@link ICellRange.getVisible}.
|
|
1642
|
+
*/
|
|
1643
|
+
interface GetVisibleOptions extends GetRangeOptions {
|
|
1644
|
+
/**
|
|
1645
|
+
* The visible axes.
|
|
1646
|
+
*
|
|
1647
|
+
* @defaultValue `IRange.AxisSelection.Both`
|
|
1648
|
+
*/
|
|
1649
|
+
axes?: IRange.AxisSelection;
|
|
1650
|
+
}
|
|
1651
|
+
/**
|
|
1652
|
+
* Options for {@link ICellRange.autoFill}.
|
|
1653
|
+
*/
|
|
1654
|
+
interface AutoFillOptions extends ITransaction.OperationOptions {
|
|
1655
|
+
/**
|
|
1656
|
+
* Provide custom fillers.
|
|
1657
|
+
*
|
|
1658
|
+
* @defaultValue `AutoFill.Types.Series`
|
|
1659
|
+
*/
|
|
1660
|
+
filler?: IAutoFill.Filler;
|
|
1661
|
+
/**
|
|
1662
|
+
* Options to pass to the `IAutoFill.Filler`.
|
|
1663
|
+
* @remarks
|
|
1664
|
+
* These will also be passed if a custom filler is used.
|
|
1665
|
+
*/
|
|
1666
|
+
fillerOptions?: IAutoFill.Options;
|
|
1667
|
+
/**
|
|
1668
|
+
* If `true` then will only copy values and not formatting.
|
|
1669
|
+
*
|
|
1670
|
+
* @defaultValue false (unless starting within a table)
|
|
1671
|
+
*/
|
|
1672
|
+
contentsOnly?: boolean;
|
|
1673
|
+
/**
|
|
1674
|
+
* Compute the fill but commit nothing — the returned range is a projection of the result.
|
|
1675
|
+
*
|
|
1676
|
+
* @defaultValue false
|
|
1677
|
+
*
|
|
1678
|
+
* @remarks
|
|
1679
|
+
* * The sheet is untouched and no undo entry is created.
|
|
1680
|
+
* * The returned range covers the destination and is read-only; writes to it throw.
|
|
1681
|
+
* * Its cells are derived, not read from the sheet — see {@link ICellRange.autoFill}.
|
|
1682
|
+
* * Cells are computed on demand, so previewing one cell of a large fill costs one cell.
|
|
1683
|
+
*/
|
|
1684
|
+
preview?: boolean;
|
|
1685
|
+
/**
|
|
1686
|
+
* Fill the nearest destination that is legal instead of throwing when the given one is not.
|
|
1687
|
+
*
|
|
1688
|
+
* @defaultValue false
|
|
1689
|
+
*
|
|
1690
|
+
* @remarks
|
|
1691
|
+
* * Only merges make a destination illegal, so with none on the fill axis this changes nothing.
|
|
1692
|
+
* * The fill amount is rounded **outward** to the merge unit (drag one row into a merge and the
|
|
1693
|
+
* whole merge is covered, Excel-style), then clamped **inward** to the sheet. If not even one
|
|
1694
|
+
* merge unit fits, the fill becomes a no-op.
|
|
1695
|
+
* * Shrinking destinations are always legal and are never moved.
|
|
1696
|
+
* * Opt-in by design: a caller that named an exact destination gets an error rather than a silently
|
|
1697
|
+
* different fill. Turn it on for pointer-driven input, where the raw destination is a guess.
|
|
1698
|
+
* * The returned range reports where the fill actually landed — so a drag can snap, preview and
|
|
1699
|
+
* commit through one call and they can never disagree.
|
|
1700
|
+
*/
|
|
1701
|
+
snap?: boolean;
|
|
1702
|
+
}
|
|
1703
|
+
/**
|
|
1704
|
+
* Options for {@link ICellRange.updateCells}.
|
|
1705
|
+
*/
|
|
1706
|
+
interface UpdateCellsOptions extends SetValuesOptions {
|
|
1707
|
+
}
|
|
1708
|
+
/**
|
|
1709
|
+
* Provides an API for efficiently performing incremental updates to specific cells within a range.
|
|
1710
|
+
*
|
|
1711
|
+
* Unless {@link ICellRange.SparseBuilderOptions.allowUnorderedWrites} is `true` the updates must be written
|
|
1712
|
+
* in row-major or column-major order as determined by {@link IRange.Axis}, with major/minor
|
|
1713
|
+
* coordinates increasing on each update, otherwise an error will be thrown.
|
|
1714
|
+
*
|
|
1715
|
+
* @example
|
|
1716
|
+
* ```typescript
|
|
1717
|
+
* const builder = range.createSparseBuilder();
|
|
1718
|
+
* builder.pushAt(1, 1, "Hello"); // as row, column, primitive - fastest
|
|
1719
|
+
* builder.push({ rowIndex: 2, colIndex: 1 }, { value: "Beautiful" }); // as coordinate and json object
|
|
1720
|
+
* builder.push('A3', { value: "World" }); // as a1 string and json
|
|
1721
|
+
* builder.apply();
|
|
1722
|
+
* ```
|
|
1723
|
+
* @template S - The return type of {@link apply}, typically the source range (`ICellRange`).
|
|
1724
|
+
* @see {@link ICellRange.createSparseBuilder}
|
|
1725
|
+
*/
|
|
1726
|
+
interface SparseBuilder<S = ICellRange> {
|
|
1727
|
+
/**
|
|
1728
|
+
* Adds an update at a specific cell address.
|
|
1729
|
+
*
|
|
1730
|
+
* @param address The cell address to update. See {@link ICell.Address}.
|
|
1731
|
+
* @param update The update to apply. See {@link ICell.Update}.
|
|
1732
|
+
* @throws `Error` If the coordinates are out of order compared to previously added coordinates.
|
|
1733
|
+
* @returns The current `SparseBuilder` instance for chaining.
|
|
1734
|
+
*/
|
|
1735
|
+
push(address: ICell.Address, update: ICell.Update): this;
|
|
1736
|
+
/**
|
|
1737
|
+
* Adds an update at a specific major (row) and minor (column) index.
|
|
1738
|
+
*
|
|
1739
|
+
* This method is slightly faster than {@link push} as it bypasses address parsing.
|
|
1740
|
+
*
|
|
1741
|
+
* @param row The row index of the cell to update.
|
|
1742
|
+
* @param col The column index of the cell to update.
|
|
1743
|
+
* @param update The update to apply. See {@link ICell.Update}.
|
|
1744
|
+
* @throws `Error` If the coordinates are out of order compared to previously added coordinates.
|
|
1745
|
+
* @returns The current `SparseBuilder` instance for chaining.
|
|
1746
|
+
*/
|
|
1747
|
+
pushAt(row: number, col: number, update: ICell.Update): this;
|
|
1748
|
+
/**
|
|
1749
|
+
* Adds multiple updates for contiguous cells along the minor axis (columns), starting at the specified indices.
|
|
1750
|
+
*
|
|
1751
|
+
* @param row The row index of the starting cell.
|
|
1752
|
+
* @param col The column index of the starting cell.
|
|
1753
|
+
* @param updates An array of updates to apply to contiguous cells.
|
|
1754
|
+
* @throws `Error` If the coordinates are out of order compared to previously added coordinates.
|
|
1755
|
+
* @returns The current `SparseBuilder` instance for chaining.
|
|
1756
|
+
*/
|
|
1757
|
+
pushMultipleAt(row: number, col: number, updates: ICell.Update[]): this;
|
|
1758
|
+
/**
|
|
1759
|
+
* Finalizes and applies all queued updates to the range.
|
|
1760
|
+
*
|
|
1761
|
+
* This method commits the changes added via {@link push}, {@link pushAt}, or {@link pushMultipleAt}.
|
|
1762
|
+
*
|
|
1763
|
+
* @returns The source object, typically the range (`ICellRange`).
|
|
1764
|
+
*/
|
|
1765
|
+
apply(options?: ICellRange.UpdateCellsOptions): S;
|
|
1766
|
+
}
|
|
1767
|
+
interface SparseBuilderOptions {
|
|
1768
|
+
/**
|
|
1769
|
+
* The axis to write.
|
|
1770
|
+
*/
|
|
1771
|
+
axis?: IRange.Axis;
|
|
1772
|
+
/**
|
|
1773
|
+
* Allowing unordered writes is slower but relaxes the rule that the updates must be written in order.
|
|
1774
|
+
*
|
|
1775
|
+
* @defaultValue false
|
|
1776
|
+
*/
|
|
1777
|
+
allowUnorderedWrites?: boolean | ICellRange.UpdateCellsOptions;
|
|
1778
|
+
}
|
|
1779
|
+
/**
|
|
1780
|
+
* Options for {@link ICellRange.merge}.
|
|
1781
|
+
*/
|
|
1782
|
+
interface MergeOptions extends SetValuesOptions {
|
|
1783
|
+
/**
|
|
1784
|
+
* The axes of the merge.
|
|
1785
|
+
*
|
|
1786
|
+
* @defaultValue IRange.AxisSelection.Both
|
|
1787
|
+
*/
|
|
1788
|
+
axes?: IRange.AxisSelection;
|
|
1789
|
+
/**
|
|
1790
|
+
* If `true` then merge will merge even if there is more than one value.
|
|
1791
|
+
*
|
|
1792
|
+
* @defaultValue false
|
|
1793
|
+
*/
|
|
1794
|
+
discardMultipleValues?: boolean;
|
|
1795
|
+
}
|
|
1796
|
+
/**
|
|
1797
|
+
* Options for {@link ICellRange.textToColumns}.
|
|
1798
|
+
*/
|
|
1799
|
+
interface TextToColumnsOptions extends ITransaction.OperationOptions {
|
|
1800
|
+
/**
|
|
1801
|
+
* The character used to split the text.
|
|
1802
|
+
*
|
|
1803
|
+
* @defaultValue System looks for string with one of the following.
|
|
1804
|
+
*
|
|
1805
|
+
* @remarks
|
|
1806
|
+
* Common delimiters include `,` (comma), `;` (semicolon), `\t` (tab), or ` ` (space).
|
|
1807
|
+
*/
|
|
1808
|
+
delimiter?: string;
|
|
1809
|
+
/**
|
|
1810
|
+
* The character used to enclose text strings that may contain the delimiter.
|
|
1811
|
+
*
|
|
1812
|
+
* @defaultValue `"` (double quote)
|
|
1813
|
+
*
|
|
1814
|
+
* @remarks
|
|
1815
|
+
* Characters found inside the qualifier are treated as literal text rather than delimiters.
|
|
1816
|
+
* For example, if the delimiter is a comma, `"Doe, John"` will remain one cell rather than splitting into two.
|
|
1817
|
+
* Set this to an empty string to disable text qualification.
|
|
1818
|
+
*/
|
|
1819
|
+
textQualifier?: string;
|
|
1820
|
+
/**
|
|
1821
|
+
* Determines how empty fields are split.
|
|
1822
|
+
*
|
|
1823
|
+
* @defaultValue false
|
|
1824
|
+
*
|
|
1825
|
+
* * - If `false` (default): Consecutive delimiters are treated as a single break.
|
|
1826
|
+
* Empty fields between delimiters are ignored/merged.
|
|
1827
|
+
* - If `true`: Every delimiter creates a new column.
|
|
1828
|
+
* Consecutive delimiters will result in empty strings ("") in the output.
|
|
1829
|
+
*
|
|
1830
|
+
* * @remarks
|
|
1831
|
+
* This is the inverse of Excel's "Treat consecutive delimiters as one" option.
|
|
1832
|
+
* * @example
|
|
1833
|
+
* // Input string: "Apple,,Banana" (Delimiter is comma)
|
|
1834
|
+
* * // When preserveEmptyFields is false (Default):
|
|
1835
|
+
* // Result: ["Apple", "Banana"]
|
|
1836
|
+
* * // When preserveEmptyFields is true:
|
|
1837
|
+
* // Result: ["Apple", "", "Banana"]
|
|
1838
|
+
*/
|
|
1839
|
+
preserveEmptyFields?: boolean;
|
|
1840
|
+
/**
|
|
1841
|
+
* The destination range where the split columns will be placed.
|
|
1842
|
+
*
|
|
1843
|
+
* @remarks
|
|
1844
|
+
* If not specified, the operation will start at the the original range top left.
|
|
1845
|
+
* If the destination range overlaps with the source range, the behavior will depend on the `replaceExisting` option:
|
|
1846
|
+
* - If `replaceExisting` is `true`, the operation will proceed, and any existing data in the destination range will be overwritten.
|
|
1847
|
+
* - If `replaceExisting` is `false` (default), and there is an overlap with non-empty cells, the operation will throw an error to prevent data loss.
|
|
1848
|
+
*/
|
|
1849
|
+
destination?: ICellRange.Address;
|
|
1850
|
+
/**
|
|
1851
|
+
* If `true`, the operation will overwrite existing data in the destination columns without warning.
|
|
1852
|
+
*
|
|
1853
|
+
* @defaultValue `false`
|
|
1854
|
+
*
|
|
1855
|
+
* @remarks
|
|
1856
|
+
* * The source row will be split..
|
|
1857
|
+
* * If this is `false` (default) and non-empty cells exist in the output range,
|
|
1858
|
+
* the operation will throw an error to prevent data loss.
|
|
1859
|
+
*/
|
|
1860
|
+
replaceExisting?: boolean;
|
|
1861
|
+
}
|
|
1862
|
+
/**
|
|
1863
|
+
* Options for {@link ICellRange.removeDuplicates}.
|
|
1864
|
+
*/
|
|
1865
|
+
interface RemoveDuplicatesOptions extends ITransaction.OperationOptions {
|
|
1866
|
+
/**
|
|
1867
|
+
* Indicates if the range has a header row.
|
|
1868
|
+
*
|
|
1869
|
+
* @defaultValue false
|
|
1870
|
+
*
|
|
1871
|
+
* @remarks
|
|
1872
|
+
* If `true`, the first row of the range will be treated as a header and excluded from duplicate removal.
|
|
1873
|
+
*/
|
|
1874
|
+
hasHeader?: boolean;
|
|
1875
|
+
/**
|
|
1876
|
+
* A list of columns to consider for duplicate removal.
|
|
1877
|
+
*
|
|
1878
|
+
* @defaultValue all columns
|
|
1879
|
+
*
|
|
1880
|
+
* @remarks
|
|
1881
|
+
* If this is a number it will be a number relative to the range if a string it will be a column
|
|
1882
|
+
* identifier that is resolved.
|
|
1883
|
+
*/
|
|
1884
|
+
columns?: (number | string)[];
|
|
1885
|
+
}
|
|
1886
|
+
/**
|
|
1887
|
+
* Options use for filtering elements during a find.
|
|
1888
|
+
*/
|
|
1889
|
+
interface FindCriteria {
|
|
1890
|
+
/**
|
|
1891
|
+
* If `true` then the text search is case sensitive.
|
|
1892
|
+
*
|
|
1893
|
+
* @defaultValue false
|
|
1894
|
+
*/
|
|
1895
|
+
matchCase?: boolean;
|
|
1896
|
+
/**
|
|
1897
|
+
* If `true` the text must match the entire cell to be true.
|
|
1898
|
+
*
|
|
1899
|
+
* @defaultValue false
|
|
1900
|
+
*/
|
|
1901
|
+
matchEntireCell?: boolean;
|
|
1902
|
+
/**
|
|
1903
|
+
* Determines whether the find operation should treat the search text as a regular expression (RegEx).
|
|
1904
|
+
*
|
|
1905
|
+
* @defaultValue false
|
|
1906
|
+
*
|
|
1907
|
+
* @remarks
|
|
1908
|
+
* When `true`, the search text will be interpreted as a regular expression (RegEx), allowing for
|
|
1909
|
+
* advanced pattern matching.
|
|
1910
|
+
*
|
|
1911
|
+
* If `false`, the find operation will not use RegEx but will support three wildcard characters
|
|
1912
|
+
* for flexible searching:
|
|
1913
|
+
*
|
|
1914
|
+
* - `?` (question mark): Matches any single character.
|
|
1915
|
+
* - `*` (asterisk): Matches any number of characters, including zero.
|
|
1916
|
+
* - `~` (tilde followed by `?`, `*`, or `~`): Escapes the wildcard characters (`?` or `*`) to allow
|
|
1917
|
+
* searching for these literal characters in the text.
|
|
1918
|
+
*
|
|
1919
|
+
* Example usage:
|
|
1920
|
+
* ``` ts
|
|
1921
|
+
* // Search for text matching a RegEx pattern
|
|
1922
|
+
* const results: Iterator<ICell> = range.find({ text: "\\d+", useRegex: true }); // Finds numeric values
|
|
1923
|
+
*
|
|
1924
|
+
* // Search for text using wildcards
|
|
1925
|
+
* const results: Iterator<ICell> = range.find({ text: "abc*", useRegex: false }); // Finds text starting with "abc"
|
|
1926
|
+
* ```
|
|
1927
|
+
*/
|
|
1928
|
+
useRegex?: boolean;
|
|
1929
|
+
/**
|
|
1930
|
+
* An enum of the types of values to search within each field.
|
|
1931
|
+
*
|
|
1932
|
+
* @defaultValue `[FindField.Formulas]`
|
|
1933
|
+
*/
|
|
1934
|
+
fields?: ICell.Content[];
|
|
1935
|
+
}
|
|
1936
|
+
/**
|
|
1937
|
+
* Options for {@link ICellRange.find}.
|
|
1938
|
+
*/
|
|
1939
|
+
interface FindOptions extends FindCriteria {
|
|
1940
|
+
/**
|
|
1941
|
+
* The text to search for.
|
|
1942
|
+
*/
|
|
1943
|
+
text: string;
|
|
1944
|
+
/**
|
|
1945
|
+
* Provides custom logic for matching values during the find operation.
|
|
1946
|
+
*
|
|
1947
|
+
* @param value The current cell value being checked against the `criteria`.
|
|
1948
|
+
* @param matchDefault A default implementation of the find operation's matching logic.
|
|
1949
|
+
* You can call this in your custom logic to fall back to the default behavior if needed.
|
|
1950
|
+
* @param criteria The criteria that the find operation is trying to match.
|
|
1951
|
+
* This is typically defined by the user and passed to the find method.
|
|
1952
|
+
* @param context Contextual information about the cell, such as its address or value-related utilities.
|
|
1953
|
+
* See {@link ICell.IteratorContext} for more details.
|
|
1954
|
+
* @returns A boolean indicating if the `value` satisfies the `criteria`.
|
|
1955
|
+
*
|
|
1956
|
+
* @remarks
|
|
1957
|
+
* If `matchCustom` is provided, this function will override the default matching logic for the find operation.
|
|
1958
|
+
* Use it to implement custom search rules, while the `matchDefault` can be used as a fallback for standard criteria.
|
|
1959
|
+
*
|
|
1960
|
+
* Example usage:
|
|
1961
|
+
* ``` ts
|
|
1962
|
+
* const options = {
|
|
1963
|
+
* matchCustom: (value, matchDefault, criteria, context) => {
|
|
1964
|
+
* // Custom match logic
|
|
1965
|
+
* if (typeof value === 'string' && value.includes('important')) {
|
|
1966
|
+
* return true;
|
|
1967
|
+
* }
|
|
1968
|
+
* // Fallback to default match
|
|
1969
|
+
* return matchDefault();
|
|
1970
|
+
* }
|
|
1971
|
+
* };
|
|
1972
|
+
* ```
|
|
1973
|
+
*/
|
|
1974
|
+
matchCustom?: (value: Scalar, matchDefault: () => boolean, criteria: FindCriteria, context: ICell.IteratorContext) => boolean;
|
|
1975
|
+
/**
|
|
1976
|
+
* Specifies the direction of the search.
|
|
1977
|
+
*
|
|
1978
|
+
* @defaultValue IRange.Axis.Row
|
|
1979
|
+
*/
|
|
1980
|
+
axis?: IRange.Axis;
|
|
1981
|
+
/**
|
|
1982
|
+
* If `true`, the search will proceed in reverse order.
|
|
1983
|
+
*
|
|
1984
|
+
*
|
|
1985
|
+
* @defaultValue false
|
|
1986
|
+
*/
|
|
1987
|
+
reverse?: boolean;
|
|
1988
|
+
/**
|
|
1989
|
+
* The starting point for the search. If not provided, the search will start
|
|
1990
|
+
* from the top left corner of the range, or from the bottom right if `reverse` is true.
|
|
1991
|
+
*
|
|
1992
|
+
* @defaultValue top left corner or bottom right if reverse
|
|
1993
|
+
*/
|
|
1994
|
+
from?: ICell.Address;
|
|
1995
|
+
/**
|
|
1996
|
+
* If `true`, the search will not wrap around to the beginning of the range after reaching
|
|
1997
|
+
* the end. By default, the search will wrap.
|
|
1998
|
+
*
|
|
1999
|
+
* @defaultValue false
|
|
2000
|
+
*/
|
|
2001
|
+
disableWrap?: boolean;
|
|
2002
|
+
}
|
|
2003
|
+
/**
|
|
2004
|
+
* Represents an immutable reference to an `ICellRange`, capturing its content and metadata.
|
|
2005
|
+
* It may include complex objects such as tables, movables, images, listeners, or other items.
|
|
2006
|
+
*
|
|
2007
|
+
* `ISnapshot` can be provided to `ICellRange.copyFrom``.
|
|
2008
|
+
*/
|
|
2009
|
+
interface ISnapshot<T = any, J = any> {
|
|
2010
|
+
/**
|
|
2011
|
+
* Copies the snapshot to the specified range.
|
|
2012
|
+
*
|
|
2013
|
+
* @param destination The destination `ICellRange` where the snapshot will be copied.
|
|
2014
|
+
*
|
|
2015
|
+
* @returns A promise that resolves when the copy is complete, or `void` if no asynchronous operation is required.
|
|
2016
|
+
*/
|
|
2017
|
+
copyTo(destination: ICellRange, options?: ICellRange.CopyOptions): Promise<IRange.Coords | null> | IRange.Coords | null;
|
|
2018
|
+
/**
|
|
2019
|
+
* Return the options used when creating.
|
|
2020
|
+
* @remarks
|
|
2021
|
+
* This is done so that we can create a copy.
|
|
2022
|
+
*/
|
|
2023
|
+
getMarkOptions(): ICellRange.CopyOptions;
|
|
2024
|
+
/**
|
|
2025
|
+
* Retrieves the coordinates that bound the current snapshot.
|
|
2026
|
+
*
|
|
2027
|
+
* @returns The `IRange.Coords` defining the bounds of the snapshot.
|
|
2028
|
+
*/
|
|
2029
|
+
getCoords?(): Readonly<IRange.Coords>;
|
|
2030
|
+
/**
|
|
2031
|
+
* Converts the snapshot to a plain text representation.
|
|
2032
|
+
*
|
|
2033
|
+
* @returns A string or promise resolving to the text representation of the snapshot.
|
|
2034
|
+
*/
|
|
2035
|
+
toText?(): Promise<string> | string;
|
|
2036
|
+
/**
|
|
2037
|
+
* Converts the snapshot to an HTML representation.
|
|
2038
|
+
*
|
|
2039
|
+
* @returns A string or promise resolving to the HTML representation of the snapshot.
|
|
2040
|
+
*/
|
|
2041
|
+
toHtml?(): Promise<string> | string;
|
|
2042
|
+
/**
|
|
2043
|
+
* Converts the snapshot to an image blob.
|
|
2044
|
+
*
|
|
2045
|
+
* @returns A `Blob` or promise resolving to the image representation of the snapshot.
|
|
2046
|
+
*/
|
|
2047
|
+
toImage?(): Promise<Blob> | Blob;
|
|
2048
|
+
/**
|
|
2049
|
+
* Converts the snapshot to a JSON object.
|
|
2050
|
+
*
|
|
2051
|
+
* @returns A JSON object or promise resolving to the JSON representation of the snapshot.
|
|
2052
|
+
*/
|
|
2053
|
+
toJSON?(): Promise<J> | J;
|
|
2054
|
+
/**
|
|
2055
|
+
* The source that created the snapshot.
|
|
2056
|
+
* This is used by copy to quickly do comparisons.
|
|
2057
|
+
*/
|
|
2058
|
+
getSource(): T;
|
|
2059
|
+
/**
|
|
2060
|
+
* A user friendly name of a the snapshot item.
|
|
2061
|
+
*/
|
|
2062
|
+
getName?(): string;
|
|
2063
|
+
/**
|
|
2064
|
+
* For runtime type checking.
|
|
2065
|
+
*/
|
|
2066
|
+
readonly isISnapshot: true;
|
|
2067
|
+
}
|
|
2068
|
+
/**
|
|
2069
|
+
* Callback used for visiting a collection of cells. If break is returned the visiting will stop with the
|
|
2070
|
+
* break value returned.
|
|
2071
|
+
*
|
|
2072
|
+
* The context allows for the retrieval of additional information associated with the Cell include the
|
|
2073
|
+
* {@link ICell} object.
|
|
2074
|
+
*/
|
|
2075
|
+
interface ForEachCallback<T = any> {
|
|
2076
|
+
(value: Scalar, context: ICell.IteratorContext): {
|
|
2077
|
+
break: T;
|
|
2078
|
+
} | void;
|
|
2079
|
+
}
|
|
2080
|
+
/**
|
|
2081
|
+
* The public feature vocabulary — what a cell or range *carries*, as a queryable dimension.
|
|
2082
|
+
*
|
|
2083
|
+
* @remarks
|
|
2084
|
+
* This is the agent-facing read vocabulary: `getCounts`, `getRegions` and `isContentful`
|
|
2085
|
+
* select by it, and the agent read tools (grep, the regions read) use the same words. It is deliberately distinct
|
|
2086
|
+
* from {@link ICell.Content}, the *transfer* vocabulary (`clear`, `copyFrom`) — "paste formats" is a
|
|
2087
|
+
* coarse transfer bucket, while querying wants the split parts (`Fill`, `Border`,
|
|
2088
|
+
* `NumberFormat`…). One enum serving both jobs is how the vocabulary got muddy the first time.
|
|
2089
|
+
*
|
|
2090
|
+
* Members map onto the engine's per-feature spatial indexes. The mapping is internal and not
|
|
2091
|
+
* one-to-one: several features may project from one index (`NumberFormat`/`Alignment`/`Font`
|
|
2092
|
+
* over the content-style map). `Notes` joins when the backing is implemented; a feature that
|
|
2093
|
+
* silently reports nothing is worse than a missing one.
|
|
2094
|
+
*
|
|
2095
|
+
* `String`/`Number`/`Boolean` are deliberately absent, even though they are real `ScalarType`
|
|
2096
|
+
* values. This vocabulary is for things with a spatial identity — a fill, a formula, an
|
|
2097
|
+
* occupied cell — and a scalar kind has none: it is read straight off the value, which is
|
|
2098
|
+
* exactly the one pass `IRangeStats.getTypedCounts()` already makes, richer (it composes with
|
|
2099
|
+
* aggregates and frequencies for free, in the same call). `getCounts`/`getRegions`/
|
|
2100
|
+
* `isContentful` were never the right vocabulary for "how many numbers" — `range.getStats()` is.
|
|
2101
|
+
*
|
|
2102
|
+
* `Error` stays, for a reason unrelated to the above: it has real spatial identity of its own
|
|
2103
|
+
* (the reconciled error view) and partitions like any stored feature — it was never in the same
|
|
2104
|
+
* boat as the other three. `DateFormat` stays too, but as exactly what its name says: a
|
|
2105
|
+
* formatting predicate, the same tier as `NumberFormat`/`Alignment`/`Font`, not a value kind — it
|
|
2106
|
+
* answers *"does this cell carry a date-category number format"*, nothing about what the value
|
|
2107
|
+
* underneath actually is. A caller after "how many cells are genuinely dates" (numeric value AND
|
|
2108
|
+
* that format) composes it: `DateFormat` regions intersected with `getStats().getTypedCounts()`'s
|
|
2109
|
+
* `Number` — there is deliberately no single feature that already does that intersection, because
|
|
2110
|
+
* "is this a date" is a computed fact about a cell's *value*, read through `getInteropType()`, not
|
|
2111
|
+
* a thing this vocabulary partitions on.
|
|
2112
|
+
*/
|
|
2113
|
+
const Feature: {
|
|
2114
|
+
/**
|
|
2115
|
+
* Occupancy — splits on blank/non-blank, Excel `CurrentRegion` semantics.
|
|
2116
|
+
*/
|
|
2117
|
+
readonly Contentful: "contentful";
|
|
2118
|
+
/**
|
|
2119
|
+
* Direct date-category number format — `yyyy-mm-dd`, `mm/dd/yyyy`, and the like.
|
|
2120
|
+
*
|
|
2121
|
+
* @remarks
|
|
2122
|
+
* A formatting predicate, not a value kind: a blank cell or a text cell formatted this way
|
|
2123
|
+
* carries `DateFormat` too, the same way a blank cell can carry `Fill`. It says nothing about
|
|
2124
|
+
* whether the cell holds a genuine date — that is a question about the VALUE (numeric value
|
|
2125
|
+
* under this format), answered by `getInteropType()` on the cell, not by this feature. See
|
|
2126
|
+
* this enum's own remarks for why the two are kept apart rather than fused into one "Date"
|
|
2127
|
+
* concept.
|
|
2128
|
+
*/
|
|
2129
|
+
readonly DateFormat: "dateFormat";
|
|
2130
|
+
/** Scalar kind: error values (`#DIV/0!`, `#N/A`, …), literal or calculated. */
|
|
2131
|
+
readonly Error: "error";
|
|
2132
|
+
/** Has a formula. Regions group by canonical R1C1 — a shared formula block is one region. */
|
|
2133
|
+
readonly Formula: "formula";
|
|
2134
|
+
/** Cells inside a dynamic-array spill zone. Writing into one is a real failure mode. */
|
|
2135
|
+
readonly Spills: "spills";
|
|
2136
|
+
/**
|
|
2137
|
+
* Evaluated state: cells whose calculation itself failed — mostly circular references.
|
|
2138
|
+
* Distinct from {@link Feature.Error}: `#DIV/0!` is a successfully calculated error VALUE
|
|
2139
|
+
* (the `Error` kind); `CalcError` is the engine failing to evaluate at all.
|
|
2140
|
+
*/
|
|
2141
|
+
readonly CalcError: "calcError";
|
|
2142
|
+
/** Direct fill. */
|
|
2143
|
+
readonly Fill: "fill";
|
|
2144
|
+
/** Direct borders. */
|
|
2145
|
+
readonly Border: "border";
|
|
2146
|
+
/** Direct number format. Region payloads carry the format string and its category. */
|
|
2147
|
+
readonly NumberFormat: "numberFormat";
|
|
2148
|
+
/** Direct alignment. */
|
|
2149
|
+
readonly Alignment: "alignment";
|
|
2150
|
+
/** Direct font. */
|
|
2151
|
+
readonly Font: "font";
|
|
2152
|
+
/** Merged spans. */
|
|
2153
|
+
readonly Merge: "merge";
|
|
2154
|
+
/** Table membership. */
|
|
2155
|
+
readonly Table: "table";
|
|
2156
|
+
/** Auto-table membership. */
|
|
2157
|
+
readonly AutoTable: "autoTable";
|
|
2158
|
+
/** Has a hyperlink. */
|
|
2159
|
+
readonly Hyperlink: "hyperlink";
|
|
2160
|
+
/** Has comments. */
|
|
2161
|
+
readonly Comments: "comments";
|
|
2162
|
+
/** Explicitly unlocked cells — *can I write here* is a precondition, not a detail. */
|
|
2163
|
+
readonly Unlock: "unlock";
|
|
2164
|
+
/** Cells under conditional-format rules. */
|
|
2165
|
+
readonly Conditionals: "conditionals";
|
|
2166
|
+
/** Cells under data-validation rules. */
|
|
2167
|
+
readonly DataValidations: "dataValidations";
|
|
2168
|
+
};
|
|
2169
|
+
type Feature = typeof Feature[keyof typeof Feature];
|
|
2170
|
+
/**
|
|
2171
|
+
* Per-feature cell counts.
|
|
2172
|
+
*
|
|
2173
|
+
* @remarks
|
|
2174
|
+
* Total, not partial — every public {@link ICellRange.Feature} is present, absent features
|
|
2175
|
+
* as explicit zeros. A zero is a fact about the range; a missing key would be ambiguous.
|
|
2176
|
+
*
|
|
2177
|
+
* The brand is non-enumerable: `Object.keys`/`entries` yield exactly the feature keys.
|
|
2178
|
+
*/
|
|
2179
|
+
interface Counts extends Readonly<Record<ICellRange.Feature, number>> {
|
|
2180
|
+
/**
|
|
2181
|
+
* For runtime type checking.
|
|
2182
|
+
*/
|
|
2183
|
+
readonly isICellRangeCounts: true;
|
|
2184
|
+
}
|
|
2185
|
+
/**
|
|
2186
|
+
* Options for {@link ICellRange.getRegions}.
|
|
2187
|
+
*
|
|
2188
|
+
* @remarks
|
|
2189
|
+
* The traversal keys are the standard {@link ICellRange.IteratorOptions} ones, meaning what
|
|
2190
|
+
* they mean everywhere else. `features` is the same list as the positional argument — for a
|
|
2191
|
+
* partition, the features resolved and the features partitioned on are necessarily one list —
|
|
2192
|
+
* so the argument is simply its shorthand.
|
|
2193
|
+
*
|
|
2194
|
+
* **`Pick`, not `Omit`, and deliberately.** A partition is not a cell visitation, so the rest
|
|
2195
|
+
* of `IteratorOptions` has nothing to act on: `includeEmpty` (regions come from the feature
|
|
2196
|
+
* indexes, and the blank side of the partition is not yielded at all), `reuseContext` and
|
|
2197
|
+
* `includeMergeOverflow` (there is no per-cell `IteratorContext` to reuse or overflow into),
|
|
2198
|
+
* `injectReferences` (which ignores features by its own contract), and `address` (the queried
|
|
2199
|
+
* range IS the bounds — a second one would be ambiguous). Widening to `Omit` would advertise
|
|
2200
|
+
* five options that silently do nothing, and a feature that silently reports nothing is worse
|
|
2201
|
+
* than a missing one.
|
|
2202
|
+
*/
|
|
2203
|
+
interface GetRegionsOptions extends Pick<ICellRange.IteratorOptions, 'features' | 'axis' | 'reverse' | 'ignoreHidden'> {
|
|
2204
|
+
/**
|
|
2205
|
+
* How a stored feature block must relate to the queried range to be included.
|
|
2206
|
+
*
|
|
2207
|
+
* @defaultValue 'intersects' — blocks straddling the boundary are included, clipped to the
|
|
2208
|
+
* range. `'fullyContained'` yields only blocks entirely inside it.
|
|
2209
|
+
*/
|
|
2210
|
+
containment?: 'intersects' | 'fullyContained';
|
|
2211
|
+
}
|
|
2212
|
+
interface ScrollIntoViewOptions extends globalThis.ScrollIntoViewOptions {
|
|
2213
|
+
/**
|
|
2214
|
+
* If provided then will only scroll in the provided axis.
|
|
2215
|
+
*
|
|
2216
|
+
* @remarks
|
|
2217
|
+
* This is useful for only scrolling vertically or horizontally for insert/deleteCells
|
|
2218
|
+
*/
|
|
2219
|
+
axis?: IRange.Axis;
|
|
2220
|
+
}
|
|
2221
|
+
/**
|
|
2222
|
+
* Extends SelectionOptions to include the option to adjust the anchor cell.
|
|
2223
|
+
*/
|
|
2224
|
+
interface SelectOptions extends ITypes.SelectOptions {
|
|
2225
|
+
/**
|
|
2226
|
+
* If `true` then the anchor cell will be adjusted to the top-left cell of the range.
|
|
2227
|
+
*
|
|
2228
|
+
* @defaultValue false
|
|
2229
|
+
*
|
|
2230
|
+
* @remarks
|
|
2231
|
+
* If the current anchor is not within the current range this will be forced to `true`.
|
|
2232
|
+
*/
|
|
2233
|
+
anchor?: boolean | Partial<IRange.CellCoords>;
|
|
2234
|
+
/**
|
|
2235
|
+
* If `true` or if a valid `ScrollIntoViewOptions` object is provided,
|
|
2236
|
+
* the selected element will be scrolled into view.
|
|
2237
|
+
*
|
|
2238
|
+
* @remarks
|
|
2239
|
+
* - If a `ScrollIntoViewOptions` object is provided, it will control the exact scrolling behavior.
|
|
2240
|
+
* - If `false` (or omitted), the selected element will not be scrolled into view.
|
|
2241
|
+
*
|
|
2242
|
+
* @defaultValue false
|
|
2243
|
+
*/
|
|
2244
|
+
scrollIntoView?: boolean | ICellRange.ScrollIntoViewOptions;
|
|
2245
|
+
/**
|
|
2246
|
+
* If `true`, the currently selected sheet will not change as part of the selection.
|
|
2247
|
+
* By default, selecting a range will also select its parent sheet, matching Excel behavior.
|
|
2248
|
+
*
|
|
2249
|
+
* @defaultValue false
|
|
2250
|
+
*/
|
|
2251
|
+
preserveSelectedSheet?: boolean;
|
|
2252
|
+
}
|
|
2253
|
+
/**
|
|
2254
|
+
* Options for customizing how values are retrieved from a range and returned as a 2D array.
|
|
2255
|
+
*/
|
|
2256
|
+
interface IteratorOptions<T = ICellRange.Address> {
|
|
2257
|
+
/**
|
|
2258
|
+
* The containing range coords for the scan.
|
|
2259
|
+
*
|
|
2260
|
+
* @remarks
|
|
2261
|
+
* If not specified will scan all of the data.
|
|
2262
|
+
*/
|
|
2263
|
+
address?: T;
|
|
2264
|
+
/**
|
|
2265
|
+
* If `true` will visit empty cells.
|
|
2266
|
+
* This is a potentially huge performance improvement if set to `false`.
|
|
2267
|
+
*
|
|
2268
|
+
* @defaultValue false
|
|
2269
|
+
*
|
|
2270
|
+
* @remarks
|
|
2271
|
+
* If includeEmpty is `true` this will always return rectangular results.
|
|
2272
|
+
* If bounds are provided it will provide empty spaces before and after.
|
|
2273
|
+
* If passing a large bound care must be taken.
|
|
2274
|
+
*/
|
|
2275
|
+
includeEmpty?: boolean;
|
|
2276
|
+
/**
|
|
2277
|
+
* When scanning skip cells that are hidden via headers.
|
|
2278
|
+
*
|
|
2279
|
+
* @defaultValue false
|
|
2280
|
+
*
|
|
2281
|
+
* @remarks
|
|
2282
|
+
* Optionally a header axis for skipping case be passed in.
|
|
2283
|
+
* An example of this is for sorting where the sort direction (row) skips hidden rows but the column direction does not.
|
|
2284
|
+
*/
|
|
2285
|
+
ignoreHidden?: boolean | IRange.Axis;
|
|
2286
|
+
/**
|
|
2287
|
+
* The features the iteration resolves and visits.
|
|
2288
|
+
*
|
|
2289
|
+
* @defaultValue all features
|
|
2290
|
+
*
|
|
2291
|
+
* @remarks
|
|
2292
|
+
* Two effects, both wins for a caller that does not need everything:
|
|
2293
|
+
* - The iterator only materializes the requested features' state onto the context — an
|
|
2294
|
+
* excluded feature is never even looked up.
|
|
2295
|
+
* - **Cells that exist only through an excluded feature are not visited at all.** A
|
|
2296
|
+
* fill-only cell does not appear in a `features` scan that excludes `Fill` — the render
|
|
2297
|
+
* path that only paints content stops receiving cells with nothing to paint.
|
|
2298
|
+
*
|
|
2299
|
+
* An empty list is the raw-value fast path — no feature state is resolved at all.
|
|
2300
|
+
*/
|
|
2301
|
+
features?: ICellRange.Feature | readonly ICellRange.Feature[];
|
|
2302
|
+
/**
|
|
2303
|
+
* Includes any merge overflow in first element visited.
|
|
2304
|
+
*
|
|
2305
|
+
* @defaultValue false
|
|
2306
|
+
*
|
|
2307
|
+
* @remarks
|
|
2308
|
+
* If `true` any merges that fall outside of the range will be include in the top/left most cell that the
|
|
2309
|
+
* merge intersects. Useful for rendering merged cells when the top/left is outside the viewport.
|
|
2310
|
+
*/
|
|
2311
|
+
includeMergeOverflow?: boolean;
|
|
2312
|
+
/**
|
|
2313
|
+
* The direction of the scan.
|
|
2314
|
+
* @defaultValue `IRange.Axis.Row`
|
|
2315
|
+
*/
|
|
2316
|
+
axis?: IRange.Axis;
|
|
2317
|
+
/**
|
|
2318
|
+
* Iterate in reverse order.
|
|
2319
|
+
*
|
|
2320
|
+
* @defaultValue false
|
|
2321
|
+
*/
|
|
2322
|
+
reverse?: boolean;
|
|
2323
|
+
/**
|
|
2324
|
+
* If set to `true` a single `IteratorContext` is reused for every visited cell instead of
|
|
2325
|
+
* allocating a new one per cell.
|
|
2326
|
+
*
|
|
2327
|
+
* @defaultValue false
|
|
2328
|
+
*
|
|
2329
|
+
* @remarks
|
|
2330
|
+
* This is a performance optimization for hot read paths (e.g. rendering).
|
|
2331
|
+
* **UNSAFE** for consumers that retain the `context` (or the `Entry`) past the next `next()`
|
|
2332
|
+
* call - the retained reference will reflect the most recently visited cell, not the one it was
|
|
2333
|
+
* captured at. Only enable this when the context is consumed inline within the visitor/loop body
|
|
2334
|
+
* (e.g. by calling `getCell()`, which snapshots the state).
|
|
2335
|
+
*/
|
|
2336
|
+
reuseContext?: boolean;
|
|
2337
|
+
/**
|
|
2338
|
+
* Inject custom references for the iterator.
|
|
2339
|
+
*
|
|
2340
|
+
* @remarks
|
|
2341
|
+
* This is used to allow for iterators to inject custom references.
|
|
2342
|
+
*
|
|
2343
|
+
* * Ignores Features
|
|
2344
|
+
* * These will get available in the {@link ICell.IteratorContext.getInjectedReference}.
|
|
2345
|
+
* * Used when wanting to iterate over externally managed references
|
|
2346
|
+
* * **NOTE** - This is a 2D array.
|
|
2347
|
+
* * **NOTE** - The iterator treats values as read-only but the visitors may modify the references.
|
|
2348
|
+
*/
|
|
2349
|
+
injectReferences?: IRange.JSONReference<any>[][];
|
|
2350
|
+
}
|
|
2351
|
+
interface Event {
|
|
2352
|
+
/**
|
|
2353
|
+
* The source of the event. This will be a readonly range.
|
|
2354
|
+
*
|
|
2355
|
+
* @remarks
|
|
2356
|
+
* This may change shape due to insert/delete/move of cells or sheets.
|
|
2357
|
+
*/
|
|
2358
|
+
getSource<T = ICellRange | ICellRanges>(): T;
|
|
2359
|
+
/**
|
|
2360
|
+
* This is the range of data that has been changed.
|
|
2361
|
+
*
|
|
2362
|
+
* @remarks
|
|
2363
|
+
* This is different than the source range as that is the entire range area that was listened to.
|
|
2364
|
+
*/
|
|
2365
|
+
getFrom(): ICellRanges;
|
|
2366
|
+
/**
|
|
2367
|
+
* Used for moves. Represents the new location of the data that has changed.
|
|
2368
|
+
*/
|
|
2369
|
+
getTo?(): ICellRange;
|
|
2370
|
+
/**
|
|
2371
|
+
* Returns a list of updates that occurred during the event. This is only available for data change events and will be `null` for address or restore events.
|
|
2372
|
+
*/
|
|
2373
|
+
/**
|
|
2374
|
+
* Indicates the type of change that triggered the event.
|
|
2375
|
+
*
|
|
2376
|
+
* @remarks
|
|
2377
|
+
* * `'data'`: Data within the range has changed.
|
|
2378
|
+
* The range's address and dimensions remain the same.
|
|
2379
|
+
* * `'address'`: The range's *address* or *dimensions* have changed. This
|
|
2380
|
+
* occurs due to row/column insertions, deletions, or move operations.
|
|
2381
|
+
* * `'restore'`: The range has been restored to a different revision
|
|
2382
|
+
* (undo/redo). The 'restore' trigger is not available for transactional listeners.
|
|
2383
|
+
*/
|
|
2384
|
+
readonly trigger2?: 'data' | 'address' | 'restore';
|
|
2385
|
+
readonly trigger: string;
|
|
2386
|
+
/**
|
|
2387
|
+
* Indicates if the event is being fired from an undo event.
|
|
2388
|
+
*/
|
|
2389
|
+
readonly isUndo?: boolean;
|
|
2390
|
+
/**
|
|
2391
|
+
* Returns the transaction Id if the event is occurring in a transaction otherwise `null`.
|
|
2392
|
+
*
|
|
2393
|
+
* @see
|
|
2394
|
+
* {@link ListenerOptions.getTransactionId}
|
|
2395
|
+
*/
|
|
2396
|
+
getTransactionId(): string | null;
|
|
2397
|
+
/**
|
|
2398
|
+
* Indicates if the event is being fired due to a cell value change.
|
|
2399
|
+
*
|
|
2400
|
+
* @see
|
|
2401
|
+
* {@link ListenerOptions.ignoreDataChanges}
|
|
2402
|
+
*/
|
|
2403
|
+
readonly isDataChange?: boolean;
|
|
2404
|
+
/**
|
|
2405
|
+
* To string the event.
|
|
2406
|
+
*/
|
|
2407
|
+
toString(): string;
|
|
2408
|
+
/**
|
|
2409
|
+
* The timestamp of the event.
|
|
2410
|
+
*/
|
|
2411
|
+
readonly timeStamp: number;
|
|
2412
|
+
}
|
|
2413
|
+
/**
|
|
2414
|
+
* Represents a listen for a range. The listener will be called when the range's
|
|
2415
|
+
* data, address, or restore state changes, subject to the provided options.
|
|
2416
|
+
*
|
|
2417
|
+
* @remarks
|
|
2418
|
+
* If the range is deleted (rows/columns removed), the trigger will be `'address'`
|
|
2419
|
+
* `trigger` of `'address'` and `getRange().getError()`
|
|
2420
|
+
* returning `"#REF!"`.
|
|
2421
|
+
*
|
|
2422
|
+
* If the ranges is restored to a revision *before* the listener was
|
|
2423
|
+
* added, the listener will receive event with a `trigger` of `'restore'`
|
|
2424
|
+
* and `getRange().getError()` returning `"#N/A"`.
|
|
2425
|
+
*/
|
|
2426
|
+
interface Listener {
|
|
2427
|
+
(event: ICellRange.Event): void;
|
|
2428
|
+
}
|
|
2429
|
+
/**
|
|
2430
|
+
* Receives a watch's results — one value per cell of the watched range, read with LOCAL
|
|
2431
|
+
* coordinates (`getValueAt(0, 0)` is the range's top-left).
|
|
2432
|
+
*
|
|
2433
|
+
* @see {@link ICellRange.addWatch}
|
|
2434
|
+
*
|
|
2435
|
+
* @remarks
|
|
2436
|
+
* A cell whose evaluation errored carries the error as its value, the same as any block
|
|
2437
|
+
* evaluation; the watch does not fail as a whole because one cell did.
|
|
2438
|
+
*/
|
|
2439
|
+
interface WatchCallback {
|
|
2440
|
+
(values: IRange): void;
|
|
2441
|
+
}
|
|
2442
|
+
/**
|
|
2443
|
+
* Options to control which events trigger a listener. By default, all
|
|
2444
|
+
* event types will trigger the listener. Setting any of these options to
|
|
2445
|
+
* `true` will *prevent* the listener from being called for that event type.
|
|
2446
|
+
*/
|
|
2447
|
+
interface ListenerOptions {
|
|
2448
|
+
/**
|
|
2449
|
+
* The actual range can also change due to insert/removes or delete of a sheet.
|
|
2450
|
+
* Setting absoluteCoords to `true` will ignore shifts in the range.
|
|
2451
|
+
*
|
|
2452
|
+
* @defaultValue false
|
|
2453
|
+
*/
|
|
2454
|
+
ignoreShifts?: boolean;
|
|
2455
|
+
/**
|
|
2456
|
+
* If `true`, the listener will *not* be called when the range's
|
|
2457
|
+
* address changes (due to row/column insert/delete, or moves)
|
|
2458
|
+
*
|
|
2459
|
+
* @defaultValue false
|
|
2460
|
+
*/
|
|
2461
|
+
ignoreAddressChanges?: boolean;
|
|
2462
|
+
/**
|
|
2463
|
+
* If `true`, the listener will be treated as *transactional*. This has
|
|
2464
|
+
* a few implications:
|
|
2465
|
+
*
|
|
2466
|
+
* 1. **Synchronous Execution:** The listener will be called *synchronously*
|
|
2467
|
+
* as part of the same transaction that triggered the event. Any
|
|
2468
|
+
* side-effects of the listener will be included in the transaction's
|
|
2469
|
+
* commit history.
|
|
2470
|
+
* 2. **No 'restore' Events:** Transactional listeners will *never* receive
|
|
2471
|
+
* 'restore' events. They are only concerned with changes within the
|
|
2472
|
+
* current transaction.
|
|
2473
|
+
*
|
|
2474
|
+
* If `false` (the default), the listener will be called *asynchronously*
|
|
2475
|
+
* after the transaction is complete. The listener's side-effects will
|
|
2476
|
+
* *not* be part of the transaction's commit history.
|
|
2477
|
+
*
|
|
2478
|
+
* @defaultValue false
|
|
2479
|
+
*/
|
|
2480
|
+
transactional?: boolean;
|
|
2481
|
+
/**
|
|
2482
|
+
* If `true`, the listener will *not* be called when the data
|
|
2483
|
+
* within the range changes.
|
|
2484
|
+
*
|
|
2485
|
+
* @defaultValue false
|
|
2486
|
+
*/
|
|
2487
|
+
ignoreDataChanges?: boolean;
|
|
2488
|
+
/**
|
|
2489
|
+
* If `true` then the listener will be weakly and will be auto removed it the listener is gc'ed.
|
|
2490
|
+
*
|
|
2491
|
+
* @defaultValue false
|
|
2492
|
+
*/
|
|
2493
|
+
weakly?: boolean;
|
|
2494
|
+
/**
|
|
2495
|
+
* If `true` then will auto deregister once fired.
|
|
2496
|
+
*/
|
|
2497
|
+
once?: boolean;
|
|
2498
|
+
}
|
|
2499
|
+
/**
|
|
2500
|
+
* Entry for ICellRange when iterator or visiting.
|
|
2501
|
+
*/
|
|
2502
|
+
interface Entry<T = Scalar> {
|
|
2503
|
+
/** {@inheritDoc Scalar} */
|
|
2504
|
+
value: T;
|
|
2505
|
+
/** {@inheritDoc ICell.IteratorContext} */
|
|
2506
|
+
context: ICell.IteratorContext;
|
|
2507
|
+
}
|
|
2508
|
+
}
|
|
2509
|
+
//# sourceMappingURL=ICellRange.d.ts.map
|