javascript-obfuscator 2.18.1 → 3.0.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.
Files changed (735) hide show
  1. package/.husky/pre-commit +4 -0
  2. package/CHANGELOG.md +23 -0
  3. package/README.md +30 -28
  4. package/dist/index.browser.js +1 -1
  5. package/dist/index.browser.js.map +1 -1
  6. package/dist/index.cli.js +1 -1
  7. package/dist/index.cli.js.map +1 -1
  8. package/dist/index.js +1 -1
  9. package/dist/index.js.map +1 -1
  10. package/index.ts +39 -0
  11. package/package.json +44 -41
  12. package/typings/index.d.ts +12 -0
  13. package/typings/src/ASTParserFacade.d.ts +10 -0
  14. package/typings/src/JavaScriptObfuscator.d.ts +28 -0
  15. package/typings/src/JavaScriptObfuscatorCLIFacade.d.ts +5 -0
  16. package/typings/src/JavaScriptObfuscatorFacade.d.ts +13 -0
  17. package/typings/src/analyzers/calls-graph-analyzer/CallsGraphAnalyzer.d.ts +15 -0
  18. package/typings/src/analyzers/calls-graph-analyzer/callee-data-extractors/AbstractCalleeDataExtractor.d.ts +6 -0
  19. package/typings/src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionDeclarationCalleeDataExtractor.d.ts +7 -0
  20. package/typings/src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionExpressionCalleeDataExtractor.d.ts +7 -0
  21. package/typings/src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.d.ts +10 -0
  22. package/typings/src/analyzers/number-numerical-expression-analyzer/NumberNumericalExpressionAnalyzer.d.ts +13 -0
  23. package/typings/src/analyzers/prevailing-kind-of-variables-analyzer/PrevailingKindOfVariablesAnalyzer.d.ts +11 -0
  24. package/typings/src/analyzers/scope-analyzer/ScopeAnalyzer.d.ts +14 -0
  25. package/typings/src/analyzers/string-array-storage-analyzer/StringArrayStorageAnalyzer.d.ts +20 -0
  26. package/typings/src/cli/JavaScriptObfuscatorCLI.d.ts +26 -0
  27. package/typings/src/cli/sanitizers/ArraySanitizer.d.ts +2 -0
  28. package/typings/src/cli/sanitizers/BooleanSanitizer.d.ts +2 -0
  29. package/typings/src/cli/utils/CLIUtils.d.ts +6 -0
  30. package/typings/src/cli/utils/IdentifierNamesCacheFileUtils.d.ts +10 -0
  31. package/typings/src/cli/utils/ObfuscatedCodeFileUtils.d.ts +9 -0
  32. package/typings/src/cli/utils/SourceCodeFileUtils.d.ts +15 -0
  33. package/typings/src/code-transformers/AbstractCodeTransformer.d.ts +12 -0
  34. package/{src/code-transformers/CodeTransformerNamesGroupsBuilder.ts → typings/src/code-transformers/CodeTransformerNamesGroupsBuilder.d.ts} +2 -10
  35. package/typings/src/code-transformers/CodeTransformersRunner.d.ts +13 -0
  36. package/typings/src/code-transformers/preparing-transformers/HashbangOperatorTransformer.d.ts +11 -0
  37. package/typings/src/constants/AlphabetString.d.ts +1 -0
  38. package/typings/src/constants/AlphabetStringUppercase.d.ts +1 -0
  39. package/typings/src/constants/Base64Alphabet.d.ts +1 -0
  40. package/typings/src/constants/Base64AlphabetSwapped.d.ts +1 -0
  41. package/typings/src/constants/EcmaVersion.d.ts +1 -0
  42. package/typings/src/constants/NumbersString.d.ts +1 -0
  43. package/typings/src/container/InversifyContainerFacade.d.ts +15 -0
  44. package/typings/src/container/ServiceIdentifiers.d.ts +65 -0
  45. package/typings/src/container/modules/analyzers/AnalyzersModule.d.ts +2 -0
  46. package/typings/src/container/modules/code-transformers/CodeTransformersModule.d.ts +2 -0
  47. package/typings/src/container/modules/custom-code-helpers/CustomCodeHelpersModule.d.ts +2 -0
  48. package/typings/src/container/modules/custom-nodes/CustomNodesModule.d.ts +2 -0
  49. package/typings/src/container/modules/generators/GeneratorsModule.d.ts +2 -0
  50. package/typings/src/container/modules/node/NodeModule.d.ts +2 -0
  51. package/typings/src/container/modules/node-transformers/ControlFlowTransformersModule.d.ts +2 -0
  52. package/typings/src/container/modules/node-transformers/ConvertingTransformersModule.d.ts +2 -0
  53. package/typings/src/container/modules/node-transformers/DeadCodeInjectionTransformersModule.d.ts +2 -0
  54. package/typings/src/container/modules/node-transformers/FinalizingTransformersModule.d.ts +2 -0
  55. package/typings/src/container/modules/node-transformers/InitializingTransformersModule.d.ts +2 -0
  56. package/typings/src/container/modules/node-transformers/NodeTransformersModule.d.ts +2 -0
  57. package/typings/src/container/modules/node-transformers/PreparingTransformersModule.d.ts +2 -0
  58. package/typings/src/container/modules/node-transformers/RenameIdentifiersTransformersModule.d.ts +2 -0
  59. package/typings/src/container/modules/node-transformers/RenamePropertiesTransformersModule.d.ts +2 -0
  60. package/typings/src/container/modules/node-transformers/SimplifyingTransformersModule.d.ts +2 -0
  61. package/typings/src/container/modules/node-transformers/StringArrayTransformersModule.d.ts +2 -0
  62. package/typings/src/container/modules/options/OptionsModule.d.ts +2 -0
  63. package/typings/src/container/modules/storages/StoragesModule.d.ts +2 -0
  64. package/typings/src/container/modules/utils/UtilsModule.d.ts +2 -0
  65. package/typings/src/custom-code-helpers/AbstractCustomCodeHelper.d.ts +23 -0
  66. package/typings/src/custom-code-helpers/AbstractCustomCodeHelperGroup.d.ts +18 -0
  67. package/typings/src/custom-code-helpers/CustomCodeHelperFormatter.d.ts +10 -0
  68. package/typings/src/custom-code-helpers/CustomCodeHelperObfuscator.d.ts +10 -0
  69. package/typings/src/custom-code-helpers/calls-controller/CallsControllerFunctionCodeHelper.d.ts +16 -0
  70. package/typings/src/custom-code-helpers/common/templates/GlobalVariableNoEvalTemplate.d.ts +1 -0
  71. package/typings/src/custom-code-helpers/common/templates/GlobalVariableTemplate1.d.ts +1 -0
  72. package/typings/src/custom-code-helpers/common/templates/GlobalVariableTemplate2.d.ts +1 -0
  73. package/typings/src/custom-code-helpers/common/templates/SingleCallControllerTemplate.d.ts +1 -0
  74. package/typings/src/custom-code-helpers/console-output/ConsoleOutputDisableCodeHelper.d.ts +15 -0
  75. package/typings/src/custom-code-helpers/console-output/group/ConsoleOutputCodeHelperGroup.d.ts +16 -0
  76. package/typings/src/custom-code-helpers/console-output/templates/ConsoleOutputDisableTemplate.d.ts +1 -0
  77. package/typings/src/custom-code-helpers/debug-protection/DebugProtectionFunctionCallCodeHelper.d.ts +15 -0
  78. package/typings/src/custom-code-helpers/debug-protection/DebugProtectionFunctionCodeHelper.d.ts +14 -0
  79. package/typings/src/custom-code-helpers/debug-protection/DebugProtectionFunctionIntervalCodeHelper.d.ts +14 -0
  80. package/typings/src/custom-code-helpers/debug-protection/group/DebugProtectionCodeHelperGroup.d.ts +16 -0
  81. package/typings/src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebugProtectionFunctionTemplate.d.ts +1 -0
  82. package/typings/src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplate.d.ts +1 -0
  83. package/typings/src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplateNoEval.d.ts +1 -0
  84. package/typings/src/custom-code-helpers/debug-protection/templates/debug-protection-function-call/DebugProtectionFunctionCallTemplate.d.ts +1 -0
  85. package/typings/src/custom-code-helpers/debug-protection/templates/debug-protection-function-interval/DebugProtectionFunctionIntervalTemplate.d.ts +1 -0
  86. package/typings/src/custom-code-helpers/domain-lock/DomainLockCodeHelper.d.ts +17 -0
  87. package/typings/src/custom-code-helpers/domain-lock/group/DomainLockCustomCodeHelperGroup.d.ts +16 -0
  88. package/typings/src/custom-code-helpers/domain-lock/templates/DomainLockTemplate.d.ts +1 -0
  89. package/typings/src/custom-code-helpers/self-defending/SelfDefendingCodeHelper.d.ts +15 -0
  90. package/typings/src/custom-code-helpers/self-defending/group/SelfDefendingCodeHelperGroup.d.ts +16 -0
  91. package/typings/src/custom-code-helpers/self-defending/templates/SelfDefendingTemplate.d.ts +1 -0
  92. package/typings/src/custom-code-helpers/string-array/StringArrayCallsWrapperBase64CodeHelper.d.ts +4 -0
  93. package/typings/src/custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper.d.ts +21 -0
  94. package/typings/src/custom-code-helpers/string-array/StringArrayCallsWrapperRc4CodeHelper.d.ts +4 -0
  95. package/typings/src/custom-code-helpers/string-array/StringArrayCodeHelper.d.ts +17 -0
  96. package/typings/src/custom-code-helpers/string-array/StringArrayRotateFunctionCodeHelper.d.ts +17 -0
  97. package/typings/src/custom-code-helpers/string-array/group/StringArrayCodeHelperGroup.d.ts +21 -0
  98. package/typings/src/custom-code-helpers/string-array/templates/string-array/StringArrayTemplate.d.ts +1 -0
  99. package/typings/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/AtobTemplate.d.ts +1 -0
  100. package/typings/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/Rc4Template.d.ts +1 -0
  101. package/typings/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/SelfDefendingTemplate.d.ts +3 -0
  102. package/typings/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayBase64DecodeTemplate.d.ts +2 -0
  103. package/typings/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayCallsWrapperTemplate.d.ts +1 -0
  104. package/typings/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayRC4DecodeTemplate.d.ts +2 -0
  105. package/typings/src/custom-code-helpers/string-array/templates/string-array-rotate-function/StringArrayRotateFunctionTemplate.d.ts +1 -0
  106. package/typings/src/custom-nodes/AbstractCustomNode.d.ts +18 -0
  107. package/typings/src/custom-nodes/control-flow-flattening-nodes/BinaryExpressionFunctionNode.d.ts +13 -0
  108. package/typings/src/custom-nodes/control-flow-flattening-nodes/BlockStatementControlFlowFlatteningNode.d.ts +15 -0
  109. package/typings/src/custom-nodes/control-flow-flattening-nodes/CallExpressionFunctionNode.d.ts +13 -0
  110. package/typings/src/custom-nodes/control-flow-flattening-nodes/LogicalExpressionFunctionNode.d.ts +13 -0
  111. package/typings/src/custom-nodes/control-flow-flattening-nodes/StringLiteralNode.d.ts +12 -0
  112. package/typings/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/CallExpressionControlFlowStorageCallNode.d.ts +16 -0
  113. package/typings/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ControlFlowStorageNode.d.ts +13 -0
  114. package/typings/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ExpressionWithOperatorControlFlowStorageCallNode.d.ts +16 -0
  115. package/typings/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/StringLiteralControlFlowStorageCallNode.d.ts +13 -0
  116. package/typings/src/custom-nodes/dead-code-injection-nodes/BlockStatementDeadCodeInjectionNode.d.ts +15 -0
  117. package/typings/src/custom-nodes/object-expression-keys-transformer-nodes/ObjectExpressionVariableDeclarationHostNode.d.ts +15 -0
  118. package/typings/src/custom-nodes/string-array-nodes/AbstractStringArrayCallNode.d.ts +19 -0
  119. package/typings/src/custom-nodes/string-array-nodes/StringArrayCallNode.d.ts +21 -0
  120. package/typings/src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperFunctionNode.d.ts +20 -0
  121. package/typings/src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperVariableNode.d.ts +17 -0
  122. package/typings/src/custom-nodes/string-array-nodes/string-array-index-nodes/AbstractStringArrayIndexNode.d.ts +10 -0
  123. package/typings/src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumberIndexNode.d.ts +8 -0
  124. package/typings/src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumericStringIndexNode.d.ts +8 -0
  125. package/typings/src/decorators/Initializable.d.ts +2 -0
  126. package/typings/src/enums/ObfuscationTarget.d.ts +5 -0
  127. package/typings/src/enums/StringSeparator.d.ts +5 -0
  128. package/typings/src/enums/analyzers/calls-graph-analyzer/CalleeDataExtractor.d.ts +5 -0
  129. package/typings/src/enums/code-transformers/CodeTransformationStage.d.ts +4 -0
  130. package/typings/src/enums/code-transformers/CodeTransformer.d.ts +3 -0
  131. package/typings/src/enums/custom-code-helpers/CustomCodeHelper.d.ts +14 -0
  132. package/typings/src/enums/custom-code-helpers/CustomCodeHelperGroup.d.ts +7 -0
  133. package/typings/src/enums/custom-nodes/ControlFlowCustomNode.d.ts +11 -0
  134. package/typings/src/enums/custom-nodes/DeadCodeInjectionCustomNode.d.ts +3 -0
  135. package/typings/src/enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode.d.ts +3 -0
  136. package/typings/src/enums/custom-nodes/StringArrayCustomNode.d.ts +5 -0
  137. package/typings/src/enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode.d.ts +4 -0
  138. package/typings/src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.d.ts +6 -0
  139. package/typings/src/enums/logger/LoggingMessage.d.ts +9 -0
  140. package/typings/src/enums/logger/LoggingPrefix.d.ts +4 -0
  141. package/typings/src/enums/node/NodeType.d.ts +66 -0
  142. package/typings/src/enums/node/ObfuscatingGuardResult.d.ts +5 -0
  143. package/typings/src/enums/node-transformers/NodeTransformationStage.d.ts +12 -0
  144. package/typings/src/enums/node-transformers/NodeTransformer.d.ts +37 -0
  145. package/typings/src/enums/node-transformers/VisitorDirection.d.ts +4 -0
  146. package/typings/src/enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer.d.ts +6 -0
  147. package/typings/src/enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor.d.ts +4 -0
  148. package/typings/src/enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard.d.ts +7 -0
  149. package/typings/src/enums/node-transformers/rename-properties-transformers/RenamePropertiesMode.d.ts +4 -0
  150. package/typings/src/enums/node-transformers/string-array-transformers/StringArrayEncoding.d.ts +5 -0
  151. package/typings/src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.d.ts +4 -0
  152. package/typings/src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.d.ts +4 -0
  153. package/typings/src/enums/options/presets/OptionsPreset.d.ts +6 -0
  154. package/typings/src/enums/source-map/SourceMapMode.d.ts +4 -0
  155. package/typings/src/enums/source-map/SourceMapSourcesMode.d.ts +4 -0
  156. package/typings/src/generators/identifier-names-generators/AbstractIdentifierNamesGenerator.d.ts +20 -0
  157. package/typings/src/generators/identifier-names-generators/DictionaryIdentifierNamesGenerator.d.ts +18 -0
  158. package/typings/src/generators/identifier-names-generators/HexadecimalIdentifierNamesGenerator.d.ts +11 -0
  159. package/typings/src/generators/identifier-names-generators/MangledIdentifierNamesGenerator.d.ts +21 -0
  160. package/typings/src/generators/identifier-names-generators/MangledShuffledIdentifierNamesGenerator.d.ts +13 -0
  161. package/{src/interfaces/IEncodedValue.ts → typings/src/interfaces/IEncodedValue.d.ts} +0 -1
  162. package/{src/interfaces/IGeneratorOutput.ts → typings/src/interfaces/IGeneratorOutput.d.ts} +0 -0
  163. package/typings/src/interfaces/IInitializable.d.ts +4 -0
  164. package/typings/src/interfaces/IJavaScriptObfsucator.d.ts +4 -0
  165. package/typings/src/interfaces/ITransformer.d.ts +3 -0
  166. package/typings/src/interfaces/analyzers/IAnalyzer.d.ts +3 -0
  167. package/{src/interfaces/analyzers/calls-graph-analyzer/ICalleeData.ts → typings/src/interfaces/analyzers/calls-graph-analyzer/ICalleeData.d.ts} +0 -1
  168. package/typings/src/interfaces/analyzers/calls-graph-analyzer/ICalleeDataExtractor.d.ts +5 -0
  169. package/{src/interfaces/analyzers/calls-graph-analyzer/ICallsGraphAnalyzer.ts → typings/src/interfaces/analyzers/calls-graph-analyzer/ICallsGraphAnalyzer.d.ts} +1 -7
  170. package/{src/interfaces/analyzers/calls-graph-analyzer/ICallsGraphData.ts → typings/src/interfaces/analyzers/calls-graph-analyzer/ICallsGraphData.d.ts} +0 -1
  171. package/typings/src/interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer.d.ts +6 -0
  172. package/{src/interfaces/analyzers/number-numerical-expression-analyzer/INumberNumericalExpressionAnalyzer.ts → typings/src/interfaces/analyzers/number-numerical-expression-analyzer/INumberNumericalExpressionAnalyzer.d.ts} +1 -11
  173. package/typings/src/interfaces/analyzers/scope-analyzer/IScopeAnalyzer.d.ts +7 -0
  174. package/typings/src/interfaces/analyzers/string-array-storage-analyzer/IStringArrayStorageAnalyzer.d.ts +10 -0
  175. package/{src/interfaces/cli/IFileData.ts → typings/src/interfaces/cli/IFileData.d.ts} +0 -0
  176. package/typings/src/interfaces/code-transformers/ICodeTransformer.d.ts +6 -0
  177. package/typings/src/interfaces/code-transformers/ICodeTransformersRunner.d.ts +5 -0
  178. package/typings/src/interfaces/container/IInversifyContainerFacade.d.ts +8 -0
  179. package/typings/src/interfaces/custom-code-helpers/ICustomCodeHelper.d.ts +5 -0
  180. package/typings/src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.d.ts +6 -0
  181. package/{src/interfaces/custom-code-helpers/ICustomCodeHelperGroup.ts → typings/src/interfaces/custom-code-helpers/ICustomCodeHelperGroup.d.ts} +2 -9
  182. package/typings/src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.d.ts +4 -0
  183. package/typings/src/interfaces/custom-nodes/ICustomNode.d.ts +5 -0
  184. package/{src/interfaces/custom-nodes/string-array-nodes/IStringArrayIndexNode.ts → typings/src/interfaces/custom-nodes/string-array-nodes/IStringArrayIndexNode.d.ts} +0 -1
  185. package/typings/src/interfaces/generators/identifier-names-generators/IIdentifierNamesGenerator.d.ts +11 -0
  186. package/typings/src/interfaces/logger/ILogger.d.ts +6 -0
  187. package/typings/src/interfaces/node/IScopeIdentifiersTraverser.d.ts +8 -0
  188. package/{src/interfaces/node/IScopeIdentifiersTraverserCallbackData.ts → typings/src/interfaces/node/IScopeIdentifiersTraverserCallbackData.d.ts} +0 -2
  189. package/{src/interfaces/node/IScopeThroughIdentifiersTraverserCallbackData.ts → typings/src/interfaces/node/IScopeThroughIdentifiersTraverserCallbackData.d.ts} +0 -2
  190. package/typings/src/interfaces/node-transformers/INodeTransformer.d.ts +13 -0
  191. package/typings/src/interfaces/node-transformers/INodeTransformersRunner.d.ts +6 -0
  192. package/typings/src/interfaces/node-transformers/IVisitor.d.ts +7 -0
  193. package/typings/src/interfaces/node-transformers/control-flow-transformers/IControlFlowReplacer.d.ts +5 -0
  194. package/typings/src/interfaces/node-transformers/converting-transformers/object-expression-extractors/IObjectExpressionExtractor.d.ts +5 -0
  195. package/{src/interfaces/node-transformers/converting-transformers/object-expression-extractors/IObjectExpressionExtractorResult.ts → typings/src/interfaces/node-transformers/converting-transformers/object-expression-extractors/IObjectExpressionExtractorResult.d.ts} +0 -12
  196. package/{src/interfaces/node-transformers/preparing-transformers/obfuscating-guards/IObfuscatingGuard.ts → typings/src/interfaces/node-transformers/preparing-transformers/obfuscating-guards/IObfuscatingGuard.d.ts} +0 -5
  197. package/typings/src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.d.ts +9 -0
  198. package/typings/src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IThroughIdentifierReplacer.d.ts +4 -0
  199. package/typings/src/interfaces/node-transformers/rename-properties-transformers/replacer/IRenamePropertiesReplacer.d.ts +5 -0
  200. package/{src/interfaces/node-transformers/simplifying-transformers/IIteratedStatementsSimplifyData.ts → typings/src/interfaces/node-transformers/simplifying-transformers/IIteratedStatementsSimplifyData.d.ts} +0 -12
  201. package/{src/interfaces/node-transformers/simplifying-transformers/IStatementSimplifyData.ts → typings/src/interfaces/node-transformers/simplifying-transformers/IStatementSimplifyData.d.ts} +0 -20
  202. package/{src/interfaces/node-transformers/string-array-transformers/IStringArrayScopeCallsWrapperData.ts → typings/src/interfaces/node-transformers/string-array-transformers/IStringArrayScopeCallsWrapperData.d.ts} +0 -12
  203. package/{src/interfaces/node-transformers/string-array-transformers/IStringArrayScopeCallsWrapperParameterIndexesData.ts → typings/src/interfaces/node-transformers/string-array-transformers/IStringArrayScopeCallsWrapperParameterIndexesData.d.ts} +0 -7
  204. package/{src/interfaces/node-transformers/string-array-transformers/IStringArrayScopeCallsWrappersData.ts → typings/src/interfaces/node-transformers/string-array-transformers/IStringArrayScopeCallsWrappersData.d.ts} +0 -9
  205. package/{src/interfaces/options/ICLIOptions.ts → typings/src/interfaces/options/ICLIOptions.d.ts} +0 -1
  206. package/{src/interfaces/options/IOptions.ts → typings/src/interfaces/options/IOptions.d.ts} +3 -5
  207. package/typings/src/interfaces/options/IOptionsNormalizer.d.ts +4 -0
  208. package/typings/src/interfaces/source-code/IObfuscationResult.d.ts +9 -0
  209. package/typings/src/interfaces/source-code/ISourceCode.d.ts +4 -0
  210. package/typings/src/interfaces/source-code/ISourceMap.d.ts +5 -0
  211. package/typings/src/interfaces/storages/IArrayStorage.d.ts +13 -0
  212. package/typings/src/interfaces/storages/IMapStorage.d.ts +15 -0
  213. package/{src/interfaces/storages/identifier-names-cache/IGlobalIdentifierNamesCacheStorage.ts → typings/src/interfaces/storages/identifier-names-cache/IGlobalIdentifierNamesCacheStorage.d.ts} +2 -3
  214. package/{src/interfaces/storages/identifier-names-cache/IPropertyIdentifierNamesCacheStorage.ts → typings/src/interfaces/storages/identifier-names-cache/IPropertyIdentifierNamesCacheStorage.d.ts} +2 -3
  215. package/typings/src/interfaces/storages/string-array-transformers/ILiteralNodesCacheStorage.d.ts +7 -0
  216. package/{src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrappersDataStorage.ts → typings/src/interfaces/storages/string-array-transformers/IStringArrayScopeCallsWrappersDataStorage.d.ts} +2 -7
  217. package/typings/src/interfaces/storages/string-array-transformers/IStringArrayStorage.d.ts +11 -0
  218. package/{src/interfaces/storages/string-array-transformers/IStringArrayStorageItem.ts → typings/src/interfaces/storages/string-array-transformers/IStringArrayStorageItem.d.ts} +0 -1
  219. package/typings/src/interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage.d.ts +8 -0
  220. package/typings/src/interfaces/utils/IArrayUtils.d.ts +9 -0
  221. package/typings/src/interfaces/utils/ICryptUtils.d.ts +5 -0
  222. package/typings/src/interfaces/utils/ICryptUtilsStringArray.d.ts +3 -0
  223. package/typings/src/interfaces/utils/IEscapeSequenceEncoder.d.ts +3 -0
  224. package/typings/src/interfaces/utils/ILevelledTopologicalSorter.d.ts +5 -0
  225. package/typings/src/interfaces/utils/IRandomGenerator.d.ts +10 -0
  226. package/typings/src/interfaces/utils/ITransformerNamesGroupsBuilder.d.ts +4 -0
  227. package/typings/src/logger/Logger.d.ts +16 -0
  228. package/typings/src/node/NodeAppender.d.ts +17 -0
  229. package/typings/src/node/NodeFactory.d.ts +43 -0
  230. package/typings/src/node/NodeGuards.d.ts +79 -0
  231. package/typings/src/node/NodeLexicalScopeUtils.d.ts +7 -0
  232. package/typings/src/node/NodeLiteralUtils.d.ts +6 -0
  233. package/typings/src/node/NodeMetadata.d.ts +8 -0
  234. package/typings/src/node/NodeStatementUtils.d.ts +13 -0
  235. package/typings/src/node/NodeUtils.d.ts +11 -0
  236. package/typings/src/node/NumericalExpressionDataToNodeConverter.d.ts +10 -0
  237. package/typings/src/node/ScopeIdentifiersTraverser.d.ts +16 -0
  238. package/typings/src/node-transformers/AbstractNodeTransformer.d.ts +17 -0
  239. package/{src/node-transformers/NodeTransformerNamesGroupsBuilder.ts → typings/src/node-transformers/NodeTransformerNamesGroupsBuilder.d.ts} +2 -10
  240. package/typings/src/node-transformers/NodeTransformersRunner.d.ts +15 -0
  241. package/typings/src/node-transformers/control-flow-transformers/BlockStatementControlFlowTransformer.d.ts +17 -0
  242. package/typings/src/node-transformers/control-flow-transformers/FunctionControlFlowTransformer.d.ts +28 -0
  243. package/typings/src/node-transformers/control-flow-transformers/control-flow-replacers/AbstractControlFlowReplacer.d.ts +17 -0
  244. package/typings/src/node-transformers/control-flow-transformers/control-flow-replacers/BinaryExpressionControlFlowReplacer.d.ts +11 -0
  245. package/typings/src/node-transformers/control-flow-transformers/control-flow-replacers/CallExpressionControlFlowReplacer.d.ts +12 -0
  246. package/typings/src/node-transformers/control-flow-transformers/control-flow-replacers/ExpressionWithOperatorControlFlowReplacer.d.ts +9 -0
  247. package/typings/src/node-transformers/control-flow-transformers/control-flow-replacers/LogicalExpressionControlFlowReplacer.d.ts +12 -0
  248. package/typings/src/node-transformers/control-flow-transformers/control-flow-replacers/StringLiteralControlFlowReplacer.d.ts +12 -0
  249. package/typings/src/node-transformers/converting-transformers/BooleanLiteralTransformer.d.ts +13 -0
  250. package/typings/src/node-transformers/converting-transformers/ClassFieldTransformer.d.ts +14 -0
  251. package/typings/src/node-transformers/converting-transformers/ExportSpecifierTransformer.d.ts +11 -0
  252. package/typings/src/node-transformers/converting-transformers/MemberExpressionTransformer.d.ts +11 -0
  253. package/typings/src/node-transformers/converting-transformers/NumberLiteralTransformer.d.ts +14 -0
  254. package/typings/src/node-transformers/converting-transformers/NumberToNumericalExpressionTransformer.d.ts +14 -0
  255. package/typings/src/node-transformers/converting-transformers/ObjectExpressionKeysTransformer.d.ts +22 -0
  256. package/typings/src/node-transformers/converting-transformers/ObjectExpressionTransformer.d.ts +13 -0
  257. package/typings/src/node-transformers/converting-transformers/ObjectPatternPropertiesTransformer.d.ts +11 -0
  258. package/typings/src/node-transformers/converting-transformers/SplitStringTransformer.d.ts +17 -0
  259. package/typings/src/node-transformers/converting-transformers/TemplateLiteralTransformer.d.ts +13 -0
  260. package/typings/src/node-transformers/converting-transformers/object-expression-extractors/BasePropertiesExtractor.d.ts +13 -0
  261. package/typings/src/node-transformers/converting-transformers/object-expression-extractors/ObjectExpressionToVariableDeclarationExtractor.d.ts +13 -0
  262. package/typings/src/node-transformers/dead-code-injection-transformers/DeadCodeInjectionIdentifiersTransformer.d.ts +18 -0
  263. package/typings/src/node-transformers/dead-code-injection-transformers/DeadCodeInjectionTransformer.d.ts +35 -0
  264. package/typings/src/node-transformers/finalizing-transformers/DirectivePlacementTransformer.d.ts +16 -0
  265. package/typings/src/node-transformers/finalizing-transformers/EscapeSequenceTransformer.d.ts +15 -0
  266. package/typings/src/node-transformers/initializing-transformers/CommentsTransformer.d.ts +15 -0
  267. package/typings/src/node-transformers/preparing-transformers/CustomCodeHelpersTransformer.d.ts +23 -0
  268. package/typings/src/node-transformers/preparing-transformers/EvalCallExpressionTransformer.d.ts +19 -0
  269. package/typings/src/node-transformers/preparing-transformers/MetadataTransformer.d.ts +13 -0
  270. package/typings/src/node-transformers/preparing-transformers/ObfuscatingGuardsTransformer.d.ts +17 -0
  271. package/typings/src/node-transformers/preparing-transformers/ParentificationTransformer.d.ts +11 -0
  272. package/typings/src/node-transformers/preparing-transformers/VariablePreserveTransformer.d.ts +20 -0
  273. package/typings/src/node-transformers/preparing-transformers/obfuscating-guards/BlackListObfuscatingGuard.d.ts +9 -0
  274. package/typings/src/node-transformers/preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard.d.ts +11 -0
  275. package/typings/src/node-transformers/preparing-transformers/obfuscating-guards/ForceTransformStringObfuscatingGuard.d.ts +10 -0
  276. package/typings/src/node-transformers/preparing-transformers/obfuscating-guards/IgnoredImportObfuscatingGuard.d.ts +11 -0
  277. package/typings/src/node-transformers/preparing-transformers/obfuscating-guards/ReservedStringObfuscatingGuard.d.ts +10 -0
  278. package/typings/src/node-transformers/rename-identifiers-transformers/LabeledStatementTransformer.d.ts +15 -0
  279. package/typings/src/node-transformers/rename-identifiers-transformers/ScopeIdentifiersTransformer.d.ts +28 -0
  280. package/typings/src/node-transformers/rename-identifiers-transformers/ScopeThroughIdentifiersTransformer.d.ts +19 -0
  281. package/typings/src/node-transformers/rename-identifiers-transformers/replacer/IdentifierReplacer.d.ts +19 -0
  282. package/typings/src/node-transformers/rename-identifiers-transformers/through-replacer/ThroughIdentifierReplacer.d.ts +11 -0
  283. package/typings/src/node-transformers/rename-properties-transformers/RenamePropertiesTransformer.d.ts +20 -0
  284. package/typings/src/node-transformers/rename-properties-transformers/replacer/RenamePropertiesReplacer.d.ts +21 -0
  285. package/typings/src/node-transformers/simplifying-transformers/AbstractStatementSimplifyTransformer.d.ts +16 -0
  286. package/typings/src/node-transformers/simplifying-transformers/BlockStatementSimplifyTransformer.d.ts +13 -0
  287. package/typings/src/node-transformers/simplifying-transformers/ExpressionStatementsMergeTransformer.d.ts +13 -0
  288. package/typings/src/node-transformers/simplifying-transformers/IfStatementSimplifyTransformer.d.ts +16 -0
  289. package/typings/src/node-transformers/simplifying-transformers/VariableDeclarationsMergeTransformer.d.ts +13 -0
  290. package/typings/src/node-transformers/string-array-transformers/StringArrayRotateFunctionTransformer.d.ts +27 -0
  291. package/typings/src/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperTransformer.d.ts +28 -0
  292. package/typings/src/node-transformers/string-array-transformers/StringArrayTransformer.d.ts +37 -0
  293. package/typings/src/options/Options.d.ts +69 -0
  294. package/typings/src/options/OptionsNormalizer.d.ts +6 -0
  295. package/typings/src/options/ValidationErrorsFormatter.d.ts +5 -0
  296. package/typings/src/options/normalizer-rules/ControlFlowFlatteningThresholdRule.d.ts +2 -0
  297. package/typings/src/options/normalizer-rules/DeadCodeInjectionRule.d.ts +2 -0
  298. package/typings/src/options/normalizer-rules/DeadCodeInjectionThresholdRule.d.ts +2 -0
  299. package/typings/src/options/normalizer-rules/DomainLockRedirectUrlRule.d.ts +2 -0
  300. package/typings/src/options/normalizer-rules/DomainLockRule.d.ts +2 -0
  301. package/typings/src/options/normalizer-rules/IdentifierNamesCacheRule.d.ts +2 -0
  302. package/typings/src/options/normalizer-rules/InputFileNameRule.d.ts +2 -0
  303. package/typings/src/options/normalizer-rules/SeedRule.d.ts +2 -0
  304. package/typings/src/options/normalizer-rules/SelfDefendingRule.d.ts +2 -0
  305. package/typings/src/options/normalizer-rules/SourceMapBaseUrlRule.d.ts +2 -0
  306. package/typings/src/options/normalizer-rules/SourceMapFileNameRule.d.ts +2 -0
  307. package/typings/src/options/normalizer-rules/SplitStringsChunkLengthRule.d.ts +2 -0
  308. package/typings/src/options/normalizer-rules/StringArrayEncodingRule.d.ts +2 -0
  309. package/typings/src/options/normalizer-rules/StringArrayRule.d.ts +2 -0
  310. package/typings/src/options/normalizer-rules/StringArrayWappersChainedCalls.d.ts +2 -0
  311. package/typings/src/options/presets/Default.d.ts +2 -0
  312. package/typings/src/options/presets/HighObfuscation.d.ts +2 -0
  313. package/typings/src/options/presets/LowObfuscation.d.ts +2 -0
  314. package/typings/src/options/presets/MediumObfuscation.d.ts +2 -0
  315. package/typings/src/options/presets/NoCustomNodes.d.ts +2 -0
  316. package/typings/src/options/validators/IsAllowedForObfuscationTargets.d.ts +5 -0
  317. package/typings/src/options/validators/IsDomainLockRedirectUrl.d.ts +1 -0
  318. package/typings/src/options/validators/IsIdentifierNamesCache.d.ts +3 -0
  319. package/typings/src/options/validators/IsInputFileName.d.ts +1 -0
  320. package/typings/src/source-code/ObfuscationResult.d.ts +22 -0
  321. package/typings/src/source-code/SourceCode.d.ts +9 -0
  322. package/typings/src/storages/ArrayStorage.d.ts +21 -0
  323. package/typings/src/storages/MapStorage.d.ts +22 -0
  324. package/typings/src/storages/custom-code-helpers/CustomCodeHelperGroupStorage.d.ts +11 -0
  325. package/typings/src/storages/custom-nodes/ControlFlowStorage.d.ts +7 -0
  326. package/typings/src/storages/identifier-names-cache/GlobalIdentifierNamesCacheStorage.d.ts +8 -0
  327. package/typings/src/storages/identifier-names-cache/PropertyIdentifierNamesCacheStorage.d.ts +8 -0
  328. package/typings/src/storages/string-array-transformers/LiteralNodesCacheStorage.d.ts +11 -0
  329. package/typings/src/storages/string-array-transformers/StringArrayScopeCallsWrappersDataStorage.d.ts +9 -0
  330. package/typings/src/storages/string-array-transformers/StringArrayStorage.d.ts +39 -0
  331. package/typings/src/storages/string-array-transformers/VisitedLexicalScopeNodesStackStorage.d.ts +14 -0
  332. package/typings/src/types/TConstructor.d.ts +1 -0
  333. package/typings/src/types/TDictionary.d.ts +3 -0
  334. package/{src/types/TIdentifierNamesCache.ts → typings/src/types/TIdentifierNamesCache.d.ts} +1 -3
  335. package/typings/src/types/TIdentifierNamesCacheDictionary.d.ts +2 -0
  336. package/typings/src/types/TInitialData.d.ts +2 -0
  337. package/typings/src/types/TObfuscationResultsObject.d.ts +4 -0
  338. package/typings/src/types/analyzers/calls-graph-analyzer/TObjectMembersCallsChain.d.ts +1 -0
  339. package/typings/src/types/analyzers/number-numerical-expression-analyzer/TNumberNumericalExpressionData.d.ts +1 -0
  340. package/typings/src/types/cli/TCLISanitizer.d.ts +1 -0
  341. package/{src/types/container/calls-graph-analyzer/TCalleeDataExtractorFactory.ts → typings/src/types/container/calls-graph-analyzer/TCalleeDataExtractorFactory.d.ts} +1 -3
  342. package/{src/types/container/code-transformers/TCodeTransformerFactory.ts → typings/src/types/container/code-transformers/TCodeTransformerFactory.d.ts} +1 -3
  343. package/{src/types/container/custom-code-helpers/TCustomCodeHelperFactory.ts → typings/src/types/container/custom-code-helpers/TCustomCodeHelperFactory.d.ts} +1 -5
  344. package/{src/types/container/custom-code-helpers/TCustomCodeHelperGroupFactory.ts → typings/src/types/container/custom-code-helpers/TCustomCodeHelperGroupFactory.d.ts} +1 -3
  345. package/typings/src/types/container/custom-nodes/TControlFlowCustomNodeFactory.d.ts +3 -0
  346. package/typings/src/types/container/custom-nodes/TDeadNodeInjectionCustomNodeFactory.d.ts +3 -0
  347. package/typings/src/types/container/custom-nodes/TObjectExpressionKeysTransformerCustomNodeFactory.d.ts +3 -0
  348. package/typings/src/types/container/custom-nodes/TStringArrayCustomNodeFactory.d.ts +3 -0
  349. package/{src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.ts → typings/src/types/container/custom-nodes/string-array-index-nodes/TStringArrayIndexNodeFactory.d.ts} +1 -3
  350. package/{src/types/container/generators/TIdentifierNamesGeneratorFactory.ts → typings/src/types/container/generators/TIdentifierNamesGeneratorFactory.d.ts} +1 -2
  351. package/{src/types/container/node-transformers/TControlFlowReplacerFactory.ts → typings/src/types/container/node-transformers/TControlFlowReplacerFactory.d.ts} +1 -3
  352. package/typings/src/types/container/node-transformers/TControlFlowStorageFactory.d.ts +2 -0
  353. package/{src/types/container/node-transformers/TNodeTransformerFactory.ts → typings/src/types/container/node-transformers/TNodeTransformerFactory.d.ts} +1 -3
  354. package/{src/types/container/node-transformers/TObfuscatingGuardFactory.ts → typings/src/types/container/node-transformers/TObfuscatingGuardFactory.d.ts} +1 -3
  355. package/{src/types/container/node-transformers/TObjectExpressionExtractorFactory.ts → typings/src/types/container/node-transformers/TObjectExpressionExtractorFactory.d.ts} +1 -4
  356. package/typings/src/types/container/source-code/TObfuscationResultFactory.d.ts +2 -0
  357. package/typings/src/types/custom-code-helpers/TCustomCodeHelpersGroupAppendMethodName.d.ts +2 -0
  358. package/typings/src/types/custom-code-helpers/TCustomCodeHelpersGroupAppendMethods.d.ts +6 -0
  359. package/typings/src/types/node/TNodeWithLexicalScope.d.ts +2 -0
  360. package/typings/src/types/node/TNodeWithLexicalScopeStatements.d.ts +2 -0
  361. package/typings/src/types/node/TNodeWithSingleStatementBody.d.ts +7 -0
  362. package/typings/src/types/node/TNodeWithStatements.d.ts +2 -0
  363. package/typings/src/types/node/TNumericalExpressionDataToNodeConverterLiteralNodeGetter.d.ts +2 -0
  364. package/{src/types/node/TObfuscatingGuard.ts → typings/src/types/node/TObfuscatingGuard.d.ts} +1 -3
  365. package/typings/src/types/node/TScopeIdentifiersTraverserCallback.d.ts +1 -0
  366. package/typings/src/types/node/TStatement.d.ts +2 -0
  367. package/typings/src/types/node/TStringLiteralNode.d.ts +4 -0
  368. package/typings/src/types/node-transformers/TVisitorDirection.d.ts +1 -0
  369. package/typings/src/types/node-transformers/TVisitorFunction.d.ts +3 -0
  370. package/typings/src/types/node-transformers/TVisitorResult.d.ts +4 -0
  371. package/{src/types/node-transformers/string-array-transformers/TStringArrayScopeCallsWrappersDataByEncoding.ts → typings/src/types/node-transformers/string-array-transformers/TStringArrayScopeCallsWrappersDataByEncoding.d.ts} +1 -3
  372. package/{src/types/options/TInputCLIOptions.ts → typings/src/types/options/TInputCLIOptions.d.ts} +1 -3
  373. package/{src/types/options/TInputOptions.ts → typings/src/types/options/TInputOptions.d.ts} +1 -3
  374. package/typings/src/types/options/TOptionsNormalizerRule.d.ts +2 -0
  375. package/{src/types/options/TOptionsPreset.ts → typings/src/types/options/TOptionsPreset.d.ts} +1 -3
  376. package/{src/types/options/TRenamePropertiesMode.ts → typings/src/types/options/TRenamePropertiesMode.d.ts} +1 -3
  377. package/{src/types/options/TStringArrayEncoding.ts → typings/src/types/options/TStringArrayEncoding.d.ts} +1 -3
  378. package/{src/types/options/TStringArrayIndexesType.ts → typings/src/types/options/TStringArrayIndexesType.d.ts} +1 -3
  379. package/{src/types/options/TStringArrayWrappersType.ts → typings/src/types/options/TStringArrayWrappersType.d.ts} +1 -3
  380. package/{src/types/storages/TControlFlowStorage.ts → typings/src/types/storages/TControlFlowStorage.d.ts} +1 -2
  381. package/{src/types/storages/TCustomCodeHelperGroupStorage.ts → typings/src/types/storages/TCustomCodeHelperGroupStorage.d.ts} +1 -2
  382. package/{src/types/utils/TTransformersRelationEdge.ts → typings/src/types/utils/TTransformersRelationEdge.d.ts} +1 -1
  383. package/typings/src/types/utils/TTypeFromEnum.d.ts +1 -0
  384. package/typings/src/utils/AbstractTransformerNamesGroupsBuilder.d.ts +10 -0
  385. package/typings/src/utils/ArrayUtils.d.ts +13 -0
  386. package/typings/src/utils/CryptUtils.d.ts +10 -0
  387. package/typings/src/utils/CryptUtilsStringArray.d.ts +8 -0
  388. package/typings/src/utils/EscapeSequenceEncoder.d.ts +7 -0
  389. package/typings/src/utils/LevelledTopologicalSorter.d.ts +15 -0
  390. package/typings/src/utils/NumberUtils.d.ts +8 -0
  391. package/typings/src/utils/RandomGenerator.d.ts +20 -0
  392. package/typings/src/utils/StringUtils.d.ts +3 -0
  393. package/typings/src/utils/Utils.d.ts +10 -0
  394. package/index.d.ts +0 -38
  395. package/src/ASTParserFacade.ts +0 -119
  396. package/src/JavaScriptObfuscator.ts +0 -311
  397. package/src/JavaScriptObfuscatorCLIFacade.ts +0 -17
  398. package/src/JavaScriptObfuscatorFacade.ts +0 -93
  399. package/src/analyzers/calls-graph-analyzer/CallsGraphAnalyzer.ts +0 -170
  400. package/src/analyzers/calls-graph-analyzer/callee-data-extractors/AbstractCalleeDataExtractor.ts +0 -16
  401. package/src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionDeclarationCalleeDataExtractor.ts +0 -59
  402. package/src/analyzers/calls-graph-analyzer/callee-data-extractors/FunctionExpressionCalleeDataExtractor.ts +0 -70
  403. package/src/analyzers/calls-graph-analyzer/callee-data-extractors/ObjectExpressionCalleeDataExtractor.ts +0 -177
  404. package/src/analyzers/number-numerical-expression-analyzer/NumberNumericalExpressionAnalyzer.ts +0 -140
  405. package/src/analyzers/prevailing-kind-of-variables-analyzer/PrevailingKindOfVariablesAnalyzer.ts +0 -61
  406. package/src/analyzers/scope-analyzer/ScopeAnalyzer.ts +0 -152
  407. package/src/analyzers/string-array-storage-analyzer/StringArrayStorageAnalyzer.ts +0 -143
  408. package/src/cli/JavaScriptObfuscatorCLI.ts +0 -554
  409. package/src/cli/sanitizers/ArraySanitizer.ts +0 -13
  410. package/src/cli/sanitizers/BooleanSanitizer.ts +0 -9
  411. package/src/cli/utils/CLIUtils.ts +0 -50
  412. package/src/cli/utils/IdentifierNamesCacheFileUtils.ts +0 -98
  413. package/src/cli/utils/ObfuscatedCodeFileUtils.ts +0 -143
  414. package/src/cli/utils/SourceCodeFileUtils.ts +0 -167
  415. package/src/code-transformers/AbstractCodeTransformer.ts +0 -46
  416. package/src/code-transformers/CodeTransformersRunner.ts +0 -100
  417. package/src/code-transformers/preparing-transformers/HashbangOperatorTransformer.ts +0 -72
  418. package/src/constants/AlphabetString.ts +0 -1
  419. package/src/constants/AlphabetStringUppercase.ts +0 -3
  420. package/src/constants/Base64Alphabet.ts +0 -5
  421. package/src/constants/Base64AlphabetSwapped.ts +0 -8
  422. package/src/constants/EcmaVersion.ts +0 -3
  423. package/src/constants/NumbersString.ts +0 -1
  424. package/src/container/InversifyContainerFacade.ts +0 -226
  425. package/src/container/ServiceIdentifiers.ts +0 -65
  426. package/src/container/modules/analyzers/AnalyzersModule.ts +0 -67
  427. package/src/container/modules/code-transformers/CodeTransformersModule.ts +0 -28
  428. package/src/container/modules/custom-code-helpers/CustomCodeHelpersModule.ts +0 -124
  429. package/src/container/modules/custom-nodes/CustomNodesModule.ts +0 -154
  430. package/src/container/modules/generators/GeneratorsModule.ts +0 -87
  431. package/src/container/modules/node/NodeModule.ts +0 -13
  432. package/src/container/modules/node-transformers/ControlFlowTransformersModule.ts +0 -49
  433. package/src/container/modules/node-transformers/ConvertingTransformersModule.ts +0 -86
  434. package/src/container/modules/node-transformers/DeadCodeInjectionTransformersModule.ts +0 -15
  435. package/src/container/modules/node-transformers/FinalizingTransformersModule.ts +0 -20
  436. package/src/container/modules/node-transformers/InitializingTransformersModule.ts +0 -15
  437. package/src/container/modules/node-transformers/NodeTransformersModule.ts +0 -22
  438. package/src/container/modules/node-transformers/PreparingTransformersModule.ts +0 -81
  439. package/src/container/modules/node-transformers/RenameIdentifiersTransformersModule.ts +0 -43
  440. package/src/container/modules/node-transformers/RenamePropertiesTransformersModule.ts +0 -21
  441. package/src/container/modules/node-transformers/SimplifyingTransformersModule.ts +0 -30
  442. package/src/container/modules/node-transformers/StringArrayTransformersModule.ts +0 -25
  443. package/src/container/modules/options/OptionsModule.ts +0 -18
  444. package/src/container/modules/storages/StoragesModule.ts +0 -76
  445. package/src/container/modules/utils/UtilsModule.ts +0 -47
  446. package/src/custom-code-helpers/AbstractCustomCodeHelper.ts +0 -121
  447. package/src/custom-code-helpers/AbstractCustomCodeHelperGroup.ts +0 -83
  448. package/src/custom-code-helpers/CustomCodeHelperFormatter.ts +0 -65
  449. package/src/custom-code-helpers/CustomCodeHelperObfuscator.ts +0 -57
  450. package/src/custom-code-helpers/calls-controller/CallsControllerFunctionCodeHelper.ts +0 -92
  451. package/src/custom-code-helpers/common/templates/GlobalVariableNoEvalTemplate.ts +0 -14
  452. package/src/custom-code-helpers/common/templates/GlobalVariableTemplate1.ts +0 -16
  453. package/src/custom-code-helpers/common/templates/GlobalVariableTemplate2.ts +0 -19
  454. package/src/custom-code-helpers/common/templates/SingleCallControllerTemplate.ts +0 -24
  455. package/src/custom-code-helpers/console-output/ConsoleOutputDisableCodeHelper.ts +0 -91
  456. package/src/custom-code-helpers/console-output/group/ConsoleOutputCodeHelperGroup.ts +0 -121
  457. package/src/custom-code-helpers/console-output/templates/ConsoleOutputDisableTemplate.ts +0 -26
  458. package/src/custom-code-helpers/debug-protection/DebugProtectionFunctionCallCodeHelper.ts +0 -83
  459. package/src/custom-code-helpers/debug-protection/DebugProtectionFunctionCodeHelper.ts +0 -83
  460. package/src/custom-code-helpers/debug-protection/DebugProtectionFunctionIntervalCodeHelper.ts +0 -74
  461. package/src/custom-code-helpers/debug-protection/group/DebugProtectionCodeHelperGroup.ts +0 -159
  462. package/src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebugProtectionFunctionTemplate.ts +0 -23
  463. package/src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplate.ts +0 -17
  464. package/src/custom-code-helpers/debug-protection/templates/debug-protection-function/DebuggerTemplateNoEval.ts +0 -21
  465. package/src/custom-code-helpers/debug-protection/templates/debug-protection-function-call/DebugProtectionFunctionCallTemplate.ts +0 -24
  466. package/src/custom-code-helpers/debug-protection/templates/debug-protection-function-interval/DebugProtectionFunctionIntervalTemplate.ts +0 -10
  467. package/src/custom-code-helpers/domain-lock/DomainLockCodeHelper.ts +0 -115
  468. package/src/custom-code-helpers/domain-lock/group/DomainLockCustomCodeHelperGroup.ts +0 -121
  469. package/src/custom-code-helpers/domain-lock/templates/DomainLockTemplate.ts +0 -119
  470. package/src/custom-code-helpers/self-defending/SelfDefendingUnicodeCodeHelper.ts +0 -95
  471. package/src/custom-code-helpers/self-defending/group/SelfDefendingCodeHelperGroup.ts +0 -121
  472. package/src/custom-code-helpers/self-defending/templates/SelfDefendingNoEvalTemplate.ts +0 -22
  473. package/src/custom-code-helpers/self-defending/templates/SelfDefendingTemplate.ts +0 -22
  474. package/src/custom-code-helpers/string-array/StringArrayCallsWrapperBase64CodeHelper.ts +0 -34
  475. package/src/custom-code-helpers/string-array/StringArrayCallsWrapperCodeHelper.ts +0 -153
  476. package/src/custom-code-helpers/string-array/StringArrayCallsWrapperRc4CodeHelper.ts +0 -41
  477. package/src/custom-code-helpers/string-array/StringArrayCodeHelper.ts +0 -103
  478. package/src/custom-code-helpers/string-array/StringArrayRotateFunctionCodeHelper.ts +0 -102
  479. package/src/custom-code-helpers/string-array/group/StringArrayCodeHelperGroup.ts +0 -155
  480. package/src/custom-code-helpers/string-array/templates/string-array/StringArrayTemplate.ts +0 -8
  481. package/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/AtobTemplate.ts +0 -32
  482. package/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/Rc4Template.ts +0 -39
  483. package/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/SelfDefendingTemplate.ts +0 -66
  484. package/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayBase64DecodeTemplate.ts +0 -38
  485. package/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayCallsWrapperTemplate.ts +0 -23
  486. package/src/custom-code-helpers/string-array/templates/string-array-calls-wrapper/StringArrayRC4DecodeTemplate.ts +0 -44
  487. package/src/custom-code-helpers/string-array/templates/string-array-rotate-function/StringArrayRotateFunctionTemplate.ts +0 -22
  488. package/src/custom-nodes/AbstractCustomNode.ts +0 -83
  489. package/src/custom-nodes/control-flow-flattening-nodes/BinaryExpressionFunctionNode.ts +0 -78
  490. package/src/custom-nodes/control-flow-flattening-nodes/BlockStatementControlFlowFlatteningNode.ts +0 -153
  491. package/src/custom-nodes/control-flow-flattening-nodes/CallExpressionFunctionNode.ts +0 -106
  492. package/src/custom-nodes/control-flow-flattening-nodes/LogicalExpressionFunctionNode.ts +0 -78
  493. package/src/custom-nodes/control-flow-flattening-nodes/StringLiteralNode.ts +0 -62
  494. package/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/CallExpressionControlFlowStorageCallNode.ts +0 -105
  495. package/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ControlFlowStorageNode.ts +0 -91
  496. package/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/ExpressionWithOperatorControlFlowStorageCallNode.ts +0 -103
  497. package/src/custom-nodes/control-flow-flattening-nodes/control-flow-storage-nodes/StringLiteralControlFlowStorageCallNode.ts +0 -79
  498. package/src/custom-nodes/dead-code-injection-nodes/BlockStatementDeadCodeInjectionNode.ts +0 -102
  499. package/src/custom-nodes/object-expression-keys-transformer-nodes/ObjectExpressionVariableDeclarationHostNode.ts +0 -79
  500. package/src/custom-nodes/string-array-nodes/AbstractStringArrayCallNode.ts +0 -133
  501. package/src/custom-nodes/string-array-nodes/StringArrayCallNode.ts +0 -173
  502. package/src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperFunctionNode.ts +0 -199
  503. package/src/custom-nodes/string-array-nodes/StringArrayScopeCallsWrapperVariableNode.ts +0 -97
  504. package/src/custom-nodes/string-array-nodes/string-array-index-nodes/AbstractStringArrayIndexNode.ts +0 -40
  505. package/src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumberIndexNode.ts +0 -36
  506. package/src/custom-nodes/string-array-nodes/string-array-index-nodes/StringArrayHexadecimalNumericStringIndexNode.ts +0 -36
  507. package/src/declarations/ESTree.d.ts +0 -56
  508. package/src/declarations/acorn-import-meta.d.ts +0 -7
  509. package/src/declarations/environment.d.ts +0 -8
  510. package/src/declarations/escodegen.d.ts +0 -24
  511. package/src/declarations/eslint-scope.d.ts +0 -14
  512. package/src/declarations/estraverse.d.ts +0 -7
  513. package/src/decorators/Initializable.ts +0 -173
  514. package/src/enums/ObfuscationTarget.ts +0 -11
  515. package/src/enums/StringSeparator.ts +0 -5
  516. package/src/enums/analyzers/calls-graph-analyzer/CalleeDataExtractor.ts +0 -5
  517. package/src/enums/code-transformers/CodeTransformationStage.ts +0 -4
  518. package/src/enums/code-transformers/CodeTransformer.ts +0 -3
  519. package/src/enums/custom-code-helpers/CustomCodeHelper.ts +0 -14
  520. package/src/enums/custom-code-helpers/CustomCodeHelperGroup.ts +0 -7
  521. package/src/enums/custom-nodes/ControlFlowCustomNode.ts +0 -11
  522. package/src/enums/custom-nodes/DeadCodeInjectionCustomNode.ts +0 -3
  523. package/src/enums/custom-nodes/ObjectExpressionKeysTransformerCustomNode.ts +0 -4
  524. package/src/enums/custom-nodes/StringArrayCustomNode.ts +0 -5
  525. package/src/enums/custom-nodes/string-array-index-nodes/StringArrayIndexNode.ts +0 -4
  526. package/src/enums/generators/identifier-names-generators/IdentifierNamesGenerator.ts +0 -13
  527. package/src/enums/logger/LoggingMessage.ts +0 -9
  528. package/src/enums/logger/LoggingPrefix.ts +0 -4
  529. package/src/enums/node/NodeType.ts +0 -65
  530. package/src/enums/node/ObfuscatingGuardResult.ts +0 -5
  531. package/src/enums/node-transformers/NodeTransformationStage.ts +0 -12
  532. package/src/enums/node-transformers/NodeTransformer.ts +0 -37
  533. package/src/enums/node-transformers/VisitorDirection.ts +0 -4
  534. package/src/enums/node-transformers/control-flow-transformers/control-flow-replacers/ControlFlowReplacer.ts +0 -6
  535. package/src/enums/node-transformers/converting-transformers/properties-extractors/ObjectExpressionExtractor.ts +0 -4
  536. package/src/enums/node-transformers/preparing-transformers/obfuscating-guards/ObfuscatingGuard.ts +0 -7
  537. package/src/enums/node-transformers/rename-properties-transformers/RenamePropertiesMode.ts +0 -9
  538. package/src/enums/node-transformers/string-array-transformers/StringArrayEncoding.ts +0 -11
  539. package/src/enums/node-transformers/string-array-transformers/StringArrayIndexesType.ts +0 -9
  540. package/src/enums/node-transformers/string-array-transformers/StringArrayWrappersType.ts +0 -9
  541. package/src/enums/options/presets/OptionsPreset.ts +0 -13
  542. package/src/enums/source-map/SourceMapMode.ts +0 -9
  543. package/src/enums/source-map/SourceMapSourcesMode.ts +0 -9
  544. package/src/generators/identifier-names-generators/AbstractIdentifierNamesGenerator.ts +0 -142
  545. package/src/generators/identifier-names-generators/DictionaryIdentifierNamesGenerator.ts +0 -175
  546. package/src/generators/identifier-names-generators/HexadecimalIdentifierNamesGenerator.ts +0 -73
  547. package/src/generators/identifier-names-generators/MangledIdentifierNamesGenerator.ts +0 -256
  548. package/src/generators/identifier-names-generators/MangledShuffledIdentifierNamesGenerator.ts +0 -72
  549. package/src/interfaces/IInitializable.ts +0 -8
  550. package/src/interfaces/IJavaScriptObfsucator.ts +0 -9
  551. package/src/interfaces/ITransformer.ts +0 -6
  552. package/src/interfaces/analyzers/IAnalyzer.ts +0 -7
  553. package/src/interfaces/analyzers/calls-graph-analyzer/ICalleeDataExtractor.ts +0 -12
  554. package/src/interfaces/analyzers/calls-graph-analyzer/IPrevailingKindOfVariablesAnalyzer.ts +0 -15
  555. package/src/interfaces/analyzers/scope-analyzer/IScopeAnalyzer.ts +0 -17
  556. package/src/interfaces/analyzers/string-array-storage-analyzer/IStringArrayStorageAnalyzer.ts +0 -30
  557. package/src/interfaces/code-transformers/ICodeTransformer.ts +0 -13
  558. package/src/interfaces/code-transformers/ICodeTransformersRunner.ts +0 -16
  559. package/src/interfaces/container/IInversifyContainerFacade.ts +0 -25
  560. package/src/interfaces/custom-code-helpers/ICustomCodeHelper.ts +0 -12
  561. package/src/interfaces/custom-code-helpers/ICustomCodeHelperFormatter.ts +0 -20
  562. package/src/interfaces/custom-code-helpers/ICustomCodeHelperObfuscator.ts +0 -10
  563. package/src/interfaces/custom-nodes/ICustomNode.ts +0 -12
  564. package/src/interfaces/generators/identifier-names-generators/IIdentifierNamesGenerator.ts +0 -54
  565. package/src/interfaces/logger/ILogger.ts +0 -21
  566. package/src/interfaces/node/IScopeIdentifiersTraverser.ts +0 -30
  567. package/src/interfaces/node-transformers/INodeTransformer.ts +0 -35
  568. package/src/interfaces/node-transformers/INodeTransformersRunner.ts +0 -18
  569. package/src/interfaces/node-transformers/IVisitor.ts +0 -7
  570. package/src/interfaces/node-transformers/control-flow-transformers/IControlFlowReplacer.ts +0 -17
  571. package/src/interfaces/node-transformers/converting-transformers/object-expression-extractors/IObjectExpressionExtractor.ts +0 -15
  572. package/src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IIdentifierReplacer.ts +0 -40
  573. package/src/interfaces/node-transformers/rename-identifiers-transformers/replacer/IThroughIdentifierReplacer.ts +0 -9
  574. package/src/interfaces/node-transformers/rename-properties-transformers/replacer/IRenamePropertiesReplacer.ts +0 -14
  575. package/src/interfaces/options/IOptionsNormalizer.ts +0 -9
  576. package/src/interfaces/source-code/IObfuscationResult.ts +0 -26
  577. package/src/interfaces/source-code/ISourceCode.ts +0 -11
  578. package/src/interfaces/source-code/ISourceMap.ts +0 -16
  579. package/src/interfaces/storages/IArrayStorage.ts +0 -59
  580. package/src/interfaces/storages/IMapStorage.ts +0 -66
  581. package/src/interfaces/storages/string-array-transformers/ILiteralNodesCacheStorage.ts +0 -26
  582. package/src/interfaces/storages/string-array-transformers/IStringArrayStorage.ts +0 -31
  583. package/src/interfaces/storages/string-array-transformers/IVisitedLexicalScopeNodesStackStorage.ts +0 -25
  584. package/src/interfaces/utils/IArrayUtils.ts +0 -39
  585. package/src/interfaces/utils/ICryptUtils.ts +0 -21
  586. package/src/interfaces/utils/ICryptUtilsStringArray.ts +0 -4
  587. package/src/interfaces/utils/IEscapeSequenceEncoder.ts +0 -8
  588. package/src/interfaces/utils/ILevelledTopologicalSorter.ts +0 -21
  589. package/src/interfaces/utils/IRandomGenerator.ts +0 -47
  590. package/src/interfaces/utils/ITransformerNamesGroupsBuilder.ts +0 -12
  591. package/src/logger/Logger.ts +0 -95
  592. package/src/node/NodeAppender.ts +0 -192
  593. package/src/node/NodeFactory.ts +0 -657
  594. package/src/node/NodeGuards.ts +0 -582
  595. package/src/node/NodeLexicalScopeUtils.ts +0 -57
  596. package/src/node/NodeLiteralUtils.ts +0 -36
  597. package/src/node/NodeMetadata.ts +0 -49
  598. package/src/node/NodeStatementUtils.ts +0 -135
  599. package/src/node/NodeUtils.ts +0 -153
  600. package/src/node/NumericalExpressionDataToNodeConverter.ts +0 -155
  601. package/src/node/ScopeIdentifiersTraverser.ts +0 -163
  602. package/src/node-transformers/AbstractNodeTransformer.ts +0 -56
  603. package/src/node-transformers/NodeTransformersRunner.ts +0 -176
  604. package/src/node-transformers/control-flow-transformers/BlockStatementControlFlowTransformer.ts +0 -151
  605. package/src/node-transformers/control-flow-transformers/FunctionControlFlowTransformer.ts +0 -265
  606. package/src/node-transformers/control-flow-transformers/control-flow-replacers/AbstractControlFlowReplacer.ts +0 -123
  607. package/src/node-transformers/control-flow-transformers/control-flow-replacers/BinaryExpressionControlFlowReplacer.ts +0 -71
  608. package/src/node-transformers/control-flow-transformers/control-flow-replacers/CallExpressionControlFlowReplacer.ts +0 -108
  609. package/src/node-transformers/control-flow-transformers/control-flow-replacers/ExpressionWithOperatorControlFlowReplacer.ts +0 -62
  610. package/src/node-transformers/control-flow-transformers/control-flow-replacers/LogicalExpressionControlFlowReplacer.ts +0 -99
  611. package/src/node-transformers/control-flow-transformers/control-flow-replacers/StringLiteralControlFlowReplacer.ts +0 -101
  612. package/src/node-transformers/converting-transformers/BooleanLiteralTransformer.ts +0 -98
  613. package/src/node-transformers/converting-transformers/ClassFieldTransformer.ts +0 -134
  614. package/src/node-transformers/converting-transformers/ExportSpecifierTransformer.ts +0 -67
  615. package/src/node-transformers/converting-transformers/MemberExpressionTransformer.ts +0 -77
  616. package/src/node-transformers/converting-transformers/NumberLiteralTransformer.ts +0 -102
  617. package/src/node-transformers/converting-transformers/NumberToNumericalExpressionTransformer.ts +0 -127
  618. package/src/node-transformers/converting-transformers/ObjectExpressionKeysTransformer.ts +0 -302
  619. package/src/node-transformers/converting-transformers/ObjectExpressionTransformer.ts +0 -107
  620. package/src/node-transformers/converting-transformers/ObjectPatternPropertiesTransformer.ts +0 -84
  621. package/src/node-transformers/converting-transformers/SplitStringTransformer.ts +0 -206
  622. package/src/node-transformers/converting-transformers/TemplateLiteralTransformer.ts +0 -137
  623. package/src/node-transformers/converting-transformers/object-expression-extractors/BasePropertiesExtractor.ts +0 -227
  624. package/src/node-transformers/converting-transformers/object-expression-extractors/ObjectExpressionToVariableDeclarationExtractor.ts +0 -165
  625. package/src/node-transformers/dead-code-injection-transformers/DeadCodeInjectionIdentifiersTransformer.ts +0 -141
  626. package/src/node-transformers/dead-code-injection-transformers/DeadCodeInjectionTransformer.ts +0 -423
  627. package/src/node-transformers/finalizing-transformers/DirectivePlacementTransformer.ts +0 -151
  628. package/src/node-transformers/finalizing-transformers/EscapeSequenceTransformer.ts +0 -89
  629. package/src/node-transformers/initializing-transformers/CommentsTransformer.ts +0 -173
  630. package/src/node-transformers/preparing-transformers/CustomCodeHelpersTransformer.ts +0 -158
  631. package/src/node-transformers/preparing-transformers/EvalCallExpressionTransformer.ts +0 -195
  632. package/src/node-transformers/preparing-transformers/MetadataTransformer.ts +0 -73
  633. package/src/node-transformers/preparing-transformers/ObfuscatingGuardsTransformer.ts +0 -121
  634. package/src/node-transformers/preparing-transformers/ParentificationTransformer.ts +0 -57
  635. package/src/node-transformers/preparing-transformers/VariablePreserveTransformer.ts +0 -145
  636. package/src/node-transformers/preparing-transformers/obfuscating-guards/BlackListObfuscatingGuard.ts +0 -42
  637. package/src/node-transformers/preparing-transformers/obfuscating-guards/ConditionalCommentObfuscatingGuard.ts +0 -80
  638. package/src/node-transformers/preparing-transformers/obfuscating-guards/ForceTransformStringObfuscatingGuard.ts +0 -58
  639. package/src/node-transformers/preparing-transformers/obfuscating-guards/IgnoredRequireImportObfuscatingGuard.ts +0 -46
  640. package/src/node-transformers/preparing-transformers/obfuscating-guards/ReservedStringObfuscatingGuard.ts +0 -58
  641. package/src/node-transformers/rename-identifiers-transformers/LabeledStatementTransformer.ts +0 -126
  642. package/src/node-transformers/rename-identifiers-transformers/ScopeIdentifiersTransformer.ts +0 -396
  643. package/src/node-transformers/rename-identifiers-transformers/ScopeThroughIdentifiersTransformer.ts +0 -124
  644. package/src/node-transformers/rename-identifiers-transformers/replacer/IdentifierReplacer.ts +0 -162
  645. package/src/node-transformers/rename-identifiers-transformers/through-replacer/ThroughIdentifierReplacer.ts +0 -64
  646. package/src/node-transformers/rename-properties-transformers/RenamePropertiesTransformer.ts +0 -209
  647. package/src/node-transformers/rename-properties-transformers/replacer/RenamePropertiesReplacer.ts +0 -176
  648. package/src/node-transformers/rename-properties-transformers/replacer/ReservedDomProperties.json +0 -7771
  649. package/src/node-transformers/simplifying-transformers/AbstractStatementSimplifyTransformer.ts +0 -196
  650. package/src/node-transformers/simplifying-transformers/BlockStatementSimplifyTransformer.ts +0 -87
  651. package/src/node-transformers/simplifying-transformers/ExpressionStatementsMergeTransformer.ts +0 -99
  652. package/src/node-transformers/simplifying-transformers/IfStatementSimplifyTransformer.ts +0 -326
  653. package/src/node-transformers/simplifying-transformers/VariableDeclarationsMergeTransformer.ts +0 -91
  654. package/src/node-transformers/string-array-transformers/StringArrayRotateFunctionTransformer.ts +0 -268
  655. package/src/node-transformers/string-array-transformers/StringArrayScopeCallsWrapperTransformer.ts +0 -321
  656. package/src/node-transformers/string-array-transformers/StringArrayTransformer.ts +0 -377
  657. package/src/options/Options.ts +0 -459
  658. package/src/options/OptionsNormalizer.ts +0 -62
  659. package/src/options/ValidationErrorsFormatter.ts +0 -41
  660. package/src/options/normalizer-rules/ControlFlowFlatteningThresholdRule.ts +0 -19
  661. package/src/options/normalizer-rules/DeadCodeInjectionRule.ts +0 -29
  662. package/src/options/normalizer-rules/DeadCodeInjectionThresholdRule.ts +0 -19
  663. package/src/options/normalizer-rules/DomainLockRedirectUrlRule.ts +0 -20
  664. package/src/options/normalizer-rules/DomainLockRule.ts +0 -26
  665. package/src/options/normalizer-rules/IdentifierNamesCacheRule.ts +0 -32
  666. package/src/options/normalizer-rules/InputFileNameRule.ts +0 -28
  667. package/src/options/normalizer-rules/SeedRule.ts +0 -25
  668. package/src/options/normalizer-rules/SelfDefendingRule.ts +0 -19
  669. package/src/options/normalizer-rules/SourceMapBaseUrlRule.ts +0 -29
  670. package/src/options/normalizer-rules/SourceMapFileNameRule.ts +0 -37
  671. package/src/options/normalizer-rules/SplitStringsChunkLengthRule.ts +0 -24
  672. package/src/options/normalizer-rules/StringArrayEncodingRule.ts +0 -22
  673. package/src/options/normalizer-rules/StringArrayRule.ts +0 -29
  674. package/src/options/normalizer-rules/StringArrayWappersChainedCalls.ts +0 -19
  675. package/src/options/presets/Default.ts +0 -69
  676. package/src/options/presets/HighObfuscation.ts +0 -22
  677. package/src/options/presets/LowObfuscation.ts +0 -15
  678. package/src/options/presets/MediumObfuscation.ts +0 -24
  679. package/src/options/presets/NoCustomNodes.ts +0 -65
  680. package/src/options/validators/IsAllowedForObfuscationTargets.ts +0 -55
  681. package/src/options/validators/IsDomainLockRedirectUrl.ts +0 -30
  682. package/src/options/validators/IsIdentifierNamesCache.ts +0 -87
  683. package/src/options/validators/IsInputFileName.ts +0 -18
  684. package/src/source-code/ObfuscationResult.ts +0 -149
  685. package/src/source-code/SourceCode.ts +0 -43
  686. package/src/storages/ArrayStorage.ts +0 -149
  687. package/src/storages/MapStorage.ts +0 -144
  688. package/src/storages/custom-code-helpers/CustomCodeHelperGroupStorage.ts +0 -57
  689. package/src/storages/custom-nodes/ControlFlowStorage.ts +0 -22
  690. package/src/storages/identifier-names-cache/GlobalIdentifierNamesCacheStorage.ts +0 -29
  691. package/src/storages/identifier-names-cache/PropertyIdentifierNamesCacheStorage.ts +0 -29
  692. package/src/storages/string-array-transformers/LiteralNodesCacheStorage.ts +0 -55
  693. package/src/storages/string-array-transformers/StringArrayScopeCallsWrappersDataStorage.ts +0 -28
  694. package/src/storages/string-array-transformers/StringArrayStorage.ts +0 -342
  695. package/src/storages/string-array-transformers/VisitedLexicalScopeNodesStackStorage.ts +0 -68
  696. package/src/tsconfig.browser.json +0 -9
  697. package/src/tsconfig.node.json +0 -14
  698. package/src/types/TDictionary.ts +0 -3
  699. package/src/types/TIdentifierNamesCacheDictionary.ts +0 -3
  700. package/src/types/TInitialData.ts +0 -3
  701. package/src/types/TObfuscationResultsObject.ts +0 -3
  702. package/src/types/analyzers/calls-graph-analyzer/TObjectMembersCallsChain.ts +0 -1
  703. package/src/types/analyzers/number-numerical-expression-analyzer/TNumberNumericalExpressionData.ts +0 -1
  704. package/src/types/cli/TCLISanitizer.ts +0 -1
  705. package/src/types/container/custom-nodes/TControlFlowCustomNodeFactory.ts +0 -7
  706. package/src/types/container/custom-nodes/TDeadNodeInjectionCustomNodeFactory.ts +0 -7
  707. package/src/types/container/custom-nodes/TObjectExpressionKeysTransformerCustomNodeFactory.ts +0 -7
  708. package/src/types/container/custom-nodes/TStringArrayCustomNodeFactory.ts +0 -7
  709. package/src/types/container/node-transformers/TControlFlowStorageFactory.ts +0 -3
  710. package/src/types/container/source-code/TObfuscationResultFactory.ts +0 -3
  711. package/src/types/custom-code-helpers/TCustomCodeHelpersGroupAppendMethodName.ts +0 -3
  712. package/src/types/custom-code-helpers/TCustomCodeHelpersGroupAppendMethods.ts +0 -15
  713. package/src/types/node/TNodeWithLexicalScope.ts +0 -3
  714. package/src/types/node/TNodeWithLexicalScopeStatements.ts +0 -3
  715. package/src/types/node/TNodeWithSingleStatementBody.ts +0 -21
  716. package/src/types/node/TNodeWithStatements.ts +0 -3
  717. package/src/types/node/TNumericalExpressionDataToNodeConverterLiteralNodeGetter.ts +0 -6
  718. package/src/types/node/TScopeIdentifiersTraverserCallback.ts +0 -1
  719. package/src/types/node/TStatement.ts +0 -3
  720. package/src/types/node/TStringLiteralNode.ts +0 -3
  721. package/src/types/node-transformers/TVisitorDirection.ts +0 -1
  722. package/src/types/node-transformers/TVisitorFunction.ts +0 -5
  723. package/src/types/node-transformers/TVisitorResult.ts +0 -4
  724. package/src/types/options/TOptionsNormalizerRule.ts +0 -3
  725. package/src/types/utils/TTypeFromEnum.ts +0 -1
  726. package/src/utils/AbstractTransformerNamesGroupsBuilder.ts +0 -104
  727. package/src/utils/ArrayUtils.ts +0 -137
  728. package/src/utils/CryptUtils.ts +0 -149
  729. package/src/utils/CryptUtilsStringArray.ts +0 -38
  730. package/src/utils/EscapeSequenceEncoder.ts +0 -69
  731. package/src/utils/LevelledTopologicalSorter.ts +0 -216
  732. package/src/utils/NumberUtils.ts +0 -122
  733. package/src/utils/RandomGenerator.ts +0 -137
  734. package/src/utils/StringUtils.ts +0 -11
  735. package/src/utils/Utils.ts +0 -73
