@tool
extends TwitchData

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

## 
## #/components/schemas/GuestStarSession
class_name TwitchGuestStarSession
	
## ID uniquely representing the Guest Star session.
@export var id: String:
	set(val): 
		id = val
		track_data(&"id", val)

## List of guests currently interacting with the Guest Star session.
@export var guests: Array[TwitchGuest]:
	set(val): 
		guests = val
		track_data(&"guests", val)
var response: BufferedHTTPClient.ResponseData


## Constructor with all required fields.
static func create(_id: String, _guests: Array[TwitchGuest]) -> TwitchGuestStarSession:
	var twitch_guest_star_session: TwitchGuestStarSession = TwitchGuestStarSession.new()
	twitch_guest_star_session.id = _id
	twitch_guest_star_session.guests = _guests
	return twitch_guest_star_session


static func from_json(d: Dictionary) -> TwitchGuestStarSession:
	var result: TwitchGuestStarSession = TwitchGuestStarSession.new()
	if d.get("id", null) != null:
		result.id = d["id"]
	if d.get("guests", null) != null:
		for value in d["guests"]:
			result.guests.append(TwitchGuest.from_json(value))
	return result
