// Code generated by protoc-gen-go. DO NOT EDIT.
// source: shared_ban_information_settings/update.proto

package shared_ban_information_settings

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "code.justin.tv/eventbus/schema/pkg/eventbus/owner"

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

// ChannelTypePermissionSettings are different types of channels that a user may limit sharing requests to/from.
type ChannelTypePermissionSettings int32

const (
	ChannelTypePermissionSettings_CHANNEL_TYPE_PERMISSION_SETTINGS_INVALID ChannelTypePermissionSettings = 0
	// the channel allows requests to/from all channels, this supercedes the other values.
	ChannelTypePermissionSettings_CHANNEL_TYPE_PERMISSION_SETTINGS_ALL_CHANNELS ChannelTypePermissionSettings = 1
	// the channel allows requests to/from partners.
	ChannelTypePermissionSettings_CHANNEL_TYPE_PERMISSION_SETTINGS_PARTNERS ChannelTypePermissionSettings = 2
	// the channel allows requests to/from affiliates.
	ChannelTypePermissionSettings_CHANNEL_TYPE_PERMISSION_SETTINGS_AFFILIATES ChannelTypePermissionSettings = 3
	// the channel allows requests to/from friends.
	ChannelTypePermissionSettings_CHANNEL_TYPE_PERMISSION_SETTINGS_FRIENDS ChannelTypePermissionSettings = 4
)

var ChannelTypePermissionSettings_name = map[int32]string{
	0: "CHANNEL_TYPE_PERMISSION_SETTINGS_INVALID",
	1: "CHANNEL_TYPE_PERMISSION_SETTINGS_ALL_CHANNELS",
	2: "CHANNEL_TYPE_PERMISSION_SETTINGS_PARTNERS",
	3: "CHANNEL_TYPE_PERMISSION_SETTINGS_AFFILIATES",
	4: "CHANNEL_TYPE_PERMISSION_SETTINGS_FRIENDS",
}
var ChannelTypePermissionSettings_value = map[string]int32{
	"CHANNEL_TYPE_PERMISSION_SETTINGS_INVALID":      0,
	"CHANNEL_TYPE_PERMISSION_SETTINGS_ALL_CHANNELS": 1,
	"CHANNEL_TYPE_PERMISSION_SETTINGS_PARTNERS":     2,
	"CHANNEL_TYPE_PERMISSION_SETTINGS_AFFILIATES":   3,
	"CHANNEL_TYPE_PERMISSION_SETTINGS_FRIENDS":      4,
}

func (x ChannelTypePermissionSettings) String() string {
	return proto.EnumName(ChannelTypePermissionSettings_name, int32(x))
}
func (ChannelTypePermissionSettings) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_update_d1af0799dc1e5c9c, []int{0}
}

// SharedBanInformationSettingsUpdate occurs when a channel owner changes their settings related to sending/receiving shared ban information requests.
type SharedBanInformationSettingsUpdate struct {
	// user_id refers to the channel owner that has updated a channel's shared bans information settings
	UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	// feature_enabled refers to whether the feature has been enabled (false when feature has been disabled).
	FeatureEnabled bool `protobuf:"varint,2,opt,name=feature_enabled,json=featureEnabled,proto3" json:"feature_enabled,omitempty"`
	// channel_type_permissions refers to what kind of channels this channel can receive/send requests from/to, only present when feature_enabled is true.
	ChannelTypePermissions *ChannelTypePermissionSettingsArrayChange `protobuf:"bytes,3,opt,name=channel_type_permissions,json=channelTypePermissions,proto3" json:"channel_type_permissions,omitempty"`
	XXX_NoUnkeyedLiteral   struct{}                                  `json:"-"`
	XXX_unrecognized       []byte                                    `json:"-"`
	XXX_sizecache          int32                                     `json:"-"`
}

