// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.

package components

type Capabilities struct {
	Analytics   *AnalyticsCapabilities   `json:"analytics,omitempty"`
	Device      *DeviceCapabilities      `json:"device,omitempty"`
	DeviceIo    *DeviceIOCapabilities    `json:"device_io,omitempty"`
	Events      *EventsCapabilities      `json:"events,omitempty"`
	Image       *ImageCapabilities       `json:"image,omitempty"`
	Media       *MediaCapabilities       `json:"media,omitempty"`
	PanTiltZoom *PanTiltZoomCapabilities `json:"pan_tilt_zoom,omitempty"`
	Recording   *RecordingCapabilities   `json:"recording,omitempty"`
	Replay      *ReplayCapabilities      `json:"replay,omitempty"`
	Search      *SearchCapabilities      `json:"search,omitempty"`
}

func (o *Capabilities) GetAnalytics() *AnalyticsCapabilities {
	if o == nil {
		return nil
	}
	return o.Analytics
}

func (o *Capabilities) GetDevice() *DeviceCapabilities {
	if o == nil {
		return nil
	}
	return o.Device
}

func (o *Capabilities) GetDeviceIo() *DeviceIOCapabilities {
	if o == nil {
		return nil
	}
	return o.DeviceIo
}

func (o *Capabilities) GetEvents() *EventsCapabilities {
	if o == nil {
		return nil
	}
	return o.Events
}

func (o *Capabilities) GetImage() *ImageCapabilities {
	if o == nil {
		return nil
	}
	return o.Image
}

func (o *Capabilities) GetMedia() *MediaCapabilities {
	if o == nil {
		return nil
	}
	return o.Media
}

func (o *Capabilities) GetPanTiltZoom() *PanTiltZoomCapabilities {
	if o == nil {
		return nil
	}
	return o.PanTiltZoom
}

func (o *Capabilities) GetRecording() *RecordingCapabilities {
	if o == nil {
		return nil
	}
	return o.Recording
}

func (o *Capabilities) GetReplay() *ReplayCapabilities {
	if o == nil {
		return nil
	}
	return o.Replay
}

func (o *Capabilities) GetSearch() *SearchCapabilities {
	if o == nil {
		return nil
	}
	return o.Search
}
