function doesBaseNeedParens(base) {
	return (
		// '**' is right-associative, parens are needed when Math.pow(a ** b, c) is converted to (a ** b) ** c
		astUtils.getPrecedence(base) <= PRECEDENCE_OF_EXPONENTIATION_EXPR ||
		// An unary operator cannot be used immediately before an exponentiation expression
		base.type === "AwaitExpression" ||
		base.type === "UnaryExpression"
	);
}
Determines whether the given node needs parens if used as the base in an exponentiation binary expression.
@param {ASTNode} base The node to check.
@returns {boolean} `true` if the node needs to be parenthesised.