package obsws

// This file is automatically generated.
// https://github.com/christopher-dG/go-obs-websocket/blob/master/codegen/protocol.py

// SwitchTransitionEvent : The active transition has been changed.
//
// Since obs-websocket version: 4.0.0.
//
// https://github.com/Palakis/obs-websocket/blob/4.x-current/docs/generated/protocol.md#switchtransition
type SwitchTransitionEvent struct {
	// The name of the new active transition.
	// Required: Yes.
	TransitionName string `json:"transition-name"`
	_event         `json:",squash"`
}

// TransitionListChangedEvent : The list of available transitions has been modified.
// Transitions have been added, removed, or renamed.
//
// Since obs-websocket version: 4.0.0.
//
// https://github.com/Palakis/obs-websocket/blob/4.x-current/docs/generated/protocol.md#transitionlistchanged
type TransitionListChangedEvent struct {
	_event `json:",squash"`
}

// TransitionDurationChangedEvent : The active transition duration has been changed.
//
// Since obs-websocket version: 4.0.0.
//
// https://github.com/Palakis/obs-websocket/blob/4.x-current/docs/generated/protocol.md#transitiondurationchanged
type TransitionDurationChangedEvent struct {
	// New transition duration.
	// Required: Yes.
	NewDuration int `json:"new-duration"`
	_event      `json:",squash"`
}

// TransitionBeginEvent : A transition (other than "cut") has begun.
//
// Since obs-websocket version: 4.0.0.
//
// https://github.com/Palakis/obs-websocket/blob/4.x-current/docs/generated/protocol.md#transitionbegin
type TransitionBeginEvent struct {
	// Transition name.
	// Required: Yes.
	Name string `json:"name"`
	// Transition duration (in milliseconds).
	// Required: Yes.
	Duration int `json:"duration"`
	// Source scene of the transition.
	// Required: Yes.
	FromScene string `json:"from-scene"`
	// Destination scene of the transition.
	// Required: Yes.
	ToScene string `json:"to-scene"`
	_event  `json:",squash"`
}
