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

package components

// Tag - A variety of extra information about a metadata item is included as tags. These tags use their own element names such as `Genre`, `Writer`, `Directory`, and `Role`. Individual tag types may introduce their own extra attributes.
type Tag struct {
	// Measure of the confidence of an automatic tag
	Confidence *float64 `json:"confidence,omitempty"`
	Context    *string  `json:"context,omitempty"`
	// A filter parameter that can be used to query for more content that matches this tag value.
	Filter    any     `json:"filter,omitempty"`
	ID        *int64  `json:"id,omitempty"`
	RatingKey *string `json:"ratingKey,omitempty"`
	// The role this actor played
	Role any `json:"role,omitempty"`
	// The value of the tag (the name)
	Tag any `json:"tag,omitempty"`
	// Plex identifier for this tag which can be used to fetch additional information from plex.tv
	TagKey  any    `json:"tagKey,omitempty"`
	TagType *int64 `json:"tagType,omitempty"`
	Thumb   any    `json:"thumb,omitempty"`
}

func (t *Tag) GetConfidence() *float64 {
	if t == nil {
		return nil
	}
	return t.Confidence
}

func (t *Tag) GetContext() *string {
	if t == nil {
		return nil
	}
	return t.Context
}

func (t *Tag) GetFilter() any {
	if t == nil {
		return nil
	}
	return t.Filter
}

func (t *Tag) GetID() *int64 {
	if t == nil {
		return nil
	}
	return t.ID
}

func (t *Tag) GetRatingKey() *string {
	if t == nil {
		return nil
	}
	return t.RatingKey
}

func (t *Tag) GetRole() any {
	if t == nil {
		return nil
	}
	return t.Role
}

func (t *Tag) GetTag() any {
	if t == nil {
		return nil
	}
	return t.Tag
}

func (t *Tag) GetTagKey() any {
	if t == nil {
		return nil
	}
	return t.TagKey
}

func (t *Tag) GetTagType() *int64 {
	if t == nil {
		return nil
	}
	return t.TagType
}

func (t *Tag) GetThumb() any {
	if t == nil {
		return nil
	}
	return t.Thumb
}