@@ -0,0 +1,4 @@
1
+ import { IOptions } from './IOptions';
2
+ export interface IOptionsNormalizer {
3
+ normalize(options: IOptions): IOptions;
4
+ }
@@ -0,0 +1,9 @@
1
+ import { TIdentifierNamesCache } from '../../types/TIdentifierNamesCache';
2
+ import { IInitializable } from '../IInitializable';
3
+ import { IOptions } from '../options/IOptions';
4
+ export interface IObfuscationResult extends IInitializable<[string, string]> {
5
+ getIdentifierNamesCache(): TIdentifierNamesCache;
6
+ getObfuscatedCode(): string;
7
+ getOptions(): IOptions;
8
+ getSourceMap(): string;
9
+ }
@@ -0,0 +1,4 @@
1
+ export interface ISourceCode {
2
+ getSourceCode(): string;
3
+ getSourceMap(): string;
4
+ }
@@ -0,0 +1,5 @@
1
+ export interface ISourceMap {
2
+ mappings: string;
3
+ sources: string[];
4
+ sourcesContent: string[];
5
+ }
@@ -0,0 +1,13 @@
1
+ import { IInitializable } from '../IInitializable';
2
+ export interface IArrayStorage<V> extends IInitializable {
3
+ delete(key: number): V | undefined;
4
+ get(key: number): V | undefined;
5
+ getOrThrow(key: number): V;
6
+ getKeyOf(value: V): number | null;
7
+ getLength(): number;
8
+ getStorage(): V[];
9
+ getStorageId(): string;
10
+ mergeWith(storage: this, mergeId: boolean): void;
11
+ set(key: number, value: V): void;
12
+ toString(): string;
13
+ }
@@ -0,0 +1,15 @@
1
+ import { TDictionary } from '../../types/TDictionary';
2
+ import { IInitializable } from '../IInitializable';
3
+ export interface IMapStorage<K, V> extends IInitializable {
4
+ get(key: K): V | undefined;
5
+ getOrThrow(key: K): V;
6
+ getKeyOf(value: V): K | null;
7
+ getLength(): number;
8
+ getStorage(): Map<K, V>;
9
+ getStorageAsDictionary(): TDictionary<V>;
10
+ getStorageId(): string;
11
+ has(key: K): boolean;
12
+ mergeWith(storage: this, mergeId: boolean): void;
13
+ set(key: K, value: V): void;
14
+ toString(): string;
15
+ }
@@ -1,4 +1,3 @@
1
1
  import { IMapStorage } from '../IMapStorage';
