using System;
using ProtoBuf;
using System.Collections.Generic;
namespace MediaBrowser.Model.Updates
{
    /// 
    /// Class PackageInfo
    /// 
    [ProtoContract]
    public class PackageInfo
    {
        /// 
        /// Gets or sets the name.
        /// 
        /// The name.
        [ProtoMember(1)]
        public string name { get; set; }
        /// 
        /// Gets or sets the short description.
        /// 
        /// The short description.
        [ProtoMember(2)]
        public string shortDescription { get; set; }
        /// 
        /// Gets or sets the overview.
        /// 
        /// The overview.
        [ProtoMember(3)]
        public string overview { get; set; }
        /// 
        /// Gets or sets a value indicating whether this instance is premium.
        /// 
        /// true if this instance is premium; otherwise, false.
        [ProtoMember(4)]
        public bool isPremium { get; set; }
        /// 
        /// Gets or sets the rich desc URL.
        /// 
        /// The rich desc URL.
        [ProtoMember(5)]
        public string richDescUrl { get; set; }
        /// 
        /// Gets or sets the thumb image.
        /// 
        /// The thumb image.
        [ProtoMember(6)]
        public string thumbImage { get; set; }
        /// 
        /// Gets or sets the preview image.
        /// 
        /// The preview image.
        [ProtoMember(7)]
        public string previewImage { get; set; }
        /// 
        /// Gets or sets the type.
        /// 
        /// The type.
        [ProtoMember(8)]
        public PackageType type { get; set; }
        /// 
        /// Gets or sets the target filename.
        /// 
        /// The target filename.
        [ProtoMember(9)]
        public string targetFilename { get; set; }
        /// 
        /// Gets or sets the owner.
        /// 
        /// The owner.
        [ProtoMember(10)]
        public string owner { get; set; }
        /// 
        /// Gets or sets the category.
        /// 
        /// The category.
        [ProtoMember(11)]
        public string category { get; set; }
        /// 
        /// Gets or sets the catalog tile color.
        /// 
        /// The owner.
        [ProtoMember(12)]
        public string tileColor { get; set; }
        /// 
        /// Gets or sets the feature id of this package (if premium).
        /// 
        /// The feature id.
        [ProtoMember(13)]
        public string featureId { get; set; }
        /// 
        /// Gets or sets the registration info for this package (if premium).
        /// 
        /// The registration info.
        [ProtoMember(14)]
        public string regInfo { get; set; }
        /// 
        /// Gets or sets the price for this package (if premium).
        /// 
        /// The price.
        [ProtoMember(15)]
        public float price { get; set; }
        /// 
        /// Gets or sets the target system for this plug-in (Server, MBTheater, MBClassic).
        /// 
        /// The target system.
        [ProtoMember(16)]
        public PackageTargetSystem targetSystem { get; set; }
        /// 
        /// Gets or sets whether or not this package is registered.
        /// 
        /// True if registered.
        [ProtoMember(17)]
        public bool isRegistered { get; set; }
        /// 
        /// Gets or sets the expiration date for this package.
        /// 
        /// Expiration Date.
        [ProtoMember(18)]
        public DateTime expDate { get; set; }
        /// 
        /// Gets or sets the versions.
        /// 
        /// The versions.
        [ProtoMember(19)]
        public List versions { get; set; }
    }
}