func (m *SharedBanInformationSettingsUpdate) Reset()         { *m = SharedBanInformationSettingsUpdate{} }
func (m *SharedBanInformationSettingsUpdate) String() string { return proto.CompactTextString(m) }
func (*SharedBanInformationSettingsUpdate) ProtoMessage()    {}
func (*SharedBanInformationSettingsUpdate) Descriptor() ([]byte, []int) {
	return fileDescriptor_update_d1af0799dc1e5c9c, []int{0}
}
func (m *SharedBanInformationSettingsUpdate) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SharedBanInformationSettingsUpdate.Unmarshal(m, b)
}
func (m *SharedBanInformationSettingsUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SharedBanInformationSettingsUpdate.Marshal(b, m, deterministic)
}
func (dst *SharedBanInformationSettingsUpdate) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SharedBanInformationSettingsUpdate.Merge(dst, src)
}
func (m *SharedBanInformationSettingsUpdate) XXX_Size() int {
	return xxx_messageInfo_SharedBanInformationSettingsUpdate.Size(m)
}
func (m *SharedBanInformationSettingsUpdate) XXX_DiscardUnknown() {
	xxx_messageInfo_SharedBanInformationSettingsUpdate.DiscardUnknown(m)
}

var xxx_messageInfo_SharedBanInformationSettingsUpdate proto.InternalMessageInfo

func (m *SharedBanInformationSettingsUpdate) GetUserId() string {
	if m != nil {
		return m.UserId
	}
	return ""
}

func (m *SharedBanInformationSettingsUpdate) GetFeatureEnabled() bool {
	if m != nil {
		return m.FeatureEnabled
	}
	return false
}

func (m *SharedBanInformationSettingsUpdate) GetChannelTypePermissions() *ChannelTypePermissionSettingsArrayChange {
	if m != nil {
		return m.ChannelTypePermissions
	}
	return nil
}