2
-
3
- // eslint-disable-next-line
4
- export interface IGlobalIdentifierNamesCacheStorage extends IMapStorage <string, string> {}
2
+ export interface IGlobalIdentifierNamesCacheStorage extends IMapStorage<string, string> {
3
+ }
@@ -1,4 +1,3 @@
1
1
  import { IMapStorage } from '../IMapStorage';
2
-
3
- // eslint-disable-next-line
4
- export interface IPropertyIdentifierNamesCacheStorage extends IMapStorage <string, string> {}
2
+ export interface IPropertyIdentifierNamesCacheStorage extends IMapStorage<string, string> {
3
+ }
@@ -0,0 +1,7 @@
1
+ import * as ESTree from 'estree';
2
+ import { IMapStorage } from '../IMapStorage';
3
+ import { IStringArrayStorageItemData } from './IStringArrayStorageItem';
4
+ export interface ILiteralNodesCacheStorage extends IMapStorage<string, ESTree.Node> {
5
+ buildKey(literalValue: string, stringArrayStorageItemData: IStringArrayStorageItemData | undefined): string;
6
+ shouldUseCachedValue(key: string, stringArrayStorageItemData: IStringArrayStorageItemData | undefined): boolean;
7
+ }
@@ -1,10 +1,5 @@
1
1
  import { TNodeWithLexicalScopeStatements } from '../../../types/node/TNodeWithLexicalScopeStatements';
