### Godot version

4.0.dev (d0398f62f0)

### System information

Windows 10

### Issue description

`PlaceholderTexture2D::size` property is registered as a `Vector2I`: https://github.com/godotengine/godot/blob/0daa86d70e7338506c37bee6b6e0c4aba7255d68/scene/resources/texture.cpp#L3389  
It should be a `Vector2`, as setter method use a `Vector2` and so parent class getter method.

### Steps to reproduce

N/A

### Minimal reproduction project

N/A
p_list->push_back(PropertyInfo(Variant::OBJECT, PNAME("image"), PROPERTY_HINT_RESOURCE_TYPE, "Image", PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT));
}
Ref<ImageTexture> ImageTexture::create_from_image(const Ref<Image> &p_image) {
	ERR_FAIL_COND_V_MSG(p_image.is_null() || p_image->is_empty(), Ref<ImageTexture>(), "Invalid image");
	Ref<ImageTexture> image_texture;
	image_texture.instantiate();
	image_texture->set_image(p_image);
	return image_texture;
}
void ImageTexture::set_image(const Ref<Image> &p_image) {
	ERR_FAIL_COND_MSG(p_image.is_null() || p_image->is_empty(), "Invalid image");
	w = p_image->get_width();
	h = p_image->get_height();
	format = p_image->get_format();
	mipmaps = p_image->has_mipmaps();
	if (texture.is_null()) {
		texture = RenderingServer::get_singleton()->texture_2d_create(p_image);
	} else {
		RID new_texture = RenderingServer::get_singleton()->texture_2d_create(p_image);
		RenderingServer::get_singleton()->texture_replace(texture, new_texture);
	}
	notify_property_list_changed();
	emit_changed();
	image_stored = true;
}
Image::Format ImageTexture::get_format() const {
	return format;
}
void ImageTexture::update(const Ref<Image> &p_image) {