//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
//
// Changes to this file may cause incorrect behavior and will be lost when
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
#nullable enable
namespace LukeHagar.PlexAPI.SDK.Models.Requests
{
    using LukeHagar.PlexAPI.SDK.Models.Requests;
    using LukeHagar.PlexAPI.SDK.Utils;
    using Newtonsoft.Json;
    
    public class PostUsersSignInDataUserProfile
    {

        /// <summary>
        /// If the account has automatically select audio and subtitle tracks enabled
        /// </summary>
        [JsonProperty("autoSelectAudio")]
        public bool? AutoSelectAudio { get; set; } = true;

        /// <summary>
        /// The preferred audio language for the account
        /// </summary>
        [JsonProperty("defaultAudioLanguage", NullValueHandling = NullValueHandling.Include)]
        public string? DefaultAudioLanguage { get; set; }

        /// <summary>
        /// The preferred subtitle language for the account
        /// </summary>
        [JsonProperty("defaultSubtitleLanguage", NullValueHandling = NullValueHandling.Include)]
        public string? DefaultSubtitleLanguage { get; set; }

        [JsonProperty("autoSelectSubtitle")]
        public PostUsersSignInDataAutoSelectSubtitle? AutoSelectSubtitle { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.PostUsersSignInDataAutoSelectSubtitle.Disable;

        [JsonProperty("defaultSubtitleAccessibility")]
        public PostUsersSignInDataDefaultSubtitleAccessibility? DefaultSubtitleAccessibility { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.PostUsersSignInDataDefaultSubtitleAccessibility.Disable;

        [JsonProperty("defaultSubtitleForced")]
        public PostUsersSignInDataDefaultSubtitleForced? DefaultSubtitleForced { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.PostUsersSignInDataDefaultSubtitleForced.Disable;

        [JsonProperty("watchedIndicator")]
        public PostUsersSignInDataWatchedIndicator? WatchedIndicator { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.PostUsersSignInDataWatchedIndicator.Disable;

        [JsonProperty("mediaReviewsVisibility")]
        public PostUsersSignInDataMediaReviewsVisibility? MediaReviewsVisibility { get; set; } = LukeHagar.PlexAPI.SDK.Models.Requests.PostUsersSignInDataMediaReviewsVisibility.Disable;
    }
}