import Modification from '../../modification'; import * as Shift from 'shift-ast'; /** * This transformation recovers strings which have obfuscated via reversing them. * * Example: "!dlroW olleH".split("").reverse().join("") -> "Hello World!" */ export default class StringReverser extends Modification { /** * Creates a new modification. * @param ast The AST. */ constructor(ast: Shift.Script); /** * Executes the modification. */ execute(): void; /** * Recovers reversed strings. */ private recoverReversedStrings; /** * Returns whether a node is an obfuscated reversed string. * @param node The AST node. * @returns Whether. */ private isReversedString; }