build/lib/treeshaking.ts/isStaticMemberWithSideEffects
function isStaticMemberWithSideEffects(ts: typeof import('typescript'), node: ts.ClassElement | ts.TypeElement): boolean {
	if (!ts.isPropertyDeclaration(node)) {
		return false;
	}
	if (!node.modifiers) {
		return false;
	}
	if (!node.modifiers.some(mod => mod.kind === ts.SyntaxKind.StaticKeyword)) {
		return false;
	}
	let hasSideEffects = false;
	const visitNode = (node: ts.Node) => {
		if (hasSideEffects) {
			// no need to go on
			return;
		}
		if (ts.isCallExpression(node) || ts.isNewExpression(node)) {
			hasSideEffects = true;
		}
		node.forEachChild(visitNode);
	};
	node.forEachChild(visitNode);
	return hasSideEffects;
}