2
2
  import { TStringArrayScopeCallsWrappersDataByEncoding } from '../../../types/node-transformers/string-array-transformers/TStringArrayScopeCallsWrappersDataByEncoding';
3
-
4
3
  import { IMapStorage } from '../IMapStorage';
5
-
6
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
7
- export interface IStringArrayScopeCallsWrappersDataStorage extends IMapStorage<
8
- TNodeWithLexicalScopeStatements,
9
- TStringArrayScopeCallsWrappersDataByEncoding
10
- > {}
4
+ export interface IStringArrayScopeCallsWrappersDataStorage extends IMapStorage<TNodeWithLexicalScopeStatements, TStringArrayScopeCallsWrappersDataByEncoding> {
5
+ }
@@ -0,0 +1,11 @@
1
+ import { TStringArrayEncoding } from '../../../types/options/TStringArrayEncoding';
2
+ import { IMapStorage } from '../IMapStorage';
3
+ import { IStringArrayStorageItemData } from './IStringArrayStorageItem';
4
+ export interface IStringArrayStorage extends IMapStorage<string, IStringArrayStorageItemData> {
5
+ getIndexShiftAmount(): number;
6
+ getRotationAmount(): number;
7
+ getStorageName(): string;
8
+ getStorageCallsWrapperName(stringArrayEncoding: TStringArrayEncoding | null): string;
9
+ rotateStorage(): void;
10
+ shuffleStorage(): void;
11
+ }
@@ -1,5 +1,4 @@
1
1
  import { IEncodedValue } from '../../IEncodedValue';
