@sheetxl/sdk 0.7.26 → 0.7.28-beta.1
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/B7_pDFYCVzt-3hUs.cjs +1 -0
- package/browser/cjs/D590vnHyyrIYenQ7.cjs +33 -0
- package/browser/cjs/DfVZ_U2YapkL3Y3y.cjs +1 -0
- package/browser/cjs/DsII2GRIYGbaZjIE.cjs +1 -0
- package/browser/cjs/Dv3x6zut1ZRUt3IF.cjs +10 -0
- package/browser/cjs/index.cjs +3 -6
- package/browser/cjs/nE4y6hua6AwWSil7.cjs +1 -0
- package/browser/cjs/nMss3hrHzgX9s6dC.cjs +57 -0
- package/browser/esm/AyOmyt_vaPirbWnn.mjs +49986 -0
- package/browser/esm/BJ5lU2Y0r4Vy8n4q.mjs +109 -0
- package/browser/esm/BvaEmG7AaTSm7dFt.mjs +818 -0
- package/browser/esm/CWKJatjtHKfWtM2b.mjs +503 -0
- package/browser/esm/CkhE5KvHQvKzw4Ll.mjs +4436 -0
- package/browser/esm/Dpwf1IgHZjpEpK-K.mjs +24 -0
- package/browser/esm/index.mjs +3225 -62
- package/browser/esm/uFvYxePB3xD2HrP0.mjs +14 -0
- package/licenses/dependencies.txt +74 -193
- package/node/esm/CYXOvL3qwWeDE0xf.mjs +114 -0
- package/node/esm/Dgmq_XXiU2AQw1tX.mjs +22 -0
- package/node/esm/index.mjs +53619 -23254
- package/node/esm/qxrG4h6T0dAo8eZ6.mjs +837 -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 -21294
- package/types/scripting-enums.json +1009 -0
- package/types/scripting.d.ts +26540 -31455
- package/types/src/address/AddressUtils.d.ts +252 -0
- package/types/src/address/_AddressMessages.d.ts +7 -0
- package/types/src/address/index.d.ts +35 -0
- package/types/src/anchored/AbstractAnchored.d.ts +200 -0
- package/types/src/anchored/Anchored.d.ts +154 -0
- package/types/src/anchored/AnchoredMap.d.ts +178 -0
- package/types/src/anchored/IAnchored.d.ts +118 -0
- package/types/src/anchored/IAnchoredMap.d.ts +207 -0
- package/types/src/anchored/_AnchorMessages.d.ts +3 -0
- package/types/src/anchored/index.d.ts +2 -0
- package/types/src/autoFill/AutoFill.d.ts +161 -0
- package/types/src/autoFill/IAutoFill.d.ts +117 -0
- package/types/src/autoFill/index.d.ts +3 -0
- package/types/src/border/IBorder.d.ts +284 -0
- package/types/src/border/index.d.ts +2 -0
- package/types/src/calculation/Calculation.d.ts +440 -0
- package/types/src/calculation/FormulaLiterals.d.ts +18 -0
- package/types/src/calculation/ICalculation.d.ts +1016 -0
- package/types/src/calculation/INamedFormulasCollection.d.ts +141 -0
- package/types/src/calculation/NamedFormulaCollection.d.ts +671 -0
- package/types/src/calculation/TokenType.d.ts +117 -0
- package/types/src/calculation/Types.d.ts +110 -0
- package/types/src/calculation/_CalculationMessages.d.ts +3 -0
- package/types/src/calculation/builtInNames.d.ts +2 -0
- package/types/src/calculation/compiler/ASTTypes.d.ts +180 -0
- package/types/src/calculation/compiler/CompilerLocale.d.ts +69 -0
- package/types/src/calculation/compiler/CompilerUtils.d.ts +331 -0
- package/types/src/calculation/compiler/FormulaCompiler.d.ts +69 -0
- package/types/src/calculation/compiler/FormulaLexer.d.ts +85 -0
- package/types/src/calculation/compiler/FormulaParser.d.ts +270 -0
- package/types/src/calculation/compiler/FormulaSeparators.d.ts +35 -0
- package/types/src/calculation/compiler/LiteTransform.d.ts +15 -0
- package/types/src/calculation/compiler/ParserUtils.d.ts +167 -0
- package/types/src/calculation/compiler/SRLexer.d.ts +19 -0
- package/types/src/calculation/compiler/SRParser.d.ts +38 -0
- package/types/src/calculation/compiler/Types.d.ts +274 -0
- package/types/src/calculation/compiler/index.d.ts +3 -0
- package/types/src/calculation/executor/CalcExecutor.d.ts +115 -0
- package/types/src/calculation/executor/CalcExecutorUtils.d.ts +11 -0
- package/types/src/calculation/executor/index.d.ts +3 -0
- package/types/src/calculation/formula/Formula.d.ts +168 -0
- package/types/src/calculation/formula/FormulaBlock.d.ts +207 -0
- package/types/src/calculation/formula/IFormulaBlock.d.ts +181 -0
- package/types/src/calculation/formula/LambdaValue.d.ts +166 -0
- package/types/src/calculation/formula/TokenUtils.d.ts +26 -0
- package/types/src/calculation/formula/index.d.ts +4 -0
- package/types/src/calculation/functions/Operators.d.ts +30 -0
- package/types/src/calculation/functions/index.d.ts +2 -0
- package/types/src/calculation/functions/initializeFunctions.d.ts +22 -0
- package/types/src/calculation/grid/CalcGrid.d.ts +205 -0
- package/types/src/calculation/grid/CalcGridUtils.d.ts +172 -0
- package/types/src/calculation/grid/ICalcGrid.d.ts +500 -0
- package/types/src/calculation/grid/index.d.ts +3 -0
- package/types/src/calculation/index.d.ts +5 -0
- package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts +25 -0
- package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +120 -0
- package/types/src/calculation/spatial/PrecedentSpatialValue.d.ts +115 -0
- package/types/src/calculation/spatial/SpillEntry.d.ts +40 -0
- package/types/src/calculation/spatial/index.d.ts +5 -0
- package/types/src/calculation/state/CalcNode.d.ts +71 -0
- package/types/src/calculation/state/CalcScope.d.ts +35 -0
- package/types/src/calculation/state/CalcState.d.ts +28 -0
- package/types/src/calculation/state/CalculationContext.d.ts +125 -0
- package/types/src/calculation/state/IContextContainer.d.ts +320 -0
- package/types/src/calculation/state/index.d.ts +6 -0
- package/types/src/calculation/symbol/FunctionSymbolProvider.d.ts +44 -0
- package/types/src/calculation/symbol/ISymbolRegistry.d.ts +93 -0
- package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts +144 -0
- package/types/src/calculation/symbol/SheetSymbolProvider.d.ts +18 -0
- package/types/src/calculation/symbol/SymbolRegistry.d.ts +19 -0
- package/types/src/calculation/symbol/TableColumnSymbolProvider.d.ts +21 -0
- package/types/src/calculation/symbol/TableSymbolProvider.d.ts +19 -0
- package/types/src/calculation/symbol/index.d.ts +9 -0
- package/types/src/cell/ICell.d.ts +672 -0
- package/types/src/cell/ICellHeader.d.ts +142 -0
- package/types/src/cell/ICellProtection.d.ts +41 -0
- package/types/src/cell/index.d.ts +4 -0
- package/types/src/cellRange/ICellHeaderRange.d.ts +306 -0
- package/types/src/cellRange/ICellHeaderRanges.d.ts +107 -0
- package/types/src/cellRange/ICellRange.d.ts +2509 -0
- package/types/src/cellRange/ICellRanges.d.ts +407 -0
- package/types/src/cellRange/ICellRegion.d.ts +133 -0
- package/types/src/cellRange/_GraphNode.d.ts +38 -0
- package/types/src/cellRange/index.d.ts +6 -0
- package/types/src/chart/Chart.d.ts +53 -0
- package/types/src/chart/IChart.d.ts +42 -0
- package/types/src/chart/index.d.ts +5 -0
- package/types/src/collections/ArraysGrid.d.ts +72 -0
- package/types/src/collections/BooleanList.d.ts +67 -0
- package/types/src/collections/GridMap.d.ts +47 -0
- package/types/src/collections/HashMap.d.ts +15 -0
- package/types/src/collections/IGrid.d.ts +278 -0
- package/types/src/collections/IList.d.ts +89 -0
- package/types/src/collections/IMap.d.ts +45 -0
- package/types/src/collections/IReadableList.d.ts +120 -0
- package/types/src/collections/ISortedMap.d.ts +171 -0
- package/types/src/collections/ISparseGrid.d.ts +61 -0
- package/types/src/collections/ISparseList.d.ts +103 -0
- package/types/src/collections/ISpatialMap.d.ts +515 -0
- package/types/src/collections/ISpatialMap3D.d.ts +116 -0
- package/types/src/collections/IWritableList.d.ts +41 -0
- package/types/src/collections/ImmutableList.d.ts +52 -0
- package/types/src/collections/IteratorUtils.d.ts +91 -0
- package/types/src/collections/MixedTypedArrayList.d.ts +140 -0
- package/types/src/collections/OverlappingRangeIterator.d.ts +91 -0
- package/types/src/collections/RTree.d.ts +111 -0
- package/types/src/collections/RepeatingList.d.ts +20 -0
- package/types/src/collections/SortedMap.d.ts +396 -0
- package/types/src/collections/SparseGrid.d.ts +99 -0
- package/types/src/collections/SparseList.d.ts +90 -0
- package/types/src/collections/SpatialMap.d.ts +102 -0
- package/types/src/collections/SpatialMap3D.d.ts +64 -0
- package/types/src/collections/Tuple.d.ts +160 -0
- package/types/src/collections/_CollectionUtils.d.ts +25 -0
- package/types/src/collections/_GridUtils.d.ts +268 -0
- package/types/src/collections/_RunUtils.d.ts +170 -0
- package/types/src/collections/_SpatialUtils.d.ts +115 -0
- package/types/src/collections/index.d.ts +21 -0
- package/types/src/color/Color.d.ts +120 -0
- package/types/src/color/ColorSpace.d.ts +45 -0
- package/types/src/color/IColor.d.ts +1110 -0
- package/types/src/color/_BuiltInIndexDefs.d.ts +4 -0
- package/types/src/color/_BuiltInNamedDefs.d.ts +29 -0
- package/types/src/color/_BuiltInSchemeDefs.d.ts +7 -0
- package/types/src/color/_ColorUtils.d.ts +93 -0
- package/types/src/color/index.d.ts +3 -0
- package/types/src/comment/IComment.d.ts +108 -0
- package/types/src/comment/index.d.ts +2 -0
- package/types/src/condition/AnchoredConditional.d.ts +263 -0
- package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +83 -0
- package/types/src/condition/BuiltInOperators/AfterEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/AfterOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/AndOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/AverageOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/BeforeEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/BeforeOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/BetweenOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/BlankOperator.d.ts +9 -0
- package/types/src/condition/BuiltInOperators/ColorOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/ContainsOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/EndsWithOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts +11 -0
- package/types/src/condition/BuiltInOperators/ErrorOperator.d.ts +9 -0
- package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts +17 -0
- package/types/src/condition/BuiltInOperators/GreaterThanEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/GreaterThanOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/IconOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/InSetOperator.d.ts +14 -0
- package/types/src/condition/BuiltInOperators/LessThanEqualToOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/LessThanOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/NotOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/OrOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/StartsWithOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/TimePeriodOperator.d.ts +13 -0
- package/types/src/condition/BuiltInOperators/TopNOperator.d.ts +12 -0
- package/types/src/condition/BuiltInOperators/UniqueOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/ValidEmailOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/ValidUrlOperator.d.ts +8 -0
- package/types/src/condition/BuiltInOperators/index.d.ts +59 -0
- package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts +43 -0
- package/types/src/condition/BuiltinSelectors/DateSelector.d.ts +14 -0
- package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +12 -0
- package/types/src/condition/BuiltinSelectors/TextLengthSelector.d.ts +16 -0
- package/types/src/condition/BuiltinSelectors/TimeSelector.d.ts +14 -0
- package/types/src/condition/BuiltinSelectors/WholeSelector.d.ts +14 -0
- package/types/src/condition/BuiltinSelectors/index.d.ts +18 -0
- package/types/src/condition/Condition.d.ts +123 -0
- package/types/src/condition/ICondition.d.ts +915 -0
- package/types/src/condition/_ConditionUtils.d.ts +190 -0
- package/types/src/condition/index.d.ts +3 -0
- package/types/src/conditionalFormat/ConditionalEntry.d.ts +20 -0
- package/types/src/conditionalFormat/ConditionalFormat.d.ts +190 -0
- package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +20 -0
- package/types/src/conditionalFormat/IConditionalFormat.d.ts +518 -0
- package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +70 -0
- package/types/src/conditionalFormat/_ConditionalMessages.d.ts +2 -0
- package/types/src/conditionalFormat/index.d.ts +3 -0
- package/types/src/dataValidation/DataValidation.d.ts +121 -0
- package/types/src/dataValidation/DataValidationCollection.d.ts +20 -0
- package/types/src/dataValidation/IDataValidation.d.ts +327 -0
- package/types/src/dataValidation/IDataValidationCollection.d.ts +63 -0
- package/types/src/dataValidation/_DataValidationMessages.d.ts +2 -0
- package/types/src/dataValidation/_Utils.d.ts +10 -0
- package/types/src/dataValidation/index.d.ts +3 -0
- package/types/src/date/DateUtils.d.ts +8 -0
- package/types/src/date/_DateUtils.d.ts +122 -0
- package/types/src/date/index.d.ts +2 -0
- package/types/src/externalBook/ExternalBookCollection.d.ts +36 -0
- package/types/src/externalBook/IExternalBook.d.ts +97 -0
- package/types/src/externalBook/IExternalBookCollection.d.ts +29 -0
- package/types/src/externalBook/index.d.ts +3 -0
- package/types/src/fill/IEffect.d.ts +389 -0
- package/types/src/fill/IFill.d.ts +597 -0
- package/types/src/fill/IStroke.d.ts +265 -0
- package/types/src/fill/_BuiltInPatterns.d.ts +27 -0
- package/types/src/fill/index.d.ts +4 -0
- package/types/src/filter/IFilter.d.ts +83 -0
- package/types/src/filter/index.d.ts +2 -0
- package/types/src/font/CanvasFontMeasurer.d.ts +25 -0
- package/types/src/font/ExtendedTextMetrics.d.ts +1 -0
- package/types/src/font/Font.d.ts +19 -0
- package/types/src/font/FontKitFontMeasurer.d.ts +11 -0
- package/types/src/font/FontUtils.d.ts +9 -0
- package/types/src/font/IFont.d.ts +261 -0
- package/types/src/font/IFontCollection.d.ts +31 -0
- package/types/src/font/SimpleFontMeasurer.d.ts +4 -0
- package/types/src/font/_FontUtils.d.ts +22 -0
- package/types/src/font/index.d.ts +5 -0
- package/types/src/history/IHistory.d.ts +110 -0
- package/types/src/history/index.d.ts +2 -0
- package/types/src/hyperlink/IHyperlink.d.ts +96 -0
- package/types/src/hyperlink/_Hyperlink.d.ts +21 -0
- package/types/src/hyperlink/index.d.ts +2 -0
- package/types/src/i18n/LanguagePack.d.ts +97 -0
- package/types/src/i18n/LocaleProfile.d.ts +15 -0
- package/types/src/i18n/_CurrencyData.d.ts +20 -0
- package/types/src/i18n/functionLocales.d.ts +6 -0
- package/types/src/i18n/index.d.ts +4 -0
- package/types/src/i18n/locales.d.ts +3 -0
- package/types/src/index.d.ts +71 -0
- package/types/src/io/AbstractBackingStore.d.ts +53 -0
- package/types/src/io/ArrayBackingStore.d.ts +34 -0
- package/types/src/io/IWorkbookIO.d.ts +1322 -0
- package/types/src/io/WorkbookIO.d.ts +91 -0
- package/types/src/io/WorkbookOrigin.d.ts +114 -0
- package/types/src/io/WorkbookRegistry.d.ts +49 -0
- package/types/src/io/index.d.ts +5 -0
- package/types/src/lib/file/file.browser.d.ts +41 -0
- package/types/src/lib/file/file.node.d.ts +25 -0
- package/types/src/lib/utils/_Utils.d.ts +20 -0
- package/types/src/lib/utils/banner.d.ts +6 -0
- package/types/src/lib/utils/utils.browser.d.ts +28 -0
- package/types/src/lib/utils/utils.node.d.ts +42 -0
- package/types/src/license/LicenseDetails.d.ts +22 -0
- package/types/src/license/LicenseManager.d.ts +63 -0
- package/types/src/license/index.d.ts +3 -0
- package/types/src/license/license-key.d.ts +33 -0
- package/types/src/listener/IListener.d.ts +62 -0
- package/types/src/listener/ListenerEmitter.d.ts +47 -0
- package/types/src/listener/index.d.ts +2 -0
- package/types/src/model/AbstractModel.d.ts +90 -0
- package/types/src/model/IModel.d.ts +108 -0
- package/types/src/model/_ModelMessages.d.ts +2 -0
- package/types/src/model/index.d.ts +3 -0
- package/types/src/movable/CustomElement.d.ts +42 -0
- package/types/src/movable/ICustomElement.d.ts +29 -0
- package/types/src/movable/IGroup.d.ts +30 -0
- package/types/src/movable/IMovable.d.ts +327 -0
- package/types/src/movable/IMovableCollection.d.ts +129 -0
- package/types/src/movable/IMovableSelection.d.ts +49 -0
- package/types/src/movable/Movable.d.ts +221 -0
- package/types/src/movable/MovableCollection.d.ts +29 -0
- package/types/src/movable/_MovableUtils.d.ts +4 -0
- package/types/src/movable/index.d.ts +4 -0
- package/types/src/named/AbstractNamed.d.ts +41 -0
- package/types/src/named/INamed.d.ts +225 -0
- package/types/src/named/INamedCollection.d.ts +230 -0
- package/types/src/named/NamedCollection.d.ts +302 -0
- package/types/src/named/_BuiltInNamed.d.ts +6 -0
- package/types/src/named/index.d.ts +3 -0
- package/types/src/numFmt/BuiltInFormats.d.ts +49 -0
- package/types/src/numFmt/IFormatEngine.d.ts +149 -0
- package/types/src/numFmt/NumberFormatBuilder.d.ts +46 -0
- package/types/src/numFmt/NumberFormatParser.d.ts +168 -0
- package/types/src/numFmt/NumberFormatStyles.d.ts +43 -0
- package/types/src/numFmt/NumberFormatType.d.ts +79 -0
- package/types/src/numFmt/NumfmtFormatEngine.d.ts +33 -0
- package/types/src/numFmt/_BuiltInNumberFormats.d.ts +12 -0
- package/types/src/numFmt/_FormatCell.d.ts +52 -0
- package/types/src/numFmt/_NumFmtUtils.d.ts +102 -0
- package/types/src/numFmt/index.d.ts +105 -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/Picture.d.ts +67 -0
- package/types/src/picture/index.d.ts +2 -0
- package/types/src/primitives/CompositeRangeStats.d.ts +63 -0
- package/types/src/primitives/Criteria.d.ts +35 -0
- package/types/src/primitives/FormulaContext.d.ts +2 -0
- package/types/src/primitives/PrimitiveUtils.d.ts +255 -0
- package/types/src/primitives/Range.d.ts +221 -0
- package/types/src/primitives/RangeStats.d.ts +48 -0
- package/types/src/primitives/ReferenceRange.d.ts +19 -0
- package/types/src/primitives/Runtime.d.ts +55 -0
- package/types/src/primitives/ScalarCollation.d.ts +174 -0
- package/types/src/primitives/TextFold.d.ts +62 -0
- package/types/src/primitives/_PrimitiveMessages.d.ts +3 -0
- package/types/src/primitives/index.d.ts +7 -0
- package/types/src/primitives/stats/AggregateStats.d.ts +119 -0
- package/types/src/primitives/stats/Cancellation.d.ts +43 -0
- package/types/src/primitives/stats/FrequencyStats.d.ts +94 -0
- package/types/src/primitives/stats/Ranked.d.ts +26 -0
- package/types/src/primitives/stats/ScalarOrder.d.ts +18 -0
- package/types/src/primitives/stats/SortedNumbers.d.ts +48 -0
- package/types/src/primitives/stats/index.d.ts +7 -0
- package/types/src/print/IPrint.d.ts +234 -0
- package/types/src/print/index.d.ts +2 -0
- package/types/src/protectedRange/IProtectedRange.d.ts +239 -0
- package/types/src/protectedRange/IProtectedRangeCollection.d.ts +73 -0
- package/types/src/protectedRange/ProtectedRange.d.ts +101 -0
- package/types/src/protectedRange/ProtectedRangeCollection.d.ts +21 -0
- package/types/src/protectedRange/index.d.ts +3 -0
- package/types/src/protection/DefaultProtection.d.ts +43 -0
- package/types/src/protection/IProtection.d.ts +170 -0
- package/types/src/protection/PasswordHasher.d.ts +35 -0
- package/types/src/protection/index.d.ts +6 -0
- package/types/src/resource/IResource.d.ts +98 -0
- package/types/src/resource/IResourceCollection.d.ts +96 -0
- package/types/src/resource/Resource.d.ts +39 -0
- package/types/src/resource/ResourceCollection.d.ts +19 -0
- package/types/src/resource/_ResourceMessages.d.ts +4 -0
- package/types/src/resource/index.d.ts +5 -0
- package/types/src/resource/resourceKinds.d.ts +23 -0
- package/types/src/richData/index.d.ts +1 -0
- package/types/src/scripting/FunctionCollection.d.ts +88 -0
- package/types/src/scripting/IFunctionCollection.d.ts +208 -0
- package/types/src/scripting/IModule.d.ts +82 -0
- package/types/src/scripting/IModuleCollection.d.ts +79 -0
- package/types/src/scripting/IScript.d.ts +289 -0
- package/types/src/scripting/ITypedFunction.d.ts +61 -0
- package/types/src/scripting/MacroFunction.d.ts +15 -0
- package/types/src/scripting/Module.d.ts +39 -0
- package/types/src/scripting/ModuleCollection.d.ts +56 -0
- package/types/src/scripting/Runtime.d.ts +16 -0
- package/types/src/scripting/Scripts.d.ts +79 -0
- package/types/src/scripting/TypedFunction.d.ts +161 -0
- package/types/src/scripting/_FunctionIndex.d.ts +111 -0
- package/types/src/scripting/_FunctionMessages.d.ts +6 -0
- package/types/src/scripting/_ModuleUtils.d.ts +5 -0
- package/types/src/scripting/_ScriptUtils.d.ts +18 -0
- package/types/src/scripting/enumManifest.browser.d.ts +9 -0
- package/types/src/scripting/enumManifest.node.d.ts +13 -0
- package/types/src/scripting/index.d.ts +4 -0
- package/types/src/selection/IRangeSelection.d.ts +307 -0
- package/types/src/selection/RangeSelection.d.ts +144 -0
- package/types/src/selection/_RangeSelectionUtils.d.ts +32 -0
- package/types/src/selection/index.d.ts +2 -0
- package/types/src/shape/IShape.d.ts +279 -0
- package/types/src/shape/Shape.d.ts +54 -0
- package/types/src/shape/index.d.ts +2 -0
- package/types/src/sheet/CellRegion.d.ts +106 -0
- package/types/src/sheet/ICellContainerOptions.d.ts +97 -0
- package/types/src/sheet/ISheet.d.ts +1074 -0
- package/types/src/sheet/ISheetCollection.d.ts +70 -0
- package/types/src/sheet/NamedCellRange.d.ts +45 -0
- package/types/src/sheet/NamedRange.d.ts +30 -0
- package/types/src/sheet/Sheet.d.ts +1068 -0
- package/types/src/sheet/SheetCell.d.ts +335 -0
- package/types/src/sheet/SheetCollection.d.ts +18 -0
- package/types/src/sheet/SheetRange.d.ts +362 -0
- package/types/src/sheet/SheetRanges.d.ts +225 -0
- package/types/src/sheet/_CopyUtils.d.ts +33 -0
- package/types/src/sheet/_InvalidSheetRange.d.ts +70 -0
- package/types/src/sheet/_SheetAutoFitUtils.d.ts +18 -0
- package/types/src/sheet/_SheetCoords.d.ts +54 -0
- package/types/src/sheet/_SheetFilterUtils.d.ts +9 -0
- package/types/src/sheet/_SheetMessages.d.ts +11 -0
- package/types/src/sheet/_SheetMutations.d.ts +137 -0
- package/types/src/sheet/_SheetSortUtils.d.ts +9 -0
- package/types/src/sheet/_SheetStateReader.d.ts +161 -0
- package/types/src/sheet/_SheetStateTypes.d.ts +446 -0
- package/types/src/sheet/_SheetUtils.d.ts +265 -0
- package/types/src/sheet/clipboard/IHTMLParser.d.ts +92 -0
- package/types/src/sheet/clipboard/RangeClipboardItems.d.ts +55 -0
- package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts +29 -0
- package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts +46 -0
- package/types/src/sheet/clipboard/_ClipboardUtils.d.ts +10 -0
- package/types/src/sheet/clipboard/index.d.ts +2 -0
- package/types/src/sheet/index.d.ts +6 -0
- package/types/src/sheet/listener/RangesListener.d.ts +32 -0
- package/types/src/sheet/listener/RangesListenerEntry.d.ts +19 -0
- package/types/src/sheet/listener/index.d.ts +3 -0
- package/types/src/sheet/spatial/MergeEntry.d.ts +17 -0
- package/types/src/sheet/spatial/index.d.ts +2 -0
- package/types/src/sheet/style/SheetCellStyle.d.ts +540 -0
- package/types/src/sheet/style/SheetDirectStyle.d.ts +130 -0
- package/types/src/sheet/style/SheetNamedStyle.d.ts +47 -0
- package/types/src/sheet/style/SheetTableStyle.d.ts +47 -0
- package/types/src/sheet/style/UsedRangeSpatialMap.d.ts +80 -0
- package/types/src/sheet/style/_Resolvers.d.ts +41 -0
- package/types/src/sheet/style/_StyleUtils.d.ts +69 -0
- package/types/src/sheet/style/index.d.ts +1 -0
- package/types/src/sheetHeader/ISheetHeader.d.ts +217 -0
- package/types/src/sheetHeader/SheetCellHeader.d.ts +61 -0
- package/types/src/sheetHeader/SheetCellHeaderRange.d.ts +54 -0
- package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts +46 -0
- package/types/src/sheetHeader/SheetHeader.d.ts +257 -0
- package/types/src/sheetHeader/_HeaderUtils.d.ts +94 -0
- package/types/src/sheetHeader/_InvalidSheetHeaderRange.d.ts +7 -0
- package/types/src/sheetHeader/index.d.ts +2 -0
- package/types/src/sheetProtection/ISheetProtection.d.ts +150 -0
- package/types/src/sheetProtection/SheetProtection.d.ts +39 -0
- package/types/src/sheetProtection/index.d.ts +2 -0
- package/types/src/sheetView/ISheetView.d.ts +439 -0
- package/types/src/sheetView/SheetView.d.ts +113 -0
- package/types/src/sheetView/_SheetViewUtils.d.ts +19 -0
- package/types/src/sheetView/index.d.ts +2 -0
- package/types/src/slicer/ISlicer.d.ts +38 -0
- package/types/src/slicer/Slicer.d.ts +41 -0
- package/types/src/slicer/index.d.ts +2 -0
- package/types/src/sort/ISort.d.ts +318 -0
- package/types/src/sort/Sort.d.ts +48 -0
- package/types/src/sort/_SortUtils.d.ts +12 -0
- package/types/src/sort/index.d.ts +3 -0
- package/types/src/string/IStringCollection.d.ts +50 -0
- package/types/src/string/StringCollection.d.ts +26 -0
- package/types/src/string/index.d.ts +3 -0
- package/types/src/style/IStyle.d.ts +485 -0
- package/types/src/style/IStyleCollection.d.ts +292 -0
- package/types/src/style/StyleCollection.d.ts +125 -0
- package/types/src/style/_BuiltInStyleDefs.d.ts +18 -0
- package/types/src/style/_BuiltInStyleNames.d.ts +20 -0
- package/types/src/style/index.d.ts +5 -0
- package/types/src/table/AnchoredTable.d.ts +349 -0
- package/types/src/table/AutoTable.d.ts +64 -0
- package/types/src/table/ITable.d.ts +714 -0
- package/types/src/table/ITableCollection.d.ts +88 -0
- package/types/src/table/ITableStyle.d.ts +318 -0
- package/types/src/table/Table.d.ts +8 -0
- package/types/src/table/TableCollection.d.ts +20 -0
- package/types/src/table/_AutoTableColumn.d.ts +27 -0
- package/types/src/table/_BuiltInTableStyles.d.ts +9 -0
- package/types/src/table/_FilterField.d.ts +30 -0
- package/types/src/table/_NamedTable.d.ts +84 -0
- package/types/src/table/_NamedTableSource.d.ts +57 -0
- package/types/src/table/_SortField.d.ts +29 -0
- package/types/src/table/_TableColumn.d.ts +51 -0
- package/types/src/table/_TableMessages.d.ts +5 -0
- package/types/src/table/_TableUtils.d.ts +94 -0
- package/types/src/table/index.d.ts +5 -0
- package/types/src/text/AutoNumberingScheme.d.ts +175 -0
- package/types/src/text/Bullet.d.ts +34 -0
- package/types/src/text/IText.d.ts +53 -0
- package/types/src/text/ITextFrame.d.ts +313 -0
- package/types/src/text/TextBoxAlignment.d.ts +141 -0
- package/types/src/text/TextFrame.d.ts +43 -0
- package/types/src/text/TextLine.d.ts +24 -0
- package/types/src/text/TextParagraph.d.ts +61 -0
- package/types/src/text/TextRotation.d.ts +106 -0
- package/types/src/text/TextRun.d.ts +85 -0
- package/types/src/text/TextUtils.d.ts +165 -0
- package/types/src/text/TextVisitor.d.ts +11 -0
- package/types/src/text/TextWrapper.d.ts +78 -0
- package/types/src/text/_TextUtils.d.ts +90 -0
- package/types/src/text/impl/Phrase.d.ts +3 -0
- package/types/src/text/impl/TabStrategy.d.ts +9 -0
- package/types/src/text/impl/WordWrapUtils.d.ts +6 -0
- package/types/src/text/index.d.ts +7 -0
- package/types/src/text/richtext/IStyledFont.d.ts +330 -0
- package/types/src/text/richtext/index.d.ts +2 -0
- package/types/src/theme/ITheme.d.ts +252 -0
- package/types/src/theme/IThemeCollection.d.ts +84 -0
- package/types/src/theme/ThemeCollection.d.ts +62 -0
- package/types/src/theme/_BuiltInColorSchemes.d.ts +3 -0
- package/types/src/theme/_BuiltInFontSchemes.d.ts +3 -0
- package/types/src/theme/_BuiltInThemeDefs.d.ts +3 -0
- package/types/src/theme/_ThemeMessages.d.ts +3 -0
- package/types/src/theme/_ThemeUtils.d.ts +3 -0
- package/types/src/theme/index.d.ts +4 -0
- package/types/src/transaction/ITransaction.d.ts +594 -0
- package/types/src/transaction/Transaction.d.ts +184 -0
- package/types/src/transaction/TransactionSaveStateManager.d.ts +85 -0
- package/types/src/transaction/TransactionUndoManager.d.ts +60 -0
- package/types/src/transaction/index.d.ts +5 -0
- package/types/src/type/ICollection.d.ts +110 -0
- package/types/src/type/IProperties.d.ts +51 -0
- package/types/src/type/ITypes.d.ts +69 -0
- package/types/src/type/Registry.d.ts +66 -0
- package/types/src/type/index.d.ts +5 -0
- package/types/src/utils/GeomUtils.d.ts +61 -0
- package/types/src/utils/ObjectPath.d.ts +9 -0
- package/types/src/utils/Profiler.d.ts +38 -0
- package/types/src/utils/_CSSUtils.d.ts +156 -0
- package/types/src/utils/_GeomUtils.d.ts +14 -0
- package/types/src/utils/_RangeCoordUtils.d.ts +84 -0
- package/types/src/utils/_RangeSetUtils.d.ts +55 -0
- package/types/src/utils/index.d.ts +2 -0
- package/types/src/workbook/IWorkbook.d.ts +711 -0
- package/types/src/workbook/Workbook.d.ts +342 -0
- package/types/src/workbook/WorkbookRange.d.ts +25 -0
- package/types/src/workbook/WorkbookRanges.d.ts +39 -0
- package/types/src/workbook/_WorkbookMessages.d.ts +8 -0
- package/types/src/workbook/_WorkbookUtils.d.ts +35 -0
- package/types/src/workbook/index.d.ts +3 -0
- package/types/src/workbookProtection/IWorkbookProtection.d.ts +57 -0
- package/types/src/workbookProtection/WorkbookProtection.d.ts +14 -0
- package/types/src/workbookProtection/index.d.ts +2 -0
- package/types/src/workbookView/IWorkbookView.d.ts +134 -0
- package/types/src/workbookView/WorkbookView.d.ts +49 -0
- package/types/src/workbookView/index.d.ts +3 -0
- package/browser/cjs/8p8T3dD14wnIxaBG.cjs +0 -6
- package/browser/cjs/95PbxEGMp0S1al9b.cjs +0 -6
- package/browser/cjs/B5N-CDhD5v6HYM0I.cjs +0 -6
- package/browser/cjs/BKgMJ6JZUiena1iM.cjs +0 -6
- package/browser/cjs/BSW7L4QsMahkhhhy.cjs +0 -6
- package/browser/cjs/Be4ZjrWJHL1nRmQu.cjs +0 -6
- package/browser/cjs/BkyqIhWBqIxRof6b.cjs +0 -6
- package/browser/cjs/BzjrR52QeojqLbOx.cjs +0 -7
- package/browser/cjs/C4h0pgfUOocSJ3Ke.cjs +0 -6
- package/browser/cjs/CKDSsq1v8jGWlRAi.cjs +0 -55
- package/browser/cjs/CYMVELYS8FNeFpiq.cjs +0 -6
- package/browser/cjs/CYg51Fs361BHxyRI.cjs +0 -6
- package/browser/cjs/CdzYFZ-48HrcE5LQ.cjs +0 -6
- package/browser/cjs/CfKjVPVp-cWgnToo.cjs +0 -6
- package/browser/cjs/D-u1ccCpAGvsjKOp.cjs +0 -6
- package/browser/cjs/D5fl40nw9aOYcQli.cjs +0 -6
- package/browser/cjs/D6KrtS3oZrLOAxO5.cjs +0 -6
- package/browser/cjs/DXQv5Gx-Wtfyk89a.cjs +0 -6
- package/browser/cjs/Di10f5RB2IX9PFHR.cjs +0 -6
- package/browser/cjs/DnOACT9Vxcz9_frM.cjs +0 -15
- package/browser/cjs/Dr2RqSffQZyFVpHL.cjs +0 -6
- package/browser/cjs/Dz0rduQbyCjN2Ni_.cjs +0 -6
- package/browser/cjs/JrzBZL5--Ock2uVj.cjs +0 -6
- package/browser/cjs/VLEyvfkmKqqUCKxv.cjs +0 -124
- package/browser/cjs/W8tk-2bTTSDGstfk.cjs +0 -6
- package/browser/cjs/pc9KfujdfWA19P_V.cjs +0 -6
- package/browser/cjs/qiB3rVaQVJILQk_N.cjs +0 -6
- package/browser/esm/BBYOqwrtztJDWz3c.mjs +0 -10
- package/browser/esm/BBst2hgdCPhA3DPd.mjs +0 -10
- package/browser/esm/BFrnY1TEgniZNVl8.mjs +0 -10
- package/browser/esm/BR4W7_ucdFJi03RO.mjs +0 -10
- package/browser/esm/BUci9XBsYBUNnQub.mjs +0 -10
- package/browser/esm/B_DMz5brejp8Mgto.mjs +0 -10
- package/browser/esm/B_EdCIINiuU7UuR6.mjs +0 -10
- package/browser/esm/BklwssraNXGXEaP2.mjs +0 -10
- package/browser/esm/BvccAibR-3R_xO8l.mjs +0 -10
- package/browser/esm/Bza5H7E2GGoHxEt7.mjs +0 -10
- package/browser/esm/C0brjreeBKRcVYN4.mjs +0 -10
- package/browser/esm/C1hdw7eWXk0zq1SS.mjs +0 -10
- package/browser/esm/C4Y3MpHe_UzFZEaF.mjs +0 -10
- package/browser/esm/CATfU6MHTqOkz5FJ.mjs +0 -10
- package/browser/esm/CDe9GrlTNhuZzOVh.mjs +0 -23841
- package/browser/esm/C_bcVsMhltCNyQij.mjs +0 -10
- package/browser/esm/CqpHJSTi0m49GR_q.mjs +0 -10
- package/browser/esm/CvVXzwNYb-2OZMBj.mjs +0 -426
- package/browser/esm/CwIFvNV1kcbLsXJg.mjs +0 -10
- package/browser/esm/D7xtXncwRYiPYQ3v.mjs +0 -10
- package/browser/esm/D8BmFg9FFVHUz_W1.mjs +0 -10
- package/browser/esm/DRm-FWBKVOv2Jp6x.mjs +0 -10
- package/browser/esm/Due-pSw1d9_zz_19.mjs +0 -12
- package/browser/esm/DvipK7b_PuSzB8G-.mjs +0 -10
- package/browser/esm/aTyRGVa5Smj2T_9l.mjs +0 -10
- package/browser/esm/lRUYQdaIClvoTNGo.mjs +0 -4022
- package/browser/esm/xXGFfp-8v8jL5akS.mjs +0 -5653
- package/node/esm/BBst2hgdCPhA3DPd.mjs +0 -10
- package/node/esm/BFrnY1TEgniZNVl8.mjs +0 -10
- package/node/esm/BLNq3EgGCGKtzrGq.mjs +0 -10
- package/node/esm/BLS0f7etFu8fozVg.mjs +0 -10
- package/node/esm/BMyNI7ZZi2ICO6Bn.mjs +0 -10
- package/node/esm/BR4W7_ucdFJi03RO.mjs +0 -10
- package/node/esm/B_EdCIINiuU7UuR6.mjs +0 -10
- package/node/esm/BhKeh1i4iDAeImus.mjs +0 -1072
- package/node/esm/BklwssraNXGXEaP2.mjs +0 -10
- package/node/esm/Bza5H7E2GGoHxEt7.mjs +0 -10
- package/node/esm/C0brjreeBKRcVYN4.mjs +0 -10
- package/node/esm/C1hdw7eWXk0zq1SS.mjs +0 -10
- package/node/esm/C4Y3MpHe_UzFZEaF.mjs +0 -10
- package/node/esm/CATfU6MHTqOkz5FJ.mjs +0 -10
- package/node/esm/COhANehqT9YVLl76.mjs +0 -10
- package/node/esm/CqpHJSTi0m49GR_q.mjs +0 -10
- package/node/esm/CuijIC4hIp5bpx9B.mjs +0 -10
- package/node/esm/CwIFvNV1kcbLsXJg.mjs +0 -10
- package/node/esm/D7xtXncwRYiPYQ3v.mjs +0 -10
- package/node/esm/D8BmFg9FFVHUz_W1.mjs +0 -10
- package/node/esm/DPs0koPRfrHYG1yO.mjs +0 -13
- package/node/esm/DVM4Cwe0h2V1V4vm.mjs +0 -10
- package/node/esm/DvipK7b_PuSzB8G-.mjs +0 -10
- package/node/esm/aTyRGVa5Smj2T_9l.mjs +0 -10
- package/node/esm/qLqMotWYwBIdEVhE.mjs +0 -2458
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { IAnchored } from '../anchored';
|
|
2
|
+
import { ICellRanges } from '../cellRange';
|
|
3
|
+
import { IListener } from '../listener';
|
|
4
|
+
import { IProtection } from '../protection';
|
|
5
|
+
import { ITransaction } from '../transaction';
|
|
6
|
+
/**
|
|
7
|
+
* A named range (or set of ranges) that stays editable while the sheet as a whole is protected.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* Excel surfaces these as *Review → Allow Edit Ranges*, and OOXML persists them as
|
|
11
|
+
* `<protectedRange>` inside `<protectedRanges>`. Despite the name, a protected range **relaxes**
|
|
12
|
+
* protection rather than adding it: it is only consulted while {@link ISheetProtection.isLocked}
|
|
13
|
+
* is true, and it grants an exemption for the cells it covers — optionally behind a password.
|
|
14
|
+
*
|
|
15
|
+
* * Like {@link IConditionalFormat} and {@link IDataValidation}, one entry may be anchored to
|
|
16
|
+
* several discontiguous ranges (`sqref="A1:B4 D1:D9"`), and any single range can become several
|
|
17
|
+
* when a row/column delete splits it.
|
|
18
|
+
* * {@link getName} is required and unique within the sheet.
|
|
19
|
+
*/
|
|
20
|
+
export interface IProtectedRange extends IAnchored {
|
|
21
|
+
/**
|
|
22
|
+
* The unique name for this entry.
|
|
23
|
+
*
|
|
24
|
+
* @remarks
|
|
25
|
+
* Required by OOXML and unique within the sheet, but unrelated to the ranges it covers — it is a
|
|
26
|
+
* label, not a defined name, and never resolves as a reference.
|
|
27
|
+
*/
|
|
28
|
+
getName(): string;
|
|
29
|
+
/**
|
|
30
|
+
* @see {@link IProtectedRange.getName}
|
|
31
|
+
*
|
|
32
|
+
* @param name The new name. Must be non-empty and unique within the sheet.
|
|
33
|
+
*/
|
|
34
|
+
setName(name: string, options?: ITransaction.OperationOptions): this;
|
|
35
|
+
/**
|
|
36
|
+
* Returns the index of this entry within its container.
|
|
37
|
+
*
|
|
38
|
+
* @remarks
|
|
39
|
+
* Unlike {@link IConditionalFormat.getIndex} this carries no evaluation semantics — protected
|
|
40
|
+
* ranges are an unordered set in OOXML. The index exists so the UI can present a stable list.
|
|
41
|
+
*/
|
|
42
|
+
getIndex(): number;
|
|
43
|
+
/**
|
|
44
|
+
* @see {@link IProtectedRange.getIndex}
|
|
45
|
+
*/
|
|
46
|
+
setIndex(index: number): this;
|
|
47
|
+
/**
|
|
48
|
+
* Re-anchors this protected range to `address`, REPLACING every range it currently covers.
|
|
49
|
+
*
|
|
50
|
+
* @param address The range or ranges to cover — anything `ISheet.getRanges` accepts
|
|
51
|
+
* (`'A1:C20'`, `'A1:A5, C1:C5'`, coords). Resolved against this protected range's own sheet.
|
|
52
|
+
* @param options Transaction options; `description` names the entry in undo history.
|
|
53
|
+
*
|
|
54
|
+
* @remarks
|
|
55
|
+
* A REPLACE, not an add: the ranges named become the whole anchor. An address that names
|
|
56
|
+
* nothing throws rather than leaving the protected range unanchored — clearing is
|
|
57
|
+
* {@link IAnchored.delete}.
|
|
58
|
+
*
|
|
59
|
+
* Undoable, and refused on a protected sheet. A protected range spans several ranges as readily as
|
|
60
|
+
* one; the OOXML `sqref` carries the whole list.
|
|
61
|
+
*/
|
|
62
|
+
setRanges(address: ICellRanges.Address, options?: ITransaction.OperationOptions): this;
|
|
63
|
+
/**
|
|
64
|
+
* The relative security descriptor, or `null` if there is none.
|
|
65
|
+
*
|
|
66
|
+
* @remarks
|
|
67
|
+
* Names the user accounts that may edit this range without supplying a password, e.g.
|
|
68
|
+
* `"O:WDG:WDD:(A;;CC;;;AN)"`. SheetXL does not evaluate this — it is preserved for round-trip
|
|
69
|
+
* until the user identity system lands.
|
|
70
|
+
*
|
|
71
|
+
* @see {@link IProtection.IdentityProvider}
|
|
72
|
+
*/
|
|
73
|
+
getSecurityDescriptor(): string | null;
|
|
74
|
+
/**
|
|
75
|
+
* @see {@link IProtectedRange.getSecurityDescriptor}
|
|
76
|
+
*/
|
|
77
|
+
setSecurityDescriptor(descriptor: string | null, options?: ITransaction.OperationOptions): this;
|
|
78
|
+
/**
|
|
79
|
+
* Returns `true` if a password must be supplied to edit this range.
|
|
80
|
+
*/
|
|
81
|
+
hasPassword(): boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Sets (or clears) the password required to edit this range.
|
|
84
|
+
*
|
|
85
|
+
* @param password The plain-text password, or `null` to remove it.
|
|
86
|
+
* @param options {@link IProtectedRange.SetPasswordOptions}
|
|
87
|
+
*
|
|
88
|
+
* @remarks
|
|
89
|
+
* The password is hashed before it reaches the model state — the plain text is never stored and
|
|
90
|
+
* never serialized. Asynchronous because hashing is (`PasswordHasher` runs a spin count).
|
|
91
|
+
*/
|
|
92
|
+
setPassword(password: string | null, options?: IProtectedRange.SetPasswordOptions): Promise<this>;
|
|
93
|
+
/**
|
|
94
|
+
* Verifies a plain-text password against the stored hash.
|
|
95
|
+
*
|
|
96
|
+
* @param password The password to check.
|
|
97
|
+
* @returns `true` when it matches, or when no password is set. `false` otherwise.
|
|
98
|
+
*
|
|
99
|
+
* @remarks
|
|
100
|
+
* Never throws for a wrong password — unlike {@link IProtection.checkPassword}, which is a
|
|
101
|
+
* gate. This is a predicate.
|
|
102
|
+
*/
|
|
103
|
+
checkPassword(password?: string): Promise<boolean>;
|
|
104
|
+
/**
|
|
105
|
+
* The stored password hash, or `null` if there is none.
|
|
106
|
+
*
|
|
107
|
+
* @remarks
|
|
108
|
+
* For persistence. The plain text is not recoverable from this.
|
|
109
|
+
*/
|
|
110
|
+
getEncryptedPassword(): Readonly<Partial<IProtection.EncryptedPassword>> | null;
|
|
111
|
+
/**
|
|
112
|
+
* Whether edits to this range are currently permitted on a protected sheet.
|
|
113
|
+
*
|
|
114
|
+
* @remarks
|
|
115
|
+
* * `true` whenever there is no password — that is the whole point of an entry without one, and
|
|
116
|
+
* it needs no ceremony.
|
|
117
|
+
* * With a password, `true` only after {@link unlock} succeeded.
|
|
118
|
+
*
|
|
119
|
+
* **Session state, not document state.** It is never serialized, never recorded on the undo
|
|
120
|
+
* stack, and resets when the workbook is reopened — the same shape as
|
|
121
|
+
* {@link IProtection.isPaused}. This is what lets the write path consult it synchronously; a
|
|
122
|
+
* password check is async and cannot be awaited per cell.
|
|
123
|
+
*/
|
|
124
|
+
isUnlocked(): boolean;
|
|
125
|
+
/**
|
|
126
|
+
* Grants edit access to this range for the rest of the session.
|
|
127
|
+
*
|
|
128
|
+
* @param password The password, when one is set.
|
|
129
|
+
* @returns `true` when access was granted, `false` when the password did not match.
|
|
130
|
+
*
|
|
131
|
+
* @remarks
|
|
132
|
+
* Does not throw on a wrong password — callers are UI prompts that want to re-ask.
|
|
133
|
+
* @see {@link isUnlocked}
|
|
134
|
+
*/
|
|
135
|
+
unlock(password?: string): Promise<boolean>;
|
|
136
|
+
/**
|
|
137
|
+
* Revokes a previous {@link unlock}.
|
|
138
|
+
*
|
|
139
|
+
* @remarks
|
|
140
|
+
* A no-op when there is no password, since such a range is always unlocked.
|
|
141
|
+
*/
|
|
142
|
+
relock(): this;
|
|
143
|
+
/**
|
|
144
|
+
* Set multiple properties at the same time.
|
|
145
|
+
*
|
|
146
|
+
* @remarks
|
|
147
|
+
* `password` here is the **already encrypted** form — use {@link setPassword} to set one from
|
|
148
|
+
* plain text.
|
|
149
|
+
*/
|
|
150
|
+
update(properties: Partial<IProtectedRange.Properties> | IProtectedRange, options?: ITransaction.OperationOptions): this;
|
|
151
|
+
/**
|
|
152
|
+
* Add Listeners.
|
|
153
|
+
*
|
|
154
|
+
* @see
|
|
155
|
+
* {@link IListener.ISource.addListeners}
|
|
156
|
+
*/
|
|
157
|
+
addListeners(listeners: IProtectedRange.IListeners, options?: IListener.Options): IListener.Remove;
|
|
158
|
+
/**
|
|
159
|
+
* @returns The current state as a JSON object, or `null` if there is no state.
|
|
160
|
+
*/
|
|
161
|
+
toJSON(): IProtectedRange.JSON | null;
|
|
162
|
+
/**
|
|
163
|
+
* For runtime type checking.
|
|
164
|
+
*/
|
|
165
|
+
readonly isIProtectedRange: true;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Capabilities for working with ranges that stay editable on a protected sheet.
|
|
169
|
+
*
|
|
170
|
+
* @see
|
|
171
|
+
* ### **Interface**
|
|
172
|
+
*
|
|
173
|
+
* {@link IProtectedRange}
|
|
174
|
+
*
|
|
175
|
+
* **Additional Interfaces**
|
|
176
|
+
* * {@link IProtectedRangeCollection}
|
|
177
|
+
*/
|
|
178
|
+
export declare namespace IProtectedRange {
|
|
179
|
+
/**
|
|
180
|
+
* Options for {@link IProtectedRange.setPassword}.
|
|
181
|
+
*/
|
|
182
|
+
interface SetPasswordOptions extends ITransaction.OperationOptions {
|
|
183
|
+
/**
|
|
184
|
+
* The hash algorithm.
|
|
185
|
+
*
|
|
186
|
+
* @defaultValue `SHA-512`
|
|
187
|
+
*/
|
|
188
|
+
algorithm?: string;
|
|
189
|
+
/**
|
|
190
|
+
* The number of hash iterations.
|
|
191
|
+
*
|
|
192
|
+
* @defaultValue `100000`
|
|
193
|
+
*/
|
|
194
|
+
spinCount?: number;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* A set of values that can be set on an {@link IProtectedRange}.
|
|
198
|
+
*/
|
|
199
|
+
interface Properties {
|
|
200
|
+
/**
|
|
201
|
+
* {@inheritDoc IProtectedRange.getName}
|
|
202
|
+
*/
|
|
203
|
+
name?: string;
|
|
204
|
+
/**
|
|
205
|
+
* {@inheritDoc IProtectedRange.getSecurityDescriptor}
|
|
206
|
+
*/
|
|
207
|
+
securityDescriptor?: string;
|
|
208
|
+
/**
|
|
209
|
+
* The encrypted password. An absent value means the range needs no password.
|
|
210
|
+
*
|
|
211
|
+
* @remarks
|
|
212
|
+
* Never the plain text — see {@link IProtectedRange.setPassword}.
|
|
213
|
+
*/
|
|
214
|
+
password?: Partial<IProtection.EncryptedPassword>;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* A JSON representation useful for persistence.
|
|
218
|
+
*/
|
|
219
|
+
interface JSON extends Properties {
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* IListener for {@link IProtectedRange} events.
|
|
223
|
+
*/
|
|
224
|
+
interface Events extends IAnchored.Events<IProtectedRange> {
|
|
225
|
+
/**
|
|
226
|
+
* Called when the name, descriptor or password changes.
|
|
227
|
+
*/
|
|
228
|
+
onConfigChange?(source: IProtectedRange): void;
|
|
229
|
+
/**
|
|
230
|
+
* Called when session edit access changes.
|
|
231
|
+
*
|
|
232
|
+
* @see {@link IProtectedRange.isUnlocked}
|
|
233
|
+
*/
|
|
234
|
+
onUnlockChange?(source: IProtectedRange): void;
|
|
235
|
+
}
|
|
236
|
+
interface IListeners extends IListener.Callbacks<IProtectedRange, IProtectedRange.Events> {
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=IProtectedRange.d.ts.map
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { ICellRange, ICellRanges } from '../cellRange';
|
|
2
|
+
import { ICollection } from '../type';
|
|
3
|
+
import { ITransaction } from '../transaction';
|
|
4
|
+
import { IProtectedRange } from './IProtectedRange';
|
|
5
|
+
/**
|
|
6
|
+
* Holds a collection of {@link IProtectedRange}s.
|
|
7
|
+
*/
|
|
8
|
+
export interface IProtectedRangeCollection extends ICollection<IProtectedRange> {
|
|
9
|
+
/**
|
|
10
|
+
* Add an `IProtectedRange` to the container.
|
|
11
|
+
*
|
|
12
|
+
* @param address The address of the item. May name several discontiguous ranges.
|
|
13
|
+
* @param options {@link IProtectedRangeCollection.AddOptions}
|
|
14
|
+
*
|
|
15
|
+
* @remarks
|
|
16
|
+
* If no name is supplied one is generated (`Range1`, `Range2`, …), matching Excel.
|
|
17
|
+
*/
|
|
18
|
+
add(address: ICellRanges.Address | IProtectedRange, options?: IProtectedRangeCollection.AddOptions): IProtectedRange;
|
|
19
|
+
/**
|
|
20
|
+
* Returns items that match the filter criteria.
|
|
21
|
+
*
|
|
22
|
+
* If no filter criteria is provided, all items will be returned.
|
|
23
|
+
*
|
|
24
|
+
* @param options {@link IProtectedRangeCollection.GetItemsOptions}
|
|
25
|
+
*/
|
|
26
|
+
getItems(options?: IProtectedRangeCollection.GetItemsOptions): IProtectedRange[];
|
|
27
|
+
/**
|
|
28
|
+
* Create a temporary item that can be interacted with but is not added to the collection.
|
|
29
|
+
*
|
|
30
|
+
* @param template A template to use for the temporary item.
|
|
31
|
+
*/
|
|
32
|
+
createItem(template?: IProtectedRange): IProtectedRange;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* {@inheritDoc IProtectedRangeCollection}
|
|
36
|
+
* @see
|
|
37
|
+
* ### **Interface**
|
|
38
|
+
*
|
|
39
|
+
* {@link IProtectedRangeCollection}
|
|
40
|
+
*/
|
|
41
|
+
export declare namespace IProtectedRangeCollection {
|
|
42
|
+
/**
|
|
43
|
+
* Options for adding an {@link IProtectedRange}.
|
|
44
|
+
*/
|
|
45
|
+
interface AddOptions extends IProtectedRange.Properties, ITransaction.OperationOptions {
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Options for searching for {@link IProtectedRange}s.
|
|
49
|
+
*/
|
|
50
|
+
interface GetItemsOptions extends ICollection.GetItemsOptions {
|
|
51
|
+
/**
|
|
52
|
+
* If provided, the search will be limited to items that intersect the range.
|
|
53
|
+
*/
|
|
54
|
+
address?: ICellRange.Address;
|
|
55
|
+
/**
|
|
56
|
+
* Indicate if items that are in hidden headers or marked as hidden should be returned.
|
|
57
|
+
*
|
|
58
|
+
* @defaultValue false
|
|
59
|
+
*/
|
|
60
|
+
ignoreHidden?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Only return items that are completely contained with the search bounds.
|
|
63
|
+
*
|
|
64
|
+
* @defaultValue false
|
|
65
|
+
*/
|
|
66
|
+
fullyContained?: boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Search with the given name. This is case insensitive.
|
|
69
|
+
*/
|
|
70
|
+
name?: string;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=IProtectedRangeCollection.d.ts.map
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { IRange } from '@sheetxl/primitives';
|
|
2
|
+
import { IListener } from '../listener';
|
|
3
|
+
import { ITransaction } from '../transaction';
|
|
4
|
+
import { ICellRanges } from '../cellRange';
|
|
5
|
+
import { Anchored } from '../anchored/Anchored';
|
|
6
|
+
import { AbstractAnchored } from '../anchored/AbstractAnchored';
|
|
7
|
+
import { IProtection } from '../protection';
|
|
8
|
+
import { IProtectedRange } from './IProtectedRange';
|
|
9
|
+
/**
|
|
10
|
+
* Implementation of {@link IProtectedRange}.
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* Extends {@link AbstractAnchored} directly rather than `AnchoredConditional`: a protected range
|
|
14
|
+
* has no condition and does not depend on cell values, so it never subscribes to range events.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ProtectedRange extends AbstractAnchored<State, CommitView, IProtectedRange.Events> implements IProtectedRange {
|
|
17
|
+
/**
|
|
18
|
+
* Session edit access — set by {@link unlock}, cleared by {@link relock}.
|
|
19
|
+
*
|
|
20
|
+
* @remarks
|
|
21
|
+
* A plain field, deliberately NOT in `State`: this is session state, so it must not serialize,
|
|
22
|
+
* must not land on the undo stack, and must not be restored by an undo of an unrelated edit.
|
|
23
|
+
* Model identity is stable across `AnchoredMap` clones (a shift re-points entries, it does not
|
|
24
|
+
* rebuild models), so the field survives every path that would rewrite `State`.
|
|
25
|
+
*
|
|
26
|
+
* Only meaningful when a password is set — see {@link isUnlocked}.
|
|
27
|
+
*/
|
|
28
|
+
private _sessionUnlocked;
|
|
29
|
+
/** @internal */
|
|
30
|
+
protected _initialize(options: ProtectedRange.ConstructorOptions): void;
|
|
31
|
+
/** @internal */
|
|
32
|
+
protected _getActionDescription(action: 'delete' | 'initialize' | 'updateListener'): string | null;
|
|
33
|
+
/**
|
|
34
|
+
* Whether the anchor is absolute. See {@link AbstractAnchored._isAnchorAbsolute}.
|
|
35
|
+
*
|
|
36
|
+
* @remarks
|
|
37
|
+
* Always — like data validations and conditional formats, a protected range pins to where it was
|
|
38
|
+
* authored and Excel presents its `sqref` as absolute.
|
|
39
|
+
*/
|
|
40
|
+
protected _isAnchorAbsolute(): boolean;
|
|
41
|
+
/** @internal */
|
|
42
|
+
protected _processContainerShift(options: Anchored.ShiftOptions): IRange.Coords | null | void;
|
|
43
|
+
/** {@inheritDoc IProtectedRange.getName} */
|
|
44
|
+
getName(): string;
|
|
45
|
+
/** {@inheritDoc IProtectedRange.setName} */
|
|
46
|
+
setName(name: string, options?: ITransaction.OperationOptions): this;
|
|
47
|
+
/** {@inheritDoc IProtectedRange.getIndex} */
|
|
48
|
+
getIndex(): number;
|
|
49
|
+
/** {@inheritDoc IProtectedRange.setIndex} */
|
|
50
|
+
setIndex(index: number): this;
|
|
51
|
+
/** {@inheritDoc IProtectedRange.setRanges} */
|
|
52
|
+
setRanges(address: ICellRanges.Address, options?: ITransaction.OperationOptions): this;
|
|
53
|
+
/** {@inheritDoc IProtectedRange.getSecurityDescriptor} */
|
|
54
|
+
getSecurityDescriptor(): string | null;
|
|
55
|
+
/** {@inheritDoc IProtectedRange.setSecurityDescriptor} */
|
|
56
|
+
setSecurityDescriptor(descriptor: string | null, options?: ITransaction.OperationOptions): this;
|
|
57
|
+
/** {@inheritDoc IProtectedRange.hasPassword} */
|
|
58
|
+
hasPassword(): boolean;
|
|
59
|
+
/** {@inheritDoc IProtectedRange.getEncryptedPassword} */
|
|
60
|
+
getEncryptedPassword(): Readonly<Partial<IProtection.EncryptedPassword>> | null;
|
|
61
|
+
/** {@inheritDoc IProtectedRange.setPassword} */
|
|
62
|
+
setPassword(password: string | null, options?: IProtectedRange.SetPasswordOptions): Promise<this>;
|
|
63
|
+
/** {@inheritDoc IProtectedRange.isUnlocked} */
|
|
64
|
+
isUnlocked(): boolean;
|
|
65
|
+
/** {@inheritDoc IProtectedRange.unlock} */
|
|
66
|
+
unlock(password?: string): Promise<boolean>;
|
|
67
|
+
/** {@inheritDoc IProtectedRange.relock} */
|
|
68
|
+
relock(): this;
|
|
69
|
+
/** {@inheritDoc IProtectedRange.checkPassword} */
|
|
70
|
+
checkPassword(password?: string): Promise<boolean>;
|
|
71
|
+
/** {@inheritDoc IProtectedRange.update} */
|
|
72
|
+
update(update: Partial<IProtectedRange.Properties> | IProtectedRange, options?: ITransaction.OperationOptions): this;
|
|
73
|
+
/** {@inheritDoc IListener.ISource.addListeners} */
|
|
74
|
+
addListeners(listeners: IProtectedRange.IListeners, options?: IListener.Options): IListener.Remove;
|
|
75
|
+
/** {@inheritDoc IProtectedRange.toJSON} */
|
|
76
|
+
toJSON(): IProtectedRange.JSON | null;
|
|
77
|
+
/** @internal */
|
|
78
|
+
protected _fromJSON(json?: IProtectedRange.JSON, options?: ITransaction.OperationOptions): void;
|
|
79
|
+
get [Symbol.toStringTag](): string;
|
|
80
|
+
toString(): string;
|
|
81
|
+
/** {@inheritDoc IProtectedRange.isIProtectedRange} */
|
|
82
|
+
get isIProtectedRange(): true;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Interfaces for creating a {@link ProtectedRange}.
|
|
86
|
+
*/
|
|
87
|
+
export declare namespace ProtectedRange {
|
|
88
|
+
interface ConstructorOptions extends Anchored.ConstructorOptions<IProtectedRange.JSON> {
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/** @internal */
|
|
92
|
+
interface State extends AbstractAnchored.State {
|
|
93
|
+
name: string;
|
|
94
|
+
securityDescriptor: string | null;
|
|
95
|
+
password: Partial<IProtection.EncryptedPassword> | null;
|
|
96
|
+
}
|
|
97
|
+
/** @internal */
|
|
98
|
+
interface CommitView extends AbstractAnchored.CommitView {
|
|
99
|
+
}
|
|
100
|
+
export {};
|
|
101
|
+
//# sourceMappingURL=ProtectedRange.d.ts.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ICellRanges } from '../cellRange';
|
|
2
|
+
import { IProtectedRangeCollection } from './IProtectedRangeCollection';
|
|
3
|
+
import { IProtectedRange } from './IProtectedRange';
|
|
4
|
+
export declare class ProtectedRangeCollection implements IProtectedRangeCollection {
|
|
5
|
+
private _add;
|
|
6
|
+
private _get;
|
|
7
|
+
private _getByName;
|
|
8
|
+
private _createItem;
|
|
9
|
+
constructor(add: (address: ICellRanges.Address | IProtectedRange, options?: IProtectedRangeCollection.AddOptions) => IProtectedRange, get: (address: ICellRanges.Address | null | undefined, ignoreHidden?: boolean, fullyContained?: boolean) => IProtectedRange[], getByName: (name: string) => IProtectedRange | null, createItem: (template?: IProtectedRange | null) => IProtectedRange);
|
|
10
|
+
/** {@inheritDoc IProtectedRangeCollection.add} */
|
|
11
|
+
add(address: ICellRanges.Address | IProtectedRange, options?: IProtectedRangeCollection.AddOptions): IProtectedRange;
|
|
12
|
+
/** {@inheritDoc ICollection.[Symbol.iterator]} */
|
|
13
|
+
[Symbol.iterator](): IterableIterator<IProtectedRange>;
|
|
14
|
+
/** {@inheritDoc IProtectedRangeCollection.getItems} */
|
|
15
|
+
getItems(options?: IProtectedRangeCollection.GetItemsOptions): IProtectedRange[];
|
|
16
|
+
/** {@inheritDoc IProtectedRangeCollection.createItem} */
|
|
17
|
+
createItem(template?: IProtectedRange | null): IProtectedRange;
|
|
18
|
+
/** {@inheritDoc IProtectedRangeCollection.getCount} */
|
|
19
|
+
getCount(): number;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=ProtectedRangeCollection.d.ts.map
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { IListener } from '../listener';
|
|
2
|
+
import { IProtection } from './IProtection';
|
|
3
|
+
import { ListenerEmitter } from '../listener/ListenerEmitter';
|
|
4
|
+
export declare class DefaultProtection<T, P extends IProtection.Properties, J extends IProtection.JSON> implements IProtection<T, P, J> {
|
|
5
|
+
protected _emitter: ListenerEmitter<this, IProtection.IListeners>;
|
|
6
|
+
protected _isPaused: boolean;
|
|
7
|
+
protected _password: Partial<IProtection.EncryptedPassword> | null;
|
|
8
|
+
protected _identities: IProtection.IdentityProvider[] | null;
|
|
9
|
+
protected _properties: Partial<P> | null;
|
|
10
|
+
protected _isReadOnly: boolean;
|
|
11
|
+
constructor(json?: J, isReadOnly?: boolean);
|
|
12
|
+
/** {@inheritDoc IProtection.lock} */
|
|
13
|
+
lock(properties?: Partial<P>, password?: string, algorithm?: string, spinCount?: number): Promise<IProtection<T, P, J>>;
|
|
14
|
+
/** {@inheritDoc IProtection.unlock} */
|
|
15
|
+
unlock(password?: string): Promise<IProtection<T, P, J>>;
|
|
16
|
+
/** {@inheritDoc IProtection.checkPassword} */
|
|
17
|
+
checkPassword(password?: string): Promise<boolean>;
|
|
18
|
+
/** {@inheritDoc IProtection.hasPassword} */
|
|
19
|
+
hasPassword(): boolean;
|
|
20
|
+
/** {@inheritDoc IProtection.pause} */
|
|
21
|
+
pause(password?: string): Promise<IProtection<T, P, J>>;
|
|
22
|
+
/** {@inheritDoc IProtection.resume} */
|
|
23
|
+
resume(): IProtection<T, P, J>;
|
|
24
|
+
/** {@inheritDoc IProtection.isPaused} */
|
|
25
|
+
isPaused(): boolean;
|
|
26
|
+
/** {@inheritDoc IProtection.isLocked} */
|
|
27
|
+
isLocked(): boolean;
|
|
28
|
+
/** {@inheritDoc IProtection.isReadOnly} */
|
|
29
|
+
isReadOnly(): boolean;
|
|
30
|
+
protected _validatePassword(password?: string): Promise<boolean>;
|
|
31
|
+
getProperties(): Partial<P> | null;
|
|
32
|
+
protected _isPropertyAllowed(property: keyof P): boolean;
|
|
33
|
+
protected _updateProperties(properties: IProtection.Properties | null): void;
|
|
34
|
+
protected _clearProperties(): void;
|
|
35
|
+
/** {@inheritDoc IListener.ISource.addListeners} */
|
|
36
|
+
addListeners(listeners: IProtection.IListeners, options?: IListener.Options): IListener.Remove;
|
|
37
|
+
fromJSON(json?: J): void;
|
|
38
|
+
protected _fromJSON(_json: J | null): void;
|
|
39
|
+
protected _toJSON(json: Partial<J>): Partial<J>;
|
|
40
|
+
/** {@inheritDoc IWorkbookProtection.toJSON} */
|
|
41
|
+
toJSON(): J | null;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=DefaultProtection.d.ts.map
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import { IListener } from '../listener';
|
|
2
|
+
/**
|
|
3
|
+
* Interface representing the base protection functionality for both workbook and sheet protection.
|
|
4
|
+
* This interface provides methods for locking, unlocking, and managing the protection state.
|
|
5
|
+
*/
|
|
6
|
+
export interface IProtection<T, P extends IProtection.Properties, J extends IProtection.JSON> {
|
|
7
|
+
/**
|
|
8
|
+
* Locks the object (workbook or sheet or range) with the specified options and password.
|
|
9
|
+
*
|
|
10
|
+
* @param password The password required to unlock the object.
|
|
11
|
+
* @param properties The properties to allow to remain unlocked.
|
|
12
|
+
* @param algorithm The algorithm for encrypting the password.
|
|
13
|
+
* @param spinCount The spin count for encrypting the password.
|
|
14
|
+
* @returns The `IProtection` instance for method chaining.
|
|
15
|
+
*
|
|
16
|
+
* @remarks
|
|
17
|
+
* By default all properties are locked but you can specify which properties to remain unlocked.
|
|
18
|
+
*/
|
|
19
|
+
lock(properties?: Partial<P>, password?: string, algorithm?: string, spinCount?: number): Promise<IProtection<T, P, J>>;
|
|
20
|
+
/**
|
|
21
|
+
* Unlocks the object (workbook or sheet) using the provided password.
|
|
22
|
+
*
|
|
23
|
+
* @param password The password required to unlock the object.
|
|
24
|
+
* @returns The `IProtection` instance for method chaining.
|
|
25
|
+
*
|
|
26
|
+
* @remarks
|
|
27
|
+
* If the correct password is provided, protection is removed from the object.
|
|
28
|
+
*/
|
|
29
|
+
unlock(password?: string): Promise<IProtection<T, P, J>>;
|
|
30
|
+
/**
|
|
31
|
+
* Temporarily disables protection with the provided password.
|
|
32
|
+
*
|
|
33
|
+
* @param password The password required to pause protection.
|
|
34
|
+
* @returns The `IProtection` instance for method chaining.
|
|
35
|
+
*
|
|
36
|
+
* @remarks
|
|
37
|
+
* This method allows temporarily pausing protection without permanently unlocking the object.
|
|
38
|
+
* Use {@link resume} to restore protection.
|
|
39
|
+
*/
|
|
40
|
+
pause(password?: string): Promise<IProtection<T, P, J>>;
|
|
41
|
+
/**
|
|
42
|
+
* Checks if the object is currently locked.
|
|
43
|
+
*
|
|
44
|
+
* @returns `true` if the object is locked, `false` otherwise.
|
|
45
|
+
*
|
|
46
|
+
* @remarks
|
|
47
|
+
* This method returns `true` If the lock is active.
|
|
48
|
+
*/
|
|
49
|
+
isLocked(): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Verifies if the provided password matches the current protection password.
|
|
52
|
+
*
|
|
53
|
+
* @param password The password to check against the current protection.
|
|
54
|
+
* @returns `true` if the password is correct, `false` otherwise.
|
|
55
|
+
*
|
|
56
|
+
* @remarks
|
|
57
|
+
* Use this method to validate the password before unlocking or modifying the protection settings.
|
|
58
|
+
*/
|
|
59
|
+
checkPassword(password?: string): Promise<boolean>;
|
|
60
|
+
/**
|
|
61
|
+
* Returns true if the protection has a password.
|
|
62
|
+
*/
|
|
63
|
+
hasPassword(): boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Resumes protection that was previously paused.
|
|
66
|
+
*
|
|
67
|
+
* @returns The `IProtection` instance for method chaining.
|
|
68
|
+
*
|
|
69
|
+
* @remarks
|
|
70
|
+
* This method restores protection after it was paused using the {@link pause} method.
|
|
71
|
+
*/
|
|
72
|
+
resume(): IProtection<T, P, J>;
|
|
73
|
+
/**
|
|
74
|
+
* Checks if the object has a locked but is paused.
|
|
75
|
+
*
|
|
76
|
+
* @returns `true` if the object is locked but paused, `false` otherwise.
|
|
77
|
+
*/
|
|
78
|
+
isPaused(): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* If the element is protected as readonly.
|
|
81
|
+
*
|
|
82
|
+
* @remarks
|
|
83
|
+
* Readonly is set cannot be changed.
|
|
84
|
+
*/
|
|
85
|
+
isReadOnly(): boolean;
|
|
86
|
+
/**
|
|
87
|
+
* Add Listeners.
|
|
88
|
+
*
|
|
89
|
+
* @see
|
|
90
|
+
* {@link IListener.ISource.addListeners}
|
|
91
|
+
*/
|
|
92
|
+
addListeners(listeners: IProtection.IListeners, options?: IListener.Options): IListener.Remove;
|
|
93
|
+
toJSON(): IProtection.JSON | null;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* {@inheritDoc IProtection}
|
|
97
|
+
* @see
|
|
98
|
+
* ### **Interface**
|
|
99
|
+
*
|
|
100
|
+
* {@link IProtection}
|
|
101
|
+
*/
|
|
102
|
+
export declare namespace IProtection {
|
|
103
|
+
interface Events<T, P extends IProtection.Properties, J extends IProtection.JSON> {
|
|
104
|
+
/**
|
|
105
|
+
* Called when the protection has changed collections has changed have changed.
|
|
106
|
+
*/
|
|
107
|
+
onChange?(source: IProtection<T, P, J>): void;
|
|
108
|
+
/**
|
|
109
|
+
* Called when the protection has changed collections has changed have changed.
|
|
110
|
+
*/
|
|
111
|
+
onLockChange?(source: IProtection<T, P, J>): void;
|
|
112
|
+
}
|
|
113
|
+
interface IListeners extends IListener.Callbacks<IProtection<any, any, any>, IProtection.Events<any, any, any>> {
|
|
114
|
+
}
|
|
115
|
+
interface Properties {
|
|
116
|
+
}
|
|
117
|
+
interface JSON extends Properties {
|
|
118
|
+
/**
|
|
119
|
+
* If this is specified then a password will be requested to unlock.
|
|
120
|
+
* If this is an empty object this indicates the object has been locked but without a password
|
|
121
|
+
*/
|
|
122
|
+
password?: Partial<IProtection.EncryptedPassword>;
|
|
123
|
+
identities?: IProtection.IdentityProvider[];
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Represents a locally stored encrypted password.
|
|
127
|
+
*
|
|
128
|
+
* @see
|
|
129
|
+
* * {@link https://docs.microsoft.com/en-us/dotnet/api/documentformat.openxml.presentation.modificationverifier?view=openxml-2.8.1}
|
|
130
|
+
*/
|
|
131
|
+
interface EncryptedPassword {
|
|
132
|
+
/**
|
|
133
|
+
* The hashed value that was generated during the protection process.
|
|
134
|
+
* This value is typically derived from the combination of a password and a salt.
|
|
135
|
+
*/
|
|
136
|
+
hash: string;
|
|
137
|
+
/**
|
|
138
|
+
* The salt value that was used during the protection process.
|
|
139
|
+
* The salt is combined with the password to produce the hash, adding an additional layer of security.
|
|
140
|
+
*/
|
|
141
|
+
salt: string;
|
|
142
|
+
/**
|
|
143
|
+
* The name of the hash algorithm to be used.
|
|
144
|
+
* Common values include `SHA-256`, `SHA-384`, and `SHA-512`.
|
|
145
|
+
*
|
|
146
|
+
* @defaultValue `SHA-512`
|
|
147
|
+
*/
|
|
148
|
+
algorithm?: string;
|
|
149
|
+
/**
|
|
150
|
+
* The number of iterations (also known as spin count) used during the hash computation process.
|
|
151
|
+
* A higher number increases the security by making brute-force attacks more difficult but also increases computation time.
|
|
152
|
+
*
|
|
153
|
+
* @defaultValue `100000`.
|
|
154
|
+
*/
|
|
155
|
+
spinCount?: number;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* **PLACEHOLDER** - Will integrate into the user identity system.
|
|
159
|
+
*/
|
|
160
|
+
interface IdentityProvider {
|
|
161
|
+
/**
|
|
162
|
+
* Optional setting to specify the relative security descriptor.
|
|
163
|
+
*
|
|
164
|
+
* The descriptor defines user accounts who may edit this range without providing a password to access the range. Removing this attribute shall
|
|
165
|
+
* remove all permissions granted or denied to users for this range.
|
|
166
|
+
*/
|
|
167
|
+
descriptor: string;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=IProtection.d.ts.map
|