// Denotes a ChannelTypePermissionSettings array that can change and allows for new values to be set.
type ChannelTypePermissionSettingsArrayChange struct {
	Updated              bool                            `protobuf:"varint,1,opt,name=updated,proto3" json:"updated,omitempty"`
	Value                []ChannelTypePermissionSettings `protobuf:"varint,2,rep,packed,name=value,proto3,enum=shared_ban_information_settings.ChannelTypePermissionSettings" json:"value,omitempty"`
	HasOldValue          bool                            `protobuf:"varint,3,opt,name=has_old_value,json=hasOldValue,proto3" json:"has_old_value,omitempty"`
	OldValue             []ChannelTypePermissionSettings `protobuf:"varint,4,rep,packed,name=old_value,json=oldValue,proto3,enum=shared_ban_information_settings.ChannelTypePermissionSettings" json:"old_value,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                        `json:"-"`
	XXX_unrecognized     []byte                          `json:"-"`
	XXX_sizecache        int32                           `json:"-"`
}

func (m *ChannelTypePermissionSettingsArrayChange) Reset() {
	*m = ChannelTypePermissionSettingsArrayChange{}
}
func (m *ChannelTypePermissionSettingsArrayChange) String() string { return proto.CompactTextString(m) }
func (*ChannelTypePermissionSettingsArrayChange) ProtoMessage()    {}
func (*ChannelTypePermissionSettingsArrayChange) Descriptor() ([]byte, []int) {
	return fileDescriptor_update_d1af0799dc1e5c9c, []int{1}
}
func (m *ChannelTypePermissionSettingsArrayChange) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ChannelTypePermissionSettingsArrayChange.Unmarshal(m, b)
}
func (m *ChannelTypePermissionSettingsArrayChange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ChannelTypePermissionSettingsArrayChange.Marshal(b, m, deterministic)
}
func (dst *ChannelTypePermissionSettingsArrayChange) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ChannelTypePermissionSettingsArrayChange.Merge(dst, src)
}
func (m *ChannelTypePermissionSettingsArrayChange) XXX_Size() int {
	return xxx_messageInfo_ChannelTypePermissionSettingsArrayChange.Size(m)
}
func (m *ChannelTypePermissionSettingsArrayChange) XXX_DiscardUnknown() {
	xxx_messageInfo_ChannelTypePermissionSettingsArrayChange.DiscardUnknown(m)
}

var xxx_messageInfo_ChannelTypePermissionSettingsArrayChange proto.InternalMessageInfo

func (m *ChannelTypePermissionSettingsArrayChange) GetUpdated() bool {
	if m != nil {
		return m.Updated
	}
	return false
}

func (m *ChannelTypePermissionSettingsArrayChange) GetValue() []ChannelTypePermissionSettings {
	if m != nil {
		return m.Value
	}
	return nil
}

func (m *ChannelTypePermissionSettingsArrayChange) GetHasOldValue() bool {
	if m != nil {
		return m.HasOldValue
	}
	return false
}

func (m *ChannelTypePermissionSettingsArrayChange) GetOldValue() []ChannelTypePermissionSettings {
	if m != nil {
		return m.OldValue
	}
	return nil
}

func init() {
	proto.RegisterType((*SharedBanInformationSettingsUpdate)(nil), "shared_ban_information_settings.SharedBanInformationSettingsUpdate")
	proto.RegisterType((*ChannelTypePermissionSettingsArrayChange)(nil), "shared_ban_information_settings.ChannelTypePermissionSettingsArrayChange")
	proto.RegisterEnum("shared_ban_information_settings.ChannelTypePermissionSettings", ChannelTypePermissionSettings_name, ChannelTypePermissionSettings_value)
}

func init() {
	proto.RegisterFile("shared_ban_information_settings/update.proto", fileDescriptor_update_d1af0799dc1e5c9c)
}

var fileDescriptor_update_d1af0799dc1e5c9c = []byte{
	// 441 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x93, 0x41, 0x6f, 0xd3, 0x30,
	0x14, 0xc7, 0x49, 0x3a, 0xb6, 0xce, 0x15, 0x5b, 0x64, 0x21, 0x88, 0x90, 0x10, 0xa5, 0x17, 0x02,
	0xac, 0xad, 0x18, 0x37, 0x0e, 0x48, 0xd9, 0x96, 0x82, 0xa5, 0x90, 0x55, 0x76, 0x98, 0x04, 0x1c,
	0x2c, 0x77, 0x79, 0x5d, 0x23, 0xa5, 0x76, 0x64, 0x3b, 0x43, 0x3d, 0x73, 0xe7, 0x03, 0xc0, 0xe7,
	0xe0, 0xe3, 0x21, 0xa1, 0x25, 0x1d, 0xbb, 0x20, 0x52, 0x09, 0x8e, 0xef, 0xf9, 0xf7, 0xff, 0xff,
	0xfd, 0x9e, 0xf4, 0xd0, 0x81, 0x59, 0x08, 0x0d, 0x19, 0x9f, 0x09, 0xc9, 0x73, 0x39, 0x57, 0x7a,
	0x29, 0x6c, 0xae, 0x24, 0x37, 0x60, 0x6d, 0x2e, 0x2f, 0xcc, 0xb8, 0x2a, 0x33, 0x61, 0x61, 0x54,
	0x6a, 0x65, 0x15, 0x7e, 0xd4, 0x42, 0x3f, 0xb8, 0x0b, 0x97, 0x20, 0xed, 0xac, 0x32, 0x63, 0xf5,
	0x59, 0x82, 0x6e, 0x64, 0x83, 0x9f, 0x0e, 0x1a, 0xb0, 0x5a, 0x79, 0x24, 0x24, 0xb9, 0xd1, 0xb1,
	0xb5, 0xec, 0x7d, 0x9d, 0x81, 0xef, 0xa3, 0x9d, 0xca, 0x80, 0xe6, 0x79, 0xe6, 0x3b, 0x7d, 0x27,
	0xd8, 0xa5, 0xdb, 0x57, 0x25, 0xc9, 0xf0, 0x13, 0xb4, 0x3f, 0x07, 0x61, 0x2b, 0x0d, 0x1c, 0xa4,
	0x98, 0x15, 0x90, 0xf9, 0x6e, 0xdf, 0x09, 0xba, 0x74, 0x6f, 0xdd, 0x8e, 0x9a, 0x2e, 0xfe, 0xe2,
	0x20, 0xff, 0x7c, 0x21, 0xa4, 0x84, 0x82, 0xdb, 0x55, 0x09, 0xbc, 0x04, 0xbd, 0xcc, 0x8d, 0xc9,
	0x95, 0x34, 0x7e, 0xa7, 0xef, 0x04, 0xbd, 0x43, 0x32, 0x6a, 0x99, 0x61, 0x74, 0xdc, 0x18, 0xa4,
	0xab, 0x12, 0xa6, 0xbf, 0xe5, 0xd7, 0x5f, 0x0d, 0xb5, 0x16, 0xab, 0x2b, 0xe2, 0x02, 0xe8, 0xbd,
	0xf3, 0x3f, 0x91, 0xe6, 0xd5, 0xfe, 0xb7, 0x1f, 0x7e, 0xcf, 0x82, 0x58, 0x0e, 0x8d, 0x98, 0x83,
	0x5d, 0x0d, 0xbe, 0xbb, 0x28, 0xd8, 0xd4, 0x15, 0xfb, 0x68, 0xa7, 0xd9, 0x79, 0xb3, 0x85, 0x2e,
	0xbd, 0x2e, 0x71, 0x8a, 0x6e, 0x5f, 0x8a, 0xa2, 0x02, 0xdf, 0xed, 0x77, 0x82, 0xbd, 0xc3, 0xd7,
	0xff, 0x36, 0x09, 0x6d, 0xcc, 0xf0, 0x00, 0xdd, 0x59, 0x08, 0xc3, 0x55, 0x91, 0xf1, 0xc6, 0xbd,
	0x53, 0xa7, 0xf6, 0x16, 0xc2, 0x9c, 0x16, 0xd9, 0x59, 0xcd, 0x7c, 0x42, 0xbb, 0x37, 0xef, 0x5b,
	0xff, 0x25, 0xbd, 0xab, 0xd6, 0xe6, 0xcf, 0xbe, 0xba, 0xe8, 0xe1, 0x5f, 0x59, 0x7c, 0x80, 0x82,
	0xe3, 0xb7, 0x61, 0x92, 0x44, 0x31, 0x4f, 0x3f, 0x4c, 0x23, 0x3e, 0x8d, 0xe8, 0x3b, 0xc2, 0x18,
	0x39, 0x4d, 0x38, 0x8b, 0xd2, 0x94, 0x24, 0x6f, 0x18, 0x27, 0xc9, 0x59, 0x18, 0x93, 0x13, 0xef,
	0x16, 0x7e, 0x81, 0x86, 0xad, 0x74, 0x18, 0xc7, 0x7c, 0x0d, 0x31, 0xcf, 0xc1, 0x43, 0xf4, 0xb4,
	0x55, 0x32, 0x0d, 0x69, 0x9a, 0x44, 0x94, 0x79, 0x2e, 0x1e, 0xa3, 0xe7, 0xed, 0x09, 0x93, 0x09,
	0x89, 0x49, 0x98, 0x46, 0xcc, 0xeb, 0x6c, 0x34, 0xc0, 0x84, 0x92, 0x28, 0x39, 0x61, 0xde, 0xd6,
	0xd1, 0xe3, 0x8f, 0x6d, 0x77, 0x36, 0xdb, 0xae, 0x0f, 0xeb, 0xe5, 0xaf, 0x00, 0x00, 0x00, 0xff,
	0xff, 0x68, 0x0a, 0xf7, 0xa8, 0xbf, 0x03, 0x00, 0x00,
}
