### Godot version

4.0beta12

### System information

all

### Issue description

In `extension_api.json` we have some function that uses parameter typed after a global enum and display it as a bitfield:
```js
{
	"name": "set_button_mask",
	"is_const": false,
	"is_vararg": false,
	"is_static": false,
	"is_virtual": false,
	"hash": 3950145251,
	"arguments": [
		{
			"name": "mask",
			"type": "bitfield::MouseButtonMask" // bitfield prefix here !
		}
	]
},
```

However the global enum's own definition doesn't mention it is a bitfield:
```js
{
	"name": "MouseButtonMask",
	// No "bitfield" field here !
	"values": [
		{
			"name": "MOUSE_BUTTON_MASK_LEFT",
			"value": 1
		},
		{
			"name": "MOUSE_BUTTON_MASK_RIGHT",
			"value": 2
		},
		{
			"name": "MOUSE_BUTTON_MASK_MIDDLE",
			"value": 4
		},
		{
			"name": "MOUSE_BUTTON_MASK_MB_XBUTTON1",
			"value": 128
		},
		{
			"name": "MOUSE_BUTTON_MASK_MB_XBUTTON2",
			"value": 256
		}
	]
},
```

On the other hand, the non-global enums (i.e. the ones defined as part of a class) have this `is_bitfield` field.
So I guess we should add it to global enum too.

### Steps to reproduce

n/a

### Minimal reproduction project

n/a
#include "extension_api_dump.h"
#include "core/config/engine.h"
#include "core/core_constants.h"
#include "core/io/file_access.h"
#include "core/io/json.h"
#include "core/templates/pair.h"
#include "core/version.h"
#ifdef TOOLS_ENABLED
static String get_builtin_or_variant_type_name(const Variant::Type p_type) {
	if (p_type == Variant::NIL) {
		return "Variant";
	} else {
		return Variant::get_type_name(p_type);
	}
}
static String get_property_info_type_name(const PropertyInfo &p_info) {
	if (p_info.type == Variant::INT && (p_info.hint == PROPERTY_HINT_INT_IS_POINTER)) {
		if (p_info.hint_string.is_empty()) {
			return "void*";
		} else {