@tool
extends TwitchData

# CLASS GOT AUTOGENERATED DON'T CHANGE MANUALLY. CHANGES CAN BE OVERWRITTEN EASILY.

class_name TwitchSetExtensionRequiredConfiguration
	


## 
## #/components/schemas/SetExtensionRequiredConfigurationBody
class Body extends TwitchData:

	## The ID of the extension to update.
	@export var extension_id: String:
		set(val): 
			extension_id = val
			track_data(&"extension_id", val)
	
	## The version of the extension to update.
	@export var extension_version: String:
		set(val): 
			extension_version = val
			track_data(&"extension_version", val)
	
	## The required\_configuration string to use with the extension.
	@export var required_configuration: String:
		set(val): 
			required_configuration = val
			track_data(&"required_configuration", val)
	var response: BufferedHTTPClient.ResponseData
	
	
	## Constructor with all required fields.
	static func create(_extension_id: String, _extension_version: String, _required_configuration: String) -> Body:
		var body: Body = Body.new()
		body.extension_id = _extension_id
		body.extension_version = _extension_version
		body.required_configuration = _required_configuration
		return body
	
	
	static func from_json(d: Dictionary) -> Body:
		var result: Body = Body.new()
		if d.get("extension_id", null) != null:
			result.extension_id = d["extension_id"]
		if d.get("extension_version", null) != null:
			result.extension_version = d["extension_version"]
		if d.get("required_configuration", null) != null:
			result.required_configuration = d["required_configuration"]
		return result
	