2
-
3
2
  export interface IStringArrayStorageItemData extends IEncodedValue {
4
3
  index: number;
5
4
  value: string;
@@ -0,0 +1,8 @@
1
+ import { TNodeWithLexicalScopeStatements } from '../../../types/node/TNodeWithLexicalScopeStatements';
2
+ import { IArrayStorage } from '../IArrayStorage';
3
+ export interface IVisitedLexicalScopeNodesStackStorage extends IArrayStorage<TNodeWithLexicalScopeStatements> {
4
+ getLastElement(): TNodeWithLexicalScopeStatements | undefined;
5
+ getPenultimateElement(): TNodeWithLexicalScopeStatements | undefined;
6
+ pop(): TNodeWithLexicalScopeStatements | undefined;
7
+ push(lexicalScopeBodyNode: TNodeWithLexicalScopeStatements): void;
8
+ }
@@ -0,0 +1,9 @@
1
+ export interface IArrayUtils {
2
+ createWithRange(length: number): number[];
3
+ fillWithRange<TValue>(length: number, valueFunction: (index: number) => TValue): TValue[];
4
+ findMostOccurringElement<T extends string | number>(array: T[]): T | null;
5
+ getLastElement<T>(array: T[]): T | undefined;
6
+ getLastElementByIndex<T>(array: T[], index: number): T | undefined;
7
+ rotate<T>(array: T[], times: number): T[];
8
+ shuffle<T>(array: T[]): T[];
9
+ }
@@ -0,0 +1,5 @@
1
+ export interface ICryptUtils {
2
+ btoa(string: string): string;
3
+ hideString(str: string, length: number): [string, string];
4
+ rc4(string: string, key: string): string;
5
+ }
@@ -0,0 +1,3 @@
1
+ import { ICryptUtils } from './ICryptUtils';
2
+ export interface ICryptUtilsStringArray extends ICryptUtils {
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface IEscapeSequenceEncoder {
2
+ encode(string: string, encodeAllSymbols: boolean): string;
3
+ }
@@ -0,0 +1,5 @@
1
+ export interface ILevelledTopologicalSorter<TValue extends string = string> {
2
+ add(precedent: TValue, consequent?: TValue | null): this;
3
+ sort(): TValue[];
4
+ sortByGroups(): TValue[][];
5
+ }
@@ -0,0 +1,10 @@
1
+ /// <reference types="chance" />
2
+ export interface IRandomGenerator {
3
+ getMathRandom(): number;
4
+ getRandomGenerator(): Chance.Chance;
5
+ getRandomInteger(min: number, max: number): number;
6
+ getRandomIntegerExcluding(min: number, max: number, valuesToExclude: number[]): number;
7
+ getRandomString(length: number, pool?: string): string;
8
+ getInputSeed(): string;
9
+ getRawSeed(): string;
10
+ }
@@ -0,0 +1,4 @@
1
+ import { TDictionary } from '../../types/TDictionary';
2
+ export interface ITransformerNamesGroupsBuilder<TTransformerName extends string, TTransformer> {
3
+ build(normalizedTransformers: TDictionary<TTransformer>): TTransformerName[][];
4
+ }
@@ -0,0 +1,16 @@
1
+ import { Chalk } from 'chalk';
2
+ import { ILogger } from '../interfaces/logger/ILogger';
3
+ import { IOptions } from '../interfaces/options/IOptions';
4
+ import { LoggingMessage } from '../enums/logger/LoggingMessage';
5
+ import { LoggingPrefix } from '../enums/logger/LoggingPrefix';
6
+ export declare class Logger implements ILogger {
7
+ static readonly colorInfo: Chalk;
8
+ static readonly colorSuccess: Chalk;
9
+ static readonly colorWarn: Chalk;
10
+ private readonly options;
11
+ constructor(options: IOptions);
12
+ static log(loggingLevelColor: Chalk, loggingPrefix: LoggingPrefix, loggingMessage: string, value?: string | number): void;
13
+ info(loggingMessage: LoggingMessage, value?: string | number): void;
14
+ success(loggingMessage: LoggingMessage, value?: string | number): void;
15
+ warn(loggingMessage: LoggingMessage, value?: string | number): void;
16
+ }
@@ -0,0 +1,17 @@
1
+ import * as ESTree from 'estree';
2
+ import { TNodeWithStatements } from '../types/node/TNodeWithStatements';
3
+ import { TStatement } from '../types/node/TStatement';
4
+ import { ICallsGraphData } from '../interfaces/analyzers/calls-graph-analyzer/ICallsGraphData';
5
+ export declare class NodeAppender {
6
+ static append(nodeWithStatements: TNodeWithStatements, statements: TStatement[]): void;
7
+ static appendToOptimalBlockScope(callsGraphData: ICallsGraphData[], nodeWithStatements: TNodeWithStatements, bodyStatements: TStatement[], index?: number): void;
8
+ static getOptimalBlockScope(callsGraphData: ICallsGraphData[], index: number, deep?: number): ESTree.BlockStatement;
9
+ static getScopeStatements(nodeWithStatements: TNodeWithStatements): TStatement[];
10
+ static insertBefore(nodeWithStatements: TNodeWithStatements, statements: TStatement[], target: ESTree.Statement): void;
11
+ static insertAfter(nodeWithStatements: TNodeWithStatements, statements: TStatement[], target: ESTree.Statement): void;
12
+ static insertAtIndex(nodeWithStatements: TNodeWithStatements, statements: TStatement[], index: number): void;
13
+ static prepend(nodeWithStatements: TNodeWithStatements, statements: TStatement[]): void;
14
+ static remove(nodeWithStatements: TNodeWithStatements, statement: ESTree.Statement): void;
15
+ private static parentizeScopeStatementsBeforeAppend;
16
+ private static setScopeStatements;
17
+ }
@@ -0,0 +1,43 @@
1
+ import * as ESTree from 'estree';
2
+ import { TStatement } from '../types/node/TStatement';
3
+ export declare class NodeFactory {
4
+ static programNode(body?: TStatement[]): ESTree.Program;
5
+ static arrayExpressionNode(elements?: (ESTree.Expression | ESTree.SpreadElement)[]): ESTree.ArrayExpression;
6
+ static assignmentExpressionNode(operator: ESTree.AssignmentOperator, left: ESTree.Pattern | ESTree.MemberExpression, right: ESTree.Expression): ESTree.AssignmentExpression;
7
+ static binaryExpressionNode(operator: ESTree.BinaryOperator, left: ESTree.Expression, right: ESTree.Expression): ESTree.BinaryExpression;
8
+ static blockStatementNode(body?: ESTree.Statement[]): ESTree.BlockStatement;
9
+ static breakStatement(label?: ESTree.Identifier): ESTree.BreakStatement;
10
+ static callExpressionNode(callee: ESTree.Expression, args?: (ESTree.Expression | ESTree.SpreadElement)[], optional?: boolean): ESTree.CallExpression;
11
+ static conditionalExpressionNode(test: ESTree.Expression, consequent: ESTree.Expression, alternate: ESTree.Expression): ESTree.ConditionalExpression;
12
+ static continueStatement(label?: ESTree.Identifier): ESTree.ContinueStatement;
13
+ static directiveNode(expression: ESTree.Literal, directive: string): ESTree.Directive;
14
+ static doWhileStatementNode(body: ESTree.Statement, test: ESTree.Expression): ESTree.DoWhileStatement;
15
+ static exportAllDeclarationNode(source: ESTree.Literal, exported: ESTree.Identifier | null): ESTree.ExportAllDeclaration;
16
+ static exportNamedDeclarationNode(specifiers: ESTree.ExportSpecifier[], source: ESTree.Literal): ESTree.ExportNamedDeclaration;
17
+ static expressionStatementNode(expression: ESTree.Expression): ESTree.ExpressionStatement;
18
+ static forStatementNode(init: ESTree.VariableDeclaration | ESTree.Expression | null, test: ESTree.Expression | null, update: ESTree.Expression | null, body: ESTree.Statement): ESTree.ForStatement;
19
+ static forInStatementNode(left: ESTree.VariableDeclaration | ESTree.Pattern, right: ESTree.Expression, body: ESTree.Statement): ESTree.ForInStatement;
20
+ static forOfStatementNode(await: boolean, left: ESTree.VariableDeclaration | ESTree.Pattern, right: ESTree.Expression, body: ESTree.Statement): ESTree.ForOfStatement;
21
+ static functionDeclarationNode(functionName: string, params: ESTree.Identifier[], body: ESTree.BlockStatement): ESTree.FunctionDeclaration;
22
+ static functionExpressionNode(params: ESTree.Pattern[], body: ESTree.BlockStatement): ESTree.FunctionExpression;
23
+ static ifStatementNode(test: ESTree.Expression, consequent: ESTree.Statement, alternate?: ESTree.Statement | null): ESTree.IfStatement;
24
+ static identifierNode(name: string): ESTree.Identifier;
25
+ static importDeclarationNode(specifiers: (ESTree.ImportSpecifier | ESTree.ImportDefaultSpecifier | ESTree.ImportNamespaceSpecifier)[], source: ESTree.Literal): ESTree.ImportDeclaration;
26
+ static labeledStatementNode(label: ESTree.Identifier, body: ESTree.Statement): ESTree.LabeledStatement;
27
+ static literalNode(value: boolean | number | string, raw?: string): ESTree.Literal;
28
+ static logicalExpressionNode(operator: ESTree.LogicalOperator, left: ESTree.Expression, right: ESTree.Expression): ESTree.LogicalExpression;
29
+ static memberExpressionNode(object: ESTree.Expression | ESTree.Super, property: ESTree.Expression, computed?: boolean, optional?: boolean): ESTree.MemberExpression;
30
+ static objectExpressionNode(properties: (ESTree.Property | ESTree.SpreadElement)[]): ESTree.ObjectExpression;
31
+ static propertyNode(key: ESTree.Expression, value: ESTree.Expression | ESTree.Pattern, computed?: boolean): ESTree.Property;
32
+ static restElementNode(argument: ESTree.Pattern): ESTree.RestElement;
33
+ static returnStatementNode(argument: ESTree.Expression): ESTree.ReturnStatement;
34
+ static sequenceExpressionNode(expressions: ESTree.Expression[]): ESTree.SequenceExpression;
35
+ static spreadElementNode(argument: ESTree.Expression): ESTree.SpreadElement;
36
+ static switchStatementNode(discriminant: ESTree.Expression, cases: ESTree.SwitchCase[]): ESTree.SwitchStatement;
37
+ static switchCaseNode(test: ESTree.Expression, consequent: ESTree.Statement[]): ESTree.SwitchCase;
38
+ static unaryExpressionNode(operator: ESTree.UnaryOperator, argument: ESTree.Expression, prefix?: true): ESTree.UnaryExpression;
39
+ static updateExpressionNode(operator: ESTree.UpdateOperator, argumentExpr: ESTree.Expression): ESTree.UpdateExpression;
40
+ static variableDeclarationNode(declarations?: ESTree.VariableDeclarator[], kind?: 'var' | 'let' | 'const'): ESTree.VariableDeclaration;
41
+ static variableDeclaratorNode(id: ESTree.Identifier, init: ESTree.Expression | null): ESTree.VariableDeclarator;
42
+ static whileStatementNode(test: ESTree.Expression, body: ESTree.Statement): ESTree.WhileStatement;
43
+ }
@@ -0,0 +1,79 @@
1
+ import * as ESTree from 'estree';
2
+ import { TNodeWithLexicalScope } from '../types/node/TNodeWithLexicalScope';
3
+ import { TNodeWithLexicalScopeStatements } from '../types/node/TNodeWithLexicalScopeStatements';
4
+ import { TNodeWithSingleStatementBody } from '../types/node/TNodeWithSingleStatementBody';
5
+ import { TNodeWithStatements } from '../types/node/TNodeWithStatements';
6
+ export declare class NodeGuards {
7
+ private static readonly nodesWithLexicalStatements;
8
+ static isArrayPatternNode(node: ESTree.Node): node is ESTree.ArrayPattern;
9
+ static isArrowFunctionExpressionNode(node: ESTree.Node): node is ESTree.ArrowFunctionExpression;
10
+ static isAssignmentExpressionNode(node: ESTree.Node): node is ESTree.AssignmentExpression;
11
+ static isAssignmentPatternNode(node: ESTree.Node): node is ESTree.AssignmentPattern;
12
+ static isAwaitExpressionNode(node: ESTree.Node): node is ESTree.AwaitExpression;
13
+ static isBigIntLiteralNode(node: ESTree.Node): node is ESTree.BigIntLiteral;
14
+ static isBlockStatementNode(node: ESTree.Node): node is ESTree.BlockStatement;
15
+ static isBreakStatementNode(node: ESTree.Node): node is ESTree.BreakStatement;
16
+ static isCallExpressionNode(node: ESTree.Node): node is ESTree.CallExpression;
17
+ static isClassBodyNode(node: ESTree.Node): node is ESTree.ClassBody;
18
+ static isClassDeclarationNode(node: ESTree.Node): node is ESTree.ClassDeclaration & {
19
+ id: ESTree.Identifier;
20
+ };
21
+ static isConditionalExpressionNode(node: ESTree.Node): node is ESTree.ConditionalExpression;
22
+ static isContinueStatementNode(node: ESTree.Node): node is ESTree.ContinueStatement;
23
+ static isDirectiveNode(node: ESTree.Node): node is ESTree.Directive;
24
+ static isDoWhileStatementNode(node: ESTree.Node): node is ESTree.DoWhileStatement;
25
+ static isExportAllDeclarationNode(node: ESTree.Node): node is ESTree.ExportAllDeclaration;
26
+ static isExportNamedDeclarationNode(node: ESTree.Node): node is ESTree.ExportNamedDeclaration;
27
+ static isExportSpecifierNode(node: ESTree.Node): node is ESTree.ExportSpecifier;
28
+ static isExpressionStatementNode(node: ESTree.Node): node is ESTree.ExpressionStatement;
29
+ static isForStatementNode(node: ESTree.Node): node is ESTree.ForStatement;
30
+ static isForInStatementNode(node: ESTree.Node): node is ESTree.ForInStatement;
31
+ static isForOfStatementNode(node: ESTree.Node): node is ESTree.ForOfStatement;
32
+ static isFunctionNode(node: ESTree.Node): node is ESTree.Function;
33
+ static isFunctionDeclarationNode(node: ESTree.Node): node is ESTree.FunctionDeclaration & {
34
+ id: ESTree.Identifier;
35
+ };
36
+ static isFunctionExpressionNode(node: ESTree.Node): node is ESTree.FunctionExpression;
37
+ static isIdentifierNode(node: ESTree.Node): node is ESTree.Identifier;
38
+ static isIfStatementNode(node: ESTree.Node): node is ESTree.IfStatement;
39
+ static isIfStatementNodeWithSingleStatementBody(node: ESTree.Node): node is ESTree.IfStatement;
40
+ static isImportDeclarationNode(node: ESTree.Node): node is ESTree.ImportDeclaration;
41
+ static isImportExpressionNode(node: ESTree.Node): node is ESTree.ImportExpression;
42
+ static isImportSpecifierNode(node: ESTree.Node): node is ESTree.ImportSpecifier;
43
+ static isLabelIdentifierNode(node: ESTree.Node, parentNode: ESTree.Node): node is ESTree.Identifier;
44
+ static isLabeledStatementNode(node: ESTree.Node): node is ESTree.LabeledStatement;
45
+ static isLiteralNode(node: ESTree.Node): node is ESTree.Literal;
46
+ static isLogicalExpressionNode(node: ESTree.Node): node is ESTree.LogicalExpression;
47
+ static isMemberExpressionNode(node: ESTree.Node): node is ESTree.MemberExpression;
48
+ static isMethodDefinitionNode(node: ESTree.Node): node is ESTree.MethodDefinition;
49
+ static isNewExpressionNode(node: ESTree.Node): node is ESTree.NewExpression;
50
+ static isNode(object: Object & {
51
+ type?: string;
52
+ }): object is ESTree.Node;
53
+ static isNodeWithLexicalScope(node: ESTree.Node): node is TNodeWithLexicalScope;
54
+ static isNodeWithBlockLexicalScope(node: ESTree.Node): node is TNodeWithLexicalScope;
55
+ static isNodeWithSingleStatementBody(node: ESTree.Node): node is TNodeWithSingleStatementBody;
56
+ static isNodeWithLexicalScopeStatements(node: ESTree.Node, parentNode: ESTree.Node): node is TNodeWithLexicalScopeStatements;
57
+ static isNodeWithStatements(node: ESTree.Node): node is TNodeWithStatements;
58
+ static isNodeWithComments(node: ESTree.Node): node is ESTree.Node;
59
+ static isObjectPatternNode(node: ESTree.Node): node is ESTree.ObjectPattern;
60
+ static isObjectExpressionNode(node: ESTree.Node): node is ESTree.ObjectExpression;
61
+ static isProgramNode(node: ESTree.Node): node is ESTree.Program;
62
+ static isPropertyNode(node: ESTree.Node): node is ESTree.Property;
63
+ static isPropertyDefinitionNode(node: ESTree.Node): node is ESTree.PropertyDefinition;
64
+ static isRestElementNode(node: ESTree.Node): node is ESTree.RestElement;
65
+ static isReturnStatementNode(node: ESTree.Node): node is ESTree.ReturnStatement;
66
+ static isSequenceExpressionNode(node: ESTree.Node): node is ESTree.SequenceExpression;
67
+ static isSpreadElementNode(node: ESTree.Node): node is ESTree.SpreadElement;
68
+ static isSuperNode(node: ESTree.Node): node is ESTree.Super;
69
+ static isSwitchCaseNode(node: ESTree.Node): node is ESTree.SwitchCase;
70
+ static isTaggedTemplateExpressionNode(node: ESTree.Node): node is ESTree.TaggedTemplateExpression;
71
+ static isTemplateLiteralNode(node: ESTree.Node): node is ESTree.TemplateLiteral;
72
+ static isThisExpressionNode(node: ESTree.Node): node is ESTree.ThisExpression;
73
+ static isUnaryExpressionNode(node: ESTree.Node): node is ESTree.UnaryExpression;
74
+ static isVariableDeclarationNode(node: ESTree.Node): node is ESTree.VariableDeclaration;
75
+ static isVariableDeclaratorNode(node: ESTree.Node): node is ESTree.VariableDeclarator;
76
+ static isWithStatementNode(node: ESTree.Node): node is ESTree.WithStatement;
77
+ static isWhileStatementNode(node: ESTree.Node): node is ESTree.WhileStatement;
78
+ static isYieldExpressionNode(node: ESTree.Node): node is ESTree.YieldExpression;
79
+ }
@@ -0,0 +1,7 @@
1
+ import * as ESTree from 'estree';
2
+ import { TNodeWithLexicalScope } from '../types/node/TNodeWithLexicalScope';
3
+ export declare class NodeLexicalScopeUtils {
4
+ static getLexicalScope(node: ESTree.Node): TNodeWithLexicalScope | undefined;
5
+ static getLexicalScopes(node: ESTree.Node): TNodeWithLexicalScope[];
6
+ private static getLexicalScopesRecursive;
7
+ }
@@ -0,0 +1,6 @@
1
+ import * as ESTree from 'estree';
2
+ import { TStringLiteralNode } from '../types/node/TStringLiteralNode';
3
+ export declare class NodeLiteralUtils {
4
+ static isStringLiteralNode(literalNode: ESTree.Literal): literalNode is TStringLiteralNode;
5
+ static isProhibitedLiteralNode(literalNode: ESTree.Literal, parentNode: ESTree.Node): boolean;
6
+ }
@@ -0,0 +1,8 @@
1
+ import * as ESTree from 'estree';
2
+ export declare class NodeMetadata {
3
+ static set<T extends ESTree.Node = ESTree.Node>(node: T, metadata: Partial<T['metadata']>): void;
4
+ static get<T extends ESTree.BaseNodeMetadata, TMetadataKey extends keyof T>(node: ESTree.Node, metadataKey: TMetadataKey): T[TMetadataKey] | undefined;
5
+ static isForceTransformNode(node: ESTree.Node): boolean;
6
+ static isIgnoredNode(node: ESTree.Node): boolean;
7
+ static isStringArrayCallLiteralNode(literalNode: ESTree.Literal): boolean;
8
+ }
@@ -0,0 +1,13 @@
1
+ import * as ESTree from 'estree';
2
+ import { TNodeWithStatements } from '../types/node/TNodeWithStatements';
3
+ import { TStatement } from '../types/node/TStatement';
4
+ export declare class NodeStatementUtils {
5
+ static getParentNodeWithStatements(node: ESTree.Node): TNodeWithStatements;
6
+ static getParentNodesWithStatements(node: ESTree.Node): TNodeWithStatements[];
7
+ static getNextSiblingStatement(statement: ESTree.Statement): TStatement | null;
8
+ static getPreviousSiblingStatement(statement: ESTree.Statement): TStatement | null;
9
+ static getRootStatementOfNode(node: ESTree.Node): ESTree.Statement;
10
+ static getScopeOfNode(node: ESTree.Node): TNodeWithStatements;
11
+ private static getParentNodesWithStatementsRecursive;
12
+ private static getSiblingStatementByOffset;
13
+ }
@@ -0,0 +1,11 @@
1
+ import * as ESTree from 'estree';
2
+ export declare class NodeUtils {
3
+ static addXVerbatimPropertyTo(literalNode: ESTree.Literal): ESTree.Literal;
4
+ static clone<T extends ESTree.Node = ESTree.Node>(astTree: T): T;
5
+ static convertCodeToStructure(code: string): ESTree.Statement[];
6
+ static convertStructureToCode(structure: ESTree.Node[]): string;
7
+ static getUnaryExpressionArgumentNode(unaryExpressionNode: ESTree.UnaryExpression): ESTree.Node;
8
+ static parentizeAst<T extends ESTree.Node = ESTree.Node>(astTree: T): T;
9
+ static parentizeNode<T extends ESTree.Node = ESTree.Node>(node: T, parentNode: ESTree.Node | null): T;
10
+ private static cloneRecursive;
11
+ }
@@ -0,0 +1,10 @@
1
+ import * as ESTree from 'estree';
2
+ import { TNumericalExpressionDataToNodeConverterLiteralNodeGetter } from '../types/node/TNumericalExpressionDataToNodeConverterLiteralNodeGetter';
3
+ import { TNumberNumericalExpressionData } from '../types/analyzers/number-numerical-expression-analyzer/TNumberNumericalExpressionData';
4
+ export declare class NumericalExpressionDataToNodeConverter {
5
+ static convertIntegerNumberData(numberNumericalExpressionData: TNumberNumericalExpressionData, literalNodeGetter: TNumericalExpressionDataToNodeConverterLiteralNodeGetter): ESTree.Expression;
6
+ static convertFloatNumberData(integerNumberNumericalExpressionData: TNumberNumericalExpressionData, decimalPart: number, literalNodeGetter: TNumericalExpressionDataToNodeConverterLiteralNodeGetter): ESTree.Expression;
7
+ private static convertNumericalExpressionDataToNode;
8
+ private static convertPartsToBinaryExpression;
9
+ private static convertPartOrNumberToLiteralNode;
10
+ }
@@ -0,0 +1,16 @@
1
+ import * as ESTree from 'estree';
2
+ import { TScopeIdentifiersTraverserCallback } from '../types/node/TScopeIdentifiersTraverserCallback';
3
+ import { IScopeAnalyzer } from '../interfaces/analyzers/scope-analyzer/IScopeAnalyzer';
4
+ import { IScopeIdentifiersTraverser } from '../interfaces/node/IScopeIdentifiersTraverser';
5
+ import { IScopeIdentifiersTraverserCallbackData } from '../interfaces/node/IScopeIdentifiersTraverserCallbackData';
6
+ import { IScopeThroughIdentifiersTraverserCallbackData } from '../interfaces/node/IScopeThroughIdentifiersTraverserCallbackData';
7
+ export declare class ScopeIdentifiersTraverser implements IScopeIdentifiersTraverser {
8
+ private static readonly argumentsVariableName;
9
+ private static readonly globalScopeNames;
10
+ private readonly scopeAnalyzer;
11
+ constructor(scopeAnalyzer: IScopeAnalyzer);
12
+ traverseScopeIdentifiers(programNode: ESTree.Program, parentNode: ESTree.Node | null, callback: TScopeIdentifiersTraverserCallback<IScopeIdentifiersTraverserCallbackData>): void;
13
+ traverseScopeThroughIdentifiers(programNode: ESTree.Program, parentNode: ESTree.Node | null, callback: TScopeIdentifiersTraverserCallback<IScopeThroughIdentifiersTraverserCallbackData>): void;
14
+ private traverseScopeIdentifiersRecursive;
15
+ private traverseScopeThroughIdentifiersRecursive;
16
+ }
@@ -0,0 +1,17 @@
1
+ /// <reference types="estraverse" />
2
+ import * as estraverse from '@javascript-obfuscator/estraverse';
3
+ import * as ESTree from 'estree';
4
+ import { INodeTransformer } from '../interfaces/node-transformers/INodeTransformer';
5
+ import { IOptions } from '../interfaces/options/IOptions';
6
+ import { IRandomGenerator } from '../interfaces/utils/IRandomGenerator';
7
+ import { IVisitor } from '../interfaces/node-transformers/IVisitor';
8
+ import { NodeTransformer } from '../enums/node-transformers/NodeTransformer';
9
+ import { NodeTransformationStage } from '../enums/node-transformers/NodeTransformationStage';
10
+ export declare abstract class AbstractNodeTransformer implements INodeTransformer {
11
+ readonly runAfter: NodeTransformer[] | undefined;
12
+ protected readonly options: IOptions;
13
+ protected readonly randomGenerator: IRandomGenerator;
14
+ constructor(randomGenerator: IRandomGenerator, options: IOptions);
15
+ abstract getVisitor(nodeTransformationStage: NodeTransformationStage): IVisitor | null;
16
+ abstract transformNode(node: ESTree.Node, parentNode: ESTree.Node): ESTree.Node | estraverse.VisitorOption;
17
+ }
@@ -1,13 +1,5 @@
1
- import { injectable } from 'inversify';
2
-
3
1
  import { INodeTransformer } from '../interfaces/node-transformers/INodeTransformer';
4
-
5
2
  import { NodeTransformer } from '../enums/node-transformers/NodeTransformer';
6
-
7
3
  import { AbstractTransformerNamesGroupsBuilder } from '../utils/AbstractTransformerNamesGroupsBuilder';
8
-
9
- @injectable()
10
- export class NodeTransformerNamesGroupsBuilder extends AbstractTransformerNamesGroupsBuilder<
11
- NodeTransformer,
12
- INodeTransformer
13
- > {}
4
+ export declare class NodeTransformerNamesGroupsBuilder extends AbstractTransformerNamesGroupsBuilder<NodeTransformer, INodeTransformer> {
5
+ }
@@ -0,0 +1,15 @@
1
+ import * as ESTree from 'estree';
2
+ import { TNodeTransformerFactory } from '../types/container/node-transformers/TNodeTransformerFactory';
3
+ import { INodeTransformer } from '../interfaces/node-transformers/INodeTransformer';
4
+ import { INodeTransformersRunner } from '../interfaces/node-transformers/INodeTransformersRunner';
5
+ import { ITransformerNamesGroupsBuilder } from '../interfaces/utils/ITransformerNamesGroupsBuilder';
6
+ import { NodeTransformer } from '../enums/node-transformers/NodeTransformer';
7
+ import { NodeTransformationStage } from '../enums/node-transformers/NodeTransformationStage';
8
+ export declare class NodeTransformersRunner implements INodeTransformersRunner {
9
+ private readonly nodeTransformerFactory;
10
+ private readonly nodeTransformerNamesGroupsBuilder;
11
+ constructor(nodeTransformerFactory: TNodeTransformerFactory, nodeTransformerNamesGroupsBuilder: ITransformerNamesGroupsBuilder<NodeTransformer, INodeTransformer>);
12
+ transform<T extends ESTree.Node = ESTree.Program>(astTree: T, nodeTransformerNames: NodeTransformer[], nodeTransformationStage: NodeTransformationStage): T;
13
+ private buildNormalizedNodeTransformers;
14
+ private mergeVisitorsForDirection;
15
+ }
@@ -0,0 +1,17 @@
1
+ import * as ESTree from 'estree';
2
+ import { TControlFlowCustomNodeFactory } from '../../types/container/custom-nodes/TControlFlowCustomNodeFactory';
3
+ import { IArrayUtils } from '../../interfaces/utils/IArrayUtils';
4
+ import { IOptions } from '../../interfaces/options/IOptions';
5
+ import { IRandomGenerator } from '../../interfaces/utils/IRandomGenerator';
6
+ import { IVisitor } from '../../interfaces/node-transformers/IVisitor';
7
+ import { NodeTransformationStage } from '../../enums/node-transformers/NodeTransformationStage';
8
+ import { AbstractNodeTransformer } from '../AbstractNodeTransformer';
9
+ export declare class BlockStatementControlFlowTransformer extends AbstractNodeTransformer {
10
+ private readonly arrayUtils;
11
+ private readonly controlFlowCustomNodeFactory;
12
+ constructor(controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory, arrayUtils: IArrayUtils, randomGenerator: IRandomGenerator, options: IOptions);
13
+ private static isProhibitedStatementNode;
14
+ private static canTransformBlockStatementNode;
15
+ getVisitor(nodeTransformationStage: NodeTransformationStage): IVisitor | null;
16
+ transformNode(blockStatementNode: ESTree.BlockStatement, parentNode: ESTree.Node): ESTree.Node;
17
+ }
@@ -0,0 +1,28 @@
1
+ import * as ESTree from 'estree';
2
+ import { TControlFlowCustomNodeFactory } from '../../types/container/custom-nodes/TControlFlowCustomNodeFactory';
3
+ import { TControlFlowReplacerFactory } from '../../types/container/node-transformers/TControlFlowReplacerFactory';
4
+ import { TControlFlowStorageFactory } from '../../types/container/node-transformers/TControlFlowStorageFactory';
5
+ import { IOptions } from '../../interfaces/options/IOptions';
6
+ import { IRandomGenerator } from '../../interfaces/utils/IRandomGenerator';
7
+ import { IVisitor } from '../../interfaces/node-transformers/IVisitor';
8
+ import { NodeTransformationStage } from '../../enums/node-transformers/NodeTransformationStage';
9
+ import { AbstractNodeTransformer } from '../AbstractNodeTransformer';
10
+ export declare class FunctionControlFlowTransformer extends AbstractNodeTransformer {
11
+ private static readonly controlFlowReplacersMap;
12
+ private static readonly hostNodeSearchMinDepth;
13
+ private static readonly hostNodeSearchMaxDepth;
14
+ private readonly controlFlowData;
15
+ private readonly visitedFunctionNodes;
16
+ private readonly hostNodesWithControlFlowNode;
17
+ private readonly controlFlowReplacerFactory;
18
+ private readonly controlFlowStorageFactory;
19
+ private readonly controlFlowCustomNodeFactory;
20
+ constructor(controlFlowStorageFactory: TControlFlowStorageFactory, controlFlowReplacerFactory: TControlFlowReplacerFactory, controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory, randomGenerator: IRandomGenerator, options: IOptions);
21
+ getVisitor(nodeTransformationStage: NodeTransformationStage): IVisitor | null;
22
+ transformNode(functionNode: ESTree.Function, parentNode: ESTree.Node): ESTree.Function;
23
+ private getControlFlowStorage;
24
+ private getControlFlowStorageNode;
25
+ private getHostNode;
26
+ private isVisitedFunctionNode;
27
+ private transformFunctionBody;
28
+ }
@@ -0,0 +1,17 @@
1
+ import * as ESTree from 'estree';
2
+ import { TControlFlowCustomNodeFactory } from '../../../types/container/custom-nodes/TControlFlowCustomNodeFactory';
3
+ import { TControlFlowStorage } from '../../../types/storages/TControlFlowStorage';
4
+ import { IControlFlowReplacer } from '../../../interfaces/node-transformers/control-flow-transformers/IControlFlowReplacer';
5
+ import { ICustomNode } from '../../../interfaces/custom-nodes/ICustomNode';
6
+ import { IOptions } from '../../../interfaces/options/IOptions';
7
+ import { IRandomGenerator } from '../../../interfaces/utils/IRandomGenerator';
8
+ export declare abstract class AbstractControlFlowReplacer implements IControlFlowReplacer {
9
+ protected readonly controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory;
10
+ protected readonly options: IOptions;
11
+ protected readonly randomGenerator: IRandomGenerator;
12
+ protected readonly replacerDataByControlFlowStorageId: Map<string, Map<string, string[]>>;
13
+ constructor(controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory, randomGenerator: IRandomGenerator, options: IOptions);
14
+ protected static getStorageKeysByIdForCurrentStorage(identifierDataByControlFlowStorageId: Map<string, Map<string, string[]>>, controlFlowStorageId: string): Map<string, string[]>;
15
+ protected insertCustomNodeToControlFlowStorage(customNode: ICustomNode, controlFlowStorage: TControlFlowStorage, replacerId: string, usingExistingIdentifierChance: number): string;
16
+ abstract replace(node: ESTree.Node, parentNode: ESTree.Node, controlFlowStorage: TControlFlowStorage): ESTree.Node;
17
+ }
@@ -0,0 +1,11 @@
1
+ import * as ESTree from 'estree';
2
+ import { TControlFlowCustomNodeFactory } from '../../../types/container/custom-nodes/TControlFlowCustomNodeFactory';
3
+ import { TControlFlowStorage } from '../../../types/storages/TControlFlowStorage';
4
+ import { IOptions } from '../../../interfaces/options/IOptions';
5
+ import { IRandomGenerator } from '../../../interfaces/utils/IRandomGenerator';
6
+ import { ExpressionWithOperatorControlFlowReplacer } from './ExpressionWithOperatorControlFlowReplacer';
7
+ export declare class BinaryExpressionControlFlowReplacer extends ExpressionWithOperatorControlFlowReplacer {
8
+ private static readonly usingExistingIdentifierChance;
9
+ constructor(controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory, randomGenerator: IRandomGenerator, options: IOptions);
10
+ replace(binaryExpressionNode: ESTree.BinaryExpression, parentNode: ESTree.Node, controlFlowStorage: TControlFlowStorage): ESTree.Node;
11
+ }
@@ -0,0 +1,12 @@
1
+ import * as ESTree from 'estree';
2
+ import { TControlFlowCustomNodeFactory } from '../../../types/container/custom-nodes/TControlFlowCustomNodeFactory';
3
+ import { TControlFlowStorage } from '../../../types/storages/TControlFlowStorage';
4
+ import { IOptions } from '../../../interfaces/options/IOptions';
5
+ import { IRandomGenerator } from '../../../interfaces/utils/IRandomGenerator';
6
+ import { AbstractControlFlowReplacer } from './AbstractControlFlowReplacer';
7
+ export declare class CallExpressionControlFlowReplacer extends AbstractControlFlowReplacer {
8
+ private static readonly usingExistingIdentifierChance;
9
+ constructor(controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory, randomGenerator: IRandomGenerator, options: IOptions);
10
+ replace(callExpressionNode: ESTree.CallExpression, parentNode: ESTree.Node, controlFlowStorage: TControlFlowStorage): ESTree.Node;
11
+ protected getControlFlowStorageCallNode(controlFlowStorageId: string, storageKey: string, callee: ESTree.Expression, expressionArguments: (ESTree.Expression | ESTree.SpreadElement)[]): ESTree.Node;
12
+ }
@@ -0,0 +1,9 @@
1
+ import * as ESTree from 'estree';
2
+ import { TControlFlowCustomNodeFactory } from '../../../types/container/custom-nodes/TControlFlowCustomNodeFactory';
3
+ import { IOptions } from '../../../interfaces/options/IOptions';
4
+ import { IRandomGenerator } from '../../../interfaces/utils/IRandomGenerator';
5
+ import { AbstractControlFlowReplacer } from './AbstractControlFlowReplacer';
6
+ export declare abstract class ExpressionWithOperatorControlFlowReplacer extends AbstractControlFlowReplacer {
7
+ constructor(controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory, randomGenerator: IRandomGenerator, options: IOptions);
8
+ protected getControlFlowStorageCallNode(controlFlowStorageId: string, storageKey: string, leftExpression: ESTree.Expression, rightExpression: ESTree.Expression): ESTree.Node;
9
+ }
@@ -0,0 +1,12 @@
1
+ import * as ESTree from 'estree';
2
+ import { TControlFlowCustomNodeFactory } from '../../../types/container/custom-nodes/TControlFlowCustomNodeFactory';
3
+ import { TControlFlowStorage } from '../../../types/storages/TControlFlowStorage';
4
+ import { IOptions } from '../../../interfaces/options/IOptions';
5
+ import { IRandomGenerator } from '../../../interfaces/utils/IRandomGenerator';
6
+ import { ExpressionWithOperatorControlFlowReplacer } from './ExpressionWithOperatorControlFlowReplacer';
7
+ export declare class LogicalExpressionControlFlowReplacer extends ExpressionWithOperatorControlFlowReplacer {
8
+ private static readonly usingExistingIdentifierChance;
9
+ constructor(controlFlowCustomNodeFactory: TControlFlowCustomNodeFactory, randomGenerator: IRandomGenerator, options: IOptions);
10
+ replace(logicalExpressionNode: ESTree.LogicalExpression, parentNode: ESTree.Node, controlFlowStorage: TControlFlowStorage): ESTree.Node;
11
+ private checkForProhibitedExpressions;
12
+ }