// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.29.1 // protoc v3.20.3 // source: community_update.proto package protobuf import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type CommunityEvent_EventType int32 const ( CommunityEvent_UNKNOWN CommunityEvent_EventType = 0 CommunityEvent_COMMUNITY_EDIT CommunityEvent_EventType = 1 CommunityEvent_COMMUNITY_MEMBER_TOKEN_PERMISSION_CHANGE CommunityEvent_EventType = 2 CommunityEvent_COMMUNITY_MEMBER_TOKEN_PERMISSION_DELETE CommunityEvent_EventType = 3 CommunityEvent_COMMUNITY_CATEGORY_CREATE CommunityEvent_EventType = 4 CommunityEvent_COMMUNITY_CATEGORY_DELETE CommunityEvent_EventType = 5 CommunityEvent_COMMUNITY_CATEGORY_EDIT CommunityEvent_EventType = 6 CommunityEvent_COMMUNITY_CHANNEL_CREATE CommunityEvent_EventType = 7 CommunityEvent_COMMUNITY_CHANNEL_DELETE CommunityEvent_EventType = 8 CommunityEvent_COMMUNITY_CHANNEL_EDIT CommunityEvent_EventType = 9 CommunityEvent_COMMUNITY_CATEGORY_REORDER CommunityEvent_EventType = 10 CommunityEvent_COMMUNITY_CHANNEL_REORDER CommunityEvent_EventType = 11 CommunityEvent_COMMUNITY_REQUEST_TO_JOIN_ACCEPT CommunityEvent_EventType = 12 CommunityEvent_COMMUNITY_REQUEST_TO_JOIN_REJECT CommunityEvent_EventType = 13 CommunityEvent_COMMUNITY_MEMBER_KICK CommunityEvent_EventType = 14 CommunityEvent_COMMUNITY_MEMBER_BAN CommunityEvent_EventType = 15 CommunityEvent_COMMUNITY_MEMBER_UNBAN CommunityEvent_EventType = 16 CommunityEvent_COMMUNITY_TOKEN_ADD CommunityEvent_EventType = 17 ) // Enum value maps for CommunityEvent_EventType. var ( CommunityEvent_EventType_name = map[int32]string{ 0: "UNKNOWN", 1: "COMMUNITY_EDIT", 2: "COMMUNITY_MEMBER_TOKEN_PERMISSION_CHANGE", 3: "COMMUNITY_MEMBER_TOKEN_PERMISSION_DELETE", 4: "COMMUNITY_CATEGORY_CREATE", 5: "COMMUNITY_CATEGORY_DELETE", 6: "COMMUNITY_CATEGORY_EDIT", 7: "COMMUNITY_CHANNEL_CREATE", 8: "COMMUNITY_CHANNEL_DELETE", 9: "COMMUNITY_CHANNEL_EDIT", 10: "COMMUNITY_CATEGORY_REORDER", 11: "COMMUNITY_CHANNEL_REORDER", 12: "COMMUNITY_REQUEST_TO_JOIN_ACCEPT", 13: "COMMUNITY_REQUEST_TO_JOIN_REJECT", 14: "COMMUNITY_MEMBER_KICK", 15: "COMMUNITY_MEMBER_BAN", 16: "COMMUNITY_MEMBER_UNBAN", 17: "COMMUNITY_TOKEN_ADD", } CommunityEvent_EventType_value = map[string]int32{ "UNKNOWN": 0, "COMMUNITY_EDIT": 1, "COMMUNITY_MEMBER_TOKEN_PERMISSION_CHANGE": 2, "COMMUNITY_MEMBER_TOKEN_PERMISSION_DELETE": 3, "COMMUNITY_CATEGORY_CREATE": 4, "COMMUNITY_CATEGORY_DELETE": 5, "COMMUNITY_CATEGORY_EDIT": 6, "COMMUNITY_CHANNEL_CREATE": 7, "COMMUNITY_CHANNEL_DELETE": 8, "COMMUNITY_CHANNEL_EDIT": 9, "COMMUNITY_CATEGORY_REORDER": 10, "COMMUNITY_CHANNEL_REORDER": 11, "COMMUNITY_REQUEST_TO_JOIN_ACCEPT": 12, "COMMUNITY_REQUEST_TO_JOIN_REJECT": 13, "COMMUNITY_MEMBER_KICK": 14, "COMMUNITY_MEMBER_BAN": 15, "COMMUNITY_MEMBER_UNBAN": 16, "COMMUNITY_TOKEN_ADD": 17, } ) func (x CommunityEvent_EventType) Enum() *CommunityEvent_EventType { p := new(CommunityEvent_EventType) *p = x return p } func (x CommunityEvent_EventType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (CommunityEvent_EventType) Descriptor() protoreflect.EnumDescriptor { return file_community_update_proto_enumTypes[0].Descriptor() } func (CommunityEvent_EventType) Type() protoreflect.EnumType { return &file_community_update_proto_enumTypes[0] } func (x CommunityEvent_EventType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use CommunityEvent_EventType.Descriptor instead. func (CommunityEvent_EventType) EnumDescriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{0, 0} } type CommunityEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields CommunityEventClock uint64 `protobuf:"varint,1,opt,name=community_event_clock,json=communityEventClock,proto3" json:"community_event_clock,omitempty"` Type CommunityEvent_EventType `protobuf:"varint,2,opt,name=type,proto3,enum=protobuf.CommunityEvent_EventType" json:"type,omitempty"` CommunityConfig *CommunityConfig `protobuf:"bytes,3,opt,name=community_config,json=communityConfig,proto3" json:"community_config,omitempty"` TokenPermission *CommunityTokenPermission `protobuf:"bytes,4,opt,name=token_permission,json=tokenPermission,proto3" json:"token_permission,omitempty"` CategoryData *CategoryData `protobuf:"bytes,5,opt,name=category_data,json=categoryData,proto3" json:"category_data,omitempty"` ChannelData *ChannelData `protobuf:"bytes,6,opt,name=channel_data,json=channelData,proto3" json:"channel_data,omitempty"` MemberToAction string `protobuf:"bytes,7,opt,name=member_to_action,json=memberToAction,proto3" json:"member_to_action,omitempty"` MembersAdded map[string]*CommunityMember `protobuf:"bytes,8,rep,name=membersAdded,proto3" json:"membersAdded,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` RejectedRequestsToJoin map[string]*CommunityRequestToJoin `protobuf:"bytes,9,rep,name=rejectedRequestsToJoin,proto3" json:"rejectedRequestsToJoin,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` AcceptedRequestsToJoin map[string]*CommunityRequestToJoin `protobuf:"bytes,10,rep,name=acceptedRequestsToJoin,proto3" json:"acceptedRequestsToJoin,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` TokenMetadata *CommunityTokenMetadata `protobuf:"bytes,11,opt,name=token_metadata,json=tokenMetadata,proto3" json:"token_metadata,omitempty"` } func (x *CommunityEvent) Reset() { *x = CommunityEvent{} if protoimpl.UnsafeEnabled { mi := &file_community_update_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CommunityEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*CommunityEvent) ProtoMessage() {} func (x *CommunityEvent) ProtoReflect() protoreflect.Message { mi := &file_community_update_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CommunityEvent.ProtoReflect.Descriptor instead. func (*CommunityEvent) Descriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{0} } func (x *CommunityEvent) GetCommunityEventClock() uint64 { if x != nil { return x.CommunityEventClock } return 0 } func (x *CommunityEvent) GetType() CommunityEvent_EventType { if x != nil { return x.Type } return CommunityEvent_UNKNOWN } func (x *CommunityEvent) GetCommunityConfig() *CommunityConfig { if x != nil { return x.CommunityConfig } return nil } func (x *CommunityEvent) GetTokenPermission() *CommunityTokenPermission { if x != nil { return x.TokenPermission } return nil } func (x *CommunityEvent) GetCategoryData() *CategoryData { if x != nil { return x.CategoryData } return nil } func (x *CommunityEvent) GetChannelData() *ChannelData { if x != nil { return x.ChannelData } return nil } func (x *CommunityEvent) GetMemberToAction() string { if x != nil { return x.MemberToAction } return "" } func (x *CommunityEvent) GetMembersAdded() map[string]*CommunityMember { if x != nil { return x.MembersAdded } return nil } func (x *CommunityEvent) GetRejectedRequestsToJoin() map[string]*CommunityRequestToJoin { if x != nil { return x.RejectedRequestsToJoin } return nil } func (x *CommunityEvent) GetAcceptedRequestsToJoin() map[string]*CommunityRequestToJoin { if x != nil { return x.AcceptedRequestsToJoin } return nil } func (x *CommunityEvent) GetTokenMetadata() *CommunityTokenMetadata { if x != nil { return x.TokenMetadata } return nil } type CommunityConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Identity *ChatIdentity `protobuf:"bytes,1,opt,name=identity,proto3" json:"identity,omitempty"` Permissions *CommunityPermissions `protobuf:"bytes,2,opt,name=permissions,proto3" json:"permissions,omitempty"` AdminSettings *CommunityAdminSettings `protobuf:"bytes,3,opt,name=admin_settings,json=adminSettings,proto3" json:"admin_settings,omitempty"` IntroMessage string `protobuf:"bytes,4,opt,name=intro_message,json=introMessage,proto3" json:"intro_message,omitempty"` OutroMessage string `protobuf:"bytes,5,opt,name=outro_message,json=outroMessage,proto3" json:"outro_message,omitempty"` Tags []string `protobuf:"bytes,6,rep,name=tags,proto3" json:"tags,omitempty"` } func (x *CommunityConfig) Reset() { *x = CommunityConfig{} if protoimpl.UnsafeEnabled { mi := &file_community_update_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CommunityConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*CommunityConfig) ProtoMessage() {} func (x *CommunityConfig) ProtoReflect() protoreflect.Message { mi := &file_community_update_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CommunityConfig.ProtoReflect.Descriptor instead. func (*CommunityConfig) Descriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{1} } func (x *CommunityConfig) GetIdentity() *ChatIdentity { if x != nil { return x.Identity } return nil } func (x *CommunityConfig) GetPermissions() *CommunityPermissions { if x != nil { return x.Permissions } return nil } func (x *CommunityConfig) GetAdminSettings() *CommunityAdminSettings { if x != nil { return x.AdminSettings } return nil } func (x *CommunityConfig) GetIntroMessage() string { if x != nil { return x.IntroMessage } return "" } func (x *CommunityConfig) GetOutroMessage() string { if x != nil { return x.OutroMessage } return "" } func (x *CommunityConfig) GetTags() []string { if x != nil { return x.Tags } return nil } type CategoryData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields CategoryId string `protobuf:"bytes,1,opt,name=category_id,json=categoryId,proto3" json:"category_id,omitempty"` Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` ChannelsIds []string `protobuf:"bytes,3,rep,name=channels_ids,json=channelsIds,proto3" json:"channels_ids,omitempty"` Position int32 `protobuf:"varint,4,opt,name=position,proto3" json:"position,omitempty"` } func (x *CategoryData) Reset() { *x = CategoryData{} if protoimpl.UnsafeEnabled { mi := &file_community_update_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CategoryData) String() string { return protoimpl.X.MessageStringOf(x) } func (*CategoryData) ProtoMessage() {} func (x *CategoryData) ProtoReflect() protoreflect.Message { mi := &file_community_update_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CategoryData.ProtoReflect.Descriptor instead. func (*CategoryData) Descriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{2} } func (x *CategoryData) GetCategoryId() string { if x != nil { return x.CategoryId } return "" } func (x *CategoryData) GetName() string { if x != nil { return x.Name } return "" } func (x *CategoryData) GetChannelsIds() []string { if x != nil { return x.ChannelsIds } return nil } func (x *CategoryData) GetPosition() int32 { if x != nil { return x.Position } return 0 } type ChannelData struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields CategoryId string `protobuf:"bytes,1,opt,name=category_id,json=categoryId,proto3" json:"category_id,omitempty"` ChannelId string `protobuf:"bytes,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"` Position int32 `protobuf:"varint,3,opt,name=position,proto3" json:"position,omitempty"` Channel *CommunityChat `protobuf:"bytes,4,opt,name=channel,proto3" json:"channel,omitempty"` } func (x *ChannelData) Reset() { *x = ChannelData{} if protoimpl.UnsafeEnabled { mi := &file_community_update_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *ChannelData) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChannelData) ProtoMessage() {} func (x *ChannelData) ProtoReflect() protoreflect.Message { mi := &file_community_update_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChannelData.ProtoReflect.Descriptor instead. func (*ChannelData) Descriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{3} } func (x *ChannelData) GetCategoryId() string { if x != nil { return x.CategoryId } return "" } func (x *ChannelData) GetChannelId() string { if x != nil { return x.ChannelId } return "" } func (x *ChannelData) GetPosition() int32 { if x != nil { return x.Position } return 0 } func (x *ChannelData) GetChannel() *CommunityChat { if x != nil { return x.Channel } return nil } type SignedCommunityEvent struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Signature of the payload field Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` // Marshaled CommunityEvent Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` } func (x *SignedCommunityEvent) Reset() { *x = SignedCommunityEvent{} if protoimpl.UnsafeEnabled { mi := &file_community_update_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SignedCommunityEvent) String() string { return protoimpl.X.MessageStringOf(x) } func (*SignedCommunityEvent) ProtoMessage() {} func (x *SignedCommunityEvent) ProtoReflect() protoreflect.Message { mi := &file_community_update_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SignedCommunityEvent.ProtoReflect.Descriptor instead. func (*SignedCommunityEvent) Descriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{4} } func (x *SignedCommunityEvent) GetSignature() []byte { if x != nil { return x.Signature } return nil } func (x *SignedCommunityEvent) GetPayload() []byte { if x != nil { return x.Payload } return nil } // CommunityEventsMessage is a message used to propagate information // about community changes. type CommunityEventsMessage struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields CommunityId []byte `protobuf:"bytes,1,opt,name=community_id,json=communityId,proto3" json:"community_id,omitempty"` // Events base CommunityDescription with owner signature on top of which events were generated EventsBaseCommunityDescription []byte `protobuf:"bytes,2,opt,name=events_base_community_description,json=eventsBaseCommunityDescription,proto3" json:"events_base_community_description,omitempty"` // A list of admins events for the channel in bytes // Deprecated: use signed_events instead. // // Deprecated: Marked as deprecated in community_update.proto. Events [][]byte `protobuf:"bytes,3,rep,name=events,proto3" json:"events,omitempty"` // A list of signed community events SignedEvents []*SignedCommunityEvent `protobuf:"bytes,4,rep,name=signed_events,json=signedEvents,proto3" json:"signed_events,omitempty"` } func (x *CommunityEventsMessage) Reset() { *x = CommunityEventsMessage{} if protoimpl.UnsafeEnabled { mi := &file_community_update_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CommunityEventsMessage) String() string { return protoimpl.X.MessageStringOf(x) } func (*CommunityEventsMessage) ProtoMessage() {} func (x *CommunityEventsMessage) ProtoReflect() protoreflect.Message { mi := &file_community_update_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CommunityEventsMessage.ProtoReflect.Descriptor instead. func (*CommunityEventsMessage) Descriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{5} } func (x *CommunityEventsMessage) GetCommunityId() []byte { if x != nil { return x.CommunityId } return nil } func (x *CommunityEventsMessage) GetEventsBaseCommunityDescription() []byte { if x != nil { return x.EventsBaseCommunityDescription } return nil } // Deprecated: Marked as deprecated in community_update.proto. func (x *CommunityEventsMessage) GetEvents() [][]byte { if x != nil { return x.Events } return nil } func (x *CommunityEventsMessage) GetSignedEvents() []*SignedCommunityEvent { if x != nil { return x.SignedEvents } return nil } type CommunityEventsMessageRejected struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Msg *CommunityEventsMessage `protobuf:"bytes,1,opt,name=msg,proto3" json:"msg,omitempty"` } func (x *CommunityEventsMessageRejected) Reset() { *x = CommunityEventsMessageRejected{} if protoimpl.UnsafeEnabled { mi := &file_community_update_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CommunityEventsMessageRejected) String() string { return protoimpl.X.MessageStringOf(x) } func (*CommunityEventsMessageRejected) ProtoMessage() {} func (x *CommunityEventsMessageRejected) ProtoReflect() protoreflect.Message { mi := &file_community_update_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CommunityEventsMessageRejected.ProtoReflect.Descriptor instead. func (*CommunityEventsMessageRejected) Descriptor() ([]byte, []int) { return file_community_update_proto_rawDescGZIP(), []int{6} } func (x *CommunityEventsMessageRejected) GetMsg() *CommunityEventsMessage { if x != nil { return x.Msg } return nil } var File_community_update_proto protoreflect.FileDescriptor var file_community_update_proto_rawDesc = []byte{ 0x0a, 0x16, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x1a, 0x13, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x90, 0x0d, 0x0a, 0x0e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x36, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x44, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4d, 0x0a, 0x10, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0d, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0c, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x38, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x54, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x41, 0x64, 0x64, 0x65, 0x64, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x41, 0x64, 0x64, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x41, 0x64, 0x64, 0x65, 0x64, 0x12, 0x6c, 0x0a, 0x16, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x16, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x6c, 0x0a, 0x16, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x16, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x47, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0d, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x5a, 0x0a, 0x11, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x41, 0x64, 0x64, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x6b, 0x0a, 0x1b, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x36, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x6b, 0x0a, 0x1b, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x36, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x6f, 0x4a, 0x6f, 0x69, 0x6e, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb0, 0x04, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0x01, 0x12, 0x2c, 0x0a, 0x28, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x02, 0x12, 0x2c, 0x0a, 0x28, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x03, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x1b, 0x0a, 0x17, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x07, 0x12, 0x1c, 0x0a, 0x18, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x08, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x45, 0x44, 0x49, 0x54, 0x10, 0x09, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x5f, 0x52, 0x45, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, 0x0a, 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x52, 0x45, 0x4f, 0x52, 0x44, 0x45, 0x52, 0x10, 0x0b, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x4f, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x10, 0x0c, 0x12, 0x24, 0x0a, 0x20, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x54, 0x4f, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x0d, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x10, 0x0e, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x42, 0x41, 0x4e, 0x10, 0x0f, 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x4d, 0x45, 0x4d, 0x42, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x42, 0x41, 0x4e, 0x10, 0x10, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x4f, 0x4d, 0x4d, 0x55, 0x4e, 0x49, 0x54, 0x59, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x5f, 0x41, 0x44, 0x44, 0x10, 0x11, 0x22, 0xae, 0x02, 0x0a, 0x0f, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x32, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x40, 0x0a, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x47, 0x0a, 0x0e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0d, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x72, 0x6f, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x72, 0x6f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x0c, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x49, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9c, 0x01, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x43, 0x68, 0x61, 0x74, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0x4e, 0x0a, 0x14, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0xe7, 0x01, 0x0a, 0x16, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x21, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0c, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x43, 0x0a, 0x0d, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x54, 0x0a, 0x1e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_community_update_proto_rawDescOnce sync.Once file_community_update_proto_rawDescData = file_community_update_proto_rawDesc ) func file_community_update_proto_rawDescGZIP() []byte { file_community_update_proto_rawDescOnce.Do(func() { file_community_update_proto_rawDescData = protoimpl.X.CompressGZIP(file_community_update_proto_rawDescData) }) return file_community_update_proto_rawDescData } var file_community_update_proto_enumTypes = make([]protoimpl.EnumInfo, 1) var file_community_update_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_community_update_proto_goTypes = []interface{}{ (CommunityEvent_EventType)(0), // 0: protobuf.CommunityEvent.EventType (*CommunityEvent)(nil), // 1: protobuf.CommunityEvent (*CommunityConfig)(nil), // 2: protobuf.CommunityConfig (*CategoryData)(nil), // 3: protobuf.CategoryData (*ChannelData)(nil), // 4: protobuf.ChannelData (*SignedCommunityEvent)(nil), // 5: protobuf.SignedCommunityEvent (*CommunityEventsMessage)(nil), // 6: protobuf.CommunityEventsMessage (*CommunityEventsMessageRejected)(nil), // 7: protobuf.CommunityEventsMessageRejected nil, // 8: protobuf.CommunityEvent.MembersAddedEntry nil, // 9: protobuf.CommunityEvent.RejectedRequestsToJoinEntry nil, // 10: protobuf.CommunityEvent.AcceptedRequestsToJoinEntry (*CommunityTokenPermission)(nil), // 11: protobuf.CommunityTokenPermission (*CommunityTokenMetadata)(nil), // 12: protobuf.CommunityTokenMetadata (*ChatIdentity)(nil), // 13: protobuf.ChatIdentity (*CommunityPermissions)(nil), // 14: protobuf.CommunityPermissions (*CommunityAdminSettings)(nil), // 15: protobuf.CommunityAdminSettings (*CommunityChat)(nil), // 16: protobuf.CommunityChat (*CommunityMember)(nil), // 17: protobuf.CommunityMember (*CommunityRequestToJoin)(nil), // 18: protobuf.CommunityRequestToJoin } var file_community_update_proto_depIdxs = []int32{ 0, // 0: protobuf.CommunityEvent.type:type_name -> protobuf.CommunityEvent.EventType 2, // 1: protobuf.CommunityEvent.community_config:type_name -> protobuf.CommunityConfig 11, // 2: protobuf.CommunityEvent.token_permission:type_name -> protobuf.CommunityTokenPermission 3, // 3: protobuf.CommunityEvent.category_data:type_name -> protobuf.CategoryData 4, // 4: protobuf.CommunityEvent.channel_data:type_name -> protobuf.ChannelData 8, // 5: protobuf.CommunityEvent.membersAdded:type_name -> protobuf.CommunityEvent.MembersAddedEntry 9, // 6: protobuf.CommunityEvent.rejectedRequestsToJoin:type_name -> protobuf.CommunityEvent.RejectedRequestsToJoinEntry 10, // 7: protobuf.CommunityEvent.acceptedRequestsToJoin:type_name -> protobuf.CommunityEvent.AcceptedRequestsToJoinEntry 12, // 8: protobuf.CommunityEvent.token_metadata:type_name -> protobuf.CommunityTokenMetadata 13, // 9: protobuf.CommunityConfig.identity:type_name -> protobuf.ChatIdentity 14, // 10: protobuf.CommunityConfig.permissions:type_name -> protobuf.CommunityPermissions 15, // 11: protobuf.CommunityConfig.admin_settings:type_name -> protobuf.CommunityAdminSettings 16, // 12: protobuf.ChannelData.channel:type_name -> protobuf.CommunityChat 5, // 13: protobuf.CommunityEventsMessage.signed_events:type_name -> protobuf.SignedCommunityEvent 6, // 14: protobuf.CommunityEventsMessageRejected.msg:type_name -> protobuf.CommunityEventsMessage 17, // 15: protobuf.CommunityEvent.MembersAddedEntry.value:type_name -> protobuf.CommunityMember 18, // 16: protobuf.CommunityEvent.RejectedRequestsToJoinEntry.value:type_name -> protobuf.CommunityRequestToJoin 18, // 17: protobuf.CommunityEvent.AcceptedRequestsToJoinEntry.value:type_name -> protobuf.CommunityRequestToJoin 18, // [18:18] is the sub-list for method output_type 18, // [18:18] is the sub-list for method input_type 18, // [18:18] is the sub-list for extension type_name 18, // [18:18] is the sub-list for extension extendee 0, // [0:18] is the sub-list for field type_name } func init() { file_community_update_proto_init() } func file_community_update_proto_init() { if File_community_update_proto != nil { return } file_chat_identity_proto_init() file_communities_proto_init() if !protoimpl.UnsafeEnabled { file_community_update_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CommunityEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_community_update_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CommunityConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_community_update_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CategoryData); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_community_update_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ChannelData); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_community_update_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SignedCommunityEvent); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_community_update_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CommunityEventsMessage); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_community_update_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CommunityEventsMessageRejected); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_community_update_proto_rawDesc, NumEnums: 1, NumMessages: 10, NumExtensions: 0, NumServices: 0, }, GoTypes: file_community_update_proto_goTypes, DependencyIndexes: file_community_update_proto_depIdxs, EnumInfos: file_community_update_proto_enumTypes, MessageInfos: file_community_update_proto_msgTypes, }.Build() File_community_update_proto = out.File file_community_update_proto_rawDesc = nil file_community_update_proto_goTypes = nil file_community_update_proto_depIdxs = nil }