@tool
extends TwitchData

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

## 
## #/components/schemas/ChannelEditor
class_name TwitchChannelEditor
	
## An ID that uniquely identifies a user with editor permissions.
@export var user_id: String:
	set(val): 
		user_id = val
		track_data(&"user_id", val)

## The user’s display name.
@export var user_name: String:
	set(val): 
		user_name = val
		track_data(&"user_name", val)

## The date and time, in RFC3339 format, when the user became one of the broadcaster’s editors.
@export var created_at: String:
	set(val): 
		created_at = val
		track_data(&"created_at", val)
var response: BufferedHTTPClient.ResponseData


## Constructor with all required fields.
static func create(_user_id: String, _user_name: String, _created_at: String) -> TwitchChannelEditor:
	var twitch_channel_editor: TwitchChannelEditor = TwitchChannelEditor.new()
	twitch_channel_editor.user_id = _user_id
	twitch_channel_editor.user_name = _user_name
	twitch_channel_editor.created_at = _created_at
	return twitch_channel_editor


static func from_json(d: Dictionary) -> TwitchChannelEditor:
	var result: TwitchChannelEditor = TwitchChannelEditor.new()
	if d.get("user_id", null) != null:
		result.user_id = d["user_id"]
	if d.get("user_name", null) != null:
		result.user_name = d["user_name"]
	if d.get("created_at", null) != null:
		result.created_at = d["created_at"]
	return result
