// <auto-generated>
//   This file was generated by a tool; you should avoid making direct changes.
//   Consider using 'partial classes' to extend these types
//   Input: steammessages_remoteclient_discovery.proto
// </auto-generated>

#region Designer generated code
#pragma warning disable CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
namespace SteamKit2.Internal
{

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteClientBroadcastHeader : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public ulong client_id
        {
            get => __pbn__client_id.GetValueOrDefault();
            set => __pbn__client_id = value;
        }
        public bool ShouldSerializeclient_id() => __pbn__client_id != null;
        public void Resetclient_id() => __pbn__client_id = null;
        private ulong? __pbn__client_id;

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue(ERemoteClientBroadcastMsg.k_ERemoteClientBroadcastMsgDiscovery)]
        public ERemoteClientBroadcastMsg msg_type
        {
            get => __pbn__msg_type ?? ERemoteClientBroadcastMsg.k_ERemoteClientBroadcastMsgDiscovery;
            set => __pbn__msg_type = value;
        }
        public bool ShouldSerializemsg_type() => __pbn__msg_type != null;
        public void Resetmsg_type() => __pbn__msg_type = null;
        private ERemoteClientBroadcastMsg? __pbn__msg_type;

        [global::ProtoBuf.ProtoMember(3)]
        public ulong instance_id
        {
            get => __pbn__instance_id.GetValueOrDefault();
            set => __pbn__instance_id = value;
        }
        public bool ShouldSerializeinstance_id() => __pbn__instance_id != null;
        public void Resetinstance_id() => __pbn__instance_id = null;
        private ulong? __pbn__instance_id;

        [global::ProtoBuf.ProtoMember(4)]
        public ulong device_id_OBSOLETE
        {
            get => __pbn__device_id_OBSOLETE.GetValueOrDefault();
            set => __pbn__device_id_OBSOLETE = value;
        }
        public bool ShouldSerializedevice_id_OBSOLETE() => __pbn__device_id_OBSOLETE != null;
        public void Resetdevice_id_OBSOLETE() => __pbn__device_id_OBSOLETE = null;
        private ulong? __pbn__device_id_OBSOLETE;

        [global::ProtoBuf.ProtoMember(5)]
        public byte[] device_token
        {
            get => __pbn__device_token;
            set => __pbn__device_token = value;
        }
        public bool ShouldSerializedevice_token() => __pbn__device_token != null;
        public void Resetdevice_token() => __pbn__device_token = null;
        private byte[] __pbn__device_token;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteClientBroadcastStatus : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public int version
        {
            get => __pbn__version.GetValueOrDefault();
            set => __pbn__version = value;
        }
        public bool ShouldSerializeversion() => __pbn__version != null;
        public void Resetversion() => __pbn__version = null;
        private int? __pbn__version;

        [global::ProtoBuf.ProtoMember(2)]
        public int min_version
        {
            get => __pbn__min_version.GetValueOrDefault();
            set => __pbn__min_version = value;
        }
        public bool ShouldSerializemin_version() => __pbn__min_version != null;
        public void Resetmin_version() => __pbn__min_version = null;
        private int? __pbn__min_version;

        [global::ProtoBuf.ProtoMember(3)]
        public uint connect_port
        {
            get => __pbn__connect_port.GetValueOrDefault();
            set => __pbn__connect_port = value;
        }
        public bool ShouldSerializeconnect_port() => __pbn__connect_port != null;
        public void Resetconnect_port() => __pbn__connect_port = null;
        private uint? __pbn__connect_port;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue("")]
        public string hostname
        {
            get => __pbn__hostname ?? "";
            set => __pbn__hostname = value;
        }
        public bool ShouldSerializehostname() => __pbn__hostname != null;
        public void Resethostname() => __pbn__hostname = null;
        private string __pbn__hostname;

        [global::ProtoBuf.ProtoMember(6)]
        public uint enabled_services
        {
            get => __pbn__enabled_services.GetValueOrDefault();
            set => __pbn__enabled_services = value;
        }
        public bool ShouldSerializeenabled_services() => __pbn__enabled_services != null;
        public void Resetenabled_services() => __pbn__enabled_services = null;
        private uint? __pbn__enabled_services;

        [global::ProtoBuf.ProtoMember(7)]
        [global::System.ComponentModel.DefaultValue(0)]
        public int ostype
        {
            get => __pbn__ostype ?? 0;
            set => __pbn__ostype = value;
        }
        public bool ShouldSerializeostype() => __pbn__ostype != null;
        public void Resetostype() => __pbn__ostype = null;
        private int? __pbn__ostype;

        [global::ProtoBuf.ProtoMember(8)]
        public bool is64bit
        {
            get => __pbn__is64bit.GetValueOrDefault();
            set => __pbn__is64bit = value;
        }
        public bool ShouldSerializeis64bit() => __pbn__is64bit != null;
        public void Resetis64bit() => __pbn__is64bit = null;
        private bool? __pbn__is64bit;

        [global::ProtoBuf.ProtoMember(9)]
        public global::System.Collections.Generic.List<User> users { get; } = new global::System.Collections.Generic.List<User>();

        [global::ProtoBuf.ProtoMember(11)]
        public int euniverse
        {
            get => __pbn__euniverse.GetValueOrDefault();
            set => __pbn__euniverse = value;
        }
        public bool ShouldSerializeeuniverse() => __pbn__euniverse != null;
        public void Reseteuniverse() => __pbn__euniverse = null;
        private int? __pbn__euniverse;

        [global::ProtoBuf.ProtoMember(12)]
        public uint timestamp
        {
            get => __pbn__timestamp.GetValueOrDefault();
            set => __pbn__timestamp = value;
        }
        public bool ShouldSerializetimestamp() => __pbn__timestamp != null;
        public void Resettimestamp() => __pbn__timestamp = null;
        private uint? __pbn__timestamp;

        [global::ProtoBuf.ProtoMember(13)]
        public bool screen_locked
        {
            get => __pbn__screen_locked.GetValueOrDefault();
            set => __pbn__screen_locked = value;
        }
        public bool ShouldSerializescreen_locked() => __pbn__screen_locked != null;
        public void Resetscreen_locked() => __pbn__screen_locked = null;
        private bool? __pbn__screen_locked;

        [global::ProtoBuf.ProtoMember(14)]
        public bool games_running
        {
            get => __pbn__games_running.GetValueOrDefault();
            set => __pbn__games_running = value;
        }
        public bool ShouldSerializegames_running() => __pbn__games_running != null;
        public void Resetgames_running() => __pbn__games_running = null;
        private bool? __pbn__games_running;

        [global::ProtoBuf.ProtoMember(15)]
        public global::System.Collections.Generic.List<string> mac_addresses { get; } = new global::System.Collections.Generic.List<string>();

        [global::ProtoBuf.ProtoMember(16)]
        public uint download_lan_peer_group
        {
            get => __pbn__download_lan_peer_group.GetValueOrDefault();
            set => __pbn__download_lan_peer_group = value;
        }
        public bool ShouldSerializedownload_lan_peer_group() => __pbn__download_lan_peer_group != null;
        public void Resetdownload_lan_peer_group() => __pbn__download_lan_peer_group = null;
        private uint? __pbn__download_lan_peer_group;

        [global::ProtoBuf.ProtoMember(17)]
        public bool broadcasting_active
        {
            get => __pbn__broadcasting_active.GetValueOrDefault();
            set => __pbn__broadcasting_active = value;
        }
        public bool ShouldSerializebroadcasting_active() => __pbn__broadcasting_active != null;
        public void Resetbroadcasting_active() => __pbn__broadcasting_active = null;
        private bool? __pbn__broadcasting_active;

        [global::ProtoBuf.ProtoMember(18)]
        public bool vr_active
        {
            get => __pbn__vr_active.GetValueOrDefault();
            set => __pbn__vr_active = value;
        }
        public bool ShouldSerializevr_active() => __pbn__vr_active != null;
        public void Resetvr_active() => __pbn__vr_active = null;
        private bool? __pbn__vr_active;

        [global::ProtoBuf.ProtoMember(19)]
        public uint content_cache_port
        {
            get => __pbn__content_cache_port.GetValueOrDefault();
            set => __pbn__content_cache_port = value;
        }
        public bool ShouldSerializecontent_cache_port() => __pbn__content_cache_port != null;
        public void Resetcontent_cache_port() => __pbn__content_cache_port = null;
        private uint? __pbn__content_cache_port;

        [global::ProtoBuf.ProtoMember(20)]
        public global::System.Collections.Generic.List<string> ip_addresses { get; } = new global::System.Collections.Generic.List<string>();

        [global::ProtoBuf.ProtoMember(21)]
        [global::System.ComponentModel.DefaultValue("")]
        public string public_ip_address
        {
            get => __pbn__public_ip_address ?? "";
            set => __pbn__public_ip_address = value;
        }
        public bool ShouldSerializepublic_ip_address() => __pbn__public_ip_address != null;
        public void Resetpublic_ip_address() => __pbn__public_ip_address = null;
        private string __pbn__public_ip_address;

        [global::ProtoBuf.ProtoMember(22)]
        public bool remoteplay_active
        {
            get => __pbn__remoteplay_active.GetValueOrDefault();
            set => __pbn__remoteplay_active = value;
        }
        public bool ShouldSerializeremoteplay_active() => __pbn__remoteplay_active != null;
        public void Resetremoteplay_active() => __pbn__remoteplay_active = null;
        private bool? __pbn__remoteplay_active;

        [global::ProtoBuf.ProtoMember(23)]
        public uint supported_services
        {
            get => __pbn__supported_services.GetValueOrDefault();
            set => __pbn__supported_services = value;
        }
        public bool ShouldSerializesupported_services() => __pbn__supported_services != null;
        public void Resetsupported_services() => __pbn__supported_services = null;
        private uint? __pbn__supported_services;

        [global::ProtoBuf.ProtoMember(24)]
        public bool steam_deck
        {
            get => __pbn__steam_deck.GetValueOrDefault();
            set => __pbn__steam_deck = value;
        }
        public bool ShouldSerializesteam_deck() => __pbn__steam_deck != null;
        public void Resetsteam_deck() => __pbn__steam_deck = null;
        private bool? __pbn__steam_deck;

        [global::ProtoBuf.ProtoMember(25)]
        public ulong steam_version
        {
            get => __pbn__steam_version.GetValueOrDefault();
            set => __pbn__steam_version = value;
        }
        public bool ShouldSerializesteam_version() => __pbn__steam_version != null;
        public void Resetsteam_version() => __pbn__steam_version = null;
        private ulong? __pbn__steam_version;

        [global::ProtoBuf.ProtoMember(26)]
        [global::System.ComponentModel.DefaultValue(EVRLinkCaps.k_EVRLinkCapsUnknown)]
        public EVRLinkCaps vr_link_caps
        {
            get => __pbn__vr_link_caps ?? EVRLinkCaps.k_EVRLinkCapsUnknown;
            set => __pbn__vr_link_caps = value;
        }
        public bool ShouldSerializevr_link_caps() => __pbn__vr_link_caps != null;
        public void Resetvr_link_caps() => __pbn__vr_link_caps = null;
        private EVRLinkCaps? __pbn__vr_link_caps;

        [global::ProtoBuf.ProtoContract()]
        public partial class User : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
            public ulong steamid
            {
                get => __pbn__steamid.GetValueOrDefault();
                set => __pbn__steamid = value;
            }
            public bool ShouldSerializesteamid() => __pbn__steamid != null;
            public void Resetsteamid() => __pbn__steamid = null;
            private ulong? __pbn__steamid;

            [global::ProtoBuf.ProtoMember(2)]
            public uint auth_key_id
            {
                get => __pbn__auth_key_id.GetValueOrDefault();
                set => __pbn__auth_key_id = value;
            }
            public bool ShouldSerializeauth_key_id() => __pbn__auth_key_id != null;
            public void Resetauth_key_id() => __pbn__auth_key_id = null;
            private uint? __pbn__auth_key_id;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteClientBroadcastDiscovery : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public uint seq_num
        {
            get => __pbn__seq_num.GetValueOrDefault();
            set => __pbn__seq_num = value;
        }
        public bool ShouldSerializeseq_num() => __pbn__seq_num != null;
        public void Resetseq_num() => __pbn__seq_num = null;
        private uint? __pbn__seq_num;

        [global::ProtoBuf.ProtoMember(2)]
        public global::System.Collections.Generic.List<ulong> client_ids { get; } = new global::System.Collections.Generic.List<ulong>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteClientBroadcastClientIDDeconflict : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(2)]
        public global::System.Collections.Generic.List<ulong> client_ids { get; } = new global::System.Collections.Generic.List<ulong>();

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceAuthorizationRequest : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public byte[] device_token { get; set; }

        [global::ProtoBuf.ProtoMember(2)]
        [global::System.ComponentModel.DefaultValue("")]
        public string device_name
        {
            get => __pbn__device_name ?? "";
            set => __pbn__device_name = value;
        }
        public bool ShouldSerializedevice_name() => __pbn__device_name != null;
        public void Resetdevice_name() => __pbn__device_name = null;
        private string __pbn__device_name;

        [global::ProtoBuf.ProtoMember(3, IsRequired = true)]
        public byte[] encrypted_request { get; set; }

        [global::ProtoBuf.ProtoMember(4)]
        public byte[] auth_key
        {
            get => __pbn__auth_key;
            set => __pbn__auth_key = value;
        }
        public bool ShouldSerializeauth_key() => __pbn__auth_key != null;
        public void Resetauth_key() => __pbn__auth_key = null;
        private byte[] __pbn__auth_key;

        [global::ProtoBuf.ProtoMember(5)]
        public uint request_id
        {
            get => __pbn__request_id.GetValueOrDefault();
            set => __pbn__request_id = value;
        }
        public bool ShouldSerializerequest_id() => __pbn__request_id != null;
        public void Resetrequest_id() => __pbn__request_id = null;
        private uint? __pbn__request_id;

        [global::ProtoBuf.ProtoContract()]
        public partial class CKeyEscrow_Ticket : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public byte[] password
            {
                get => __pbn__password;
                set => __pbn__password = value;
            }
            public bool ShouldSerializepassword() => __pbn__password != null;
            public void Resetpassword() => __pbn__password = null;
            private byte[] __pbn__password;

            [global::ProtoBuf.ProtoMember(2)]
            public ulong identifier
            {
                get => __pbn__identifier.GetValueOrDefault();
                set => __pbn__identifier = value;
            }
            public bool ShouldSerializeidentifier() => __pbn__identifier != null;
            public void Resetidentifier() => __pbn__identifier = null;
            private ulong? __pbn__identifier;

            [global::ProtoBuf.ProtoMember(3)]
            public byte[] payload
            {
                get => __pbn__payload;
                set => __pbn__payload = value;
            }
            public bool ShouldSerializepayload() => __pbn__payload != null;
            public void Resetpayload() => __pbn__payload = null;
            private byte[] __pbn__payload;

            [global::ProtoBuf.ProtoMember(4)]
            public uint timestamp
            {
                get => __pbn__timestamp.GetValueOrDefault();
                set => __pbn__timestamp = value;
            }
            public bool ShouldSerializetimestamp() => __pbn__timestamp != null;
            public void Resettimestamp() => __pbn__timestamp = null;
            private uint? __pbn__timestamp;

            [global::ProtoBuf.ProtoMember(5)]
            [global::System.ComponentModel.DefaultValue(CMsgRemoteDeviceAuthorizationRequest.EKeyEscrowUsage.k_EKeyEscrowUsageStreamingDevice)]
            public CMsgRemoteDeviceAuthorizationRequest.EKeyEscrowUsage usage
            {
                get => __pbn__usage ?? CMsgRemoteDeviceAuthorizationRequest.EKeyEscrowUsage.k_EKeyEscrowUsageStreamingDevice;
                set => __pbn__usage = value;
            }
            public bool ShouldSerializeusage() => __pbn__usage != null;
            public void Resetusage() => __pbn__usage = null;
            private CMsgRemoteDeviceAuthorizationRequest.EKeyEscrowUsage? __pbn__usage;

            [global::ProtoBuf.ProtoMember(6)]
            [global::System.ComponentModel.DefaultValue("")]
            public string device_name
            {
                get => __pbn__device_name ?? "";
                set => __pbn__device_name = value;
            }
            public bool ShouldSerializedevice_name() => __pbn__device_name != null;
            public void Resetdevice_name() => __pbn__device_name = null;
            private string __pbn__device_name;

            [global::ProtoBuf.ProtoMember(7)]
            [global::System.ComponentModel.DefaultValue("")]
            public string device_model
            {
                get => __pbn__device_model ?? "";
                set => __pbn__device_model = value;
            }
            public bool ShouldSerializedevice_model() => __pbn__device_model != null;
            public void Resetdevice_model() => __pbn__device_model = null;
            private string __pbn__device_model;

            [global::ProtoBuf.ProtoMember(8)]
            [global::System.ComponentModel.DefaultValue("")]
            public string device_serial
            {
                get => __pbn__device_serial ?? "";
                set => __pbn__device_serial = value;
            }
            public bool ShouldSerializedevice_serial() => __pbn__device_serial != null;
            public void Resetdevice_serial() => __pbn__device_serial = null;
            private string __pbn__device_serial;

            [global::ProtoBuf.ProtoMember(9)]
            public uint device_provisioning_id
            {
                get => __pbn__device_provisioning_id.GetValueOrDefault();
                set => __pbn__device_provisioning_id = value;
            }
            public bool ShouldSerializedevice_provisioning_id() => __pbn__device_provisioning_id != null;
            public void Resetdevice_provisioning_id() => __pbn__device_provisioning_id = null;
            private uint? __pbn__device_provisioning_id;

        }

        [global::ProtoBuf.ProtoContract()]
        public enum EKeyEscrowUsage
        {
            k_EKeyEscrowUsageStreamingDevice = 0,
        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceAuthorizationCancelRequest : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceAuthorizationResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public ERemoteDeviceAuthorizationResult result { get; set; } = ERemoteDeviceAuthorizationResult.k_ERemoteDeviceAuthorizationSuccess;

        [global::ProtoBuf.ProtoMember(2, DataFormat = global::ProtoBuf.DataFormat.FixedSize)]
        public ulong steamid
        {
            get => __pbn__steamid.GetValueOrDefault();
            set => __pbn__steamid = value;
        }
        public bool ShouldSerializesteamid() => __pbn__steamid != null;
        public void Resetsteamid() => __pbn__steamid = null;
        private ulong? __pbn__steamid;

        [global::ProtoBuf.ProtoMember(3)]
        public byte[] auth_key
        {
            get => __pbn__auth_key;
            set => __pbn__auth_key = value;
        }
        public bool ShouldSerializeauth_key() => __pbn__auth_key != null;
        public void Resetauth_key() => __pbn__auth_key = null;
        private byte[] __pbn__auth_key;

        [global::ProtoBuf.ProtoMember(4)]
        public byte[] device_token
        {
            get => __pbn__device_token;
            set => __pbn__device_token = value;
        }
        public bool ShouldSerializedevice_token() => __pbn__device_token != null;
        public void Resetdevice_token() => __pbn__device_token = null;
        private byte[] __pbn__device_token;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceAuthorizationConfirmed : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public ERemoteDeviceAuthorizationResult result { get; set; } = ERemoteDeviceAuthorizationResult.k_ERemoteDeviceAuthorizationSuccess;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceStreamingRequest : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public uint request_id { get; set; }

        [global::ProtoBuf.ProtoMember(2)]
        public int maximum_resolution_x
        {
            get => __pbn__maximum_resolution_x.GetValueOrDefault();
            set => __pbn__maximum_resolution_x = value;
        }
        public bool ShouldSerializemaximum_resolution_x() => __pbn__maximum_resolution_x != null;
        public void Resetmaximum_resolution_x() => __pbn__maximum_resolution_x = null;
        private int? __pbn__maximum_resolution_x;

        [global::ProtoBuf.ProtoMember(3)]
        public int maximum_resolution_y
        {
            get => __pbn__maximum_resolution_y.GetValueOrDefault();
            set => __pbn__maximum_resolution_y = value;
        }
        public bool ShouldSerializemaximum_resolution_y() => __pbn__maximum_resolution_y != null;
        public void Resetmaximum_resolution_y() => __pbn__maximum_resolution_y = null;
        private int? __pbn__maximum_resolution_y;

        [global::ProtoBuf.ProtoMember(4)]
        [global::System.ComponentModel.DefaultValue(2)]
        public int audio_channel_count
        {
            get => __pbn__audio_channel_count ?? 2;
            set => __pbn__audio_channel_count = value;
        }
        public bool ShouldSerializeaudio_channel_count() => __pbn__audio_channel_count != null;
        public void Resetaudio_channel_count() => __pbn__audio_channel_count = null;
        private int? __pbn__audio_channel_count;

        [global::ProtoBuf.ProtoMember(5)]
        [global::System.ComponentModel.DefaultValue("")]
        public string device_version
        {
            get => __pbn__device_version ?? "";
            set => __pbn__device_version = value;
        }
        public bool ShouldSerializedevice_version() => __pbn__device_version != null;
        public void Resetdevice_version() => __pbn__device_version = null;
        private string __pbn__device_version;

        [global::ProtoBuf.ProtoMember(6)]
        public bool stream_desktop
        {
            get => __pbn__stream_desktop.GetValueOrDefault();
            set => __pbn__stream_desktop = value;
        }
        public bool ShouldSerializestream_desktop() => __pbn__stream_desktop != null;
        public void Resetstream_desktop() => __pbn__stream_desktop = null;
        private bool? __pbn__stream_desktop;

        [global::ProtoBuf.ProtoMember(7)]
        public byte[] device_token
        {
            get => __pbn__device_token;
            set => __pbn__device_token = value;
        }
        public bool ShouldSerializedevice_token() => __pbn__device_token != null;
        public void Resetdevice_token() => __pbn__device_token = null;
        private byte[] __pbn__device_token;

        [global::ProtoBuf.ProtoMember(8)]
        public byte[] pin
        {
            get => __pbn__pin;
            set => __pbn__pin = value;
        }
        public bool ShouldSerializepin() => __pbn__pin != null;
        public void Resetpin() => __pbn__pin = null;
        private byte[] __pbn__pin;

        [global::ProtoBuf.ProtoMember(9)]
        [global::System.ComponentModel.DefaultValue(true)]
        public bool enable_video_streaming
        {
            get => __pbn__enable_video_streaming ?? true;
            set => __pbn__enable_video_streaming = value;
        }
        public bool ShouldSerializeenable_video_streaming() => __pbn__enable_video_streaming != null;
        public void Resetenable_video_streaming() => __pbn__enable_video_streaming = null;
        private bool? __pbn__enable_video_streaming;

        [global::ProtoBuf.ProtoMember(10)]
        [global::System.ComponentModel.DefaultValue(true)]
        public bool enable_audio_streaming
        {
            get => __pbn__enable_audio_streaming ?? true;
            set => __pbn__enable_audio_streaming = value;
        }
        public bool ShouldSerializeenable_audio_streaming() => __pbn__enable_audio_streaming != null;
        public void Resetenable_audio_streaming() => __pbn__enable_audio_streaming = null;
        private bool? __pbn__enable_audio_streaming;

        [global::ProtoBuf.ProtoMember(11)]
        [global::System.ComponentModel.DefaultValue(true)]
        public bool enable_input_streaming
        {
            get => __pbn__enable_input_streaming ?? true;
            set => __pbn__enable_input_streaming = value;
        }
        public bool ShouldSerializeenable_input_streaming() => __pbn__enable_input_streaming != null;
        public void Resetenable_input_streaming() => __pbn__enable_input_streaming = null;
        private bool? __pbn__enable_input_streaming;

        [global::ProtoBuf.ProtoMember(12)]
        public bool network_test
        {
            get => __pbn__network_test.GetValueOrDefault();
            set => __pbn__network_test = value;
        }
        public bool ShouldSerializenetwork_test() => __pbn__network_test != null;
        public void Resetnetwork_test() => __pbn__network_test = null;
        private bool? __pbn__network_test;

        [global::ProtoBuf.ProtoMember(13)]
        public ulong client_id
        {
            get => __pbn__client_id.GetValueOrDefault();
            set => __pbn__client_id = value;
        }
        public bool ShouldSerializeclient_id() => __pbn__client_id != null;
        public void Resetclient_id() => __pbn__client_id = null;
        private ulong? __pbn__client_id;

        [global::ProtoBuf.ProtoMember(14)]
        public global::System.Collections.Generic.List<EStreamTransport> supported_transport { get; } = new global::System.Collections.Generic.List<EStreamTransport>();

        [global::ProtoBuf.ProtoMember(15)]
        public bool restricted
        {
            get => __pbn__restricted.GetValueOrDefault();
            set => __pbn__restricted = value;
        }
        public bool ShouldSerializerestricted() => __pbn__restricted != null;
        public void Resetrestricted() => __pbn__restricted = null;
        private bool? __pbn__restricted;

        [global::ProtoBuf.ProtoMember(16)]
        [global::System.ComponentModel.DefaultValue(EStreamDeviceFormFactor.k_EStreamDeviceFormFactorUnknown)]
        public EStreamDeviceFormFactor form_factor
        {
            get => __pbn__form_factor ?? EStreamDeviceFormFactor.k_EStreamDeviceFormFactorUnknown;
            set => __pbn__form_factor = value;
        }
        public bool ShouldSerializeform_factor() => __pbn__form_factor != null;
        public void Resetform_factor() => __pbn__form_factor = null;
        private EStreamDeviceFormFactor? __pbn__form_factor;

        [global::ProtoBuf.ProtoMember(17)]
        public int gamepad_count
        {
            get => __pbn__gamepad_count.GetValueOrDefault();
            set => __pbn__gamepad_count = value;
        }
        public bool ShouldSerializegamepad_count() => __pbn__gamepad_count != null;
        public void Resetgamepad_count() => __pbn__gamepad_count = null;
        private int? __pbn__gamepad_count;

        [global::ProtoBuf.ProtoMember(18)]
        public global::System.Collections.Generic.List<ReservedGamepad> gamepads { get; } = new global::System.Collections.Generic.List<ReservedGamepad>();

        [global::ProtoBuf.ProtoMember(19)]
        public ulong gameid
        {
            get => __pbn__gameid.GetValueOrDefault();
            set => __pbn__gameid = value;
        }
        public bool ShouldSerializegameid() => __pbn__gameid != null;
        public void Resetgameid() => __pbn__gameid = null;
        private ulong? __pbn__gameid;

        [global::ProtoBuf.ProtoMember(20)]
        [global::System.ComponentModel.DefaultValue(EStreamInterface.k_EStreamInterfaceDefault)]
        public EStreamInterface stream_interface
        {
            get => __pbn__stream_interface ?? EStreamInterface.k_EStreamInterfaceDefault;
            set => __pbn__stream_interface = value;
        }
        public bool ShouldSerializestream_interface() => __pbn__stream_interface != null;
        public void Resetstream_interface() => __pbn__stream_interface = null;
        private EStreamInterface? __pbn__stream_interface;

        [global::ProtoBuf.ProtoContract()]
        public partial class ReservedGamepad : global::ProtoBuf.IExtensible
        {
            private global::ProtoBuf.IExtension __pbn__extensionData;
            global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
                => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

            [global::ProtoBuf.ProtoMember(1)]
            public uint controller_type
            {
                get => __pbn__controller_type.GetValueOrDefault();
                set => __pbn__controller_type = value;
            }
            public bool ShouldSerializecontroller_type() => __pbn__controller_type != null;
            public void Resetcontroller_type() => __pbn__controller_type = null;
            private uint? __pbn__controller_type;

            [global::ProtoBuf.ProtoMember(2)]
            public uint controller_subtype
            {
                get => __pbn__controller_subtype.GetValueOrDefault();
                set => __pbn__controller_subtype = value;
            }
            public bool ShouldSerializecontroller_subtype() => __pbn__controller_subtype != null;
            public void Resetcontroller_subtype() => __pbn__controller_subtype = null;
            private uint? __pbn__controller_subtype;

        }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceStreamingCancelRequest : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public uint request_id { get; set; }

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceStreamingProgress : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public uint request_id { get; set; }

        [global::ProtoBuf.ProtoMember(2)]
        public float progress
        {
            get => __pbn__progress.GetValueOrDefault();
            set => __pbn__progress = value;
        }
        public bool ShouldSerializeprogress() => __pbn__progress != null;
        public void Resetprogress() => __pbn__progress = null;
        private float? __pbn__progress;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceStreamingResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public uint request_id { get; set; }

        [global::ProtoBuf.ProtoMember(2, IsRequired = true)]
        public ERemoteDeviceStreamingResult result { get; set; } = ERemoteDeviceStreamingResult.k_ERemoteDeviceStreamingSuccess;

        [global::ProtoBuf.ProtoMember(3)]
        public uint port
        {
            get => __pbn__port.GetValueOrDefault();
            set => __pbn__port = value;
        }
        public bool ShouldSerializeport() => __pbn__port != null;
        public void Resetport() => __pbn__port = null;
        private uint? __pbn__port;

        [global::ProtoBuf.ProtoMember(4)]
        public byte[] encrypted_session_key
        {
            get => __pbn__encrypted_session_key;
            set => __pbn__encrypted_session_key = value;
        }
        public bool ShouldSerializeencrypted_session_key() => __pbn__encrypted_session_key != null;
        public void Resetencrypted_session_key() => __pbn__encrypted_session_key = null;
        private byte[] __pbn__encrypted_session_key;

        [global::ProtoBuf.ProtoMember(6)]
        [global::System.ComponentModel.DefaultValue(EStreamTransport.k_EStreamTransportUDP)]
        public EStreamTransport transport
        {
            get => __pbn__transport ?? EStreamTransport.k_EStreamTransportUDP;
            set => __pbn__transport = value;
        }
        public bool ShouldSerializetransport() => __pbn__transport != null;
        public void Resettransport() => __pbn__transport = null;
        private EStreamTransport? __pbn__transport;

        [global::ProtoBuf.ProtoMember(7)]
        [global::System.ComponentModel.DefaultValue("")]
        public string relay_server
        {
            get => __pbn__relay_server ?? "";
            set => __pbn__relay_server = value;
        }
        public bool ShouldSerializerelay_server() => __pbn__relay_server != null;
        public void Resetrelay_server() => __pbn__relay_server = null;
        private string __pbn__relay_server;

        [global::ProtoBuf.ProtoMember(8)]
        [global::System.ComponentModel.DefaultValue("")]
        public string cert
        {
            get => __pbn__cert ?? "";
            set => __pbn__cert = value;
        }
        public bool ShouldSerializecert() => __pbn__cert != null;
        public void Resetcert() => __pbn__cert = null;
        private string __pbn__cert;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceProofRequest : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public byte[] challenge { get; set; }

        [global::ProtoBuf.ProtoMember(2)]
        public uint request_id
        {
            get => __pbn__request_id.GetValueOrDefault();
            set => __pbn__request_id = value;
        }
        public bool ShouldSerializerequest_id() => __pbn__request_id != null;
        public void Resetrequest_id() => __pbn__request_id = null;
        private uint? __pbn__request_id;

        [global::ProtoBuf.ProtoMember(3)]
        public bool update_secret
        {
            get => __pbn__update_secret.GetValueOrDefault();
            set => __pbn__update_secret = value;
        }
        public bool ShouldSerializeupdate_secret() => __pbn__update_secret != null;
        public void Resetupdate_secret() => __pbn__update_secret = null;
        private bool? __pbn__update_secret;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceProofResponse : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1, IsRequired = true)]
        public byte[] response { get; set; }

        [global::ProtoBuf.ProtoMember(2)]
        public uint request_id
        {
            get => __pbn__request_id.GetValueOrDefault();
            set => __pbn__request_id = value;
        }
        public bool ShouldSerializerequest_id() => __pbn__request_id != null;
        public void Resetrequest_id() => __pbn__request_id = null;
        private uint? __pbn__request_id;

        [global::ProtoBuf.ProtoMember(3)]
        public bool updated_secret
        {
            get => __pbn__updated_secret.GetValueOrDefault();
            set => __pbn__updated_secret = value;
        }
        public bool ShouldSerializeupdated_secret() => __pbn__updated_secret != null;
        public void Resetupdated_secret() => __pbn__updated_secret = null;
        private bool? __pbn__updated_secret;

    }

    [global::ProtoBuf.ProtoContract()]
    public partial class CMsgRemoteDeviceStreamTransportSignal : global::ProtoBuf.IExtensible
    {
        private global::ProtoBuf.IExtension __pbn__extensionData;
        global::ProtoBuf.IExtension global::ProtoBuf.IExtensible.GetExtensionObject(bool createIfMissing)
            => global::ProtoBuf.Extensible.GetExtensionObject(ref __pbn__extensionData, createIfMissing);

        [global::ProtoBuf.ProtoMember(1)]
        public byte[] token
        {
            get => __pbn__token;
            set => __pbn__token = value;
        }
        public bool ShouldSerializetoken() => __pbn__token != null;
        public void Resettoken() => __pbn__token = null;
        private byte[] __pbn__token;

        [global::ProtoBuf.ProtoMember(2)]
        public byte[] payload
        {
            get => __pbn__payload;
            set => __pbn__payload = value;
        }
        public bool ShouldSerializepayload() => __pbn__payload != null;
        public void Resetpayload() => __pbn__payload = null;
        private byte[] __pbn__payload;

    }

    [global::ProtoBuf.ProtoContract()]
    public enum ERemoteClientBroadcastMsg
    {
        k_ERemoteClientBroadcastMsgDiscovery = 0,
        k_ERemoteClientBroadcastMsgStatus = 1,
        k_ERemoteClientBroadcastMsgOffline = 2,
        k_ERemoteDeviceAuthorizationRequest = 3,
        k_ERemoteDeviceAuthorizationResponse = 4,
        k_ERemoteDeviceStreamingRequest = 5,
        k_ERemoteDeviceStreamingResponse = 6,
        k_ERemoteDeviceProofRequest = 7,
        k_ERemoteDeviceProofResponse = 8,
        k_ERemoteDeviceAuthorizationCancelRequest = 9,
        k_ERemoteDeviceStreamingCancelRequest = 10,
        k_ERemoteClientBroadcastMsgClientIDDeconflict = 11,
        k_ERemoteDeviceStreamTransportSignal = 12,
        k_ERemoteDeviceStreamingProgress = 13,
        k_ERemoteDeviceAuthorizationConfirmed = 14,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum ERemoteClientService
    {
        k_ERemoteClientServiceNone = 0,
        k_ERemoteClientServiceRemoteControl = 1,
        k_ERemoteClientServiceGameStreaming = 2,
        k_ERemoteClientServiceSiteLicense = 4,
        k_ERemoteClientServiceContentCache = 8,
        k_ERemoteClientServiceContentServer = 16,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EVRLinkCaps
    {
        k_EVRLinkCapsUnknown = 0,
        k_EVRLinkCapsAvailable = 1,
        k_EVRLinkCapsUnimplemented = 2,
        k_EVRLinkCapsMissingHardwareEncoding = 3,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum ERemoteDeviceAuthorizationResult
    {
        k_ERemoteDeviceAuthorizationSuccess = 0,
        k_ERemoteDeviceAuthorizationDenied = 1,
        k_ERemoteDeviceAuthorizationNotLoggedIn = 2,
        k_ERemoteDeviceAuthorizationOffline = 3,
        k_ERemoteDeviceAuthorizationBusy = 4,
        k_ERemoteDeviceAuthorizationInProgress = 5,
        k_ERemoteDeviceAuthorizationTimedOut = 6,
        k_ERemoteDeviceAuthorizationFailed = 7,
        k_ERemoteDeviceAuthorizationCanceled = 8,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EStreamDeviceFormFactor
    {
        k_EStreamDeviceFormFactorUnknown = 0,
        k_EStreamDeviceFormFactorPhone = 1,
        k_EStreamDeviceFormFactorTablet = 2,
        k_EStreamDeviceFormFactorComputer = 3,
        k_EStreamDeviceFormFactorTV = 4,
        k_EStreamDeviceFormFactorVRHeadset = 5,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EStreamTransport
    {
        k_EStreamTransportNone = 0,
        k_EStreamTransportUDP = 1,
        k_EStreamTransportUDPRelay = 2,
        k_EStreamTransportWebRTC_OBSOLETE = 3,
        k_EStreamTransportSDR = 4,
        k_EStreamTransportUDP_SNS = 5,
        k_EStreamTransportUDPRelay_SNS = 6,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum EStreamInterface
    {
        k_EStreamInterfaceDefault = 0,
        k_EStreamInterfaceRecentGames = 1,
        k_EStreamInterfaceBigPicture = 2,
        k_EStreamInterfaceDesktop = 3,
        k_EStreamInterfaceSteamVR = 4,
    }

    [global::ProtoBuf.ProtoContract()]
    public enum ERemoteDeviceStreamingResult
    {
        k_ERemoteDeviceStreamingSuccess = 0,
        k_ERemoteDeviceStreamingUnauthorized = 1,
        k_ERemoteDeviceStreamingScreenLocked = 2,
        k_ERemoteDeviceStreamingFailed = 3,
        k_ERemoteDeviceStreamingBusy = 4,
        k_ERemoteDeviceStreamingInProgress = 5,
        k_ERemoteDeviceStreamingCanceled = 6,
        k_ERemoteDeviceStreamingDriversNotInstalled = 7,
        k_ERemoteDeviceStreamingDisabled = 8,
        k_ERemoteDeviceStreamingBroadcastingActive = 9,
        k_ERemoteDeviceStreamingVRActive = 10,
        k_ERemoteDeviceStreamingPINRequired = 11,
        k_ERemoteDeviceStreamingTransportUnavailable = 12,
        k_ERemoteDeviceStreamingInvisible = 13,
        k_ERemoteDeviceStreamingGameLaunchFailed = 14,
        k_ERemoteDeviceStreamingSteamVRNotInstalled = 15,
    }

}

#pragma warning restore CS0612, CS0618, CS1591, CS3021, IDE0079, IDE1006, RCS1036, RCS1057, RCS1085, RCS1192
#endregion
