summaryrefslogtreecommitdiffstats
path: root/vendor/github.com
diff options
context:
space:
mode:
authorJanet Blackquill <uhhadd@gmail.com>2021-12-18 16:43:29 -0500
committerGitHub <noreply@github.com>2021-12-18 22:43:29 +0100
commitdbedc994216fa2e932f1aefd3ea27832419b85ef (patch)
tree2a577dda9e296c9f854ea0677394128d17ca6d17 /vendor/github.com
parent6cb359cb808e2353db2675b58da95ac0349689fe (diff)
downloadmatterbridge-msglm-dbedc994216fa2e932f1aefd3ea27832419b85ef.tar.gz
matterbridge-msglm-dbedc994216fa2e932f1aefd3ea27832419b85ef.tar.bz2
matterbridge-msglm-dbedc994216fa2e932f1aefd3ea27832419b85ef.zip
Add support for Harmony (#1656)
Harmony is a relatively new (1,5yo) chat protocol with a small community. This introduces support for Harmony into Matterbridge, using the functionality specifically designed for bridge bots. The implementation is a modest 200 lines of code.
Diffstat (limited to 'vendor/github.com')
-rw-r--r--vendor/github.com/harmony-development/shibshib/buf.gen.yaml12
-rw-r--r--vendor/github.com/harmony-development/shibshib/client.go216
-rw-r--r--vendor/github.com/harmony-development/shibshib/federatedclient.go164
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth.pb.go2190
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth_hrpc_client.pb.go416
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/chat/v1/channels.pb.go1368
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat.pb.go716
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat_hrpc_client.pb.go2946
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/chat/v1/guilds.pb.go4279
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/chat/v1/messages.pb.go6224
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/chat/v1/permissions.pb.go1886
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/chat/v1/stream.pb.go4081
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote.pb.go175
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote_hrpc_client.pb.go455
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/emote/v1/stream.pb.go573
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/emote/v1/types.pb.go1262
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/harmonytypes/v1/types.pb.go754
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile.pb.go130
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile_hrpc_client.pb.go244
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/profile/v1/stream.pb.go316
-rw-r--r--vendor/github.com/harmony-development/shibshib/gen/profile/v1/types.pb.go835
-rw-r--r--vendor/github.com/harmony-development/shibshib/located.go10
22 files changed, 29252 insertions, 0 deletions
diff --git a/vendor/github.com/harmony-development/shibshib/buf.gen.yaml b/vendor/github.com/harmony-development/shibshib/buf.gen.yaml
new file mode 100644
index 00000000..7d8ef040
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/buf.gen.yaml
@@ -0,0 +1,12 @@
+version: v1
+managed:
+ enabled: true
+ go_package_prefix:
+ default: github.com/harmony-development/shibshib/gen
+plugins:
+ - name: go
+ out: gen
+ opt: paths=source_relative
+ - name: go-hrpc
+ out: gen
+ opt: paths=source_relative \ No newline at end of file
diff --git a/vendor/github.com/harmony-development/shibshib/client.go b/vendor/github.com/harmony-development/shibshib/client.go
new file mode 100644
index 00000000..e0690ad1
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/client.go
@@ -0,0 +1,216 @@
+package shibshib
+
+import (
+ "errors"
+ "fmt"
+ "net/http"
+ "net/url"
+ "strconv"
+ "strings"
+ "sync"
+
+ authv1 "github.com/harmony-development/shibshib/gen/auth/v1"
+ chatv1 "github.com/harmony-development/shibshib/gen/chat/v1"
+ profilev1 "github.com/harmony-development/shibshib/gen/profile/v1"
+)
+
+type Client struct {
+ ChatKit chatv1.HTTPChatServiceClient
+ AuthKit authv1.HTTPAuthServiceClient
+ ProfileKit profilev1.HTTPProfileServiceClient
+
+ ErrorHandler func(error)
+
+ UserID uint64
+
+ incomingEvents <-chan *chatv1.StreamEventsResponse
+ outgoingEvents chan<- *chatv1.StreamEventsRequest
+
+ subscribedGuilds []uint64
+ onceHandlers []func(*LocatedMessage)
+
+ events chan *LocatedMessage
+ homeserver string
+ sessionToken string
+
+ streaming bool
+
+ mtx *sync.Mutex
+}
+
+var ErrEndOfStream = errors.New("end of stream")
+
+func (c *Client) init(h string, wsp, wsph string) {
+ c.events = make(chan *LocatedMessage)
+ c.mtx = new(sync.Mutex)
+ c.ErrorHandler = func(e error) {
+ panic(e)
+ }
+ c.homeserver = h
+ c.ChatKit = chatv1.HTTPChatServiceClient{*http.DefaultClient, h, wsp, wsph, http.Header{}}
+ c.AuthKit = authv1.HTTPAuthServiceClient{*http.DefaultClient, h, wsp, wsph, http.Header{}}
+ c.ProfileKit = profilev1.HTTPProfileServiceClient{*http.DefaultClient, h, wsp, wsph, http.Header{}}
+}
+
+func (c *Client) authed(token string, userID uint64) {
+ c.sessionToken = token
+ c.ChatKit.Header.Add("Authorization", token)
+ c.AuthKit.Header.Add("Authorization", token)
+ c.ProfileKit.Header.Add("Authorization", token)
+ c.UserID = userID
+}
+
+func NewClient(homeserver, token string, userid uint64) (ret *Client, err error) {
+ url, err := url.Parse(homeserver)
+ if err != nil {
+ return nil, err
+ }
+ it := "wss"
+ if url.Scheme == "http" {
+ it = "ws"
+ }
+ ret = &Client{}
+ ret.homeserver = homeserver
+ ret.init(homeserver, it, url.Host)
+ ret.authed(token, userid)
+
+ err = ret.StreamEvents()
+ if err != nil {
+ ret = nil
+ return
+ }
+
+ return
+}
+
+func (c *Client) StreamEvents() (err error) {
+ c.mtx.Lock()
+ defer c.mtx.Unlock()
+
+ if c.streaming {
+ return
+ }
+
+ it := make(chan *chatv1.StreamEventsRequest)
+ c.outgoingEvents = it
+ c.incomingEvents, err = c.ChatKit.StreamEvents(it)
+ if err != nil {
+ err = fmt.Errorf("StreamEvents: failed to open stream: %w", err)
+ return
+ }
+
+ c.streaming = true
+
+ go func() {
+ for ev := range c.incomingEvents {
+ chat, ok := ev.Event.(*chatv1.StreamEventsResponse_Chat)
+ if !ok {
+ continue
+ }
+
+ msg, ok := chat.Chat.Event.(*chatv1.StreamEvent_SentMessage)
+ if !ok {
+ continue
+ }
+
+ imsg := &LocatedMessage{
+ GuildID: msg.SentMessage.GuildId,
+ ChannelID: msg.SentMessage.ChannelId,
+ MessageWithId: chatv1.MessageWithId{
+ MessageId: msg.SentMessage.MessageId,
+ Message: msg.SentMessage.Message,
+ },
+ }
+
+ for _, h := range c.onceHandlers {
+ h(imsg)
+ }
+ c.onceHandlers = make([]func(*LocatedMessage), 0)
+ c.events <- imsg
+ }
+
+ c.mtx.Lock()
+ defer c.mtx.Unlock()
+
+ c.streaming = false
+ c.ErrorHandler(ErrEndOfStream)
+ }()
+
+ return nil
+}
+
+func (c *Client) SubscribeToGuild(community uint64) {
+ for _, g := range c.subscribedGuilds {
+ if g == community {
+ return
+ }
+ }
+ c.outgoingEvents <- &chatv1.StreamEventsRequest{
+ Request: &chatv1.StreamEventsRequest_SubscribeToGuild_{
+ SubscribeToGuild: &chatv1.StreamEventsRequest_SubscribeToGuild{
+ GuildId: community,
+ },
+ },
+ }
+ c.subscribedGuilds = append(c.subscribedGuilds, community)
+}
+
+func (c *Client) SubscribedGuilds() []uint64 {
+ return c.subscribedGuilds
+}
+
+func (c *Client) SendMessage(msg *chatv1.SendMessageRequest) (*chatv1.SendMessageResponse, error) {
+ return c.ChatKit.SendMessage(msg)
+}
+
+func (c *Client) TransformHMCURL(hmc string) string {
+ if !strings.HasPrefix(hmc, "hmc://") {
+ return fmt.Sprintf("%s/_harmony/media/download/%s", c.homeserver, hmc)
+ }
+
+ trimmed := strings.TrimPrefix(hmc, "hmc://")
+ split := strings.Split(trimmed, "/")
+ if len(split) != 2 {
+ return fmt.Sprintf("malformed URL: %s", hmc)
+ }
+
+ return fmt.Sprintf("https://%s/_harmony/media/download/%s", split[0], split[1])
+}
+
+func (c *Client) UsernameFor(m *chatv1.Message) string {
+ if m.Overrides != nil {
+ return m.Overrides.GetUsername()
+ }
+
+ resp, err := c.ProfileKit.GetProfile(&profilev1.GetProfileRequest{
+ UserId: m.AuthorId,
+ })
+ if err != nil {
+ return strconv.FormatUint(m.AuthorId, 10)
+ }
+
+ return resp.Profile.UserName
+}
+
+func (c *Client) AvatarFor(m *chatv1.Message) string {
+ if m.Overrides != nil {
+ return m.Overrides.GetAvatar()
+ }
+
+ resp, err := c.ProfileKit.GetProfile(&profilev1.GetProfileRequest{
+ UserId: m.AuthorId,
+ })
+ if err != nil {
+ return ""
+ }
+
+ return c.TransformHMCURL(resp.Profile.GetUserAvatar())
+}
+
+func (c *Client) EventsStream() <-chan *LocatedMessage {
+ return c.events
+}
+
+func (c *Client) HandleOnce(f func(*LocatedMessage)) {
+ c.onceHandlers = append(c.onceHandlers, f)
+}
diff --git a/vendor/github.com/harmony-development/shibshib/federatedclient.go b/vendor/github.com/harmony-development/shibshib/federatedclient.go
new file mode 100644
index 00000000..c4c779f3
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/federatedclient.go
@@ -0,0 +1,164 @@
+package shibshib
+
+import (
+ "fmt"
+ "net/url"
+ "reflect"
+ "strings"
+
+ authv1 "github.com/harmony-development/shibshib/gen/auth/v1"
+ chatv1 "github.com/harmony-development/shibshib/gen/chat/v1"
+)
+
+type FederatedClient struct {
+ Client
+
+ homeserver string
+ subclients map[string]*Client
+ streams map[<-chan *LocatedMessage]*Client
+ listening map[*Client]<-chan *LocatedMessage
+}
+
+type FederatedEvent struct {
+ Client *Client
+ Event *LocatedMessage
+}
+
+func NewFederatedClient(homeserver, token string, userID uint64) (*FederatedClient, error) {
+ url, err := url.Parse(homeserver)
+ if err != nil {
+ return nil, err
+ }
+ it := "wss"
+ if url.Scheme == "http" {
+ it = "ws"
+ }
+
+ self := &FederatedClient{}
+ self.homeserver = homeserver
+ self.Client.homeserver = homeserver
+ self.init(homeserver, it, url.Host)
+ self.authed(token, userID)
+
+ self.subclients = make(map[string]*Client)
+ self.streams = make(map[<-chan *LocatedMessage]*Client)
+ self.listening = make(map[*Client]<-chan *LocatedMessage)
+
+ err = self.StreamEvents()
+ if err != nil {
+ return nil, fmt.Errorf("NewFederatedClient: own streamevents failed: %w", err)
+ }
+
+ return self, nil
+}
+
+func (f *FederatedClient) clientFor(homeserver string) (*Client, error) {
+ if f.homeserver == homeserver || strings.Split(homeserver, ":")[0] == "localhost" || homeserver == "" {
+ return &f.Client, nil
+ }
+
+ if val, ok := f.subclients[homeserver]; ok {
+ return val, nil
+ }
+
+ session, err := f.AuthKit.Federate(&authv1.FederateRequest{
+ ServerId: homeserver,
+ })
+ if err != nil {
+ return nil, fmt.Errorf("ClientFor: homeserver federation step failed: %w", err)
+ }
+
+ url, err := url.Parse(homeserver)
+ if err != nil {
+ return nil, err
+ }
+ scheme := "wss"
+ if url.Scheme == "http" {
+ scheme = "ws"
+ }
+
+ c := new(Client)
+ c.init(homeserver, scheme, url.Host)
+
+ data, err := c.AuthKit.LoginFederated(&authv1.LoginFederatedRequest{
+ AuthToken: session.Token,
+ ServerId: f.homeserver,
+ })
+ if err != nil {
+ return nil, fmt.Errorf("ClientFor: failed to log into foreignserver: %w", err)
+ }
+
+ c.authed(data.Session.SessionToken, data.Session.UserId)
+ err = c.StreamEvents()
+ if err != nil {
+ return nil, fmt.Errorf("ClientFor: failed to stream events for foreign server: %w", err)
+ }
+
+ f.subclients[homeserver] = c
+
+ return c, nil
+}
+
+func (f *FederatedClient) Start() (<-chan FederatedEvent, error) {
+ list, err := f.ChatKit.GetGuildList(&chatv1.GetGuildListRequest{})
+ if err != nil {
+ return nil, fmt.Errorf("Start: failed to get guild list on homeserver: %w", err)
+ }
+
+ cases := []reflect.SelectCase{}
+
+ for _, g := range list.Guilds {
+ client, err := f.clientFor(g.ServerId)
+ if err != nil {
+ return nil, fmt.Errorf("Start: failed to get client for guild %s/%d: %w", g.ServerId, g.GuildId, err)
+ }
+
+ stream, ok := f.listening[client]
+ if !ok {
+ stream = client.EventsStream()
+ cases = append(cases, reflect.SelectCase{
+ Dir: reflect.SelectRecv,
+ Chan: reflect.ValueOf(stream),
+ })
+ client.ErrorHandler = func(e error) {
+ if e == ErrEndOfStream {
+ err := client.StreamEvents()
+ if err != nil {
+ panic(fmt.Errorf("client.ErrorHandler: could not restart stream: %w", err))
+ }
+ cp := client.subscribedGuilds
+ client.subscribedGuilds = make([]uint64, 0)
+ for _, gg := range cp {
+ client.SubscribeToGuild(gg)
+ }
+ } else {
+ panic(err)
+ }
+ }
+
+ f.listening[client] = stream
+ f.streams[stream] = client
+ }
+
+ client.SubscribeToGuild(g.GuildId)
+ }
+
+ channel := make(chan FederatedEvent)
+ go func() {
+ for {
+ i, v, ok := reflect.Select(cases)
+ if !ok {
+ cases = append(cases[:i], cases[i+1:]...)
+ }
+
+ val := v.Interface().(*LocatedMessage)
+
+ channel <- FederatedEvent{
+ Event: val,
+ Client: f.streams[cases[i].Chan.Interface().(<-chan *LocatedMessage)],
+ }
+ }
+ }()
+
+ return channel, nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth.pb.go b/vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth.pb.go
new file mode 100644
index 00000000..86541c3a
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth.pb.go
@@ -0,0 +1,2190 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: auth/v1/auth.proto
+
+package authv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ v1 "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// Used in `BeginAuth` endpoint.
+type BeginAuthRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *BeginAuthRequest) Reset() {
+ *x = BeginAuthRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BeginAuthRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BeginAuthRequest) ProtoMessage() {}
+
+func (x *BeginAuthRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_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 BeginAuthRequest.ProtoReflect.Descriptor instead.
+func (*BeginAuthRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{0}
+}
+
+// BeginAuthResponse
+// The return type of BeginAuth, containing the
+// auth_id that will be used for the authentication
+// section
+type BeginAuthResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // auth_id: the ID of this auth session
+ AuthId string `protobuf:"bytes,1,opt,name=auth_id,json=authId,proto3" json:"auth_id,omitempty"`
+}
+
+func (x *BeginAuthResponse) Reset() {
+ *x = BeginAuthResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BeginAuthResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BeginAuthResponse) ProtoMessage() {}
+
+func (x *BeginAuthResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_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 BeginAuthResponse.ProtoReflect.Descriptor instead.
+func (*BeginAuthResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *BeginAuthResponse) GetAuthId() string {
+ if x != nil {
+ return x.AuthId
+ }
+ return ""
+}
+
+// Session
+// Session contains the information for a new session;
+// the user_id you logged in as and the session_token
+// which should be passed to authorisation
+type Session struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // user_id: the ID of the user you logged in as
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ // session_token: the session token to use in authorization
+ SessionToken string `protobuf:"bytes,2,opt,name=session_token,json=sessionToken,proto3" json:"session_token,omitempty"`
+}
+
+func (x *Session) Reset() {
+ *x = Session{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Session) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Session) ProtoMessage() {}
+
+func (x *Session) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_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 Session.ProtoReflect.Descriptor instead.
+func (*Session) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *Session) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+func (x *Session) GetSessionToken() string {
+ if x != nil {
+ return x.SessionToken
+ }
+ return ""
+}
+
+// AuthStep
+// A step in the authentication process
+// Contains a variety of different types of views
+// It is recommended to have a fallback_url specified
+// For non-trivial authentication procedures (such as captchas)
+type AuthStep struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // fallback_url: unused
+ FallbackUrl string `protobuf:"bytes,1,opt,name=fallback_url,json=fallbackUrl,proto3" json:"fallback_url,omitempty"`
+ // can_go_back: whether or not the client can request the
+ // server to send the previous step
+ CanGoBack bool `protobuf:"varint,2,opt,name=can_go_back,json=canGoBack,proto3" json:"can_go_back,omitempty"`
+ // step: the current step
+ //
+ // Types that are assignable to Step:
+ // *AuthStep_Choice_
+ // *AuthStep_Form_
+ // *AuthStep_Session
+ // *AuthStep_Waiting_
+ Step isAuthStep_Step `protobuf_oneof:"step"`
+}
+
+func (x *AuthStep) Reset() {
+ *x = AuthStep{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AuthStep) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AuthStep) ProtoMessage() {}
+
+func (x *AuthStep) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_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 AuthStep.ProtoReflect.Descriptor instead.
+func (*AuthStep) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *AuthStep) GetFallbackUrl() string {
+ if x != nil {
+ return x.FallbackUrl
+ }
+ return ""
+}
+
+func (x *AuthStep) GetCanGoBack() bool {
+ if x != nil {
+ return x.CanGoBack
+ }
+ return false
+}
+
+func (m *AuthStep) GetStep() isAuthStep_Step {
+ if m != nil {
+ return m.Step
+ }
+ return nil
+}
+
+func (x *AuthStep) GetChoice() *AuthStep_Choice {
+ if x, ok := x.GetStep().(*AuthStep_Choice_); ok {
+ return x.Choice
+ }
+ return nil
+}
+
+func (x *AuthStep) GetForm() *AuthStep_Form {
+ if x, ok := x.GetStep().(*AuthStep_Form_); ok {
+ return x.Form
+ }
+ return nil
+}
+
+func (x *AuthStep) GetSession() *Session {
+ if x, ok := x.GetStep().(*AuthStep_Session); ok {
+ return x.Session
+ }
+ return nil
+}
+
+func (x *AuthStep) GetWaiting() *AuthStep_Waiting {
+ if x, ok := x.GetStep().(*AuthStep_Waiting_); ok {
+ return x.Waiting
+ }
+ return nil
+}
+
+type isAuthStep_Step interface {
+ isAuthStep_Step()
+}
+
+type AuthStep_Choice_ struct {
+ // choice: the user must pick a thing out of a list of options
+ Choice *AuthStep_Choice `protobuf:"bytes,3,opt,name=choice,proto3,oneof"`
+}
+
+type AuthStep_Form_ struct {
+ // form: the user must complete a form
+ Form *AuthStep_Form `protobuf:"bytes,4,opt,name=form,proto3,oneof"`
+}
+
+type AuthStep_Session struct {
+ // session: you've completed auth, and have a session
+ Session *Session `protobuf:"bytes,5,opt,name=session,proto3,oneof"`
+}
+
+type AuthStep_Waiting_ struct {
+ // waiting: you're waiting on something
+ Waiting *AuthStep_Waiting `protobuf:"bytes,6,opt,name=waiting,proto3,oneof"`
+}
+
+func (*AuthStep_Choice_) isAuthStep_Step() {}
+
+func (*AuthStep_Form_) isAuthStep_Step() {}
+
+func (*AuthStep_Session) isAuthStep_Step() {}
+
+func (*AuthStep_Waiting_) isAuthStep_Step() {}
+
+// NextStepRequest
+// contains the client's response to the server's challenge
+// This needs to be called first with no arguments to
+// receive the first step
+type NextStepRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // auth_id: the authentication session you want
+ // the next step of
+ AuthId string `protobuf:"bytes,1,opt,name=auth_id,json=authId,proto3" json:"auth_id,omitempty"`
+ // step: the user's response to a step
+ //
+ // Types that are assignable to Step:
+ // *NextStepRequest_Choice_
+ // *NextStepRequest_Form_
+ Step isNextStepRequest_Step `protobuf_oneof:"step"`
+}
+
+func (x *NextStepRequest) Reset() {
+ *x = NextStepRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *NextStepRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NextStepRequest) ProtoMessage() {}
+
+func (x *NextStepRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_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 NextStepRequest.ProtoReflect.Descriptor instead.
+func (*NextStepRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *NextStepRequest) GetAuthId() string {
+ if x != nil {
+ return x.AuthId
+ }
+ return ""
+}
+
+func (m *NextStepRequest) GetStep() isNextStepRequest_Step {
+ if m != nil {
+ return m.Step
+ }
+ return nil
+}
+
+func (x *NextStepRequest) GetChoice() *NextStepRequest_Choice {
+ if x, ok := x.GetStep().(*NextStepRequest_Choice_); ok {
+ return x.Choice
+ }
+ return nil
+}
+
+func (x *NextStepRequest) GetForm() *NextStepRequest_Form {
+ if x, ok := x.GetStep().(*NextStepRequest_Form_); ok {
+ return x.Form
+ }
+ return nil
+}
+
+type isNextStepRequest_Step interface {
+ isNextStepRequest_Step()
+}
+
+type NextStepRequest_Choice_ struct {
+ // choice: the choice the user picked
+ Choice *NextStepRequest_Choice `protobuf:"bytes,2,opt,name=choice,proto3,oneof"`
+}
+
+type NextStepRequest_Form_ struct {
+ // form: the form the user filled out
+ Form *NextStepRequest_Form `protobuf:"bytes,3,opt,name=form,proto3,oneof"`
+}
+
+func (*NextStepRequest_Choice_) isNextStepRequest_Step() {}
+
+func (*NextStepRequest_Form_) isNextStepRequest_Step() {}
+
+// Used in `NextStep` endpoint.
+type NextStepResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // step: the next step in the authentication process
+ Step *AuthStep `protobuf:"bytes,1,opt,name=step,proto3" json:"step,omitempty"`
+}
+
+func (x *NextStepResponse) Reset() {
+ *x = NextStepResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *NextStepResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NextStepResponse) ProtoMessage() {}
+
+func (x *NextStepResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_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 NextStepResponse.ProtoReflect.Descriptor instead.
+func (*NextStepResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *NextStepResponse) GetStep() *AuthStep {
+ if x != nil {
+ return x.Step
+ }
+ return nil
+}
+
+// StepBackRequest
+// A request to go back 1 step
+type StepBackRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // auth_id: the authentication session the user
+ // wants to go back in
+ AuthId string `protobuf:"bytes,1,opt,name=auth_id,json=authId,proto3" json:"auth_id,omitempty"`
+}
+
+func (x *StepBackRequest) Reset() {
+ *x = StepBackRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StepBackRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StepBackRequest) ProtoMessage() {}
+
+func (x *StepBackRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_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 StepBackRequest.ProtoReflect.Descriptor instead.
+func (*StepBackRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *StepBackRequest) GetAuthId() string {
+ if x != nil {
+ return x.AuthId
+ }
+ return ""
+}
+
+// Used in `StepBack` endpoint.
+type StepBackResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // step: the previous step in the authentication process
+ Step *AuthStep `protobuf:"bytes,1,opt,name=step,proto3" json:"step,omitempty"`
+}
+
+func (x *StepBackResponse) Reset() {
+ *x = StepBackResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StepBackResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StepBackResponse) ProtoMessage() {}
+
+func (x *StepBackResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[7]
+ 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 StepBackResponse.ProtoReflect.Descriptor instead.
+func (*StepBackResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *StepBackResponse) GetStep() *AuthStep {
+ if x != nil {
+ return x.Step
+ }
+ return nil
+}
+
+// StreamStepsRequest
+// Required to be initiated by all authenticating clients
+// Allows the server to send steps
+type StreamStepsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // auth_id: the authorization session
+ // who's steps you want to stream
+ AuthId string `protobuf:"bytes,1,opt,name=auth_id,json=authId,proto3" json:"auth_id,omitempty"`
+}
+
+func (x *StreamStepsRequest) Reset() {
+ *x = StreamStepsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamStepsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamStepsRequest) ProtoMessage() {}
+
+func (x *StreamStepsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[8]
+ 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 StreamStepsRequest.ProtoReflect.Descriptor instead.
+func (*StreamStepsRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *StreamStepsRequest) GetAuthId() string {
+ if x != nil {
+ return x.AuthId
+ }
+ return ""
+}
+
+// Used in `StreamSteps` endpoint.
+type StreamStepsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // step: the next step in the authentication process
+ Step *AuthStep `protobuf:"bytes,1,opt,name=step,proto3" json:"step,omitempty"`
+}
+
+func (x *StreamStepsResponse) Reset() {
+ *x = StreamStepsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamStepsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamStepsResponse) ProtoMessage() {}
+
+func (x *StreamStepsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[9]
+ 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 StreamStepsResponse.ProtoReflect.Descriptor instead.
+func (*StreamStepsResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *StreamStepsResponse) GetStep() *AuthStep {
+ if x != nil {
+ return x.Step
+ }
+ return nil
+}
+
+// The request to federate with a foreign server.
+type FederateRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The server ID foreign server you want to federate with
+ ServerId string `protobuf:"bytes,1,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
+}
+
+func (x *FederateRequest) Reset() {
+ *x = FederateRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FederateRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FederateRequest) ProtoMessage() {}
+
+func (x *FederateRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[10]
+ 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 FederateRequest.ProtoReflect.Descriptor instead.
+func (*FederateRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *FederateRequest) GetServerId() string {
+ if x != nil {
+ return x.ServerId
+ }
+ return ""
+}
+
+// The reply to a successful federation request,
+// containing the token you need to present to the
+// foreign server.
+type FederateResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A `harmonytypes.v1.Token` whose `data` field is a serialized `TokenData` message.
+ // It is signed with the homeserver's private key.
+ Token *v1.Token `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
+}
+
+func (x *FederateResponse) Reset() {
+ *x = FederateResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FederateResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FederateResponse) ProtoMessage() {}
+
+func (x *FederateResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[11]
+ 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 FederateResponse.ProtoReflect.Descriptor instead.
+func (*FederateResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *FederateResponse) GetToken() *v1.Token {
+ if x != nil {
+ return x.Token
+ }
+ return nil
+}
+
+// Used in `Key` endpoint.
+type KeyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *KeyRequest) Reset() {
+ *x = KeyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KeyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KeyRequest) ProtoMessage() {}
+
+func (x *KeyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[12]
+ 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 KeyRequest.ProtoReflect.Descriptor instead.
+func (*KeyRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{12}
+}
+
+// Contains a key's bytes.
+type KeyResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // key: the bytes of the public key.
+ Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
+}
+
+func (x *KeyResponse) Reset() {
+ *x = KeyResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KeyResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KeyResponse) ProtoMessage() {}
+
+func (x *KeyResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[13]
+ 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 KeyResponse.ProtoReflect.Descriptor instead.
+func (*KeyResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *KeyResponse) GetKey() []byte {
+ if x != nil {
+ return x.Key
+ }
+ return nil
+}
+
+// Log into a foreignserver using a token
+// from your homeserver, obtained through a FederateRequest
+type LoginFederatedRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A `harmonytypes.v1.Token` whose `data` field is a serialized `TokenData` message.
+ // It is signed with the homeserver's private key.
+ AuthToken *v1.Token `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
+ // The server ID of the homeserver that the auth token is from
+ ServerId string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
+}
+
+func (x *LoginFederatedRequest) Reset() {
+ *x = LoginFederatedRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *LoginFederatedRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LoginFederatedRequest) ProtoMessage() {}
+
+func (x *LoginFederatedRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[14]
+ 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 LoginFederatedRequest.ProtoReflect.Descriptor instead.
+func (*LoginFederatedRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *LoginFederatedRequest) GetAuthToken() *v1.Token {
+ if x != nil {
+ return x.AuthToken
+ }
+ return nil
+}
+
+func (x *LoginFederatedRequest) GetServerId() string {
+ if x != nil {
+ return x.ServerId
+ }
+ return ""
+}
+
+// Used in `LoginFederated` endpoint.
+type LoginFederatedResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The user's session.
+ Session *Session `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
+}
+
+func (x *LoginFederatedResponse) Reset() {
+ *x = LoginFederatedResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *LoginFederatedResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LoginFederatedResponse) ProtoMessage() {}
+
+func (x *LoginFederatedResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[15]
+ 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 LoginFederatedResponse.ProtoReflect.Descriptor instead.
+func (*LoginFederatedResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *LoginFederatedResponse) GetSession() *Session {
+ if x != nil {
+ return x.Session
+ }
+ return nil
+}
+
+// Information sent by a client's homeserver, in a `harmonytypes.v1.Token`.
+// It will be sent to a foreignserver by the client.
+type TokenData struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The client's user ID on the homeserver.
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ // The foreignserver's server ID.
+ ServerId string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
+ // The username of the client.
+ Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"`
+ // The avatar of the client.
+ Avatar *string `protobuf:"bytes,4,opt,name=avatar,proto3,oneof" json:"avatar,omitempty"`
+}
+
+func (x *TokenData) Reset() {
+ *x = TokenData{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TokenData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TokenData) ProtoMessage() {}
+
+func (x *TokenData) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[16]
+ 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 TokenData.ProtoReflect.Descriptor instead.
+func (*TokenData) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *TokenData) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+func (x *TokenData) GetServerId() string {
+ if x != nil {
+ return x.ServerId
+ }
+ return ""
+}
+
+func (x *TokenData) GetUsername() string {
+ if x != nil {
+ return x.Username
+ }
+ return ""
+}
+
+func (x *TokenData) GetAvatar() string {
+ if x != nil && x.Avatar != nil {
+ return *x.Avatar
+ }
+ return ""
+}
+
+// Used in `CheckLoggedIn` endpoint.
+type CheckLoggedInRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *CheckLoggedInRequest) Reset() {
+ *x = CheckLoggedInRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CheckLoggedInRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CheckLoggedInRequest) ProtoMessage() {}
+
+func (x *CheckLoggedInRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[17]
+ 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 CheckLoggedInRequest.ProtoReflect.Descriptor instead.
+func (*CheckLoggedInRequest) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{17}
+}
+
+// Used in `CheckLoggedIn` endpoint.
+type CheckLoggedInResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *CheckLoggedInResponse) Reset() {
+ *x = CheckLoggedInResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CheckLoggedInResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CheckLoggedInResponse) ProtoMessage() {}
+
+func (x *CheckLoggedInResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[18]
+ 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 CheckLoggedInResponse.ProtoReflect.Descriptor instead.
+func (*CheckLoggedInResponse) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{18}
+}
+
+// Choice
+// A step which allows the user to choose from a range of options
+// Allows you to show a heading by specifying title
+type AuthStep_Choice struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // title: the title of the list of choices
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // options: a list of choices, one of these
+ // should be sent in nextstep
+ Options []string `protobuf:"bytes,2,rep,name=options,proto3" json:"options,omitempty"`
+}
+
+func (x *AuthStep_Choice) Reset() {
+ *x = AuthStep_Choice{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AuthStep_Choice) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AuthStep_Choice) ProtoMessage() {}
+
+func (x *AuthStep_Choice) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[19]
+ 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 AuthStep_Choice.ProtoReflect.Descriptor instead.
+func (*AuthStep_Choice) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{3, 0}
+}
+
+func (x *AuthStep_Choice) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *AuthStep_Choice) GetOptions() []string {
+ if x != nil {
+ return x.Options
+ }
+ return nil
+}
+
+// Form
+// A step which requires the user to input information
+// Allows you to show a heading by specifying title
+type AuthStep_Form struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // title: the title of this form
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // fields: all the fields in this form
+ Fields []*AuthStep_Form_FormField `protobuf:"bytes,2,rep,name=fields,proto3" json:"fields,omitempty"`
+}
+
+func (x *AuthStep_Form) Reset() {
+ *x = AuthStep_Form{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AuthStep_Form) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AuthStep_Form) ProtoMessage() {}
+
+func (x *AuthStep_Form) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[20]
+ 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 AuthStep_Form.ProtoReflect.Descriptor instead.
+func (*AuthStep_Form) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{3, 1}
+}
+
+func (x *AuthStep_Form) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *AuthStep_Form) GetFields() []*AuthStep_Form_FormField {
+ if x != nil {
+ return x.Fields
+ }
+ return nil
+}
+
+// Waiting
+// A step which requires the user to perform an external action
+// The title and description should explain to the user
+// what they should do to complete this step
+type AuthStep_Waiting struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // title: the title of this waiting screen
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // description: the explanation of what's being waited on
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+}
+
+func (x *AuthStep_Waiting) Reset() {
+ *x = AuthStep_Waiting{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AuthStep_Waiting) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AuthStep_Waiting) ProtoMessage() {}
+
+func (x *AuthStep_Waiting) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[21]
+ 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 AuthStep_Waiting.ProtoReflect.Descriptor instead.
+func (*AuthStep_Waiting) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{3, 2}
+}
+
+func (x *AuthStep_Waiting) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *AuthStep_Waiting) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+// FormField
+// A field in the form, containing information on how it should
+// be rendered
+// Here is a list of form types that need to be supported:
+// email: a field type that has to contain a valid email
+// password: a field type that has to contain a password
+// new-password: a field type for new passwords
+// text: a field type that has to contain text
+// number: a field type that has to contain a number
+type AuthStep_Form_FormField struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // name: the identifier for the form field
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // type: the type of the form field, as documented above
+ Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
+}
+
+func (x *AuthStep_Form_FormField) Reset() {
+ *x = AuthStep_Form_FormField{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AuthStep_Form_FormField) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AuthStep_Form_FormField) ProtoMessage() {}
+
+func (x *AuthStep_Form_FormField) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[22]
+ 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 AuthStep_Form_FormField.ProtoReflect.Descriptor instead.
+func (*AuthStep_Form_FormField) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{3, 1, 0}
+}
+
+func (x *AuthStep_Form_FormField) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *AuthStep_Form_FormField) GetType() string {
+ if x != nil {
+ return x.Type
+ }
+ return ""
+}
+
+// A simple choice string indicating which option the user chose
+type NextStepRequest_Choice struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // choice: the choice the user picked
+ Choice string `protobuf:"bytes,1,opt,name=choice,proto3" json:"choice,omitempty"`
+}
+
+func (x *NextStepRequest_Choice) Reset() {
+ *x = NextStepRequest_Choice{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *NextStepRequest_Choice) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NextStepRequest_Choice) ProtoMessage() {}
+
+func (x *NextStepRequest_Choice) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[23]
+ 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 NextStepRequest_Choice.ProtoReflect.Descriptor instead.
+func (*NextStepRequest_Choice) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{4, 0}
+}
+
+func (x *NextStepRequest_Choice) GetChoice() string {
+ if x != nil {
+ return x.Choice
+ }
+ return ""
+}
+
+// Form fields can either be bytes, string, or int64.
+type NextStepRequest_FormFields struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // field: the data for a form field
+ //
+ // Types that are assignable to Field:
+ // *NextStepRequest_FormFields_Bytes
+ // *NextStepRequest_FormFields_String_
+ // *NextStepRequest_FormFields_Number
+ Field isNextStepRequest_FormFields_Field `protobuf_oneof:"field"`
+}
+
+func (x *NextStepRequest_FormFields) Reset() {
+ *x = NextStepRequest_FormFields{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *NextStepRequest_FormFields) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NextStepRequest_FormFields) ProtoMessage() {}
+
+func (x *NextStepRequest_FormFields) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[24]
+ 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 NextStepRequest_FormFields.ProtoReflect.Descriptor instead.
+func (*NextStepRequest_FormFields) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{4, 1}
+}
+
+func (m *NextStepRequest_FormFields) GetField() isNextStepRequest_FormFields_Field {
+ if m != nil {
+ return m.Field
+ }
+ return nil
+}
+
+func (x *NextStepRequest_FormFields) GetBytes() []byte {
+ if x, ok := x.GetField().(*NextStepRequest_FormFields_Bytes); ok {
+ return x.Bytes
+ }
+ return nil
+}
+
+func (x *NextStepRequest_FormFields) GetString_() string {
+ if x, ok := x.GetField().(*NextStepRequest_FormFields_String_); ok {
+ return x.String_
+ }
+ return ""
+}
+
+func (x *NextStepRequest_FormFields) GetNumber() int64 {
+ if x, ok := x.GetField().(*NextStepRequest_FormFields_Number); ok {
+ return x.Number
+ }
+ return 0
+}
+
+type isNextStepRequest_FormFields_Field interface {
+ isNextStepRequest_FormFields_Field()
+}
+
+type NextStepRequest_FormFields_Bytes struct {
+ // bytes: the form field's data is a byte array
+ Bytes []byte `protobuf:"bytes,1,opt,name=bytes,proto3,oneof"`
+}
+
+type NextStepRequest_FormFields_String_ struct {
+ // string: the form field's data is a string
+ String_ string `protobuf:"bytes,2,opt,name=string,proto3,oneof"`
+}
+
+type NextStepRequest_FormFields_Number struct {
+ // number: the form field's data is a number
+ Number int64 `protobuf:"varint,3,opt,name=number,proto3,oneof"`
+}
+
+func (*NextStepRequest_FormFields_Bytes) isNextStepRequest_FormFields_Field() {}
+
+func (*NextStepRequest_FormFields_String_) isNextStepRequest_FormFields_Field() {}
+
+func (*NextStepRequest_FormFields_Number) isNextStepRequest_FormFields_Field() {}
+
+// An array of form fields, in the same order they came in from the server
+type NextStepRequest_Form struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // fields: the fields the user filled out
+ Fields []*NextStepRequest_FormFields `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty"`
+}
+
+func (x *NextStepRequest_Form) Reset() {
+ *x = NextStepRequest_Form{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_auth_v1_auth_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *NextStepRequest_Form) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NextStepRequest_Form) ProtoMessage() {}
+
+func (x *NextStepRequest_Form) ProtoReflect() protoreflect.Message {
+ mi := &file_auth_v1_auth_proto_msgTypes[25]
+ 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 NextStepRequest_Form.ProtoReflect.Descriptor instead.
+func (*NextStepRequest_Form) Descriptor() ([]byte, []int) {
+ return file_auth_v1_auth_proto_rawDescGZIP(), []int{4, 2}
+}
+
+func (x *NextStepRequest_Form) GetFields() []*NextStepRequest_FormFields {
+ if x != nil {
+ return x.Fields
+ }
+ return nil
+}
+
+var File_auth_v1_auth_proto protoreflect.FileDescriptor
+
+var file_auth_v1_auth_proto_rawDesc = []byte{
+ 0x0a, 0x12, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61,
+ 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x22, 0x12, 0x0a, 0x10, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x75, 0x74, 0x68,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x2c, 0x0a, 0x11, 0x42, 0x65, 0x67, 0x69, 0x6e,
+ 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07,
+ 0x61, 0x75, 0x74, 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61,
+ 0x75, 0x74, 0x68, 0x49, 0x64, 0x22, 0x47, 0x0a, 0x07, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0c, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xd4,
+ 0x04, 0x0a, 0x08, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x65, 0x70, 0x12, 0x21, 0x0a, 0x0c, 0x66,
+ 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0b, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x55, 0x72, 0x6c, 0x12, 0x1e,
+ 0x0a, 0x0b, 0x63, 0x61, 0x6e, 0x5f, 0x67, 0x6f, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x09, 0x63, 0x61, 0x6e, 0x47, 0x6f, 0x42, 0x61, 0x63, 0x6b, 0x12, 0x3b,
+ 0x0a, 0x06, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76,
+ 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63,
+ 0x65, 0x48, 0x00, 0x52, 0x06, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x35, 0x0a, 0x04, 0x66,
+ 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74,
+ 0x68, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x48, 0x00, 0x52, 0x04, 0x66, 0x6f,
+ 0x72, 0x6d, 0x12, 0x35, 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61,
+ 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00,
+ 0x52, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x07, 0x77, 0x61, 0x69,
+ 0x74, 0x69, 0x6e, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75,
+ 0x74, 0x68, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x57, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x48, 0x00,
+ 0x52, 0x07, 0x77, 0x61, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x1a, 0x38, 0x0a, 0x06, 0x43, 0x68, 0x6f,
+ 0x69, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6f, 0x70, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x1a, 0x94, 0x01, 0x0a, 0x04, 0x46, 0x6f, 0x72, 0x6d, 0x12, 0x14, 0x0a, 0x05,
+ 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74,
+ 0x6c, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75,
+ 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x46,
+ 0x6f, 0x72, 0x6d, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x06, 0x66,
+ 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x33, 0x0a, 0x09, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x69, 0x65,
+ 0x6c, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x1a, 0x41, 0x0a, 0x07, 0x57, 0x61,
+ 0x69, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64,
+ 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a,
+ 0x04, 0x73, 0x74, 0x65, 0x70, 0x22, 0x87, 0x03, 0x0a, 0x0f, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74,
+ 0x65, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x75, 0x74,
+ 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x75, 0x74, 0x68,
+ 0x49, 0x64, 0x12, 0x42, 0x0a, 0x06, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75,
+ 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x48, 0x00, 0x52, 0x06,
+ 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x3c, 0x0a, 0x04, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74, 0x65, 0x70,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x48, 0x00, 0x52, 0x04,
+ 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x20, 0x0a, 0x06, 0x43, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x12, 0x16,
+ 0x0a, 0x06, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
+ 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x1a, 0x61, 0x0a, 0x0a, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x69,
+ 0x65, 0x6c, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x06,
+ 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06,
+ 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x18, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
+ 0x42, 0x07, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x1a, 0x4c, 0x0a, 0x04, 0x46, 0x6f, 0x72,
+ 0x6d, 0x12, 0x44, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74,
+ 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x52,
+ 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x42, 0x06, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x22,
+ 0x42, 0x0a, 0x10, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74,
+ 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x65, 0x70, 0x52, 0x04, 0x73,
+ 0x74, 0x65, 0x70, 0x22, 0x2a, 0x0a, 0x0f, 0x53, 0x74, 0x65, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x75, 0x74, 0x68, 0x49, 0x64, 0x22,
+ 0x42, 0x0a, 0x10, 0x53, 0x74, 0x65, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74,
+ 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x65, 0x70, 0x52, 0x04, 0x73,
+ 0x74, 0x65, 0x70, 0x22, 0x2d, 0x0a, 0x12, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x65,
+ 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x61, 0x75, 0x74,
+ 0x68, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x75, 0x74, 0x68,
+ 0x49, 0x64, 0x22, 0x45, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x65, 0x70,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x73, 0x74, 0x65,
+ 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x53,
+ 0x74, 0x65, 0x70, 0x52, 0x04, 0x73, 0x74, 0x65, 0x70, 0x22, 0x2e, 0x0a, 0x0f, 0x46, 0x65, 0x64,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x10, 0x46, 0x65, 0x64,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a,
+ 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x05, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x0c, 0x0a, 0x0a, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x22, 0x1f, 0x0a, 0x0b, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03,
+ 0x6b, 0x65, 0x79, 0x22, 0x74, 0x0a, 0x15, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x65, 0x64, 0x65,
+ 0x72, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x0a,
+ 0x61, 0x75, 0x74, 0x68, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x6f, 0x6b, 0x65,
+ 0x6e, 0x52, 0x09, 0x61, 0x75, 0x74, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1b, 0x0a, 0x09,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x22, 0x4d, 0x0a, 0x16, 0x4c, 0x6f, 0x67,
+ 0x69, 0x6e, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52,
+ 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x01, 0x0a, 0x09, 0x54, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12,
+ 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08,
+ 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
+ 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x06, 0x61, 0x76, 0x61, 0x74,
+ 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74,
+ 0x61, 0x72, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72,
+ 0x22, 0x16, 0x0a, 0x14, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49,
+ 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x17, 0x0a, 0x15, 0x43, 0x68, 0x65, 0x63,
+ 0x6b, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x32, 0xcc, 0x05, 0x0a, 0x0b, 0x41, 0x75, 0x74, 0x68, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x12, 0x51, 0x0a, 0x08, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x65, 0x12, 0x21, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31,
+ 0x2e, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68,
+ 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x0e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x65, 0x64,
+ 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x12, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46,
+ 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e,
+ 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x65,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x03, 0x4b, 0x65, 0x79,
+ 0x12, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68,
+ 0x2e, 0x76, 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76,
+ 0x31, 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a,
+ 0x09, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x12, 0x22, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x65,
+ 0x67, 0x69, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76,
+ 0x31, 0x2e, 0x42, 0x65, 0x67, 0x69, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74, 0x65, 0x70, 0x12,
+ 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e,
+ 0x76, 0x31, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75,
+ 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x53, 0x74, 0x65, 0x70, 0x42, 0x61,
+ 0x63, 0x6b, 0x12, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75,
+ 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x42, 0x61, 0x63,
+ 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x0b, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x53, 0x74, 0x65, 0x70, 0x73, 0x12, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x53, 0x74, 0x65, 0x70, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76,
+ 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x53, 0x74, 0x65, 0x70, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x67, 0x0a, 0x0d, 0x43, 0x68, 0x65, 0x63, 0x6b,
+ 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63,
+ 0x6b, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68,
+ 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49,
+ 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01,
+ 0x42, 0xbf, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x61, 0x75, 0x74, 0x68, 0x2e, 0x76, 0x31, 0x42, 0x09, 0x41, 0x75, 0x74, 0x68, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c,
+ 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f,
+ 0x67, 0x65, 0x6e, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x76, 0x31, 0x3b, 0x61, 0x75, 0x74, 0x68,
+ 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x41, 0x58, 0xaa, 0x02, 0x10, 0x50, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x41, 0x75, 0x74, 0x68, 0x5c, 0x56, 0x31, 0xe2, 0x02,
+ 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x41, 0x75, 0x74, 0x68, 0x5c, 0x56,
+ 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x12,
+ 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x41, 0x75, 0x74, 0x68, 0x3a, 0x3a,
+ 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_auth_v1_auth_proto_rawDescOnce sync.Once
+ file_auth_v1_auth_proto_rawDescData = file_auth_v1_auth_proto_rawDesc
+)
+
+func file_auth_v1_auth_proto_rawDescGZIP() []byte {
+ file_auth_v1_auth_proto_rawDescOnce.Do(func() {
+ file_auth_v1_auth_proto_rawDescData = protoimpl.X.CompressGZIP(file_auth_v1_auth_proto_rawDescData)
+ })
+ return file_auth_v1_auth_proto_rawDescData
+}
+
+var file_auth_v1_auth_proto_msgTypes = make([]protoimpl.MessageInfo, 26)
+var file_auth_v1_auth_proto_goTypes = []interface{}{
+ (*BeginAuthRequest)(nil), // 0: protocol.auth.v1.BeginAuthRequest
+ (*BeginAuthResponse)(nil), // 1: protocol.auth.v1.BeginAuthResponse
+ (*Session)(nil), // 2: protocol.auth.v1.Session
+ (*AuthStep)(nil), // 3: protocol.auth.v1.AuthStep
+ (*NextStepRequest)(nil), // 4: protocol.auth.v1.NextStepRequest
+ (*NextStepResponse)(nil), // 5: protocol.auth.v1.NextStepResponse
+ (*StepBackRequest)(nil), // 6: protocol.auth.v1.StepBackRequest
+ (*StepBackResponse)(nil), // 7: protocol.auth.v1.StepBackResponse
+ (*StreamStepsRequest)(nil), // 8: protocol.auth.v1.StreamStepsRequest
+ (*StreamStepsResponse)(nil), // 9: protocol.auth.v1.StreamStepsResponse
+ (*FederateRequest)(nil), // 10: protocol.auth.v1.FederateRequest
+ (*FederateResponse)(nil), // 11: protocol.auth.v1.FederateResponse
+ (*KeyRequest)(nil), // 12: protocol.auth.v1.KeyRequest
+ (*KeyResponse)(nil), // 13: protocol.auth.v1.KeyResponse
+ (*LoginFederatedRequest)(nil), // 14: protocol.auth.v1.LoginFederatedRequest
+ (*LoginFederatedResponse)(nil), // 15: protocol.auth.v1.LoginFederatedResponse
+ (*TokenData)(nil), // 16: protocol.auth.v1.TokenData
+ (*CheckLoggedInRequest)(nil), // 17: protocol.auth.v1.CheckLoggedInRequest
+ (*CheckLoggedInResponse)(nil), // 18: protocol.auth.v1.CheckLoggedInResponse
+ (*AuthStep_Choice)(nil), // 19: protocol.auth.v1.AuthStep.Choice
+ (*AuthStep_Form)(nil), // 20: protocol.auth.v1.AuthStep.Form
+ (*AuthStep_Waiting)(nil), // 21: protocol.auth.v1.AuthStep.Waiting
+ (*AuthStep_Form_FormField)(nil), // 22: protocol.auth.v1.AuthStep.Form.FormField
+ (*NextStepRequest_Choice)(nil), // 23: protocol.auth.v1.NextStepRequest.Choice
+ (*NextStepRequest_FormFields)(nil), // 24: protocol.auth.v1.NextStepRequest.FormFields
+ (*NextStepRequest_Form)(nil), // 25: protocol.auth.v1.NextStepRequest.Form
+ (*v1.Token)(nil), // 26: protocol.harmonytypes.v1.Token
+}
+var file_auth_v1_auth_proto_depIdxs = []int32{
+ 19, // 0: protocol.auth.v1.AuthStep.choice:type_name -> protocol.auth.v1.AuthStep.Choice
+ 20, // 1: protocol.auth.v1.AuthStep.form:type_name -> protocol.auth.v1.AuthStep.Form
+ 2, // 2: protocol.auth.v1.AuthStep.session:type_name -> protocol.auth.v1.Session
+ 21, // 3: protocol.auth.v1.AuthStep.waiting:type_name -> protocol.auth.v1.AuthStep.Waiting
+ 23, // 4: protocol.auth.v1.NextStepRequest.choice:type_name -> protocol.auth.v1.NextStepRequest.Choice
+ 25, // 5: protocol.auth.v1.NextStepRequest.form:type_name -> protocol.auth.v1.NextStepRequest.Form
+ 3, // 6: protocol.auth.v1.NextStepResponse.step:type_name -> protocol.auth.v1.AuthStep
+ 3, // 7: protocol.auth.v1.StepBackResponse.step:type_name -> protocol.auth.v1.AuthStep
+ 3, // 8: protocol.auth.v1.StreamStepsResponse.step:type_name -> protocol.auth.v1.AuthStep
+ 26, // 9: protocol.auth.v1.FederateResponse.token:type_name -> protocol.harmonytypes.v1.Token
+ 26, // 10: protocol.auth.v1.LoginFederatedRequest.auth_token:type_name -> protocol.harmonytypes.v1.Token
+ 2, // 11: protocol.auth.v1.LoginFederatedResponse.session:type_name -> protocol.auth.v1.Session
+ 22, // 12: protocol.auth.v1.AuthStep.Form.fields:type_name -> protocol.auth.v1.AuthStep.Form.FormField
+ 24, // 13: protocol.auth.v1.NextStepRequest.Form.fields:type_name -> protocol.auth.v1.NextStepRequest.FormFields
+ 10, // 14: protocol.auth.v1.AuthService.Federate:input_type -> protocol.auth.v1.FederateRequest
+ 14, // 15: protocol.auth.v1.AuthService.LoginFederated:input_type -> protocol.auth.v1.LoginFederatedRequest
+ 12, // 16: protocol.auth.v1.AuthService.Key:input_type -> protocol.auth.v1.KeyRequest
+ 0, // 17: protocol.auth.v1.AuthService.BeginAuth:input_type -> protocol.auth.v1.BeginAuthRequest
+ 4, // 18: protocol.auth.v1.AuthService.NextStep:input_type -> protocol.auth.v1.NextStepRequest
+ 6, // 19: protocol.auth.v1.AuthService.StepBack:input_type -> protocol.auth.v1.StepBackRequest
+ 8, // 20: protocol.auth.v1.AuthService.StreamSteps:input_type -> protocol.auth.v1.StreamStepsRequest
+ 17, // 21: protocol.auth.v1.AuthService.CheckLoggedIn:input_type -> protocol.auth.v1.CheckLoggedInRequest
+ 11, // 22: protocol.auth.v1.AuthService.Federate:output_type -> protocol.auth.v1.FederateResponse
+ 15, // 23: protocol.auth.v1.AuthService.LoginFederated:output_type -> protocol.auth.v1.LoginFederatedResponse
+ 13, // 24: protocol.auth.v1.AuthService.Key:output_type -> protocol.auth.v1.KeyResponse
+ 1, // 25: protocol.auth.v1.AuthService.BeginAuth:output_type -> protocol.auth.v1.BeginAuthResponse
+ 5, // 26: protocol.auth.v1.AuthService.NextStep:output_type -> protocol.auth.v1.NextStepResponse
+ 7, // 27: protocol.auth.v1.AuthService.StepBack:output_type -> protocol.auth.v1.StepBackResponse
+ 9, // 28: protocol.auth.v1.AuthService.StreamSteps:output_type -> protocol.auth.v1.StreamStepsResponse
+ 18, // 29: protocol.auth.v1.AuthService.CheckLoggedIn:output_type -> protocol.auth.v1.CheckLoggedInResponse
+ 22, // [22:30] is the sub-list for method output_type
+ 14, // [14:22] is the sub-list for method input_type
+ 14, // [14:14] is the sub-list for extension type_name
+ 14, // [14:14] is the sub-list for extension extendee
+ 0, // [0:14] is the sub-list for field type_name
+}
+
+func init() { file_auth_v1_auth_proto_init() }
+func file_auth_v1_auth_proto_init() {
+ if File_auth_v1_auth_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_auth_v1_auth_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BeginAuthRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BeginAuthResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Session); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AuthStep); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NextStepRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NextStepResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StepBackRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StepBackResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamStepsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamStepsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FederateRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FederateResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KeyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KeyResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*LoginFederatedRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*LoginFederatedResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TokenData); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CheckLoggedInRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CheckLoggedInResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AuthStep_Choice); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AuthStep_Form); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AuthStep_Waiting); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AuthStep_Form_FormField); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NextStepRequest_Choice); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NextStepRequest_FormFields); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NextStepRequest_Form); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_auth_v1_auth_proto_msgTypes[3].OneofWrappers = []interface{}{
+ (*AuthStep_Choice_)(nil),
+ (*AuthStep_Form_)(nil),
+ (*AuthStep_Session)(nil),
+ (*AuthStep_Waiting_)(nil),
+ }
+ file_auth_v1_auth_proto_msgTypes[4].OneofWrappers = []interface{}{
+ (*NextStepRequest_Choice_)(nil),
+ (*NextStepRequest_Form_)(nil),
+ }
+ file_auth_v1_auth_proto_msgTypes[16].OneofWrappers = []interface{}{}
+ file_auth_v1_auth_proto_msgTypes[24].OneofWrappers = []interface{}{
+ (*NextStepRequest_FormFields_Bytes)(nil),
+ (*NextStepRequest_FormFields_String_)(nil),
+ (*NextStepRequest_FormFields_Number)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_auth_v1_auth_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 26,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_auth_v1_auth_proto_goTypes,
+ DependencyIndexes: file_auth_v1_auth_proto_depIdxs,
+ MessageInfos: file_auth_v1_auth_proto_msgTypes,
+ }.Build()
+ File_auth_v1_auth_proto = out.File
+ file_auth_v1_auth_proto_rawDesc = nil
+ file_auth_v1_auth_proto_goTypes = nil
+ file_auth_v1_auth_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth_hrpc_client.pb.go b/vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth_hrpc_client.pb.go
new file mode 100644
index 00000000..c8b96885
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/auth/v1/auth_hrpc_client.pb.go
@@ -0,0 +1,416 @@
+// Code generated by protoc-gen-go-hrpc. DO NOT EDIT.
+
+package authv1
+
+import (
+ bytes "bytes"
+ context "context"
+ errors "errors"
+ proto "google.golang.org/protobuf/proto"
+ ioutil "io/ioutil"
+ http "net/http"
+ httptest "net/http/httptest"
+)
+
+type AuthServiceClient interface {
+ // Federate with a foreignserver, obtaining a token
+ // you can use to call LoginFederated on it
+ Federate(context.Context, *FederateRequest) (*FederateResponse, error)
+ // Present a token to a foreignserver from a Federate call
+ // on your homeserver in order to login
+ LoginFederated(context.Context, *LoginFederatedRequest) (*LoginFederatedResponse, error)
+ // Returns the public key of this server
+ Key(context.Context, *KeyRequest) (*KeyResponse, error)
+ // Begins an authentication session
+ BeginAuth(context.Context, *BeginAuthRequest) (*BeginAuthResponse, error)
+ // Goes to the next step of the authentication session,
+ // possibly presenting user input
+ NextStep(context.Context, *NextStepRequest) (*NextStepResponse, error)
+ // Goes to the previous step of the authentication session
+ // if possible
+ StepBack(context.Context, *StepBackRequest) (*StepBackResponse, error)
+ // Consume the steps of an authentication session
+ // as a stream
+ StreamSteps(context.Context, chan *StreamStepsRequest) (chan *StreamStepsResponse, error)
+ // Check whether or not you're logged in and the session is valid
+ CheckLoggedIn(context.Context, *CheckLoggedInRequest) (*CheckLoggedInResponse, error)
+}
+
+type HTTPAuthServiceClient struct {
+ Client http.Client
+ BaseURL string
+ WebsocketProto string
+ WebsocketHost string
+ Header http.Header
+}
+
+func (client *HTTPAuthServiceClient) Federate(req *FederateRequest) (*FederateResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.auth.v1.AuthService/Federate", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &FederateResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPAuthServiceClient) LoginFederated(req *LoginFederatedRequest) (*LoginFederatedResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.auth.v1.AuthService/LoginFederated", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &LoginFederatedResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPAuthServiceClient) Key(req *KeyRequest) (*KeyResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.auth.v1.AuthService/Key", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &KeyResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPAuthServiceClient) BeginAuth(req *BeginAuthRequest) (*BeginAuthResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.auth.v1.AuthService/BeginAuth", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &BeginAuthResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPAuthServiceClient) NextStep(req *NextStepRequest) (*NextStepResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.auth.v1.AuthService/NextStep", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &NextStepResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPAuthServiceClient) StepBack(req *StepBackRequest) (*StepBackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.auth.v1.AuthService/StepBack", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &StepBackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPAuthServiceClient) StreamSteps(req *StreamStepsRequest) (chan *StreamStepsResponse, error) {
+ return nil, errors.New("unimplemented")
+}
+func (client *HTTPAuthServiceClient) CheckLoggedIn(req *CheckLoggedInRequest) (*CheckLoggedInResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.auth.v1.AuthService/CheckLoggedIn", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CheckLoggedInResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+
+type HTTPTestAuthServiceClient struct {
+ Client interface {
+ Test(*http.Request, ...int) (*http.Response, error)
+ }
+}
+
+func (client *HTTPTestAuthServiceClient) Federate(req *FederateRequest) (*FederateResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.auth.v1.AuthService/Federate", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &FederateResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestAuthServiceClient) LoginFederated(req *LoginFederatedRequest) (*LoginFederatedResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.auth.v1.AuthService/LoginFederated", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &LoginFederatedResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestAuthServiceClient) Key(req *KeyRequest) (*KeyResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.auth.v1.AuthService/Key", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &KeyResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestAuthServiceClient) BeginAuth(req *BeginAuthRequest) (*BeginAuthResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.auth.v1.AuthService/BeginAuth", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &BeginAuthResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestAuthServiceClient) NextStep(req *NextStepRequest) (*NextStepResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.auth.v1.AuthService/NextStep", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &NextStepResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestAuthServiceClient) StepBack(req *StepBackRequest) (*StepBackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.auth.v1.AuthService/StepBack", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &StepBackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestAuthServiceClient) StreamSteps(req *StreamStepsRequest) (chan *StreamStepsResponse, error) {
+ return nil, errors.New("unimplemented")
+}
+func (client *HTTPTestAuthServiceClient) CheckLoggedIn(req *CheckLoggedInRequest) (*CheckLoggedInResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.auth.v1.AuthService/CheckLoggedIn", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CheckLoggedInResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/chat/v1/channels.pb.go b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/channels.pb.go
new file mode 100644
index 00000000..392dc089
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/channels.pb.go
@@ -0,0 +1,1368 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: chat/v1/channels.proto
+
+package chatv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ v1 "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// What kind the channel is.
+type ChannelKind int32
+
+const (
+ // A text channel. Allows you to simply send messages to a group of people.
+ ChannelKind_CHANNEL_KIND_TEXT_UNSPECIFIED ChannelKind = 0
+ // A voice channel. Allows you to talk to other people with voice.
+ ChannelKind_CHANNEL_KIND_VOICE_MEDIA ChannelKind = 1
+ // A category channel. All channels under this channel down to another
+ // category channel belongs to this category channel.
+ ChannelKind_CHANNEL_KIND_CATEGORY ChannelKind = 2
+)
+
+// Enum value maps for ChannelKind.
+var (
+ ChannelKind_name = map[int32]string{
+ 0: "CHANNEL_KIND_TEXT_UNSPECIFIED",
+ 1: "CHANNEL_KIND_VOICE_MEDIA",
+ 2: "CHANNEL_KIND_CATEGORY",
+ }
+ ChannelKind_value = map[string]int32{
+ "CHANNEL_KIND_TEXT_UNSPECIFIED": 0,
+ "CHANNEL_KIND_VOICE_MEDIA": 1,
+ "CHANNEL_KIND_CATEGORY": 2,
+ }
+)
+
+func (x ChannelKind) Enum() *ChannelKind {
+ p := new(ChannelKind)
+ *p = x
+ return p
+}
+
+func (x ChannelKind) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (ChannelKind) Descriptor() protoreflect.EnumDescriptor {
+ return file_chat_v1_channels_proto_enumTypes[0].Descriptor()
+}
+
+func (ChannelKind) Type() protoreflect.EnumType {
+ return &file_chat_v1_channels_proto_enumTypes[0]
+}
+
+func (x ChannelKind) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use ChannelKind.Descriptor instead.
+func (ChannelKind) EnumDescriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{0}
+}
+
+// An object representing a channel, without the ID.
+type Channel struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The name of this channel.
+ ChannelName string `protobuf:"bytes,1,opt,name=channel_name,json=channelName,proto3" json:"channel_name,omitempty"`
+ // The kind of channel this is.
+ // Data does not get inherently stored in the Channel type
+ // Instead, clients who understand a certain ChannelKind should
+ // fetch them from a separate RPC.
+ Kind ChannelKind `protobuf:"varint,2,opt,name=kind,proto3,enum=protocol.chat.v1.ChannelKind" json:"kind,omitempty"`
+ // The metadata of this channel.
+ Metadata *v1.Metadata `protobuf:"bytes,3,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+}
+
+func (x *Channel) Reset() {
+ *x = Channel{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Channel) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Channel) ProtoMessage() {}
+
+func (x *Channel) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_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 Channel.ProtoReflect.Descriptor instead.
+func (*Channel) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Channel) GetChannelName() string {
+ if x != nil {
+ return x.ChannelName
+ }
+ return ""
+}
+
+func (x *Channel) GetKind() ChannelKind {
+ if x != nil {
+ return x.Kind
+ }
+ return ChannelKind_CHANNEL_KIND_TEXT_UNSPECIFIED
+}
+
+func (x *Channel) GetMetadata() *v1.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// The channel alongside with an ID.
+type ChannelWithId struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the channel.
+ ChannelId uint64 `protobuf:"varint,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // The channel data.
+ Channel *Channel `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
+}
+
+func (x *ChannelWithId) Reset() {
+ *x = ChannelWithId{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ChannelWithId) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChannelWithId) ProtoMessage() {}
+
+func (x *ChannelWithId) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_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 ChannelWithId.ProtoReflect.Descriptor instead.
+func (*ChannelWithId) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ChannelWithId) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *ChannelWithId) GetChannel() *Channel {
+ if x != nil {
+ return x.Channel
+ }
+ return nil
+}
+
+// Channel Kinds:
+//
+// Channel kinds specified in an official Harmony protocol will start with a
+// "h." prefix. Third-party extensions should not use the "h." prefix. If no
+// kind is specified, the channel is a text channel.
+//
+// Kinds indicate additional functionality a channel may have: for example,
+// h.voice can indicate that a channel has voice functionalities alongside
+// the usual text fare.
+//
+// Used in the `CreateChannel` endpoint.
+type CreateChannelRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild to create a channel in.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The name of this channel.
+ ChannelName string `protobuf:"bytes,2,opt,name=channel_name,json=channelName,proto3" json:"channel_name,omitempty"`
+ // The kind of this channel.
+ Kind ChannelKind `protobuf:"varint,3,opt,name=kind,proto3,enum=protocol.chat.v1.ChannelKind" json:"kind,omitempty"`
+ // The metadata of this channel.
+ Metadata *v1.Metadata `protobuf:"bytes,4,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+ // The position of your new channel in the channel list.
+ //
+ // If not specified, it will be put at the bottom of the channel list.
+ Position *v1.ItemPosition `protobuf:"bytes,5,opt,name=position,proto3,oneof" json:"position,omitempty"`
+}
+
+func (x *CreateChannelRequest) Reset() {
+ *x = CreateChannelRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateChannelRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateChannelRequest) ProtoMessage() {}
+
+func (x *CreateChannelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_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 CreateChannelRequest.ProtoReflect.Descriptor instead.
+func (*CreateChannelRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *CreateChannelRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *CreateChannelRequest) GetChannelName() string {
+ if x != nil {
+ return x.ChannelName
+ }
+ return ""
+}
+
+func (x *CreateChannelRequest) GetKind() ChannelKind {
+ if x != nil {
+ return x.Kind
+ }
+ return ChannelKind_CHANNEL_KIND_TEXT_UNSPECIFIED
+}
+
+func (x *CreateChannelRequest) GetMetadata() *v1.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+func (x *CreateChannelRequest) GetPosition() *v1.ItemPosition {
+ if x != nil {
+ return x.Position
+ }
+ return nil
+}
+
+// Used in the `CreateChannel` endpoint.
+type CreateChannelResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the channel that was created.
+ ChannelId uint64 `protobuf:"varint,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *CreateChannelResponse) Reset() {
+ *x = CreateChannelResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateChannelResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateChannelResponse) ProtoMessage() {}
+
+func (x *CreateChannelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_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 CreateChannelResponse.ProtoReflect.Descriptor instead.
+func (*CreateChannelResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *CreateChannelResponse) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+// Used in the `GetGuildChannels` endpoint.
+type GetGuildChannelsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild you want to get channels from.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *GetGuildChannelsRequest) Reset() {
+ *x = GetGuildChannelsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildChannelsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildChannelsRequest) ProtoMessage() {}
+
+func (x *GetGuildChannelsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_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 GetGuildChannelsRequest.ProtoReflect.Descriptor instead.
+func (*GetGuildChannelsRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *GetGuildChannelsRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `GetGuildChannels` endpoint.
+type GetGuildChannelsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Channels' data and ID the server responded with.
+ Channels []*ChannelWithId `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
+}
+
+func (x *GetGuildChannelsResponse) Reset() {
+ *x = GetGuildChannelsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildChannelsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildChannelsResponse) ProtoMessage() {}
+
+func (x *GetGuildChannelsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_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 GetGuildChannelsResponse.ProtoReflect.Descriptor instead.
+func (*GetGuildChannelsResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *GetGuildChannelsResponse) GetChannels() []*ChannelWithId {
+ if x != nil {
+ return x.Channels
+ }
+ return nil
+}
+
+// Used in the `UpdateChannelInformation` endpoint.
+type UpdateChannelInformationRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel you want to change the information of.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // New name to set for this channel.
+ NewName *string `protobuf:"bytes,3,opt,name=new_name,json=newName,proto3,oneof" json:"new_name,omitempty"`
+ // New metadata to set for this channel.
+ NewMetadata *v1.Metadata `protobuf:"bytes,4,opt,name=new_metadata,json=newMetadata,proto3,oneof" json:"new_metadata,omitempty"`
+}
+
+func (x *UpdateChannelInformationRequest) Reset() {
+ *x = UpdateChannelInformationRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateChannelInformationRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateChannelInformationRequest) ProtoMessage() {}
+
+func (x *UpdateChannelInformationRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_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 UpdateChannelInformationRequest.ProtoReflect.Descriptor instead.
+func (*UpdateChannelInformationRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *UpdateChannelInformationRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *UpdateChannelInformationRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *UpdateChannelInformationRequest) GetNewName() string {
+ if x != nil && x.NewName != nil {
+ return *x.NewName
+ }
+ return ""
+}
+
+func (x *UpdateChannelInformationRequest) GetNewMetadata() *v1.Metadata {
+ if x != nil {
+ return x.NewMetadata
+ }
+ return nil
+}
+
+// Used in the `UpdateChannelInformation` endpoint.
+type UpdateChannelInformationResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UpdateChannelInformationResponse) Reset() {
+ *x = UpdateChannelInformationResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateChannelInformationResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateChannelInformationResponse) ProtoMessage() {}
+
+func (x *UpdateChannelInformationResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[7]
+ 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 UpdateChannelInformationResponse.ProtoReflect.Descriptor instead.
+func (*UpdateChannelInformationResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{7}
+}
+
+// Used in the `UpdateChannelOrder` endpoint.
+type UpdateChannelOrderRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that has the channel.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel that you want to move.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // The new position of this channel.
+ NewPosition *v1.ItemPosition `protobuf:"bytes,3,opt,name=new_position,json=newPosition,proto3" json:"new_position,omitempty"`
+}
+
+func (x *UpdateChannelOrderRequest) Reset() {
+ *x = UpdateChannelOrderRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateChannelOrderRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateChannelOrderRequest) ProtoMessage() {}
+
+func (x *UpdateChannelOrderRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[8]
+ 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 UpdateChannelOrderRequest.ProtoReflect.Descriptor instead.
+func (*UpdateChannelOrderRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *UpdateChannelOrderRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *UpdateChannelOrderRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *UpdateChannelOrderRequest) GetNewPosition() *v1.ItemPosition {
+ if x != nil {
+ return x.NewPosition
+ }
+ return nil
+}
+
+// Used in the `UpdateChannelOrder` endpoint.
+type UpdateChannelOrderResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UpdateChannelOrderResponse) Reset() {
+ *x = UpdateChannelOrderResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateChannelOrderResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateChannelOrderResponse) ProtoMessage() {}
+
+func (x *UpdateChannelOrderResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[9]
+ 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 UpdateChannelOrderResponse.ProtoReflect.Descriptor instead.
+func (*UpdateChannelOrderResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{9}
+}
+
+// Request specifiying the order of all channels in a guild at once
+type UpdateAllChannelOrderRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // guild_id: the guild to specify the new channel order for
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // channel_ids: the new order of channel ids
+ ChannelIds []uint64 `protobuf:"varint,2,rep,packed,name=channel_ids,json=channelIds,proto3" json:"channel_ids,omitempty"`
+}
+
+func (x *UpdateAllChannelOrderRequest) Reset() {
+ *x = UpdateAllChannelOrderRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateAllChannelOrderRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateAllChannelOrderRequest) ProtoMessage() {}
+
+func (x *UpdateAllChannelOrderRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[10]
+ 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 UpdateAllChannelOrderRequest.ProtoReflect.Descriptor instead.
+func (*UpdateAllChannelOrderRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *UpdateAllChannelOrderRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *UpdateAllChannelOrderRequest) GetChannelIds() []uint64 {
+ if x != nil {
+ return x.ChannelIds
+ }
+ return nil
+}
+
+// Used in the `UpdateAllChannelOrder` endpoint.
+type UpdateAllChannelOrderResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UpdateAllChannelOrderResponse) Reset() {
+ *x = UpdateAllChannelOrderResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateAllChannelOrderResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateAllChannelOrderResponse) ProtoMessage() {}
+
+func (x *UpdateAllChannelOrderResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[11]
+ 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 UpdateAllChannelOrderResponse.ProtoReflect.Descriptor instead.
+func (*UpdateAllChannelOrderResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{11}
+}
+
+// Used in the `DeleteChannel` endpoint.
+type DeleteChannelRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that has the channel.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel you want to delete.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *DeleteChannelRequest) Reset() {
+ *x = DeleteChannelRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteChannelRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteChannelRequest) ProtoMessage() {}
+
+func (x *DeleteChannelRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[12]
+ 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 DeleteChannelRequest.ProtoReflect.Descriptor instead.
+func (*DeleteChannelRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *DeleteChannelRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *DeleteChannelRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+// Used in the `DeleteChannel` endpoint.
+type DeleteChannelResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteChannelResponse) Reset() {
+ *x = DeleteChannelResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteChannelResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteChannelResponse) ProtoMessage() {}
+
+func (x *DeleteChannelResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[13]
+ 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 DeleteChannelResponse.ProtoReflect.Descriptor instead.
+func (*DeleteChannelResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{13}
+}
+
+// Used in `Typing` endpoint.
+type TypingRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The guild id of the channel the user is typing in.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The channel id of the channel the user is typing in.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *TypingRequest) Reset() {
+ *x = TypingRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TypingRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TypingRequest) ProtoMessage() {}
+
+func (x *TypingRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[14]
+ 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 TypingRequest.ProtoReflect.Descriptor instead.
+func (*TypingRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *TypingRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *TypingRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+// Used in `Typing` endpoint.
+type TypingResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *TypingResponse) Reset() {
+ *x = TypingResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_channels_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TypingResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TypingResponse) ProtoMessage() {}
+
+func (x *TypingResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_channels_proto_msgTypes[15]
+ 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 TypingResponse.ProtoReflect.Descriptor instead.
+func (*TypingResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_channels_proto_rawDescGZIP(), []int{15}
+}
+
+var File_chat_v1_channels_proto protoreflect.FileDescriptor
+
+var file_chat_v1_channels_proto_rawDesc = []byte{
+ 0x0a, 0x16, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65,
+ 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xb1, 0x01, 0x0a, 0x07, 0x43, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4b,
+ 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x43, 0x0a, 0x08, 0x6d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79,
+ 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48,
+ 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0b,
+ 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x63, 0x0a, 0x0d, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x07, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x22, 0xaf, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x43, 0x0a, 0x08, 0x6d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12,
+ 0x47, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72,
+ 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x74, 0x65,
+ 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x01, 0x52, 0x08, 0x70, 0x6f, 0x73,
+ 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69,
+ 0x6f, 0x6e, 0x22, 0x36, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x17, 0x47, 0x65,
+ 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64,
+ 0x22, 0x57, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x08,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x52,
+ 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x22, 0xe5, 0x01, 0x0a, 0x1f, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72,
+ 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a,
+ 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6e, 0x65, 0x77,
+ 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79,
+ 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x48, 0x01, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x22, 0x22, 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x49, 0x0a,
+ 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68,
+ 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49,
+ 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6e, 0x65, 0x77,
+ 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1c, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5a, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x41, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73,
+ 0x18, 0x02, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x73, 0x22, 0x1f, 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x50, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22, 0x17, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x49,
+ 0x0a, 0x0d, 0x54, 0x79, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x22, 0x10, 0x0a, 0x0e, 0x54, 0x79, 0x70,
+ 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0x69, 0x0a, 0x0b, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x48,
+ 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f,
+ 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a,
+ 0x18, 0x43, 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x56, 0x4f,
+ 0x49, 0x43, 0x45, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x43,
+ 0x48, 0x41, 0x4e, 0x4e, 0x45, 0x4c, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x43, 0x41, 0x54, 0x45,
+ 0x47, 0x4f, 0x52, 0x59, 0x10, 0x02, 0x42, 0xc3, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x42,
+ 0x0d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
+ 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72,
+ 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74,
+ 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x63, 0x68,
+ 0x61, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x68, 0x61, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50,
+ 0x43, 0x58, 0xaa, 0x02, 0x10, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x68,
+ 0x61, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x12, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x3a, 0x3a, 0x43, 0x68, 0x61, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_chat_v1_channels_proto_rawDescOnce sync.Once
+ file_chat_v1_channels_proto_rawDescData = file_chat_v1_channels_proto_rawDesc
+)
+
+func file_chat_v1_channels_proto_rawDescGZIP() []byte {
+ file_chat_v1_channels_proto_rawDescOnce.Do(func() {
+ file_chat_v1_channels_proto_rawDescData = protoimpl.X.CompressGZIP(file_chat_v1_channels_proto_rawDescData)
+ })
+ return file_chat_v1_channels_proto_rawDescData
+}
+
+var file_chat_v1_channels_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_chat_v1_channels_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
+var file_chat_v1_channels_proto_goTypes = []interface{}{
+ (ChannelKind)(0), // 0: protocol.chat.v1.ChannelKind
+ (*Channel)(nil), // 1: protocol.chat.v1.Channel
+ (*ChannelWithId)(nil), // 2: protocol.chat.v1.ChannelWithId
+ (*CreateChannelRequest)(nil), // 3: protocol.chat.v1.CreateChannelRequest
+ (*CreateChannelResponse)(nil), // 4: protocol.chat.v1.CreateChannelResponse
+ (*GetGuildChannelsRequest)(nil), // 5: protocol.chat.v1.GetGuildChannelsRequest
+ (*GetGuildChannelsResponse)(nil), // 6: protocol.chat.v1.GetGuildChannelsResponse
+ (*UpdateChannelInformationRequest)(nil), // 7: protocol.chat.v1.UpdateChannelInformationRequest
+ (*UpdateChannelInformationResponse)(nil), // 8: protocol.chat.v1.UpdateChannelInformationResponse
+ (*UpdateChannelOrderRequest)(nil), // 9: protocol.chat.v1.UpdateChannelOrderRequest
+ (*UpdateChannelOrderResponse)(nil), // 10: protocol.chat.v1.UpdateChannelOrderResponse
+ (*UpdateAllChannelOrderRequest)(nil), // 11: protocol.chat.v1.UpdateAllChannelOrderRequest
+ (*UpdateAllChannelOrderResponse)(nil), // 12: protocol.chat.v1.UpdateAllChannelOrderResponse
+ (*DeleteChannelRequest)(nil), // 13: protocol.chat.v1.DeleteChannelRequest
+ (*DeleteChannelResponse)(nil), // 14: protocol.chat.v1.DeleteChannelResponse
+ (*TypingRequest)(nil), // 15: protocol.chat.v1.TypingRequest
+ (*TypingResponse)(nil), // 16: protocol.chat.v1.TypingResponse
+ (*v1.Metadata)(nil), // 17: protocol.harmonytypes.v1.Metadata
+ (*v1.ItemPosition)(nil), // 18: protocol.harmonytypes.v1.ItemPosition
+}
+var file_chat_v1_channels_proto_depIdxs = []int32{
+ 0, // 0: protocol.chat.v1.Channel.kind:type_name -> protocol.chat.v1.ChannelKind
+ 17, // 1: protocol.chat.v1.Channel.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 1, // 2: protocol.chat.v1.ChannelWithId.channel:type_name -> protocol.chat.v1.Channel
+ 0, // 3: protocol.chat.v1.CreateChannelRequest.kind:type_name -> protocol.chat.v1.ChannelKind
+ 17, // 4: protocol.chat.v1.CreateChannelRequest.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 18, // 5: protocol.chat.v1.CreateChannelRequest.position:type_name -> protocol.harmonytypes.v1.ItemPosition
+ 2, // 6: protocol.chat.v1.GetGuildChannelsResponse.channels:type_name -> protocol.chat.v1.ChannelWithId
+ 17, // 7: protocol.chat.v1.UpdateChannelInformationRequest.new_metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 18, // 8: protocol.chat.v1.UpdateChannelOrderRequest.new_position:type_name -> protocol.harmonytypes.v1.ItemPosition
+ 9, // [9:9] is the sub-list for method output_type
+ 9, // [9:9] is the sub-list for method input_type
+ 9, // [9:9] is the sub-list for extension type_name
+ 9, // [9:9] is the sub-list for extension extendee
+ 0, // [0:9] is the sub-list for field type_name
+}
+
+func init() { file_chat_v1_channels_proto_init() }
+func file_chat_v1_channels_proto_init() {
+ if File_chat_v1_channels_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_chat_v1_channels_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Channel); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ChannelWithId); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateChannelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateChannelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildChannelsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildChannelsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateChannelInformationRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateChannelInformationResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateChannelOrderRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateChannelOrderResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateAllChannelOrderRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateAllChannelOrderResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteChannelRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteChannelResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TypingRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TypingResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_chat_v1_channels_proto_msgTypes[0].OneofWrappers = []interface{}{}
+ file_chat_v1_channels_proto_msgTypes[2].OneofWrappers = []interface{}{}
+ file_chat_v1_channels_proto_msgTypes[6].OneofWrappers = []interface{}{}
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_chat_v1_channels_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 16,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_chat_v1_channels_proto_goTypes,
+ DependencyIndexes: file_chat_v1_channels_proto_depIdxs,
+ EnumInfos: file_chat_v1_channels_proto_enumTypes,
+ MessageInfos: file_chat_v1_channels_proto_msgTypes,
+ }.Build()
+ File_chat_v1_channels_proto = out.File
+ file_chat_v1_channels_proto_rawDesc = nil
+ file_chat_v1_channels_proto_goTypes = nil
+ file_chat_v1_channels_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat.pb.go b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat.pb.go
new file mode 100644
index 00000000..0de13c16
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat.pb.go
@@ -0,0 +1,716 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: chat/v1/chat.proto
+
+package chatv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ _ "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+)
+
+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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+var File_chat_v1_chat_proto protoreflect.FileDescriptor
+
+var file_chat_v1_chat_proto_rawDesc = []byte{
+ 0x0a, 0x12, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x63, 0x68, 0x61, 0x74, 0x2f,
+ 0x76, 0x31, 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x16, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x63, 0x68, 0x61, 0x74, 0x2f,
+ 0x76, 0x31, 0x2f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74,
+ 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0xd4, 0x32, 0x0a, 0x0b, 0x43,
+ 0x68, 0x61, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x61, 0x0a, 0x0b, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x5e, 0x0a,
+ 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x23, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x79, 0x0a,
+ 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x12, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x69,
+ 0x72, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x69, 0x72, 0x65,
+ 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x78, 0x0a, 0x12, 0x55, 0x70, 0x67, 0x72,
+ 0x61, 0x64, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x2b,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x54, 0x6f, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55,
+ 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x07, 0x9a, 0x44, 0x04, 0x08, 0x01,
+ 0x20, 0x01, 0x12, 0x7b, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x12, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x1c, 0x9a, 0x44, 0x19, 0x08, 0x01, 0x1a, 0x15, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65,
+ 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12,
+ 0x7f, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x1d, 0x9a, 0x44, 0x1a, 0x08, 0x01, 0x1a, 0x16, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
+ 0x12, 0x64, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x73, 0x74,
+ 0x12, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x73, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75,
+ 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x8a, 0x01, 0x0a, 0x11, 0x49, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x2a, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1c, 0x9a, 0x44, 0x19, 0x08, 0x01, 0x1a, 0x15, 0x69, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x12, 0x73, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e,
+ 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50,
+ 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69,
+ 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x79, 0x0a, 0x13, 0x52, 0x65, 0x6a, 0x65,
+ 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12,
+ 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67,
+ 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44,
+ 0x02, 0x08, 0x01, 0x12, 0x79, 0x0a, 0x13, 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x50, 0x65, 0x6e,
+ 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x2c, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x67,
+ 0x6e, 0x6f, 0x72, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x67, 0x6e, 0x6f,
+ 0x72, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x58,
+ 0x0a, 0x08, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x21, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65,
+ 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x7b, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x13, 0x9a, 0x44, 0x10, 0x08, 0x01, 0x1a, 0x0c, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73,
+ 0x2e, 0x76, 0x69, 0x65, 0x77, 0x12, 0x6d, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65,
+ 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a,
+ 0x44, 0x02, 0x08, 0x01, 0x12, 0x70, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x85, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2b, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65,
+ 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x9a, 0x44, 0x11, 0x08, 0x01, 0x1a,
+ 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x76, 0x69, 0x65, 0x77, 0x12, 0x6d,
+ 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x23, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x9a, 0x44, 0x11, 0x08, 0x01, 0x1a, 0x0d,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x76, 0x69, 0x65, 0x77, 0x12, 0xa3, 0x01,
+ 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66,
+ 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x9a, 0x44, 0x23,
+ 0x08, 0x01, 0x1a, 0x1f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
+ 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2d, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x12, 0xac, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x12, 0x31, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x29, 0x9a, 0x44, 0x26, 0x08, 0x01, 0x1a, 0x22,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e,
+ 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2d, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x8c, 0x01, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1b, 0x9a, 0x44, 0x18, 0x08, 0x01, 0x1a, 0x14, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x6d, 0x6f, 0x76,
+ 0x65, 0x12, 0x95, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x2e, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f,
+ 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f,
+ 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1b, 0x9a, 0x44,
+ 0x18, 0x08, 0x01, 0x1a, 0x14, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x6d, 0x61,
+ 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x82, 0x01, 0x0a, 0x11, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x65, 0x78, 0x74, 0x12,
+ 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x65, 0x78, 0x74,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x9a, 0x44, 0x11, 0x08, 0x01, 0x1a,
+ 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x73, 0x65, 0x6e, 0x64, 0x12, 0x63,
+ 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x24, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x07, 0x9a, 0x44, 0x04, 0x08,
+ 0x01, 0x20, 0x01, 0x12, 0x7b, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x12, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x1c, 0x9a, 0x44, 0x19, 0x08, 0x01, 0x1a, 0x15, 0x69, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x12, 0x7f, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c,
+ 0x65, 0x74, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x1d, 0x9a, 0x44, 0x1a, 0x08, 0x01, 0x1a, 0x16, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x64, 0x65, 0x6c, 0x65, 0x74,
+ 0x65, 0x12, 0x67, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x5b, 0x0a, 0x09, 0x4a, 0x6f,
+ 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 0x69, 0x6e, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4a,
+ 0x6f, 0x69, 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x5e, 0x0a, 0x0a, 0x4c, 0x65, 0x61, 0x76, 0x65,
+ 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x47, 0x75,
+ 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x65,
+ 0x61, 0x76, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x78, 0x0a, 0x0d, 0x54, 0x72, 0x69, 0x67, 0x67,
+ 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x67,
+ 0x67, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x16, 0x9a, 0x44, 0x13, 0x08, 0x01,
+ 0x1a, 0x0f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65,
+ 0x72, 0x12, 0x70, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x12, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x9a,
+ 0x44, 0x11, 0x08, 0x01, 0x1a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x73,
+ 0x65, 0x6e, 0x64, 0x12, 0x76, 0x0a, 0x12, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x61, 0x73, 0x50,
+ 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65,
+ 0x72, 0x79, 0x48, 0x61, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48,
+ 0x61, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x82, 0x01, 0x0a, 0x0e,
+ 0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x27,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x65,
+ 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x1d, 0x9a, 0x44, 0x1a, 0x08, 0x01, 0x1a, 0x16, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x73, 0x65, 0x74,
+ 0x12, 0x82, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x12, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x47, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x9a, 0x44, 0x1a, 0x08, 0x01, 0x1a, 0x16, 0x70,
+ 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
+ 0x65, 0x2e, 0x67, 0x65, 0x74, 0x12, 0x66, 0x0a, 0x08, 0x4d, 0x6f, 0x76, 0x65, 0x52, 0x6f, 0x6c,
+ 0x65, 0x12, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x13, 0x9a, 0x44, 0x10, 0x08, 0x01, 0x1a,
+ 0x0c, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x12, 0x72, 0x0a,
+ 0x0d, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x26,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x10, 0x9a, 0x44, 0x0d, 0x08, 0x01, 0x1a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x2e, 0x67, 0x65,
+ 0x74, 0x12, 0x72, 0x0a, 0x0c, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c,
+ 0x65, 0x12, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x13, 0x9a, 0x44, 0x10, 0x08, 0x01, 0x1a, 0x0c, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x2e, 0x6d,
+ 0x61, 0x6e, 0x61, 0x67, 0x65, 0x12, 0x7b, 0x0a, 0x0f, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x69,
+ 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x13, 0x9a,
+ 0x44, 0x10, 0x08, 0x01, 0x1a, 0x0c, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
+ 0x67, 0x65, 0x12, 0x7b, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f,
+ 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x13, 0x9a, 0x44, 0x10, 0x08,
+ 0x01, 0x1a, 0x0c, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x12,
+ 0x80, 0x01, 0x0a, 0x0f, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f,
+ 0x6c, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x55, 0x73, 0x65,
+ 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x18, 0x9a, 0x44, 0x15, 0x08, 0x01, 0x1a,
+ 0x11, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
+ 0x67, 0x65, 0x12, 0x64, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c,
+ 0x65, 0x73, 0x12, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c,
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74,
+ 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x61, 0x0a, 0x06, 0x54, 0x79, 0x70, 0x69,
+ 0x6e, 0x67, 0x12, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x79, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x14, 0x9a, 0x44, 0x11, 0x08, 0x01, 0x1a, 0x0d, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x73, 0x65, 0x6e, 0x64, 0x12, 0x62, 0x0a, 0x0c, 0x50,
+ 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x25, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50,
+ 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x03, 0x9a, 0x44, 0x00, 0x12,
+ 0x8b, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65,
+ 0x72, 0x73, 0x12, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55,
+ 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0x9a, 0x44, 0x23, 0x08, 0x01, 0x1a, 0x1f, 0x67, 0x75,
+ 0x69, 0x6c, 0x64, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x63, 0x68, 0x61, 0x6e, 0x67,
+ 0x65, 0x2d, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x66, 0x0a,
+ 0x07, 0x42, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x6e, 0x55,
+ 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61,
+ 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x16, 0x9a,
+ 0x44, 0x13, 0x08, 0x01, 0x1a, 0x0f, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
+ 0x65, 0x2e, 0x62, 0x61, 0x6e, 0x12, 0x6a, 0x0a, 0x08, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65,
+ 0x72, 0x12, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x17, 0x9a, 0x44, 0x14, 0x08, 0x01, 0x1a,
+ 0x10, 0x75, 0x73, 0x65, 0x72, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x6b, 0x69, 0x63,
+ 0x6b, 0x12, 0x6e, 0x0a, 0x09, 0x55, 0x6e, 0x62, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x12, 0x22,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x55, 0x6e, 0x62, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x62, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x18, 0x9a, 0x44, 0x15, 0x08, 0x01, 0x1a, 0x11,
+ 0x75, 0x73, 0x65, 0x72, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x2e, 0x75, 0x6e, 0x62, 0x61,
+ 0x6e, 0x12, 0x82, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69,
+ 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x14, 0x9a, 0x44, 0x11, 0x08, 0x01, 0x1a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x73, 0x2e, 0x76, 0x69, 0x65, 0x77, 0x12, 0x71, 0x0a, 0x0a, 0x50, 0x69, 0x6e, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x12, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x69, 0x6e,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x18, 0x9a, 0x44, 0x15, 0x08, 0x01, 0x1a, 0x11, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x2e, 0x70, 0x69, 0x6e, 0x73, 0x2e, 0x61, 0x64, 0x64, 0x12, 0x7a, 0x0a, 0x0c, 0x55, 0x6e, 0x70,
+ 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x70,
+ 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x6e, 0x70, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1b, 0x9a, 0x44, 0x18, 0x08, 0x01, 0x1a,
+ 0x14, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x69, 0x6e, 0x73, 0x2e, 0x72,
+ 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x68, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x28, 0x01, 0x30, 0x01, 0x12,
+ 0x79, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x52, 0x65, 0x61, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1d, 0x9a, 0x44, 0x1a,
+ 0x08, 0x01, 0x1a, 0x16, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x72, 0x65, 0x61,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x61, 0x64, 0x64, 0x12, 0x85, 0x01, 0x0a, 0x0e, 0x52,
+ 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
+ 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x20, 0x9a, 0x44, 0x1d, 0x08, 0x01, 0x1a, 0x19, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x73, 0x2e, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f,
+ 0x76, 0x65, 0x12, 0x6c, 0x0a, 0x0e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72,
+ 0x73, 0x68, 0x69, 0x70, 0x12, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x77, 0x6e,
+ 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x07, 0x9a, 0x44, 0x04, 0x08, 0x01, 0x20, 0x01,
+ 0x12, 0x6f, 0x0a, 0x0f, 0x47, 0x69, 0x76, 0x65, 0x55, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73,
+ 0x68, 0x69, 0x70, 0x12, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x69, 0x76, 0x65, 0x55, 0x70, 0x4f, 0x77, 0x6e,
+ 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x47, 0x69, 0x76, 0x65, 0x55, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x07, 0x9a, 0x44, 0x04, 0x08, 0x01, 0x20,
+ 0x01, 0x42, 0xbf, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x09, 0x43, 0x68, 0x61, 0x74,
+ 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65,
+ 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62,
+ 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x68, 0x61,
+ 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x43, 0x58, 0xaa, 0x02, 0x10, 0x50, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c, 0x56, 0x31, 0xe2,
+ 0x02, 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c,
+ 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02,
+ 0x12, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x43, 0x68, 0x61, 0x74, 0x3a,
+ 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var file_chat_v1_chat_proto_goTypes = []interface{}{
+ (*CreateGuildRequest)(nil), // 0: protocol.chat.v1.CreateGuildRequest
+ (*CreateRoomRequest)(nil), // 1: protocol.chat.v1.CreateRoomRequest
+ (*CreateDirectMessageRequest)(nil), // 2: protocol.chat.v1.CreateDirectMessageRequest
+ (*UpgradeRoomToGuildRequest)(nil), // 3: protocol.chat.v1.UpgradeRoomToGuildRequest
+ (*CreateInviteRequest)(nil), // 4: protocol.chat.v1.CreateInviteRequest
+ (*CreateChannelRequest)(nil), // 5: protocol.chat.v1.CreateChannelRequest
+ (*GetGuildListRequest)(nil), // 6: protocol.chat.v1.GetGuildListRequest
+ (*InviteUserToGuildRequest)(nil), // 7: protocol.chat.v1.InviteUserToGuildRequest
+ (*GetPendingInvitesRequest)(nil), // 8: protocol.chat.v1.GetPendingInvitesRequest
+ (*RejectPendingInviteRequest)(nil), // 9: protocol.chat.v1.RejectPendingInviteRequest
+ (*IgnorePendingInviteRequest)(nil), // 10: protocol.chat.v1.IgnorePendingInviteRequest
+ (*GetGuildRequest)(nil), // 11: protocol.chat.v1.GetGuildRequest
+ (*GetGuildInvitesRequest)(nil), // 12: protocol.chat.v1.GetGuildInvitesRequest
+ (*GetGuildMembersRequest)(nil), // 13: protocol.chat.v1.GetGuildMembersRequest
+ (*GetGuildChannelsRequest)(nil), // 14: protocol.chat.v1.GetGuildChannelsRequest
+ (*GetChannelMessagesRequest)(nil), // 15: protocol.chat.v1.GetChannelMessagesRequest
+ (*GetMessageRequest)(nil), // 16: protocol.chat.v1.GetMessageRequest
+ (*UpdateGuildInformationRequest)(nil), // 17: protocol.chat.v1.UpdateGuildInformationRequest
+ (*UpdateChannelInformationRequest)(nil), // 18: protocol.chat.v1.UpdateChannelInformationRequest
+ (*UpdateChannelOrderRequest)(nil), // 19: protocol.chat.v1.UpdateChannelOrderRequest
+ (*UpdateAllChannelOrderRequest)(nil), // 20: protocol.chat.v1.UpdateAllChannelOrderRequest
+ (*UpdateMessageTextRequest)(nil), // 21: protocol.chat.v1.UpdateMessageTextRequest
+ (*DeleteGuildRequest)(nil), // 22: protocol.chat.v1.DeleteGuildRequest
+ (*DeleteInviteRequest)(nil), // 23: protocol.chat.v1.DeleteInviteRequest
+ (*DeleteChannelRequest)(nil), // 24: protocol.chat.v1.DeleteChannelRequest
+ (*DeleteMessageRequest)(nil), // 25: protocol.chat.v1.DeleteMessageRequest
+ (*JoinGuildRequest)(nil), // 26: protocol.chat.v1.JoinGuildRequest
+ (*LeaveGuildRequest)(nil), // 27: protocol.chat.v1.LeaveGuildRequest
+ (*TriggerActionRequest)(nil), // 28: protocol.chat.v1.TriggerActionRequest
+ (*SendMessageRequest)(nil), // 29: protocol.chat.v1.SendMessageRequest
+ (*QueryHasPermissionRequest)(nil), // 30: protocol.chat.v1.QueryHasPermissionRequest
+ (*SetPermissionsRequest)(nil), // 31: protocol.chat.v1.SetPermissionsRequest
+ (*GetPermissionsRequest)(nil), // 32: protocol.chat.v1.GetPermissionsRequest
+ (*MoveRoleRequest)(nil), // 33: protocol.chat.v1.MoveRoleRequest
+ (*GetGuildRolesRequest)(nil), // 34: protocol.chat.v1.GetGuildRolesRequest
+ (*AddGuildRoleRequest)(nil), // 35: protocol.chat.v1.AddGuildRoleRequest
+ (*ModifyGuildRoleRequest)(nil), // 36: protocol.chat.v1.ModifyGuildRoleRequest
+ (*DeleteGuildRoleRequest)(nil), // 37: protocol.chat.v1.DeleteGuildRoleRequest
+ (*ManageUserRolesRequest)(nil), // 38: protocol.chat.v1.ManageUserRolesRequest
+ (*GetUserRolesRequest)(nil), // 39: protocol.chat.v1.GetUserRolesRequest
+ (*TypingRequest)(nil), // 40: protocol.chat.v1.TypingRequest
+ (*PreviewGuildRequest)(nil), // 41: protocol.chat.v1.PreviewGuildRequest
+ (*GetBannedUsersRequest)(nil), // 42: protocol.chat.v1.GetBannedUsersRequest
+ (*BanUserRequest)(nil), // 43: protocol.chat.v1.BanUserRequest
+ (*KickUserRequest)(nil), // 44: protocol.chat.v1.KickUserRequest
+ (*UnbanUserRequest)(nil), // 45: protocol.chat.v1.UnbanUserRequest
+ (*GetPinnedMessagesRequest)(nil), // 46: protocol.chat.v1.GetPinnedMessagesRequest
+ (*PinMessageRequest)(nil), // 47: protocol.chat.v1.PinMessageRequest
+ (*UnpinMessageRequest)(nil), // 48: protocol.chat.v1.UnpinMessageRequest
+ (*StreamEventsRequest)(nil), // 49: protocol.chat.v1.StreamEventsRequest
+ (*AddReactionRequest)(nil), // 50: protocol.chat.v1.AddReactionRequest
+ (*RemoveReactionRequest)(nil), // 51: protocol.chat.v1.RemoveReactionRequest
+ (*GrantOwnershipRequest)(nil), // 52: protocol.chat.v1.GrantOwnershipRequest
+ (*GiveUpOwnershipRequest)(nil), // 53: protocol.chat.v1.GiveUpOwnershipRequest
+ (*CreateGuildResponse)(nil), // 54: protocol.chat.v1.CreateGuildResponse
+ (*CreateRoomResponse)(nil), // 55: protocol.chat.v1.CreateRoomResponse
+ (*CreateDirectMessageResponse)(nil), // 56: protocol.chat.v1.CreateDirectMessageResponse
+ (*UpgradeRoomToGuildResponse)(nil), // 57: protocol.chat.v1.UpgradeRoomToGuildResponse
+ (*CreateInviteResponse)(nil), // 58: protocol.chat.v1.CreateInviteResponse
+ (*CreateChannelResponse)(nil), // 59: protocol.chat.v1.CreateChannelResponse
+ (*GetGuildListResponse)(nil), // 60: protocol.chat.v1.GetGuildListResponse
+ (*InviteUserToGuildResponse)(nil), // 61: protocol.chat.v1.InviteUserToGuildResponse
+ (*GetPendingInvitesResponse)(nil), // 62: protocol.chat.v1.GetPendingInvitesResponse
+ (*RejectPendingInviteResponse)(nil), // 63: protocol.chat.v1.RejectPendingInviteResponse
+ (*IgnorePendingInviteResponse)(nil), // 64: protocol.chat.v1.IgnorePendingInviteResponse
+ (*GetGuildResponse)(nil), // 65: protocol.chat.v1.GetGuildResponse
+ (*GetGuildInvitesResponse)(nil), // 66: protocol.chat.v1.GetGuildInvitesResponse
+ (*GetGuildMembersResponse)(nil), // 67: protocol.chat.v1.GetGuildMembersResponse
+ (*GetGuildChannelsResponse)(nil), // 68: protocol.chat.v1.GetGuildChannelsResponse
+ (*GetChannelMessagesResponse)(nil), // 69: protocol.chat.v1.GetChannelMessagesResponse
+ (*GetMessageResponse)(nil), // 70: protocol.chat.v1.GetMessageResponse
+ (*UpdateGuildInformationResponse)(nil), // 71: protocol.chat.v1.UpdateGuildInformationResponse
+ (*UpdateChannelInformationResponse)(nil), // 72: protocol.chat.v1.UpdateChannelInformationResponse
+ (*UpdateChannelOrderResponse)(nil), // 73: protocol.chat.v1.UpdateChannelOrderResponse
+ (*UpdateAllChannelOrderResponse)(nil), // 74: protocol.chat.v1.UpdateAllChannelOrderResponse
+ (*UpdateMessageTextResponse)(nil), // 75: protocol.chat.v1.UpdateMessageTextResponse
+ (*DeleteGuildResponse)(nil), // 76: protocol.chat.v1.DeleteGuildResponse
+ (*DeleteInviteResponse)(nil), // 77: protocol.chat.v1.DeleteInviteResponse
+ (*DeleteChannelResponse)(nil), // 78: protocol.chat.v1.DeleteChannelResponse
+ (*DeleteMessageResponse)(nil), // 79: protocol.chat.v1.DeleteMessageResponse
+ (*JoinGuildResponse)(nil), // 80: protocol.chat.v1.JoinGuildResponse
+ (*LeaveGuildResponse)(nil), // 81: protocol.chat.v1.LeaveGuildResponse
+ (*TriggerActionResponse)(nil), // 82: protocol.chat.v1.TriggerActionResponse
+ (*SendMessageResponse)(nil), // 83: protocol.chat.v1.SendMessageResponse
+ (*QueryHasPermissionResponse)(nil), // 84: protocol.chat.v1.QueryHasPermissionResponse
+ (*SetPermissionsResponse)(nil), // 85: protocol.chat.v1.SetPermissionsResponse
+ (*GetPermissionsResponse)(nil), // 86: protocol.chat.v1.GetPermissionsResponse
+ (*MoveRoleResponse)(nil), // 87: protocol.chat.v1.MoveRoleResponse
+ (*GetGuildRolesResponse)(nil), // 88: protocol.chat.v1.GetGuildRolesResponse
+ (*AddGuildRoleResponse)(nil), // 89: protocol.chat.v1.AddGuildRoleResponse
+ (*ModifyGuildRoleResponse)(nil), // 90: protocol.chat.v1.ModifyGuildRoleResponse
+ (*DeleteGuildRoleResponse)(nil), // 91: protocol.chat.v1.DeleteGuildRoleResponse
+ (*ManageUserRolesResponse)(nil), // 92: protocol.chat.v1.ManageUserRolesResponse
+ (*GetUserRolesResponse)(nil), // 93: protocol.chat.v1.GetUserRolesResponse
+ (*TypingResponse)(nil), // 94: protocol.chat.v1.TypingResponse
+ (*PreviewGuildResponse)(nil), // 95: protocol.chat.v1.PreviewGuildResponse
+ (*GetBannedUsersResponse)(nil), // 96: protocol.chat.v1.GetBannedUsersResponse
+ (*BanUserResponse)(nil), // 97: protocol.chat.v1.BanUserResponse
+ (*KickUserResponse)(nil), // 98: protocol.chat.v1.KickUserResponse
+ (*UnbanUserResponse)(nil), // 99: protocol.chat.v1.UnbanUserResponse
+ (*GetPinnedMessagesResponse)(nil), // 100: protocol.chat.v1.GetPinnedMessagesResponse
+ (*PinMessageResponse)(nil), // 101: protocol.chat.v1.PinMessageResponse
+ (*UnpinMessageResponse)(nil), // 102: protocol.chat.v1.UnpinMessageResponse
+ (*StreamEventsResponse)(nil), // 103: protocol.chat.v1.StreamEventsResponse
+ (*AddReactionResponse)(nil), // 104: protocol.chat.v1.AddReactionResponse
+ (*RemoveReactionResponse)(nil), // 105: protocol.chat.v1.RemoveReactionResponse
+ (*GrantOwnershipResponse)(nil), // 106: protocol.chat.v1.GrantOwnershipResponse
+ (*GiveUpOwnershipResponse)(nil), // 107: protocol.chat.v1.GiveUpOwnershipResponse
+}
+var file_chat_v1_chat_proto_depIdxs = []int32{
+ 0, // 0: protocol.chat.v1.ChatService.CreateGuild:input_type -> protocol.chat.v1.CreateGuildRequest
+ 1, // 1: protocol.chat.v1.ChatService.CreateRoom:input_type -> protocol.chat.v1.CreateRoomRequest
+ 2, // 2: protocol.chat.v1.ChatService.CreateDirectMessage:input_type -> protocol.chat.v1.CreateDirectMessageRequest
+ 3, // 3: protocol.chat.v1.ChatService.UpgradeRoomToGuild:input_type -> protocol.chat.v1.UpgradeRoomToGuildRequest
+ 4, // 4: protocol.chat.v1.ChatService.CreateInvite:input_type -> protocol.chat.v1.CreateInviteRequest
+ 5, // 5: protocol.chat.v1.ChatService.CreateChannel:input_type -> protocol.chat.v1.CreateChannelRequest
+ 6, // 6: protocol.chat.v1.ChatService.GetGuildList:input_type -> protocol.chat.v1.GetGuildListRequest
+ 7, // 7: protocol.chat.v1.ChatService.InviteUserToGuild:input_type -> protocol.chat.v1.InviteUserToGuildRequest
+ 8, // 8: protocol.chat.v1.ChatService.GetPendingInvites:input_type -> protocol.chat.v1.GetPendingInvitesRequest
+ 9, // 9: protocol.chat.v1.ChatService.RejectPendingInvite:input_type -> protocol.chat.v1.RejectPendingInviteRequest
+ 10, // 10: protocol.chat.v1.ChatService.IgnorePendingInvite:input_type -> protocol.chat.v1.IgnorePendingInviteRequest
+ 11, // 11: protocol.chat.v1.ChatService.GetGuild:input_type -> protocol.chat.v1.GetGuildRequest
+ 12, // 12: protocol.chat.v1.ChatService.GetGuildInvites:input_type -> protocol.chat.v1.GetGuildInvitesRequest
+ 13, // 13: protocol.chat.v1.ChatService.GetGuildMembers:input_type -> protocol.chat.v1.GetGuildMembersRequest
+ 14, // 14: protocol.chat.v1.ChatService.GetGuildChannels:input_type -> protocol.chat.v1.GetGuildChannelsRequest
+ 15, // 15: protocol.chat.v1.ChatService.GetChannelMessages:input_type -> protocol.chat.v1.GetChannelMessagesRequest
+ 16, // 16: protocol.chat.v1.ChatService.GetMessage:input_type -> protocol.chat.v1.GetMessageRequest
+ 17, // 17: protocol.chat.v1.ChatService.UpdateGuildInformation:input_type -> protocol.chat.v1.UpdateGuildInformationRequest
+ 18, // 18: protocol.chat.v1.ChatService.UpdateChannelInformation:input_type -> protocol.chat.v1.UpdateChannelInformationRequest
+ 19, // 19: protocol.chat.v1.ChatService.UpdateChannelOrder:input_type -> protocol.chat.v1.UpdateChannelOrderRequest
+ 20, // 20: protocol.chat.v1.ChatService.UpdateAllChannelOrder:input_type -> protocol.chat.v1.UpdateAllChannelOrderRequest
+ 21, // 21: protocol.chat.v1.ChatService.UpdateMessageText:input_type -> protocol.chat.v1.UpdateMessageTextRequest
+ 22, // 22: protocol.chat.v1.ChatService.DeleteGuild:input_type -> protocol.chat.v1.DeleteGuildRequest
+ 23, // 23: protocol.chat.v1.ChatService.DeleteInvite:input_type -> protocol.chat.v1.DeleteInviteRequest
+ 24, // 24: protocol.chat.v1.ChatService.DeleteChannel:input_type -> protocol.chat.v1.DeleteChannelRequest
+ 25, // 25: protocol.chat.v1.ChatService.DeleteMessage:input_type -> protocol.chat.v1.DeleteMessageRequest
+ 26, // 26: protocol.chat.v1.ChatService.JoinGuild:input_type -> protocol.chat.v1.JoinGuildRequest
+ 27, // 27: protocol.chat.v1.ChatService.LeaveGuild:input_type -> protocol.chat.v1.LeaveGuildRequest
+ 28, // 28: protocol.chat.v1.ChatService.TriggerAction:input_type -> protocol.chat.v1.TriggerActionRequest
+ 29, // 29: protocol.chat.v1.ChatService.SendMessage:input_type -> protocol.chat.v1.SendMessageRequest
+ 30, // 30: protocol.chat.v1.ChatService.QueryHasPermission:input_type -> protocol.chat.v1.QueryHasPermissionRequest
+ 31, // 31: protocol.chat.v1.ChatService.SetPermissions:input_type -> protocol.chat.v1.SetPermissionsRequest
+ 32, // 32: protocol.chat.v1.ChatService.GetPermissions:input_type -> protocol.chat.v1.GetPermissionsRequest
+ 33, // 33: protocol.chat.v1.ChatService.MoveRole:input_type -> protocol.chat.v1.MoveRoleRequest
+ 34, // 34: protocol.chat.v1.ChatService.GetGuildRoles:input_type -> protocol.chat.v1.GetGuildRolesRequest
+ 35, // 35: protocol.chat.v1.ChatService.AddGuildRole:input_type -> protocol.chat.v1.AddGuildRoleRequest
+ 36, // 36: protocol.chat.v1.ChatService.ModifyGuildRole:input_type -> protocol.chat.v1.ModifyGuildRoleRequest
+ 37, // 37: protocol.chat.v1.ChatService.DeleteGuildRole:input_type -> protocol.chat.v1.DeleteGuildRoleRequest
+ 38, // 38: protocol.chat.v1.ChatService.ManageUserRoles:input_type -> protocol.chat.v1.ManageUserRolesRequest
+ 39, // 39: protocol.chat.v1.ChatService.GetUserRoles:input_type -> protocol.chat.v1.GetUserRolesRequest
+ 40, // 40: protocol.chat.v1.ChatService.Typing:input_type -> protocol.chat.v1.TypingRequest
+ 41, // 41: protocol.chat.v1.ChatService.PreviewGuild:input_type -> protocol.chat.v1.PreviewGuildRequest
+ 42, // 42: protocol.chat.v1.ChatService.GetBannedUsers:input_type -> protocol.chat.v1.GetBannedUsersRequest
+ 43, // 43: protocol.chat.v1.ChatService.BanUser:input_type -> protocol.chat.v1.BanUserRequest
+ 44, // 44: protocol.chat.v1.ChatService.KickUser:input_type -> protocol.chat.v1.KickUserRequest
+ 45, // 45: protocol.chat.v1.ChatService.UnbanUser:input_type -> protocol.chat.v1.UnbanUserRequest
+ 46, // 46: protocol.chat.v1.ChatService.GetPinnedMessages:input_type -> protocol.chat.v1.GetPinnedMessagesRequest
+ 47, // 47: protocol.chat.v1.ChatService.PinMessage:input_type -> protocol.chat.v1.PinMessageRequest
+ 48, // 48: protocol.chat.v1.ChatService.UnpinMessage:input_type -> protocol.chat.v1.UnpinMessageRequest
+ 49, // 49: protocol.chat.v1.ChatService.StreamEvents:input_type -> protocol.chat.v1.StreamEventsRequest
+ 50, // 50: protocol.chat.v1.ChatService.AddReaction:input_type -> protocol.chat.v1.AddReactionRequest
+ 51, // 51: protocol.chat.v1.ChatService.RemoveReaction:input_type -> protocol.chat.v1.RemoveReactionRequest
+ 52, // 52: protocol.chat.v1.ChatService.GrantOwnership:input_type -> protocol.chat.v1.GrantOwnershipRequest
+ 53, // 53: protocol.chat.v1.ChatService.GiveUpOwnership:input_type -> protocol.chat.v1.GiveUpOwnershipRequest
+ 54, // 54: protocol.chat.v1.ChatService.CreateGuild:output_type -> protocol.chat.v1.CreateGuildResponse
+ 55, // 55: protocol.chat.v1.ChatService.CreateRoom:output_type -> protocol.chat.v1.CreateRoomResponse
+ 56, // 56: protocol.chat.v1.ChatService.CreateDirectMessage:output_type -> protocol.chat.v1.CreateDirectMessageResponse
+ 57, // 57: protocol.chat.v1.ChatService.UpgradeRoomToGuild:output_type -> protocol.chat.v1.UpgradeRoomToGuildResponse
+ 58, // 58: protocol.chat.v1.ChatService.CreateInvite:output_type -> protocol.chat.v1.CreateInviteResponse
+ 59, // 59: protocol.chat.v1.ChatService.CreateChannel:output_type -> protocol.chat.v1.CreateChannelResponse
+ 60, // 60: protocol.chat.v1.ChatService.GetGuildList:output_type -> protocol.chat.v1.GetGuildListResponse
+ 61, // 61: protocol.chat.v1.ChatService.InviteUserToGuild:output_type -> protocol.chat.v1.InviteUserToGuildResponse
+ 62, // 62: protocol.chat.v1.ChatService.GetPendingInvites:output_type -> protocol.chat.v1.GetPendingInvitesResponse
+ 63, // 63: protocol.chat.v1.ChatService.RejectPendingInvite:output_type -> protocol.chat.v1.RejectPendingInviteResponse
+ 64, // 64: protocol.chat.v1.ChatService.IgnorePendingInvite:output_type -> protocol.chat.v1.IgnorePendingInviteResponse
+ 65, // 65: protocol.chat.v1.ChatService.GetGuild:output_type -> protocol.chat.v1.GetGuildResponse
+ 66, // 66: protocol.chat.v1.ChatService.GetGuildInvites:output_type -> protocol.chat.v1.GetGuildInvitesResponse
+ 67, // 67: protocol.chat.v1.ChatService.GetGuildMembers:output_type -> protocol.chat.v1.GetGuildMembersResponse
+ 68, // 68: protocol.chat.v1.ChatService.GetGuildChannels:output_type -> protocol.chat.v1.GetGuildChannelsResponse
+ 69, // 69: protocol.chat.v1.ChatService.GetChannelMessages:output_type -> protocol.chat.v1.GetChannelMessagesResponse
+ 70, // 70: protocol.chat.v1.ChatService.GetMessage:output_type -> protocol.chat.v1.GetMessageResponse
+ 71, // 71: protocol.chat.v1.ChatService.UpdateGuildInformation:output_type -> protocol.chat.v1.UpdateGuildInformationResponse
+ 72, // 72: protocol.chat.v1.ChatService.UpdateChannelInformation:output_type -> protocol.chat.v1.UpdateChannelInformationResponse
+ 73, // 73: protocol.chat.v1.ChatService.UpdateChannelOrder:output_type -> protocol.chat.v1.UpdateChannelOrderResponse
+ 74, // 74: protocol.chat.v1.ChatService.UpdateAllChannelOrder:output_type -> protocol.chat.v1.UpdateAllChannelOrderResponse
+ 75, // 75: protocol.chat.v1.ChatService.UpdateMessageText:output_type -> protocol.chat.v1.UpdateMessageTextResponse
+ 76, // 76: protocol.chat.v1.ChatService.DeleteGuild:output_type -> protocol.chat.v1.DeleteGuildResponse
+ 77, // 77: protocol.chat.v1.ChatService.DeleteInvite:output_type -> protocol.chat.v1.DeleteInviteResponse
+ 78, // 78: protocol.chat.v1.ChatService.DeleteChannel:output_type -> protocol.chat.v1.DeleteChannelResponse
+ 79, // 79: protocol.chat.v1.ChatService.DeleteMessage:output_type -> protocol.chat.v1.DeleteMessageResponse
+ 80, // 80: protocol.chat.v1.ChatService.JoinGuild:output_type -> protocol.chat.v1.JoinGuildResponse
+ 81, // 81: protocol.chat.v1.ChatService.LeaveGuild:output_type -> protocol.chat.v1.LeaveGuildResponse
+ 82, // 82: protocol.chat.v1.ChatService.TriggerAction:output_type -> protocol.chat.v1.TriggerActionResponse
+ 83, // 83: protocol.chat.v1.ChatService.SendMessage:output_type -> protocol.chat.v1.SendMessageResponse
+ 84, // 84: protocol.chat.v1.ChatService.QueryHasPermission:output_type -> protocol.chat.v1.QueryHasPermissionResponse
+ 85, // 85: protocol.chat.v1.ChatService.SetPermissions:output_type -> protocol.chat.v1.SetPermissionsResponse
+ 86, // 86: protocol.chat.v1.ChatService.GetPermissions:output_type -> protocol.chat.v1.GetPermissionsResponse
+ 87, // 87: protocol.chat.v1.ChatService.MoveRole:output_type -> protocol.chat.v1.MoveRoleResponse
+ 88, // 88: protocol.chat.v1.ChatService.GetGuildRoles:output_type -> protocol.chat.v1.GetGuildRolesResponse
+ 89, // 89: protocol.chat.v1.ChatService.AddGuildRole:output_type -> protocol.chat.v1.AddGuildRoleResponse
+ 90, // 90: protocol.chat.v1.ChatService.ModifyGuildRole:output_type -> protocol.chat.v1.ModifyGuildRoleResponse
+ 91, // 91: protocol.chat.v1.ChatService.DeleteGuildRole:output_type -> protocol.chat.v1.DeleteGuildRoleResponse
+ 92, // 92: protocol.chat.v1.ChatService.ManageUserRoles:output_type -> protocol.chat.v1.ManageUserRolesResponse
+ 93, // 93: protocol.chat.v1.ChatService.GetUserRoles:output_type -> protocol.chat.v1.GetUserRolesResponse
+ 94, // 94: protocol.chat.v1.ChatService.Typing:output_type -> protocol.chat.v1.TypingResponse
+ 95, // 95: protocol.chat.v1.ChatService.PreviewGuild:output_type -> protocol.chat.v1.PreviewGuildResponse
+ 96, // 96: protocol.chat.v1.ChatService.GetBannedUsers:output_type -> protocol.chat.v1.GetBannedUsersResponse
+ 97, // 97: protocol.chat.v1.ChatService.BanUser:output_type -> protocol.chat.v1.BanUserResponse
+ 98, // 98: protocol.chat.v1.ChatService.KickUser:output_type -> protocol.chat.v1.KickUserResponse
+ 99, // 99: protocol.chat.v1.ChatService.UnbanUser:output_type -> protocol.chat.v1.UnbanUserResponse
+ 100, // 100: protocol.chat.v1.ChatService.GetPinnedMessages:output_type -> protocol.chat.v1.GetPinnedMessagesResponse
+ 101, // 101: protocol.chat.v1.ChatService.PinMessage:output_type -> protocol.chat.v1.PinMessageResponse
+ 102, // 102: protocol.chat.v1.ChatService.UnpinMessage:output_type -> protocol.chat.v1.UnpinMessageResponse
+ 103, // 103: protocol.chat.v1.ChatService.StreamEvents:output_type -> protocol.chat.v1.StreamEventsResponse
+ 104, // 104: protocol.chat.v1.ChatService.AddReaction:output_type -> protocol.chat.v1.AddReactionResponse
+ 105, // 105: protocol.chat.v1.ChatService.RemoveReaction:output_type -> protocol.chat.v1.RemoveReactionResponse
+ 106, // 106: protocol.chat.v1.ChatService.GrantOwnership:output_type -> protocol.chat.v1.GrantOwnershipResponse
+ 107, // 107: protocol.chat.v1.ChatService.GiveUpOwnership:output_type -> protocol.chat.v1.GiveUpOwnershipResponse
+ 54, // [54:108] is the sub-list for method output_type
+ 0, // [0:54] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_chat_v1_chat_proto_init() }
+func file_chat_v1_chat_proto_init() {
+ if File_chat_v1_chat_proto != nil {
+ return
+ }
+ file_chat_v1_guilds_proto_init()
+ file_chat_v1_channels_proto_init()
+ file_chat_v1_messages_proto_init()
+ file_chat_v1_permissions_proto_init()
+ file_chat_v1_stream_proto_init()
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_chat_v1_chat_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 0,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_chat_v1_chat_proto_goTypes,
+ DependencyIndexes: file_chat_v1_chat_proto_depIdxs,
+ }.Build()
+ File_chat_v1_chat_proto = out.File
+ file_chat_v1_chat_proto_rawDesc = nil
+ file_chat_v1_chat_proto_goTypes = nil
+ file_chat_v1_chat_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat_hrpc_client.pb.go b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat_hrpc_client.pb.go
new file mode 100644
index 00000000..62c02415
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/chat_hrpc_client.pb.go
@@ -0,0 +1,2946 @@
+// Code generated by protoc-gen-go-hrpc. DO NOT EDIT.
+
+package chatv1
+
+import (
+ bytes "bytes"
+ context "context"
+ errors "errors"
+ websocket "github.com/gorilla/websocket"
+ proto "google.golang.org/protobuf/proto"
+ ioutil "io/ioutil"
+ http "net/http"
+ httptest "net/http/httptest"
+ url "net/url"
+)
+
+type ChatServiceClient interface {
+ // Endpoint to create a guild.
+ CreateGuild(context.Context, *CreateGuildRequest) (*CreateGuildResponse, error)
+ // Endpoint to create a "room" guild.
+ CreateRoom(context.Context, *CreateRoomRequest) (*CreateRoomResponse, error)
+ // Endpoint to create a "direct message" guild.
+ //
+ // - The inviter and the invitee that join the created guild will both be owners.
+ // - The guild should be created on the server that inviter is on.
+ // - The server should send a guild invite to the invitee (specified in the request),
+ // using the `UserInvited` postbox event if the invitee is on another server,
+ // otherwise see the below item.
+ // - The server should process this as follows: adding the invite to their pending
+ // invite list and sending an `InviteReceived` event over their event stream if
+ // the invitee is on this server.
+ // - The invitee may or may not use the invite. Only the invitee may use the invite.
+ CreateDirectMessage(context.Context, *CreateDirectMessageRequest) (*CreateDirectMessageResponse, error)
+ // Endpoint to upgrade a "room" guild to a "normal" guild.
+ UpgradeRoomToGuild(context.Context, *UpgradeRoomToGuildRequest) (*UpgradeRoomToGuildResponse, error)
+ // Endpoint to create an invite.
+ CreateInvite(context.Context, *CreateInviteRequest) (*CreateInviteResponse, error)
+ // Endpoint to create a channel.
+ CreateChannel(context.Context, *CreateChannelRequest) (*CreateChannelResponse, error)
+ // Endpoint to get your guild list.
+ GetGuildList(context.Context, *GetGuildListRequest) (*GetGuildListResponse, error)
+ // Endpoint to invite a user to a guild.
+ InviteUserToGuild(context.Context, *InviteUserToGuildRequest) (*InviteUserToGuildResponse, error)
+ // Endpoint to get your pending invites.
+ GetPendingInvites(context.Context, *GetPendingInvitesRequest) (*GetPendingInvitesResponse, error)
+ // Endpoint to reject (delete with notification to the inviter) an invite
+ // from your pending invite list.
+ //
+ // If the invitee is on a different server than the inviter, the invitee's
+ // server should send a `UserRejectedInvite` postbox event to the inviter's
+ // server.
+ //
+ // The "notification" is sending a `InviteRejected` stream event to the
+ // inviter. If the guild's kind is `DirectMessage`, the server should also
+ // set the `rejected` field of the guild's kind to `true`.
+ RejectPendingInvite(context.Context, *RejectPendingInviteRequest) (*RejectPendingInviteResponse, error)
+ // Endpoint to ignore (delete without notification to the inviter) an
+ // invite from your pending invite list.
+ IgnorePendingInvite(context.Context, *IgnorePendingInviteRequest) (*IgnorePendingInviteResponse, error)
+ // Endpoint to get information about a guild.
+ GetGuild(context.Context, *GetGuildRequest) (*GetGuildResponse, error)
+ // Endpoint to get the invites of a guild.
+ //
+ // This requires the "invites.view" permission.
+ GetGuildInvites(context.Context, *GetGuildInvitesRequest) (*GetGuildInvitesResponse, error)
+ // Endpoint to get the members of a guild.
+ GetGuildMembers(context.Context, *GetGuildMembersRequest) (*GetGuildMembersResponse, error)
+ // Endpoint to get the channels of a guild.
+ //
+ // You will only be informed of channels you have the "messages.view"
+ // permission for.
+ GetGuildChannels(context.Context, *GetGuildChannelsRequest) (*GetGuildChannelsResponse, error)
+ // Endpoint to get the messages from a guild channel.
+ GetChannelMessages(context.Context, *GetChannelMessagesRequest) (*GetChannelMessagesResponse, error)
+ // Endpoint to get a single message from a guild channel.
+ GetMessage(context.Context, *GetMessageRequest) (*GetMessageResponse, error)
+ // Endpoint to update a guild's information.
+ UpdateGuildInformation(context.Context, *UpdateGuildInformationRequest) (*UpdateGuildInformationResponse, error)
+ // Endpoint to update a channel's information.
+ UpdateChannelInformation(context.Context, *UpdateChannelInformationRequest) (*UpdateChannelInformationResponse, error)
+ // Endpoint to change the position of a channel in the channel list.
+ UpdateChannelOrder(context.Context, *UpdateChannelOrderRequest) (*UpdateChannelOrderResponse, error)
+ // Endpoint to change the position of all channels in the guild;
+ // must specifcy all channels or fails
+ UpdateAllChannelOrder(context.Context, *UpdateAllChannelOrderRequest) (*UpdateAllChannelOrderResponse, error)
+ // Endpoint to change the text of a message.
+ UpdateMessageText(context.Context, *UpdateMessageTextRequest) (*UpdateMessageTextResponse, error)
+ // Endpoint to delete a guild.
+ // Can only be invoked if there's one owner.
+ DeleteGuild(context.Context, *DeleteGuildRequest) (*DeleteGuildResponse, error)
+ // Endpoint to delete an invite.
+ DeleteInvite(context.Context, *DeleteInviteRequest) (*DeleteInviteResponse, error)
+ // Endpoint to delete a channel.
+ DeleteChannel(context.Context, *DeleteChannelRequest) (*DeleteChannelResponse, error)
+ // Endpoint to delete a message.
+ //
+ // This requires the "messages.manage.delete" permission if you are not the
+ // message author.
+ DeleteMessage(context.Context, *DeleteMessageRequest) (*DeleteMessageResponse, error)
+ // Endpoint to join a guild.
+ //
+ // - If the invite used is in a user's "pending invites" list, it should be
+ // removed from there.
+ JoinGuild(context.Context, *JoinGuildRequest) (*JoinGuildResponse, error)
+ // Endpoint to leave a guild.
+ //
+ // - If you're the only owner, you can't leave a guild. Exception to this
+ // rule are "direct message" guilds.
+ // - When the last member in a "direct message" guild leaves it, that guild
+ // should be deleted.
+ LeaveGuild(context.Context, *LeaveGuildRequest) (*LeaveGuildResponse, error)
+ // Endpont to trigger an action.
+ TriggerAction(context.Context, *TriggerActionRequest) (*TriggerActionResponse, error)
+ // Endpoint to send a message.
+ SendMessage(context.Context, *SendMessageRequest) (*SendMessageResponse, error)
+ // Endpoint to query if a user has a permission.
+ QueryHasPermission(context.Context, *QueryHasPermissionRequest) (*QueryHasPermissionResponse, error)
+ // Endpoint to set permissions for a role in a guild.
+ SetPermissions(context.Context, *SetPermissionsRequest) (*SetPermissionsResponse, error)
+ // Endpoint to get permissions for a role in a guild.
+ GetPermissions(context.Context, *GetPermissionsRequest) (*GetPermissionsResponse, error)
+ // Endpoint to change the position of a role in the role list in a guild.
+ MoveRole(context.Context, *MoveRoleRequest) (*MoveRoleResponse, error)
+ // Endpoint to get the roles from a guild.
+ GetGuildRoles(context.Context, *GetGuildRolesRequest) (*GetGuildRolesResponse, error)
+ // Endpoint to add a role to a guild.
+ AddGuildRole(context.Context, *AddGuildRoleRequest) (*AddGuildRoleResponse, error)
+ // Endpoint to a modify a role from a guild.
+ ModifyGuildRole(context.Context, *ModifyGuildRoleRequest) (*ModifyGuildRoleResponse, error)
+ // Endpoint to delete a role from a guild.
+ DeleteGuildRole(context.Context, *DeleteGuildRoleRequest) (*DeleteGuildRoleResponse, error)
+ // Endpoint to manage the roles of a guild member.
+ ManageUserRoles(context.Context, *ManageUserRolesRequest) (*ManageUserRolesResponse, error)
+ // Endpoint to get the roles a guild member has.
+ GetUserRoles(context.Context, *GetUserRolesRequest) (*GetUserRolesResponse, error)
+ // Endpoint to send a typing notification in a guild channel.
+ Typing(context.Context, *TypingRequest) (*TypingResponse, error)
+ // Endpoint to "preview" a guild, which returns some information about a
+ // guild.
+ //
+ // - Guilds with the "direct message" kind can only be previewed
+ // by the user who is invited to the guild.
+ PreviewGuild(context.Context, *PreviewGuildRequest) (*PreviewGuildResponse, error)
+ // Endpoint to get banned users in a guild.
+ GetBannedUsers(context.Context, *GetBannedUsersRequest) (*GetBannedUsersResponse, error)
+ // Endpoint to ban a user from a guild.
+ BanUser(context.Context, *BanUserRequest) (*BanUserResponse, error)
+ // Endpoint to kick a user from a guild.
+ KickUser(context.Context, *KickUserRequest) (*KickUserResponse, error)
+ // Endpoint to unban a user from a guild.
+ UnbanUser(context.Context, *UnbanUserRequest) (*UnbanUserResponse, error)
+ // Endpoint to get all pinned messages in a guild channel.
+ GetPinnedMessages(context.Context, *GetPinnedMessagesRequest) (*GetPinnedMessagesResponse, error)
+ // Endpoint to pin a message in a guild channel.
+ PinMessage(context.Context, *PinMessageRequest) (*PinMessageResponse, error)
+ // Endpoint to unpin a message in a guild channel.
+ UnpinMessage(context.Context, *UnpinMessageRequest) (*UnpinMessageResponse, error)
+ // Endpoint to stream events from the homeserver.
+ StreamEvents(context.Context, chan *StreamEventsRequest) (chan *StreamEventsResponse, error)
+ // Endpoint to add a reaction to a message.
+ AddReaction(context.Context, *AddReactionRequest) (*AddReactionResponse, error)
+ // Endpoint to remove a reaction from a message.
+ RemoveReaction(context.Context, *RemoveReactionRequest) (*RemoveReactionResponse, error)
+ // Endpoint to give ownership to someone else.
+ GrantOwnership(context.Context, *GrantOwnershipRequest) (*GrantOwnershipResponse, error)
+ // Endpoint to give up your own ownership.
+ // Requires that at least one other person will still be owner.
+ GiveUpOwnership(context.Context, *GiveUpOwnershipRequest) (*GiveUpOwnershipResponse, error)
+}
+
+type HTTPChatServiceClient struct {
+ Client http.Client
+ BaseURL string
+ WebsocketProto string
+ WebsocketHost string
+ Header http.Header
+}
+
+func (client *HTTPChatServiceClient) CreateGuild(req *CreateGuildRequest) (*CreateGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/CreateGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) CreateRoom(req *CreateRoomRequest) (*CreateRoomResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/CreateRoom", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateRoomResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) CreateDirectMessage(req *CreateDirectMessageRequest) (*CreateDirectMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/CreateDirectMessage", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateDirectMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UpgradeRoomToGuild(req *UpgradeRoomToGuildRequest) (*UpgradeRoomToGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UpgradeRoomToGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpgradeRoomToGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) CreateInvite(req *CreateInviteRequest) (*CreateInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/CreateInvite", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) CreateChannel(req *CreateChannelRequest) (*CreateChannelResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/CreateChannel", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateChannelResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetGuildList(req *GetGuildListRequest) (*GetGuildListResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetGuildList", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildListResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) InviteUserToGuild(req *InviteUserToGuildRequest) (*InviteUserToGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/InviteUserToGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &InviteUserToGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetPendingInvites(req *GetPendingInvitesRequest) (*GetPendingInvitesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetPendingInvites", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetPendingInvitesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) RejectPendingInvite(req *RejectPendingInviteRequest) (*RejectPendingInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/RejectPendingInvite", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &RejectPendingInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) IgnorePendingInvite(req *IgnorePendingInviteRequest) (*IgnorePendingInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/IgnorePendingInvite", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &IgnorePendingInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetGuild(req *GetGuildRequest) (*GetGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetGuildInvites(req *GetGuildInvitesRequest) (*GetGuildInvitesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetGuildInvites", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildInvitesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetGuildMembers(req *GetGuildMembersRequest) (*GetGuildMembersResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetGuildMembers", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildMembersResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetGuildChannels(req *GetGuildChannelsRequest) (*GetGuildChannelsResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetGuildChannels", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildChannelsResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetChannelMessages(req *GetChannelMessagesRequest) (*GetChannelMessagesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetChannelMessages", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetChannelMessagesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetMessage(req *GetMessageRequest) (*GetMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetMessage", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UpdateGuildInformation(req *UpdateGuildInformationRequest) (*UpdateGuildInformationResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UpdateGuildInformation", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateGuildInformationResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UpdateChannelInformation(req *UpdateChannelInformationRequest) (*UpdateChannelInformationResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UpdateChannelInformation", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateChannelInformationResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UpdateChannelOrder(req *UpdateChannelOrderRequest) (*UpdateChannelOrderResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UpdateChannelOrder", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateChannelOrderResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UpdateAllChannelOrder(req *UpdateAllChannelOrderRequest) (*UpdateAllChannelOrderResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UpdateAllChannelOrder", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateAllChannelOrderResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UpdateMessageText(req *UpdateMessageTextRequest) (*UpdateMessageTextResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UpdateMessageText", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateMessageTextResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) DeleteGuild(req *DeleteGuildRequest) (*DeleteGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/DeleteGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) DeleteInvite(req *DeleteInviteRequest) (*DeleteInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/DeleteInvite", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) DeleteChannel(req *DeleteChannelRequest) (*DeleteChannelResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/DeleteChannel", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteChannelResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) DeleteMessage(req *DeleteMessageRequest) (*DeleteMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/DeleteMessage", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) JoinGuild(req *JoinGuildRequest) (*JoinGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/JoinGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &JoinGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) LeaveGuild(req *LeaveGuildRequest) (*LeaveGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/LeaveGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &LeaveGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) TriggerAction(req *TriggerActionRequest) (*TriggerActionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/TriggerAction", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &TriggerActionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) SendMessage(req *SendMessageRequest) (*SendMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/SendMessage", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &SendMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) QueryHasPermission(req *QueryHasPermissionRequest) (*QueryHasPermissionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/QueryHasPermission", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &QueryHasPermissionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) SetPermissions(req *SetPermissionsRequest) (*SetPermissionsResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/SetPermissions", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &SetPermissionsResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetPermissions(req *GetPermissionsRequest) (*GetPermissionsResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetPermissions", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetPermissionsResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) MoveRole(req *MoveRoleRequest) (*MoveRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/MoveRole", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &MoveRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetGuildRoles(req *GetGuildRolesRequest) (*GetGuildRolesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetGuildRoles", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildRolesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) AddGuildRole(req *AddGuildRoleRequest) (*AddGuildRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/AddGuildRole", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &AddGuildRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) ModifyGuildRole(req *ModifyGuildRoleRequest) (*ModifyGuildRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/ModifyGuildRole", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &ModifyGuildRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) DeleteGuildRole(req *DeleteGuildRoleRequest) (*DeleteGuildRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/DeleteGuildRole", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteGuildRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) ManageUserRoles(req *ManageUserRolesRequest) (*ManageUserRolesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/ManageUserRoles", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &ManageUserRolesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetUserRoles(req *GetUserRolesRequest) (*GetUserRolesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetUserRoles", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetUserRolesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) Typing(req *TypingRequest) (*TypingResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/Typing", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &TypingResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) PreviewGuild(req *PreviewGuildRequest) (*PreviewGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/PreviewGuild", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &PreviewGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetBannedUsers(req *GetBannedUsersRequest) (*GetBannedUsersResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetBannedUsers", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetBannedUsersResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) BanUser(req *BanUserRequest) (*BanUserResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/BanUser", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &BanUserResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) KickUser(req *KickUserRequest) (*KickUserResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/KickUser", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &KickUserResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UnbanUser(req *UnbanUserRequest) (*UnbanUserResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UnbanUser", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UnbanUserResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GetPinnedMessages(req *GetPinnedMessagesRequest) (*GetPinnedMessagesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GetPinnedMessages", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetPinnedMessagesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) PinMessage(req *PinMessageRequest) (*PinMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/PinMessage", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &PinMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) UnpinMessage(req *UnpinMessageRequest) (*UnpinMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/UnpinMessage", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UnpinMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) StreamEvents(req chan *StreamEventsRequest) (chan *StreamEventsResponse, error) {
+ u := url.URL{Scheme: client.WebsocketProto, Host: client.WebsocketHost, Path: "/protocol.chat.v1.ChatService/StreamEvents"}
+ inC := req
+ outC := make(chan *StreamEventsResponse)
+ c, _, err := websocket.DefaultDialer.Dial(u.String(), client.Header)
+ if err != nil {
+ return nil, err
+ }
+ go func() {
+ defer c.Close()
+ msgs := make(chan []byte)
+ go func() {
+ for {
+ _, message, err := c.ReadMessage()
+ if err != nil {
+ close(msgs)
+ break
+ }
+ msgs <- message
+ }
+ }()
+ for {
+ select {
+ case msg, ok := <-msgs:
+ if !ok {
+ close(inC)
+ close(outC)
+ return
+ }
+ thing := &StreamEventsResponse{}
+ err := proto.Unmarshal(msg[1:], thing)
+ if err != nil {
+ close(inC)
+ close(outC)
+ return
+ }
+ outC <- thing
+ case send, ok := <-inC:
+ if !ok {
+ close(outC)
+ return
+ }
+ data, err := proto.Marshal(send)
+ if err != nil {
+ return
+ }
+ err = c.WriteMessage(websocket.BinaryMessage, data)
+ if err != nil {
+ return
+ }
+ }
+ }
+ }()
+ return outC, nil
+}
+func (client *HTTPChatServiceClient) AddReaction(req *AddReactionRequest) (*AddReactionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/AddReaction", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &AddReactionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) RemoveReaction(req *RemoveReactionRequest) (*RemoveReactionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/RemoveReaction", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &RemoveReactionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GrantOwnership(req *GrantOwnershipRequest) (*GrantOwnershipResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GrantOwnership", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GrantOwnershipResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPChatServiceClient) GiveUpOwnership(req *GiveUpOwnershipRequest) (*GiveUpOwnershipResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.chat.v1.ChatService/GiveUpOwnership", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GiveUpOwnershipResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+
+type HTTPTestChatServiceClient struct {
+ Client interface {
+ Test(*http.Request, ...int) (*http.Response, error)
+ }
+}
+
+func (client *HTTPTestChatServiceClient) CreateGuild(req *CreateGuildRequest) (*CreateGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/CreateGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) CreateRoom(req *CreateRoomRequest) (*CreateRoomResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/CreateRoom", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateRoomResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) CreateDirectMessage(req *CreateDirectMessageRequest) (*CreateDirectMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/CreateDirectMessage", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateDirectMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UpgradeRoomToGuild(req *UpgradeRoomToGuildRequest) (*UpgradeRoomToGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UpgradeRoomToGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpgradeRoomToGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) CreateInvite(req *CreateInviteRequest) (*CreateInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/CreateInvite", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) CreateChannel(req *CreateChannelRequest) (*CreateChannelResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/CreateChannel", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateChannelResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetGuildList(req *GetGuildListRequest) (*GetGuildListResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetGuildList", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildListResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) InviteUserToGuild(req *InviteUserToGuildRequest) (*InviteUserToGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/InviteUserToGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &InviteUserToGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetPendingInvites(req *GetPendingInvitesRequest) (*GetPendingInvitesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetPendingInvites", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetPendingInvitesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) RejectPendingInvite(req *RejectPendingInviteRequest) (*RejectPendingInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/RejectPendingInvite", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &RejectPendingInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) IgnorePendingInvite(req *IgnorePendingInviteRequest) (*IgnorePendingInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/IgnorePendingInvite", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &IgnorePendingInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetGuild(req *GetGuildRequest) (*GetGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetGuildInvites(req *GetGuildInvitesRequest) (*GetGuildInvitesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetGuildInvites", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildInvitesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetGuildMembers(req *GetGuildMembersRequest) (*GetGuildMembersResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetGuildMembers", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildMembersResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetGuildChannels(req *GetGuildChannelsRequest) (*GetGuildChannelsResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetGuildChannels", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildChannelsResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetChannelMessages(req *GetChannelMessagesRequest) (*GetChannelMessagesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetChannelMessages", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetChannelMessagesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetMessage(req *GetMessageRequest) (*GetMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetMessage", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UpdateGuildInformation(req *UpdateGuildInformationRequest) (*UpdateGuildInformationResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UpdateGuildInformation", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateGuildInformationResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UpdateChannelInformation(req *UpdateChannelInformationRequest) (*UpdateChannelInformationResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UpdateChannelInformation", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateChannelInformationResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UpdateChannelOrder(req *UpdateChannelOrderRequest) (*UpdateChannelOrderResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UpdateChannelOrder", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateChannelOrderResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UpdateAllChannelOrder(req *UpdateAllChannelOrderRequest) (*UpdateAllChannelOrderResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UpdateAllChannelOrder", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateAllChannelOrderResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UpdateMessageText(req *UpdateMessageTextRequest) (*UpdateMessageTextResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UpdateMessageText", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateMessageTextResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) DeleteGuild(req *DeleteGuildRequest) (*DeleteGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/DeleteGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) DeleteInvite(req *DeleteInviteRequest) (*DeleteInviteResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/DeleteInvite", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteInviteResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) DeleteChannel(req *DeleteChannelRequest) (*DeleteChannelResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/DeleteChannel", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteChannelResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) DeleteMessage(req *DeleteMessageRequest) (*DeleteMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/DeleteMessage", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) JoinGuild(req *JoinGuildRequest) (*JoinGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/JoinGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &JoinGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) LeaveGuild(req *LeaveGuildRequest) (*LeaveGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/LeaveGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &LeaveGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) TriggerAction(req *TriggerActionRequest) (*TriggerActionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/TriggerAction", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &TriggerActionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) SendMessage(req *SendMessageRequest) (*SendMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/SendMessage", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &SendMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) QueryHasPermission(req *QueryHasPermissionRequest) (*QueryHasPermissionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/QueryHasPermission", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &QueryHasPermissionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) SetPermissions(req *SetPermissionsRequest) (*SetPermissionsResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/SetPermissions", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &SetPermissionsResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetPermissions(req *GetPermissionsRequest) (*GetPermissionsResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetPermissions", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetPermissionsResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) MoveRole(req *MoveRoleRequest) (*MoveRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/MoveRole", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &MoveRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetGuildRoles(req *GetGuildRolesRequest) (*GetGuildRolesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetGuildRoles", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetGuildRolesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) AddGuildRole(req *AddGuildRoleRequest) (*AddGuildRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/AddGuildRole", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &AddGuildRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) ModifyGuildRole(req *ModifyGuildRoleRequest) (*ModifyGuildRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/ModifyGuildRole", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &ModifyGuildRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) DeleteGuildRole(req *DeleteGuildRoleRequest) (*DeleteGuildRoleResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/DeleteGuildRole", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteGuildRoleResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) ManageUserRoles(req *ManageUserRolesRequest) (*ManageUserRolesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/ManageUserRoles", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &ManageUserRolesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetUserRoles(req *GetUserRolesRequest) (*GetUserRolesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetUserRoles", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetUserRolesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) Typing(req *TypingRequest) (*TypingResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/Typing", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &TypingResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) PreviewGuild(req *PreviewGuildRequest) (*PreviewGuildResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/PreviewGuild", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &PreviewGuildResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetBannedUsers(req *GetBannedUsersRequest) (*GetBannedUsersResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetBannedUsers", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetBannedUsersResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) BanUser(req *BanUserRequest) (*BanUserResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/BanUser", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &BanUserResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) KickUser(req *KickUserRequest) (*KickUserResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/KickUser", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &KickUserResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UnbanUser(req *UnbanUserRequest) (*UnbanUserResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UnbanUser", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UnbanUserResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GetPinnedMessages(req *GetPinnedMessagesRequest) (*GetPinnedMessagesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GetPinnedMessages", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetPinnedMessagesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) PinMessage(req *PinMessageRequest) (*PinMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/PinMessage", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &PinMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) UnpinMessage(req *UnpinMessageRequest) (*UnpinMessageResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/UnpinMessage", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UnpinMessageResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) StreamEvents(req chan *StreamEventsRequest) (chan *StreamEventsResponse, error) {
+ return nil, errors.New("unimplemented")
+}
+func (client *HTTPTestChatServiceClient) AddReaction(req *AddReactionRequest) (*AddReactionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/AddReaction", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &AddReactionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) RemoveReaction(req *RemoveReactionRequest) (*RemoveReactionResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/RemoveReaction", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &RemoveReactionResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GrantOwnership(req *GrantOwnershipRequest) (*GrantOwnershipResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GrantOwnership", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GrantOwnershipResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestChatServiceClient) GiveUpOwnership(req *GiveUpOwnershipRequest) (*GiveUpOwnershipResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.chat.v1.ChatService/GiveUpOwnership", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GiveUpOwnershipResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/chat/v1/guilds.pb.go b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/guilds.pb.go
new file mode 100644
index 00000000..b60867fb
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/guilds.pb.go
@@ -0,0 +1,4279 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: chat/v1/guilds.proto
+
+package chatv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ v1 "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// A reason for why a user has left a guild.
+type LeaveReason int32
+
+const (
+ // The user left the guild willingly.
+ LeaveReason_LEAVE_REASON_WILLINGLY_UNSPECIFIED LeaveReason = 0
+ // The user was banned from the guild.
+ LeaveReason_LEAVE_REASON_BANNED LeaveReason = 1
+ // The user was kicked from the guild.
+ LeaveReason_LEAVE_REASON_KICKED LeaveReason = 2
+)
+
+// Enum value maps for LeaveReason.
+var (
+ LeaveReason_name = map[int32]string{
+ 0: "LEAVE_REASON_WILLINGLY_UNSPECIFIED",
+ 1: "LEAVE_REASON_BANNED",
+ 2: "LEAVE_REASON_KICKED",
+ }
+ LeaveReason_value = map[string]int32{
+ "LEAVE_REASON_WILLINGLY_UNSPECIFIED": 0,
+ "LEAVE_REASON_BANNED": 1,
+ "LEAVE_REASON_KICKED": 2,
+ }
+)
+
+func (x LeaveReason) Enum() *LeaveReason {
+ p := new(LeaveReason)
+ *p = x
+ return p
+}
+
+func (x LeaveReason) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (LeaveReason) Descriptor() protoreflect.EnumDescriptor {
+ return file_chat_v1_guilds_proto_enumTypes[0].Descriptor()
+}
+
+func (LeaveReason) Type() protoreflect.EnumType {
+ return &file_chat_v1_guilds_proto_enumTypes[0]
+}
+
+func (x LeaveReason) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use LeaveReason.Descriptor instead.
+func (LeaveReason) EnumDescriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{0}
+}
+
+// The kind of a guild.
+type GuildKind struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The kind. If this is empty, assume it is `Normal`.
+ //
+ // Types that are assignable to Kind:
+ // *GuildKind_Normal_
+ // *GuildKind_Room_
+ // *GuildKind_DirectMessage_
+ Kind isGuildKind_Kind `protobuf_oneof:"kind"`
+}
+
+func (x *GuildKind) Reset() {
+ *x = GuildKind{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GuildKind) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GuildKind) ProtoMessage() {}
+
+func (x *GuildKind) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_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 GuildKind.ProtoReflect.Descriptor instead.
+func (*GuildKind) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{0}
+}
+
+func (m *GuildKind) GetKind() isGuildKind_Kind {
+ if m != nil {
+ return m.Kind
+ }
+ return nil
+}
+
+func (x *GuildKind) GetNormal() *GuildKind_Normal {
+ if x, ok := x.GetKind().(*GuildKind_Normal_); ok {
+ return x.Normal
+ }
+ return nil
+}
+
+func (x *GuildKind) GetRoom() *GuildKind_Room {
+ if x, ok := x.GetKind().(*GuildKind_Room_); ok {
+ return x.Room
+ }
+ return nil
+}
+
+func (x *GuildKind) GetDirectMessage() *GuildKind_DirectMessage {
+ if x, ok := x.GetKind().(*GuildKind_DirectMessage_); ok {
+ return x.DirectMessage
+ }
+ return nil
+}
+
+type isGuildKind_Kind interface {
+ isGuildKind_Kind()
+}
+
+type GuildKind_Normal_ struct {
+ // A "normal" guild.
+ Normal *GuildKind_Normal `protobuf:"bytes,1,opt,name=normal,proto3,oneof"`
+}
+
+type GuildKind_Room_ struct {
+ // A "room" guild.
+ Room *GuildKind_Room `protobuf:"bytes,2,opt,name=room,proto3,oneof"`
+}
+
+type GuildKind_DirectMessage_ struct {
+ // A "direct message" guild.
+ DirectMessage *GuildKind_DirectMessage `protobuf:"bytes,3,opt,name=direct_message,json=directMessage,proto3,oneof"`
+}
+
+func (*GuildKind_Normal_) isGuildKind_Kind() {}
+
+func (*GuildKind_Room_) isGuildKind_Kind() {}
+
+func (*GuildKind_DirectMessage_) isGuildKind_Kind() {}
+
+// Object representing a guild without the ID part.
+type Guild struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The name of the guild.
+ //
+ // This will be empty if the guild kind is "direct message". See
+ // the documentation of "direct message" guild kind on how to display
+ // a name for those guilds.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The picture HMC of the guild.
+ Picture *string `protobuf:"bytes,2,opt,name=picture,proto3,oneof" json:"picture,omitempty"`
+ // User ID of the owners of the guild.
+ OwnerIds []uint64 `protobuf:"varint,3,rep,packed,name=owner_ids,json=ownerIds,proto3" json:"owner_ids,omitempty"`
+ // The kind of this guild.
+ Kind *GuildKind `protobuf:"bytes,4,opt,name=kind,proto3" json:"kind,omitempty"`
+ // Metadata of the guild.
+ Metadata *v1.Metadata `protobuf:"bytes,5,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+}
+
+func (x *Guild) Reset() {
+ *x = Guild{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Guild) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Guild) ProtoMessage() {}
+
+func (x *Guild) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_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 Guild.ProtoReflect.Descriptor instead.
+func (*Guild) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *Guild) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Guild) GetPicture() string {
+ if x != nil && x.Picture != nil {
+ return *x.Picture
+ }
+ return ""
+}
+
+func (x *Guild) GetOwnerIds() []uint64 {
+ if x != nil {
+ return x.OwnerIds
+ }
+ return nil
+}
+
+func (x *Guild) GetKind() *GuildKind {
+ if x != nil {
+ return x.Kind
+ }
+ return nil
+}
+
+func (x *Guild) GetMetadata() *v1.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// Object representing an invite without the ID part.
+type Invite struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Possible uses of this invite. A use of `0` means infinite uses.
+ PossibleUses uint32 `protobuf:"varint,1,opt,name=possible_uses,json=possibleUses,proto3" json:"possible_uses,omitempty"`
+ // Total use count of this invite.
+ UseCount uint32 `protobuf:"varint,2,opt,name=use_count,json=useCount,proto3" json:"use_count,omitempty"`
+}
+
+func (x *Invite) Reset() {
+ *x = Invite{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Invite) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Invite) ProtoMessage() {}
+
+func (x *Invite) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_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 Invite.ProtoReflect.Descriptor instead.
+func (*Invite) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *Invite) GetPossibleUses() uint32 {
+ if x != nil {
+ return x.PossibleUses
+ }
+ return 0
+}
+
+func (x *Invite) GetUseCount() uint32 {
+ if x != nil {
+ return x.UseCount
+ }
+ return 0
+}
+
+// Invite with ID.
+type InviteWithId struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the invite.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+ // The invite data.
+ Invite *Invite `protobuf:"bytes,2,opt,name=invite,proto3" json:"invite,omitempty"`
+}
+
+func (x *InviteWithId) Reset() {
+ *x = InviteWithId{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InviteWithId) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InviteWithId) ProtoMessage() {}
+
+func (x *InviteWithId) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_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 InviteWithId.ProtoReflect.Descriptor instead.
+func (*InviteWithId) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *InviteWithId) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+func (x *InviteWithId) GetInvite() *Invite {
+ if x != nil {
+ return x.Invite
+ }
+ return nil
+}
+
+// A pending invite.
+type PendingInvite struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Invite ID of the invite.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+ // Server ID of the server the inviter is on.
+ ServerId *string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3,oneof" json:"server_id,omitempty"`
+ // User ID of the inviter.
+ InviterId uint64 `protobuf:"varint,3,opt,name=inviter_id,json=inviterId,proto3" json:"inviter_id,omitempty"`
+}
+
+func (x *PendingInvite) Reset() {
+ *x = PendingInvite{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PendingInvite) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PendingInvite) ProtoMessage() {}
+
+func (x *PendingInvite) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_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 PendingInvite.ProtoReflect.Descriptor instead.
+func (*PendingInvite) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *PendingInvite) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+func (x *PendingInvite) GetServerId() string {
+ if x != nil && x.ServerId != nil {
+ return *x.ServerId
+ }
+ return ""
+}
+
+func (x *PendingInvite) GetInviterId() uint64 {
+ if x != nil {
+ return x.InviterId
+ }
+ return 0
+}
+
+// Object representing a guild list entry.
+type GuildListEntry struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of this guild entry.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Server ID of the homeserver of this guild.
+ ServerId string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3" json:"server_id,omitempty"`
+}
+
+func (x *GuildListEntry) Reset() {
+ *x = GuildListEntry{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GuildListEntry) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GuildListEntry) ProtoMessage() {}
+
+func (x *GuildListEntry) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_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 GuildListEntry.ProtoReflect.Descriptor instead.
+func (*GuildListEntry) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *GuildListEntry) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *GuildListEntry) GetServerId() string {
+ if x != nil {
+ return x.ServerId
+ }
+ return ""
+}
+
+// Request type used in `CreateGuild` endpoint.
+type CreateGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The name of the guild.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The picture HMC of the guild.
+ Picture *string `protobuf:"bytes,2,opt,name=picture,proto3,oneof" json:"picture,omitempty"`
+ // Metadata of the guild.
+ Metadata *v1.Metadata `protobuf:"bytes,3,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+}
+
+func (x *CreateGuildRequest) Reset() {
+ *x = CreateGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateGuildRequest) ProtoMessage() {}
+
+func (x *CreateGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_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 CreateGuildRequest.ProtoReflect.Descriptor instead.
+func (*CreateGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *CreateGuildRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *CreateGuildRequest) GetPicture() string {
+ if x != nil && x.Picture != nil {
+ return *x.Picture
+ }
+ return ""
+}
+
+func (x *CreateGuildRequest) GetMetadata() *v1.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// Used in the `CreateGuild` endpoint.
+type CreateGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that was created.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *CreateGuildResponse) Reset() {
+ *x = CreateGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateGuildResponse) ProtoMessage() {}
+
+func (x *CreateGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[7]
+ 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 CreateGuildResponse.ProtoReflect.Descriptor instead.
+func (*CreateGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *CreateGuildResponse) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Request type used in `CreateRoom` endpoint.
+type CreateRoomRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The name of the guild.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The picture HMC of the guild.
+ Picture *string `protobuf:"bytes,2,opt,name=picture,proto3,oneof" json:"picture,omitempty"`
+ // Metadata of the guild.
+ Metadata *v1.Metadata `protobuf:"bytes,3,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+}
+
+func (x *CreateRoomRequest) Reset() {
+ *x = CreateRoomRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateRoomRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateRoomRequest) ProtoMessage() {}
+
+func (x *CreateRoomRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[8]
+ 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 CreateRoomRequest.ProtoReflect.Descriptor instead.
+func (*CreateRoomRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *CreateRoomRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *CreateRoomRequest) GetPicture() string {
+ if x != nil && x.Picture != nil {
+ return *x.Picture
+ }
+ return ""
+}
+
+func (x *CreateRoomRequest) GetMetadata() *v1.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// Used in the `CreateRoom` endpoint.
+type CreateRoomResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that was created.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *CreateRoomResponse) Reset() {
+ *x = CreateRoomResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateRoomResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateRoomResponse) ProtoMessage() {}
+
+func (x *CreateRoomResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[9]
+ 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 CreateRoomResponse.ProtoReflect.Descriptor instead.
+func (*CreateRoomResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *CreateRoomResponse) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `CreateDirectMessage` endpoint.
+type CreateDirectMessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The user name of the user to DM with.
+ UserName string `protobuf:"bytes,1,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
+ // The server ID of the server the user is on.
+ //
+ // Should be left unspecified if it's a user on the homeserver.
+ ServerId *string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3,oneof" json:"server_id,omitempty"`
+}
+
+func (x *CreateDirectMessageRequest) Reset() {
+ *x = CreateDirectMessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateDirectMessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateDirectMessageRequest) ProtoMessage() {}
+
+func (x *CreateDirectMessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[10]
+ 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 CreateDirectMessageRequest.ProtoReflect.Descriptor instead.
+func (*CreateDirectMessageRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *CreateDirectMessageRequest) GetUserName() string {
+ if x != nil {
+ return x.UserName
+ }
+ return ""
+}
+
+func (x *CreateDirectMessageRequest) GetServerId() string {
+ if x != nil && x.ServerId != nil {
+ return *x.ServerId
+ }
+ return ""
+}
+
+// Used in the `CreateDirectMessage` endpoint.
+type CreateDirectMessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the just created "direct message" guild.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *CreateDirectMessageResponse) Reset() {
+ *x = CreateDirectMessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateDirectMessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateDirectMessageResponse) ProtoMessage() {}
+
+func (x *CreateDirectMessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[11]
+ 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 CreateDirectMessageResponse.ProtoReflect.Descriptor instead.
+func (*CreateDirectMessageResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *CreateDirectMessageResponse) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `CreateInvite` endpoint.
+type CreateInviteRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild to create an invite in.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The name of the invite.
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ // The possible uses of the invite.
+ //
+ // A possible use of `0` means that the invite can be used infinitely many times.
+ PossibleUses uint32 `protobuf:"varint,3,opt,name=possible_uses,json=possibleUses,proto3" json:"possible_uses,omitempty"`
+}
+
+func (x *CreateInviteRequest) Reset() {
+ *x = CreateInviteRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateInviteRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateInviteRequest) ProtoMessage() {}
+
+func (x *CreateInviteRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[12]
+ 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 CreateInviteRequest.ProtoReflect.Descriptor instead.
+func (*CreateInviteRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *CreateInviteRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *CreateInviteRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *CreateInviteRequest) GetPossibleUses() uint32 {
+ if x != nil {
+ return x.PossibleUses
+ }
+ return 0
+}
+
+// Used in the `CreateInvite` endpoint.
+type CreateInviteResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The invite ID of the invite that was created.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+}
+
+func (x *CreateInviteResponse) Reset() {
+ *x = CreateInviteResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateInviteResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateInviteResponse) ProtoMessage() {}
+
+func (x *CreateInviteResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[13]
+ 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 CreateInviteResponse.ProtoReflect.Descriptor instead.
+func (*CreateInviteResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *CreateInviteResponse) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+// Used in the `GetGuildList` endpoint.
+type GetGuildListRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *GetGuildListRequest) Reset() {
+ *x = GetGuildListRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildListRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildListRequest) ProtoMessage() {}
+
+func (x *GetGuildListRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[14]
+ 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 GetGuildListRequest.ProtoReflect.Descriptor instead.
+func (*GetGuildListRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{14}
+}
+
+// Used in the `GetGuildList` endpoint.
+type GetGuildListResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild list returned by the server.
+ Guilds []*GuildListEntry `protobuf:"bytes,1,rep,name=guilds,proto3" json:"guilds,omitempty"`
+}
+
+func (x *GetGuildListResponse) Reset() {
+ *x = GetGuildListResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildListResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildListResponse) ProtoMessage() {}
+
+func (x *GetGuildListResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[15]
+ 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 GetGuildListResponse.ProtoReflect.Descriptor instead.
+func (*GetGuildListResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *GetGuildListResponse) GetGuilds() []*GuildListEntry {
+ if x != nil {
+ return x.Guilds
+ }
+ return nil
+}
+
+// Used in the `GetGuild` endpoint.
+type GetGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild to get information about.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *GetGuildRequest) Reset() {
+ *x = GetGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildRequest) ProtoMessage() {}
+
+func (x *GetGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[16]
+ 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 GetGuildRequest.ProtoReflect.Descriptor instead.
+func (*GetGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *GetGuildRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `GetGuild` endpoint.
+type GetGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The information of the guild requested.
+ Guild *Guild `protobuf:"bytes,1,opt,name=guild,proto3" json:"guild,omitempty"`
+}
+
+func (x *GetGuildResponse) Reset() {
+ *x = GetGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildResponse) ProtoMessage() {}
+
+func (x *GetGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[17]
+ 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 GetGuildResponse.ProtoReflect.Descriptor instead.
+func (*GetGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *GetGuildResponse) GetGuild() *Guild {
+ if x != nil {
+ return x.Guild
+ }
+ return nil
+}
+
+// Used in the `GetGuildInvites` endpoint.
+type GetGuildInvitesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild you want to get invites of.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *GetGuildInvitesRequest) Reset() {
+ *x = GetGuildInvitesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildInvitesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildInvitesRequest) ProtoMessage() {}
+
+func (x *GetGuildInvitesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[18]
+ 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 GetGuildInvitesRequest.ProtoReflect.Descriptor instead.
+func (*GetGuildInvitesRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{18}
+}
+
+func (x *GetGuildInvitesRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `GetGuildInvites` endpoint.
+type GetGuildInvitesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The invites of the guild, with IDs.
+ Invites []*InviteWithId `protobuf:"bytes,1,rep,name=invites,proto3" json:"invites,omitempty"`
+}
+
+func (x *GetGuildInvitesResponse) Reset() {
+ *x = GetGuildInvitesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildInvitesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildInvitesResponse) ProtoMessage() {}
+
+func (x *GetGuildInvitesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[19]
+ 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 GetGuildInvitesResponse.ProtoReflect.Descriptor instead.
+func (*GetGuildInvitesResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *GetGuildInvitesResponse) GetInvites() []*InviteWithId {
+ if x != nil {
+ return x.Invites
+ }
+ return nil
+}
+
+// Used in the `GetGuildMembers` endpoint.
+type GetGuildMembersRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild you want to get members of.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *GetGuildMembersRequest) Reset() {
+ *x = GetGuildMembersRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildMembersRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildMembersRequest) ProtoMessage() {}
+
+func (x *GetGuildMembersRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[20]
+ 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 GetGuildMembersRequest.ProtoReflect.Descriptor instead.
+func (*GetGuildMembersRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{20}
+}
+
+func (x *GetGuildMembersRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `GetGuildMembers` endpoint.
+type GetGuildMembersResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User IDs of all the guild members.
+ Members []uint64 `protobuf:"varint,1,rep,packed,name=members,proto3" json:"members,omitempty"`
+}
+
+func (x *GetGuildMembersResponse) Reset() {
+ *x = GetGuildMembersResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildMembersResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildMembersResponse) ProtoMessage() {}
+
+func (x *GetGuildMembersResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[21]
+ 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 GetGuildMembersResponse.ProtoReflect.Descriptor instead.
+func (*GetGuildMembersResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *GetGuildMembersResponse) GetMembers() []uint64 {
+ if x != nil {
+ return x.Members
+ }
+ return nil
+}
+
+// Used in the `UpdateGuildInformation` endpoint.
+type UpdateGuildInformationRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild you want to update the information of.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // New name for the guild.
+ NewName *string `protobuf:"bytes,2,opt,name=new_name,json=newName,proto3,oneof" json:"new_name,omitempty"`
+ // New picture for the guild.
+ NewPicture *string `protobuf:"bytes,3,opt,name=new_picture,json=newPicture,proto3,oneof" json:"new_picture,omitempty"`
+ // New metadata for the guild.
+ NewMetadata *v1.Metadata `protobuf:"bytes,4,opt,name=new_metadata,json=newMetadata,proto3,oneof" json:"new_metadata,omitempty"`
+}
+
+func (x *UpdateGuildInformationRequest) Reset() {
+ *x = UpdateGuildInformationRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateGuildInformationRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateGuildInformationRequest) ProtoMessage() {}
+
+func (x *UpdateGuildInformationRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[22]
+ 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 UpdateGuildInformationRequest.ProtoReflect.Descriptor instead.
+func (*UpdateGuildInformationRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *UpdateGuildInformationRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *UpdateGuildInformationRequest) GetNewName() string {
+ if x != nil && x.NewName != nil {
+ return *x.NewName
+ }
+ return ""
+}
+
+func (x *UpdateGuildInformationRequest) GetNewPicture() string {
+ if x != nil && x.NewPicture != nil {
+ return *x.NewPicture
+ }
+ return ""
+}
+
+func (x *UpdateGuildInformationRequest) GetNewMetadata() *v1.Metadata {
+ if x != nil {
+ return x.NewMetadata
+ }
+ return nil
+}
+
+// Used in the `UpdateGuildInformation` endpoint.
+type UpdateGuildInformationResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UpdateGuildInformationResponse) Reset() {
+ *x = UpdateGuildInformationResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateGuildInformationResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateGuildInformationResponse) ProtoMessage() {}
+
+func (x *UpdateGuildInformationResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[23]
+ 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 UpdateGuildInformationResponse.ProtoReflect.Descriptor instead.
+func (*UpdateGuildInformationResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{23}
+}
+
+// Used in the `UpgradeRoomToGuild` endpoint.
+type UpgradeRoomToGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the "room" guild to upgrade to a "normal" guild.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *UpgradeRoomToGuildRequest) Reset() {
+ *x = UpgradeRoomToGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpgradeRoomToGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpgradeRoomToGuildRequest) ProtoMessage() {}
+
+func (x *UpgradeRoomToGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[24]
+ 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 UpgradeRoomToGuildRequest.ProtoReflect.Descriptor instead.
+func (*UpgradeRoomToGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{24}
+}
+
+func (x *UpgradeRoomToGuildRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `UpgradeRoomToGuild` endpoint.
+type UpgradeRoomToGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UpgradeRoomToGuildResponse) Reset() {
+ *x = UpgradeRoomToGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpgradeRoomToGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpgradeRoomToGuildResponse) ProtoMessage() {}
+
+func (x *UpgradeRoomToGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[25]
+ 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 UpgradeRoomToGuildResponse.ProtoReflect.Descriptor instead.
+func (*UpgradeRoomToGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{25}
+}
+
+// Used in the `DeleteGuild` endpoint.
+type DeleteGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild you want to delete.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *DeleteGuildRequest) Reset() {
+ *x = DeleteGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteGuildRequest) ProtoMessage() {}
+
+func (x *DeleteGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[26]
+ 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 DeleteGuildRequest.ProtoReflect.Descriptor instead.
+func (*DeleteGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{26}
+}
+
+func (x *DeleteGuildRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `DeleteGuild` endpoint.
+type DeleteGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteGuildResponse) Reset() {
+ *x = DeleteGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteGuildResponse) ProtoMessage() {}
+
+func (x *DeleteGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[27]
+ 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 DeleteGuildResponse.ProtoReflect.Descriptor instead.
+func (*DeleteGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{27}
+}
+
+// Used in the `DeleteInvite` endpoint.
+type DeleteInviteRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the invite is located.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Invite ID of the invite you want to delete.
+ InviteId string `protobuf:"bytes,2,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+}
+
+func (x *DeleteInviteRequest) Reset() {
+ *x = DeleteInviteRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteInviteRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteInviteRequest) ProtoMessage() {}
+
+func (x *DeleteInviteRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[28]
+ 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 DeleteInviteRequest.ProtoReflect.Descriptor instead.
+func (*DeleteInviteRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{28}
+}
+
+func (x *DeleteInviteRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *DeleteInviteRequest) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+// Used in the `DeleteInvite` endpoint.
+type DeleteInviteResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteInviteResponse) Reset() {
+ *x = DeleteInviteResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[29]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteInviteResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteInviteResponse) ProtoMessage() {}
+
+func (x *DeleteInviteResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[29]
+ 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 DeleteInviteResponse.ProtoReflect.Descriptor instead.
+func (*DeleteInviteResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{29}
+}
+
+// Used in the `JoinGuild` endpoint.
+type JoinGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Invite ID of the guild you want to join.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+}
+
+func (x *JoinGuildRequest) Reset() {
+ *x = JoinGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[30]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *JoinGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*JoinGuildRequest) ProtoMessage() {}
+
+func (x *JoinGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[30]
+ 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 JoinGuildRequest.ProtoReflect.Descriptor instead.
+func (*JoinGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{30}
+}
+
+func (x *JoinGuildRequest) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+// Used in the `JoinGuild` endpoint.
+type JoinGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild you joined.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *JoinGuildResponse) Reset() {
+ *x = JoinGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[31]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *JoinGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*JoinGuildResponse) ProtoMessage() {}
+
+func (x *JoinGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[31]
+ 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 JoinGuildResponse.ProtoReflect.Descriptor instead.
+func (*JoinGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{31}
+}
+
+func (x *JoinGuildResponse) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `PreviewGuild` endpoint.
+type PreviewGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Invite ID of the guild you want to get information from.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+}
+
+func (x *PreviewGuildRequest) Reset() {
+ *x = PreviewGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[32]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PreviewGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PreviewGuildRequest) ProtoMessage() {}
+
+func (x *PreviewGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[32]
+ 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 PreviewGuildRequest.ProtoReflect.Descriptor instead.
+func (*PreviewGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{32}
+}
+
+func (x *PreviewGuildRequest) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+// Used in the `PreviewGuild` endpoint.
+type PreviewGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Name of the guild requested.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Picture of the guild requested.
+ Picture *string `protobuf:"bytes,2,opt,name=picture,proto3,oneof" json:"picture,omitempty"`
+ // Member count of the guild requested.
+ MemberCount uint64 `protobuf:"varint,3,opt,name=member_count,json=memberCount,proto3" json:"member_count,omitempty"`
+}
+
+func (x *PreviewGuildResponse) Reset() {
+ *x = PreviewGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[33]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PreviewGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PreviewGuildResponse) ProtoMessage() {}
+
+func (x *PreviewGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[33]
+ 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 PreviewGuildResponse.ProtoReflect.Descriptor instead.
+func (*PreviewGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{33}
+}
+
+func (x *PreviewGuildResponse) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *PreviewGuildResponse) GetPicture() string {
+ if x != nil && x.Picture != nil {
+ return *x.Picture
+ }
+ return ""
+}
+
+func (x *PreviewGuildResponse) GetMemberCount() uint64 {
+ if x != nil {
+ return x.MemberCount
+ }
+ return 0
+}
+
+// Used in the `LeaveGuild` endpoint.
+type LeaveGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild you want to leave.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *LeaveGuildRequest) Reset() {
+ *x = LeaveGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *LeaveGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LeaveGuildRequest) ProtoMessage() {}
+
+func (x *LeaveGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[34]
+ 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 LeaveGuildRequest.ProtoReflect.Descriptor instead.
+func (*LeaveGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{34}
+}
+
+func (x *LeaveGuildRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `LeaveGuild` endpoint.
+type LeaveGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *LeaveGuildResponse) Reset() {
+ *x = LeaveGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *LeaveGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LeaveGuildResponse) ProtoMessage() {}
+
+func (x *LeaveGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[35]
+ 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 LeaveGuildResponse.ProtoReflect.Descriptor instead.
+func (*LeaveGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{35}
+}
+
+// Used in `BanUser` endpoint.
+type BanUserRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The guild ID of the guild to ban the user from.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The ID of the user to ban.
+ UserId uint64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *BanUserRequest) Reset() {
+ *x = BanUserRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[36]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BanUserRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BanUserRequest) ProtoMessage() {}
+
+func (x *BanUserRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[36]
+ 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 BanUserRequest.ProtoReflect.Descriptor instead.
+func (*BanUserRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{36}
+}
+
+func (x *BanUserRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *BanUserRequest) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Used in `BanUser` endpoint.
+type BanUserResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *BanUserResponse) Reset() {
+ *x = BanUserResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[37]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BanUserResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BanUserResponse) ProtoMessage() {}
+
+func (x *BanUserResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[37]
+ 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 BanUserResponse.ProtoReflect.Descriptor instead.
+func (*BanUserResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{37}
+}
+
+// Used in `KickUser` endpoint.
+type KickUserRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The guild ID of the guild to kick the user from.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The user ID of the user to kick.
+ UserId uint64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *KickUserRequest) Reset() {
+ *x = KickUserRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[38]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KickUserRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KickUserRequest) ProtoMessage() {}
+
+func (x *KickUserRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[38]
+ 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 KickUserRequest.ProtoReflect.Descriptor instead.
+func (*KickUserRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{38}
+}
+
+func (x *KickUserRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *KickUserRequest) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Used in `KickUser` endpoint.
+type KickUserResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *KickUserResponse) Reset() {
+ *x = KickUserResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[39]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KickUserResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KickUserResponse) ProtoMessage() {}
+
+func (x *KickUserResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[39]
+ 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 KickUserResponse.ProtoReflect.Descriptor instead.
+func (*KickUserResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{39}
+}
+
+// Used in `UnbanUser` endpoint.
+type UnbanUserRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The guild ID of the guild to unban the user from.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The user ID of the user to unban.
+ UserId uint64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *UnbanUserRequest) Reset() {
+ *x = UnbanUserRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[40]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UnbanUserRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnbanUserRequest) ProtoMessage() {}
+
+func (x *UnbanUserRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[40]
+ 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 UnbanUserRequest.ProtoReflect.Descriptor instead.
+func (*UnbanUserRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{40}
+}
+
+func (x *UnbanUserRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *UnbanUserRequest) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Used in `UnbanUser` endpoint.
+type UnbanUserResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UnbanUserResponse) Reset() {
+ *x = UnbanUserResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[41]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UnbanUserResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnbanUserResponse) ProtoMessage() {}
+
+func (x *UnbanUserResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[41]
+ 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 UnbanUserResponse.ProtoReflect.Descriptor instead.
+func (*UnbanUserResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{41}
+}
+
+// Used in `GetBannedUsers` endpoint.
+type GetBannedUsersRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID to get banned users for.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *GetBannedUsersRequest) Reset() {
+ *x = GetBannedUsersRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[42]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetBannedUsersRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetBannedUsersRequest) ProtoMessage() {}
+
+func (x *GetBannedUsersRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[42]
+ 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 GetBannedUsersRequest.ProtoReflect.Descriptor instead.
+func (*GetBannedUsersRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{42}
+}
+
+func (x *GetBannedUsersRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in `GetBannedUsers` endpoint.
+type GetBannedUsersResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The user IDs of banned users.
+ BannedUsers []uint64 `protobuf:"varint,1,rep,packed,name=banned_users,json=bannedUsers,proto3" json:"banned_users,omitempty"`
+}
+
+func (x *GetBannedUsersResponse) Reset() {
+ *x = GetBannedUsersResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[43]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetBannedUsersResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetBannedUsersResponse) ProtoMessage() {}
+
+func (x *GetBannedUsersResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[43]
+ 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 GetBannedUsersResponse.ProtoReflect.Descriptor instead.
+func (*GetBannedUsersResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{43}
+}
+
+func (x *GetBannedUsersResponse) GetBannedUsers() []uint64 {
+ if x != nil {
+ return x.BannedUsers
+ }
+ return nil
+}
+
+// Request for GrantOwnership
+type GrantOwnershipRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild to give a user ownership on.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The ID of the new owner to add.
+ NewOwnerId uint64 `protobuf:"varint,2,opt,name=new_owner_id,json=newOwnerId,proto3" json:"new_owner_id,omitempty"`
+}
+
+func (x *GrantOwnershipRequest) Reset() {
+ *x = GrantOwnershipRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[44]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GrantOwnershipRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GrantOwnershipRequest) ProtoMessage() {}
+
+func (x *GrantOwnershipRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[44]
+ 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 GrantOwnershipRequest.ProtoReflect.Descriptor instead.
+func (*GrantOwnershipRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{44}
+}
+
+func (x *GrantOwnershipRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *GrantOwnershipRequest) GetNewOwnerId() uint64 {
+ if x != nil {
+ return x.NewOwnerId
+ }
+ return 0
+}
+
+// Response for GrantOwnership
+type GrantOwnershipResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *GrantOwnershipResponse) Reset() {
+ *x = GrantOwnershipResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[45]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GrantOwnershipResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GrantOwnershipResponse) ProtoMessage() {}
+
+func (x *GrantOwnershipResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[45]
+ 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 GrantOwnershipResponse.ProtoReflect.Descriptor instead.
+func (*GrantOwnershipResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{45}
+}
+
+// Request for GiveUpOwnership
+type GiveUpOwnershipRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID to give up your ownership on.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *GiveUpOwnershipRequest) Reset() {
+ *x = GiveUpOwnershipRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[46]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GiveUpOwnershipRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GiveUpOwnershipRequest) ProtoMessage() {}
+
+func (x *GiveUpOwnershipRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[46]
+ 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 GiveUpOwnershipRequest.ProtoReflect.Descriptor instead.
+func (*GiveUpOwnershipRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{46}
+}
+
+func (x *GiveUpOwnershipRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Response for GiveUpOwnership
+type GiveUpOwnershipResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *GiveUpOwnershipResponse) Reset() {
+ *x = GiveUpOwnershipResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[47]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GiveUpOwnershipResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GiveUpOwnershipResponse) ProtoMessage() {}
+
+func (x *GiveUpOwnershipResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[47]
+ 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 GiveUpOwnershipResponse.ProtoReflect.Descriptor instead.
+func (*GiveUpOwnershipResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{47}
+}
+
+// Used in `GetPendingInvites` endpoint.
+type GetPendingInvitesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *GetPendingInvitesRequest) Reset() {
+ *x = GetPendingInvitesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[48]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetPendingInvitesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetPendingInvitesRequest) ProtoMessage() {}
+
+func (x *GetPendingInvitesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[48]
+ 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 GetPendingInvitesRequest.ProtoReflect.Descriptor instead.
+func (*GetPendingInvitesRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{48}
+}
+
+// Used in `GetPendingInvites` endpoint.
+type GetPendingInvitesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The pending invite(s).
+ PendingInvites []*PendingInvite `protobuf:"bytes,1,rep,name=pending_invites,json=pendingInvites,proto3" json:"pending_invites,omitempty"`
+}
+
+func (x *GetPendingInvitesResponse) Reset() {
+ *x = GetPendingInvitesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[49]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetPendingInvitesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetPendingInvitesResponse) ProtoMessage() {}
+
+func (x *GetPendingInvitesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[49]
+ 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 GetPendingInvitesResponse.ProtoReflect.Descriptor instead.
+func (*GetPendingInvitesResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{49}
+}
+
+func (x *GetPendingInvitesResponse) GetPendingInvites() []*PendingInvite {
+ if x != nil {
+ return x.PendingInvites
+ }
+ return nil
+}
+
+// Used in `RejectPendingInvite` endpoint.
+type RejectPendingInviteRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Invite ID of the pending invite to reject.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+ // Server ID of the pending invite to reject.
+ ServerId *string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3,oneof" json:"server_id,omitempty"`
+}
+
+func (x *RejectPendingInviteRequest) Reset() {
+ *x = RejectPendingInviteRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[50]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RejectPendingInviteRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RejectPendingInviteRequest) ProtoMessage() {}
+
+func (x *RejectPendingInviteRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[50]
+ 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 RejectPendingInviteRequest.ProtoReflect.Descriptor instead.
+func (*RejectPendingInviteRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{50}
+}
+
+func (x *RejectPendingInviteRequest) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+func (x *RejectPendingInviteRequest) GetServerId() string {
+ if x != nil && x.ServerId != nil {
+ return *x.ServerId
+ }
+ return ""
+}
+
+// Used in `RejectPendingInvite` endpoint.
+type RejectPendingInviteResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *RejectPendingInviteResponse) Reset() {
+ *x = RejectPendingInviteResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[51]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RejectPendingInviteResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RejectPendingInviteResponse) ProtoMessage() {}
+
+func (x *RejectPendingInviteResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[51]
+ 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 RejectPendingInviteResponse.ProtoReflect.Descriptor instead.
+func (*RejectPendingInviteResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{51}
+}
+
+// Used in `IgnorePendingInvite` endpoint.
+type IgnorePendingInviteRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the pending invite to ignore.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+ // Server ID of the pending invite to reject.
+ ServerId *string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3,oneof" json:"server_id,omitempty"`
+}
+
+func (x *IgnorePendingInviteRequest) Reset() {
+ *x = IgnorePendingInviteRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[52]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *IgnorePendingInviteRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*IgnorePendingInviteRequest) ProtoMessage() {}
+
+func (x *IgnorePendingInviteRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[52]
+ 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 IgnorePendingInviteRequest.ProtoReflect.Descriptor instead.
+func (*IgnorePendingInviteRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{52}
+}
+
+func (x *IgnorePendingInviteRequest) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+func (x *IgnorePendingInviteRequest) GetServerId() string {
+ if x != nil && x.ServerId != nil {
+ return *x.ServerId
+ }
+ return ""
+}
+
+// Used in `IgnorePendingInvite` endpoint.
+type IgnorePendingInviteResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *IgnorePendingInviteResponse) Reset() {
+ *x = IgnorePendingInviteResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[53]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *IgnorePendingInviteResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*IgnorePendingInviteResponse) ProtoMessage() {}
+
+func (x *IgnorePendingInviteResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[53]
+ 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 IgnorePendingInviteResponse.ProtoReflect.Descriptor instead.
+func (*IgnorePendingInviteResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{53}
+}
+
+// Used in `InviteUserToGuild` endpoint.
+type InviteUserToGuildRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User name of the user to invite.
+ UserName string `protobuf:"bytes,1,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
+ // Server ID of the user if they are on another server.
+ ServerId *string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3,oneof" json:"server_id,omitempty"`
+ // Guild ID of the guild to invite to.
+ GuildId uint64 `protobuf:"varint,3,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *InviteUserToGuildRequest) Reset() {
+ *x = InviteUserToGuildRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[54]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InviteUserToGuildRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InviteUserToGuildRequest) ProtoMessage() {}
+
+func (x *InviteUserToGuildRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[54]
+ 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 InviteUserToGuildRequest.ProtoReflect.Descriptor instead.
+func (*InviteUserToGuildRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{54}
+}
+
+func (x *InviteUserToGuildRequest) GetUserName() string {
+ if x != nil {
+ return x.UserName
+ }
+ return ""
+}
+
+func (x *InviteUserToGuildRequest) GetServerId() string {
+ if x != nil && x.ServerId != nil {
+ return *x.ServerId
+ }
+ return ""
+}
+
+func (x *InviteUserToGuildRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in `InviteUserToGuild` endpoint.
+type InviteUserToGuildResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *InviteUserToGuildResponse) Reset() {
+ *x = InviteUserToGuildResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[55]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InviteUserToGuildResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InviteUserToGuildResponse) ProtoMessage() {}
+
+func (x *InviteUserToGuildResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[55]
+ 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 InviteUserToGuildResponse.ProtoReflect.Descriptor instead.
+func (*InviteUserToGuildResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{55}
+}
+
+// A "normal" guild as in a guild that allows multiple channels.
+type GuildKind_Normal struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *GuildKind_Normal) Reset() {
+ *x = GuildKind_Normal{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[56]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GuildKind_Normal) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GuildKind_Normal) ProtoMessage() {}
+
+func (x *GuildKind_Normal) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[56]
+ 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 GuildKind_Normal.ProtoReflect.Descriptor instead.
+func (*GuildKind_Normal) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// A "room" guild as in a guild that only has one channel.
+//
+// - Clients should not show a channel list for guilds of this type.
+type GuildKind_Room struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *GuildKind_Room) Reset() {
+ *x = GuildKind_Room{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[57]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GuildKind_Room) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GuildKind_Room) ProtoMessage() {}
+
+func (x *GuildKind_Room) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[57]
+ 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 GuildKind_Room.ProtoReflect.Descriptor instead.
+func (*GuildKind_Room) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{0, 1}
+}
+
+// A "direct message" guild as in a guild that has at most two members,
+// and has only one channel.
+//
+// - Clients should not show a channel list for guilds of this type.
+// - Clients should show this guild in the guild list with the profile picture
+// and the username of the other user.
+// - Servers should "upgrade" this guild to a "room" guild if another
+// user joins the guild. A name should be crafted using the algorithm
+// described below:
+// - Get at most 3 members' usernames, by their
+// - Concat them with ", " as a seperator.
+type GuildKind_DirectMessage struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Whether this direct message was rejected by the invitee or not.
+ Rejected bool `protobuf:"varint,1,opt,name=rejected,proto3" json:"rejected,omitempty"`
+}
+
+func (x *GuildKind_DirectMessage) Reset() {
+ *x = GuildKind_DirectMessage{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_guilds_proto_msgTypes[58]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GuildKind_DirectMessage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GuildKind_DirectMessage) ProtoMessage() {}
+
+func (x *GuildKind_DirectMessage) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_guilds_proto_msgTypes[58]
+ 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 GuildKind_DirectMessage.ProtoReflect.Descriptor instead.
+func (*GuildKind_DirectMessage) Descriptor() ([]byte, []int) {
+ return file_chat_v1_guilds_proto_rawDescGZIP(), []int{0, 2}
+}
+
+func (x *GuildKind_DirectMessage) GetRejected() bool {
+ if x != nil {
+ return x.Rejected
+ }
+ return false
+}
+
+var File_chat_v1_guilds_proto protoreflect.FileDescriptor
+
+var file_chat_v1_guilds_proto_rawDesc = []byte{
+ 0x0a, 0x14, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e,
+ 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9c, 0x02, 0x0a, 0x09, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4b,
+ 0x69, 0x6e, 0x64, 0x12, 0x3c, 0x0a, 0x06, 0x6e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x69, 0x6e, 0x64,
+ 0x2e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x06, 0x6e, 0x6f, 0x72, 0x6d, 0x61,
+ 0x6c, 0x12, 0x36, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x2e, 0x52, 0x6f, 0x6f,
+ 0x6d, 0x48, 0x00, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x52, 0x0a, 0x0e, 0x64, 0x69, 0x72,
+ 0x65, 0x63, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x2e, 0x44,
+ 0x69, 0x72, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x0d,
+ 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x08, 0x0a,
+ 0x06, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x1a, 0x06, 0x0a, 0x04, 0x52, 0x6f, 0x6f, 0x6d, 0x1a,
+ 0x2b, 0x0a, 0x0d, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x06, 0x0a, 0x04,
+ 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xe6, 0x01, 0x0a, 0x05, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x12,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01,
+ 0x01, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03,
+ 0x20, 0x03, 0x28, 0x04, 0x52, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x2f,
+ 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12,
+ 0x43, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72,
+ 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65,
+ 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4a, 0x0a,
+ 0x06, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6f, 0x73, 0x73, 0x69,
+ 0x62, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c,
+ 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09,
+ 0x75, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
+ 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x5d, 0x0a, 0x0c, 0x49, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65,
+ 0x52, 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x22, 0x7b, 0x0a, 0x0d, 0x50, 0x65, 0x6e, 0x64,
+ 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
+ 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x73, 0x65, 0x72,
+ 0x76, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x69, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x72, 0x49, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x0e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69,
+ 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x22,
+ 0xa5, 0x01, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x69,
+ 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x70,
+ 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x08, 0x6d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79,
+ 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48,
+ 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0a,
+ 0x0a, 0x08, 0x5f, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x30, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19,
+ 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0xa4, 0x01, 0x0a, 0x11, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x88,
+ 0x01, 0x01, 0x12, 0x43, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x70, 0x69, 0x63, 0x74,
+ 0x75, 0x72, 0x65, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x22, 0x2f, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x22, 0x69, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63,
+ 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x09,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x00, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0c,
+ 0x0a, 0x0a, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x38, 0x0a, 0x1b,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x69, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
+ 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a,
+ 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d,
+ 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x5f, 0x75, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x55, 0x73, 0x65,
+ 0x73, 0x22, 0x33, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x22, 0x15, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x50, 0x0a,
+ 0x14, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4c, 0x69,
+ 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x22,
+ 0x2c, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x41, 0x0a,
+ 0x10, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x2d, 0x0a, 0x05, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x05, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x22, 0x33, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75,
+ 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75,
+ 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x53, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x38, 0x0a, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49,
+ 0x64, 0x52, 0x07, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x22, 0x33, 0x0a, 0x16, 0x47, 0x65,
+ 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22,
+ 0x33, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6d, 0x62, 0x65,
+ 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65,
+ 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x07, 0x6d, 0x65, 0x6d,
+ 0x62, 0x65, 0x72, 0x73, 0x22, 0xfa, 0x01, 0x0a, 0x1d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01,
+ 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x50, 0x69, 0x63,
+ 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79,
+ 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x48, 0x02, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65,
+ 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x22, 0x20, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x36, 0x0a, 0x19, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x6f,
+ 0x6f, 0x6d, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x1c, 0x0a, 0x1a, 0x55,
+ 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x0a, 0x12, 0x44, 0x65, 0x6c,
+ 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x15, 0x0a, 0x13, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x4d, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x64,
+ 0x22, 0x16, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2f, 0x0a, 0x10, 0x4a, 0x6f, 0x69, 0x6e,
+ 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09,
+ 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x22, 0x2e, 0x0a, 0x11, 0x4a, 0x6f, 0x69,
+ 0x6e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19,
+ 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x32, 0x0a, 0x13, 0x50, 0x72, 0x65,
+ 0x76, 0x69, 0x65, 0x77, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x22, 0x78, 0x0a,
+ 0x14, 0x50, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x69, 0x63,
+ 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x70, 0x69,
+ 0x63, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x6d, 0x62,
+ 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b,
+ 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x42, 0x0a, 0x0a, 0x08, 0x5f,
+ 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x22, 0x2e, 0x0a, 0x11, 0x4c, 0x65, 0x61, 0x76, 0x65,
+ 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08,
+ 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07,
+ 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x4c, 0x65, 0x61, 0x76, 0x65,
+ 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x44, 0x0a,
+ 0x0e, 0x42, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73,
+ 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73, 0x65,
+ 0x72, 0x49, 0x64, 0x22, 0x11, 0x0a, 0x0f, 0x42, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, 0x0a, 0x0f, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73,
+ 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x12, 0x0a,
+ 0x10, 0x4b, 0x69, 0x63, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x46, 0x0a, 0x10, 0x55, 0x6e, 0x62, 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64,
+ 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x55, 0x6e, 0x62,
+ 0x61, 0x6e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32,
+ 0x0a, 0x15, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x22, 0x3b, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55,
+ 0x73, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c,
+ 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03,
+ 0x28, 0x04, 0x52, 0x0b, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x22,
+ 0x54, 0x0a, 0x15, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69,
+ 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72,
+ 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x4f, 0x77,
+ 0x6e, 0x65, 0x72, 0x49, 0x64, 0x22, 0x18, 0x0a, 0x16, 0x47, 0x72, 0x61, 0x6e, 0x74, 0x4f, 0x77,
+ 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x33, 0x0a, 0x16, 0x47, 0x69, 0x76, 0x65, 0x55, 0x70, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68,
+ 0x69, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x49, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x47, 0x69, 0x76, 0x65, 0x55, 0x70, 0x4f, 0x77,
+ 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x1a, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x65, 0x0a, 0x19, 0x47,
+ 0x65, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0f, 0x70, 0x65, 0x6e, 0x64,
+ 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x52, 0x0e, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x73, 0x22, 0x69, 0x0a, 0x1a, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64,
+ 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a,
+ 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x00, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42,
+ 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x1d, 0x0a,
+ 0x1b, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x69, 0x0a, 0x1a,
+ 0x49, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e,
+ 0x76, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69,
+ 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x73, 0x65,
+ 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x65,
+ 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x1d, 0x0a, 0x1b, 0x49, 0x67, 0x6e, 0x6f, 0x72,
+ 0x65, 0x50, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x82, 0x01, 0x0a, 0x18, 0x49, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65,
+ 0x12, 0x20, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x88,
+ 0x01, 0x01, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x42, 0x0c, 0x0a,
+ 0x0a, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x22, 0x1b, 0x0a, 0x19, 0x49,
+ 0x6e, 0x76, 0x69, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0x67, 0x0a, 0x0b, 0x4c, 0x65, 0x61, 0x76,
+ 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x22, 0x4c, 0x45, 0x41, 0x56, 0x45,
+ 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x57, 0x49, 0x4c, 0x4c, 0x49, 0x4e, 0x47, 0x4c,
+ 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
+ 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f,
+ 0x42, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x45, 0x41, 0x56,
+ 0x45, 0x5f, 0x52, 0x45, 0x41, 0x53, 0x4f, 0x4e, 0x5f, 0x4b, 0x49, 0x43, 0x4b, 0x45, 0x44, 0x10,
+ 0x02, 0x42, 0xc1, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75,
+ 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65,
+ 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68,
+ 0x69, 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x63,
+ 0x68, 0x61, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x43, 0x58, 0xaa, 0x02, 0x10, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02,
+ 0x10, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c, 0x56,
+ 0x31, 0xe2, 0x02, 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61,
+ 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0xea, 0x02, 0x12, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x43, 0x68, 0x61,
+ 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_chat_v1_guilds_proto_rawDescOnce sync.Once
+ file_chat_v1_guilds_proto_rawDescData = file_chat_v1_guilds_proto_rawDesc
+)
+
+func file_chat_v1_guilds_proto_rawDescGZIP() []byte {
+ file_chat_v1_guilds_proto_rawDescOnce.Do(func() {
+ file_chat_v1_guilds_proto_rawDescData = protoimpl.X.CompressGZIP(file_chat_v1_guilds_proto_rawDescData)
+ })
+ return file_chat_v1_guilds_proto_rawDescData
+}
+
+var file_chat_v1_guilds_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_chat_v1_guilds_proto_msgTypes = make([]protoimpl.MessageInfo, 59)
+var file_chat_v1_guilds_proto_goTypes = []interface{}{
+ (LeaveReason)(0), // 0: protocol.chat.v1.LeaveReason
+ (*GuildKind)(nil), // 1: protocol.chat.v1.GuildKind
+ (*Guild)(nil), // 2: protocol.chat.v1.Guild
+ (*Invite)(nil), // 3: protocol.chat.v1.Invite
+ (*InviteWithId)(nil), // 4: protocol.chat.v1.InviteWithId
+ (*PendingInvite)(nil), // 5: protocol.chat.v1.PendingInvite
+ (*GuildListEntry)(nil), // 6: protocol.chat.v1.GuildListEntry
+ (*CreateGuildRequest)(nil), // 7: protocol.chat.v1.CreateGuildRequest
+ (*CreateGuildResponse)(nil), // 8: protocol.chat.v1.CreateGuildResponse
+ (*CreateRoomRequest)(nil), // 9: protocol.chat.v1.CreateRoomRequest
+ (*CreateRoomResponse)(nil), // 10: protocol.chat.v1.CreateRoomResponse
+ (*CreateDirectMessageRequest)(nil), // 11: protocol.chat.v1.CreateDirectMessageRequest
+ (*CreateDirectMessageResponse)(nil), // 12: protocol.chat.v1.CreateDirectMessageResponse
+ (*CreateInviteRequest)(nil), // 13: protocol.chat.v1.CreateInviteRequest
+ (*CreateInviteResponse)(nil), // 14: protocol.chat.v1.CreateInviteResponse
+ (*GetGuildListRequest)(nil), // 15: protocol.chat.v1.GetGuildListRequest
+ (*GetGuildListResponse)(nil), // 16: protocol.chat.v1.GetGuildListResponse
+ (*GetGuildRequest)(nil), // 17: protocol.chat.v1.GetGuildRequest
+ (*GetGuildResponse)(nil), // 18: protocol.chat.v1.GetGuildResponse
+ (*GetGuildInvitesRequest)(nil), // 19: protocol.chat.v1.GetGuildInvitesRequest
+ (*GetGuildInvitesResponse)(nil), // 20: protocol.chat.v1.GetGuildInvitesResponse
+ (*GetGuildMembersRequest)(nil), // 21: protocol.chat.v1.GetGuildMembersRequest
+ (*GetGuildMembersResponse)(nil), // 22: protocol.chat.v1.GetGuildMembersResponse
+ (*UpdateGuildInformationRequest)(nil), // 23: protocol.chat.v1.UpdateGuildInformationRequest
+ (*UpdateGuildInformationResponse)(nil), // 24: protocol.chat.v1.UpdateGuildInformationResponse
+ (*UpgradeRoomToGuildRequest)(nil), // 25: protocol.chat.v1.UpgradeRoomToGuildRequest
+ (*UpgradeRoomToGuildResponse)(nil), // 26: protocol.chat.v1.UpgradeRoomToGuildResponse
+ (*DeleteGuildRequest)(nil), // 27: protocol.chat.v1.DeleteGuildRequest
+ (*DeleteGuildResponse)(nil), // 28: protocol.chat.v1.DeleteGuildResponse
+ (*DeleteInviteRequest)(nil), // 29: protocol.chat.v1.DeleteInviteRequest
+ (*DeleteInviteResponse)(nil), // 30: protocol.chat.v1.DeleteInviteResponse
+ (*JoinGuildRequest)(nil), // 31: protocol.chat.v1.JoinGuildRequest
+ (*JoinGuildResponse)(nil), // 32: protocol.chat.v1.JoinGuildResponse
+ (*PreviewGuildRequest)(nil), // 33: protocol.chat.v1.PreviewGuildRequest
+ (*PreviewGuildResponse)(nil), // 34: protocol.chat.v1.PreviewGuildResponse
+ (*LeaveGuildRequest)(nil), // 35: protocol.chat.v1.LeaveGuildRequest
+ (*LeaveGuildResponse)(nil), // 36: protocol.chat.v1.LeaveGuildResponse
+ (*BanUserRequest)(nil), // 37: protocol.chat.v1.BanUserRequest
+ (*BanUserResponse)(nil), // 38: protocol.chat.v1.BanUserResponse
+ (*KickUserRequest)(nil), // 39: protocol.chat.v1.KickUserRequest
+ (*KickUserResponse)(nil), // 40: protocol.chat.v1.KickUserResponse
+ (*UnbanUserRequest)(nil), // 41: protocol.chat.v1.UnbanUserRequest
+ (*UnbanUserResponse)(nil), // 42: protocol.chat.v1.UnbanUserResponse
+ (*GetBannedUsersRequest)(nil), // 43: protocol.chat.v1.GetBannedUsersRequest
+ (*GetBannedUsersResponse)(nil), // 44: protocol.chat.v1.GetBannedUsersResponse
+ (*GrantOwnershipRequest)(nil), // 45: protocol.chat.v1.GrantOwnershipRequest
+ (*GrantOwnershipResponse)(nil), // 46: protocol.chat.v1.GrantOwnershipResponse
+ (*GiveUpOwnershipRequest)(nil), // 47: protocol.chat.v1.GiveUpOwnershipRequest
+ (*GiveUpOwnershipResponse)(nil), // 48: protocol.chat.v1.GiveUpOwnershipResponse
+ (*GetPendingInvitesRequest)(nil), // 49: protocol.chat.v1.GetPendingInvitesRequest
+ (*GetPendingInvitesResponse)(nil), // 50: protocol.chat.v1.GetPendingInvitesResponse
+ (*RejectPendingInviteRequest)(nil), // 51: protocol.chat.v1.RejectPendingInviteRequest
+ (*RejectPendingInviteResponse)(nil), // 52: protocol.chat.v1.RejectPendingInviteResponse
+ (*IgnorePendingInviteRequest)(nil), // 53: protocol.chat.v1.IgnorePendingInviteRequest
+ (*IgnorePendingInviteResponse)(nil), // 54: protocol.chat.v1.IgnorePendingInviteResponse
+ (*InviteUserToGuildRequest)(nil), // 55: protocol.chat.v1.InviteUserToGuildRequest
+ (*InviteUserToGuildResponse)(nil), // 56: protocol.chat.v1.InviteUserToGuildResponse
+ (*GuildKind_Normal)(nil), // 57: protocol.chat.v1.GuildKind.Normal
+ (*GuildKind_Room)(nil), // 58: protocol.chat.v1.GuildKind.Room
+ (*GuildKind_DirectMessage)(nil), // 59: protocol.chat.v1.GuildKind.DirectMessage
+ (*v1.Metadata)(nil), // 60: protocol.harmonytypes.v1.Metadata
+}
+var file_chat_v1_guilds_proto_depIdxs = []int32{
+ 57, // 0: protocol.chat.v1.GuildKind.normal:type_name -> protocol.chat.v1.GuildKind.Normal
+ 58, // 1: protocol.chat.v1.GuildKind.room:type_name -> protocol.chat.v1.GuildKind.Room
+ 59, // 2: protocol.chat.v1.GuildKind.direct_message:type_name -> protocol.chat.v1.GuildKind.DirectMessage
+ 1, // 3: protocol.chat.v1.Guild.kind:type_name -> protocol.chat.v1.GuildKind
+ 60, // 4: protocol.chat.v1.Guild.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 3, // 5: protocol.chat.v1.InviteWithId.invite:type_name -> protocol.chat.v1.Invite
+ 60, // 6: protocol.chat.v1.CreateGuildRequest.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 60, // 7: protocol.chat.v1.CreateRoomRequest.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 6, // 8: protocol.chat.v1.GetGuildListResponse.guilds:type_name -> protocol.chat.v1.GuildListEntry
+ 2, // 9: protocol.chat.v1.GetGuildResponse.guild:type_name -> protocol.chat.v1.Guild
+ 4, // 10: protocol.chat.v1.GetGuildInvitesResponse.invites:type_name -> protocol.chat.v1.InviteWithId
+ 60, // 11: protocol.chat.v1.UpdateGuildInformationRequest.new_metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 5, // 12: protocol.chat.v1.GetPendingInvitesResponse.pending_invites:type_name -> protocol.chat.v1.PendingInvite
+ 13, // [13:13] is the sub-list for method output_type
+ 13, // [13:13] is the sub-list for method input_type
+ 13, // [13:13] is the sub-list for extension type_name
+ 13, // [13:13] is the sub-list for extension extendee
+ 0, // [0:13] is the sub-list for field type_name
+}
+
+func init() { file_chat_v1_guilds_proto_init() }
+func file_chat_v1_guilds_proto_init() {
+ if File_chat_v1_guilds_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_chat_v1_guilds_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GuildKind); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Guild); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Invite); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InviteWithId); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PendingInvite); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GuildListEntry); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateRoomRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateRoomResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateDirectMessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateDirectMessageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateInviteRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateInviteResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildListRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildListResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildInvitesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildInvitesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildMembersRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildMembersResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateGuildInformationRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateGuildInformationResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpgradeRoomToGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpgradeRoomToGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteInviteRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteInviteResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*JoinGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*JoinGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PreviewGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PreviewGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*LeaveGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*LeaveGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BanUserRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BanUserResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KickUserRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KickUserResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UnbanUserRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UnbanUserResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetBannedUsersRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetBannedUsersResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GrantOwnershipRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GrantOwnershipResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GiveUpOwnershipRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GiveUpOwnershipResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetPendingInvitesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetPendingInvitesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RejectPendingInviteRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RejectPendingInviteResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*IgnorePendingInviteRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*IgnorePendingInviteResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InviteUserToGuildRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InviteUserToGuildResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GuildKind_Normal); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GuildKind_Room); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GuildKind_DirectMessage); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_chat_v1_guilds_proto_msgTypes[0].OneofWrappers = []interface{}{
+ (*GuildKind_Normal_)(nil),
+ (*GuildKind_Room_)(nil),
+ (*GuildKind_DirectMessage_)(nil),
+ }
+ file_chat_v1_guilds_proto_msgTypes[1].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[4].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[6].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[8].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[10].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[22].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[33].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[50].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[52].OneofWrappers = []interface{}{}
+ file_chat_v1_guilds_proto_msgTypes[54].OneofWrappers = []interface{}{}
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_chat_v1_guilds_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 59,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_chat_v1_guilds_proto_goTypes,
+ DependencyIndexes: file_chat_v1_guilds_proto_depIdxs,
+ EnumInfos: file_chat_v1_guilds_proto_enumTypes,
+ MessageInfos: file_chat_v1_guilds_proto_msgTypes,
+ }.Build()
+ File_chat_v1_guilds_proto = out.File
+ file_chat_v1_guilds_proto_rawDesc = nil
+ file_chat_v1_guilds_proto_goTypes = nil
+ file_chat_v1_guilds_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/chat/v1/messages.pb.go b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/messages.pb.go
new file mode 100644
index 00000000..d14636f2
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/messages.pb.go
@@ -0,0 +1,6224 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: chat/v1/messages.proto
+
+package chatv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ v11 "github.com/harmony-development/shibshib/gen/emote/v1"
+ v1 "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// The action type. This is primarily used to change the look of the action to
+// the user (example: Destructive actions will have a red background).
+type Action_Type int32
+
+const (
+ // a normal action.
+ Action_TYPE_NORMAL_UNSPECIFIED Action_Type = 0
+ // a primary action.
+ Action_TYPE_PRIMARY Action_Type = 1
+ // A destructive / dangerous action.
+ Action_TYPE_DESTRUCTIVE Action_Type = 2
+)
+
+// Enum value maps for Action_Type.
+var (
+ Action_Type_name = map[int32]string{
+ 0: "TYPE_NORMAL_UNSPECIFIED",
+ 1: "TYPE_PRIMARY",
+ 2: "TYPE_DESTRUCTIVE",
+ }
+ Action_Type_value = map[string]int32{
+ "TYPE_NORMAL_UNSPECIFIED": 0,
+ "TYPE_PRIMARY": 1,
+ "TYPE_DESTRUCTIVE": 2,
+ }
+)
+
+func (x Action_Type) Enum() *Action_Type {
+ p := new(Action_Type)
+ *p = x
+ return p
+}
+
+func (x Action_Type) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Action_Type) Descriptor() protoreflect.EnumDescriptor {
+ return file_chat_v1_messages_proto_enumTypes[0].Descriptor()
+}
+
+func (Action_Type) Type() protoreflect.EnumType {
+ return &file_chat_v1_messages_proto_enumTypes[0]
+}
+
+func (x Action_Type) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Action_Type.Descriptor instead.
+func (Action_Type) EnumDescriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{2, 0}
+}
+
+// Type representing how to present an embed field.
+type Embed_EmbedField_Presentation int32
+
+const (
+ // Show the field as data.
+ Embed_EmbedField_PRESENTATION_DATA_UNSPECIFIED Embed_EmbedField_Presentation = 0
+ // Show the field as a captioned image.
+ Embed_EmbedField_PRESENTATION_CAPTIONED_IMAGE Embed_EmbedField_Presentation = 1
+ // Show the field as a row.
+ Embed_EmbedField_PRESENTATION_ROW Embed_EmbedField_Presentation = 2
+)
+
+// Enum value maps for Embed_EmbedField_Presentation.
+var (
+ Embed_EmbedField_Presentation_name = map[int32]string{
+ 0: "PRESENTATION_DATA_UNSPECIFIED",
+ 1: "PRESENTATION_CAPTIONED_IMAGE",
+ 2: "PRESENTATION_ROW",
+ }
+ Embed_EmbedField_Presentation_value = map[string]int32{
+ "PRESENTATION_DATA_UNSPECIFIED": 0,
+ "PRESENTATION_CAPTIONED_IMAGE": 1,
+ "PRESENTATION_ROW": 2,
+ }
+)
+
+func (x Embed_EmbedField_Presentation) Enum() *Embed_EmbedField_Presentation {
+ p := new(Embed_EmbedField_Presentation)
+ *p = x
+ return p
+}
+
+func (x Embed_EmbedField_Presentation) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Embed_EmbedField_Presentation) Descriptor() protoreflect.EnumDescriptor {
+ return file_chat_v1_messages_proto_enumTypes[1].Descriptor()
+}
+
+func (Embed_EmbedField_Presentation) Type() protoreflect.EnumType {
+ return &file_chat_v1_messages_proto_enumTypes[1]
+}
+
+func (x Embed_EmbedField_Presentation) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Embed_EmbedField_Presentation.Descriptor instead.
+func (Embed_EmbedField_Presentation) EnumDescriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{3, 1, 0}
+}
+
+// The kind of colour modification to apply
+type Format_Color_Kind int32
+
+const (
+ // Dimmed colour
+ Format_Color_KIND_DIM_UNSPECIFIED Format_Color_Kind = 0
+ // Brightened colour
+ Format_Color_KIND_BRIGHT Format_Color_Kind = 1
+ // Negative colour (usually red)
+ Format_Color_KIND_NEGATIVE Format_Color_Kind = 2
+ // Positive colour (usually green)
+ Format_Color_KIND_POSITIVE Format_Color_Kind = 3
+ // Informational colour (usually blue)
+ Format_Color_KIND_INFO Format_Color_Kind = 4
+ // Warning colour (usually yellow-orange)
+ Format_Color_KIND_WARNING Format_Color_Kind = 5
+)
+
+// Enum value maps for Format_Color_Kind.
+var (
+ Format_Color_Kind_name = map[int32]string{
+ 0: "KIND_DIM_UNSPECIFIED",
+ 1: "KIND_BRIGHT",
+ 2: "KIND_NEGATIVE",
+ 3: "KIND_POSITIVE",
+ 4: "KIND_INFO",
+ 5: "KIND_WARNING",
+ }
+ Format_Color_Kind_value = map[string]int32{
+ "KIND_DIM_UNSPECIFIED": 0,
+ "KIND_BRIGHT": 1,
+ "KIND_NEGATIVE": 2,
+ "KIND_POSITIVE": 3,
+ "KIND_INFO": 4,
+ "KIND_WARNING": 5,
+ }
+)
+
+func (x Format_Color_Kind) Enum() *Format_Color_Kind {
+ p := new(Format_Color_Kind)
+ *p = x
+ return p
+}
+
+func (x Format_Color_Kind) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Format_Color_Kind) Descriptor() protoreflect.EnumDescriptor {
+ return file_chat_v1_messages_proto_enumTypes[2].Descriptor()
+}
+
+func (Format_Color_Kind) Type() protoreflect.EnumType {
+ return &file_chat_v1_messages_proto_enumTypes[2]
+}
+
+func (x Format_Color_Kind) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Format_Color_Kind.Descriptor instead.
+func (Format_Color_Kind) EnumDescriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 12, 0}
+}
+
+// The direction relative to the `message_id` message to get messages from.
+type GetChannelMessagesRequest_Direction int32
+
+const (
+ // Get messages before the anchor.
+ GetChannelMessagesRequest_DIRECTION_BEFORE_UNSPECIFIED GetChannelMessagesRequest_Direction = 0
+ // Get messages around the anchor, including the anchor.
+ GetChannelMessagesRequest_DIRECTION_AROUND GetChannelMessagesRequest_Direction = 1
+ // Get messages after the anchor.
+ GetChannelMessagesRequest_DIRECTION_AFTER GetChannelMessagesRequest_Direction = 2
+)
+
+// Enum value maps for GetChannelMessagesRequest_Direction.
+var (
+ GetChannelMessagesRequest_Direction_name = map[int32]string{
+ 0: "DIRECTION_BEFORE_UNSPECIFIED",
+ 1: "DIRECTION_AROUND",
+ 2: "DIRECTION_AFTER",
+ }
+ GetChannelMessagesRequest_Direction_value = map[string]int32{
+ "DIRECTION_BEFORE_UNSPECIFIED": 0,
+ "DIRECTION_AROUND": 1,
+ "DIRECTION_AFTER": 2,
+ }
+)
+
+func (x GetChannelMessagesRequest_Direction) Enum() *GetChannelMessagesRequest_Direction {
+ p := new(GetChannelMessagesRequest_Direction)
+ *p = x
+ return p
+}
+
+func (x GetChannelMessagesRequest_Direction) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (GetChannelMessagesRequest_Direction) Descriptor() protoreflect.EnumDescriptor {
+ return file_chat_v1_messages_proto_enumTypes[3].Descriptor()
+}
+
+func (GetChannelMessagesRequest_Direction) Type() protoreflect.EnumType {
+ return &file_chat_v1_messages_proto_enumTypes[3]
+}
+
+func (x GetChannelMessagesRequest_Direction) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use GetChannelMessagesRequest_Direction.Descriptor instead.
+func (GetChannelMessagesRequest_Direction) EnumDescriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{13, 0}
+}
+
+// Overrides provide a way to override the name and avatar of a message.
+type Overrides struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the overridden username.
+ Username *string `protobuf:"bytes,1,opt,name=username,proto3,oneof" json:"username,omitempty"`
+ // the overridden avatar.
+ Avatar *string `protobuf:"bytes,2,opt,name=avatar,proto3,oneof" json:"avatar,omitempty"`
+ // the reason for overriding username and avatar.
+ //
+ // Types that are assignable to Reason:
+ // *Overrides_UserDefined
+ // *Overrides_Webhook
+ // *Overrides_SystemPlurality
+ // *Overrides_SystemMessage
+ // *Overrides_Bridge
+ Reason isOverrides_Reason `protobuf_oneof:"reason"`
+}
+
+func (x *Overrides) Reset() {
+ *x = Overrides{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Overrides) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Overrides) ProtoMessage() {}
+
+func (x *Overrides) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_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 Overrides.ProtoReflect.Descriptor instead.
+func (*Overrides) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Overrides) GetUsername() string {
+ if x != nil && x.Username != nil {
+ return *x.Username
+ }
+ return ""
+}
+
+func (x *Overrides) GetAvatar() string {
+ if x != nil && x.Avatar != nil {
+ return *x.Avatar
+ }
+ return ""
+}
+
+func (m *Overrides) GetReason() isOverrides_Reason {
+ if m != nil {
+ return m.Reason
+ }
+ return nil
+}
+
+func (x *Overrides) GetUserDefined() string {
+ if x, ok := x.GetReason().(*Overrides_UserDefined); ok {
+ return x.UserDefined
+ }
+ return ""
+}
+
+func (x *Overrides) GetWebhook() *v1.Empty {
+ if x, ok := x.GetReason().(*Overrides_Webhook); ok {
+ return x.Webhook
+ }
+ return nil
+}
+
+func (x *Overrides) GetSystemPlurality() *v1.Empty {
+ if x, ok := x.GetReason().(*Overrides_SystemPlurality); ok {
+ return x.SystemPlurality
+ }
+ return nil
+}
+
+func (x *Overrides) GetSystemMessage() *v1.Empty {
+ if x, ok := x.GetReason().(*Overrides_SystemMessage); ok {
+ return x.SystemMessage
+ }
+ return nil
+}
+
+func (x *Overrides) GetBridge() *v1.Empty {
+ if x, ok := x.GetReason().(*Overrides_Bridge); ok {
+ return x.Bridge
+ }
+ return nil
+}
+
+type isOverrides_Reason interface {
+ isOverrides_Reason()
+}
+
+type Overrides_UserDefined struct {
+ // a custom reason in case the builtin ones don't fit
+ UserDefined string `protobuf:"bytes,3,opt,name=user_defined,json=userDefined,proto3,oneof"`
+}
+
+type Overrides_Webhook struct {
+ // the override occured because of a webhook
+ Webhook *v1.Empty `protobuf:"bytes,4,opt,name=webhook,proto3,oneof"`
+}
+
+type Overrides_SystemPlurality struct {
+ // plurality, not system as in computer
+ SystemPlurality *v1.Empty `protobuf:"bytes,5,opt,name=system_plurality,json=systemPlurality,proto3,oneof"`
+}
+
+type Overrides_SystemMessage struct {
+ // the override occured because it was made by the server
+ //
+ // Servers should reject messages sent by users with this override.
+ SystemMessage *v1.Empty `protobuf:"bytes,6,opt,name=system_message,json=systemMessage,proto3,oneof"`
+}
+
+type Overrides_Bridge struct {
+ // the override occured because of bridging
+ Bridge *v1.Empty `protobuf:"bytes,7,opt,name=bridge,proto3,oneof"`
+}
+
+func (*Overrides_UserDefined) isOverrides_Reason() {}
+
+func (*Overrides_Webhook) isOverrides_Reason() {}
+
+func (*Overrides_SystemPlurality) isOverrides_Reason() {}
+
+func (*Overrides_SystemMessage) isOverrides_Reason() {}
+
+func (*Overrides_Bridge) isOverrides_Reason() {}
+
+// The payload sent to the bot when an action is triggered.
+type ActionPayload struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The payload data
+ //
+ // Types that are assignable to Payload:
+ // *ActionPayload_Button_
+ // *ActionPayload_Dropdown_
+ // *ActionPayload_Input_
+ Payload isActionPayload_Payload `protobuf_oneof:"payload"`
+}
+
+func (x *ActionPayload) Reset() {
+ *x = ActionPayload{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ActionPayload) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ActionPayload) ProtoMessage() {}
+
+func (x *ActionPayload) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_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 ActionPayload.ProtoReflect.Descriptor instead.
+func (*ActionPayload) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{1}
+}
+
+func (m *ActionPayload) GetPayload() isActionPayload_Payload {
+ if m != nil {
+ return m.Payload
+ }
+ return nil
+}
+
+func (x *ActionPayload) GetButton() *ActionPayload_Button {
+ if x, ok := x.GetPayload().(*ActionPayload_Button_); ok {
+ return x.Button
+ }
+ return nil
+}
+
+func (x *ActionPayload) GetDropdown() *ActionPayload_Dropdown {
+ if x, ok := x.GetPayload().(*ActionPayload_Dropdown_); ok {
+ return x.Dropdown
+ }
+ return nil
+}
+
+func (x *ActionPayload) GetInput() *ActionPayload_Input {
+ if x, ok := x.GetPayload().(*ActionPayload_Input_); ok {
+ return x.Input
+ }
+ return nil
+}
+
+type isActionPayload_Payload interface {
+ isActionPayload_Payload()
+}
+
+type ActionPayload_Button_ struct {
+ // Payload for a button
+ Button *ActionPayload_Button `protobuf:"bytes,1,opt,name=button,proto3,oneof"`
+}
+
+type ActionPayload_Dropdown_ struct {
+ // Payload for a dropdown
+ Dropdown *ActionPayload_Dropdown `protobuf:"bytes,2,opt,name=dropdown,proto3,oneof"`
+}
+
+type ActionPayload_Input_ struct {
+ // Payload for a text input
+ Input *ActionPayload_Input `protobuf:"bytes,3,opt,name=input,proto3,oneof"`
+}
+
+func (*ActionPayload_Button_) isActionPayload_Payload() {}
+
+func (*ActionPayload_Dropdown_) isActionPayload_Payload() {}
+
+func (*ActionPayload_Input_) isActionPayload_Payload() {}
+
+// Actions are interactive elements that can exist within an embed.
+type Action struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Type of the action.
+ ActionType Action_Type `protobuf:"varint,1,opt,name=action_type,json=actionType,proto3,enum=protocol.chat.v1.Action_Type" json:"action_type,omitempty"`
+ // The kind of the action.
+ //
+ // Types that are assignable to Kind:
+ // *Action_Button_
+ // *Action_Dropdown_
+ // *Action_Input_
+ Kind isAction_Kind `protobuf_oneof:"kind"`
+}
+
+func (x *Action) Reset() {
+ *x = Action{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Action) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Action) ProtoMessage() {}
+
+func (x *Action) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_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 Action.ProtoReflect.Descriptor instead.
+func (*Action) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *Action) GetActionType() Action_Type {
+ if x != nil {
+ return x.ActionType
+ }
+ return Action_TYPE_NORMAL_UNSPECIFIED
+}
+
+func (m *Action) GetKind() isAction_Kind {
+ if m != nil {
+ return m.Kind
+ }
+ return nil
+}
+
+func (x *Action) GetButton() *Action_Button {
+ if x, ok := x.GetKind().(*Action_Button_); ok {
+ return x.Button
+ }
+ return nil
+}
+
+func (x *Action) GetDropdown() *Action_Dropdown {
+ if x, ok := x.GetKind().(*Action_Dropdown_); ok {
+ return x.Dropdown
+ }
+ return nil
+}
+
+func (x *Action) GetInput() *Action_Input {
+ if x, ok := x.GetKind().(*Action_Input_); ok {
+ return x.Input
+ }
+ return nil
+}
+
+type isAction_Kind interface {
+ isAction_Kind()
+}
+
+type Action_Button_ struct {
+ // Button action.
+ Button *Action_Button `protobuf:"bytes,2,opt,name=button,proto3,oneof"`
+}
+
+type Action_Dropdown_ struct {
+ // Dropdown action.
+ Dropdown *Action_Dropdown `protobuf:"bytes,3,opt,name=dropdown,proto3,oneof"`
+}
+
+type Action_Input_ struct {
+ // Input action.
+ Input *Action_Input `protobuf:"bytes,4,opt,name=input,proto3,oneof"`
+}
+
+func (*Action_Button_) isAction_Kind() {}
+
+func (*Action_Dropdown_) isAction_Kind() {}
+
+func (*Action_Input_) isAction_Kind() {}
+
+// Object representing a message embed.
+type Embed struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Title of this embed.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Body text of this embed.
+ Body *FormattedText `protobuf:"bytes,2,opt,name=body,proto3,oneof" json:"body,omitempty"`
+ // Color of this embed.
+ Color *int32 `protobuf:"varint,3,opt,name=color,proto3,oneof" json:"color,omitempty"`
+ // Embed heading for the header.
+ Header *Embed_EmbedHeading `protobuf:"bytes,4,opt,name=header,proto3,oneof" json:"header,omitempty"`
+ // Embed heading for the footer.
+ Footer *Embed_EmbedHeading `protobuf:"bytes,5,opt,name=footer,proto3,oneof" json:"footer,omitempty"`
+ // Fields of this embed.
+ Fields []*Embed_EmbedField `protobuf:"bytes,6,rep,name=fields,proto3" json:"fields,omitempty"`
+}
+
+func (x *Embed) Reset() {
+ *x = Embed{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Embed) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Embed) ProtoMessage() {}
+
+func (x *Embed) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_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 Embed.ProtoReflect.Descriptor instead.
+func (*Embed) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *Embed) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Embed) GetBody() *FormattedText {
+ if x != nil {
+ return x.Body
+ }
+ return nil
+}
+
+func (x *Embed) GetColor() int32 {
+ if x != nil && x.Color != nil {
+ return *x.Color
+ }
+ return 0
+}
+
+func (x *Embed) GetHeader() *Embed_EmbedHeading {
+ if x != nil {
+ return x.Header
+ }
+ return nil
+}
+
+func (x *Embed) GetFooter() *Embed_EmbedHeading {
+ if x != nil {
+ return x.Footer
+ }
+ return nil
+}
+
+func (x *Embed) GetFields() []*Embed_EmbedField {
+ if x != nil {
+ return x.Fields
+ }
+ return nil
+}
+
+//
+// Minithumbnail is an extremely low-quality JPEG thumbnail.
+//
+// The resolution is usually no larger than 64x64.
+type Minithumbnail struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The width of the minithumbnail
+ Width uint32 `protobuf:"varint,1,opt,name=width,proto3" json:"width,omitempty"`
+ // The height of the minithumbnail
+ Height uint32 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
+ // The JPEG data of the minithumbnail
+ Data []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
+}
+
+func (x *Minithumbnail) Reset() {
+ *x = Minithumbnail{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Minithumbnail) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Minithumbnail) ProtoMessage() {}
+
+func (x *Minithumbnail) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_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 Minithumbnail.ProtoReflect.Descriptor instead.
+func (*Minithumbnail) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *Minithumbnail) GetWidth() uint32 {
+ if x != nil {
+ return x.Width
+ }
+ return 0
+}
+
+func (x *Minithumbnail) GetHeight() uint32 {
+ if x != nil {
+ return x.Height
+ }
+ return 0
+}
+
+func (x *Minithumbnail) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+//
+// Photo contains data about a photo.
+//
+// Photo are always JPEG, and are
+// constrained to the following rules:
+//
+// - width+height <= 10_000
+// - width <= height*20
+// - height <= width*20
+//
+// Photos are preferably no more than 10MB
+// in size, and servers may compress as necessary.
+type Photo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The HMC URL of the photo.
+ Hmc string `protobuf:"bytes,1,opt,name=hmc,proto3" json:"hmc,omitempty"`
+ // The filename of the photo.
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ // The size of the photo.
+ FileSize uint32 `protobuf:"varint,3,opt,name=file_size,json=fileSize,proto3" json:"file_size,omitempty"`
+ // The height of the photo, in pixels.
+ Height uint32 `protobuf:"varint,4,opt,name=height,proto3" json:"height,omitempty"`
+ // The width of the photo, in pixels.
+ Width uint32 `protobuf:"varint,5,opt,name=width,proto3" json:"width,omitempty"`
+ // The photo's caption.
+ Caption *FormattedText `protobuf:"bytes,6,opt,name=caption,proto3" json:"caption,omitempty"`
+ // A thumbnail representing the photo.
+ Minithumbnail *Minithumbnail `protobuf:"bytes,7,opt,name=minithumbnail,proto3" json:"minithumbnail,omitempty"`
+}
+
+func (x *Photo) Reset() {
+ *x = Photo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Photo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Photo) ProtoMessage() {}
+
+func (x *Photo) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_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 Photo.ProtoReflect.Descriptor instead.
+func (*Photo) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *Photo) GetHmc() string {
+ if x != nil {
+ return x.Hmc
+ }
+ return ""
+}
+
+func (x *Photo) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Photo) GetFileSize() uint32 {
+ if x != nil {
+ return x.FileSize
+ }
+ return 0
+}
+
+func (x *Photo) GetHeight() uint32 {
+ if x != nil {
+ return x.Height
+ }
+ return 0
+}
+
+func (x *Photo) GetWidth() uint32 {
+ if x != nil {
+ return x.Width
+ }
+ return 0
+}
+
+func (x *Photo) GetCaption() *FormattedText {
+ if x != nil {
+ return x.Caption
+ }
+ return nil
+}
+
+func (x *Photo) GetMinithumbnail() *Minithumbnail {
+ if x != nil {
+ return x.Minithumbnail
+ }
+ return nil
+}
+
+// Object representing a generic message attachment.
+type Attachment struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // File ID of this attachment.
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ // Filename of this attachment.
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ // Mimetype of this attachment.
+ Mimetype string `protobuf:"bytes,3,opt,name=mimetype,proto3" json:"mimetype,omitempty"`
+ // Size of this attachment.
+ Size uint32 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
+ // Caption of this attachment.
+ Caption *FormattedText `protobuf:"bytes,5,opt,name=caption,proto3,oneof" json:"caption,omitempty"`
+}
+
+func (x *Attachment) Reset() {
+ *x = Attachment{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Attachment) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Attachment) ProtoMessage() {}
+
+func (x *Attachment) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_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 Attachment.ProtoReflect.Descriptor instead.
+func (*Attachment) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *Attachment) GetId() string {
+ if x != nil {
+ return x.Id
+ }
+ return ""
+}
+
+func (x *Attachment) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Attachment) GetMimetype() string {
+ if x != nil {
+ return x.Mimetype
+ }
+ return ""
+}
+
+func (x *Attachment) GetSize() uint32 {
+ if x != nil {
+ return x.Size
+ }
+ return 0
+}
+
+func (x *Attachment) GetCaption() *FormattedText {
+ if x != nil {
+ return x.Caption
+ }
+ return nil
+}
+
+// Object representing a message's content.
+type Content struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Content data.
+ //
+ // Types that are assignable to Content:
+ // *Content_TextMessage
+ // *Content_EmbedMessage
+ // *Content_AttachmentMessage
+ // *Content_PhotoMessage
+ // *Content_InviteRejected_
+ // *Content_InviteAccepted_
+ // *Content_RoomUpgradedToGuild_
+ Content isContent_Content `protobuf_oneof:"content"`
+}
+
+func (x *Content) Reset() {
+ *x = Content{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content) ProtoMessage() {}
+
+func (x *Content) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[7]
+ 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 Content.ProtoReflect.Descriptor instead.
+func (*Content) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7}
+}
+
+func (m *Content) GetContent() isContent_Content {
+ if m != nil {
+ return m.Content
+ }
+ return nil
+}
+
+func (x *Content) GetTextMessage() *Content_TextContent {
+ if x, ok := x.GetContent().(*Content_TextMessage); ok {
+ return x.TextMessage
+ }
+ return nil
+}
+
+func (x *Content) GetEmbedMessage() *Content_EmbedContent {
+ if x, ok := x.GetContent().(*Content_EmbedMessage); ok {
+ return x.EmbedMessage
+ }
+ return nil
+}
+
+func (x *Content) GetAttachmentMessage() *Content_AttachmentContent {
+ if x, ok := x.GetContent().(*Content_AttachmentMessage); ok {
+ return x.AttachmentMessage
+ }
+ return nil
+}
+
+func (x *Content) GetPhotoMessage() *Content_PhotoContent {
+ if x, ok := x.GetContent().(*Content_PhotoMessage); ok {
+ return x.PhotoMessage
+ }
+ return nil
+}
+
+func (x *Content) GetInviteRejected() *Content_InviteRejected {
+ if x, ok := x.GetContent().(*Content_InviteRejected_); ok {
+ return x.InviteRejected
+ }
+ return nil
+}
+
+func (x *Content) GetInviteAccepted() *Content_InviteAccepted {
+ if x, ok := x.GetContent().(*Content_InviteAccepted_); ok {
+ return x.InviteAccepted
+ }
+ return nil
+}
+
+func (x *Content) GetRoomUpgradedToGuild() *Content_RoomUpgradedToGuild {
+ if x, ok := x.GetContent().(*Content_RoomUpgradedToGuild_); ok {
+ return x.RoomUpgradedToGuild
+ }
+ return nil
+}
+
+type isContent_Content interface {
+ isContent_Content()
+}
+
+type Content_TextMessage struct {
+ // Text content.
+ TextMessage *Content_TextContent `protobuf:"bytes,1,opt,name=text_message,json=textMessage,proto3,oneof"`
+}
+
+type Content_EmbedMessage struct {
+ // Embed content.
+ EmbedMessage *Content_EmbedContent `protobuf:"bytes,2,opt,name=embed_message,json=embedMessage,proto3,oneof"`
+}
+
+type Content_AttachmentMessage struct {
+ // Attachment content.
+ AttachmentMessage *Content_AttachmentContent `protobuf:"bytes,3,opt,name=attachment_message,json=attachmentMessage,proto3,oneof"`
+}
+
+type Content_PhotoMessage struct {
+ // Photo content.
+ PhotoMessage *Content_PhotoContent `protobuf:"bytes,4,opt,name=photo_message,json=photoMessage,proto3,oneof"`
+}
+
+type Content_InviteRejected_ struct {
+ // A user rejected an invite.
+ InviteRejected *Content_InviteRejected `protobuf:"bytes,5,opt,name=invite_rejected,json=inviteRejected,proto3,oneof"`
+}
+
+type Content_InviteAccepted_ struct {
+ // A user accepted an invite.
+ InviteAccepted *Content_InviteAccepted `protobuf:"bytes,6,opt,name=invite_accepted,json=inviteAccepted,proto3,oneof"`
+}
+
+type Content_RoomUpgradedToGuild_ struct {
+ // A user upgraded a guild from "room" to "normal".
+ RoomUpgradedToGuild *Content_RoomUpgradedToGuild `protobuf:"bytes,7,opt,name=room_upgraded_to_guild,json=roomUpgradedToGuild,proto3,oneof"`
+}
+
+func (*Content_TextMessage) isContent_Content() {}
+
+func (*Content_EmbedMessage) isContent_Content() {}
+
+func (*Content_AttachmentMessage) isContent_Content() {}
+
+func (*Content_PhotoMessage) isContent_Content() {}
+
+func (*Content_InviteRejected_) isContent_Content() {}
+
+func (*Content_InviteAccepted_) isContent_Content() {}
+
+func (*Content_RoomUpgradedToGuild_) isContent_Content() {}
+
+// Object representing a reaction.
+type Reaction struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Emote data for this reaction.
+ //
+ // Emote's image ID is used as an identifier for unique reactions.
+ // Emotes with the same names should be "deduplicated" by a client, by suffixing
+ // their names with `~1`, `~2` and so on.
+ Emote *v11.Emote `protobuf:"bytes,1,opt,name=emote,proto3" json:"emote,omitempty"`
+ // How many reactions this reaction has.
+ Count uint32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
+}
+
+func (x *Reaction) Reset() {
+ *x = Reaction{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Reaction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Reaction) ProtoMessage() {}
+
+func (x *Reaction) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[8]
+ 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 Reaction.ProtoReflect.Descriptor instead.
+func (*Reaction) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *Reaction) GetEmote() *v11.Emote {
+ if x != nil {
+ return x.Emote
+ }
+ return nil
+}
+
+func (x *Reaction) GetCount() uint32 {
+ if x != nil {
+ return x.Count
+ }
+ return 0
+}
+
+// A format for text
+type Format struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // where the format begins to apply to
+ Start uint32 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`
+ // how many characters the format is
+ Length uint32 `protobuf:"varint,2,opt,name=length,proto3" json:"length,omitempty"`
+ // the style if format to apply to this text
+ //
+ // Types that are assignable to Format:
+ // *Format_Bold_
+ // *Format_Italic_
+ // *Format_Underline_
+ // *Format_Monospace_
+ // *Format_Superscript_
+ // *Format_Subscript_
+ // *Format_CodeBlock_
+ // *Format_UserMention_
+ // *Format_RoleMention_
+ // *Format_ChannelMention_
+ // *Format_GuildMention_
+ // *Format_Emoji_
+ // *Format_Color_
+ // *Format_Localization_
+ Format isFormat_Format `protobuf_oneof:"format"`
+}
+
+func (x *Format) Reset() {
+ *x = Format{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format) ProtoMessage() {}
+
+func (x *Format) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[9]
+ 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 Format.ProtoReflect.Descriptor instead.
+func (*Format) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *Format) GetStart() uint32 {
+ if x != nil {
+ return x.Start
+ }
+ return 0
+}
+
+func (x *Format) GetLength() uint32 {
+ if x != nil {
+ return x.Length
+ }
+ return 0
+}
+
+func (m *Format) GetFormat() isFormat_Format {
+ if m != nil {
+ return m.Format
+ }
+ return nil
+}
+
+func (x *Format) GetBold() *Format_Bold {
+ if x, ok := x.GetFormat().(*Format_Bold_); ok {
+ return x.Bold
+ }
+ return nil
+}
+
+func (x *Format) GetItalic() *Format_Italic {
+ if x, ok := x.GetFormat().(*Format_Italic_); ok {
+ return x.Italic
+ }
+ return nil
+}
+
+func (x *Format) GetUnderline() *Format_Underline {
+ if x, ok := x.GetFormat().(*Format_Underline_); ok {
+ return x.Underline
+ }
+ return nil
+}
+
+func (x *Format) GetMonospace() *Format_Monospace {
+ if x, ok := x.GetFormat().(*Format_Monospace_); ok {
+ return x.Monospace
+ }
+ return nil
+}
+
+func (x *Format) GetSuperscript() *Format_Superscript {
+ if x, ok := x.GetFormat().(*Format_Superscript_); ok {
+ return x.Superscript
+ }
+ return nil
+}
+
+func (x *Format) GetSubscript() *Format_Subscript {
+ if x, ok := x.GetFormat().(*Format_Subscript_); ok {
+ return x.Subscript
+ }
+ return nil
+}
+
+func (x *Format) GetCodeBlock() *Format_CodeBlock {
+ if x, ok := x.GetFormat().(*Format_CodeBlock_); ok {
+ return x.CodeBlock
+ }
+ return nil
+}
+
+func (x *Format) GetUserMention() *Format_UserMention {
+ if x, ok := x.GetFormat().(*Format_UserMention_); ok {
+ return x.UserMention
+ }
+ return nil
+}
+
+func (x *Format) GetRoleMention() *Format_RoleMention {
+ if x, ok := x.GetFormat().(*Format_RoleMention_); ok {
+ return x.RoleMention
+ }
+ return nil
+}
+
+func (x *Format) GetChannelMention() *Format_ChannelMention {
+ if x, ok := x.GetFormat().(*Format_ChannelMention_); ok {
+ return x.ChannelMention
+ }
+ return nil
+}
+
+func (x *Format) GetGuildMention() *Format_GuildMention {
+ if x, ok := x.GetFormat().(*Format_GuildMention_); ok {
+ return x.GuildMention
+ }
+ return nil
+}
+
+func (x *Format) GetEmoji() *Format_Emoji {
+ if x, ok := x.GetFormat().(*Format_Emoji_); ok {
+ return x.Emoji
+ }
+ return nil
+}
+
+func (x *Format) GetColor() *Format_Color {
+ if x, ok := x.GetFormat().(*Format_Color_); ok {
+ return x.Color
+ }
+ return nil
+}
+
+func (x *Format) GetLocalization() *Format_Localization {
+ if x, ok := x.GetFormat().(*Format_Localization_); ok {
+ return x.Localization
+ }
+ return nil
+}
+
+type isFormat_Format interface {
+ isFormat_Format()
+}
+
+type Format_Bold_ struct {
+ // a text format for bold text
+ Bold *Format_Bold `protobuf:"bytes,3,opt,name=bold,proto3,oneof"`
+}
+
+type Format_Italic_ struct {
+ // a text format for italic text
+ Italic *Format_Italic `protobuf:"bytes,4,opt,name=italic,proto3,oneof"`
+}
+
+type Format_Underline_ struct {
+ // a text format for underline text
+ Underline *Format_Underline `protobuf:"bytes,5,opt,name=underline,proto3,oneof"`
+}
+
+type Format_Monospace_ struct {
+ // a text format for monospace text
+ Monospace *Format_Monospace `protobuf:"bytes,6,opt,name=monospace,proto3,oneof"`
+}
+
+type Format_Superscript_ struct {
+ // a text format for superscript text
+ Superscript *Format_Superscript `protobuf:"bytes,7,opt,name=superscript,proto3,oneof"`
+}
+
+type Format_Subscript_ struct {
+ // a text format for subscript text
+ Subscript *Format_Subscript `protobuf:"bytes,8,opt,name=subscript,proto3,oneof"`
+}
+
+type Format_CodeBlock_ struct {
+ // a text format for a codeblock
+ CodeBlock *Format_CodeBlock `protobuf:"bytes,9,opt,name=code_block,json=codeBlock,proto3,oneof"`
+}
+
+type Format_UserMention_ struct {
+ // a text format for a user mention
+ UserMention *Format_UserMention `protobuf:"bytes,10,opt,name=user_mention,json=userMention,proto3,oneof"`
+}
+
+type Format_RoleMention_ struct {
+ // a text format for a role mention
+ RoleMention *Format_RoleMention `protobuf:"bytes,11,opt,name=role_mention,json=roleMention,proto3,oneof"`
+}
+
+type Format_ChannelMention_ struct {
+ // a text format for a channel mention
+ ChannelMention *Format_ChannelMention `protobuf:"bytes,12,opt,name=channel_mention,json=channelMention,proto3,oneof"`
+}
+
+type Format_GuildMention_ struct {
+ // a text format for a guild mention
+ GuildMention *Format_GuildMention `protobuf:"bytes,13,opt,name=guild_mention,json=guildMention,proto3,oneof"`
+}
+
+type Format_Emoji_ struct {
+ // a text format for an emoji
+ Emoji *Format_Emoji `protobuf:"bytes,14,opt,name=emoji,proto3,oneof"`
+}
+
+type Format_Color_ struct {
+ // a text format for coloured text
+ Color *Format_Color `protobuf:"bytes,15,opt,name=color,proto3,oneof"`
+}
+
+type Format_Localization_ struct {
+ // a text format for localization
+ Localization *Format_Localization `protobuf:"bytes,16,opt,name=localization,proto3,oneof"`
+}
+
+func (*Format_Bold_) isFormat_Format() {}
+
+func (*Format_Italic_) isFormat_Format() {}
+
+func (*Format_Underline_) isFormat_Format() {}
+
+func (*Format_Monospace_) isFormat_Format() {}
+
+func (*Format_Superscript_) isFormat_Format() {}
+
+func (*Format_Subscript_) isFormat_Format() {}
+
+func (*Format_CodeBlock_) isFormat_Format() {}
+
+func (*Format_UserMention_) isFormat_Format() {}
+
+func (*Format_RoleMention_) isFormat_Format() {}
+
+func (*Format_ChannelMention_) isFormat_Format() {}
+
+func (*Format_GuildMention_) isFormat_Format() {}
+
+func (*Format_Emoji_) isFormat_Format() {}
+
+func (*Format_Color_) isFormat_Format() {}
+
+func (*Format_Localization_) isFormat_Format() {}
+
+// Formatted text
+type FormattedText struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The textual content of a message
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // The formats for a message
+ Format []*Format `protobuf:"bytes,2,rep,name=format,proto3" json:"format,omitempty"`
+}
+
+func (x *FormattedText) Reset() {
+ *x = FormattedText{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FormattedText) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FormattedText) ProtoMessage() {}
+
+func (x *FormattedText) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[10]
+ 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 FormattedText.ProtoReflect.Descriptor instead.
+func (*FormattedText) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *FormattedText) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *FormattedText) GetFormat() []*Format {
+ if x != nil {
+ return x.Format
+ }
+ return nil
+}
+
+// Object representing a message without the ID part.
+type Message struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Metadata of this message.
+ Metadata *v1.Metadata `protobuf:"bytes,1,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+ // Overrides of this message.
+ Overrides *Overrides `protobuf:"bytes,2,opt,name=overrides,proto3" json:"overrides,omitempty"`
+ // User ID of the user who sent this message.
+ AuthorId uint64 `protobuf:"varint,3,opt,name=author_id,json=authorId,proto3" json:"author_id,omitempty"`
+ // When this message was created, in miliseconds since unix epoch
+ CreatedAt uint64 `protobuf:"varint,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
+ // The most recent time this message was edited, in milliseconds since unix epoch
+ EditedAt *uint64 `protobuf:"varint,5,opt,name=edited_at,json=editedAt,proto3,oneof" json:"edited_at,omitempty"`
+ // The message this message is a reply to.
+ InReplyTo *uint64 `protobuf:"varint,6,opt,name=in_reply_to,json=inReplyTo,proto3,oneof" json:"in_reply_to,omitempty"`
+ // The content of the message.
+ Content *Content `protobuf:"bytes,7,opt,name=content,proto3" json:"content,omitempty"`
+ // The reactions of the message.
+ Reactions []*Reaction `protobuf:"bytes,8,rep,name=reactions,proto3" json:"reactions,omitempty"`
+}
+
+func (x *Message) Reset() {
+ *x = Message{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Message) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Message) ProtoMessage() {}
+
+func (x *Message) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[11]
+ 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 Message.ProtoReflect.Descriptor instead.
+func (*Message) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *Message) GetMetadata() *v1.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+func (x *Message) GetOverrides() *Overrides {
+ if x != nil {
+ return x.Overrides
+ }
+ return nil
+}
+
+func (x *Message) GetAuthorId() uint64 {
+ if x != nil {
+ return x.AuthorId
+ }
+ return 0
+}
+
+func (x *Message) GetCreatedAt() uint64 {
+ if x != nil {
+ return x.CreatedAt
+ }
+ return 0
+}
+
+func (x *Message) GetEditedAt() uint64 {
+ if x != nil && x.EditedAt != nil {
+ return *x.EditedAt
+ }
+ return 0
+}
+
+func (x *Message) GetInReplyTo() uint64 {
+ if x != nil && x.InReplyTo != nil {
+ return *x.InReplyTo
+ }
+ return 0
+}
+
+func (x *Message) GetContent() *Content {
+ if x != nil {
+ return x.Content
+ }
+ return nil
+}
+
+func (x *Message) GetReactions() []*Reaction {
+ if x != nil {
+ return x.Reactions
+ }
+ return nil
+}
+
+// Object representing a message with it's ID.
+type MessageWithId struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the message.
+ MessageId uint64 `protobuf:"varint,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // The message data.
+ Message *Message `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
+}
+
+func (x *MessageWithId) Reset() {
+ *x = MessageWithId{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MessageWithId) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MessageWithId) ProtoMessage() {}
+
+func (x *MessageWithId) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[12]
+ 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 MessageWithId.ProtoReflect.Descriptor instead.
+func (*MessageWithId) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *MessageWithId) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *MessageWithId) GetMessage() *Message {
+ if x != nil {
+ return x.Message
+ }
+ return nil
+}
+
+// Used in the `GetChannelMessages` endpoint.
+type GetChannelMessagesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that has the channel.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel to get messages from.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // The ID of the message that will be used as an "anchor" point to figure out
+ // where to get the messages.
+ // If not specified, the `direction` will be ignored and the newest messages
+ // will be returned.
+ MessageId *uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3,oneof" json:"message_id,omitempty"`
+ // On which direction to get the messages.
+ //
+ // - By default, it is "before", which means you will get messages before the
+ // `message_id` message.
+ // - If it is "around", you will get the messages around the `message_id`
+ // message. This will include the `message_id` message itself, as the middle
+ // item of the list returned.
+ // - If it is "after", you will get the messages after the `message_id`
+ // message.
+ Direction *GetChannelMessagesRequest_Direction `protobuf:"varint,4,opt,name=direction,proto3,enum=protocol.chat.v1.GetChannelMessagesRequest_Direction,oneof" json:"direction,omitempty"`
+ // How many messages to get.
+ //
+ // - If `0`, a recommended message count to return is 25. If the direction is
+ // "around", the recommended value is 12.
+ // - If the direction to get the messages is "around", this count will not be
+ // the *total* count of messages to return, but instead the count of messages
+ // to return *for each direction*, before and after.
+ // - Servers should enforce their own maximum limit, and clamp this value to
+ // the limit.
+ Count *uint32 `protobuf:"varint,5,opt,name=count,proto3,oneof" json:"count,omitempty"`
+}
+
+func (x *GetChannelMessagesRequest) Reset() {
+ *x = GetChannelMessagesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetChannelMessagesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetChannelMessagesRequest) ProtoMessage() {}
+
+func (x *GetChannelMessagesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[13]
+ 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 GetChannelMessagesRequest.ProtoReflect.Descriptor instead.
+func (*GetChannelMessagesRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *GetChannelMessagesRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *GetChannelMessagesRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *GetChannelMessagesRequest) GetMessageId() uint64 {
+ if x != nil && x.MessageId != nil {
+ return *x.MessageId
+ }
+ return 0
+}
+
+func (x *GetChannelMessagesRequest) GetDirection() GetChannelMessagesRequest_Direction {
+ if x != nil && x.Direction != nil {
+ return *x.Direction
+ }
+ return GetChannelMessagesRequest_DIRECTION_BEFORE_UNSPECIFIED
+}
+
+func (x *GetChannelMessagesRequest) GetCount() uint32 {
+ if x != nil && x.Count != nil {
+ return *x.Count
+ }
+ return 0
+}
+
+// Used in the `GetChannelMessages` endpoint.
+type GetChannelMessagesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Has reached the top (first message) of the message history.
+ ReachedTop bool `protobuf:"varint,1,opt,name=reached_top,json=reachedTop,proto3" json:"reached_top,omitempty"`
+ // Has reached the bottom (last message) of the message history.
+ ReachedBottom bool `protobuf:"varint,2,opt,name=reached_bottom,json=reachedBottom,proto3" json:"reached_bottom,omitempty"`
+ // The messages requested.
+ Messages []*MessageWithId `protobuf:"bytes,3,rep,name=messages,proto3" json:"messages,omitempty"`
+}
+
+func (x *GetChannelMessagesResponse) Reset() {
+ *x = GetChannelMessagesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetChannelMessagesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetChannelMessagesResponse) ProtoMessage() {}
+
+func (x *GetChannelMessagesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[14]
+ 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 GetChannelMessagesResponse.ProtoReflect.Descriptor instead.
+func (*GetChannelMessagesResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *GetChannelMessagesResponse) GetReachedTop() bool {
+ if x != nil {
+ return x.ReachedTop
+ }
+ return false
+}
+
+func (x *GetChannelMessagesResponse) GetReachedBottom() bool {
+ if x != nil {
+ return x.ReachedBottom
+ }
+ return false
+}
+
+func (x *GetChannelMessagesResponse) GetMessages() []*MessageWithId {
+ if x != nil {
+ return x.Messages
+ }
+ return nil
+}
+
+// Used in the `GetMessage` endpoint.
+type GetMessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message you want to get.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *GetMessageRequest) Reset() {
+ *x = GetMessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetMessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetMessageRequest) ProtoMessage() {}
+
+func (x *GetMessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[15]
+ 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 GetMessageRequest.ProtoReflect.Descriptor instead.
+func (*GetMessageRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *GetMessageRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *GetMessageRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *GetMessageRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Used in the `GetMessage` endpoint.
+type GetMessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The message requested.
+ Message *Message `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
+}
+
+func (x *GetMessageResponse) Reset() {
+ *x = GetMessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetMessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetMessageResponse) ProtoMessage() {}
+
+func (x *GetMessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[16]
+ 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 GetMessageResponse.ProtoReflect.Descriptor instead.
+func (*GetMessageResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *GetMessageResponse) GetMessage() *Message {
+ if x != nil {
+ return x.Message
+ }
+ return nil
+}
+
+// Used in the `DeleteMessage` endpoint.
+type DeleteMessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message you want to delete.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *DeleteMessageRequest) Reset() {
+ *x = DeleteMessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteMessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteMessageRequest) ProtoMessage() {}
+
+func (x *DeleteMessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[17]
+ 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 DeleteMessageRequest.ProtoReflect.Descriptor instead.
+func (*DeleteMessageRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *DeleteMessageRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *DeleteMessageRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *DeleteMessageRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Used in the `DeleteMessage` endpoint.
+type DeleteMessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteMessageResponse) Reset() {
+ *x = DeleteMessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteMessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteMessageResponse) ProtoMessage() {}
+
+func (x *DeleteMessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[18]
+ 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 DeleteMessageResponse.ProtoReflect.Descriptor instead.
+func (*DeleteMessageResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{18}
+}
+
+// Used in the `TriggerAction` endpoint.
+type TriggerActionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message you want to trigger an action in.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // Payload of action data.
+ Payload *ActionPayload `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
+}
+
+func (x *TriggerActionRequest) Reset() {
+ *x = TriggerActionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TriggerActionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TriggerActionRequest) ProtoMessage() {}
+
+func (x *TriggerActionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[19]
+ 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 TriggerActionRequest.ProtoReflect.Descriptor instead.
+func (*TriggerActionRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *TriggerActionRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *TriggerActionRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *TriggerActionRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *TriggerActionRequest) GetPayload() *ActionPayload {
+ if x != nil {
+ return x.Payload
+ }
+ return nil
+}
+
+// Used in the `TriggerAction` endpoint.
+type TriggerActionResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *TriggerActionResponse) Reset() {
+ *x = TriggerActionResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TriggerActionResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TriggerActionResponse) ProtoMessage() {}
+
+func (x *TriggerActionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[20]
+ 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 TriggerActionResponse.ProtoReflect.Descriptor instead.
+func (*TriggerActionResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{20}
+}
+
+// Used in the `SendMessage` endpoint.
+type SendMessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel you want to send a message in.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Content of the new message.
+ Content *Content `protobuf:"bytes,3,opt,name=content,proto3" json:"content,omitempty"`
+ // Echo ID of the new message. This can be used by clients to
+ // determine whether a message is sent.
+ EchoId *uint64 `protobuf:"varint,4,opt,name=echo_id,json=echoId,proto3,oneof" json:"echo_id,omitempty"`
+ // The overrides of this new message.
+ Overrides *Overrides `protobuf:"bytes,6,opt,name=overrides,proto3,oneof" json:"overrides,omitempty"`
+ // The message this new message is a reply to.
+ InReplyTo *uint64 `protobuf:"varint,7,opt,name=in_reply_to,json=inReplyTo,proto3,oneof" json:"in_reply_to,omitempty"`
+ // The metadata of this new message.
+ Metadata *v1.Metadata `protobuf:"bytes,5,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+}
+
+func (x *SendMessageRequest) Reset() {
+ *x = SendMessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendMessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendMessageRequest) ProtoMessage() {}
+
+func (x *SendMessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[21]
+ 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 SendMessageRequest.ProtoReflect.Descriptor instead.
+func (*SendMessageRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *SendMessageRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *SendMessageRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *SendMessageRequest) GetContent() *Content {
+ if x != nil {
+ return x.Content
+ }
+ return nil
+}
+
+func (x *SendMessageRequest) GetEchoId() uint64 {
+ if x != nil && x.EchoId != nil {
+ return *x.EchoId
+ }
+ return 0
+}
+
+func (x *SendMessageRequest) GetOverrides() *Overrides {
+ if x != nil {
+ return x.Overrides
+ }
+ return nil
+}
+
+func (x *SendMessageRequest) GetInReplyTo() uint64 {
+ if x != nil && x.InReplyTo != nil {
+ return *x.InReplyTo
+ }
+ return 0
+}
+
+func (x *SendMessageRequest) GetMetadata() *v1.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// Used in the `SendMessage` endpoint.
+type SendMessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Message ID of the message sent.
+ MessageId uint64 `protobuf:"varint,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *SendMessageResponse) Reset() {
+ *x = SendMessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SendMessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendMessageResponse) ProtoMessage() {}
+
+func (x *SendMessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[22]
+ 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 SendMessageResponse.ProtoReflect.Descriptor instead.
+func (*SendMessageResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *SendMessageResponse) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Used in the `UpdateMessageText` endpoint.
+type UpdateMessageTextRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message you want to edit the text of.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // New content for this message.
+ NewContent *FormattedText `protobuf:"bytes,4,opt,name=new_content,json=newContent,proto3" json:"new_content,omitempty"`
+}
+
+func (x *UpdateMessageTextRequest) Reset() {
+ *x = UpdateMessageTextRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateMessageTextRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateMessageTextRequest) ProtoMessage() {}
+
+func (x *UpdateMessageTextRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[23]
+ 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 UpdateMessageTextRequest.ProtoReflect.Descriptor instead.
+func (*UpdateMessageTextRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{23}
+}
+
+func (x *UpdateMessageTextRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *UpdateMessageTextRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *UpdateMessageTextRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *UpdateMessageTextRequest) GetNewContent() *FormattedText {
+ if x != nil {
+ return x.NewContent
+ }
+ return nil
+}
+
+// Used in the `UpdateMessageText` endpoint.
+type UpdateMessageTextResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UpdateMessageTextResponse) Reset() {
+ *x = UpdateMessageTextResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateMessageTextResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateMessageTextResponse) ProtoMessage() {}
+
+func (x *UpdateMessageTextResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[24]
+ 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 UpdateMessageTextResponse.ProtoReflect.Descriptor instead.
+func (*UpdateMessageTextResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{24}
+}
+
+// Used in the `PinMessage` endpoint.
+type PinMessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message we want to pin.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *PinMessageRequest) Reset() {
+ *x = PinMessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PinMessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PinMessageRequest) ProtoMessage() {}
+
+func (x *PinMessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[25]
+ 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 PinMessageRequest.ProtoReflect.Descriptor instead.
+func (*PinMessageRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{25}
+}
+
+func (x *PinMessageRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *PinMessageRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *PinMessageRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Used in the `UnpinMessage` endpoint.
+type PinMessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *PinMessageResponse) Reset() {
+ *x = PinMessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PinMessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PinMessageResponse) ProtoMessage() {}
+
+func (x *PinMessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[26]
+ 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 PinMessageResponse.ProtoReflect.Descriptor instead.
+func (*PinMessageResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{26}
+}
+
+// Used in the `UnpinMessage` endpoint.
+type UnpinMessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message we want to unpin.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *UnpinMessageRequest) Reset() {
+ *x = UnpinMessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UnpinMessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnpinMessageRequest) ProtoMessage() {}
+
+func (x *UnpinMessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[27]
+ 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 UnpinMessageRequest.ProtoReflect.Descriptor instead.
+func (*UnpinMessageRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{27}
+}
+
+func (x *UnpinMessageRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *UnpinMessageRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *UnpinMessageRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Used in the `UnpinMessage` endpoint.
+type UnpinMessageResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UnpinMessageResponse) Reset() {
+ *x = UnpinMessageResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UnpinMessageResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UnpinMessageResponse) ProtoMessage() {}
+
+func (x *UnpinMessageResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[28]
+ 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 UnpinMessageResponse.ProtoReflect.Descriptor instead.
+func (*UnpinMessageResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{28}
+}
+
+// Used in the `GetPinnedMessages` endpoint.
+type GetPinnedMessagesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel we want to get pins of.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *GetPinnedMessagesRequest) Reset() {
+ *x = GetPinnedMessagesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[29]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetPinnedMessagesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetPinnedMessagesRequest) ProtoMessage() {}
+
+func (x *GetPinnedMessagesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[29]
+ 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 GetPinnedMessagesRequest.ProtoReflect.Descriptor instead.
+func (*GetPinnedMessagesRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{29}
+}
+
+func (x *GetPinnedMessagesRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *GetPinnedMessagesRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+// Used in the `GetPinnedMessages` endpoint.
+type GetPinnedMessagesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The IDs of the pinned messages.
+ PinnedMessageIds []uint64 `protobuf:"varint,1,rep,packed,name=pinned_message_ids,json=pinnedMessageIds,proto3" json:"pinned_message_ids,omitempty"`
+}
+
+func (x *GetPinnedMessagesResponse) Reset() {
+ *x = GetPinnedMessagesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[30]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetPinnedMessagesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetPinnedMessagesResponse) ProtoMessage() {}
+
+func (x *GetPinnedMessagesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[30]
+ 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 GetPinnedMessagesResponse.ProtoReflect.Descriptor instead.
+func (*GetPinnedMessagesResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{30}
+}
+
+func (x *GetPinnedMessagesResponse) GetPinnedMessageIds() []uint64 {
+ if x != nil {
+ return x.PinnedMessageIds
+ }
+ return nil
+}
+
+// Used in `AddReaction` endpoint.
+type AddReactionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message we want to add a reaction to.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // The emote we want to react with.
+ Emote *v11.Emote `protobuf:"bytes,4,opt,name=emote,proto3" json:"emote,omitempty"`
+}
+
+func (x *AddReactionRequest) Reset() {
+ *x = AddReactionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[31]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AddReactionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AddReactionRequest) ProtoMessage() {}
+
+func (x *AddReactionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[31]
+ 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 AddReactionRequest.ProtoReflect.Descriptor instead.
+func (*AddReactionRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{31}
+}
+
+func (x *AddReactionRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *AddReactionRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *AddReactionRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *AddReactionRequest) GetEmote() *v11.Emote {
+ if x != nil {
+ return x.Emote
+ }
+ return nil
+}
+
+// Used in `AddReaction` endpoint.
+type AddReactionResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *AddReactionResponse) Reset() {
+ *x = AddReactionResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[32]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AddReactionResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AddReactionResponse) ProtoMessage() {}
+
+func (x *AddReactionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[32]
+ 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 AddReactionResponse.ProtoReflect.Descriptor instead.
+func (*AddReactionResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{32}
+}
+
+// Used in `RemoveReaction` endpoint.
+type RemoveReactionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where the channel is.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where the message is.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message we want to remove a reaction.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // The emote we want to remove the react of.
+ Emote *v11.Emote `protobuf:"bytes,4,opt,name=emote,proto3" json:"emote,omitempty"`
+}
+
+func (x *RemoveReactionRequest) Reset() {
+ *x = RemoveReactionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[33]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RemoveReactionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RemoveReactionRequest) ProtoMessage() {}
+
+func (x *RemoveReactionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[33]
+ 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 RemoveReactionRequest.ProtoReflect.Descriptor instead.
+func (*RemoveReactionRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{33}
+}
+
+func (x *RemoveReactionRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *RemoveReactionRequest) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *RemoveReactionRequest) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *RemoveReactionRequest) GetEmote() *v11.Emote {
+ if x != nil {
+ return x.Emote
+ }
+ return nil
+}
+
+// Used in `RemoveReaction` endpoint.
+type RemoveReactionResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *RemoveReactionResponse) Reset() {
+ *x = RemoveReactionResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RemoveReactionResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RemoveReactionResponse) ProtoMessage() {}
+
+func (x *RemoveReactionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[34]
+ 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 RemoveReactionResponse.ProtoReflect.Descriptor instead.
+func (*RemoveReactionResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{34}
+}
+
+// The payload data for a button action
+type ActionPayload_Button struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The data from the Button action
+ Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
+}
+
+func (x *ActionPayload_Button) Reset() {
+ *x = ActionPayload_Button{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ActionPayload_Button) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ActionPayload_Button) ProtoMessage() {}
+
+func (x *ActionPayload_Button) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[35]
+ 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 ActionPayload_Button.ProtoReflect.Descriptor instead.
+func (*ActionPayload_Button) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{1, 0}
+}
+
+func (x *ActionPayload_Button) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+// The payload for a dropdown action
+type ActionPayload_Dropdown struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The user choice from the dropdown.
+ Choice []byte `protobuf:"bytes,1,opt,name=choice,proto3" json:"choice,omitempty"`
+}
+
+func (x *ActionPayload_Dropdown) Reset() {
+ *x = ActionPayload_Dropdown{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[36]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ActionPayload_Dropdown) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ActionPayload_Dropdown) ProtoMessage() {}
+
+func (x *ActionPayload_Dropdown) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[36]
+ 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 ActionPayload_Dropdown.ProtoReflect.Descriptor instead.
+func (*ActionPayload_Dropdown) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{1, 1}
+}
+
+func (x *ActionPayload_Dropdown) GetChoice() []byte {
+ if x != nil {
+ return x.Choice
+ }
+ return nil
+}
+
+// The payload for a text input action
+type ActionPayload_Input struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The user input.
+ Input string `protobuf:"bytes,1,opt,name=input,proto3" json:"input,omitempty"`
+ // The bot-provided data
+ Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+}
+
+func (x *ActionPayload_Input) Reset() {
+ *x = ActionPayload_Input{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[37]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ActionPayload_Input) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ActionPayload_Input) ProtoMessage() {}
+
+func (x *ActionPayload_Input) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[37]
+ 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 ActionPayload_Input.ProtoReflect.Descriptor instead.
+func (*ActionPayload_Input) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{1, 2}
+}
+
+func (x *ActionPayload_Input) GetInput() string {
+ if x != nil {
+ return x.Input
+ }
+ return ""
+}
+
+func (x *ActionPayload_Input) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+// A button that users can click on to trigger an action.
+type Action_Button struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The text to show on the button.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Action data, which should be used in the call to perform the action.
+ Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+ // An external URL that the button links to.
+ // This makes it so that tapping this button will open said URL instead
+ // of triggering the action.
+ Url *string `protobuf:"bytes,3,opt,name=url,proto3,oneof" json:"url,omitempty"`
+}
+
+func (x *Action_Button) Reset() {
+ *x = Action_Button{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[38]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Action_Button) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Action_Button) ProtoMessage() {}
+
+func (x *Action_Button) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[38]
+ 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 Action_Button.ProtoReflect.Descriptor instead.
+func (*Action_Button) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{2, 0}
+}
+
+func (x *Action_Button) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Action_Button) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+func (x *Action_Button) GetUrl() string {
+ if x != nil && x.Url != nil {
+ return *x.Url
+ }
+ return ""
+}
+
+// A dropdown menu that users can click on to trigger an action.
+type Action_Dropdown struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The text describing the dropdown.
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ // The options in the dropdown.
+ Entries []*Action_Dropdown_Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"`
+}
+
+func (x *Action_Dropdown) Reset() {
+ *x = Action_Dropdown{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[39]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Action_Dropdown) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Action_Dropdown) ProtoMessage() {}
+
+func (x *Action_Dropdown) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[39]
+ 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 Action_Dropdown.ProtoReflect.Descriptor instead.
+func (*Action_Dropdown) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{2, 1}
+}
+
+func (x *Action_Dropdown) GetLabel() string {
+ if x != nil {
+ return x.Label
+ }
+ return ""
+}
+
+func (x *Action_Dropdown) GetEntries() []*Action_Dropdown_Entry {
+ if x != nil {
+ return x.Entries
+ }
+ return nil
+}
+
+// A text input that users can type in to trigger an action.
+type Action_Input struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The label describing the input.
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ // Whether this text input should be a multiline one or not.
+ Multiline bool `protobuf:"varint,2,opt,name=multiline,proto3" json:"multiline,omitempty"`
+ // Contextual data allowing the bot to discern what the user input is for
+ Data []byte `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
+}
+
+func (x *Action_Input) Reset() {
+ *x = Action_Input{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[40]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Action_Input) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Action_Input) ProtoMessage() {}
+
+func (x *Action_Input) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[40]
+ 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 Action_Input.ProtoReflect.Descriptor instead.
+func (*Action_Input) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{2, 2}
+}
+
+func (x *Action_Input) GetLabel() string {
+ if x != nil {
+ return x.Label
+ }
+ return ""
+}
+
+func (x *Action_Input) GetMultiline() bool {
+ if x != nil {
+ return x.Multiline
+ }
+ return false
+}
+
+func (x *Action_Input) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+// An entry in the dropdown
+type Action_Dropdown_Entry struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The dropdown's UI label.
+ Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
+ // The dropdown's associated data.
+ Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+}
+
+func (x *Action_Dropdown_Entry) Reset() {
+ *x = Action_Dropdown_Entry{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[41]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Action_Dropdown_Entry) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Action_Dropdown_Entry) ProtoMessage() {}
+
+func (x *Action_Dropdown_Entry) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[41]
+ 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 Action_Dropdown_Entry.ProtoReflect.Descriptor instead.
+func (*Action_Dropdown_Entry) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{2, 1, 0}
+}
+
+func (x *Action_Dropdown_Entry) GetLabel() string {
+ if x != nil {
+ return x.Label
+ }
+ return ""
+}
+
+func (x *Action_Dropdown_Entry) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+// Object representing an embed heading.
+type Embed_EmbedHeading struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Text of the heading.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Subtext of the heading.
+ Subtext *string `protobuf:"bytes,2,opt,name=subtext,proto3,oneof" json:"subtext,omitempty"`
+ // URL of the heading.
+ Url *string `protobuf:"bytes,3,opt,name=url,proto3,oneof" json:"url,omitempty"`
+ // Icon of the heading.
+ Icon *string `protobuf:"bytes,4,opt,name=icon,proto3,oneof" json:"icon,omitempty"`
+}
+
+func (x *Embed_EmbedHeading) Reset() {
+ *x = Embed_EmbedHeading{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[42]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Embed_EmbedHeading) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Embed_EmbedHeading) ProtoMessage() {}
+
+func (x *Embed_EmbedHeading) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[42]
+ 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 Embed_EmbedHeading.ProtoReflect.Descriptor instead.
+func (*Embed_EmbedHeading) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{3, 0}
+}
+
+func (x *Embed_EmbedHeading) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Embed_EmbedHeading) GetSubtext() string {
+ if x != nil && x.Subtext != nil {
+ return *x.Subtext
+ }
+ return ""
+}
+
+func (x *Embed_EmbedHeading) GetUrl() string {
+ if x != nil && x.Url != nil {
+ return *x.Url
+ }
+ return ""
+}
+
+func (x *Embed_EmbedHeading) GetIcon() string {
+ if x != nil && x.Icon != nil {
+ return *x.Icon
+ }
+ return ""
+}
+
+// Object representing an embed field.
+type Embed_EmbedField struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Title of this field.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Subtitle of this field.
+ Subtitle *string `protobuf:"bytes,2,opt,name=subtitle,proto3,oneof" json:"subtitle,omitempty"`
+ // Body text of this field (eg. a description).
+ Body *FormattedText `protobuf:"bytes,3,opt,name=body,proto3,oneof" json:"body,omitempty"`
+ // Image URL of this field.
+ ImageUrl *string `protobuf:"bytes,4,opt,name=image_url,json=imageUrl,proto3,oneof" json:"image_url,omitempty"`
+ // How to present this field.
+ Presentation Embed_EmbedField_Presentation `protobuf:"varint,5,opt,name=presentation,proto3,enum=protocol.chat.v1.Embed_EmbedField_Presentation" json:"presentation,omitempty"`
+ // Actions of this field.
+ Actions []*Action `protobuf:"bytes,6,rep,name=actions,proto3" json:"actions,omitempty"`
+}
+
+func (x *Embed_EmbedField) Reset() {
+ *x = Embed_EmbedField{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[43]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Embed_EmbedField) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Embed_EmbedField) ProtoMessage() {}
+
+func (x *Embed_EmbedField) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[43]
+ 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 Embed_EmbedField.ProtoReflect.Descriptor instead.
+func (*Embed_EmbedField) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{3, 1}
+}
+
+func (x *Embed_EmbedField) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Embed_EmbedField) GetSubtitle() string {
+ if x != nil && x.Subtitle != nil {
+ return *x.Subtitle
+ }
+ return ""
+}
+
+func (x *Embed_EmbedField) GetBody() *FormattedText {
+ if x != nil {
+ return x.Body
+ }
+ return nil
+}
+
+func (x *Embed_EmbedField) GetImageUrl() string {
+ if x != nil && x.ImageUrl != nil {
+ return *x.ImageUrl
+ }
+ return ""
+}
+
+func (x *Embed_EmbedField) GetPresentation() Embed_EmbedField_Presentation {
+ if x != nil {
+ return x.Presentation
+ }
+ return Embed_EmbedField_PRESENTATION_DATA_UNSPECIFIED
+}
+
+func (x *Embed_EmbedField) GetActions() []*Action {
+ if x != nil {
+ return x.Actions
+ }
+ return nil
+}
+
+// Object representing text content.
+type Content_TextContent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Text content.
+ Content *FormattedText `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
+}
+
+func (x *Content_TextContent) Reset() {
+ *x = Content_TextContent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[44]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content_TextContent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content_TextContent) ProtoMessage() {}
+
+func (x *Content_TextContent) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[44]
+ 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 Content_TextContent.ProtoReflect.Descriptor instead.
+func (*Content_TextContent) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7, 0}
+}
+
+func (x *Content_TextContent) GetContent() *FormattedText {
+ if x != nil {
+ return x.Content
+ }
+ return nil
+}
+
+// Object representing embed content.
+type Content_EmbedContent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Embed content.
+ Embeds []*Embed `protobuf:"bytes,1,rep,name=embeds,proto3" json:"embeds,omitempty"`
+}
+
+func (x *Content_EmbedContent) Reset() {
+ *x = Content_EmbedContent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[45]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content_EmbedContent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content_EmbedContent) ProtoMessage() {}
+
+func (x *Content_EmbedContent) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[45]
+ 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 Content_EmbedContent.ProtoReflect.Descriptor instead.
+func (*Content_EmbedContent) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7, 1}
+}
+
+func (x *Content_EmbedContent) GetEmbeds() []*Embed {
+ if x != nil {
+ return x.Embeds
+ }
+ return nil
+}
+
+// Object representing attachment content.
+type Content_AttachmentContent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of attachments.
+ Files []*Attachment `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"`
+}
+
+func (x *Content_AttachmentContent) Reset() {
+ *x = Content_AttachmentContent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[46]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content_AttachmentContent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content_AttachmentContent) ProtoMessage() {}
+
+func (x *Content_AttachmentContent) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[46]
+ 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 Content_AttachmentContent.ProtoReflect.Descriptor instead.
+func (*Content_AttachmentContent) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7, 2}
+}
+
+func (x *Content_AttachmentContent) GetFiles() []*Attachment {
+ if x != nil {
+ return x.Files
+ }
+ return nil
+}
+
+// Object representing photo content.
+type Content_PhotoContent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of photos.
+ Photos []*Photo `protobuf:"bytes,1,rep,name=photos,proto3" json:"photos,omitempty"`
+}
+
+func (x *Content_PhotoContent) Reset() {
+ *x = Content_PhotoContent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[47]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content_PhotoContent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content_PhotoContent) ProtoMessage() {}
+
+func (x *Content_PhotoContent) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[47]
+ 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 Content_PhotoContent.ProtoReflect.Descriptor instead.
+func (*Content_PhotoContent) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7, 3}
+}
+
+func (x *Content_PhotoContent) GetPhotos() []*Photo {
+ if x != nil {
+ return x.Photos
+ }
+ return nil
+}
+
+// Represents a user rejecting an invite.
+//
+// This can only be used by servers themselves. Servers should reject
+// messages with this content if they are sent by a user.
+type Content_InviteRejected struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the invitee.
+ InviteeId uint64 `protobuf:"varint,1,opt,name=invitee_id,json=inviteeId,proto3" json:"invitee_id,omitempty"`
+ // User ID of the inviter.
+ InviterId uint64 `protobuf:"varint,2,opt,name=inviter_id,json=inviterId,proto3" json:"inviter_id,omitempty"`
+}
+
+func (x *Content_InviteRejected) Reset() {
+ *x = Content_InviteRejected{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[48]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content_InviteRejected) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content_InviteRejected) ProtoMessage() {}
+
+func (x *Content_InviteRejected) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[48]
+ 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 Content_InviteRejected.ProtoReflect.Descriptor instead.
+func (*Content_InviteRejected) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7, 4}
+}
+
+func (x *Content_InviteRejected) GetInviteeId() uint64 {
+ if x != nil {
+ return x.InviteeId
+ }
+ return 0
+}
+
+func (x *Content_InviteRejected) GetInviterId() uint64 {
+ if x != nil {
+ return x.InviterId
+ }
+ return 0
+}
+
+// Represents a user accepting an invite.
+//
+// This can only be used by servers themselves. Servers should reject
+// messages with this content if they are sent by a user.
+type Content_InviteAccepted struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the invitee.
+ InviteeId uint64 `protobuf:"varint,1,opt,name=invitee_id,json=inviteeId,proto3" json:"invitee_id,omitempty"`
+ // User ID of the inviter.
+ InviterId uint64 `protobuf:"varint,2,opt,name=inviter_id,json=inviterId,proto3" json:"inviter_id,omitempty"`
+}
+
+func (x *Content_InviteAccepted) Reset() {
+ *x = Content_InviteAccepted{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[49]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content_InviteAccepted) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content_InviteAccepted) ProtoMessage() {}
+
+func (x *Content_InviteAccepted) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[49]
+ 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 Content_InviteAccepted.ProtoReflect.Descriptor instead.
+func (*Content_InviteAccepted) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7, 5}
+}
+
+func (x *Content_InviteAccepted) GetInviteeId() uint64 {
+ if x != nil {
+ return x.InviteeId
+ }
+ return 0
+}
+
+func (x *Content_InviteAccepted) GetInviterId() uint64 {
+ if x != nil {
+ return x.InviterId
+ }
+ return 0
+}
+
+// Represents a guild upgrade from "room" to "normal".
+//
+// This can only be used by servers themselves. Servers should reject
+// messages with this content if they are sent by a user.
+type Content_RoomUpgradedToGuild struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the user that upgraded the guild.
+ UpgradedBy uint64 `protobuf:"varint,1,opt,name=upgraded_by,json=upgradedBy,proto3" json:"upgraded_by,omitempty"`
+}
+
+func (x *Content_RoomUpgradedToGuild) Reset() {
+ *x = Content_RoomUpgradedToGuild{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[50]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Content_RoomUpgradedToGuild) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Content_RoomUpgradedToGuild) ProtoMessage() {}
+
+func (x *Content_RoomUpgradedToGuild) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[50]
+ 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 Content_RoomUpgradedToGuild.ProtoReflect.Descriptor instead.
+func (*Content_RoomUpgradedToGuild) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{7, 6}
+}
+
+func (x *Content_RoomUpgradedToGuild) GetUpgradedBy() uint64 {
+ if x != nil {
+ return x.UpgradedBy
+ }
+ return 0
+}
+
+// Bold text
+type Format_Bold struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Format_Bold) Reset() {
+ *x = Format_Bold{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[51]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Bold) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Bold) ProtoMessage() {}
+
+func (x *Format_Bold) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[51]
+ 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 Format_Bold.ProtoReflect.Descriptor instead.
+func (*Format_Bold) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 0}
+}
+
+// Italic text
+type Format_Italic struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Format_Italic) Reset() {
+ *x = Format_Italic{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[52]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Italic) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Italic) ProtoMessage() {}
+
+func (x *Format_Italic) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[52]
+ 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 Format_Italic.ProtoReflect.Descriptor instead.
+func (*Format_Italic) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 1}
+}
+
+// Underlined text
+type Format_Underline struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Format_Underline) Reset() {
+ *x = Format_Underline{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[53]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Underline) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Underline) ProtoMessage() {}
+
+func (x *Format_Underline) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[53]
+ 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 Format_Underline.ProtoReflect.Descriptor instead.
+func (*Format_Underline) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 2}
+}
+
+// Monospace text
+type Format_Monospace struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Format_Monospace) Reset() {
+ *x = Format_Monospace{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[54]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Monospace) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Monospace) ProtoMessage() {}
+
+func (x *Format_Monospace) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[54]
+ 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 Format_Monospace.ProtoReflect.Descriptor instead.
+func (*Format_Monospace) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 3}
+}
+
+// Superscript text
+type Format_Superscript struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Format_Superscript) Reset() {
+ *x = Format_Superscript{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[55]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Superscript) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Superscript) ProtoMessage() {}
+
+func (x *Format_Superscript) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[55]
+ 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 Format_Superscript.ProtoReflect.Descriptor instead.
+func (*Format_Superscript) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 4}
+}
+
+// Subscript text
+type Format_Subscript struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Format_Subscript) Reset() {
+ *x = Format_Subscript{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[56]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Subscript) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Subscript) ProtoMessage() {}
+
+func (x *Format_Subscript) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[56]
+ 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 Format_Subscript.ProtoReflect.Descriptor instead.
+func (*Format_Subscript) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 5}
+}
+
+// A larger codeblock, with a programming language specified
+// Clients should ideally not bound the width of codeblock messages,
+// possibly scrolling the codeblock horizontally separately from the
+// rest of the message
+type Format_CodeBlock struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // programming language of the code block
+ Language string `protobuf:"bytes,1,opt,name=language,proto3" json:"language,omitempty"`
+}
+
+func (x *Format_CodeBlock) Reset() {
+ *x = Format_CodeBlock{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[57]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_CodeBlock) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_CodeBlock) ProtoMessage() {}
+
+func (x *Format_CodeBlock) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[57]
+ 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 Format_CodeBlock.ProtoReflect.Descriptor instead.
+func (*Format_CodeBlock) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 6}
+}
+
+func (x *Format_CodeBlock) GetLanguage() string {
+ if x != nil {
+ return x.Language
+ }
+ return ""
+}
+
+// Mention of a user (on the current homeserver)
+type Format_UserMention struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // user_id of the user being mentioned
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *Format_UserMention) Reset() {
+ *x = Format_UserMention{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[58]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_UserMention) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_UserMention) ProtoMessage() {}
+
+func (x *Format_UserMention) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[58]
+ 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 Format_UserMention.ProtoReflect.Descriptor instead.
+func (*Format_UserMention) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 7}
+}
+
+func (x *Format_UserMention) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Mention of a role (on the current guild)
+type Format_RoleMention struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the role being mentioned
+ RoleId uint64 `protobuf:"varint,1,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+}
+
+func (x *Format_RoleMention) Reset() {
+ *x = Format_RoleMention{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[59]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_RoleMention) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_RoleMention) ProtoMessage() {}
+
+func (x *Format_RoleMention) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[59]
+ 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 Format_RoleMention.ProtoReflect.Descriptor instead.
+func (*Format_RoleMention) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 8}
+}
+
+func (x *Format_RoleMention) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+// Mention of a channel (on the current guild)
+type Format_ChannelMention struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the channel being mentioned
+ ChannelId uint64 `protobuf:"varint,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *Format_ChannelMention) Reset() {
+ *x = Format_ChannelMention{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[60]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_ChannelMention) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_ChannelMention) ProtoMessage() {}
+
+func (x *Format_ChannelMention) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[60]
+ 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 Format_ChannelMention.ProtoReflect.Descriptor instead.
+func (*Format_ChannelMention) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 9}
+}
+
+func (x *Format_ChannelMention) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+// Mention of a guild
+type Format_GuildMention struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild being mentioned
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // which homeserver it belongs to
+ Homeserver string `protobuf:"bytes,2,opt,name=homeserver,proto3" json:"homeserver,omitempty"`
+}
+
+func (x *Format_GuildMention) Reset() {
+ *x = Format_GuildMention{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[61]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_GuildMention) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_GuildMention) ProtoMessage() {}
+
+func (x *Format_GuildMention) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[61]
+ 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 Format_GuildMention.ProtoReflect.Descriptor instead.
+func (*Format_GuildMention) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 10}
+}
+
+func (x *Format_GuildMention) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *Format_GuildMention) GetHomeserver() string {
+ if x != nil {
+ return x.Homeserver
+ }
+ return ""
+}
+
+// An emoji
+type Format_Emoji struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The HMC URL of the emoji
+ ImageHmc string `protobuf:"bytes,1,opt,name=image_hmc,json=imageHmc,proto3" json:"image_hmc,omitempty"`
+ // The ID of the emoji pack the emoji is from
+ PackId uint64 `protobuf:"varint,2,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+}
+
+func (x *Format_Emoji) Reset() {
+ *x = Format_Emoji{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[62]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Emoji) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Emoji) ProtoMessage() {}
+
+func (x *Format_Emoji) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[62]
+ 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 Format_Emoji.ProtoReflect.Descriptor instead.
+func (*Format_Emoji) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 11}
+}
+
+func (x *Format_Emoji) GetImageHmc() string {
+ if x != nil {
+ return x.ImageHmc
+ }
+ return ""
+}
+
+func (x *Format_Emoji) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+// Colour modification
+type Format_Color struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The kind of colour modification to apply
+ Kind Format_Color_Kind `protobuf:"varint,1,opt,name=kind,proto3,enum=protocol.chat.v1.Format_Color_Kind" json:"kind,omitempty"`
+}
+
+func (x *Format_Color) Reset() {
+ *x = Format_Color{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[63]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Color) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Color) ProtoMessage() {}
+
+func (x *Format_Color) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[63]
+ 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 Format_Color.ProtoReflect.Descriptor instead.
+func (*Format_Color) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 12}
+}
+
+func (x *Format_Color) GetKind() Format_Color_Kind {
+ if x != nil {
+ return x.Kind
+ }
+ return Format_Color_KIND_DIM_UNSPECIFIED
+}
+
+// Replace a part of the text with the text matching the i18n code.
+// If i18n code was not found, keep the original text.
+type Format_Localization struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // i18n code for the text.
+ I18NCode string `protobuf:"bytes,1,opt,name=i18n_code,json=i18nCode,proto3" json:"i18n_code,omitempty"`
+}
+
+func (x *Format_Localization) Reset() {
+ *x = Format_Localization{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_messages_proto_msgTypes[64]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Format_Localization) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Format_Localization) ProtoMessage() {}
+
+func (x *Format_Localization) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_messages_proto_msgTypes[64]
+ 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 Format_Localization.ProtoReflect.Descriptor instead.
+func (*Format_Localization) Descriptor() ([]byte, []int) {
+ return file_chat_v1_messages_proto_rawDescGZIP(), []int{9, 13}
+}
+
+func (x *Format_Localization) GetI18NCode() string {
+ if x != nil {
+ return x.I18NCode
+ }
+ return ""
+}
+
+var File_chat_v1_messages_proto protoreflect.FileDescriptor
+
+var file_chat_v1_messages_proto_rawDesc = []byte{
+ 0x0a, 0x16, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65,
+ 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76,
+ 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa0, 0x03,
+ 0x0a, 0x09, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x75,
+ 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
+ 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06,
+ 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x06,
+ 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0c, 0x75, 0x73, 0x65,
+ 0x72, 0x5f, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
+ 0x00, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x12, 0x3b,
+ 0x0a, 0x07, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f,
+ 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
+ 0x48, 0x00, 0x52, 0x07, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x12, 0x4c, 0x0a, 0x10, 0x73,
+ 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x70, 0x6c, 0x75, 0x72, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18,
+ 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31,
+ 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x48, 0x00, 0x52, 0x0f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
+ 0x50, 0x6c, 0x75, 0x72, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x48, 0x0a, 0x0e, 0x73, 0x79, 0x73,
+ 0x74, 0x65, 0x6d, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72,
+ 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70,
+ 0x74, 0x79, 0x48, 0x00, 0x52, 0x0d, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68,
+ 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x45,
+ 0x6d, 0x70, 0x74, 0x79, 0x48, 0x00, 0x52, 0x06, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x42, 0x08,
+ 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x75, 0x73, 0x65,
+ 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72,
+ 0x22, 0xd8, 0x02, 0x0a, 0x0d, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f,
+ 0x61, 0x64, 0x12, 0x40, 0x0a, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c,
+ 0x6f, 0x61, 0x64, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x06, 0x62, 0x75,
+ 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x08, 0x64, 0x72, 0x6f, 0x70, 0x64, 0x6f, 0x77, 0x6e,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x64, 0x6f, 0x77, 0x6e,
+ 0x48, 0x00, 0x52, 0x08, 0x64, 0x72, 0x6f, 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x3d, 0x0a, 0x05,
+ 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x49, 0x6e, 0x70,
+ 0x75, 0x74, 0x48, 0x00, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x1c, 0x0a, 0x06, 0x42,
+ 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x22, 0x0a, 0x08, 0x44, 0x72, 0x6f,
+ 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x1a, 0x31, 0x0a,
+ 0x05, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04,
+ 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
+ 0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x8c, 0x05, 0x0a, 0x06,
+ 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x06, 0x62, 0x75, 0x74, 0x74, 0x6f,
+ 0x6e, 0x12, 0x3f, 0x0a, 0x08, 0x64, 0x72, 0x6f, 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x72,
+ 0x6f, 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x64, 0x72, 0x6f, 0x70, 0x64, 0x6f,
+ 0x77, 0x6e, 0x12, 0x36, 0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x49, 0x6e, 0x70, 0x75,
+ 0x74, 0x48, 0x00, 0x52, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x1a, 0x4f, 0x0a, 0x06, 0x42, 0x75,
+ 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x15, 0x0a, 0x03,
+ 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x75, 0x72, 0x6c,
+ 0x88, 0x01, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x75, 0x72, 0x6c, 0x1a, 0x96, 0x01, 0x0a, 0x08,
+ 0x44, 0x72, 0x6f, 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65,
+ 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x41,
+ 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x44, 0x72, 0x6f, 0x70, 0x64, 0x6f,
+ 0x77, 0x6e, 0x2e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65,
+ 0x73, 0x1a, 0x31, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61,
+ 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
+ 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04,
+ 0x64, 0x61, 0x74, 0x61, 0x1a, 0x4f, 0x0a, 0x05, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x14, 0x0a,
+ 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61,
+ 0x62, 0x65, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x6c, 0x69, 0x6e, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x6c, 0x69, 0x6e,
+ 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52,
+ 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x4b, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a,
+ 0x17, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x5f, 0x55, 0x4e, 0x53,
+ 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59,
+ 0x50, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10,
+ 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x45, 0x53, 0x54, 0x52, 0x55, 0x43, 0x54, 0x49, 0x56, 0x45,
+ 0x10, 0x02, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0xa8, 0x07, 0x0a, 0x05, 0x45,
+ 0x6d, 0x62, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x38, 0x0a, 0x04, 0x62, 0x6f,
+ 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x74, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x04, 0x62, 0x6f, 0x64,
+ 0x79, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12,
+ 0x41, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x48, 0x65,
+ 0x61, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x02, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x88,
+ 0x01, 0x01, 0x12, 0x41, 0x0a, 0x06, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x2e, 0x45, 0x6d, 0x62, 0x65,
+ 0x64, 0x48, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x48, 0x03, 0x52, 0x06, 0x66, 0x6f, 0x6f, 0x74,
+ 0x65, 0x72, 0x88, 0x01, 0x01, 0x12, 0x3a, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18,
+ 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x2e, 0x45,
+ 0x6d, 0x62, 0x65, 0x64, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64,
+ 0x73, 0x1a, 0x8e, 0x01, 0x0a, 0x0c, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x48, 0x65, 0x61, 0x64, 0x69,
+ 0x6e, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1d, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x74, 0x65, 0x78,
+ 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x73, 0x75, 0x62, 0x74, 0x65,
+ 0x78, 0x74, 0x88, 0x01, 0x01, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x01, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x04,
+ 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x04, 0x69, 0x63,
+ 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x73, 0x75, 0x62, 0x74, 0x65, 0x78,
+ 0x74, 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x75, 0x72, 0x6c, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x69, 0x63,
+ 0x6f, 0x6e, 0x1a, 0xb7, 0x03, 0x0a, 0x0a, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x46, 0x69, 0x65, 0x6c,
+ 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1f, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69,
+ 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x73, 0x75, 0x62,
+ 0x74, 0x69, 0x74, 0x6c, 0x65, 0x88, 0x01, 0x01, 0x12, 0x38, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74,
+ 0x74, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x48, 0x01, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x88,
+ 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x02, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72,
+ 0x6c, 0x88, 0x01, 0x01, 0x12, 0x53, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d,
+ 0x62, 0x65, 0x64, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x50,
+ 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x70, 0x72, 0x65,
+ 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x07, 0x61, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x69, 0x0a,
+ 0x0c, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a,
+ 0x1d, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x44, 0x41,
+ 0x54, 0x41, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
+ 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e,
+ 0x5f, 0x43, 0x41, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x45, 0x44, 0x5f, 0x49, 0x4d, 0x41, 0x47, 0x45,
+ 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49,
+ 0x4f, 0x4e, 0x5f, 0x52, 0x4f, 0x57, 0x10, 0x02, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x73, 0x75, 0x62,
+ 0x74, 0x69, 0x74, 0x6c, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x42, 0x0c,
+ 0x0a, 0x0a, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x6c, 0x42, 0x07, 0x0a, 0x05,
+ 0x5f, 0x62, 0x6f, 0x64, 0x79, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x42,
+ 0x09, 0x0a, 0x07, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x66,
+ 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x22, 0x51, 0x0a, 0x0d, 0x4d, 0x69, 0x6e, 0x69, 0x74, 0x68, 0x75,
+ 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06,
+ 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65,
+ 0x69, 0x67, 0x68, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xfa, 0x01, 0x0a, 0x05, 0x50, 0x68, 0x6f,
+ 0x74, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x68, 0x6d, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x03, 0x68, 0x6d, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65,
+ 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x69, 0x6c,
+ 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x14, 0x0a,
+ 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x77, 0x69,
+ 0x64, 0x74, 0x68, 0x12, 0x39, 0x0a, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65,
+ 0x64, 0x54, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x45,
+ 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x69, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x18,
+ 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x74, 0x68, 0x75,
+ 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x69, 0x74, 0x68, 0x75, 0x6d,
+ 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x22, 0xac, 0x01, 0x0a, 0x0a, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68,
+ 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x69, 0x6d, 0x65,
+ 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65,
+ 0x74, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0d, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x3e, 0x0a, 0x07, 0x63, 0x61, 0x70, 0x74,
+ 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72,
+ 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x07, 0x63, 0x61,
+ 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x63, 0x61, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xd9, 0x08, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x12, 0x4a, 0x0a, 0x0c, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52,
+ 0x0b, 0x74, 0x65, 0x78, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4d, 0x0a, 0x0d,
+ 0x65, 0x6d, 0x62, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x45,
+ 0x6d, 0x62, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x65,
+ 0x6d, 0x62, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x5c, 0x0a, 0x12, 0x61,
+ 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x11, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65,
+ 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4d, 0x0a, 0x0d, 0x70, 0x68, 0x6f,
+ 0x74, 0x6f, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x68, 0x6f, 0x74,
+ 0x6f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x70, 0x68, 0x6f, 0x74,
+ 0x6f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x53, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x5f, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x49, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x69,
+ 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x53, 0x0a,
+ 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64,
+ 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74,
+ 0x65, 0x64, 0x12, 0x64, 0x0a, 0x16, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x75, 0x70, 0x67, 0x72, 0x61,
+ 0x64, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x07, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f,
+ 0x6f, 0x6d, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x64, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c,
+ 0x64, 0x48, 0x00, 0x52, 0x13, 0x72, 0x6f, 0x6f, 0x6d, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65,
+ 0x64, 0x54, 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x1a, 0x48, 0x0a, 0x0b, 0x54, 0x65, 0x78, 0x74,
+ 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x74, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x1a, 0x3f, 0x0a, 0x0c, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x52, 0x06, 0x65, 0x6d, 0x62,
+ 0x65, 0x64, 0x73, 0x1a, 0x47, 0x0a, 0x11, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e,
+ 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x74, 0x74, 0x61, 0x63,
+ 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x1a, 0x3f, 0x0a, 0x0c,
+ 0x50, 0x68, 0x6f, 0x74, 0x6f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x06,
+ 0x70, 0x68, 0x6f, 0x74, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x50, 0x68, 0x6f, 0x74, 0x6f, 0x52, 0x06, 0x70, 0x68, 0x6f, 0x74, 0x6f, 0x73, 0x1a, 0x4e, 0x0a,
+ 0x0e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x49, 0x64, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x4e, 0x0a,
+ 0x0e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x65, 0x49, 0x64, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x36, 0x0a,
+ 0x13, 0x52, 0x6f, 0x6f, 0x6d, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x64, 0x54, 0x6f, 0x47,
+ 0x75, 0x69, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x64,
+ 0x5f, 0x62, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x75, 0x70, 0x67, 0x72, 0x61,
+ 0x64, 0x65, 0x64, 0x42, 0x79, 0x42, 0x09, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x22, 0x50, 0x0a, 0x08, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x05,
+ 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x05, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05,
+ 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x22, 0xe6, 0x0c, 0x0a, 0x06, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x14, 0x0a,
+ 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74,
+ 0x61, 0x72, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x33, 0x0a, 0x04, 0x62,
+ 0x6f, 0x6c, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72,
+ 0x6d, 0x61, 0x74, 0x2e, 0x42, 0x6f, 0x6c, 0x64, 0x48, 0x00, 0x52, 0x04, 0x62, 0x6f, 0x6c, 0x64,
+ 0x12, 0x39, 0x0a, 0x06, 0x69, 0x74, 0x61, 0x6c, 0x69, 0x63, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x49, 0x74, 0x61, 0x6c, 0x69,
+ 0x63, 0x48, 0x00, 0x52, 0x06, 0x69, 0x74, 0x61, 0x6c, 0x69, 0x63, 0x12, 0x42, 0x0a, 0x09, 0x75,
+ 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69,
+ 0x6e, 0x65, 0x48, 0x00, 0x52, 0x09, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x12,
+ 0x42, 0x0a, 0x09, 0x6d, 0x6f, 0x6e, 0x6f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x4d, 0x6f, 0x6e,
+ 0x6f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x48, 0x00, 0x52, 0x09, 0x6d, 0x6f, 0x6e, 0x6f, 0x73, 0x70,
+ 0x61, 0x63, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x63, 0x72, 0x69,
+ 0x70, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x2e, 0x53, 0x75, 0x70, 0x65, 0x72, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x48, 0x00,
+ 0x52, 0x0b, 0x73, 0x75, 0x70, 0x65, 0x72, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x42, 0x0a,
+ 0x09, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x48, 0x00, 0x52, 0x09, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x12, 0x43, 0x0a, 0x0a, 0x63, 0x6f, 0x64, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18,
+ 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e,
+ 0x43, 0x6f, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x48, 0x00, 0x52, 0x09, 0x63, 0x6f, 0x64,
+ 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x49, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6d,
+ 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x6e, 0x74, 0x69,
+ 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f,
+ 0x6e, 0x12, 0x49, 0x0a, 0x0c, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61,
+ 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52,
+ 0x0b, 0x72, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x0f,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00,
+ 0x52, 0x0e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e,
+ 0x12, 0x4c, 0x0a, 0x0d, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61,
+ 0x74, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00,
+ 0x52, 0x0c, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36,
+ 0x0a, 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x45, 0x6d, 0x6f, 0x6a, 0x69, 0x48, 0x00, 0x52,
+ 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x12, 0x36, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18,
+ 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e,
+ 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x4b,
+ 0x0a, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x10,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x4c,
+ 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0c, 0x6c,
+ 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x06, 0x0a, 0x04, 0x42,
+ 0x6f, 0x6c, 0x64, 0x1a, 0x08, 0x0a, 0x06, 0x49, 0x74, 0x61, 0x6c, 0x69, 0x63, 0x1a, 0x0b, 0x0a,
+ 0x09, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x1a, 0x0b, 0x0a, 0x09, 0x4d, 0x6f,
+ 0x6e, 0x6f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x1a, 0x0d, 0x0a, 0x0b, 0x53, 0x75, 0x70, 0x65, 0x72,
+ 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x1a, 0x0b, 0x0a, 0x09, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72,
+ 0x69, 0x70, 0x74, 0x1a, 0x27, 0x0a, 0x09, 0x43, 0x6f, 0x64, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b,
+ 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x1a, 0x26, 0x0a, 0x0b,
+ 0x55, 0x73, 0x65, 0x72, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x75,
+ 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73,
+ 0x65, 0x72, 0x49, 0x64, 0x1a, 0x26, 0x0a, 0x0b, 0x52, 0x6f, 0x6c, 0x65, 0x4d, 0x65, 0x6e, 0x74,
+ 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x1a, 0x2f, 0x0a, 0x0e,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x1a, 0x49, 0x0a,
+ 0x0c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x4d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a,
+ 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x6f, 0x6d, 0x65,
+ 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f,
+ 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a, 0x3d, 0x0a, 0x05, 0x45, 0x6d, 0x6f, 0x6a,
+ 0x69, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x68, 0x6d, 0x63, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x48, 0x6d, 0x63, 0x12, 0x17,
+ 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x1a, 0xba, 0x01, 0x0a, 0x05, 0x43, 0x6f, 0x6c, 0x6f,
+ 0x72, 0x12, 0x37, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x2e, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x2e,
+ 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x22, 0x78, 0x0a, 0x04, 0x4b, 0x69,
+ 0x6e, 0x64, 0x12, 0x18, 0x0a, 0x14, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x49, 0x4d, 0x5f, 0x55,
+ 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b,
+ 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x42, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x01, 0x12, 0x11, 0x0a,
+ 0x0d, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4e, 0x45, 0x47, 0x41, 0x54, 0x49, 0x56, 0x45, 0x10, 0x02,
+ 0x12, 0x11, 0x0a, 0x0d, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x56,
+ 0x45, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x49, 0x4e, 0x46, 0x4f,
+ 0x10, 0x04, 0x12, 0x10, 0x0a, 0x0c, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x57, 0x41, 0x52, 0x4e, 0x49,
+ 0x4e, 0x47, 0x10, 0x05, 0x1a, 0x2b, 0x0a, 0x0c, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x7a, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x31, 0x38, 0x6e, 0x5f, 0x63, 0x6f, 0x64,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x31, 0x38, 0x6e, 0x43, 0x6f, 0x64,
+ 0x65, 0x42, 0x08, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x55, 0x0a, 0x0d, 0x46,
+ 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04,
+ 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74,
+ 0x12, 0x30, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d,
+ 0x61, 0x74, 0x22, 0xa6, 0x03, 0x0a, 0x07, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x43,
+ 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x88, 0x01, 0x01, 0x12, 0x39, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69,
+ 0x64, 0x65, 0x73, 0x52, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x1b,
+ 0x0a, 0x09, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x08, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x65, 0x64,
+ 0x69, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x48, 0x01, 0x52,
+ 0x08, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0b,
+ 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x02, 0x52, 0x09, 0x69, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x88, 0x01,
+ 0x01, 0x12, 0x33, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x38, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x0c, 0x0a,
+ 0x0a, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f,
+ 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x22, 0x63, 0x0a, 0x0d, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x07, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x22, 0xef, 0x02, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19,
+ 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x58, 0x0a, 0x09,
+ 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x35, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e,
+ 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x44, 0x69, 0x72,
+ 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x01, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
+ 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x88, 0x01,
+ 0x01, 0x22, 0x58, 0x0a, 0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20,
+ 0x0a, 0x1c, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x45, 0x46, 0x4f,
+ 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
+ 0x12, 0x14, 0x0a, 0x10, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x52,
+ 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54,
+ 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x46, 0x54, 0x45, 0x52, 0x10, 0x02, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64,
+ 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x22, 0xa1, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x70,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x54,
+ 0x6f, 0x70, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x62, 0x6f,
+ 0x74, 0x74, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x65, 0x61, 0x63,
+ 0x68, 0x65, 0x64, 0x42, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x12, 0x3b, 0x0a, 0x08, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x52, 0x08, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0x6c, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22,
+ 0x6f, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64,
+ 0x22, 0x17, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xaa, 0x01, 0x0a, 0x14, 0x54, 0x72,
+ 0x69, 0x67, 0x67, 0x65, 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x07, 0x70,
+ 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x07, 0x70,
+ 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x17, 0x0a, 0x15, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65,
+ 0x72, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x82, 0x03, 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
+ 0x12, 0x33, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61,
+ 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x63, 0x6f,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x07, 0x65, 0x63, 0x68, 0x6f, 0x5f, 0x69, 0x64,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x06, 0x65, 0x63, 0x68, 0x6f, 0x49, 0x64,
+ 0x88, 0x01, 0x01, 0x12, 0x3e, 0x0a, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69,
+ 0x64, 0x65, 0x73, 0x48, 0x01, 0x52, 0x09, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73,
+ 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0b, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f,
+ 0x74, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x48, 0x02, 0x52, 0x09, 0x69, 0x6e, 0x52, 0x65,
+ 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x88, 0x01, 0x01, 0x12, 0x43, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70,
+ 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x03,
+ 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0a, 0x0a,
+ 0x08, 0x5f, 0x65, 0x63, 0x68, 0x6f, 0x5f, 0x69, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6f, 0x76,
+ 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x69, 0x6e, 0x5f, 0x72,
+ 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x6f, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x22, 0x34, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0xb5, 0x01, 0x0a, 0x18, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x65, 0x78, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64,
+ 0x12, 0x40, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74,
+ 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x22, 0x1b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x54, 0x65, 0x78, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x6c, 0x0a, 0x11, 0x50, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x22, 0x14, 0x0a,
+ 0x12, 0x50, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x6e, 0x0a, 0x13, 0x55, 0x6e, 0x70, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75,
+ 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75,
+ 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f,
+ 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x49, 0x64, 0x22, 0x16, 0x0a, 0x14, 0x55, 0x6e, 0x70, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x54, 0x0a, 0x18, 0x47,
+ 0x65, 0x74, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x22, 0x49, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c,
+ 0x0a, 0x12, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x10, 0x70, 0x69, 0x6e, 0x6e,
+ 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x73, 0x22, 0x9d, 0x01, 0x0a,
+ 0x12, 0x41, 0x64, 0x64, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x05,
+ 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x05, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0x15, 0x0a, 0x13,
+ 0x41, 0x64, 0x64, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65,
+ 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a,
+ 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x05, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x52,
+ 0x05, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
+ 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x42, 0xc3, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68,
+ 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64,
+ 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73,
+ 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x3b,
+ 0x63, 0x68, 0x61, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x43, 0x58, 0xaa, 0x02, 0x10, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x2e, 0x56, 0x31, 0xca,
+ 0x02, 0x10, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c,
+ 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68,
+ 0x61, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0xea, 0x02, 0x12, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x43, 0x68,
+ 0x61, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_chat_v1_messages_proto_rawDescOnce sync.Once
+ file_chat_v1_messages_proto_rawDescData = file_chat_v1_messages_proto_rawDesc
+)
+
+func file_chat_v1_messages_proto_rawDescGZIP() []byte {
+ file_chat_v1_messages_proto_rawDescOnce.Do(func() {
+ file_chat_v1_messages_proto_rawDescData = protoimpl.X.CompressGZIP(file_chat_v1_messages_proto_rawDescData)
+ })
+ return file_chat_v1_messages_proto_rawDescData
+}
+
+var file_chat_v1_messages_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
+var file_chat_v1_messages_proto_msgTypes = make([]protoimpl.MessageInfo, 65)
+var file_chat_v1_messages_proto_goTypes = []interface{}{
+ (Action_Type)(0), // 0: protocol.chat.v1.Action.Type
+ (Embed_EmbedField_Presentation)(0), // 1: protocol.chat.v1.Embed.EmbedField.Presentation
+ (Format_Color_Kind)(0), // 2: protocol.chat.v1.Format.Color.Kind
+ (GetChannelMessagesRequest_Direction)(0), // 3: protocol.chat.v1.GetChannelMessagesRequest.Direction
+ (*Overrides)(nil), // 4: protocol.chat.v1.Overrides
+ (*ActionPayload)(nil), // 5: protocol.chat.v1.ActionPayload
+ (*Action)(nil), // 6: protocol.chat.v1.Action
+ (*Embed)(nil), // 7: protocol.chat.v1.Embed
+ (*Minithumbnail)(nil), // 8: protocol.chat.v1.Minithumbnail
+ (*Photo)(nil), // 9: protocol.chat.v1.Photo
+ (*Attachment)(nil), // 10: protocol.chat.v1.Attachment
+ (*Content)(nil), // 11: protocol.chat.v1.Content
+ (*Reaction)(nil), // 12: protocol.chat.v1.Reaction
+ (*Format)(nil), // 13: protocol.chat.v1.Format
+ (*FormattedText)(nil), // 14: protocol.chat.v1.FormattedText
+ (*Message)(nil), // 15: protocol.chat.v1.Message
+ (*MessageWithId)(nil), // 16: protocol.chat.v1.MessageWithId
+ (*GetChannelMessagesRequest)(nil), // 17: protocol.chat.v1.GetChannelMessagesRequest
+ (*GetChannelMessagesResponse)(nil), // 18: protocol.chat.v1.GetChannelMessagesResponse
+ (*GetMessageRequest)(nil), // 19: protocol.chat.v1.GetMessageRequest
+ (*GetMessageResponse)(nil), // 20: protocol.chat.v1.GetMessageResponse
+ (*DeleteMessageRequest)(nil), // 21: protocol.chat.v1.DeleteMessageRequest
+ (*DeleteMessageResponse)(nil), // 22: protocol.chat.v1.DeleteMessageResponse
+ (*TriggerActionRequest)(nil), // 23: protocol.chat.v1.TriggerActionRequest
+ (*TriggerActionResponse)(nil), // 24: protocol.chat.v1.TriggerActionResponse
+ (*SendMessageRequest)(nil), // 25: protocol.chat.v1.SendMessageRequest
+ (*SendMessageResponse)(nil), // 26: protocol.chat.v1.SendMessageResponse
+ (*UpdateMessageTextRequest)(nil), // 27: protocol.chat.v1.UpdateMessageTextRequest
+ (*UpdateMessageTextResponse)(nil), // 28: protocol.chat.v1.UpdateMessageTextResponse
+ (*PinMessageRequest)(nil), // 29: protocol.chat.v1.PinMessageRequest
+ (*PinMessageResponse)(nil), // 30: protocol.chat.v1.PinMessageResponse
+ (*UnpinMessageRequest)(nil), // 31: protocol.chat.v1.UnpinMessageRequest
+ (*UnpinMessageResponse)(nil), // 32: protocol.chat.v1.UnpinMessageResponse
+ (*GetPinnedMessagesRequest)(nil), // 33: protocol.chat.v1.GetPinnedMessagesRequest
+ (*GetPinnedMessagesResponse)(nil), // 34: protocol.chat.v1.GetPinnedMessagesResponse
+ (*AddReactionRequest)(nil), // 35: protocol.chat.v1.AddReactionRequest
+ (*AddReactionResponse)(nil), // 36: protocol.chat.v1.AddReactionResponse
+ (*RemoveReactionRequest)(nil), // 37: protocol.chat.v1.RemoveReactionRequest
+ (*RemoveReactionResponse)(nil), // 38: protocol.chat.v1.RemoveReactionResponse
+ (*ActionPayload_Button)(nil), // 39: protocol.chat.v1.ActionPayload.Button
+ (*ActionPayload_Dropdown)(nil), // 40: protocol.chat.v1.ActionPayload.Dropdown
+ (*ActionPayload_Input)(nil), // 41: protocol.chat.v1.ActionPayload.Input
+ (*Action_Button)(nil), // 42: protocol.chat.v1.Action.Button
+ (*Action_Dropdown)(nil), // 43: protocol.chat.v1.Action.Dropdown
+ (*Action_Input)(nil), // 44: protocol.chat.v1.Action.Input
+ (*Action_Dropdown_Entry)(nil), // 45: protocol.chat.v1.Action.Dropdown.Entry
+ (*Embed_EmbedHeading)(nil), // 46: protocol.chat.v1.Embed.EmbedHeading
+ (*Embed_EmbedField)(nil), // 47: protocol.chat.v1.Embed.EmbedField
+ (*Content_TextContent)(nil), // 48: protocol.chat.v1.Content.TextContent
+ (*Content_EmbedContent)(nil), // 49: protocol.chat.v1.Content.EmbedContent
+ (*Content_AttachmentContent)(nil), // 50: protocol.chat.v1.Content.AttachmentContent
+ (*Content_PhotoContent)(nil), // 51: protocol.chat.v1.Content.PhotoContent
+ (*Content_InviteRejected)(nil), // 52: protocol.chat.v1.Content.InviteRejected
+ (*Content_InviteAccepted)(nil), // 53: protocol.chat.v1.Content.InviteAccepted
+ (*Content_RoomUpgradedToGuild)(nil), // 54: protocol.chat.v1.Content.RoomUpgradedToGuild
+ (*Format_Bold)(nil), // 55: protocol.chat.v1.Format.Bold
+ (*Format_Italic)(nil), // 56: protocol.chat.v1.Format.Italic
+ (*Format_Underline)(nil), // 57: protocol.chat.v1.Format.Underline
+ (*Format_Monospace)(nil), // 58: protocol.chat.v1.Format.Monospace
+ (*Format_Superscript)(nil), // 59: protocol.chat.v1.Format.Superscript
+ (*Format_Subscript)(nil), // 60: protocol.chat.v1.Format.Subscript
+ (*Format_CodeBlock)(nil), // 61: protocol.chat.v1.Format.CodeBlock
+ (*Format_UserMention)(nil), // 62: protocol.chat.v1.Format.UserMention
+ (*Format_RoleMention)(nil), // 63: protocol.chat.v1.Format.RoleMention
+ (*Format_ChannelMention)(nil), // 64: protocol.chat.v1.Format.ChannelMention
+ (*Format_GuildMention)(nil), // 65: protocol.chat.v1.Format.GuildMention
+ (*Format_Emoji)(nil), // 66: protocol.chat.v1.Format.Emoji
+ (*Format_Color)(nil), // 67: protocol.chat.v1.Format.Color
+ (*Format_Localization)(nil), // 68: protocol.chat.v1.Format.Localization
+ (*v1.Empty)(nil), // 69: protocol.harmonytypes.v1.Empty
+ (*v11.Emote)(nil), // 70: protocol.emote.v1.Emote
+ (*v1.Metadata)(nil), // 71: protocol.harmonytypes.v1.Metadata
+}
+var file_chat_v1_messages_proto_depIdxs = []int32{
+ 69, // 0: protocol.chat.v1.Overrides.webhook:type_name -> protocol.harmonytypes.v1.Empty
+ 69, // 1: protocol.chat.v1.Overrides.system_plurality:type_name -> protocol.harmonytypes.v1.Empty
+ 69, // 2: protocol.chat.v1.Overrides.system_message:type_name -> protocol.harmonytypes.v1.Empty
+ 69, // 3: protocol.chat.v1.Overrides.bridge:type_name -> protocol.harmonytypes.v1.Empty
+ 39, // 4: protocol.chat.v1.ActionPayload.button:type_name -> protocol.chat.v1.ActionPayload.Button
+ 40, // 5: protocol.chat.v1.ActionPayload.dropdown:type_name -> protocol.chat.v1.ActionPayload.Dropdown
+ 41, // 6: protocol.chat.v1.ActionPayload.input:type_name -> protocol.chat.v1.ActionPayload.Input
+ 0, // 7: protocol.chat.v1.Action.action_type:type_name -> protocol.chat.v1.Action.Type
+ 42, // 8: protocol.chat.v1.Action.button:type_name -> protocol.chat.v1.Action.Button
+ 43, // 9: protocol.chat.v1.Action.dropdown:type_name -> protocol.chat.v1.Action.Dropdown
+ 44, // 10: protocol.chat.v1.Action.input:type_name -> protocol.chat.v1.Action.Input
+ 14, // 11: protocol.chat.v1.Embed.body:type_name -> protocol.chat.v1.FormattedText
+ 46, // 12: protocol.chat.v1.Embed.header:type_name -> protocol.chat.v1.Embed.EmbedHeading
+ 46, // 13: protocol.chat.v1.Embed.footer:type_name -> protocol.chat.v1.Embed.EmbedHeading
+ 47, // 14: protocol.chat.v1.Embed.fields:type_name -> protocol.chat.v1.Embed.EmbedField
+ 14, // 15: protocol.chat.v1.Photo.caption:type_name -> protocol.chat.v1.FormattedText
+ 8, // 16: protocol.chat.v1.Photo.minithumbnail:type_name -> protocol.chat.v1.Minithumbnail
+ 14, // 17: protocol.chat.v1.Attachment.caption:type_name -> protocol.chat.v1.FormattedText
+ 48, // 18: protocol.chat.v1.Content.text_message:type_name -> protocol.chat.v1.Content.TextContent
+ 49, // 19: protocol.chat.v1.Content.embed_message:type_name -> protocol.chat.v1.Content.EmbedContent
+ 50, // 20: protocol.chat.v1.Content.attachment_message:type_name -> protocol.chat.v1.Content.AttachmentContent
+ 51, // 21: protocol.chat.v1.Content.photo_message:type_name -> protocol.chat.v1.Content.PhotoContent
+ 52, // 22: protocol.chat.v1.Content.invite_rejected:type_name -> protocol.chat.v1.Content.InviteRejected
+ 53, // 23: protocol.chat.v1.Content.invite_accepted:type_name -> protocol.chat.v1.Content.InviteAccepted
+ 54, // 24: protocol.chat.v1.Content.room_upgraded_to_guild:type_name -> protocol.chat.v1.Content.RoomUpgradedToGuild
+ 70, // 25: protocol.chat.v1.Reaction.emote:type_name -> protocol.emote.v1.Emote
+ 55, // 26: protocol.chat.v1.Format.bold:type_name -> protocol.chat.v1.Format.Bold
+ 56, // 27: protocol.chat.v1.Format.italic:type_name -> protocol.chat.v1.Format.Italic
+ 57, // 28: protocol.chat.v1.Format.underline:type_name -> protocol.chat.v1.Format.Underline
+ 58, // 29: protocol.chat.v1.Format.monospace:type_name -> protocol.chat.v1.Format.Monospace
+ 59, // 30: protocol.chat.v1.Format.superscript:type_name -> protocol.chat.v1.Format.Superscript
+ 60, // 31: protocol.chat.v1.Format.subscript:type_name -> protocol.chat.v1.Format.Subscript
+ 61, // 32: protocol.chat.v1.Format.code_block:type_name -> protocol.chat.v1.Format.CodeBlock
+ 62, // 33: protocol.chat.v1.Format.user_mention:type_name -> protocol.chat.v1.Format.UserMention
+ 63, // 34: protocol.chat.v1.Format.role_mention:type_name -> protocol.chat.v1.Format.RoleMention
+ 64, // 35: protocol.chat.v1.Format.channel_mention:type_name -> protocol.chat.v1.Format.ChannelMention
+ 65, // 36: protocol.chat.v1.Format.guild_mention:type_name -> protocol.chat.v1.Format.GuildMention
+ 66, // 37: protocol.chat.v1.Format.emoji:type_name -> protocol.chat.v1.Format.Emoji
+ 67, // 38: protocol.chat.v1.Format.color:type_name -> protocol.chat.v1.Format.Color
+ 68, // 39: protocol.chat.v1.Format.localization:type_name -> protocol.chat.v1.Format.Localization
+ 13, // 40: protocol.chat.v1.FormattedText.format:type_name -> protocol.chat.v1.Format
+ 71, // 41: protocol.chat.v1.Message.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 4, // 42: protocol.chat.v1.Message.overrides:type_name -> protocol.chat.v1.Overrides
+ 11, // 43: protocol.chat.v1.Message.content:type_name -> protocol.chat.v1.Content
+ 12, // 44: protocol.chat.v1.Message.reactions:type_name -> protocol.chat.v1.Reaction
+ 15, // 45: protocol.chat.v1.MessageWithId.message:type_name -> protocol.chat.v1.Message
+ 3, // 46: protocol.chat.v1.GetChannelMessagesRequest.direction:type_name -> protocol.chat.v1.GetChannelMessagesRequest.Direction
+ 16, // 47: protocol.chat.v1.GetChannelMessagesResponse.messages:type_name -> protocol.chat.v1.MessageWithId
+ 15, // 48: protocol.chat.v1.GetMessageResponse.message:type_name -> protocol.chat.v1.Message
+ 5, // 49: protocol.chat.v1.TriggerActionRequest.payload:type_name -> protocol.chat.v1.ActionPayload
+ 11, // 50: protocol.chat.v1.SendMessageRequest.content:type_name -> protocol.chat.v1.Content
+ 4, // 51: protocol.chat.v1.SendMessageRequest.overrides:type_name -> protocol.chat.v1.Overrides
+ 71, // 52: protocol.chat.v1.SendMessageRequest.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 14, // 53: protocol.chat.v1.UpdateMessageTextRequest.new_content:type_name -> protocol.chat.v1.FormattedText
+ 70, // 54: protocol.chat.v1.AddReactionRequest.emote:type_name -> protocol.emote.v1.Emote
+ 70, // 55: protocol.chat.v1.RemoveReactionRequest.emote:type_name -> protocol.emote.v1.Emote
+ 45, // 56: protocol.chat.v1.Action.Dropdown.entries:type_name -> protocol.chat.v1.Action.Dropdown.Entry
+ 14, // 57: protocol.chat.v1.Embed.EmbedField.body:type_name -> protocol.chat.v1.FormattedText
+ 1, // 58: protocol.chat.v1.Embed.EmbedField.presentation:type_name -> protocol.chat.v1.Embed.EmbedField.Presentation
+ 6, // 59: protocol.chat.v1.Embed.EmbedField.actions:type_name -> protocol.chat.v1.Action
+ 14, // 60: protocol.chat.v1.Content.TextContent.content:type_name -> protocol.chat.v1.FormattedText
+ 7, // 61: protocol.chat.v1.Content.EmbedContent.embeds:type_name -> protocol.chat.v1.Embed
+ 10, // 62: protocol.chat.v1.Content.AttachmentContent.files:type_name -> protocol.chat.v1.Attachment
+ 9, // 63: protocol.chat.v1.Content.PhotoContent.photos:type_name -> protocol.chat.v1.Photo
+ 2, // 64: protocol.chat.v1.Format.Color.kind:type_name -> protocol.chat.v1.Format.Color.Kind
+ 65, // [65:65] is the sub-list for method output_type
+ 65, // [65:65] is the sub-list for method input_type
+ 65, // [65:65] is the sub-list for extension type_name
+ 65, // [65:65] is the sub-list for extension extendee
+ 0, // [0:65] is the sub-list for field type_name
+}
+
+func init() { file_chat_v1_messages_proto_init() }
+func file_chat_v1_messages_proto_init() {
+ if File_chat_v1_messages_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_chat_v1_messages_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Overrides); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ActionPayload); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Action); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Embed); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Minithumbnail); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Photo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Attachment); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Reaction); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FormattedText); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Message); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MessageWithId); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetChannelMessagesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetChannelMessagesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetMessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetMessageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteMessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteMessageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TriggerActionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TriggerActionResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendMessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SendMessageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateMessageTextRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateMessageTextResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PinMessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PinMessageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UnpinMessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UnpinMessageResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetPinnedMessagesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetPinnedMessagesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddReactionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddReactionResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RemoveReactionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RemoveReactionResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ActionPayload_Button); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ActionPayload_Dropdown); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ActionPayload_Input); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Action_Button); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Action_Dropdown); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Action_Input); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Action_Dropdown_Entry); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Embed_EmbedHeading); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Embed_EmbedField); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content_TextContent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content_EmbedContent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content_AttachmentContent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content_PhotoContent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content_InviteRejected); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content_InviteAccepted); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Content_RoomUpgradedToGuild); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Bold); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Italic); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Underline); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Monospace); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Superscript); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Subscript); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_CodeBlock); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_UserMention); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_RoleMention); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_ChannelMention); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_GuildMention); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Emoji); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Color); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Format_Localization); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_chat_v1_messages_proto_msgTypes[0].OneofWrappers = []interface{}{
+ (*Overrides_UserDefined)(nil),
+ (*Overrides_Webhook)(nil),
+ (*Overrides_SystemPlurality)(nil),
+ (*Overrides_SystemMessage)(nil),
+ (*Overrides_Bridge)(nil),
+ }
+ file_chat_v1_messages_proto_msgTypes[1].OneofWrappers = []interface{}{
+ (*ActionPayload_Button_)(nil),
+ (*ActionPayload_Dropdown_)(nil),
+ (*ActionPayload_Input_)(nil),
+ }
+ file_chat_v1_messages_proto_msgTypes[2].OneofWrappers = []interface{}{
+ (*Action_Button_)(nil),
+ (*Action_Dropdown_)(nil),
+ (*Action_Input_)(nil),
+ }
+ file_chat_v1_messages_proto_msgTypes[3].OneofWrappers = []interface{}{}
+ file_chat_v1_messages_proto_msgTypes[6].OneofWrappers = []interface{}{}
+ file_chat_v1_messages_proto_msgTypes[7].OneofWrappers = []interface{}{
+ (*Content_TextMessage)(nil),
+ (*Content_EmbedMessage)(nil),
+ (*Content_AttachmentMessage)(nil),
+ (*Content_PhotoMessage)(nil),
+ (*Content_InviteRejected_)(nil),
+ (*Content_InviteAccepted_)(nil),
+ (*Content_RoomUpgradedToGuild_)(nil),
+ }
+ file_chat_v1_messages_proto_msgTypes[9].OneofWrappers = []interface{}{
+ (*Format_Bold_)(nil),
+ (*Format_Italic_)(nil),
+ (*Format_Underline_)(nil),
+ (*Format_Monospace_)(nil),
+ (*Format_Superscript_)(nil),
+ (*Format_Subscript_)(nil),
+ (*Format_CodeBlock_)(nil),
+ (*Format_UserMention_)(nil),
+ (*Format_RoleMention_)(nil),
+ (*Format_ChannelMention_)(nil),
+ (*Format_GuildMention_)(nil),
+ (*Format_Emoji_)(nil),
+ (*Format_Color_)(nil),
+ (*Format_Localization_)(nil),
+ }
+ file_chat_v1_messages_proto_msgTypes[11].OneofWrappers = []interface{}{}
+ file_chat_v1_messages_proto_msgTypes[13].OneofWrappers = []interface{}{}
+ file_chat_v1_messages_proto_msgTypes[21].OneofWrappers = []interface{}{}
+ file_chat_v1_messages_proto_msgTypes[38].OneofWrappers = []interface{}{}
+ file_chat_v1_messages_proto_msgTypes[42].OneofWrappers = []interface{}{}
+ file_chat_v1_messages_proto_msgTypes[43].OneofWrappers = []interface{}{}
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_chat_v1_messages_proto_rawDesc,
+ NumEnums: 4,
+ NumMessages: 65,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_chat_v1_messages_proto_goTypes,
+ DependencyIndexes: file_chat_v1_messages_proto_depIdxs,
+ EnumInfos: file_chat_v1_messages_proto_enumTypes,
+ MessageInfos: file_chat_v1_messages_proto_msgTypes,
+ }.Build()
+ File_chat_v1_messages_proto = out.File
+ file_chat_v1_messages_proto_rawDesc = nil
+ file_chat_v1_messages_proto_goTypes = nil
+ file_chat_v1_messages_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/chat/v1/permissions.pb.go b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/permissions.pb.go
new file mode 100644
index 00000000..979f3c92
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/permissions.pb.go
@@ -0,0 +1,1886 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: chat/v1/permissions.proto
+
+package chatv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ v1 "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// Object representing a single permission node.
+type Permission struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the permission matcher. (example: roles.manage)
+ Matches string `protobuf:"bytes,1,opt,name=matches,proto3" json:"matches,omitempty"`
+ // whether the permission is allowed or not.
+ Ok bool `protobuf:"varint,2,opt,name=ok,proto3" json:"ok,omitempty"`
+}
+
+func (x *Permission) Reset() {
+ *x = Permission{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Permission) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Permission) ProtoMessage() {}
+
+func (x *Permission) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_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 Permission.ProtoReflect.Descriptor instead.
+func (*Permission) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Permission) GetMatches() string {
+ if x != nil {
+ return x.Matches
+ }
+ return ""
+}
+
+func (x *Permission) GetOk() bool {
+ if x != nil {
+ return x.Ok
+ }
+ return false
+}
+
+// Object representing a role without the ID.
+type Role struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the role name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // the role color.
+ Color int32 `protobuf:"varint,2,opt,name=color,proto3" json:"color,omitempty"`
+ // whether the role is hoisted or not.
+ Hoist bool `protobuf:"varint,3,opt,name=hoist,proto3" json:"hoist,omitempty"`
+ // whether the role is mentionable or not.
+ Pingable bool `protobuf:"varint,4,opt,name=pingable,proto3" json:"pingable,omitempty"`
+}
+
+func (x *Role) Reset() {
+ *x = Role{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Role) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Role) ProtoMessage() {}
+
+func (x *Role) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_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 Role.ProtoReflect.Descriptor instead.
+func (*Role) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *Role) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Role) GetColor() int32 {
+ if x != nil {
+ return x.Color
+ }
+ return 0
+}
+
+func (x *Role) GetHoist() bool {
+ if x != nil {
+ return x.Hoist
+ }
+ return false
+}
+
+func (x *Role) GetPingable() bool {
+ if x != nil {
+ return x.Pingable
+ }
+ return false
+}
+
+// Object representing a role with it's ID.
+//
+// The role ID for the default role in a guild should always be 0.
+type RoleWithId struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the role.
+ RoleId uint64 `protobuf:"varint,1,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // The role data.
+ Role *Role `protobuf:"bytes,2,opt,name=role,proto3" json:"role,omitempty"`
+}
+
+func (x *RoleWithId) Reset() {
+ *x = RoleWithId{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RoleWithId) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RoleWithId) ProtoMessage() {}
+
+func (x *RoleWithId) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_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 RoleWithId.ProtoReflect.Descriptor instead.
+func (*RoleWithId) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *RoleWithId) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *RoleWithId) GetRole() *Role {
+ if x != nil {
+ return x.Role
+ }
+ return nil
+}
+
+// Used in the `QueryHasPermission` endpoint.
+type QueryHasPermissionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild ID to query permissions for
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the channel ID to query permissions for. If not set, it will query
+ // permissions for the guild.
+ ChannelId *uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
+ // the user ID to query permissions for (if not provided, the current user is
+ // assumed).
+ As *uint64 `protobuf:"varint,4,opt,name=as,proto3,oneof" json:"as,omitempty"`
+ // the permission node to check for.
+ CheckFor string `protobuf:"bytes,3,opt,name=check_for,json=checkFor,proto3" json:"check_for,omitempty"`
+}
+
+func (x *QueryHasPermissionRequest) Reset() {
+ *x = QueryHasPermissionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryHasPermissionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryHasPermissionRequest) ProtoMessage() {}
+
+func (x *QueryHasPermissionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_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 QueryHasPermissionRequest.ProtoReflect.Descriptor instead.
+func (*QueryHasPermissionRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *QueryHasPermissionRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *QueryHasPermissionRequest) GetChannelId() uint64 {
+ if x != nil && x.ChannelId != nil {
+ return *x.ChannelId
+ }
+ return 0
+}
+
+func (x *QueryHasPermissionRequest) GetAs() uint64 {
+ if x != nil && x.As != nil {
+ return *x.As
+ }
+ return 0
+}
+
+func (x *QueryHasPermissionRequest) GetCheckFor() string {
+ if x != nil {
+ return x.CheckFor
+ }
+ return ""
+}
+
+// Used in the `QueryHasPermission` endpoint.
+type QueryHasPermissionResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the permissions for the given node.
+ Ok bool `protobuf:"varint,1,opt,name=ok,proto3" json:"ok,omitempty"`
+}
+
+func (x *QueryHasPermissionResponse) Reset() {
+ *x = QueryHasPermissionResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryHasPermissionResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryHasPermissionResponse) ProtoMessage() {}
+
+func (x *QueryHasPermissionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_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 QueryHasPermissionResponse.ProtoReflect.Descriptor instead.
+func (*QueryHasPermissionResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *QueryHasPermissionResponse) GetOk() bool {
+ if x != nil {
+ return x.Ok
+ }
+ return false
+}
+
+// Used in the `SetPermissions` endpoint.
+type SetPermissionsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild ID to set permissions for.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the channel ID to set permissions for. Only set if the role is for a
+ // channel.
+ ChannelId *uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
+ // the role ID to set permissions for.
+ RoleId uint64 `protobuf:"varint,3,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // the permission list to give.
+ //
+ // There is no "perms_to_take" because not given permissions are by
+ // default not allowed.
+ PermsToGive []*Permission `protobuf:"bytes,4,rep,name=perms_to_give,json=permsToGive,proto3" json:"perms_to_give,omitempty"`
+}
+
+func (x *SetPermissionsRequest) Reset() {
+ *x = SetPermissionsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetPermissionsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetPermissionsRequest) ProtoMessage() {}
+
+func (x *SetPermissionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_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 SetPermissionsRequest.ProtoReflect.Descriptor instead.
+func (*SetPermissionsRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *SetPermissionsRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *SetPermissionsRequest) GetChannelId() uint64 {
+ if x != nil && x.ChannelId != nil {
+ return *x.ChannelId
+ }
+ return 0
+}
+
+func (x *SetPermissionsRequest) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *SetPermissionsRequest) GetPermsToGive() []*Permission {
+ if x != nil {
+ return x.PermsToGive
+ }
+ return nil
+}
+
+// Used in the `SetPermissions` endpoint.
+type SetPermissionsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *SetPermissionsResponse) Reset() {
+ *x = SetPermissionsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetPermissionsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetPermissionsResponse) ProtoMessage() {}
+
+func (x *SetPermissionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_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 SetPermissionsResponse.ProtoReflect.Descriptor instead.
+func (*SetPermissionsResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{6}
+}
+
+// Used in the `GetPermissions` endpoint.
+type GetPermissionsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild ID to get permissions for.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the channel ID to get permissions for. Only applicable for roles in a
+ // channel.
+ ChannelId *uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
+ // the role ID to get permissions for.
+ RoleId uint64 `protobuf:"varint,3,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+}
+
+func (x *GetPermissionsRequest) Reset() {
+ *x = GetPermissionsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetPermissionsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetPermissionsRequest) ProtoMessage() {}
+
+func (x *GetPermissionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[7]
+ 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 GetPermissionsRequest.ProtoReflect.Descriptor instead.
+func (*GetPermissionsRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *GetPermissionsRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *GetPermissionsRequest) GetChannelId() uint64 {
+ if x != nil && x.ChannelId != nil {
+ return *x.ChannelId
+ }
+ return 0
+}
+
+func (x *GetPermissionsRequest) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+// Used in the `GetPermissions` endpoint.
+type GetPermissionsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the permissions list for the given role.
+ Perms []*Permission `protobuf:"bytes,1,rep,name=perms,proto3" json:"perms,omitempty"`
+}
+
+func (x *GetPermissionsResponse) Reset() {
+ *x = GetPermissionsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetPermissionsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetPermissionsResponse) ProtoMessage() {}
+
+func (x *GetPermissionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[8]
+ 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 GetPermissionsResponse.ProtoReflect.Descriptor instead.
+func (*GetPermissionsResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *GetPermissionsResponse) GetPerms() []*Permission {
+ if x != nil {
+ return x.Perms
+ }
+ return nil
+}
+
+// Used in the `MoveRole` endpoint.
+type MoveRoleRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild ID to move the role in.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the role ID to move.
+ RoleId uint64 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // the new position of the role.
+ NewPosition *v1.ItemPosition `protobuf:"bytes,3,opt,name=new_position,json=newPosition,proto3" json:"new_position,omitempty"`
+}
+
+func (x *MoveRoleRequest) Reset() {
+ *x = MoveRoleRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MoveRoleRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MoveRoleRequest) ProtoMessage() {}
+
+func (x *MoveRoleRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[9]
+ 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 MoveRoleRequest.ProtoReflect.Descriptor instead.
+func (*MoveRoleRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *MoveRoleRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *MoveRoleRequest) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *MoveRoleRequest) GetNewPosition() *v1.ItemPosition {
+ if x != nil {
+ return x.NewPosition
+ }
+ return nil
+}
+
+// Used in the `MoveRole` endpoint.
+type MoveRoleResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *MoveRoleResponse) Reset() {
+ *x = MoveRoleResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MoveRoleResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MoveRoleResponse) ProtoMessage() {}
+
+func (x *MoveRoleResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[10]
+ 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 MoveRoleResponse.ProtoReflect.Descriptor instead.
+func (*MoveRoleResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{10}
+}
+
+// Used in the `GetGuildRoles` endpoint.
+type GetGuildRolesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild ID to get roles for.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *GetGuildRolesRequest) Reset() {
+ *x = GetGuildRolesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildRolesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildRolesRequest) ProtoMessage() {}
+
+func (x *GetGuildRolesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[11]
+ 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 GetGuildRolesRequest.ProtoReflect.Descriptor instead.
+func (*GetGuildRolesRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *GetGuildRolesRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Used in the `GetGuildRoles` endpoint.
+type GetGuildRolesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the list of roles in the guild.
+ Roles []*RoleWithId `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"`
+}
+
+func (x *GetGuildRolesResponse) Reset() {
+ *x = GetGuildRolesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetGuildRolesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetGuildRolesResponse) ProtoMessage() {}
+
+func (x *GetGuildRolesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[12]
+ 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 GetGuildRolesResponse.ProtoReflect.Descriptor instead.
+func (*GetGuildRolesResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *GetGuildRolesResponse) GetRoles() []*RoleWithId {
+ if x != nil {
+ return x.Roles
+ }
+ return nil
+}
+
+// Used in the `AddGuildRole` endpoint.
+type AddGuildRoleRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild ID to add the role to.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the role name.
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ // the role color.
+ Color int32 `protobuf:"varint,3,opt,name=color,proto3" json:"color,omitempty"`
+ // whether the role is hoisted or not.
+ Hoist bool `protobuf:"varint,4,opt,name=hoist,proto3" json:"hoist,omitempty"`
+ // whether the role is mentionable or not.
+ Pingable bool `protobuf:"varint,5,opt,name=pingable,proto3" json:"pingable,omitempty"`
+}
+
+func (x *AddGuildRoleRequest) Reset() {
+ *x = AddGuildRoleRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AddGuildRoleRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AddGuildRoleRequest) ProtoMessage() {}
+
+func (x *AddGuildRoleRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[13]
+ 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 AddGuildRoleRequest.ProtoReflect.Descriptor instead.
+func (*AddGuildRoleRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *AddGuildRoleRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *AddGuildRoleRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *AddGuildRoleRequest) GetColor() int32 {
+ if x != nil {
+ return x.Color
+ }
+ return 0
+}
+
+func (x *AddGuildRoleRequest) GetHoist() bool {
+ if x != nil {
+ return x.Hoist
+ }
+ return false
+}
+
+func (x *AddGuildRoleRequest) GetPingable() bool {
+ if x != nil {
+ return x.Pingable
+ }
+ return false
+}
+
+// Used in the `AddGuildRole` endpoint.
+type AddGuildRoleResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the ID of the newly created role.
+ RoleId uint64 `protobuf:"varint,1,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+}
+
+func (x *AddGuildRoleResponse) Reset() {
+ *x = AddGuildRoleResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AddGuildRoleResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AddGuildRoleResponse) ProtoMessage() {}
+
+func (x *AddGuildRoleResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[14]
+ 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 AddGuildRoleResponse.ProtoReflect.Descriptor instead.
+func (*AddGuildRoleResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *AddGuildRoleResponse) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+// Used in the `DeleteGuildRole` endpoint.
+type DeleteGuildRoleRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild ID to delete the role from.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the role ID to delete.
+ RoleId uint64 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+}
+
+func (x *DeleteGuildRoleRequest) Reset() {
+ *x = DeleteGuildRoleRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteGuildRoleRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteGuildRoleRequest) ProtoMessage() {}
+
+func (x *DeleteGuildRoleRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[15]
+ 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 DeleteGuildRoleRequest.ProtoReflect.Descriptor instead.
+func (*DeleteGuildRoleRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *DeleteGuildRoleRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *DeleteGuildRoleRequest) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+// Used in the `DeleteGuildRole` endpoint.
+type DeleteGuildRoleResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteGuildRoleResponse) Reset() {
+ *x = DeleteGuildRoleResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteGuildRoleResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteGuildRoleResponse) ProtoMessage() {}
+
+func (x *DeleteGuildRoleResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[16]
+ 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 DeleteGuildRoleResponse.ProtoReflect.Descriptor instead.
+func (*DeleteGuildRoleResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{16}
+}
+
+// Used in the `ModifyGuildRole` endpoint.
+type ModifyGuildRoleRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the ID of the guild where the role is located
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the ID of the role to modify
+ RoleId uint64 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // the new name of the role
+ NewName *string `protobuf:"bytes,3,opt,name=new_name,json=newName,proto3,oneof" json:"new_name,omitempty"`
+ // the new color of the role
+ NewColor *int32 `protobuf:"varint,4,opt,name=new_color,json=newColor,proto3,oneof" json:"new_color,omitempty"`
+ // the new hoist status of the role
+ NewHoist *bool `protobuf:"varint,5,opt,name=new_hoist,json=newHoist,proto3,oneof" json:"new_hoist,omitempty"`
+ // the new pingable status of the role
+ NewPingable *bool `protobuf:"varint,6,opt,name=new_pingable,json=newPingable,proto3,oneof" json:"new_pingable,omitempty"`
+}
+
+func (x *ModifyGuildRoleRequest) Reset() {
+ *x = ModifyGuildRoleRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ModifyGuildRoleRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ModifyGuildRoleRequest) ProtoMessage() {}
+
+func (x *ModifyGuildRoleRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[17]
+ 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 ModifyGuildRoleRequest.ProtoReflect.Descriptor instead.
+func (*ModifyGuildRoleRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *ModifyGuildRoleRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *ModifyGuildRoleRequest) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *ModifyGuildRoleRequest) GetNewName() string {
+ if x != nil && x.NewName != nil {
+ return *x.NewName
+ }
+ return ""
+}
+
+func (x *ModifyGuildRoleRequest) GetNewColor() int32 {
+ if x != nil && x.NewColor != nil {
+ return *x.NewColor
+ }
+ return 0
+}
+
+func (x *ModifyGuildRoleRequest) GetNewHoist() bool {
+ if x != nil && x.NewHoist != nil {
+ return *x.NewHoist
+ }
+ return false
+}
+
+func (x *ModifyGuildRoleRequest) GetNewPingable() bool {
+ if x != nil && x.NewPingable != nil {
+ return *x.NewPingable
+ }
+ return false
+}
+
+// Used in the `ModifyGuildRole` endpoint.
+type ModifyGuildRoleResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ModifyGuildRoleResponse) Reset() {
+ *x = ModifyGuildRoleResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ModifyGuildRoleResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ModifyGuildRoleResponse) ProtoMessage() {}
+
+func (x *ModifyGuildRoleResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[18]
+ 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 ModifyGuildRoleResponse.ProtoReflect.Descriptor instead.
+func (*ModifyGuildRoleResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{18}
+}
+
+// Used in the `ManageUserRoles` endpoint.
+type ManageUserRolesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the ID of the guild where the user is being managed
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the ID of the user to modify
+ UserId uint64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ // the IDs of the roles to add
+ GiveRoleIds []uint64 `protobuf:"varint,3,rep,packed,name=give_role_ids,json=giveRoleIds,proto3" json:"give_role_ids,omitempty"`
+ // the IDs of the roles to remove
+ TakeRoleIds []uint64 `protobuf:"varint,4,rep,packed,name=take_role_ids,json=takeRoleIds,proto3" json:"take_role_ids,omitempty"`
+}
+
+func (x *ManageUserRolesRequest) Reset() {
+ *x = ManageUserRolesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ManageUserRolesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ManageUserRolesRequest) ProtoMessage() {}
+
+func (x *ManageUserRolesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[19]
+ 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 ManageUserRolesRequest.ProtoReflect.Descriptor instead.
+func (*ManageUserRolesRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *ManageUserRolesRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *ManageUserRolesRequest) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+func (x *ManageUserRolesRequest) GetGiveRoleIds() []uint64 {
+ if x != nil {
+ return x.GiveRoleIds
+ }
+ return nil
+}
+
+func (x *ManageUserRolesRequest) GetTakeRoleIds() []uint64 {
+ if x != nil {
+ return x.TakeRoleIds
+ }
+ return nil
+}
+
+// Used in the `ManageUserRoles` endpoint.
+type ManageUserRolesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ManageUserRolesResponse) Reset() {
+ *x = ManageUserRolesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ManageUserRolesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ManageUserRolesResponse) ProtoMessage() {}
+
+func (x *ManageUserRolesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[20]
+ 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 ManageUserRolesResponse.ProtoReflect.Descriptor instead.
+func (*ManageUserRolesResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{20}
+}
+
+// Used in the `GetUserRoles` endpoint.
+type GetUserRolesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the ID of the guild where the user is located
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // the ID of the user to get roles for
+ UserId uint64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *GetUserRolesRequest) Reset() {
+ *x = GetUserRolesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetUserRolesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetUserRolesRequest) ProtoMessage() {}
+
+func (x *GetUserRolesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[21]
+ 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 GetUserRolesRequest.ProtoReflect.Descriptor instead.
+func (*GetUserRolesRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *GetUserRolesRequest) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *GetUserRolesRequest) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Used in the `GetUserRoles` endpoint.
+type GetUserRolesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // a list of IDs of the roles the user has
+ Roles []uint64 `protobuf:"varint,1,rep,packed,name=roles,proto3" json:"roles,omitempty"`
+}
+
+func (x *GetUserRolesResponse) Reset() {
+ *x = GetUserRolesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_permissions_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetUserRolesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetUserRolesResponse) ProtoMessage() {}
+
+func (x *GetUserRolesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_permissions_proto_msgTypes[22]
+ 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 GetUserRolesResponse.ProtoReflect.Descriptor instead.
+func (*GetUserRolesResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_permissions_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *GetUserRolesResponse) GetRoles() []uint64 {
+ if x != nil {
+ return x.Roles
+ }
+ return nil
+}
+
+var File_chat_v1_permissions_proto protoreflect.FileDescriptor
+
+var file_chat_v1_permissions_proto_rawDesc = []byte{
+ 0x0a, 0x19, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68,
+ 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x36, 0x0a, 0x0a, 0x50, 0x65,
+ 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63,
+ 0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68,
+ 0x65, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02,
+ 0x6f, 0x6b, 0x22, 0x62, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14,
+ 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63,
+ 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x68, 0x6f, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x05, 0x68, 0x6f, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x69,
+ 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x70, 0x69,
+ 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x51, 0x0a, 0x0a, 0x52, 0x6f, 0x6c, 0x65, 0x57, 0x69,
+ 0x74, 0x68, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x2a, 0x0a,
+ 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52,
+ 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0xa2, 0x01, 0x0a, 0x19, 0x51, 0x75,
+ 0x65, 0x72, 0x79, 0x48, 0x61, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x13, 0x0a, 0x02, 0x61, 0x73, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x04, 0x48, 0x01, 0x52, 0x02, 0x61, 0x73, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x09, 0x63,
+ 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
+ 0x63, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x6f, 0x72, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x61, 0x73, 0x22, 0x2c,
+ 0x0a, 0x1a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x61, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02,
+ 0x6f, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x22, 0xc0, 0x01, 0x0a,
+ 0x15, 0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x40,
+ 0x0a, 0x0d, 0x70, 0x65, 0x72, 0x6d, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x67, 0x69, 0x76, 0x65, 0x18,
+ 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, 0x65, 0x72, 0x6d, 0x73, 0x54, 0x6f, 0x47, 0x69, 0x76, 0x65,
+ 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x22,
+ 0x18, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7e, 0x0a, 0x15, 0x47, 0x65, 0x74,
+ 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x22, 0x0a,
+ 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x04, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01,
+ 0x01, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x22, 0x4c, 0x0a, 0x16, 0x47, 0x65, 0x74,
+ 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x70, 0x65, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x52, 0x05, 0x70, 0x65, 0x72, 0x6d, 0x73, 0x22, 0x90, 0x01, 0x0a, 0x0f, 0x4d, 0x6f, 0x76, 0x65,
+ 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12,
+ 0x49, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31,
+ 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6e,
+ 0x65, 0x77, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x12, 0x0a, 0x10, 0x4d, 0x6f,
+ 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31,
+ 0x0a, 0x14, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x22, 0x4b, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c,
+ 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x72, 0x6f,
+ 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c,
+ 0x65, 0x57, 0x69, 0x74, 0x68, 0x49, 0x64, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x22, 0x8c,
+ 0x01, 0x0a, 0x13, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x68,
+ 0x6f, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x68, 0x6f, 0x69, 0x73,
+ 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x08, 0x70, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x2f, 0x0a,
+ 0x14, 0x41, 0x64, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x4c,
+ 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x22, 0x19, 0x0a, 0x17,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x92, 0x02, 0x0a, 0x16, 0x4d, 0x6f, 0x64, 0x69,
+ 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a,
+ 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06,
+ 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x4e,
+ 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6f,
+ 0x6c, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x08, 0x6e, 0x65, 0x77,
+ 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x5f,
+ 0x68, 0x6f, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x08, 0x6e,
+ 0x65, 0x77, 0x48, 0x6f, 0x69, 0x73, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x65,
+ 0x77, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08,
+ 0x48, 0x03, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x88,
+ 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42,
+ 0x0c, 0x0a, 0x0a, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x42, 0x0c, 0x0a,
+ 0x0a, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x68, 0x6f, 0x69, 0x73, 0x74, 0x42, 0x0f, 0x0a, 0x0d, 0x5f,
+ 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x22, 0x19, 0x0a, 0x17,
+ 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x79, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x6f, 0x6c, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x94, 0x01, 0x0a, 0x16, 0x4d, 0x61, 0x6e, 0x61,
+ 0x67, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a,
+ 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06,
+ 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0d, 0x67, 0x69, 0x76, 0x65, 0x5f, 0x72,
+ 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0b, 0x67,
+ 0x69, 0x76, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x74, 0x61,
+ 0x6b, 0x65, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
+ 0x04, 0x52, 0x0b, 0x74, 0x61, 0x6b, 0x65, 0x52, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x73, 0x22, 0x19,
+ 0x0a, 0x17, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x49, 0x0a, 0x13, 0x47, 0x65, 0x74,
+ 0x55, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75,
+ 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73,
+ 0x65, 0x72, 0x49, 0x64, 0x22, 0x2c, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52,
+ 0x6f, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05,
+ 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04, 0x52, 0x05, 0x72, 0x6f, 0x6c,
+ 0x65, 0x73, 0x42, 0xc6, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x10, 0x50, 0x65, 0x72,
+ 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
+ 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f,
+ 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x63, 0x68, 0x61,
+ 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x68, 0x61, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x43,
+ 0x58, 0xaa, 0x02, 0x10, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x68, 0x61,
+ 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c,
+ 0x43, 0x68, 0x61, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x12, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x3a, 0x3a, 0x43, 0x68, 0x61, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_chat_v1_permissions_proto_rawDescOnce sync.Once
+ file_chat_v1_permissions_proto_rawDescData = file_chat_v1_permissions_proto_rawDesc
+)
+
+func file_chat_v1_permissions_proto_rawDescGZIP() []byte {
+ file_chat_v1_permissions_proto_rawDescOnce.Do(func() {
+ file_chat_v1_permissions_proto_rawDescData = protoimpl.X.CompressGZIP(file_chat_v1_permissions_proto_rawDescData)
+ })
+ return file_chat_v1_permissions_proto_rawDescData
+}
+
+var file_chat_v1_permissions_proto_msgTypes = make([]protoimpl.MessageInfo, 23)
+var file_chat_v1_permissions_proto_goTypes = []interface{}{
+ (*Permission)(nil), // 0: protocol.chat.v1.Permission
+ (*Role)(nil), // 1: protocol.chat.v1.Role
+ (*RoleWithId)(nil), // 2: protocol.chat.v1.RoleWithId
+ (*QueryHasPermissionRequest)(nil), // 3: protocol.chat.v1.QueryHasPermissionRequest
+ (*QueryHasPermissionResponse)(nil), // 4: protocol.chat.v1.QueryHasPermissionResponse
+ (*SetPermissionsRequest)(nil), // 5: protocol.chat.v1.SetPermissionsRequest
+ (*SetPermissionsResponse)(nil), // 6: protocol.chat.v1.SetPermissionsResponse
+ (*GetPermissionsRequest)(nil), // 7: protocol.chat.v1.GetPermissionsRequest
+ (*GetPermissionsResponse)(nil), // 8: protocol.chat.v1.GetPermissionsResponse
+ (*MoveRoleRequest)(nil), // 9: protocol.chat.v1.MoveRoleRequest
+ (*MoveRoleResponse)(nil), // 10: protocol.chat.v1.MoveRoleResponse
+ (*GetGuildRolesRequest)(nil), // 11: protocol.chat.v1.GetGuildRolesRequest
+ (*GetGuildRolesResponse)(nil), // 12: protocol.chat.v1.GetGuildRolesResponse
+ (*AddGuildRoleRequest)(nil), // 13: protocol.chat.v1.AddGuildRoleRequest
+ (*AddGuildRoleResponse)(nil), // 14: protocol.chat.v1.AddGuildRoleResponse
+ (*DeleteGuildRoleRequest)(nil), // 15: protocol.chat.v1.DeleteGuildRoleRequest
+ (*DeleteGuildRoleResponse)(nil), // 16: protocol.chat.v1.DeleteGuildRoleResponse
+ (*ModifyGuildRoleRequest)(nil), // 17: protocol.chat.v1.ModifyGuildRoleRequest
+ (*ModifyGuildRoleResponse)(nil), // 18: protocol.chat.v1.ModifyGuildRoleResponse
+ (*ManageUserRolesRequest)(nil), // 19: protocol.chat.v1.ManageUserRolesRequest
+ (*ManageUserRolesResponse)(nil), // 20: protocol.chat.v1.ManageUserRolesResponse
+ (*GetUserRolesRequest)(nil), // 21: protocol.chat.v1.GetUserRolesRequest
+ (*GetUserRolesResponse)(nil), // 22: protocol.chat.v1.GetUserRolesResponse
+ (*v1.ItemPosition)(nil), // 23: protocol.harmonytypes.v1.ItemPosition
+}
+var file_chat_v1_permissions_proto_depIdxs = []int32{
+ 1, // 0: protocol.chat.v1.RoleWithId.role:type_name -> protocol.chat.v1.Role
+ 0, // 1: protocol.chat.v1.SetPermissionsRequest.perms_to_give:type_name -> protocol.chat.v1.Permission
+ 0, // 2: protocol.chat.v1.GetPermissionsResponse.perms:type_name -> protocol.chat.v1.Permission
+ 23, // 3: protocol.chat.v1.MoveRoleRequest.new_position:type_name -> protocol.harmonytypes.v1.ItemPosition
+ 2, // 4: protocol.chat.v1.GetGuildRolesResponse.roles:type_name -> protocol.chat.v1.RoleWithId
+ 5, // [5:5] is the sub-list for method output_type
+ 5, // [5:5] is the sub-list for method input_type
+ 5, // [5:5] is the sub-list for extension type_name
+ 5, // [5:5] is the sub-list for extension extendee
+ 0, // [0:5] is the sub-list for field type_name
+}
+
+func init() { file_chat_v1_permissions_proto_init() }
+func file_chat_v1_permissions_proto_init() {
+ if File_chat_v1_permissions_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_chat_v1_permissions_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Permission); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Role); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RoleWithId); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryHasPermissionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryHasPermissionResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetPermissionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetPermissionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetPermissionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetPermissionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MoveRoleRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MoveRoleResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildRolesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetGuildRolesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddGuildRoleRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddGuildRoleResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteGuildRoleRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteGuildRoleResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ModifyGuildRoleRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ModifyGuildRoleResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ManageUserRolesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ManageUserRolesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetUserRolesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetUserRolesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_chat_v1_permissions_proto_msgTypes[3].OneofWrappers = []interface{}{}
+ file_chat_v1_permissions_proto_msgTypes[5].OneofWrappers = []interface{}{}
+ file_chat_v1_permissions_proto_msgTypes[7].OneofWrappers = []interface{}{}
+ file_chat_v1_permissions_proto_msgTypes[17].OneofWrappers = []interface{}{}
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_chat_v1_permissions_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 23,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_chat_v1_permissions_proto_goTypes,
+ DependencyIndexes: file_chat_v1_permissions_proto_depIdxs,
+ MessageInfos: file_chat_v1_permissions_proto_msgTypes,
+ }.Build()
+ File_chat_v1_permissions_proto = out.File
+ file_chat_v1_permissions_proto_rawDesc = nil
+ file_chat_v1_permissions_proto_goTypes = nil
+ file_chat_v1_permissions_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/chat/v1/stream.pb.go b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/stream.pb.go
new file mode 100644
index 00000000..8ff28f1a
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/chat/v1/stream.pb.go
@@ -0,0 +1,4081 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: chat/v1/stream.proto
+
+package chatv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ v1 "github.com/harmony-development/shibshib/gen/emote/v1"
+ v12 "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ v11 "github.com/harmony-development/shibshib/gen/profile/v1"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// Request type for use in the `StreamEvents` endpoint.
+type StreamEventsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Describes which event source to subscribe to.
+ //
+ // Types that are assignable to Request:
+ // *StreamEventsRequest_SubscribeToGuild_
+ // *StreamEventsRequest_SubscribeToActions_
+ // *StreamEventsRequest_SubscribeToHomeserverEvents_
+ Request isStreamEventsRequest_Request `protobuf_oneof:"request"`
+}
+
+func (x *StreamEventsRequest) Reset() {
+ *x = StreamEventsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEventsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEventsRequest) ProtoMessage() {}
+
+func (x *StreamEventsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_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 StreamEventsRequest.ProtoReflect.Descriptor instead.
+func (*StreamEventsRequest) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{0}
+}
+
+func (m *StreamEventsRequest) GetRequest() isStreamEventsRequest_Request {
+ if m != nil {
+ return m.Request
+ }
+ return nil
+}
+
+func (x *StreamEventsRequest) GetSubscribeToGuild() *StreamEventsRequest_SubscribeToGuild {
+ if x, ok := x.GetRequest().(*StreamEventsRequest_SubscribeToGuild_); ok {
+ return x.SubscribeToGuild
+ }
+ return nil
+}
+
+func (x *StreamEventsRequest) GetSubscribeToActions() *StreamEventsRequest_SubscribeToActions {
+ if x, ok := x.GetRequest().(*StreamEventsRequest_SubscribeToActions_); ok {
+ return x.SubscribeToActions
+ }
+ return nil
+}
+
+func (x *StreamEventsRequest) GetSubscribeToHomeserverEvents() *StreamEventsRequest_SubscribeToHomeserverEvents {
+ if x, ok := x.GetRequest().(*StreamEventsRequest_SubscribeToHomeserverEvents_); ok {
+ return x.SubscribeToHomeserverEvents
+ }
+ return nil
+}
+
+type isStreamEventsRequest_Request interface {
+ isStreamEventsRequest_Request()
+}
+
+type StreamEventsRequest_SubscribeToGuild_ struct {
+ // Subscribe to the guild event source.
+ SubscribeToGuild *StreamEventsRequest_SubscribeToGuild `protobuf:"bytes,1,opt,name=subscribe_to_guild,json=subscribeToGuild,proto3,oneof"`
+}
+
+type StreamEventsRequest_SubscribeToActions_ struct {
+ // Subscribe to the action event source.
+ SubscribeToActions *StreamEventsRequest_SubscribeToActions `protobuf:"bytes,2,opt,name=subscribe_to_actions,json=subscribeToActions,proto3,oneof"`
+}
+
+type StreamEventsRequest_SubscribeToHomeserverEvents_ struct {
+ // Subscribe to the homeserver event source.
+ SubscribeToHomeserverEvents *StreamEventsRequest_SubscribeToHomeserverEvents `protobuf:"bytes,3,opt,name=subscribe_to_homeserver_events,json=subscribeToHomeserverEvents,proto3,oneof"`
+}
+
+func (*StreamEventsRequest_SubscribeToGuild_) isStreamEventsRequest_Request() {}
+
+func (*StreamEventsRequest_SubscribeToActions_) isStreamEventsRequest_Request() {}
+
+func (*StreamEventsRequest_SubscribeToHomeserverEvents_) isStreamEventsRequest_Request() {}
+
+// Used in the `StreamEvents` endpoint.
+type StreamEventsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Possible events.
+ //
+ // Types that are assignable to Event:
+ // *StreamEventsResponse_Chat
+ // *StreamEventsResponse_Emote
+ // *StreamEventsResponse_Profile
+ Event isStreamEventsResponse_Event `protobuf_oneof:"event"`
+}
+
+func (x *StreamEventsResponse) Reset() {
+ *x = StreamEventsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEventsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEventsResponse) ProtoMessage() {}
+
+func (x *StreamEventsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_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 StreamEventsResponse.ProtoReflect.Descriptor instead.
+func (*StreamEventsResponse) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{1}
+}
+
+func (m *StreamEventsResponse) GetEvent() isStreamEventsResponse_Event {
+ if m != nil {
+ return m.Event
+ }
+ return nil
+}
+
+func (x *StreamEventsResponse) GetChat() *StreamEvent {
+ if x, ok := x.GetEvent().(*StreamEventsResponse_Chat); ok {
+ return x.Chat
+ }
+ return nil
+}
+
+func (x *StreamEventsResponse) GetEmote() *v1.StreamEvent {
+ if x, ok := x.GetEvent().(*StreamEventsResponse_Emote); ok {
+ return x.Emote
+ }
+ return nil
+}
+
+func (x *StreamEventsResponse) GetProfile() *v11.StreamEvent {
+ if x, ok := x.GetEvent().(*StreamEventsResponse_Profile); ok {
+ return x.Profile
+ }
+ return nil
+}
+
+type isStreamEventsResponse_Event interface {
+ isStreamEventsResponse_Event()
+}
+
+type StreamEventsResponse_Chat struct {
+ // A chat event.
+ Chat *StreamEvent `protobuf:"bytes,1,opt,name=chat,proto3,oneof"`
+}
+
+type StreamEventsResponse_Emote struct {
+ // A emote event.
+ Emote *v1.StreamEvent `protobuf:"bytes,2,opt,name=emote,proto3,oneof"`
+}
+
+type StreamEventsResponse_Profile struct {
+ // A profile event.
+ Profile *v11.StreamEvent `protobuf:"bytes,3,opt,name=profile,proto3,oneof"`
+}
+
+func (*StreamEventsResponse_Chat) isStreamEventsResponse_Event() {}
+
+func (*StreamEventsResponse_Emote) isStreamEventsResponse_Event() {}
+
+func (*StreamEventsResponse_Profile) isStreamEventsResponse_Event() {}
+
+// Describes an event.
+type StreamEvent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Which event to send.
+ //
+ // Types that are assignable to Event:
+ // *StreamEvent_GuildAddedToList_
+ // *StreamEvent_GuildRemovedFromList_
+ // *StreamEvent_ActionPerformed_
+ // *StreamEvent_SentMessage
+ // *StreamEvent_EditedMessage
+ // *StreamEvent_DeletedMessage
+ // *StreamEvent_CreatedChannel
+ // *StreamEvent_EditedChannel
+ // *StreamEvent_DeletedChannel
+ // *StreamEvent_EditedGuild
+ // *StreamEvent_DeletedGuild
+ // *StreamEvent_JoinedMember
+ // *StreamEvent_LeftMember
+ // *StreamEvent_Typing_
+ // *StreamEvent_RoleCreated_
+ // *StreamEvent_RoleDeleted_
+ // *StreamEvent_RoleMoved_
+ // *StreamEvent_RoleUpdated_
+ // *StreamEvent_RolePermsUpdated
+ // *StreamEvent_UserRolesUpdated_
+ // *StreamEvent_PermissionUpdated_
+ // *StreamEvent_ChannelsReordered_
+ // *StreamEvent_EditedChannelPosition
+ // *StreamEvent_MessagePinned_
+ // *StreamEvent_MessageUnpinned_
+ // *StreamEvent_ReactionUpdated_
+ // *StreamEvent_OwnerAdded_
+ // *StreamEvent_OwnerRemoved_
+ // *StreamEvent_InviteReceived_
+ // *StreamEvent_InviteRejected_
+ Event isStreamEvent_Event `protobuf_oneof:"event"`
+}
+
+func (x *StreamEvent) Reset() {
+ *x = StreamEvent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent) ProtoMessage() {}
+
+func (x *StreamEvent) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_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 StreamEvent.ProtoReflect.Descriptor instead.
+func (*StreamEvent) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2}
+}
+
+func (m *StreamEvent) GetEvent() isStreamEvent_Event {
+ if m != nil {
+ return m.Event
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetGuildAddedToList() *StreamEvent_GuildAddedToList {
+ if x, ok := x.GetEvent().(*StreamEvent_GuildAddedToList_); ok {
+ return x.GuildAddedToList
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetGuildRemovedFromList() *StreamEvent_GuildRemovedFromList {
+ if x, ok := x.GetEvent().(*StreamEvent_GuildRemovedFromList_); ok {
+ return x.GuildRemovedFromList
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetActionPerformed() *StreamEvent_ActionPerformed {
+ if x, ok := x.GetEvent().(*StreamEvent_ActionPerformed_); ok {
+ return x.ActionPerformed
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetSentMessage() *StreamEvent_MessageSent {
+ if x, ok := x.GetEvent().(*StreamEvent_SentMessage); ok {
+ return x.SentMessage
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEditedMessage() *StreamEvent_MessageUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_EditedMessage); ok {
+ return x.EditedMessage
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetDeletedMessage() *StreamEvent_MessageDeleted {
+ if x, ok := x.GetEvent().(*StreamEvent_DeletedMessage); ok {
+ return x.DeletedMessage
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetCreatedChannel() *StreamEvent_ChannelCreated {
+ if x, ok := x.GetEvent().(*StreamEvent_CreatedChannel); ok {
+ return x.CreatedChannel
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEditedChannel() *StreamEvent_ChannelUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_EditedChannel); ok {
+ return x.EditedChannel
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetDeletedChannel() *StreamEvent_ChannelDeleted {
+ if x, ok := x.GetEvent().(*StreamEvent_DeletedChannel); ok {
+ return x.DeletedChannel
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEditedGuild() *StreamEvent_GuildUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_EditedGuild); ok {
+ return x.EditedGuild
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetDeletedGuild() *StreamEvent_GuildDeleted {
+ if x, ok := x.GetEvent().(*StreamEvent_DeletedGuild); ok {
+ return x.DeletedGuild
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetJoinedMember() *StreamEvent_MemberJoined {
+ if x, ok := x.GetEvent().(*StreamEvent_JoinedMember); ok {
+ return x.JoinedMember
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetLeftMember() *StreamEvent_MemberLeft {
+ if x, ok := x.GetEvent().(*StreamEvent_LeftMember); ok {
+ return x.LeftMember
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetTyping() *StreamEvent_Typing {
+ if x, ok := x.GetEvent().(*StreamEvent_Typing_); ok {
+ return x.Typing
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetRoleCreated() *StreamEvent_RoleCreated {
+ if x, ok := x.GetEvent().(*StreamEvent_RoleCreated_); ok {
+ return x.RoleCreated
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetRoleDeleted() *StreamEvent_RoleDeleted {
+ if x, ok := x.GetEvent().(*StreamEvent_RoleDeleted_); ok {
+ return x.RoleDeleted
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetRoleMoved() *StreamEvent_RoleMoved {
+ if x, ok := x.GetEvent().(*StreamEvent_RoleMoved_); ok {
+ return x.RoleMoved
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetRoleUpdated() *StreamEvent_RoleUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_RoleUpdated_); ok {
+ return x.RoleUpdated
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetRolePermsUpdated() *StreamEvent_RolePermissionsUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_RolePermsUpdated); ok {
+ return x.RolePermsUpdated
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetUserRolesUpdated() *StreamEvent_UserRolesUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_UserRolesUpdated_); ok {
+ return x.UserRolesUpdated
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetPermissionUpdated() *StreamEvent_PermissionUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_PermissionUpdated_); ok {
+ return x.PermissionUpdated
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetChannelsReordered() *StreamEvent_ChannelsReordered {
+ if x, ok := x.GetEvent().(*StreamEvent_ChannelsReordered_); ok {
+ return x.ChannelsReordered
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEditedChannelPosition() *StreamEvent_ChannelPositionUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_EditedChannelPosition); ok {
+ return x.EditedChannelPosition
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetMessagePinned() *StreamEvent_MessagePinned {
+ if x, ok := x.GetEvent().(*StreamEvent_MessagePinned_); ok {
+ return x.MessagePinned
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetMessageUnpinned() *StreamEvent_MessageUnpinned {
+ if x, ok := x.GetEvent().(*StreamEvent_MessageUnpinned_); ok {
+ return x.MessageUnpinned
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetReactionUpdated() *StreamEvent_ReactionUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_ReactionUpdated_); ok {
+ return x.ReactionUpdated
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetOwnerAdded() *StreamEvent_OwnerAdded {
+ if x, ok := x.GetEvent().(*StreamEvent_OwnerAdded_); ok {
+ return x.OwnerAdded
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetOwnerRemoved() *StreamEvent_OwnerRemoved {
+ if x, ok := x.GetEvent().(*StreamEvent_OwnerRemoved_); ok {
+ return x.OwnerRemoved
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetInviteReceived() *StreamEvent_InviteReceived {
+ if x, ok := x.GetEvent().(*StreamEvent_InviteReceived_); ok {
+ return x.InviteReceived
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetInviteRejected() *StreamEvent_InviteRejected {
+ if x, ok := x.GetEvent().(*StreamEvent_InviteRejected_); ok {
+ return x.InviteRejected
+ }
+ return nil
+}
+
+type isStreamEvent_Event interface {
+ isStreamEvent_Event()
+}
+
+type StreamEvent_GuildAddedToList_ struct {
+ // Send the guild added to list event.
+ GuildAddedToList *StreamEvent_GuildAddedToList `protobuf:"bytes,1,opt,name=guild_added_to_list,json=guildAddedToList,proto3,oneof"`
+}
+
+type StreamEvent_GuildRemovedFromList_ struct {
+ // Send the guild removed from list event.
+ GuildRemovedFromList *StreamEvent_GuildRemovedFromList `protobuf:"bytes,2,opt,name=guild_removed_from_list,json=guildRemovedFromList,proto3,oneof"`
+}
+
+type StreamEvent_ActionPerformed_ struct {
+ // Send the action performed event.
+ ActionPerformed *StreamEvent_ActionPerformed `protobuf:"bytes,3,opt,name=action_performed,json=actionPerformed,proto3,oneof"`
+}
+
+type StreamEvent_SentMessage struct {
+ // Send the message sent event.
+ SentMessage *StreamEvent_MessageSent `protobuf:"bytes,4,opt,name=sent_message,json=sentMessage,proto3,oneof"`
+}
+
+type StreamEvent_EditedMessage struct {
+ // Send the message updated event.
+ EditedMessage *StreamEvent_MessageUpdated `protobuf:"bytes,5,opt,name=edited_message,json=editedMessage,proto3,oneof"`
+}
+
+type StreamEvent_DeletedMessage struct {
+ // Send the message deleted event.
+ DeletedMessage *StreamEvent_MessageDeleted `protobuf:"bytes,6,opt,name=deleted_message,json=deletedMessage,proto3,oneof"`
+}
+
+type StreamEvent_CreatedChannel struct {
+ // Send the channel created event.
+ CreatedChannel *StreamEvent_ChannelCreated `protobuf:"bytes,7,opt,name=created_channel,json=createdChannel,proto3,oneof"`
+}
+
+type StreamEvent_EditedChannel struct {
+ // Send the channel updated event.
+ EditedChannel *StreamEvent_ChannelUpdated `protobuf:"bytes,8,opt,name=edited_channel,json=editedChannel,proto3,oneof"`
+}
+
+type StreamEvent_DeletedChannel struct {
+ // Send the channel deleted event.
+ DeletedChannel *StreamEvent_ChannelDeleted `protobuf:"bytes,9,opt,name=deleted_channel,json=deletedChannel,proto3,oneof"`
+}
+
+type StreamEvent_EditedGuild struct {
+ // Send the guild updated event.
+ EditedGuild *StreamEvent_GuildUpdated `protobuf:"bytes,10,opt,name=edited_guild,json=editedGuild,proto3,oneof"`
+}
+
+type StreamEvent_DeletedGuild struct {
+ // Send the guild deleted event.
+ DeletedGuild *StreamEvent_GuildDeleted `protobuf:"bytes,11,opt,name=deleted_guild,json=deletedGuild,proto3,oneof"`
+}
+
+type StreamEvent_JoinedMember struct {
+ // Send the member joined event.
+ JoinedMember *StreamEvent_MemberJoined `protobuf:"bytes,12,opt,name=joined_member,json=joinedMember,proto3,oneof"`
+}
+
+type StreamEvent_LeftMember struct {
+ // Send the member left event.
+ LeftMember *StreamEvent_MemberLeft `protobuf:"bytes,13,opt,name=left_member,json=leftMember,proto3,oneof"`
+}
+
+type StreamEvent_Typing_ struct {
+ // Send the typing event.
+ Typing *StreamEvent_Typing `protobuf:"bytes,14,opt,name=typing,proto3,oneof"`
+}
+
+type StreamEvent_RoleCreated_ struct {
+ // Send the role created event.
+ RoleCreated *StreamEvent_RoleCreated `protobuf:"bytes,15,opt,name=role_created,json=roleCreated,proto3,oneof"`
+}
+
+type StreamEvent_RoleDeleted_ struct {
+ // Send the role deleted event.
+ RoleDeleted *StreamEvent_RoleDeleted `protobuf:"bytes,16,opt,name=role_deleted,json=roleDeleted,proto3,oneof"`
+}
+
+type StreamEvent_RoleMoved_ struct {
+ // Send the role moved event.
+ RoleMoved *StreamEvent_RoleMoved `protobuf:"bytes,17,opt,name=role_moved,json=roleMoved,proto3,oneof"`
+}
+
+type StreamEvent_RoleUpdated_ struct {
+ // Send the role updated event.
+ RoleUpdated *StreamEvent_RoleUpdated `protobuf:"bytes,18,opt,name=role_updated,json=roleUpdated,proto3,oneof"`
+}
+
+type StreamEvent_RolePermsUpdated struct {
+ // Send the role perms updated event.
+ RolePermsUpdated *StreamEvent_RolePermissionsUpdated `protobuf:"bytes,19,opt,name=role_perms_updated,json=rolePermsUpdated,proto3,oneof"`
+}
+
+type StreamEvent_UserRolesUpdated_ struct {
+ // Send the user roles updated event.
+ UserRolesUpdated *StreamEvent_UserRolesUpdated `protobuf:"bytes,20,opt,name=user_roles_updated,json=userRolesUpdated,proto3,oneof"`
+}
+
+type StreamEvent_PermissionUpdated_ struct {
+ // Send the permission updated event.
+ PermissionUpdated *StreamEvent_PermissionUpdated `protobuf:"bytes,21,opt,name=permission_updated,json=permissionUpdated,proto3,oneof"`
+}
+
+type StreamEvent_ChannelsReordered_ struct {
+ // The channels have been completely reordered.
+ ChannelsReordered *StreamEvent_ChannelsReordered `protobuf:"bytes,22,opt,name=channels_reordered,json=channelsReordered,proto3,oneof"`
+}
+
+type StreamEvent_EditedChannelPosition struct {
+ // Send the channel position updated event.
+ EditedChannelPosition *StreamEvent_ChannelPositionUpdated `protobuf:"bytes,23,opt,name=edited_channel_position,json=editedChannelPosition,proto3,oneof"`
+}
+
+type StreamEvent_MessagePinned_ struct {
+ // Send the message pinned event.
+ MessagePinned *StreamEvent_MessagePinned `protobuf:"bytes,24,opt,name=message_pinned,json=messagePinned,proto3,oneof"`
+}
+
+type StreamEvent_MessageUnpinned_ struct {
+ // Send the message unpinned event.
+ MessageUnpinned *StreamEvent_MessageUnpinned `protobuf:"bytes,25,opt,name=message_unpinned,json=messageUnpinned,proto3,oneof"`
+}
+
+type StreamEvent_ReactionUpdated_ struct {
+ // Send the reaction updated event.
+ ReactionUpdated *StreamEvent_ReactionUpdated `protobuf:"bytes,26,opt,name=reaction_updated,json=reactionUpdated,proto3,oneof"`
+}
+
+type StreamEvent_OwnerAdded_ struct {
+ // Send the owner added event.
+ OwnerAdded *StreamEvent_OwnerAdded `protobuf:"bytes,27,opt,name=owner_added,json=ownerAdded,proto3,oneof"`
+}
+
+type StreamEvent_OwnerRemoved_ struct {
+ // Send the owner removed event.
+ OwnerRemoved *StreamEvent_OwnerRemoved `protobuf:"bytes,28,opt,name=owner_removed,json=ownerRemoved,proto3,oneof"`
+}
+
+type StreamEvent_InviteReceived_ struct {
+ // Send the guild invite received event.
+ InviteReceived *StreamEvent_InviteReceived `protobuf:"bytes,29,opt,name=invite_received,json=inviteReceived,proto3,oneof"`
+}
+
+type StreamEvent_InviteRejected_ struct {
+ // Send the guild invite rejected event.
+ InviteRejected *StreamEvent_InviteRejected `protobuf:"bytes,30,opt,name=invite_rejected,json=inviteRejected,proto3,oneof"`
+}
+
+func (*StreamEvent_GuildAddedToList_) isStreamEvent_Event() {}
+
+func (*StreamEvent_GuildRemovedFromList_) isStreamEvent_Event() {}
+
+func (*StreamEvent_ActionPerformed_) isStreamEvent_Event() {}
+
+func (*StreamEvent_SentMessage) isStreamEvent_Event() {}
+
+func (*StreamEvent_EditedMessage) isStreamEvent_Event() {}
+
+func (*StreamEvent_DeletedMessage) isStreamEvent_Event() {}
+
+func (*StreamEvent_CreatedChannel) isStreamEvent_Event() {}
+
+func (*StreamEvent_EditedChannel) isStreamEvent_Event() {}
+
+func (*StreamEvent_DeletedChannel) isStreamEvent_Event() {}
+
+func (*StreamEvent_EditedGuild) isStreamEvent_Event() {}
+
+func (*StreamEvent_DeletedGuild) isStreamEvent_Event() {}
+
+func (*StreamEvent_JoinedMember) isStreamEvent_Event() {}
+
+func (*StreamEvent_LeftMember) isStreamEvent_Event() {}
+
+func (*StreamEvent_Typing_) isStreamEvent_Event() {}
+
+func (*StreamEvent_RoleCreated_) isStreamEvent_Event() {}
+
+func (*StreamEvent_RoleDeleted_) isStreamEvent_Event() {}
+
+func (*StreamEvent_RoleMoved_) isStreamEvent_Event() {}
+
+func (*StreamEvent_RoleUpdated_) isStreamEvent_Event() {}
+
+func (*StreamEvent_RolePermsUpdated) isStreamEvent_Event() {}
+
+func (*StreamEvent_UserRolesUpdated_) isStreamEvent_Event() {}
+
+func (*StreamEvent_PermissionUpdated_) isStreamEvent_Event() {}
+
+func (*StreamEvent_ChannelsReordered_) isStreamEvent_Event() {}
+
+func (*StreamEvent_EditedChannelPosition) isStreamEvent_Event() {}
+
+func (*StreamEvent_MessagePinned_) isStreamEvent_Event() {}
+
+func (*StreamEvent_MessageUnpinned_) isStreamEvent_Event() {}
+
+func (*StreamEvent_ReactionUpdated_) isStreamEvent_Event() {}
+
+func (*StreamEvent_OwnerAdded_) isStreamEvent_Event() {}
+
+func (*StreamEvent_OwnerRemoved_) isStreamEvent_Event() {}
+
+func (*StreamEvent_InviteReceived_) isStreamEvent_Event() {}
+
+func (*StreamEvent_InviteRejected_) isStreamEvent_Event() {}
+
+// Event source for guilds' events.
+type StreamEventsRequest_SubscribeToGuild struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the guild id to subscribe to
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *StreamEventsRequest_SubscribeToGuild) Reset() {
+ *x = StreamEventsRequest_SubscribeToGuild{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEventsRequest_SubscribeToGuild) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEventsRequest_SubscribeToGuild) ProtoMessage() {}
+
+func (x *StreamEventsRequest_SubscribeToGuild) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_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 StreamEventsRequest_SubscribeToGuild.ProtoReflect.Descriptor instead.
+func (*StreamEventsRequest_SubscribeToGuild) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{0, 0}
+}
+
+func (x *StreamEventsRequest_SubscribeToGuild) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Event source for actions' events.
+type StreamEventsRequest_SubscribeToActions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamEventsRequest_SubscribeToActions) Reset() {
+ *x = StreamEventsRequest_SubscribeToActions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEventsRequest_SubscribeToActions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEventsRequest_SubscribeToActions) ProtoMessage() {}
+
+func (x *StreamEventsRequest_SubscribeToActions) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_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 StreamEventsRequest_SubscribeToActions.ProtoReflect.Descriptor instead.
+func (*StreamEventsRequest_SubscribeToActions) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{0, 1}
+}
+
+// Event source for homeserver events.
+type StreamEventsRequest_SubscribeToHomeserverEvents struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *StreamEventsRequest_SubscribeToHomeserverEvents) Reset() {
+ *x = StreamEventsRequest_SubscribeToHomeserverEvents{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEventsRequest_SubscribeToHomeserverEvents) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEventsRequest_SubscribeToHomeserverEvents) ProtoMessage() {}
+
+func (x *StreamEventsRequest_SubscribeToHomeserverEvents) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_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 StreamEventsRequest_SubscribeToHomeserverEvents.ProtoReflect.Descriptor instead.
+func (*StreamEventsRequest_SubscribeToHomeserverEvents) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{0, 2}
+}
+
+// Event sent when a new message is sent.
+type StreamEvent_MessageSent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID that is sent by your client it can use to confirm that the message is sent.
+ EchoId *uint64 `protobuf:"varint,1,opt,name=echo_id,json=echoId,proto3,oneof" json:"echo_id,omitempty"`
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,2,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId uint64 `protobuf:"varint,3,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message that was updated.
+ MessageId uint64 `protobuf:"varint,4,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // The actual message.
+ Message *Message `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
+}
+
+func (x *StreamEvent_MessageSent) Reset() {
+ *x = StreamEvent_MessageSent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_MessageSent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_MessageSent) ProtoMessage() {}
+
+func (x *StreamEvent_MessageSent) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_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 StreamEvent_MessageSent.ProtoReflect.Descriptor instead.
+func (*StreamEvent_MessageSent) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 0}
+}
+
+func (x *StreamEvent_MessageSent) GetEchoId() uint64 {
+ if x != nil && x.EchoId != nil {
+ return *x.EchoId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageSent) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageSent) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageSent) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageSent) GetMessage() *Message {
+ if x != nil {
+ return x.Message
+ }
+ return nil
+}
+
+// Event sent when a message's text content is updated.
+type StreamEvent_MessageUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message that was updated.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // When this message was edited, in milliseconds since unix epoch
+ EditedAt uint64 `protobuf:"varint,4,opt,name=edited_at,json=editedAt,proto3" json:"edited_at,omitempty"`
+ // New message content.
+ NewContent *FormattedText `protobuf:"bytes,5,opt,name=new_content,json=newContent,proto3" json:"new_content,omitempty"`
+}
+
+func (x *StreamEvent_MessageUpdated) Reset() {
+ *x = StreamEvent_MessageUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_MessageUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_MessageUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_MessageUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[7]
+ 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 StreamEvent_MessageUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_MessageUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 1}
+}
+
+func (x *StreamEvent_MessageUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageUpdated) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageUpdated) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageUpdated) GetEditedAt() uint64 {
+ if x != nil {
+ return x.EditedAt
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageUpdated) GetNewContent() *FormattedText {
+ if x != nil {
+ return x.NewContent
+ }
+ return nil
+}
+
+// Event sent when a message is deleted.
+type StreamEvent_MessageDeleted struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message that was deleted.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *StreamEvent_MessageDeleted) Reset() {
+ *x = StreamEvent_MessageDeleted{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_MessageDeleted) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_MessageDeleted) ProtoMessage() {}
+
+func (x *StreamEvent_MessageDeleted) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[8]
+ 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 StreamEvent_MessageDeleted.ProtoReflect.Descriptor instead.
+func (*StreamEvent_MessageDeleted) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 2}
+}
+
+func (x *StreamEvent_MessageDeleted) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageDeleted) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageDeleted) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Event sent when a new channel is created.
+type StreamEvent_ChannelCreated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Name of this channel.
+ Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
+ // The position in the channel list.
+ Position *v12.ItemPosition `protobuf:"bytes,4,opt,name=position,proto3" json:"position,omitempty"`
+ // The kind of this channel.
+ Kind ChannelKind `protobuf:"varint,5,opt,name=kind,proto3,enum=protocol.chat.v1.ChannelKind" json:"kind,omitempty"`
+ // Metadata for this channel.
+ Metadata *v12.Metadata `protobuf:"bytes,6,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"`
+}
+
+func (x *StreamEvent_ChannelCreated) Reset() {
+ *x = StreamEvent_ChannelCreated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_ChannelCreated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_ChannelCreated) ProtoMessage() {}
+
+func (x *StreamEvent_ChannelCreated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[9]
+ 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 StreamEvent_ChannelCreated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_ChannelCreated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 3}
+}
+
+func (x *StreamEvent_ChannelCreated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelCreated) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelCreated) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *StreamEvent_ChannelCreated) GetPosition() *v12.ItemPosition {
+ if x != nil {
+ return x.Position
+ }
+ return nil
+}
+
+func (x *StreamEvent_ChannelCreated) GetKind() ChannelKind {
+ if x != nil {
+ return x.Kind
+ }
+ return ChannelKind_CHANNEL_KIND_TEXT_UNSPECIFIED
+}
+
+func (x *StreamEvent_ChannelCreated) GetMetadata() *v12.Metadata {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// Event sent when a channel's information is changed.
+type StreamEvent_ChannelUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel that was changed.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // The new name of the channel.
+ NewName *string `protobuf:"bytes,3,opt,name=new_name,json=newName,proto3,oneof" json:"new_name,omitempty"`
+ // The new metadata of the channel.
+ NewMetadata *v12.Metadata `protobuf:"bytes,4,opt,name=new_metadata,json=newMetadata,proto3,oneof" json:"new_metadata,omitempty"`
+}
+
+func (x *StreamEvent_ChannelUpdated) Reset() {
+ *x = StreamEvent_ChannelUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_ChannelUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_ChannelUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_ChannelUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[10]
+ 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 StreamEvent_ChannelUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_ChannelUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 4}
+}
+
+func (x *StreamEvent_ChannelUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelUpdated) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelUpdated) GetNewName() string {
+ if x != nil && x.NewName != nil {
+ return *x.NewName
+ }
+ return ""
+}
+
+func (x *StreamEvent_ChannelUpdated) GetNewMetadata() *v12.Metadata {
+ if x != nil {
+ return x.NewMetadata
+ }
+ return nil
+}
+
+// Event sent when a channel's position in the channel list is changed.
+type StreamEvent_ChannelPositionUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel that was changed.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // The new position of the channel.
+ NewPosition *v12.ItemPosition `protobuf:"bytes,3,opt,name=new_position,json=newPosition,proto3,oneof" json:"new_position,omitempty"`
+}
+
+func (x *StreamEvent_ChannelPositionUpdated) Reset() {
+ *x = StreamEvent_ChannelPositionUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_ChannelPositionUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_ChannelPositionUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_ChannelPositionUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[11]
+ 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 StreamEvent_ChannelPositionUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_ChannelPositionUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 5}
+}
+
+func (x *StreamEvent_ChannelPositionUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelPositionUpdated) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelPositionUpdated) GetNewPosition() *v12.ItemPosition {
+ if x != nil {
+ return x.NewPosition
+ }
+ return nil
+}
+
+// Event sent when all channels have been reordered
+type StreamEvent_ChannelsReordered struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // guild_id: the guild whose channels are being reordered
+ GuildId uint64 `protobuf:"varint,2,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // channel_ids: the new order of channel IDs
+ ChannelIds []uint64 `protobuf:"varint,1,rep,packed,name=channel_ids,json=channelIds,proto3" json:"channel_ids,omitempty"`
+}
+
+func (x *StreamEvent_ChannelsReordered) Reset() {
+ *x = StreamEvent_ChannelsReordered{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_ChannelsReordered) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_ChannelsReordered) ProtoMessage() {}
+
+func (x *StreamEvent_ChannelsReordered) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[12]
+ 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 StreamEvent_ChannelsReordered.ProtoReflect.Descriptor instead.
+func (*StreamEvent_ChannelsReordered) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 6}
+}
+
+func (x *StreamEvent_ChannelsReordered) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelsReordered) GetChannelIds() []uint64 {
+ if x != nil {
+ return x.ChannelIds
+ }
+ return nil
+}
+
+// Event sent when a channel is deleted.
+type StreamEvent_ChannelDeleted struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel that was deleted.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *StreamEvent_ChannelDeleted) Reset() {
+ *x = StreamEvent_ChannelDeleted{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_ChannelDeleted) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_ChannelDeleted) ProtoMessage() {}
+
+func (x *StreamEvent_ChannelDeleted) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[13]
+ 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 StreamEvent_ChannelDeleted.ProtoReflect.Descriptor instead.
+func (*StreamEvent_ChannelDeleted) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 7}
+}
+
+func (x *StreamEvent_ChannelDeleted) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ChannelDeleted) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+// Event sent when a guild's information is changed.
+type StreamEvent_GuildUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that was changed.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The new name of the guild.
+ NewName *string `protobuf:"bytes,2,opt,name=new_name,json=newName,proto3,oneof" json:"new_name,omitempty"`
+ // The new picture of the guild.
+ NewPicture *string `protobuf:"bytes,3,opt,name=new_picture,json=newPicture,proto3,oneof" json:"new_picture,omitempty"`
+ // The new metadata of the guild.
+ NewMetadata *v12.Metadata `protobuf:"bytes,4,opt,name=new_metadata,json=newMetadata,proto3,oneof" json:"new_metadata,omitempty"`
+}
+
+func (x *StreamEvent_GuildUpdated) Reset() {
+ *x = StreamEvent_GuildUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_GuildUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_GuildUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_GuildUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[14]
+ 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 StreamEvent_GuildUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_GuildUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 8}
+}
+
+func (x *StreamEvent_GuildUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_GuildUpdated) GetNewName() string {
+ if x != nil && x.NewName != nil {
+ return *x.NewName
+ }
+ return ""
+}
+
+func (x *StreamEvent_GuildUpdated) GetNewPicture() string {
+ if x != nil && x.NewPicture != nil {
+ return *x.NewPicture
+ }
+ return ""
+}
+
+func (x *StreamEvent_GuildUpdated) GetNewMetadata() *v12.Metadata {
+ if x != nil {
+ return x.NewMetadata
+ }
+ return nil
+}
+
+// Event sent when a guild is deleted.
+type StreamEvent_GuildDeleted struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that was deleted.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *StreamEvent_GuildDeleted) Reset() {
+ *x = StreamEvent_GuildDeleted{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_GuildDeleted) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_GuildDeleted) ProtoMessage() {}
+
+func (x *StreamEvent_GuildDeleted) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[15]
+ 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 StreamEvent_GuildDeleted.ProtoReflect.Descriptor instead.
+func (*StreamEvent_GuildDeleted) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 9}
+}
+
+func (x *StreamEvent_GuildDeleted) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Event sent a user joins to a guild.
+type StreamEvent_MemberJoined struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Member ID of the member that joined the guild.
+ MemberId uint64 `protobuf:"varint,1,opt,name=member_id,json=memberId,proto3" json:"member_id,omitempty"`
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,2,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+}
+
+func (x *StreamEvent_MemberJoined) Reset() {
+ *x = StreamEvent_MemberJoined{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_MemberJoined) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_MemberJoined) ProtoMessage() {}
+
+func (x *StreamEvent_MemberJoined) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[16]
+ 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 StreamEvent_MemberJoined.ProtoReflect.Descriptor instead.
+func (*StreamEvent_MemberJoined) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 10}
+}
+
+func (x *StreamEvent_MemberJoined) GetMemberId() uint64 {
+ if x != nil {
+ return x.MemberId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MemberJoined) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+// Event sent when a member of a guild leaves said guild for whatever reason.
+type StreamEvent_MemberLeft struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the member that left the guild.
+ MemberId uint64 `protobuf:"varint,1,opt,name=member_id,json=memberId,proto3" json:"member_id,omitempty"`
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,2,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Why this member left the guild.
+ LeaveReason LeaveReason `protobuf:"varint,3,opt,name=leave_reason,json=leaveReason,proto3,enum=protocol.chat.v1.LeaveReason" json:"leave_reason,omitempty"`
+}
+
+func (x *StreamEvent_MemberLeft) Reset() {
+ *x = StreamEvent_MemberLeft{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_MemberLeft) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_MemberLeft) ProtoMessage() {}
+
+func (x *StreamEvent_MemberLeft) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[17]
+ 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 StreamEvent_MemberLeft.ProtoReflect.Descriptor instead.
+func (*StreamEvent_MemberLeft) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 11}
+}
+
+func (x *StreamEvent_MemberLeft) GetMemberId() uint64 {
+ if x != nil {
+ return x.MemberId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MemberLeft) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MemberLeft) GetLeaveReason() LeaveReason {
+ if x != nil {
+ return x.LeaveReason
+ }
+ return LeaveReason_LEAVE_REASON_WILLINGLY_UNSPECIFIED
+}
+
+// Event sent when you join a new guild.
+type StreamEvent_GuildAddedToList struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The homeserver this guild is on.
+ Homeserver string `protobuf:"bytes,2,opt,name=homeserver,proto3" json:"homeserver,omitempty"`
+}
+
+func (x *StreamEvent_GuildAddedToList) Reset() {
+ *x = StreamEvent_GuildAddedToList{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_GuildAddedToList) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_GuildAddedToList) ProtoMessage() {}
+
+func (x *StreamEvent_GuildAddedToList) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[18]
+ 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 StreamEvent_GuildAddedToList.ProtoReflect.Descriptor instead.
+func (*StreamEvent_GuildAddedToList) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 12}
+}
+
+func (x *StreamEvent_GuildAddedToList) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_GuildAddedToList) GetHomeserver() string {
+ if x != nil {
+ return x.Homeserver
+ }
+ return ""
+}
+
+// Event sent when you leave a guild.
+type StreamEvent_GuildRemovedFromList struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // The homeserver this guild is on.
+ Homeserver string `protobuf:"bytes,2,opt,name=homeserver,proto3" json:"homeserver,omitempty"`
+}
+
+func (x *StreamEvent_GuildRemovedFromList) Reset() {
+ *x = StreamEvent_GuildRemovedFromList{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_GuildRemovedFromList) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_GuildRemovedFromList) ProtoMessage() {}
+
+func (x *StreamEvent_GuildRemovedFromList) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[19]
+ 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 StreamEvent_GuildRemovedFromList.ProtoReflect.Descriptor instead.
+func (*StreamEvent_GuildRemovedFromList) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 13}
+}
+
+func (x *StreamEvent_GuildRemovedFromList) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_GuildRemovedFromList) GetHomeserver() string {
+ if x != nil {
+ return x.Homeserver
+ }
+ return ""
+}
+
+// Event sent when an action is performed.
+type StreamEvent_ActionPerformed struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID where this event happened.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // User ID of the user that triggered the action
+ UserId uint64 `protobuf:"varint,4,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ // The action data payload
+ Payload *ActionPayload `protobuf:"bytes,5,opt,name=payload,proto3" json:"payload,omitempty"`
+}
+
+func (x *StreamEvent_ActionPerformed) Reset() {
+ *x = StreamEvent_ActionPerformed{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_ActionPerformed) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_ActionPerformed) ProtoMessage() {}
+
+func (x *StreamEvent_ActionPerformed) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[20]
+ 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 StreamEvent_ActionPerformed.ProtoReflect.Descriptor instead.
+func (*StreamEvent_ActionPerformed) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 14}
+}
+
+func (x *StreamEvent_ActionPerformed) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ActionPerformed) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ActionPerformed) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ActionPerformed) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ActionPerformed) GetPayload() *ActionPayload {
+ if x != nil {
+ return x.Payload
+ }
+ return nil
+}
+
+// Event sent when a role's position in the role list is changed.
+type StreamEvent_RoleMoved struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Role ID of the role that was moved.
+ RoleId uint64 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // New position of the role.
+ NewPosition *v12.ItemPosition `protobuf:"bytes,3,opt,name=new_position,json=newPosition,proto3" json:"new_position,omitempty"`
+}
+
+func (x *StreamEvent_RoleMoved) Reset() {
+ *x = StreamEvent_RoleMoved{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_RoleMoved) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_RoleMoved) ProtoMessage() {}
+
+func (x *StreamEvent_RoleMoved) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[21]
+ 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 StreamEvent_RoleMoved.ProtoReflect.Descriptor instead.
+func (*StreamEvent_RoleMoved) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 15}
+}
+
+func (x *StreamEvent_RoleMoved) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleMoved) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleMoved) GetNewPosition() *v12.ItemPosition {
+ if x != nil {
+ return x.NewPosition
+ }
+ return nil
+}
+
+// Event sent when a role is deleted.
+type StreamEvent_RoleDeleted struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Role ID of the role that was deleted.
+ RoleId uint64 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+}
+
+func (x *StreamEvent_RoleDeleted) Reset() {
+ *x = StreamEvent_RoleDeleted{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_RoleDeleted) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_RoleDeleted) ProtoMessage() {}
+
+func (x *StreamEvent_RoleDeleted) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[22]
+ 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 StreamEvent_RoleDeleted.ProtoReflect.Descriptor instead.
+func (*StreamEvent_RoleDeleted) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 16}
+}
+
+func (x *StreamEvent_RoleDeleted) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleDeleted) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+// Event sent when a role is created.
+type StreamEvent_RoleCreated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Role ID of the role that was created.
+ RoleId uint64 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // The name of the role.
+ Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
+ // The color of the role.
+ Color int32 `protobuf:"varint,4,opt,name=color,proto3" json:"color,omitempty"`
+ // The hoist status of the role.
+ Hoist bool `protobuf:"varint,5,opt,name=hoist,proto3" json:"hoist,omitempty"`
+ // The pingable status of the role.
+ Pingable bool `protobuf:"varint,6,opt,name=pingable,proto3" json:"pingable,omitempty"`
+}
+
+func (x *StreamEvent_RoleCreated) Reset() {
+ *x = StreamEvent_RoleCreated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_RoleCreated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_RoleCreated) ProtoMessage() {}
+
+func (x *StreamEvent_RoleCreated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[23]
+ 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 StreamEvent_RoleCreated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_RoleCreated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 17}
+}
+
+func (x *StreamEvent_RoleCreated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleCreated) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleCreated) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *StreamEvent_RoleCreated) GetColor() int32 {
+ if x != nil {
+ return x.Color
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleCreated) GetHoist() bool {
+ if x != nil {
+ return x.Hoist
+ }
+ return false
+}
+
+func (x *StreamEvent_RoleCreated) GetPingable() bool {
+ if x != nil {
+ return x.Pingable
+ }
+ return false
+}
+
+// Event sent when a role's information is changed.
+type StreamEvent_RoleUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Role ID of the role that was changed.
+ RoleId uint64 `protobuf:"varint,2,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // The new name of the role.
+ NewName *string `protobuf:"bytes,3,opt,name=new_name,json=newName,proto3,oneof" json:"new_name,omitempty"`
+ // The new color of the role.
+ NewColor *int32 `protobuf:"varint,4,opt,name=new_color,json=newColor,proto3,oneof" json:"new_color,omitempty"`
+ // The new hoist status of the role.
+ NewHoist *bool `protobuf:"varint,5,opt,name=new_hoist,json=newHoist,proto3,oneof" json:"new_hoist,omitempty"`
+ // The new pingable status of the role.
+ NewPingable *bool `protobuf:"varint,6,opt,name=new_pingable,json=newPingable,proto3,oneof" json:"new_pingable,omitempty"`
+}
+
+func (x *StreamEvent_RoleUpdated) Reset() {
+ *x = StreamEvent_RoleUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_RoleUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_RoleUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_RoleUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[24]
+ 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 StreamEvent_RoleUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_RoleUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 18}
+}
+
+func (x *StreamEvent_RoleUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleUpdated) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleUpdated) GetNewName() string {
+ if x != nil && x.NewName != nil {
+ return *x.NewName
+ }
+ return ""
+}
+
+func (x *StreamEvent_RoleUpdated) GetNewColor() int32 {
+ if x != nil && x.NewColor != nil {
+ return *x.NewColor
+ }
+ return 0
+}
+
+func (x *StreamEvent_RoleUpdated) GetNewHoist() bool {
+ if x != nil && x.NewHoist != nil {
+ return *x.NewHoist
+ }
+ return false
+}
+
+func (x *StreamEvent_RoleUpdated) GetNewPingable() bool {
+ if x != nil && x.NewPingable != nil {
+ return *x.NewPingable
+ }
+ return false
+}
+
+// Event sent when a role's permissions are changed.
+//
+// This event will only be sent to users with the "guild.manage" permission.
+type StreamEvent_RolePermissionsUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId *uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
+ // Role ID of the role that had it's permissions changed.
+ RoleId uint64 `protobuf:"varint,3,opt,name=role_id,json=roleId,proto3" json:"role_id,omitempty"`
+ // The new permissions.
+ NewPerms []*Permission `protobuf:"bytes,4,rep,name=new_perms,json=newPerms,proto3" json:"new_perms,omitempty"`
+}
+
+func (x *StreamEvent_RolePermissionsUpdated) Reset() {
+ *x = StreamEvent_RolePermissionsUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_RolePermissionsUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_RolePermissionsUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_RolePermissionsUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[25]
+ 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 StreamEvent_RolePermissionsUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_RolePermissionsUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 19}
+}
+
+func (x *StreamEvent_RolePermissionsUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RolePermissionsUpdated) GetChannelId() uint64 {
+ if x != nil && x.ChannelId != nil {
+ return *x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RolePermissionsUpdated) GetRoleId() uint64 {
+ if x != nil {
+ return x.RoleId
+ }
+ return 0
+}
+
+func (x *StreamEvent_RolePermissionsUpdated) GetNewPerms() []*Permission {
+ if x != nil {
+ return x.NewPerms
+ }
+ return nil
+}
+
+// Event sent when a user's roles are changed.
+type StreamEvent_UserRolesUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // User ID of the user that had it's roles changed.
+ UserId uint64 `protobuf:"varint,2,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ // The new role IDs.
+ NewRoleIds []uint64 `protobuf:"varint,3,rep,packed,name=new_role_ids,json=newRoleIds,proto3" json:"new_role_ids,omitempty"`
+}
+
+func (x *StreamEvent_UserRolesUpdated) Reset() {
+ *x = StreamEvent_UserRolesUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_UserRolesUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_UserRolesUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_UserRolesUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[26]
+ 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 StreamEvent_UserRolesUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_UserRolesUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 20}
+}
+
+func (x *StreamEvent_UserRolesUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_UserRolesUpdated) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+func (x *StreamEvent_UserRolesUpdated) GetNewRoleIds() []uint64 {
+ if x != nil {
+ return x.NewRoleIds
+ }
+ return nil
+}
+
+// Event sent when a user sends a typing notification in a guild channel.
+type StreamEvent_Typing struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the user that sent the typing notification.
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,2,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId uint64 `protobuf:"varint,3,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+}
+
+func (x *StreamEvent_Typing) Reset() {
+ *x = StreamEvent_Typing{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_Typing) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_Typing) ProtoMessage() {}
+
+func (x *StreamEvent_Typing) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[27]
+ 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 StreamEvent_Typing.ProtoReflect.Descriptor instead.
+func (*StreamEvent_Typing) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 21}
+}
+
+func (x *StreamEvent_Typing) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+func (x *StreamEvent_Typing) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_Typing) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+// Event sent when a permission is changed that matters to you.
+//
+// Servers should calculate which users to send this event to when a permission is set.
+// It should only be sent if a user is subscribed to the guild the permission pertains to.
+type StreamEvent_PermissionUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event happened.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event happened.
+ ChannelId *uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"`
+ // The permission node that was changed.
+ Query string `protobuf:"bytes,3,opt,name=query,proto3" json:"query,omitempty"`
+ // Whether you have the permission or not.
+ Ok bool `protobuf:"varint,4,opt,name=ok,proto3" json:"ok,omitempty"`
+}
+
+func (x *StreamEvent_PermissionUpdated) Reset() {
+ *x = StreamEvent_PermissionUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_PermissionUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_PermissionUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_PermissionUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[28]
+ 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 StreamEvent_PermissionUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_PermissionUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 22}
+}
+
+func (x *StreamEvent_PermissionUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_PermissionUpdated) GetChannelId() uint64 {
+ if x != nil && x.ChannelId != nil {
+ return *x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_PermissionUpdated) GetQuery() string {
+ if x != nil {
+ return x.Query
+ }
+ return ""
+}
+
+func (x *StreamEvent_PermissionUpdated) GetOk() bool {
+ if x != nil {
+ return x.Ok
+ }
+ return false
+}
+
+// Sent when a message is pinned in a guild channel.
+//
+// Should only be sent to users who have the "message.view" permission for
+// the guild channel where the message was pinned.
+type StreamEvent_MessagePinned struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event occured.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event occured.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message that was pinned.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *StreamEvent_MessagePinned) Reset() {
+ *x = StreamEvent_MessagePinned{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[29]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_MessagePinned) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_MessagePinned) ProtoMessage() {}
+
+func (x *StreamEvent_MessagePinned) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[29]
+ 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 StreamEvent_MessagePinned.ProtoReflect.Descriptor instead.
+func (*StreamEvent_MessagePinned) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 23}
+}
+
+func (x *StreamEvent_MessagePinned) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessagePinned) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessagePinned) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Sent when a message is unpinned in a guild channel.
+//
+// Should only be sent to users who have the "message.view" permission for
+// the guild channel where the message was unpinned.
+type StreamEvent_MessageUnpinned struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event occured.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event occured.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message that was unpinned.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+}
+
+func (x *StreamEvent_MessageUnpinned) Reset() {
+ *x = StreamEvent_MessageUnpinned{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[30]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_MessageUnpinned) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_MessageUnpinned) ProtoMessage() {}
+
+func (x *StreamEvent_MessageUnpinned) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[30]
+ 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 StreamEvent_MessageUnpinned.ProtoReflect.Descriptor instead.
+func (*StreamEvent_MessageUnpinned) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 24}
+}
+
+func (x *StreamEvent_MessageUnpinned) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageUnpinned) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_MessageUnpinned) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+// Sent when a message's reaction is changed.
+type StreamEvent_ReactionUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild where this event occured.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // Channel ID of the channel where this event occured.
+ ChannelId uint64 `protobuf:"varint,2,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ // Message ID of the message that had a reaction updated.
+ MessageId uint64 `protobuf:"varint,3,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
+ // The reaction.
+ Reaction *Reaction `protobuf:"bytes,4,opt,name=reaction,proto3" json:"reaction,omitempty"`
+}
+
+func (x *StreamEvent_ReactionUpdated) Reset() {
+ *x = StreamEvent_ReactionUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[31]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_ReactionUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_ReactionUpdated) ProtoMessage() {}
+
+func (x *StreamEvent_ReactionUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[31]
+ 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 StreamEvent_ReactionUpdated.ProtoReflect.Descriptor instead.
+func (*StreamEvent_ReactionUpdated) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 25}
+}
+
+func (x *StreamEvent_ReactionUpdated) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ReactionUpdated) GetChannelId() uint64 {
+ if x != nil {
+ return x.ChannelId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ReactionUpdated) GetMessageId() uint64 {
+ if x != nil {
+ return x.MessageId
+ }
+ return 0
+}
+
+func (x *StreamEvent_ReactionUpdated) GetReaction() *Reaction {
+ if x != nil {
+ return x.Reaction
+ }
+ return nil
+}
+
+// Sent when there's a new owner.
+type StreamEvent_OwnerAdded struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the new owner.
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *StreamEvent_OwnerAdded) Reset() {
+ *x = StreamEvent_OwnerAdded{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[32]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_OwnerAdded) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_OwnerAdded) ProtoMessage() {}
+
+func (x *StreamEvent_OwnerAdded) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[32]
+ 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 StreamEvent_OwnerAdded.ProtoReflect.Descriptor instead.
+func (*StreamEvent_OwnerAdded) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 26}
+}
+
+func (x *StreamEvent_OwnerAdded) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Sent when an owner gives up their ownership.
+type StreamEvent_OwnerRemoved struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the user who is no longer owner.
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *StreamEvent_OwnerRemoved) Reset() {
+ *x = StreamEvent_OwnerRemoved{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[33]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_OwnerRemoved) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_OwnerRemoved) ProtoMessage() {}
+
+func (x *StreamEvent_OwnerRemoved) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[33]
+ 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 StreamEvent_OwnerRemoved.ProtoReflect.Descriptor instead.
+func (*StreamEvent_OwnerRemoved) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 27}
+}
+
+func (x *StreamEvent_OwnerRemoved) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Sent when a guild invite is received.
+type StreamEvent_InviteReceived struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the invite received.
+ InviteId string `protobuf:"bytes,1,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+ // Server ID of the server the inviter is on.
+ ServerId *string `protobuf:"bytes,2,opt,name=server_id,json=serverId,proto3,oneof" json:"server_id,omitempty"`
+ // User ID of the inviter.
+ InviterId uint64 `protobuf:"varint,3,opt,name=inviter_id,json=inviterId,proto3" json:"inviter_id,omitempty"`
+}
+
+func (x *StreamEvent_InviteReceived) Reset() {
+ *x = StreamEvent_InviteReceived{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_InviteReceived) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_InviteReceived) ProtoMessage() {}
+
+func (x *StreamEvent_InviteReceived) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[34]
+ 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 StreamEvent_InviteReceived.ProtoReflect.Descriptor instead.
+func (*StreamEvent_InviteReceived) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 28}
+}
+
+func (x *StreamEvent_InviteReceived) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+func (x *StreamEvent_InviteReceived) GetServerId() string {
+ if x != nil && x.ServerId != nil {
+ return *x.ServerId
+ }
+ return ""
+}
+
+func (x *StreamEvent_InviteReceived) GetInviterId() uint64 {
+ if x != nil {
+ return x.InviterId
+ }
+ return 0
+}
+
+// Sent when a guild invite is rejected by the invitee.
+type StreamEvent_InviteRejected struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Guild ID of the guild that this occured for.
+ GuildId uint64 `protobuf:"varint,1,opt,name=guild_id,json=guildId,proto3" json:"guild_id,omitempty"`
+ // ID of the invite rejected.
+ InviteId string `protobuf:"bytes,2,opt,name=invite_id,json=inviteId,proto3" json:"invite_id,omitempty"`
+ // User ID of the invitee.
+ UserId uint64 `protobuf:"varint,3,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *StreamEvent_InviteRejected) Reset() {
+ *x = StreamEvent_InviteRejected{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_chat_v1_stream_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent_InviteRejected) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent_InviteRejected) ProtoMessage() {}
+
+func (x *StreamEvent_InviteRejected) ProtoReflect() protoreflect.Message {
+ mi := &file_chat_v1_stream_proto_msgTypes[35]
+ 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 StreamEvent_InviteRejected.ProtoReflect.Descriptor instead.
+func (*StreamEvent_InviteRejected) Descriptor() ([]byte, []int) {
+ return file_chat_v1_stream_proto_rawDescGZIP(), []int{2, 29}
+}
+
+func (x *StreamEvent_InviteRejected) GetGuildId() uint64 {
+ if x != nil {
+ return x.GuildId
+ }
+ return 0
+}
+
+func (x *StreamEvent_InviteRejected) GetInviteId() string {
+ if x != nil {
+ return x.InviteId
+ }
+ return ""
+}
+
+func (x *StreamEvent_InviteRejected) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+var File_chat_v1_stream_proto protoreflect.FileDescriptor
+
+var file_chat_v1_stream_proto_rawDesc = []byte{
+ 0x0a, 0x14, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e,
+ 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x63,
+ 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x63, 0x68, 0x61,
+ 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76, 0x31,
+ 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x70,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xe5, 0x03, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x65, 0x61,
+ 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x66,
+ 0x0a, 0x12, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74,
+ 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x48, 0x00, 0x52, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54,
+ 0x6f, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x6c, 0x0a, 0x14, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72,
+ 0x69, 0x62, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76,
+ 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x73,
+ 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00,
+ 0x52, 0x12, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x41, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x88, 0x01, 0x0a, 0x1e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69,
+ 0x62, 0x65, 0x5f, 0x74, 0x6f, 0x5f, 0x68, 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
+ 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f,
+ 0x48, 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73,
+ 0x48, 0x00, 0x52, 0x1b, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x48,
+ 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x1a,
+ 0x2d, 0x0a, 0x10, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x47, 0x75,
+ 0x69, 0x6c, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x1a, 0x14,
+ 0x0a, 0x12, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x54, 0x6f, 0x41, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x1d, 0x0a, 0x1b, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62,
+ 0x65, 0x54, 0x6f, 0x48, 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x45, 0x76, 0x65,
+ 0x6e, 0x74, 0x73, 0x42, 0x09, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xca,
+ 0x01, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x04, 0x63, 0x68, 0x61, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x04, 0x63, 0x68, 0x61, 0x74, 0x12, 0x36, 0x0a, 0x05,
+ 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x05, 0x65,
+ 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x3c, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x22, 0xb2, 0x34, 0x0a, 0x0b,
+ 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x5f, 0x0a, 0x13, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x6c, 0x69,
+ 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x64, 0x64,
+ 0x65, 0x64, 0x54, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x10, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x41, 0x64, 0x64, 0x65, 0x64, 0x54, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x6b, 0x0a, 0x17,
+ 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x5f, 0x66, 0x72,
+ 0x6f, 0x6d, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x4c, 0x69, 0x73,
+ 0x74, 0x48, 0x00, 0x52, 0x14, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65,
+ 0x64, 0x46, 0x72, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x10, 0x61, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65,
+ 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d,
+ 0x65, 0x64, 0x48, 0x00, 0x52, 0x0f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x66,
+ 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x0c, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53,
+ 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x65, 0x6e, 0x74, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x55, 0x0a, 0x0e, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x5f,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x65,
+ 0x64, 0x69, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x57, 0x0a, 0x0f,
+ 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x57, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x55,
+ 0x0a, 0x0e, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x57, 0x0a, 0x0f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x68,
+ 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e,
+ 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x4f,
+ 0x0a, 0x0c, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x18, 0x0a,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76,
+ 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
+ 0x48, 0x00, 0x52, 0x0b, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x12,
+ 0x51, 0x0a, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x65, 0x6c, 0x65, 0x74,
+ 0x65, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x12, 0x51, 0x0a, 0x0d, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x6d,
+ 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4a,
+ 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x4d,
+ 0x65, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x0b, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x6d, 0x65,
+ 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74,
+ 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72,
+ 0x4c, 0x65, 0x66, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x6c, 0x65, 0x66, 0x74, 0x4d, 0x65, 0x6d, 0x62,
+ 0x65, 0x72, 0x12, 0x3e, 0x0a, 0x06, 0x74, 0x79, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x0e, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e,
+ 0x74, 0x2e, 0x54, 0x79, 0x70, 0x69, 0x6e, 0x67, 0x48, 0x00, 0x52, 0x06, 0x74, 0x79, 0x70, 0x69,
+ 0x6e, 0x67, 0x12, 0x4e, 0x0a, 0x0c, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x0c, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74,
+ 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0b, 0x72, 0x6f, 0x6c, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74,
+ 0x65, 0x64, 0x12, 0x48, 0x0a, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6d, 0x6f, 0x76, 0x65, 0x64,
+ 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x64, 0x48,
+ 0x00, 0x52, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x0c,
+ 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e,
+ 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52,
+ 0x0b, 0x72, 0x6f, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x64, 0x0a, 0x12,
+ 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x73, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x50, 0x65, 0x72, 0x6d,
+ 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00,
+ 0x52, 0x10, 0x72, 0x6f, 0x6c, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x64, 0x12, 0x5e, 0x0a, 0x12, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73,
+ 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x73,
+ 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00,
+ 0x52, 0x10, 0x75, 0x73, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x64, 0x12, 0x60, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65,
+ 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48,
+ 0x00, 0x52, 0x11, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x64, 0x12, 0x60, 0x0a, 0x12, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73,
+ 0x5f, 0x72, 0x65, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x65,
+ 0x64, 0x48, 0x00, 0x52, 0x11, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x6f,
+ 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x12, 0x6e, 0x0a, 0x17, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61,
+ 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f,
+ 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52,
+ 0x15, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x6f,
+ 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x54, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0d, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x5a, 0x0a, 0x10,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x6e, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64,
+ 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x55, 0x6e, 0x70,
+ 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x55, 0x6e, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x5a, 0x0a, 0x10, 0x72, 0x65, 0x61, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x1a, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68,
+ 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e,
+ 0x74, 0x2e, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x64, 0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x64, 0x12, 0x4b, 0x0a, 0x0b, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x61, 0x64,
+ 0x64, 0x65, 0x64, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x41, 0x64,
+ 0x64, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0a, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x41, 0x64, 0x64, 0x65,
+ 0x64, 0x12, 0x51, 0x0a, 0x0d, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x76,
+ 0x65, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x6d,
+ 0x6f, 0x76, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0c, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x6d,
+ 0x6f, 0x76, 0x65, 0x64, 0x12, 0x57, 0x0a, 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x72,
+ 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31,
+ 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x49, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x69,
+ 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x57, 0x0a,
+ 0x0f, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64,
+ 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65, 0x6a, 0x65,
+ 0x63, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65,
+ 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x1a, 0xc5, 0x01, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x07, 0x65, 0x63, 0x68, 0x6f, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x06, 0x65, 0x63, 0x68, 0x6f, 0x49,
+ 0x64, 0x88, 0x01, 0x01, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x33, 0x0a,
+ 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76,
+ 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x65, 0x63, 0x68, 0x6f, 0x5f, 0x69, 0x64, 0x1a, 0xc8,
+ 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x64,
+ 0x69, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x65,
+ 0x64, 0x69, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e,
+ 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x54, 0x65, 0x78, 0x74, 0x52, 0x0a, 0x6e,
+ 0x65, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x69, 0x0a, 0x0e, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67,
+ 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e,
+ 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x49, 0x64, 0x1a, 0xa7, 0x02, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e,
+ 0x76, 0x31, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x04, 0x6b, 0x69, 0x6e,
+ 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x43, 0x0a, 0x08,
+ 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e,
+ 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01,
+ 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xd4,
+ 0x01, 0x0a, 0x0e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6e,
+ 0x65, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
+ 0x07, 0x6e, 0x65, 0x77, 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x0c, 0x6e,
+ 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72,
+ 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x01, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6e, 0x65, 0x77, 0x5f,
+ 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xb3, 0x01, 0x0a, 0x16, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
+ 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x4e, 0x0a, 0x0c, 0x6e, 0x65,
+ 0x77, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x74, 0x65, 0x6d,
+ 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50,
+ 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e,
+ 0x65, 0x77, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x4f, 0x0a, 0x11, 0x43,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64,
+ 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x04,
+ 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x73, 0x1a, 0x4a, 0x0a, 0x0e,
+ 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x19,
+ 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63,
+ 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x1a, 0xe9, 0x01, 0x0a, 0x0c, 0x47, 0x75, 0x69,
+ 0x6c, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69,
+ 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x4e, 0x61, 0x6d,
+ 0x65, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a, 0x0b, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x69, 0x63, 0x74,
+ 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0a, 0x6e, 0x65, 0x77,
+ 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x88, 0x01, 0x01, 0x12, 0x4a, 0x0a, 0x0c, 0x6e, 0x65,
+ 0x77, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x22, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x48, 0x02, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x74, 0x61, 0x64,
+ 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x69, 0x63, 0x74,
+ 0x75, 0x72, 0x65, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x1a, 0x29, 0x0a, 0x0c, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x65, 0x6c,
+ 0x65, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x1a,
+ 0x46, 0x0a, 0x0c, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x4a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x12,
+ 0x1b, 0x0a, 0x09, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x04, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08,
+ 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07,
+ 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x1a, 0x86, 0x01, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x62,
+ 0x65, 0x72, 0x4c, 0x65, 0x66, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x62, 0x65,
+ 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x40,
+ 0x0a, 0x0c, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x65, 0x61, 0x76, 0x65, 0x52, 0x65, 0x61,
+ 0x73, 0x6f, 0x6e, 0x52, 0x0b, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e,
+ 0x1a, 0x4d, 0x0a, 0x10, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x41, 0x64, 0x64, 0x65, 0x64, 0x54, 0x6f,
+ 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12,
+ 0x1e, 0x0a, 0x0a, 0x68, 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x1a,
+ 0x51, 0x0a, 0x14, 0x47, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x46,
+ 0x72, 0x6f, 0x6d, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x6f, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x72, 0x1a, 0xbe, 0x01, 0x0a, 0x0f, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72,
+ 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64,
+ 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12,
+ 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c,
+ 0x6f, 0x61, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c,
+ 0x6f, 0x61, 0x64, 0x1a, 0x8a, 0x01, 0x0a, 0x09, 0x52, 0x6f, 0x6c, 0x65, 0x4d, 0x6f, 0x76, 0x65,
+ 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07,
+ 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72,
+ 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x6f, 0x73,
+ 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79,
+ 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
+ 0x1a, 0x41, 0x0a, 0x0b, 0x52, 0x6f, 0x6c, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12,
+ 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f,
+ 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c,
+ 0x65, 0x49, 0x64, 0x1a, 0x9d, 0x01, 0x0a, 0x0b, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17,
+ 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63,
+ 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x6c, 0x6f,
+ 0x72, 0x12, 0x14, 0x0a, 0x05, 0x68, 0x6f, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
+ 0x52, 0x05, 0x68, 0x6f, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x69, 0x6e, 0x67, 0x61,
+ 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x70, 0x69, 0x6e, 0x67, 0x61,
+ 0x62, 0x6c, 0x65, 0x1a, 0x87, 0x02, 0x0a, 0x0b, 0x52, 0x6f, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17,
+ 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x6e, 0x65, 0x77,
+ 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x5f, 0x63,
+ 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x08, 0x6e, 0x65,
+ 0x77, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x20, 0x0a, 0x09, 0x6e, 0x65, 0x77,
+ 0x5f, 0x68, 0x6f, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x02, 0x52, 0x08,
+ 0x6e, 0x65, 0x77, 0x48, 0x6f, 0x69, 0x73, 0x74, 0x88, 0x01, 0x01, 0x12, 0x26, 0x0a, 0x0c, 0x6e,
+ 0x65, 0x77, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x08, 0x48, 0x03, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65,
+ 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x42, 0x0c,
+ 0x0a, 0x0a, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x68, 0x6f, 0x69, 0x73, 0x74, 0x42, 0x0f, 0x0a, 0x0d,
+ 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x6c, 0x65, 0x1a, 0xba, 0x01,
+ 0x0a, 0x16, 0x52, 0x6f, 0x6c, 0x65, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6c, 0x65, 0x5f,
+ 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x72, 0x6f, 0x6c, 0x65, 0x49, 0x64,
+ 0x12, 0x39, 0x0a, 0x09, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x73, 0x18, 0x04, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63,
+ 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x52, 0x08, 0x6e, 0x65, 0x77, 0x50, 0x65, 0x72, 0x6d, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x1a, 0x68, 0x0a, 0x10, 0x55, 0x73,
+ 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19,
+ 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04,
+ 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65,
+ 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72,
+ 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x69,
+ 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x04, 0x52, 0x0a, 0x6e, 0x65, 0x77, 0x52, 0x6f, 0x6c,
+ 0x65, 0x49, 0x64, 0x73, 0x1a, 0x5b, 0x0a, 0x06, 0x54, 0x79, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x17,
+ 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49,
+ 0x64, 0x1a, 0x87, 0x01, 0x0a, 0x11, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64,
+ 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
+ 0x6c, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x0e, 0x0a, 0x02,
+ 0x6f, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x02, 0x6f, 0x6b, 0x42, 0x0d, 0x0a, 0x0b,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x1a, 0x68, 0x0a, 0x0d, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08,
+ 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07,
+ 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61,
+ 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x49, 0x64, 0x1a, 0x6a, 0x0a, 0x0f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x55, 0x6e, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c,
+ 0x64, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
+ 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49,
+ 0x64, 0x1a, 0xa2, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64,
+ 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x36,
+ 0x0a, 0x08, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74,
+ 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x72, 0x65,
+ 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x25, 0x0a, 0x0a, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x41,
+ 0x64, 0x64, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x27, 0x0a,
+ 0x0c, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x17, 0x0a,
+ 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06,
+ 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x1a, 0x7c, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65,
+ 0x52, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x69,
+ 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f,
+ 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76,
+ 0x65, 0x72, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x76, 0x69, 0x74,
+ 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x69, 0x6e, 0x76,
+ 0x69, 0x74, 0x65, 0x72, 0x49, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65,
+ 0x72, 0x5f, 0x69, 0x64, 0x1a, 0x61, 0x0a, 0x0e, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x52, 0x65,
+ 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x67, 0x75, 0x69, 0x6c, 0x64, 0x49,
+ 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x49, 0x64, 0x12, 0x17,
+ 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52,
+ 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74,
+ 0x42, 0xc1, 0x01, 0x0a, 0x14, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x63, 0x68, 0x61, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x53, 0x74, 0x72, 0x65, 0x61,
+ 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76,
+ 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69,
+ 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x63, 0x68, 0x61, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x63, 0x68,
+ 0x61, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x43, 0x58, 0xaa, 0x02, 0x10, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x10,
+ 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74, 0x5c, 0x56, 0x31,
+ 0xe2, 0x02, 0x1c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x43, 0x68, 0x61, 0x74,
+ 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea,
+ 0x02, 0x12, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x43, 0x68, 0x61, 0x74,
+ 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_chat_v1_stream_proto_rawDescOnce sync.Once
+ file_chat_v1_stream_proto_rawDescData = file_chat_v1_stream_proto_rawDesc
+)
+
+func file_chat_v1_stream_proto_rawDescGZIP() []byte {
+ file_chat_v1_stream_proto_rawDescOnce.Do(func() {
+ file_chat_v1_stream_proto_rawDescData = protoimpl.X.CompressGZIP(file_chat_v1_stream_proto_rawDescData)
+ })
+ return file_chat_v1_stream_proto_rawDescData
+}
+
+var file_chat_v1_stream_proto_msgTypes = make([]protoimpl.MessageInfo, 36)
+var file_chat_v1_stream_proto_goTypes = []interface{}{
+ (*StreamEventsRequest)(nil), // 0: protocol.chat.v1.StreamEventsRequest
+ (*StreamEventsResponse)(nil), // 1: protocol.chat.v1.StreamEventsResponse
+ (*StreamEvent)(nil), // 2: protocol.chat.v1.StreamEvent
+ (*StreamEventsRequest_SubscribeToGuild)(nil), // 3: protocol.chat.v1.StreamEventsRequest.SubscribeToGuild
+ (*StreamEventsRequest_SubscribeToActions)(nil), // 4: protocol.chat.v1.StreamEventsRequest.SubscribeToActions
+ (*StreamEventsRequest_SubscribeToHomeserverEvents)(nil), // 5: protocol.chat.v1.StreamEventsRequest.SubscribeToHomeserverEvents
+ (*StreamEvent_MessageSent)(nil), // 6: protocol.chat.v1.StreamEvent.MessageSent
+ (*StreamEvent_MessageUpdated)(nil), // 7: protocol.chat.v1.StreamEvent.MessageUpdated
+ (*StreamEvent_MessageDeleted)(nil), // 8: protocol.chat.v1.StreamEvent.MessageDeleted
+ (*StreamEvent_ChannelCreated)(nil), // 9: protocol.chat.v1.StreamEvent.ChannelCreated
+ (*StreamEvent_ChannelUpdated)(nil), // 10: protocol.chat.v1.StreamEvent.ChannelUpdated
+ (*StreamEvent_ChannelPositionUpdated)(nil), // 11: protocol.chat.v1.StreamEvent.ChannelPositionUpdated
+ (*StreamEvent_ChannelsReordered)(nil), // 12: protocol.chat.v1.StreamEvent.ChannelsReordered
+ (*StreamEvent_ChannelDeleted)(nil), // 13: protocol.chat.v1.StreamEvent.ChannelDeleted
+ (*StreamEvent_GuildUpdated)(nil), // 14: protocol.chat.v1.StreamEvent.GuildUpdated
+ (*StreamEvent_GuildDeleted)(nil), // 15: protocol.chat.v1.StreamEvent.GuildDeleted
+ (*StreamEvent_MemberJoined)(nil), // 16: protocol.chat.v1.StreamEvent.MemberJoined
+ (*StreamEvent_MemberLeft)(nil), // 17: protocol.chat.v1.StreamEvent.MemberLeft
+ (*StreamEvent_GuildAddedToList)(nil), // 18: protocol.chat.v1.StreamEvent.GuildAddedToList
+ (*StreamEvent_GuildRemovedFromList)(nil), // 19: protocol.chat.v1.StreamEvent.GuildRemovedFromList
+ (*StreamEvent_ActionPerformed)(nil), // 20: protocol.chat.v1.StreamEvent.ActionPerformed
+ (*StreamEvent_RoleMoved)(nil), // 21: protocol.chat.v1.StreamEvent.RoleMoved
+ (*StreamEvent_RoleDeleted)(nil), // 22: protocol.chat.v1.StreamEvent.RoleDeleted
+ (*StreamEvent_RoleCreated)(nil), // 23: protocol.chat.v1.StreamEvent.RoleCreated
+ (*StreamEvent_RoleUpdated)(nil), // 24: protocol.chat.v1.StreamEvent.RoleUpdated
+ (*StreamEvent_RolePermissionsUpdated)(nil), // 25: protocol.chat.v1.StreamEvent.RolePermissionsUpdated
+ (*StreamEvent_UserRolesUpdated)(nil), // 26: protocol.chat.v1.StreamEvent.UserRolesUpdated
+ (*StreamEvent_Typing)(nil), // 27: protocol.chat.v1.StreamEvent.Typing
+ (*StreamEvent_PermissionUpdated)(nil), // 28: protocol.chat.v1.StreamEvent.PermissionUpdated
+ (*StreamEvent_MessagePinned)(nil), // 29: protocol.chat.v1.StreamEvent.MessagePinned
+ (*StreamEvent_MessageUnpinned)(nil), // 30: protocol.chat.v1.StreamEvent.MessageUnpinned
+ (*StreamEvent_ReactionUpdated)(nil), // 31: protocol.chat.v1.StreamEvent.ReactionUpdated
+ (*StreamEvent_OwnerAdded)(nil), // 32: protocol.chat.v1.StreamEvent.OwnerAdded
+ (*StreamEvent_OwnerRemoved)(nil), // 33: protocol.chat.v1.StreamEvent.OwnerRemoved
+ (*StreamEvent_InviteReceived)(nil), // 34: protocol.chat.v1.StreamEvent.InviteReceived
+ (*StreamEvent_InviteRejected)(nil), // 35: protocol.chat.v1.StreamEvent.InviteRejected
+ (*v1.StreamEvent)(nil), // 36: protocol.emote.v1.StreamEvent
+ (*v11.StreamEvent)(nil), // 37: protocol.profile.v1.StreamEvent
+ (*Message)(nil), // 38: protocol.chat.v1.Message
+ (*FormattedText)(nil), // 39: protocol.chat.v1.FormattedText
+ (*v12.ItemPosition)(nil), // 40: protocol.harmonytypes.v1.ItemPosition
+ (ChannelKind)(0), // 41: protocol.chat.v1.ChannelKind
+ (*v12.Metadata)(nil), // 42: protocol.harmonytypes.v1.Metadata
+ (LeaveReason)(0), // 43: protocol.chat.v1.LeaveReason
+ (*ActionPayload)(nil), // 44: protocol.chat.v1.ActionPayload
+ (*Permission)(nil), // 45: protocol.chat.v1.Permission
+ (*Reaction)(nil), // 46: protocol.chat.v1.Reaction
+}
+var file_chat_v1_stream_proto_depIdxs = []int32{
+ 3, // 0: protocol.chat.v1.StreamEventsRequest.subscribe_to_guild:type_name -> protocol.chat.v1.StreamEventsRequest.SubscribeToGuild
+ 4, // 1: protocol.chat.v1.StreamEventsRequest.subscribe_to_actions:type_name -> protocol.chat.v1.StreamEventsRequest.SubscribeToActions
+ 5, // 2: protocol.chat.v1.StreamEventsRequest.subscribe_to_homeserver_events:type_name -> protocol.chat.v1.StreamEventsRequest.SubscribeToHomeserverEvents
+ 2, // 3: protocol.chat.v1.StreamEventsResponse.chat:type_name -> protocol.chat.v1.StreamEvent
+ 36, // 4: protocol.chat.v1.StreamEventsResponse.emote:type_name -> protocol.emote.v1.StreamEvent
+ 37, // 5: protocol.chat.v1.StreamEventsResponse.profile:type_name -> protocol.profile.v1.StreamEvent
+ 18, // 6: protocol.chat.v1.StreamEvent.guild_added_to_list:type_name -> protocol.chat.v1.StreamEvent.GuildAddedToList
+ 19, // 7: protocol.chat.v1.StreamEvent.guild_removed_from_list:type_name -> protocol.chat.v1.StreamEvent.GuildRemovedFromList
+ 20, // 8: protocol.chat.v1.StreamEvent.action_performed:type_name -> protocol.chat.v1.StreamEvent.ActionPerformed
+ 6, // 9: protocol.chat.v1.StreamEvent.sent_message:type_name -> protocol.chat.v1.StreamEvent.MessageSent
+ 7, // 10: protocol.chat.v1.StreamEvent.edited_message:type_name -> protocol.chat.v1.StreamEvent.MessageUpdated
+ 8, // 11: protocol.chat.v1.StreamEvent.deleted_message:type_name -> protocol.chat.v1.StreamEvent.MessageDeleted
+ 9, // 12: protocol.chat.v1.StreamEvent.created_channel:type_name -> protocol.chat.v1.StreamEvent.ChannelCreated
+ 10, // 13: protocol.chat.v1.StreamEvent.edited_channel:type_name -> protocol.chat.v1.StreamEvent.ChannelUpdated
+ 13, // 14: protocol.chat.v1.StreamEvent.deleted_channel:type_name -> protocol.chat.v1.StreamEvent.ChannelDeleted
+ 14, // 15: protocol.chat.v1.StreamEvent.edited_guild:type_name -> protocol.chat.v1.StreamEvent.GuildUpdated
+ 15, // 16: protocol.chat.v1.StreamEvent.deleted_guild:type_name -> protocol.chat.v1.StreamEvent.GuildDeleted
+ 16, // 17: protocol.chat.v1.StreamEvent.joined_member:type_name -> protocol.chat.v1.StreamEvent.MemberJoined
+ 17, // 18: protocol.chat.v1.StreamEvent.left_member:type_name -> protocol.chat.v1.StreamEvent.MemberLeft
+ 27, // 19: protocol.chat.v1.StreamEvent.typing:type_name -> protocol.chat.v1.StreamEvent.Typing
+ 23, // 20: protocol.chat.v1.StreamEvent.role_created:type_name -> protocol.chat.v1.StreamEvent.RoleCreated
+ 22, // 21: protocol.chat.v1.StreamEvent.role_deleted:type_name -> protocol.chat.v1.StreamEvent.RoleDeleted
+ 21, // 22: protocol.chat.v1.StreamEvent.role_moved:type_name -> protocol.chat.v1.StreamEvent.RoleMoved
+ 24, // 23: protocol.chat.v1.StreamEvent.role_updated:type_name -> protocol.chat.v1.StreamEvent.RoleUpdated
+ 25, // 24: protocol.chat.v1.StreamEvent.role_perms_updated:type_name -> protocol.chat.v1.StreamEvent.RolePermissionsUpdated
+ 26, // 25: protocol.chat.v1.StreamEvent.user_roles_updated:type_name -> protocol.chat.v1.StreamEvent.UserRolesUpdated
+ 28, // 26: protocol.chat.v1.StreamEvent.permission_updated:type_name -> protocol.chat.v1.StreamEvent.PermissionUpdated
+ 12, // 27: protocol.chat.v1.StreamEvent.channels_reordered:type_name -> protocol.chat.v1.StreamEvent.ChannelsReordered
+ 11, // 28: protocol.chat.v1.StreamEvent.edited_channel_position:type_name -> protocol.chat.v1.StreamEvent.ChannelPositionUpdated
+ 29, // 29: protocol.chat.v1.StreamEvent.message_pinned:type_name -> protocol.chat.v1.StreamEvent.MessagePinned
+ 30, // 30: protocol.chat.v1.StreamEvent.message_unpinned:type_name -> protocol.chat.v1.StreamEvent.MessageUnpinned
+ 31, // 31: protocol.chat.v1.StreamEvent.reaction_updated:type_name -> protocol.chat.v1.StreamEvent.ReactionUpdated
+ 32, // 32: protocol.chat.v1.StreamEvent.owner_added:type_name -> protocol.chat.v1.StreamEvent.OwnerAdded
+ 33, // 33: protocol.chat.v1.StreamEvent.owner_removed:type_name -> protocol.chat.v1.StreamEvent.OwnerRemoved
+ 34, // 34: protocol.chat.v1.StreamEvent.invite_received:type_name -> protocol.chat.v1.StreamEvent.InviteReceived
+ 35, // 35: protocol.chat.v1.StreamEvent.invite_rejected:type_name -> protocol.chat.v1.StreamEvent.InviteRejected
+ 38, // 36: protocol.chat.v1.StreamEvent.MessageSent.message:type_name -> protocol.chat.v1.Message
+ 39, // 37: protocol.chat.v1.StreamEvent.MessageUpdated.new_content:type_name -> protocol.chat.v1.FormattedText
+ 40, // 38: protocol.chat.v1.StreamEvent.ChannelCreated.position:type_name -> protocol.harmonytypes.v1.ItemPosition
+ 41, // 39: protocol.chat.v1.StreamEvent.ChannelCreated.kind:type_name -> protocol.chat.v1.ChannelKind
+ 42, // 40: protocol.chat.v1.StreamEvent.ChannelCreated.metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 42, // 41: protocol.chat.v1.StreamEvent.ChannelUpdated.new_metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 40, // 42: protocol.chat.v1.StreamEvent.ChannelPositionUpdated.new_position:type_name -> protocol.harmonytypes.v1.ItemPosition
+ 42, // 43: protocol.chat.v1.StreamEvent.GuildUpdated.new_metadata:type_name -> protocol.harmonytypes.v1.Metadata
+ 43, // 44: protocol.chat.v1.StreamEvent.MemberLeft.leave_reason:type_name -> protocol.chat.v1.LeaveReason
+ 44, // 45: protocol.chat.v1.StreamEvent.ActionPerformed.payload:type_name -> protocol.chat.v1.ActionPayload
+ 40, // 46: protocol.chat.v1.StreamEvent.RoleMoved.new_position:type_name -> protocol.harmonytypes.v1.ItemPosition
+ 45, // 47: protocol.chat.v1.StreamEvent.RolePermissionsUpdated.new_perms:type_name -> protocol.chat.v1.Permission
+ 46, // 48: protocol.chat.v1.StreamEvent.ReactionUpdated.reaction:type_name -> protocol.chat.v1.Reaction
+ 49, // [49:49] is the sub-list for method output_type
+ 49, // [49:49] is the sub-list for method input_type
+ 49, // [49:49] is the sub-list for extension type_name
+ 49, // [49:49] is the sub-list for extension extendee
+ 0, // [0:49] is the sub-list for field type_name
+}
+
+func init() { file_chat_v1_stream_proto_init() }
+func file_chat_v1_stream_proto_init() {
+ if File_chat_v1_stream_proto != nil {
+ return
+ }
+ file_chat_v1_channels_proto_init()
+ file_chat_v1_guilds_proto_init()
+ file_chat_v1_messages_proto_init()
+ file_chat_v1_permissions_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_chat_v1_stream_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEventsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEventsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEventsRequest_SubscribeToGuild); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEventsRequest_SubscribeToActions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEventsRequest_SubscribeToHomeserverEvents); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_MessageSent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_MessageUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_MessageDeleted); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_ChannelCreated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_ChannelUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_ChannelPositionUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_ChannelsReordered); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_ChannelDeleted); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_GuildUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_GuildDeleted); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_MemberJoined); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_MemberLeft); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_GuildAddedToList); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_GuildRemovedFromList); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_ActionPerformed); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_RoleMoved); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_RoleDeleted); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_RoleCreated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_RoleUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_RolePermissionsUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_UserRolesUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_Typing); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_PermissionUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_MessagePinned); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_MessageUnpinned); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_ReactionUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_OwnerAdded); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_OwnerRemoved); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_InviteReceived); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent_InviteRejected); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_chat_v1_stream_proto_msgTypes[0].OneofWrappers = []interface{}{
+ (*StreamEventsRequest_SubscribeToGuild_)(nil),
+ (*StreamEventsRequest_SubscribeToActions_)(nil),
+ (*StreamEventsRequest_SubscribeToHomeserverEvents_)(nil),
+ }
+ file_chat_v1_stream_proto_msgTypes[1].OneofWrappers = []interface{}{
+ (*StreamEventsResponse_Chat)(nil),
+ (*StreamEventsResponse_Emote)(nil),
+ (*StreamEventsResponse_Profile)(nil),
+ }
+ file_chat_v1_stream_proto_msgTypes[2].OneofWrappers = []interface{}{
+ (*StreamEvent_GuildAddedToList_)(nil),
+ (*StreamEvent_GuildRemovedFromList_)(nil),
+ (*StreamEvent_ActionPerformed_)(nil),
+ (*StreamEvent_SentMessage)(nil),
+ (*StreamEvent_EditedMessage)(nil),
+ (*StreamEvent_DeletedMessage)(nil),
+ (*StreamEvent_CreatedChannel)(nil),
+ (*StreamEvent_EditedChannel)(nil),
+ (*StreamEvent_DeletedChannel)(nil),
+ (*StreamEvent_EditedGuild)(nil),
+ (*StreamEvent_DeletedGuild)(nil),
+ (*StreamEvent_JoinedMember)(nil),
+ (*StreamEvent_LeftMember)(nil),
+ (*StreamEvent_Typing_)(nil),
+ (*StreamEvent_RoleCreated_)(nil),
+ (*StreamEvent_RoleDeleted_)(nil),
+ (*StreamEvent_RoleMoved_)(nil),
+ (*StreamEvent_RoleUpdated_)(nil),
+ (*StreamEvent_RolePermsUpdated)(nil),
+ (*StreamEvent_UserRolesUpdated_)(nil),
+ (*StreamEvent_PermissionUpdated_)(nil),
+ (*StreamEvent_ChannelsReordered_)(nil),
+ (*StreamEvent_EditedChannelPosition)(nil),
+ (*StreamEvent_MessagePinned_)(nil),
+ (*StreamEvent_MessageUnpinned_)(nil),
+ (*StreamEvent_ReactionUpdated_)(nil),
+ (*StreamEvent_OwnerAdded_)(nil),
+ (*StreamEvent_OwnerRemoved_)(nil),
+ (*StreamEvent_InviteReceived_)(nil),
+ (*StreamEvent_InviteRejected_)(nil),
+ }
+ file_chat_v1_stream_proto_msgTypes[6].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[9].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[10].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[11].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[14].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[24].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[25].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[28].OneofWrappers = []interface{}{}
+ file_chat_v1_stream_proto_msgTypes[34].OneofWrappers = []interface{}{}
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_chat_v1_stream_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 36,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_chat_v1_stream_proto_goTypes,
+ DependencyIndexes: file_chat_v1_stream_proto_depIdxs,
+ MessageInfos: file_chat_v1_stream_proto_msgTypes,
+ }.Build()
+ File_chat_v1_stream_proto = out.File
+ file_chat_v1_stream_proto_rawDesc = nil
+ file_chat_v1_stream_proto_goTypes = nil
+ file_chat_v1_stream_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote.pb.go b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote.pb.go
new file mode 100644
index 00000000..8fc9619d
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote.pb.go
@@ -0,0 +1,175 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: emote/v1/emote.proto
+
+package emotev1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ _ "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+)
+
+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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+var File_emote_v1_emote_proto protoreflect.FileDescriptor
+
+var file_emote_v1_emote_proto_rawDesc = []byte{
+ 0x0a, 0x14, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x68, 0x61, 0x72, 0x6d, 0x6f,
+ 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76, 0x31,
+ 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x32, 0x9f, 0x07, 0x0a,
+ 0x0c, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x6f, 0x0a,
+ 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b,
+ 0x12, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74,
+ 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65,
+ 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x69,
+ 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x12,
+ 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x78, 0x0a, 0x12, 0x47, 0x65, 0x74,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x12,
+ 0x2c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76,
+ 0x31, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x45, 0x6d,
+ 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44,
+ 0x02, 0x08, 0x01, 0x12, 0x6c, 0x0a, 0x0e, 0x41, 0x64, 0x64, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x54,
+ 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x6d, 0x6f,
+ 0x74, 0x65, 0x54, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x6f, 0x50, 0x61,
+ 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08,
+ 0x01, 0x12, 0x6f, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65,
+ 0x50, 0x61, 0x63, 0x6b, 0x12, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45,
+ 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50,
+ 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02,
+ 0x08, 0x01, 0x12, 0x7b, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74,
+ 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x2d, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x63,
+ 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c,
+ 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x63, 0x6b,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12,
+ 0x6f, 0x0a, 0x0f, 0x44, 0x65, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61,
+ 0x63, 0x6b, 0x12, 0x29, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d,
+ 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f,
+ 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76,
+ 0x31, 0x2e, 0x44, 0x65, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63,
+ 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01,
+ 0x12, 0x6c, 0x0a, 0x0e, 0x45, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61,
+ 0x63, 0x6b, 0x12, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d,
+ 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74,
+ 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31,
+ 0x2e, 0x45, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x42, 0xc7,
+ 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c,
+ 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f,
+ 0x67, 0x65, 0x6e, 0x2f, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x45, 0x58, 0xaa, 0x02, 0x11, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02,
+ 0x11, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x5c,
+ 0x56, 0x31, 0xe2, 0x02, 0x1d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x45, 0x6d,
+ 0x6f, 0x74, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0xea, 0x02, 0x13, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x45,
+ 0x6d, 0x6f, 0x74, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var file_emote_v1_emote_proto_goTypes = []interface{}{
+ (*CreateEmotePackRequest)(nil), // 0: protocol.emote.v1.CreateEmotePackRequest
+ (*GetEmotePacksRequest)(nil), // 1: protocol.emote.v1.GetEmotePacksRequest
+ (*GetEmotePackEmotesRequest)(nil), // 2: protocol.emote.v1.GetEmotePackEmotesRequest
+ (*AddEmoteToPackRequest)(nil), // 3: protocol.emote.v1.AddEmoteToPackRequest
+ (*DeleteEmotePackRequest)(nil), // 4: protocol.emote.v1.DeleteEmotePackRequest
+ (*DeleteEmoteFromPackRequest)(nil), // 5: protocol.emote.v1.DeleteEmoteFromPackRequest
+ (*DequipEmotePackRequest)(nil), // 6: protocol.emote.v1.DequipEmotePackRequest
+ (*EquipEmotePackRequest)(nil), // 7: protocol.emote.v1.EquipEmotePackRequest
+ (*CreateEmotePackResponse)(nil), // 8: protocol.emote.v1.CreateEmotePackResponse
+ (*GetEmotePacksResponse)(nil), // 9: protocol.emote.v1.GetEmotePacksResponse
+ (*GetEmotePackEmotesResponse)(nil), // 10: protocol.emote.v1.GetEmotePackEmotesResponse
+ (*AddEmoteToPackResponse)(nil), // 11: protocol.emote.v1.AddEmoteToPackResponse
+ (*DeleteEmotePackResponse)(nil), // 12: protocol.emote.v1.DeleteEmotePackResponse
+ (*DeleteEmoteFromPackResponse)(nil), // 13: protocol.emote.v1.DeleteEmoteFromPackResponse
+ (*DequipEmotePackResponse)(nil), // 14: protocol.emote.v1.DequipEmotePackResponse
+ (*EquipEmotePackResponse)(nil), // 15: protocol.emote.v1.EquipEmotePackResponse
+}
+var file_emote_v1_emote_proto_depIdxs = []int32{
+ 0, // 0: protocol.emote.v1.EmoteService.CreateEmotePack:input_type -> protocol.emote.v1.CreateEmotePackRequest
+ 1, // 1: protocol.emote.v1.EmoteService.GetEmotePacks:input_type -> protocol.emote.v1.GetEmotePacksRequest
+ 2, // 2: protocol.emote.v1.EmoteService.GetEmotePackEmotes:input_type -> protocol.emote.v1.GetEmotePackEmotesRequest
+ 3, // 3: protocol.emote.v1.EmoteService.AddEmoteToPack:input_type -> protocol.emote.v1.AddEmoteToPackRequest
+ 4, // 4: protocol.emote.v1.EmoteService.DeleteEmotePack:input_type -> protocol.emote.v1.DeleteEmotePackRequest
+ 5, // 5: protocol.emote.v1.EmoteService.DeleteEmoteFromPack:input_type -> protocol.emote.v1.DeleteEmoteFromPackRequest
+ 6, // 6: protocol.emote.v1.EmoteService.DequipEmotePack:input_type -> protocol.emote.v1.DequipEmotePackRequest
+ 7, // 7: protocol.emote.v1.EmoteService.EquipEmotePack:input_type -> protocol.emote.v1.EquipEmotePackRequest
+ 8, // 8: protocol.emote.v1.EmoteService.CreateEmotePack:output_type -> protocol.emote.v1.CreateEmotePackResponse
+ 9, // 9: protocol.emote.v1.EmoteService.GetEmotePacks:output_type -> protocol.emote.v1.GetEmotePacksResponse
+ 10, // 10: protocol.emote.v1.EmoteService.GetEmotePackEmotes:output_type -> protocol.emote.v1.GetEmotePackEmotesResponse
+ 11, // 11: protocol.emote.v1.EmoteService.AddEmoteToPack:output_type -> protocol.emote.v1.AddEmoteToPackResponse
+ 12, // 12: protocol.emote.v1.EmoteService.DeleteEmotePack:output_type -> protocol.emote.v1.DeleteEmotePackResponse
+ 13, // 13: protocol.emote.v1.EmoteService.DeleteEmoteFromPack:output_type -> protocol.emote.v1.DeleteEmoteFromPackResponse
+ 14, // 14: protocol.emote.v1.EmoteService.DequipEmotePack:output_type -> protocol.emote.v1.DequipEmotePackResponse
+ 15, // 15: protocol.emote.v1.EmoteService.EquipEmotePack:output_type -> protocol.emote.v1.EquipEmotePackResponse
+ 8, // [8:16] is the sub-list for method output_type
+ 0, // [0:8] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_emote_v1_emote_proto_init() }
+func file_emote_v1_emote_proto_init() {
+ if File_emote_v1_emote_proto != nil {
+ return
+ }
+ file_emote_v1_types_proto_init()
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_emote_v1_emote_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 0,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_emote_v1_emote_proto_goTypes,
+ DependencyIndexes: file_emote_v1_emote_proto_depIdxs,
+ }.Build()
+ File_emote_v1_emote_proto = out.File
+ file_emote_v1_emote_proto_rawDesc = nil
+ file_emote_v1_emote_proto_goTypes = nil
+ file_emote_v1_emote_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote_hrpc_client.pb.go b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote_hrpc_client.pb.go
new file mode 100644
index 00000000..ca1f81b8
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/emote_hrpc_client.pb.go
@@ -0,0 +1,455 @@
+// Code generated by protoc-gen-go-hrpc. DO NOT EDIT.
+
+package emotev1
+
+import (
+ bytes "bytes"
+ context "context"
+ proto "google.golang.org/protobuf/proto"
+ ioutil "io/ioutil"
+ http "net/http"
+ httptest "net/http/httptest"
+)
+
+type EmoteServiceClient interface {
+ // Endpoint to create an emote pack.
+ CreateEmotePack(context.Context, *CreateEmotePackRequest) (*CreateEmotePackResponse, error)
+ // Endpoint to get the emote packs you have equipped.
+ GetEmotePacks(context.Context, *GetEmotePacksRequest) (*GetEmotePacksResponse, error)
+ // Endpoint to get the emotes in an emote pack.
+ GetEmotePackEmotes(context.Context, *GetEmotePackEmotesRequest) (*GetEmotePackEmotesResponse, error)
+ // Endpoint to add an emote to an emote pack that you own.
+ AddEmoteToPack(context.Context, *AddEmoteToPackRequest) (*AddEmoteToPackResponse, error)
+ // Endpoint to delete an emote pack that you own.
+ DeleteEmotePack(context.Context, *DeleteEmotePackRequest) (*DeleteEmotePackResponse, error)
+ // Endpoint to delete an emote from an emote pack.
+ DeleteEmoteFromPack(context.Context, *DeleteEmoteFromPackRequest) (*DeleteEmoteFromPackResponse, error)
+ // Endpoint to dequip an emote pack that you have equipped.
+ DequipEmotePack(context.Context, *DequipEmotePackRequest) (*DequipEmotePackResponse, error)
+ // Endpoint to equip an emote pack.
+ EquipEmotePack(context.Context, *EquipEmotePackRequest) (*EquipEmotePackResponse, error)
+}
+
+type HTTPEmoteServiceClient struct {
+ Client http.Client
+ BaseURL string
+ WebsocketProto string
+ WebsocketHost string
+ Header http.Header
+}
+
+func (client *HTTPEmoteServiceClient) CreateEmotePack(req *CreateEmotePackRequest) (*CreateEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/CreateEmotePack", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPEmoteServiceClient) GetEmotePacks(req *GetEmotePacksRequest) (*GetEmotePacksResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/GetEmotePacks", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetEmotePacksResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPEmoteServiceClient) GetEmotePackEmotes(req *GetEmotePackEmotesRequest) (*GetEmotePackEmotesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/GetEmotePackEmotes", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetEmotePackEmotesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPEmoteServiceClient) AddEmoteToPack(req *AddEmoteToPackRequest) (*AddEmoteToPackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/AddEmoteToPack", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &AddEmoteToPackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPEmoteServiceClient) DeleteEmotePack(req *DeleteEmotePackRequest) (*DeleteEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/DeleteEmotePack", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPEmoteServiceClient) DeleteEmoteFromPack(req *DeleteEmoteFromPackRequest) (*DeleteEmoteFromPackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/DeleteEmoteFromPack", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteEmoteFromPackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPEmoteServiceClient) DequipEmotePack(req *DequipEmotePackRequest) (*DequipEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/DequipEmotePack", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DequipEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPEmoteServiceClient) EquipEmotePack(req *EquipEmotePackRequest) (*EquipEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.emote.v1.EmoteService/EquipEmotePack", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &EquipEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+
+type HTTPTestEmoteServiceClient struct {
+ Client interface {
+ Test(*http.Request, ...int) (*http.Response, error)
+ }
+}
+
+func (client *HTTPTestEmoteServiceClient) CreateEmotePack(req *CreateEmotePackRequest) (*CreateEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/CreateEmotePack", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &CreateEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestEmoteServiceClient) GetEmotePacks(req *GetEmotePacksRequest) (*GetEmotePacksResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/GetEmotePacks", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetEmotePacksResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestEmoteServiceClient) GetEmotePackEmotes(req *GetEmotePackEmotesRequest) (*GetEmotePackEmotesResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/GetEmotePackEmotes", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetEmotePackEmotesResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestEmoteServiceClient) AddEmoteToPack(req *AddEmoteToPackRequest) (*AddEmoteToPackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/AddEmoteToPack", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &AddEmoteToPackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestEmoteServiceClient) DeleteEmotePack(req *DeleteEmotePackRequest) (*DeleteEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/DeleteEmotePack", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestEmoteServiceClient) DeleteEmoteFromPack(req *DeleteEmoteFromPackRequest) (*DeleteEmoteFromPackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/DeleteEmoteFromPack", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DeleteEmoteFromPackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestEmoteServiceClient) DequipEmotePack(req *DequipEmotePackRequest) (*DequipEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/DequipEmotePack", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &DequipEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestEmoteServiceClient) EquipEmotePack(req *EquipEmotePackRequest) (*EquipEmotePackResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.emote.v1.EmoteService/EquipEmotePack", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &EquipEmotePackResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/emote/v1/stream.pb.go b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/stream.pb.go
new file mode 100644
index 00000000..8ffda36b
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/stream.pb.go
@@ -0,0 +1,573 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: emote/v1/stream.proto
+
+package emotev1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// Event sent when an emote pack's information is changed.
+//
+// Should only be sent to users who have the pack equipped.
+type EmotePackUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the pack that was updated.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+ // New pack name of the pack.
+ NewPackName *string `protobuf:"bytes,2,opt,name=new_pack_name,json=newPackName,proto3,oneof" json:"new_pack_name,omitempty"`
+}
+
+func (x *EmotePackUpdated) Reset() {
+ *x = EmotePackUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_stream_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EmotePackUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EmotePackUpdated) ProtoMessage() {}
+
+func (x *EmotePackUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_stream_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 EmotePackUpdated.ProtoReflect.Descriptor instead.
+func (*EmotePackUpdated) Descriptor() ([]byte, []int) {
+ return file_emote_v1_stream_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *EmotePackUpdated) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+func (x *EmotePackUpdated) GetNewPackName() string {
+ if x != nil && x.NewPackName != nil {
+ return *x.NewPackName
+ }
+ return ""
+}
+
+// Event sent when an emote pack is deleted.
+//
+// Should only be sent to users who have the pack equipped.
+// Should also be sent if a user dequips an emote pack, only to the user that dequipped it.
+type EmotePackDeleted struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the pack that was deleted.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+}
+
+func (x *EmotePackDeleted) Reset() {
+ *x = EmotePackDeleted{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_stream_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EmotePackDeleted) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EmotePackDeleted) ProtoMessage() {}
+
+func (x *EmotePackDeleted) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_stream_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 EmotePackDeleted.ProtoReflect.Descriptor instead.
+func (*EmotePackDeleted) Descriptor() ([]byte, []int) {
+ return file_emote_v1_stream_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *EmotePackDeleted) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+// Event sent when an emote pack is added.
+//
+// Should only be sent to the user who equipped the pack.
+type EmotePackAdded struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Emote pack that was equipped by the user.
+ Pack *EmotePack `protobuf:"bytes,1,opt,name=pack,proto3" json:"pack,omitempty"`
+}
+
+func (x *EmotePackAdded) Reset() {
+ *x = EmotePackAdded{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_stream_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EmotePackAdded) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EmotePackAdded) ProtoMessage() {}
+
+func (x *EmotePackAdded) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_stream_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 EmotePackAdded.ProtoReflect.Descriptor instead.
+func (*EmotePackAdded) Descriptor() ([]byte, []int) {
+ return file_emote_v1_stream_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *EmotePackAdded) GetPack() *EmotePack {
+ if x != nil {
+ return x.Pack
+ }
+ return nil
+}
+
+// Event sent when an emote pack's emotes were changed.
+//
+// Should only be sent to users who have the pack equipped.
+type EmotePackEmotesUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // ID of the pack to update the emotes of.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+ // The added emotes.
+ AddedEmotes []*Emote `protobuf:"bytes,2,rep,name=added_emotes,json=addedEmotes,proto3" json:"added_emotes,omitempty"`
+ // The names of the deleted emotes.
+ DeletedEmotes []string `protobuf:"bytes,3,rep,name=deleted_emotes,json=deletedEmotes,proto3" json:"deleted_emotes,omitempty"`
+}
+
+func (x *EmotePackEmotesUpdated) Reset() {
+ *x = EmotePackEmotesUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_stream_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EmotePackEmotesUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EmotePackEmotesUpdated) ProtoMessage() {}
+
+func (x *EmotePackEmotesUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_stream_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 EmotePackEmotesUpdated.ProtoReflect.Descriptor instead.
+func (*EmotePackEmotesUpdated) Descriptor() ([]byte, []int) {
+ return file_emote_v1_stream_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *EmotePackEmotesUpdated) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+func (x *EmotePackEmotesUpdated) GetAddedEmotes() []*Emote {
+ if x != nil {
+ return x.AddedEmotes
+ }
+ return nil
+}
+
+func (x *EmotePackEmotesUpdated) GetDeletedEmotes() []string {
+ if x != nil {
+ return x.DeletedEmotes
+ }
+ return nil
+}
+
+// Describes an emote service event.
+type StreamEvent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The event type.
+ //
+ // Types that are assignable to Event:
+ // *StreamEvent_EmotePackAdded
+ // *StreamEvent_EmotePackUpdated
+ // *StreamEvent_EmotePackDeleted
+ // *StreamEvent_EmotePackEmotesUpdated
+ Event isStreamEvent_Event `protobuf_oneof:"event"`
+}
+
+func (x *StreamEvent) Reset() {
+ *x = StreamEvent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_stream_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent) ProtoMessage() {}
+
+func (x *StreamEvent) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_stream_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 StreamEvent.ProtoReflect.Descriptor instead.
+func (*StreamEvent) Descriptor() ([]byte, []int) {
+ return file_emote_v1_stream_proto_rawDescGZIP(), []int{4}
+}
+
+func (m *StreamEvent) GetEvent() isStreamEvent_Event {
+ if m != nil {
+ return m.Event
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEmotePackAdded() *EmotePackAdded {
+ if x, ok := x.GetEvent().(*StreamEvent_EmotePackAdded); ok {
+ return x.EmotePackAdded
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEmotePackUpdated() *EmotePackUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_EmotePackUpdated); ok {
+ return x.EmotePackUpdated
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEmotePackDeleted() *EmotePackDeleted {
+ if x, ok := x.GetEvent().(*StreamEvent_EmotePackDeleted); ok {
+ return x.EmotePackDeleted
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetEmotePackEmotesUpdated() *EmotePackEmotesUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_EmotePackEmotesUpdated); ok {
+ return x.EmotePackEmotesUpdated
+ }
+ return nil
+}
+
+type isStreamEvent_Event interface {
+ isStreamEvent_Event()
+}
+
+type StreamEvent_EmotePackAdded struct {
+ // Send the emote pack added event.
+ EmotePackAdded *EmotePackAdded `protobuf:"bytes,1,opt,name=emote_pack_added,json=emotePackAdded,proto3,oneof"`
+}
+
+type StreamEvent_EmotePackUpdated struct {
+ // Send the emote pack updated event.
+ EmotePackUpdated *EmotePackUpdated `protobuf:"bytes,2,opt,name=emote_pack_updated,json=emotePackUpdated,proto3,oneof"`
+}
+
+type StreamEvent_EmotePackDeleted struct {
+ // Send the emote pack deleted event.
+ EmotePackDeleted *EmotePackDeleted `protobuf:"bytes,3,opt,name=emote_pack_deleted,json=emotePackDeleted,proto3,oneof"`
+}
+
+type StreamEvent_EmotePackEmotesUpdated struct {
+ // Send the emote pack emotes updated event.
+ EmotePackEmotesUpdated *EmotePackEmotesUpdated `protobuf:"bytes,4,opt,name=emote_pack_emotes_updated,json=emotePackEmotesUpdated,proto3,oneof"`
+}
+
+func (*StreamEvent_EmotePackAdded) isStreamEvent_Event() {}
+
+func (*StreamEvent_EmotePackUpdated) isStreamEvent_Event() {}
+
+func (*StreamEvent_EmotePackDeleted) isStreamEvent_Event() {}
+
+func (*StreamEvent_EmotePackEmotesUpdated) isStreamEvent_Event() {}
+
+var File_emote_v1_stream_proto protoreflect.FileDescriptor
+
+var file_emote_v1_stream_proto_rawDesc = []byte{
+ 0x0a, 0x15, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x72, 0x65, 0x61,
+ 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
+ 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x14, 0x65, 0x6d, 0x6f, 0x74,
+ 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x22, 0x66, 0x0a, 0x10, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x27, 0x0a,
+ 0x0d, 0x6e, 0x65, 0x77, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x63, 0x6b, 0x4e,
+ 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x70,
+ 0x61, 0x63, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x2b, 0x0a, 0x10, 0x45, 0x6d, 0x6f, 0x74,
+ 0x65, 0x50, 0x61, 0x63, 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07,
+ 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70,
+ 0x61, 0x63, 0x6b, 0x49, 0x64, 0x22, 0x42, 0x0a, 0x0e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61,
+ 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x04, 0x70, 0x61, 0x63, 0x6b, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50,
+ 0x61, 0x63, 0x6b, 0x52, 0x04, 0x70, 0x61, 0x63, 0x6b, 0x22, 0x95, 0x01, 0x0a, 0x16, 0x45, 0x6d,
+ 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x3b, 0x0a,
+ 0x0c, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65,
+ 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x0b, 0x61,
+ 0x64, 0x64, 0x65, 0x64, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03,
+ 0x28, 0x09, 0x52, 0x0d, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x45, 0x6d, 0x6f, 0x74, 0x65,
+ 0x73, 0x22, 0xf7, 0x02, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76, 0x65, 0x6e,
+ 0x74, 0x12, 0x4d, 0x0a, 0x10, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x5f,
+ 0x61, 0x64, 0x64, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64, 0x48, 0x00,
+ 0x52, 0x0e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x41, 0x64, 0x64, 0x65, 0x64,
+ 0x12, 0x53, 0x0a, 0x12, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31,
+ 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x64, 0x48, 0x00, 0x52, 0x10, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x53, 0x0a, 0x12, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x70,
+ 0x61, 0x63, 0x6b, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x10, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50,
+ 0x61, 0x63, 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x66, 0x0a, 0x19, 0x65, 0x6d,
+ 0x6f, 0x74, 0x65, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x5f,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76,
+ 0x31, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x45, 0x6d, 0x6f, 0x74, 0x65,
+ 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x16, 0x65, 0x6d, 0x6f, 0x74,
+ 0x65, 0x50, 0x61, 0x63, 0x6b, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x42, 0xc8, 0x01, 0x0a, 0x15,
+ 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70,
+ 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65,
+ 0x6e, 0x2f, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x45, 0x58, 0xaa, 0x02, 0x11, 0x50, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x5c, 0x56, 0x31,
+ 0xe2, 0x02, 0x1d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x45, 0x6d, 0x6f, 0x74,
+ 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0xea, 0x02, 0x13, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x45, 0x6d, 0x6f,
+ 0x74, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_emote_v1_stream_proto_rawDescOnce sync.Once
+ file_emote_v1_stream_proto_rawDescData = file_emote_v1_stream_proto_rawDesc
+)
+
+func file_emote_v1_stream_proto_rawDescGZIP() []byte {
+ file_emote_v1_stream_proto_rawDescOnce.Do(func() {
+ file_emote_v1_stream_proto_rawDescData = protoimpl.X.CompressGZIP(file_emote_v1_stream_proto_rawDescData)
+ })
+ return file_emote_v1_stream_proto_rawDescData
+}
+
+var file_emote_v1_stream_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
+var file_emote_v1_stream_proto_goTypes = []interface{}{
+ (*EmotePackUpdated)(nil), // 0: protocol.emote.v1.EmotePackUpdated
+ (*EmotePackDeleted)(nil), // 1: protocol.emote.v1.EmotePackDeleted
+ (*EmotePackAdded)(nil), // 2: protocol.emote.v1.EmotePackAdded
+ (*EmotePackEmotesUpdated)(nil), // 3: protocol.emote.v1.EmotePackEmotesUpdated
+ (*StreamEvent)(nil), // 4: protocol.emote.v1.StreamEvent
+ (*EmotePack)(nil), // 5: protocol.emote.v1.EmotePack
+ (*Emote)(nil), // 6: protocol.emote.v1.Emote
+}
+var file_emote_v1_stream_proto_depIdxs = []int32{
+ 5, // 0: protocol.emote.v1.EmotePackAdded.pack:type_name -> protocol.emote.v1.EmotePack
+ 6, // 1: protocol.emote.v1.EmotePackEmotesUpdated.added_emotes:type_name -> protocol.emote.v1.Emote
+ 2, // 2: protocol.emote.v1.StreamEvent.emote_pack_added:type_name -> protocol.emote.v1.EmotePackAdded
+ 0, // 3: protocol.emote.v1.StreamEvent.emote_pack_updated:type_name -> protocol.emote.v1.EmotePackUpdated
+ 1, // 4: protocol.emote.v1.StreamEvent.emote_pack_deleted:type_name -> protocol.emote.v1.EmotePackDeleted
+ 3, // 5: protocol.emote.v1.StreamEvent.emote_pack_emotes_updated:type_name -> protocol.emote.v1.EmotePackEmotesUpdated
+ 6, // [6:6] is the sub-list for method output_type
+ 6, // [6:6] is the sub-list for method input_type
+ 6, // [6:6] is the sub-list for extension type_name
+ 6, // [6:6] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
+}
+
+func init() { file_emote_v1_stream_proto_init() }
+func file_emote_v1_stream_proto_init() {
+ if File_emote_v1_stream_proto != nil {
+ return
+ }
+ file_emote_v1_types_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_emote_v1_stream_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EmotePackUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_stream_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EmotePackDeleted); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_stream_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EmotePackAdded); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_stream_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EmotePackEmotesUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_stream_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_emote_v1_stream_proto_msgTypes[0].OneofWrappers = []interface{}{}
+ file_emote_v1_stream_proto_msgTypes[4].OneofWrappers = []interface{}{
+ (*StreamEvent_EmotePackAdded)(nil),
+ (*StreamEvent_EmotePackUpdated)(nil),
+ (*StreamEvent_EmotePackDeleted)(nil),
+ (*StreamEvent_EmotePackEmotesUpdated)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_emote_v1_stream_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 5,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_emote_v1_stream_proto_goTypes,
+ DependencyIndexes: file_emote_v1_stream_proto_depIdxs,
+ MessageInfos: file_emote_v1_stream_proto_msgTypes,
+ }.Build()
+ File_emote_v1_stream_proto = out.File
+ file_emote_v1_stream_proto_rawDesc = nil
+ file_emote_v1_stream_proto_goTypes = nil
+ file_emote_v1_stream_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/emote/v1/types.pb.go b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/types.pb.go
new file mode 100644
index 00000000..c8b37b32
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/emote/v1/types.pb.go
@@ -0,0 +1,1262 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: emote/v1/types.proto
+
+package emotev1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// Data for a single pack of emotes.
+type EmotePack struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+ // The ID of the user who created the pack.
+ PackOwner uint64 `protobuf:"varint,2,opt,name=pack_owner,json=packOwner,proto3" json:"pack_owner,omitempty"`
+ // The name of the pack.
+ PackName string `protobuf:"bytes,3,opt,name=pack_name,json=packName,proto3" json:"pack_name,omitempty"`
+}
+
+func (x *EmotePack) Reset() {
+ *x = EmotePack{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EmotePack) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EmotePack) ProtoMessage() {}
+
+func (x *EmotePack) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_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 EmotePack.ProtoReflect.Descriptor instead.
+func (*EmotePack) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *EmotePack) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+func (x *EmotePack) GetPackOwner() uint64 {
+ if x != nil {
+ return x.PackOwner
+ }
+ return 0
+}
+
+func (x *EmotePack) GetPackName() string {
+ if x != nil {
+ return x.PackName
+ }
+ return ""
+}
+
+// Data for a single emote.
+type Emote struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The image ID of the emote. This is the ID of the image in the image store
+ // (same place attachments are stored).
+ ImageId string `protobuf:"bytes,1,opt,name=image_id,json=imageId,proto3" json:"image_id,omitempty"`
+ // The name of the emote.
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *Emote) Reset() {
+ *x = Emote{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Emote) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Emote) ProtoMessage() {}
+
+func (x *Emote) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_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 Emote.ProtoReflect.Descriptor instead.
+func (*Emote) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *Emote) GetImageId() string {
+ if x != nil {
+ return x.ImageId
+ }
+ return ""
+}
+
+func (x *Emote) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Used in the `CreateEmotePack` endpoint.
+type CreateEmotePackRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the name of the pack.
+ PackName string `protobuf:"bytes,1,opt,name=pack_name,json=packName,proto3" json:"pack_name,omitempty"`
+}
+
+func (x *CreateEmotePackRequest) Reset() {
+ *x = CreateEmotePackRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateEmotePackRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateEmotePackRequest) ProtoMessage() {}
+
+func (x *CreateEmotePackRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_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 CreateEmotePackRequest.ProtoReflect.Descriptor instead.
+func (*CreateEmotePackRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *CreateEmotePackRequest) GetPackName() string {
+ if x != nil {
+ return x.PackName
+ }
+ return ""
+}
+
+// Used in the `CreateEmotePack` endpoint.
+type CreateEmotePackResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+}
+
+func (x *CreateEmotePackResponse) Reset() {
+ *x = CreateEmotePackResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateEmotePackResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateEmotePackResponse) ProtoMessage() {}
+
+func (x *CreateEmotePackResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_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 CreateEmotePackResponse.ProtoReflect.Descriptor instead.
+func (*CreateEmotePackResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *CreateEmotePackResponse) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+// Used in the `GetEmotePacks` endpoint.
+type GetEmotePacksRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *GetEmotePacksRequest) Reset() {
+ *x = GetEmotePacksRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetEmotePacksRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetEmotePacksRequest) ProtoMessage() {}
+
+func (x *GetEmotePacksRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_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 GetEmotePacksRequest.ProtoReflect.Descriptor instead.
+func (*GetEmotePacksRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{4}
+}
+
+// Used in the `GetEmotePacks` endpoint.
+type GetEmotePacksResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of emote packs.
+ Packs []*EmotePack `protobuf:"bytes,1,rep,name=packs,proto3" json:"packs,omitempty"`
+}
+
+func (x *GetEmotePacksResponse) Reset() {
+ *x = GetEmotePacksResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetEmotePacksResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetEmotePacksResponse) ProtoMessage() {}
+
+func (x *GetEmotePacksResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_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 GetEmotePacksResponse.ProtoReflect.Descriptor instead.
+func (*GetEmotePacksResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *GetEmotePacksResponse) GetPacks() []*EmotePack {
+ if x != nil {
+ return x.Packs
+ }
+ return nil
+}
+
+// Used in the `GetEmotes` endpoint.
+type GetEmotePackEmotesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+}
+
+func (x *GetEmotePackEmotesRequest) Reset() {
+ *x = GetEmotePackEmotesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetEmotePackEmotesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetEmotePackEmotesRequest) ProtoMessage() {}
+
+func (x *GetEmotePackEmotesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_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 GetEmotePackEmotesRequest.ProtoReflect.Descriptor instead.
+func (*GetEmotePackEmotesRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *GetEmotePackEmotesRequest) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+// Used in the `GetEmotes` endpoint.
+type GetEmotePackEmotesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of emotes in the pack.
+ Emotes []*Emote `protobuf:"bytes,1,rep,name=emotes,proto3" json:"emotes,omitempty"`
+}
+
+func (x *GetEmotePackEmotesResponse) Reset() {
+ *x = GetEmotePackEmotesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetEmotePackEmotesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetEmotePackEmotesResponse) ProtoMessage() {}
+
+func (x *GetEmotePackEmotesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[7]
+ 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 GetEmotePackEmotesResponse.ProtoReflect.Descriptor instead.
+func (*GetEmotePackEmotesResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *GetEmotePackEmotesResponse) GetEmotes() []*Emote {
+ if x != nil {
+ return x.Emotes
+ }
+ return nil
+}
+
+// Used in the `AddEmoteToPack` endpoint.
+type AddEmoteToPackRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+ // The emote to add.
+ Emote *Emote `protobuf:"bytes,2,opt,name=emote,proto3" json:"emote,omitempty"`
+}
+
+func (x *AddEmoteToPackRequest) Reset() {
+ *x = AddEmoteToPackRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AddEmoteToPackRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AddEmoteToPackRequest) ProtoMessage() {}
+
+func (x *AddEmoteToPackRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[8]
+ 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 AddEmoteToPackRequest.ProtoReflect.Descriptor instead.
+func (*AddEmoteToPackRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *AddEmoteToPackRequest) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+func (x *AddEmoteToPackRequest) GetEmote() *Emote {
+ if x != nil {
+ return x.Emote
+ }
+ return nil
+}
+
+// Used in the `AddEmoteToPack` endpoint.
+type AddEmoteToPackResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *AddEmoteToPackResponse) Reset() {
+ *x = AddEmoteToPackResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AddEmoteToPackResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AddEmoteToPackResponse) ProtoMessage() {}
+
+func (x *AddEmoteToPackResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[9]
+ 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 AddEmoteToPackResponse.ProtoReflect.Descriptor instead.
+func (*AddEmoteToPackResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{9}
+}
+
+// Used in the `DeleteEmoteFromPack` endpoint.
+type DeleteEmoteFromPackRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+ // The name of the emote to delete.
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteEmoteFromPackRequest) Reset() {
+ *x = DeleteEmoteFromPackRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteEmoteFromPackRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteEmoteFromPackRequest) ProtoMessage() {}
+
+func (x *DeleteEmoteFromPackRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[10]
+ 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 DeleteEmoteFromPackRequest.ProtoReflect.Descriptor instead.
+func (*DeleteEmoteFromPackRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *DeleteEmoteFromPackRequest) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+func (x *DeleteEmoteFromPackRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Used in the `DeleteEmoteFromPack` endpoint.
+type DeleteEmoteFromPackResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteEmoteFromPackResponse) Reset() {
+ *x = DeleteEmoteFromPackResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteEmoteFromPackResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteEmoteFromPackResponse) ProtoMessage() {}
+
+func (x *DeleteEmoteFromPackResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[11]
+ 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 DeleteEmoteFromPackResponse.ProtoReflect.Descriptor instead.
+func (*DeleteEmoteFromPackResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{11}
+}
+
+// Used in the `DeleteEmotePack` endpoint.
+type DeleteEmotePackRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+}
+
+func (x *DeleteEmotePackRequest) Reset() {
+ *x = DeleteEmotePackRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteEmotePackRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteEmotePackRequest) ProtoMessage() {}
+
+func (x *DeleteEmotePackRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[12]
+ 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 DeleteEmotePackRequest.ProtoReflect.Descriptor instead.
+func (*DeleteEmotePackRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *DeleteEmotePackRequest) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+// Used in the `DeleteEmotePack` endpoint.
+type DeleteEmotePackResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DeleteEmotePackResponse) Reset() {
+ *x = DeleteEmotePackResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteEmotePackResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteEmotePackResponse) ProtoMessage() {}
+
+func (x *DeleteEmotePackResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[13]
+ 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 DeleteEmotePackResponse.ProtoReflect.Descriptor instead.
+func (*DeleteEmotePackResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{13}
+}
+
+// Used in the `DequipEmotePack` endpoint.
+type DequipEmotePackRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+}
+
+func (x *DequipEmotePackRequest) Reset() {
+ *x = DequipEmotePackRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DequipEmotePackRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DequipEmotePackRequest) ProtoMessage() {}
+
+func (x *DequipEmotePackRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[14]
+ 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 DequipEmotePackRequest.ProtoReflect.Descriptor instead.
+func (*DequipEmotePackRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *DequipEmotePackRequest) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+// Used in the `DequipEmotePack` endpoint.
+type DequipEmotePackResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *DequipEmotePackResponse) Reset() {
+ *x = DequipEmotePackResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DequipEmotePackResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DequipEmotePackResponse) ProtoMessage() {}
+
+func (x *DequipEmotePackResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[15]
+ 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 DequipEmotePackResponse.ProtoReflect.Descriptor instead.
+func (*DequipEmotePackResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{15}
+}
+
+// Used in the `EquipEmotePack` endpoint.
+type EquipEmotePackRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the pack.
+ PackId uint64 `protobuf:"varint,1,opt,name=pack_id,json=packId,proto3" json:"pack_id,omitempty"`
+}
+
+func (x *EquipEmotePackRequest) Reset() {
+ *x = EquipEmotePackRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EquipEmotePackRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EquipEmotePackRequest) ProtoMessage() {}
+
+func (x *EquipEmotePackRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[16]
+ 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 EquipEmotePackRequest.ProtoReflect.Descriptor instead.
+func (*EquipEmotePackRequest) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *EquipEmotePackRequest) GetPackId() uint64 {
+ if x != nil {
+ return x.PackId
+ }
+ return 0
+}
+
+// Used in the `EquipEmotePack` endpoint.
+type EquipEmotePackResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *EquipEmotePackResponse) Reset() {
+ *x = EquipEmotePackResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_emote_v1_types_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EquipEmotePackResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EquipEmotePackResponse) ProtoMessage() {}
+
+func (x *EquipEmotePackResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_emote_v1_types_proto_msgTypes[17]
+ 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 EquipEmotePackResponse.ProtoReflect.Descriptor instead.
+func (*EquipEmotePackResponse) Descriptor() ([]byte, []int) {
+ return file_emote_v1_types_proto_rawDescGZIP(), []int{17}
+}
+
+var File_emote_v1_types_proto protoreflect.FileDescriptor
+
+var file_emote_v1_types_proto_rawDesc = []byte{
+ 0x0a, 0x14, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x22, 0x60, 0x0a, 0x09, 0x45, 0x6d, 0x6f,
+ 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x61, 0x63, 0x6b, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x1b,
+ 0x0a, 0x09, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x08, 0x70, 0x61, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x36, 0x0a, 0x05, 0x45,
+ 0x6d, 0x6f, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12,
+ 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x22, 0x35, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6d, 0x6f,
+ 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a,
+ 0x09, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x08, 0x70, 0x61, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x32, 0x0a, 0x17, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x22, 0x16,
+ 0x0a, 0x14, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4b, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f,
+ 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x32, 0x0a, 0x05, 0x70, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e,
+ 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x05, 0x70, 0x61,
+ 0x63, 0x6b, 0x73, 0x22, 0x34, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50,
+ 0x61, 0x63, 0x6b, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x22, 0x4e, 0x0a, 0x1a, 0x47, 0x65, 0x74,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x65, 0x6d, 0x6f, 0x74, 0x65,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x6f, 0x74,
+ 0x65, 0x52, 0x06, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x22, 0x60, 0x0a, 0x15, 0x41, 0x64, 0x64,
+ 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x05, 0x65,
+ 0x6d, 0x6f, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45,
+ 0x6d, 0x6f, 0x74, 0x65, 0x52, 0x05, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x22, 0x18, 0x0a, 0x16, 0x41,
+ 0x64, 0x64, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x54, 0x6f, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x49, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45,
+ 0x6d, 0x6f, 0x74, 0x65, 0x46, 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x22, 0x1d, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x46,
+ 0x72, 0x6f, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x31, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61,
+ 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63,
+ 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b,
+ 0x49, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6d, 0x6f, 0x74,
+ 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x31, 0x0a,
+ 0x16, 0x44, 0x65, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64,
+ 0x22, 0x19, 0x0a, 0x17, 0x44, 0x65, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50,
+ 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x30, 0x0a, 0x15, 0x45,
+ 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x22, 0x18, 0x0a,
+ 0x16, 0x45, 0x71, 0x75, 0x69, 0x70, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0xc7, 0x01, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x76,
+ 0x31, 0x42, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
+ 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f,
+ 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x65, 0x6d, 0x6f,
+ 0x74, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03,
+ 0x50, 0x45, 0x58, 0xaa, 0x02, 0x11, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x45,
+ 0x6d, 0x6f, 0x74, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x11, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x5c, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1d, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x5c, 0x56, 0x31, 0x5c,
+ 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x13, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x45, 0x6d, 0x6f, 0x74, 0x65, 0x3a, 0x3a, 0x56,
+ 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_emote_v1_types_proto_rawDescOnce sync.Once
+ file_emote_v1_types_proto_rawDescData = file_emote_v1_types_proto_rawDesc
+)
+
+func file_emote_v1_types_proto_rawDescGZIP() []byte {
+ file_emote_v1_types_proto_rawDescOnce.Do(func() {
+ file_emote_v1_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_emote_v1_types_proto_rawDescData)
+ })
+ return file_emote_v1_types_proto_rawDescData
+}
+
+var file_emote_v1_types_proto_msgTypes = make([]protoimpl.MessageInfo, 18)
+var file_emote_v1_types_proto_goTypes = []interface{}{
+ (*EmotePack)(nil), // 0: protocol.emote.v1.EmotePack
+ (*Emote)(nil), // 1: protocol.emote.v1.Emote
+ (*CreateEmotePackRequest)(nil), // 2: protocol.emote.v1.CreateEmotePackRequest
+ (*CreateEmotePackResponse)(nil), // 3: protocol.emote.v1.CreateEmotePackResponse
+ (*GetEmotePacksRequest)(nil), // 4: protocol.emote.v1.GetEmotePacksRequest
+ (*GetEmotePacksResponse)(nil), // 5: protocol.emote.v1.GetEmotePacksResponse
+ (*GetEmotePackEmotesRequest)(nil), // 6: protocol.emote.v1.GetEmotePackEmotesRequest
+ (*GetEmotePackEmotesResponse)(nil), // 7: protocol.emote.v1.GetEmotePackEmotesResponse
+ (*AddEmoteToPackRequest)(nil), // 8: protocol.emote.v1.AddEmoteToPackRequest
+ (*AddEmoteToPackResponse)(nil), // 9: protocol.emote.v1.AddEmoteToPackResponse
+ (*DeleteEmoteFromPackRequest)(nil), // 10: protocol.emote.v1.DeleteEmoteFromPackRequest
+ (*DeleteEmoteFromPackResponse)(nil), // 11: protocol.emote.v1.DeleteEmoteFromPackResponse
+ (*DeleteEmotePackRequest)(nil), // 12: protocol.emote.v1.DeleteEmotePackRequest
+ (*DeleteEmotePackResponse)(nil), // 13: protocol.emote.v1.DeleteEmotePackResponse
+ (*DequipEmotePackRequest)(nil), // 14: protocol.emote.v1.DequipEmotePackRequest
+ (*DequipEmotePackResponse)(nil), // 15: protocol.emote.v1.DequipEmotePackResponse
+ (*EquipEmotePackRequest)(nil), // 16: protocol.emote.v1.EquipEmotePackRequest
+ (*EquipEmotePackResponse)(nil), // 17: protocol.emote.v1.EquipEmotePackResponse
+}
+var file_emote_v1_types_proto_depIdxs = []int32{
+ 0, // 0: protocol.emote.v1.GetEmotePacksResponse.packs:type_name -> protocol.emote.v1.EmotePack
+ 1, // 1: protocol.emote.v1.GetEmotePackEmotesResponse.emotes:type_name -> protocol.emote.v1.Emote
+ 1, // 2: protocol.emote.v1.AddEmoteToPackRequest.emote:type_name -> protocol.emote.v1.Emote
+ 3, // [3:3] is the sub-list for method output_type
+ 3, // [3:3] is the sub-list for method input_type
+ 3, // [3:3] is the sub-list for extension type_name
+ 3, // [3:3] is the sub-list for extension extendee
+ 0, // [0:3] is the sub-list for field type_name
+}
+
+func init() { file_emote_v1_types_proto_init() }
+func file_emote_v1_types_proto_init() {
+ if File_emote_v1_types_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_emote_v1_types_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EmotePack); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Emote); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateEmotePackRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateEmotePackResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetEmotePacksRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetEmotePacksResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetEmotePackEmotesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetEmotePackEmotesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddEmoteToPackRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AddEmoteToPackResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteEmoteFromPackRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteEmoteFromPackResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteEmotePackRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteEmotePackResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DequipEmotePackRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DequipEmotePackResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EquipEmotePackRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_emote_v1_types_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EquipEmotePackResponse); 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_emote_v1_types_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 18,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_emote_v1_types_proto_goTypes,
+ DependencyIndexes: file_emote_v1_types_proto_depIdxs,
+ MessageInfos: file_emote_v1_types_proto_msgTypes,
+ }.Build()
+ File_emote_v1_types_proto = out.File
+ file_emote_v1_types_proto_rawDesc = nil
+ file_emote_v1_types_proto_goTypes = nil
+ file_emote_v1_types_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/harmonytypes/v1/types.pb.go b/vendor/github.com/harmony-development/shibshib/gen/harmonytypes/v1/types.pb.go
new file mode 100644
index 00000000..d4d6b07a
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/harmonytypes/v1/types.pb.go
@@ -0,0 +1,754 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: harmonytypes/v1/types.proto
+
+package harmonytypesv1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ descriptorpb "google.golang.org/protobuf/types/descriptorpb"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// The position
+type ItemPosition_Position int32
+
+const (
+ // The position is before the item
+ ItemPosition_POSITION_BEFORE_UNSPECIFIED ItemPosition_Position = 0
+ // The position is after the item
+ ItemPosition_POSITION_AFTER ItemPosition_Position = 1
+)
+
+// Enum value maps for ItemPosition_Position.
+var (
+ ItemPosition_Position_name = map[int32]string{
+ 0: "POSITION_BEFORE_UNSPECIFIED",
+ 1: "POSITION_AFTER",
+ }
+ ItemPosition_Position_value = map[string]int32{
+ "POSITION_BEFORE_UNSPECIFIED": 0,
+ "POSITION_AFTER": 1,
+ }
+)
+
+func (x ItemPosition_Position) Enum() *ItemPosition_Position {
+ p := new(ItemPosition_Position)
+ *p = x
+ return p
+}
+
+func (x ItemPosition_Position) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (ItemPosition_Position) Descriptor() protoreflect.EnumDescriptor {
+ return file_harmonytypes_v1_types_proto_enumTypes[0].Descriptor()
+}
+
+func (ItemPosition_Position) Type() protoreflect.EnumType {
+ return &file_harmonytypes_v1_types_proto_enumTypes[0]
+}
+
+func (x ItemPosition_Position) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use ItemPosition_Position.Descriptor instead.
+func (ItemPosition_Position) EnumDescriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{6, 0}
+}
+
+// Metadata for methods. These are set in individual RPC endpoints and are
+// typically used by servers.
+type HarmonyMethodMetadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // whether the method requires authentication.
+ RequiresAuthentication bool `protobuf:"varint,1,opt,name=requires_authentication,json=requiresAuthentication,proto3" json:"requires_authentication,omitempty"`
+ // whether the method allows federation or not.
+ RequiresLocal bool `protobuf:"varint,2,opt,name=requires_local,json=requiresLocal,proto3" json:"requires_local,omitempty"`
+ // the permission nodes required to invoke the method.
+ RequiresPermissionNode string `protobuf:"bytes,3,opt,name=requires_permission_node,json=requiresPermissionNode,proto3" json:"requires_permission_node,omitempty"`
+ // whether the method requires owner
+ RequiresOwner bool `protobuf:"varint,4,opt,name=requires_owner,json=requiresOwner,proto3" json:"requires_owner,omitempty"`
+}
+
+func (x *HarmonyMethodMetadata) Reset() {
+ *x = HarmonyMethodMetadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_harmonytypes_v1_types_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HarmonyMethodMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HarmonyMethodMetadata) ProtoMessage() {}
+
+func (x *HarmonyMethodMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_harmonytypes_v1_types_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 HarmonyMethodMetadata.ProtoReflect.Descriptor instead.
+func (*HarmonyMethodMetadata) Descriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *HarmonyMethodMetadata) GetRequiresAuthentication() bool {
+ if x != nil {
+ return x.RequiresAuthentication
+ }
+ return false
+}
+
+func (x *HarmonyMethodMetadata) GetRequiresLocal() bool {
+ if x != nil {
+ return x.RequiresLocal
+ }
+ return false
+}
+
+func (x *HarmonyMethodMetadata) GetRequiresPermissionNode() string {
+ if x != nil {
+ return x.RequiresPermissionNode
+ }
+ return ""
+}
+
+func (x *HarmonyMethodMetadata) GetRequiresOwner() bool {
+ if x != nil {
+ return x.RequiresOwner
+ }
+ return false
+}
+
+// Anything holds anything
+type Anything struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Kind is the kind of the message
+ Kind string `protobuf:"bytes,1,opt,name=kind,proto3" json:"kind,omitempty"`
+ // Body is the serialised bytes
+ Body []byte `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"`
+}
+
+func (x *Anything) Reset() {
+ *x = Anything{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_harmonytypes_v1_types_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Anything) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Anything) ProtoMessage() {}
+
+func (x *Anything) ProtoReflect() protoreflect.Message {
+ mi := &file_harmonytypes_v1_types_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 Anything.ProtoReflect.Descriptor instead.
+func (*Anything) Descriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *Anything) GetKind() string {
+ if x != nil {
+ return x.Kind
+ }
+ return ""
+}
+
+func (x *Anything) GetBody() []byte {
+ if x != nil {
+ return x.Body
+ }
+ return nil
+}
+
+// Metadata type used by many messages.
+type Metadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Kind of this metadata.
+ Kind string `protobuf:"bytes,1,opt,name=kind,proto3" json:"kind,omitempty"`
+ // A map containing information.
+ Extension map[string]*Anything `protobuf:"bytes,2,rep,name=extension,proto3" json:"extension,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *Metadata) Reset() {
+ *x = Metadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_harmonytypes_v1_types_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Metadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Metadata) ProtoMessage() {}
+
+func (x *Metadata) ProtoReflect() protoreflect.Message {
+ mi := &file_harmonytypes_v1_types_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 Metadata.ProtoReflect.Descriptor instead.
+func (*Metadata) Descriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *Metadata) GetKind() string {
+ if x != nil {
+ return x.Kind
+ }
+ return ""
+}
+
+func (x *Metadata) GetExtension() map[string]*Anything {
+ if x != nil {
+ return x.Extension
+ }
+ return nil
+}
+
+// Error type that will be returned by servers.
+type Error struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The identifier of this error, can be used as an i18n key.
+ Identifier string `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
+ // A (usually english) human message for this error.
+ HumanMessage string `protobuf:"bytes,2,opt,name=human_message,json=humanMessage,proto3" json:"human_message,omitempty"`
+ // More details about this message. Is dependent on the endpoint.
+ MoreDetails []byte `protobuf:"bytes,3,opt,name=more_details,json=moreDetails,proto3" json:"more_details,omitempty"`
+}
+
+func (x *Error) Reset() {
+ *x = Error{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_harmonytypes_v1_types_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Error) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Error) ProtoMessage() {}
+
+func (x *Error) ProtoReflect() protoreflect.Message {
+ mi := &file_harmonytypes_v1_types_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 Error.ProtoReflect.Descriptor instead.
+func (*Error) Descriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *Error) GetIdentifier() string {
+ if x != nil {
+ return x.Identifier
+ }
+ return ""
+}
+
+func (x *Error) GetHumanMessage() string {
+ if x != nil {
+ return x.HumanMessage
+ }
+ return ""
+}
+
+func (x *Error) GetMoreDetails() []byte {
+ if x != nil {
+ return x.MoreDetails
+ }
+ return nil
+}
+
+// Token that will be used for authentication.
+type Token struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Ed25519 signature of the following serialized protobuf data, signed
+ // with a private key. Which private key used to sign will be described
+ // in the documentation.
+ //
+ // Has to be 64 bytes long, otherwise it will be rejected.
+ Sig []byte `protobuf:"bytes,1,opt,name=sig,proto3" json:"sig,omitempty"`
+ // Serialized protobuf data.
+ // The protobuf type of this serialized data is dependent on the API endpoint
+ // used.
+ Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+}
+
+func (x *Token) Reset() {
+ *x = Token{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_harmonytypes_v1_types_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Token) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Token) ProtoMessage() {}
+
+func (x *Token) ProtoReflect() protoreflect.Message {
+ mi := &file_harmonytypes_v1_types_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 Token.ProtoReflect.Descriptor instead.
+func (*Token) Descriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *Token) GetSig() []byte {
+ if x != nil {
+ return x.Sig
+ }
+ return nil
+}
+
+func (x *Token) GetData() []byte {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+// An empty message
+type Empty struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Empty) Reset() {
+ *x = Empty{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_harmonytypes_v1_types_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Empty) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Empty) ProtoMessage() {}
+
+func (x *Empty) ProtoReflect() protoreflect.Message {
+ mi := &file_harmonytypes_v1_types_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 Empty.ProtoReflect.Descriptor instead.
+func (*Empty) Descriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{5}
+}
+
+// An object representing an item position between two other items.
+type ItemPosition struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The ID of the item the position is relative to
+ ItemId uint64 `protobuf:"varint,1,opt,name=item_id,json=itemId,proto3" json:"item_id,omitempty"`
+ // Whether the position is before or after the given ID
+ Position ItemPosition_Position `protobuf:"varint,2,opt,name=position,proto3,enum=protocol.harmonytypes.v1.ItemPosition_Position" json:"position,omitempty"`
+}
+
+func (x *ItemPosition) Reset() {
+ *x = ItemPosition{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_harmonytypes_v1_types_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ItemPosition) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ItemPosition) ProtoMessage() {}
+
+func (x *ItemPosition) ProtoReflect() protoreflect.Message {
+ mi := &file_harmonytypes_v1_types_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 ItemPosition.ProtoReflect.Descriptor instead.
+func (*ItemPosition) Descriptor() ([]byte, []int) {
+ return file_harmonytypes_v1_types_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *ItemPosition) GetItemId() uint64 {
+ if x != nil {
+ return x.ItemId
+ }
+ return 0
+}
+
+func (x *ItemPosition) GetPosition() ItemPosition_Position {
+ if x != nil {
+ return x.Position
+ }
+ return ItemPosition_POSITION_BEFORE_UNSPECIFIED
+}
+
+var file_harmonytypes_v1_types_proto_extTypes = []protoimpl.ExtensionInfo{
+ {
+ ExtendedType: (*descriptorpb.MethodOptions)(nil),
+ ExtensionType: (*HarmonyMethodMetadata)(nil),
+ Field: 1091,
+ Name: "protocol.harmonytypes.v1.metadata",
+ Tag: "bytes,1091,opt,name=metadata",
+ Filename: "harmonytypes/v1/types.proto",
+ },
+}
+
+// Extension fields to descriptorpb.MethodOptions.
+var (
+ // Harmony method metadata.
+ //
+ // optional protocol.harmonytypes.v1.HarmonyMethodMetadata metadata = 1091;
+ E_Metadata = &file_harmonytypes_v1_types_proto_extTypes[0]
+)
+
+var File_harmonytypes_v1_types_proto protoreflect.FileDescriptor
+
+var file_harmonytypes_v1_types_proto_rawDesc = []byte{
+ 0x0a, 0x1b, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76,
+ 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xd8, 0x01, 0x0a, 0x15, 0x48, 0x61,
+ 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x64,
+ 0x61, 0x74, 0x61, 0x12, 0x37, 0x0a, 0x17, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f,
+ 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x41, 0x75,
+ 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e,
+ 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x4c, 0x6f,
+ 0x63, 0x61, 0x6c, 0x12, 0x38, 0x0a, 0x18, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f,
+ 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x50,
+ 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a,
+ 0x0e, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x4f,
+ 0x77, 0x6e, 0x65, 0x72, 0x22, 0x32, 0x0a, 0x08, 0x41, 0x6e, 0x79, 0x74, 0x68, 0x69, 0x6e, 0x67,
+ 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+ 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0xd1, 0x01, 0x0a, 0x08, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x4f, 0x0a, 0x09, 0x65, 0x78, 0x74,
+ 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
+ 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x60, 0x0a, 0x0e, 0x45, 0x78,
+ 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 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, 0x38,
+ 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79,
+ 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6e, 0x79, 0x74, 0x68, 0x69, 0x6e,
+ 0x67, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x6f, 0x0a, 0x05,
+ 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66,
+ 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74,
+ 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x75,
+ 0x6d, 0x61, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x6f,
+ 0x72, 0x65, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
+ 0x52, 0x0b, 0x6d, 0x6f, 0x72, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x2d, 0x0a,
+ 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x69, 0x67, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x52, 0x03, 0x73, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x07, 0x0a, 0x05,
+ 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xb5, 0x01, 0x0a, 0x0c, 0x49, 0x74, 0x65, 0x6d, 0x50, 0x6f,
+ 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x74, 0x65, 0x6d, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x69, 0x74, 0x65, 0x6d, 0x49, 0x64, 0x12,
+ 0x4b, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x2f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72,
+ 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x74, 0x65,
+ 0x6d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69,
+ 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3f, 0x0a, 0x08,
+ 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x4f, 0x53, 0x49,
+ 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x42, 0x45, 0x46, 0x4f, 0x52, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
+ 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x4f, 0x53,
+ 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x46, 0x54, 0x45, 0x52, 0x10, 0x01, 0x3a, 0x6c, 0x0a,
+ 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xc3, 0x08, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x61, 0x72, 0x6d,
+ 0x6f, 0x6e, 0x79, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0xf8, 0x01, 0x0a, 0x1c,
+ 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x68, 0x61, 0x72,
+ 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x54, 0x79,
+ 0x70, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4a, 0x67, 0x69, 0x74, 0x68,
+ 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64,
+ 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73,
+ 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x48, 0x58, 0xaa, 0x02, 0x18, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x48, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74,
+ 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x18, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x5c, 0x48, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x5c,
+ 0x56, 0x31, 0xe2, 0x02, 0x24, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x48, 0x61,
+ 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50,
+ 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x1a, 0x50, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x48, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70,
+ 0x65, 0x73, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_harmonytypes_v1_types_proto_rawDescOnce sync.Once
+ file_harmonytypes_v1_types_proto_rawDescData = file_harmonytypes_v1_types_proto_rawDesc
+)
+
+func file_harmonytypes_v1_types_proto_rawDescGZIP() []byte {
+ file_harmonytypes_v1_types_proto_rawDescOnce.Do(func() {
+ file_harmonytypes_v1_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_harmonytypes_v1_types_proto_rawDescData)
+ })
+ return file_harmonytypes_v1_types_proto_rawDescData
+}
+
+var file_harmonytypes_v1_types_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_harmonytypes_v1_types_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
+var file_harmonytypes_v1_types_proto_goTypes = []interface{}{
+ (ItemPosition_Position)(0), // 0: protocol.harmonytypes.v1.ItemPosition.Position
+ (*HarmonyMethodMetadata)(nil), // 1: protocol.harmonytypes.v1.HarmonyMethodMetadata
+ (*Anything)(nil), // 2: protocol.harmonytypes.v1.Anything
+ (*Metadata)(nil), // 3: protocol.harmonytypes.v1.Metadata
+ (*Error)(nil), // 4: protocol.harmonytypes.v1.Error
+ (*Token)(nil), // 5: protocol.harmonytypes.v1.Token
+ (*Empty)(nil), // 6: protocol.harmonytypes.v1.Empty
+ (*ItemPosition)(nil), // 7: protocol.harmonytypes.v1.ItemPosition
+ nil, // 8: protocol.harmonytypes.v1.Metadata.ExtensionEntry
+ (*descriptorpb.MethodOptions)(nil), // 9: google.protobuf.MethodOptions
+}
+var file_harmonytypes_v1_types_proto_depIdxs = []int32{
+ 8, // 0: protocol.harmonytypes.v1.Metadata.extension:type_name -> protocol.harmonytypes.v1.Metadata.ExtensionEntry
+ 0, // 1: protocol.harmonytypes.v1.ItemPosition.position:type_name -> protocol.harmonytypes.v1.ItemPosition.Position
+ 2, // 2: protocol.harmonytypes.v1.Metadata.ExtensionEntry.value:type_name -> protocol.harmonytypes.v1.Anything
+ 9, // 3: protocol.harmonytypes.v1.metadata:extendee -> google.protobuf.MethodOptions
+ 1, // 4: protocol.harmonytypes.v1.metadata:type_name -> protocol.harmonytypes.v1.HarmonyMethodMetadata
+ 5, // [5:5] is the sub-list for method output_type
+ 5, // [5:5] is the sub-list for method input_type
+ 4, // [4:5] is the sub-list for extension type_name
+ 3, // [3:4] is the sub-list for extension extendee
+ 0, // [0:3] is the sub-list for field type_name
+}
+
+func init() { file_harmonytypes_v1_types_proto_init() }
+func file_harmonytypes_v1_types_proto_init() {
+ if File_harmonytypes_v1_types_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_harmonytypes_v1_types_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HarmonyMethodMetadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_harmonytypes_v1_types_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Anything); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_harmonytypes_v1_types_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Metadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_harmonytypes_v1_types_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Error); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_harmonytypes_v1_types_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Token); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_harmonytypes_v1_types_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Empty); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_harmonytypes_v1_types_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ItemPosition); 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_harmonytypes_v1_types_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 8,
+ NumExtensions: 1,
+ NumServices: 0,
+ },
+ GoTypes: file_harmonytypes_v1_types_proto_goTypes,
+ DependencyIndexes: file_harmonytypes_v1_types_proto_depIdxs,
+ EnumInfos: file_harmonytypes_v1_types_proto_enumTypes,
+ MessageInfos: file_harmonytypes_v1_types_proto_msgTypes,
+ ExtensionInfos: file_harmonytypes_v1_types_proto_extTypes,
+ }.Build()
+ File_harmonytypes_v1_types_proto = out.File
+ file_harmonytypes_v1_types_proto_rawDesc = nil
+ file_harmonytypes_v1_types_proto_goTypes = nil
+ file_harmonytypes_v1_types_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile.pb.go b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile.pb.go
new file mode 100644
index 00000000..1f13eeb2
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile.pb.go
@@ -0,0 +1,130 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: profile/v1/profile.proto
+
+package profilev1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ _ "github.com/harmony-development/shibshib/gen/harmonytypes/v1"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+)
+
+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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+var File_profile_v1_profile_proto protoreflect.FileDescriptor
+
+var file_profile_v1_profile_proto_rawDesc = []byte{
+ 0x0a, 0x18, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x1a,
+ 0x1b, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x76, 0x31,
+ 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x32, 0xb1, 0x03, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x64, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x50, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x6d, 0x0a,
+ 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x29,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x12, 0x64, 0x0a, 0x0a,
+ 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61, 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31,
+ 0x2e, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44,
+ 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02,
+ 0x08, 0x01, 0x12, 0x64, 0x0a, 0x0a, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61,
+ 0x12, 0x26, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74,
+ 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53,
+ 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x05, 0x9a, 0x44, 0x02, 0x08, 0x01, 0x42, 0xd7, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70,
+ 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65,
+ 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x70, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x50, 0x58, 0xaa, 0x02, 0x13, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e,
+ 0x56, 0x31, 0xca, 0x02, 0x13, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x50, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x50, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x5c, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47,
+ 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x3a,
+ 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var file_profile_v1_profile_proto_goTypes = []interface{}{
+ (*GetProfileRequest)(nil), // 0: protocol.profile.v1.GetProfileRequest
+ (*UpdateProfileRequest)(nil), // 1: protocol.profile.v1.UpdateProfileRequest
+ (*GetAppDataRequest)(nil), // 2: protocol.profile.v1.GetAppDataRequest
+ (*SetAppDataRequest)(nil), // 3: protocol.profile.v1.SetAppDataRequest
+ (*GetProfileResponse)(nil), // 4: protocol.profile.v1.GetProfileResponse
+ (*UpdateProfileResponse)(nil), // 5: protocol.profile.v1.UpdateProfileResponse
+ (*GetAppDataResponse)(nil), // 6: protocol.profile.v1.GetAppDataResponse
+ (*SetAppDataResponse)(nil), // 7: protocol.profile.v1.SetAppDataResponse
+}
+var file_profile_v1_profile_proto_depIdxs = []int32{
+ 0, // 0: protocol.profile.v1.ProfileService.GetProfile:input_type -> protocol.profile.v1.GetProfileRequest
+ 1, // 1: protocol.profile.v1.ProfileService.UpdateProfile:input_type -> protocol.profile.v1.UpdateProfileRequest
+ 2, // 2: protocol.profile.v1.ProfileService.GetAppData:input_type -> protocol.profile.v1.GetAppDataRequest
+ 3, // 3: protocol.profile.v1.ProfileService.SetAppData:input_type -> protocol.profile.v1.SetAppDataRequest
+ 4, // 4: protocol.profile.v1.ProfileService.GetProfile:output_type -> protocol.profile.v1.GetProfileResponse
+ 5, // 5: protocol.profile.v1.ProfileService.UpdateProfile:output_type -> protocol.profile.v1.UpdateProfileResponse
+ 6, // 6: protocol.profile.v1.ProfileService.GetAppData:output_type -> protocol.profile.v1.GetAppDataResponse
+ 7, // 7: protocol.profile.v1.ProfileService.SetAppData:output_type -> protocol.profile.v1.SetAppDataResponse
+ 4, // [4:8] is the sub-list for method output_type
+ 0, // [0:4] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_profile_v1_profile_proto_init() }
+func file_profile_v1_profile_proto_init() {
+ if File_profile_v1_profile_proto != nil {
+ return
+ }
+ file_profile_v1_types_proto_init()
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_profile_v1_profile_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 0,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_profile_v1_profile_proto_goTypes,
+ DependencyIndexes: file_profile_v1_profile_proto_depIdxs,
+ }.Build()
+ File_profile_v1_profile_proto = out.File
+ file_profile_v1_profile_proto_rawDesc = nil
+ file_profile_v1_profile_proto_goTypes = nil
+ file_profile_v1_profile_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile_hrpc_client.pb.go b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile_hrpc_client.pb.go
new file mode 100644
index 00000000..e6ac6b3a
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/profile_hrpc_client.pb.go
@@ -0,0 +1,244 @@
+// Code generated by protoc-gen-go-hrpc. DO NOT EDIT.
+
+package profilev1
+
+import (
+ bytes "bytes"
+ context "context"
+ proto "google.golang.org/protobuf/proto"
+ ioutil "io/ioutil"
+ http "net/http"
+ httptest "net/http/httptest"
+)
+
+type ProfileServiceClient interface {
+ // Gets a user's profile.
+ GetProfile(context.Context, *GetProfileRequest) (*GetProfileResponse, error)
+ // Updates the user's profile.
+ UpdateProfile(context.Context, *UpdateProfileRequest) (*UpdateProfileResponse, error)
+ // Gets app data for a user (this can be used to store user preferences which
+ // is synchronized across devices).
+ GetAppData(context.Context, *GetAppDataRequest) (*GetAppDataResponse, error)
+ // Sets the app data for a user.
+ SetAppData(context.Context, *SetAppDataRequest) (*SetAppDataResponse, error)
+}
+
+type HTTPProfileServiceClient struct {
+ Client http.Client
+ BaseURL string
+ WebsocketProto string
+ WebsocketHost string
+ Header http.Header
+}
+
+func (client *HTTPProfileServiceClient) GetProfile(req *GetProfileRequest) (*GetProfileResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.profile.v1.ProfileService/GetProfile", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetProfileResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPProfileServiceClient) UpdateProfile(req *UpdateProfileRequest) (*UpdateProfileResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.profile.v1.ProfileService/UpdateProfile", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateProfileResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPProfileServiceClient) GetAppData(req *GetAppDataRequest) (*GetAppDataResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.profile.v1.ProfileService/GetAppData", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetAppDataResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPProfileServiceClient) SetAppData(req *SetAppDataRequest) (*SetAppDataResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ hreq, err := http.NewRequest("POST", client.BaseURL+"/protocol.profile.v1.ProfileService/SetAppData", reader)
+ if err != nil {
+ return nil, err
+ }
+ for k, v := range client.Header {
+ hreq.Header[k] = v
+ }
+ hreq.Header.Add("content-type", "application/hrpc")
+ resp, err := client.Client.Do(hreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &SetAppDataResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+
+type HTTPTestProfileServiceClient struct {
+ Client interface {
+ Test(*http.Request, ...int) (*http.Response, error)
+ }
+}
+
+func (client *HTTPTestProfileServiceClient) GetProfile(req *GetProfileRequest) (*GetProfileResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.profile.v1.ProfileService/GetProfile", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetProfileResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestProfileServiceClient) UpdateProfile(req *UpdateProfileRequest) (*UpdateProfileResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.profile.v1.ProfileService/UpdateProfile", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &UpdateProfileResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestProfileServiceClient) GetAppData(req *GetAppDataRequest) (*GetAppDataResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.profile.v1.ProfileService/GetAppData", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &GetAppDataResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
+func (client *HTTPTestProfileServiceClient) SetAppData(req *SetAppDataRequest) (*SetAppDataResponse, error) {
+ data, marshalErr := proto.Marshal(req)
+ if marshalErr != nil {
+ return nil, marshalErr
+ }
+ reader := bytes.NewReader(data)
+ testreq := httptest.NewRequest("POST", "/protocol.profile.v1.ProfileService/SetAppData", reader)
+ resp, err := client.Client.Test(testreq)
+ if err != nil {
+ return nil, err
+ }
+ body, err := ioutil.ReadAll(resp.Body)
+ if err != nil {
+ return nil, err
+ }
+ ret := &SetAppDataResponse{}
+ unmarshalErr := proto.Unmarshal(body, ret)
+ if unmarshalErr != nil {
+ return nil, unmarshalErr
+ }
+ return ret, nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/profile/v1/stream.pb.go b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/stream.pb.go
new file mode 100644
index 00000000..bcd327ee
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/stream.pb.go
@@ -0,0 +1,316 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: profile/v1/stream.proto
+
+package profilev1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// Event sent when a user's profile is updated.
+//
+// Servers should sent this event only to users that can "see" (eg. they are
+// in the same guild) the user this event was triggered by.
+type ProfileUpdated struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // User ID of the user that had it's profile updated.
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ // New username for this user.
+ NewUsername *string `protobuf:"bytes,2,opt,name=new_username,json=newUsername,proto3,oneof" json:"new_username,omitempty"`
+ // New avatar for this user.
+ NewAvatar *string `protobuf:"bytes,3,opt,name=new_avatar,json=newAvatar,proto3,oneof" json:"new_avatar,omitempty"`
+ // New status for this user.
+ NewStatus *UserStatus `protobuf:"varint,4,opt,name=new_status,json=newStatus,proto3,enum=protocol.profile.v1.UserStatus,oneof" json:"new_status,omitempty"`
+ // New is bot or not for this user.
+ NewIsBot *bool `protobuf:"varint,5,opt,name=new_is_bot,json=newIsBot,proto3,oneof" json:"new_is_bot,omitempty"`
+}
+
+func (x *ProfileUpdated) Reset() {
+ *x = ProfileUpdated{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_stream_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ProfileUpdated) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ProfileUpdated) ProtoMessage() {}
+
+func (x *ProfileUpdated) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_stream_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 ProfileUpdated.ProtoReflect.Descriptor instead.
+func (*ProfileUpdated) Descriptor() ([]byte, []int) {
+ return file_profile_v1_stream_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *ProfileUpdated) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+func (x *ProfileUpdated) GetNewUsername() string {
+ if x != nil && x.NewUsername != nil {
+ return *x.NewUsername
+ }
+ return ""
+}
+
+func (x *ProfileUpdated) GetNewAvatar() string {
+ if x != nil && x.NewAvatar != nil {
+ return *x.NewAvatar
+ }
+ return ""
+}
+
+func (x *ProfileUpdated) GetNewStatus() UserStatus {
+ if x != nil && x.NewStatus != nil {
+ return *x.NewStatus
+ }
+ return UserStatus_USER_STATUS_OFFLINE_UNSPECIFIED
+}
+
+func (x *ProfileUpdated) GetNewIsBot() bool {
+ if x != nil && x.NewIsBot != nil {
+ return *x.NewIsBot
+ }
+ return false
+}
+
+// Describes an emote service event.
+type StreamEvent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The event type.
+ //
+ // Types that are assignable to Event:
+ // *StreamEvent_ProfileUpdated
+ Event isStreamEvent_Event `protobuf_oneof:"event"`
+}
+
+func (x *StreamEvent) Reset() {
+ *x = StreamEvent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_stream_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamEvent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamEvent) ProtoMessage() {}
+
+func (x *StreamEvent) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_stream_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 StreamEvent.ProtoReflect.Descriptor instead.
+func (*StreamEvent) Descriptor() ([]byte, []int) {
+ return file_profile_v1_stream_proto_rawDescGZIP(), []int{1}
+}
+
+func (m *StreamEvent) GetEvent() isStreamEvent_Event {
+ if m != nil {
+ return m.Event
+ }
+ return nil
+}
+
+func (x *StreamEvent) GetProfileUpdated() *ProfileUpdated {
+ if x, ok := x.GetEvent().(*StreamEvent_ProfileUpdated); ok {
+ return x.ProfileUpdated
+ }
+ return nil
+}
+
+type isStreamEvent_Event interface {
+ isStreamEvent_Event()
+}
+
+type StreamEvent_ProfileUpdated struct {
+ // Send the profile updated event.
+ ProfileUpdated *ProfileUpdated `protobuf:"bytes,14,opt,name=profile_updated,json=profileUpdated,proto3,oneof"`
+}
+
+func (*StreamEvent_ProfileUpdated) isStreamEvent_Event() {}
+
+var File_profile_v1_stream_proto protoreflect.FileDescriptor
+
+var file_profile_v1_stream_proto_rawDesc = []byte{
+ 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x16,
+ 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9b, 0x02, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65,
+ 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72,
+ 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0c, 0x6e, 0x65, 0x77, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x55,
+ 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x6e, 0x65,
+ 0x77, 0x5f, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01,
+ 0x52, 0x09, 0x6e, 0x65, 0x77, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x88, 0x01, 0x01, 0x12, 0x43,
+ 0x0a, 0x0a, 0x6e, 0x65, 0x77, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x48, 0x02, 0x52, 0x09, 0x6e, 0x65, 0x77, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
+ 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x0a, 0x6e, 0x65, 0x77, 0x5f, 0x69, 0x73, 0x5f, 0x62, 0x6f,
+ 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x03, 0x52, 0x08, 0x6e, 0x65, 0x77, 0x49, 0x73,
+ 0x42, 0x6f, 0x74, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x75,
+ 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6e, 0x65, 0x77, 0x5f,
+ 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x69, 0x73,
+ 0x5f, 0x62, 0x6f, 0x74, 0x22, 0x66, 0x0a, 0x0b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x45, 0x76,
+ 0x65, 0x6e, 0x74, 0x12, 0x4e, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e,
+ 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x64, 0x48, 0x00, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x42, 0xd6, 0x01, 0x0a,
+ 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0b, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d,
+ 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x2d, 0x64, 0x65, 0x76, 0x65,
+ 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69, 0x62, 0x73, 0x68, 0x69, 0x62,
+ 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x3b,
+ 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x50, 0x58, 0xaa,
+ 0x02, 0x13, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
+ 0x5c, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x1f, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5c, 0x56,
+ 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x15,
+ 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_profile_v1_stream_proto_rawDescOnce sync.Once
+ file_profile_v1_stream_proto_rawDescData = file_profile_v1_stream_proto_rawDesc
+)
+
+func file_profile_v1_stream_proto_rawDescGZIP() []byte {
+ file_profile_v1_stream_proto_rawDescOnce.Do(func() {
+ file_profile_v1_stream_proto_rawDescData = protoimpl.X.CompressGZIP(file_profile_v1_stream_proto_rawDescData)
+ })
+ return file_profile_v1_stream_proto_rawDescData
+}
+
+var file_profile_v1_stream_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_profile_v1_stream_proto_goTypes = []interface{}{
+ (*ProfileUpdated)(nil), // 0: protocol.profile.v1.ProfileUpdated
+ (*StreamEvent)(nil), // 1: protocol.profile.v1.StreamEvent
+ (UserStatus)(0), // 2: protocol.profile.v1.UserStatus
+}
+var file_profile_v1_stream_proto_depIdxs = []int32{
+ 2, // 0: protocol.profile.v1.ProfileUpdated.new_status:type_name -> protocol.profile.v1.UserStatus
+ 0, // 1: protocol.profile.v1.StreamEvent.profile_updated:type_name -> protocol.profile.v1.ProfileUpdated
+ 2, // [2:2] is the sub-list for method output_type
+ 2, // [2:2] is the sub-list for method input_type
+ 2, // [2:2] is the sub-list for extension type_name
+ 2, // [2:2] is the sub-list for extension extendee
+ 0, // [0:2] is the sub-list for field type_name
+}
+
+func init() { file_profile_v1_stream_proto_init() }
+func file_profile_v1_stream_proto_init() {
+ if File_profile_v1_stream_proto != nil {
+ return
+ }
+ file_profile_v1_types_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_profile_v1_stream_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ProfileUpdated); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_stream_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamEvent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_profile_v1_stream_proto_msgTypes[0].OneofWrappers = []interface{}{}
+ file_profile_v1_stream_proto_msgTypes[1].OneofWrappers = []interface{}{
+ (*StreamEvent_ProfileUpdated)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_profile_v1_stream_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_profile_v1_stream_proto_goTypes,
+ DependencyIndexes: file_profile_v1_stream_proto_depIdxs,
+ MessageInfos: file_profile_v1_stream_proto_msgTypes,
+ }.Build()
+ File_profile_v1_stream_proto = out.File
+ file_profile_v1_stream_proto_rawDesc = nil
+ file_profile_v1_stream_proto_goTypes = nil
+ file_profile_v1_stream_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/gen/profile/v1/types.pb.go b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/types.pb.go
new file mode 100644
index 00000000..60954c67
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/gen/profile/v1/types.pb.go
@@ -0,0 +1,835 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.23.0
+// protoc v3.17.3
+// source: profile/v1/types.proto
+
+package profilev1
+
+import (
+ proto "github.com/golang/protobuf/proto"
+ 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)
+)
+
+// This is a compile-time assertion that a sufficiently up-to-date version
+// of the legacy proto package is being used.
+const _ = proto.ProtoPackageIsVersion4
+
+// The possible statuses a user can have.
+type UserStatus int32
+
+const (
+ // User is offline (not connected to the server).
+ UserStatus_USER_STATUS_OFFLINE_UNSPECIFIED UserStatus = 0
+ // User is online (this is the default value if ommitted).
+ UserStatus_USER_STATUS_ONLINE UserStatus = 1
+ // User is away.
+ UserStatus_USER_STATUS_IDLE UserStatus = 2
+ // User does not want to be disturbed.
+ UserStatus_USER_STATUS_DO_NOT_DISTURB UserStatus = 3
+ // User is on mobile.
+ UserStatus_USER_STATUS_MOBILE UserStatus = 4
+ // User is streaming
+ UserStatus_USER_STATUS_STREAMING UserStatus = 5
+)
+
+// Enum value maps for UserStatus.
+var (
+ UserStatus_name = map[int32]string{
+ 0: "USER_STATUS_OFFLINE_UNSPECIFIED",
+ 1: "USER_STATUS_ONLINE",
+ 2: "USER_STATUS_IDLE",
+ 3: "USER_STATUS_DO_NOT_DISTURB",
+ 4: "USER_STATUS_MOBILE",
+ 5: "USER_STATUS_STREAMING",
+ }
+ UserStatus_value = map[string]int32{
+ "USER_STATUS_OFFLINE_UNSPECIFIED": 0,
+ "USER_STATUS_ONLINE": 1,
+ "USER_STATUS_IDLE": 2,
+ "USER_STATUS_DO_NOT_DISTURB": 3,
+ "USER_STATUS_MOBILE": 4,
+ "USER_STATUS_STREAMING": 5,
+ }
+)
+
+func (x UserStatus) Enum() *UserStatus {
+ p := new(UserStatus)
+ *p = x
+ return p
+}
+
+func (x UserStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (UserStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_profile_v1_types_proto_enumTypes[0].Descriptor()
+}
+
+func (UserStatus) Type() protoreflect.EnumType {
+ return &file_profile_v1_types_proto_enumTypes[0]
+}
+
+func (x UserStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use UserStatus.Descriptor instead.
+func (UserStatus) EnumDescriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{0}
+}
+
+// Data for a single profile, without the user's ID.
+type Profile struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the name of the user.
+ UserName string `protobuf:"bytes,1,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
+ // the user's avatar.
+ UserAvatar *string `protobuf:"bytes,2,opt,name=user_avatar,json=userAvatar,proto3,oneof" json:"user_avatar,omitempty"`
+ // the status of the user.
+ UserStatus UserStatus `protobuf:"varint,3,opt,name=user_status,json=userStatus,proto3,enum=protocol.profile.v1.UserStatus" json:"user_status,omitempty"`
+ // whether the user is a bot or not.
+ IsBot bool `protobuf:"varint,4,opt,name=is_bot,json=isBot,proto3" json:"is_bot,omitempty"`
+}
+
+func (x *Profile) Reset() {
+ *x = Profile{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Profile) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Profile) ProtoMessage() {}
+
+func (x *Profile) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_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 Profile.ProtoReflect.Descriptor instead.
+func (*Profile) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Profile) GetUserName() string {
+ if x != nil {
+ return x.UserName
+ }
+ return ""
+}
+
+func (x *Profile) GetUserAvatar() string {
+ if x != nil && x.UserAvatar != nil {
+ return *x.UserAvatar
+ }
+ return ""
+}
+
+func (x *Profile) GetUserStatus() UserStatus {
+ if x != nil {
+ return x.UserStatus
+ }
+ return UserStatus_USER_STATUS_OFFLINE_UNSPECIFIED
+}
+
+func (x *Profile) GetIsBot() bool {
+ if x != nil {
+ return x.IsBot
+ }
+ return false
+}
+
+// Used in `GetProfile` endpoint.
+type GetProfileRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The id of the user to get.
+ UserId uint64 `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+}
+
+func (x *GetProfileRequest) Reset() {
+ *x = GetProfileRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetProfileRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetProfileRequest) ProtoMessage() {}
+
+func (x *GetProfileRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_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 GetProfileRequest.ProtoReflect.Descriptor instead.
+func (*GetProfileRequest) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *GetProfileRequest) GetUserId() uint64 {
+ if x != nil {
+ return x.UserId
+ }
+ return 0
+}
+
+// Used in `GetProfile` endpoint.
+type GetProfileResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The user's profile
+ Profile *Profile `protobuf:"bytes,1,opt,name=profile,proto3" json:"profile,omitempty"`
+}
+
+func (x *GetProfileResponse) Reset() {
+ *x = GetProfileResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetProfileResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetProfileResponse) ProtoMessage() {}
+
+func (x *GetProfileResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_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 GetProfileResponse.ProtoReflect.Descriptor instead.
+func (*GetProfileResponse) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *GetProfileResponse) GetProfile() *Profile {
+ if x != nil {
+ return x.Profile
+ }
+ return nil
+}
+
+// Used in `UpdateProfile` endpoint.
+type UpdateProfileRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // new name of the user.
+ NewUserName *string `protobuf:"bytes,1,opt,name=new_user_name,json=newUserName,proto3,oneof" json:"new_user_name,omitempty"`
+ // new user avatar. The avatar will be removed if the string is empty.
+ NewUserAvatar *string `protobuf:"bytes,2,opt,name=new_user_avatar,json=newUserAvatar,proto3,oneof" json:"new_user_avatar,omitempty"`
+ // new status of the user.
+ NewUserStatus *UserStatus `protobuf:"varint,3,opt,name=new_user_status,json=newUserStatus,proto3,enum=protocol.profile.v1.UserStatus,oneof" json:"new_user_status,omitempty"`
+ // new whether the user is a bot or not.
+ NewIsBot *bool `protobuf:"varint,4,opt,name=new_is_bot,json=newIsBot,proto3,oneof" json:"new_is_bot,omitempty"`
+}
+
+func (x *UpdateProfileRequest) Reset() {
+ *x = UpdateProfileRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateProfileRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateProfileRequest) ProtoMessage() {}
+
+func (x *UpdateProfileRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_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 UpdateProfileRequest.ProtoReflect.Descriptor instead.
+func (*UpdateProfileRequest) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *UpdateProfileRequest) GetNewUserName() string {
+ if x != nil && x.NewUserName != nil {
+ return *x.NewUserName
+ }
+ return ""
+}
+
+func (x *UpdateProfileRequest) GetNewUserAvatar() string {
+ if x != nil && x.NewUserAvatar != nil {
+ return *x.NewUserAvatar
+ }
+ return ""
+}
+
+func (x *UpdateProfileRequest) GetNewUserStatus() UserStatus {
+ if x != nil && x.NewUserStatus != nil {
+ return *x.NewUserStatus
+ }
+ return UserStatus_USER_STATUS_OFFLINE_UNSPECIFIED
+}
+
+func (x *UpdateProfileRequest) GetNewIsBot() bool {
+ if x != nil && x.NewIsBot != nil {
+ return *x.NewIsBot
+ }
+ return false
+}
+
+// Used in `UpdateProfile` endpoint.
+type UpdateProfileResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *UpdateProfileResponse) Reset() {
+ *x = UpdateProfileResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateProfileResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateProfileResponse) ProtoMessage() {}
+
+func (x *UpdateProfileResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_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 UpdateProfileResponse.ProtoReflect.Descriptor instead.
+func (*UpdateProfileResponse) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{4}
+}
+
+// Used in `GetAppData` endpoint.
+type GetAppDataRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the app id.
+ AppId string `protobuf:"bytes,1,opt,name=app_id,json=appId,proto3" json:"app_id,omitempty"`
+}
+
+func (x *GetAppDataRequest) Reset() {
+ *x = GetAppDataRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetAppDataRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetAppDataRequest) ProtoMessage() {}
+
+func (x *GetAppDataRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_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 GetAppDataRequest.ProtoReflect.Descriptor instead.
+func (*GetAppDataRequest) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *GetAppDataRequest) GetAppId() string {
+ if x != nil {
+ return x.AppId
+ }
+ return ""
+}
+
+// Used in `GetAppData` endpoint.
+type GetAppDataResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the app data.
+ AppData []byte `protobuf:"bytes,1,opt,name=app_data,json=appData,proto3" json:"app_data,omitempty"`
+}
+
+func (x *GetAppDataResponse) Reset() {
+ *x = GetAppDataResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetAppDataResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetAppDataResponse) ProtoMessage() {}
+
+func (x *GetAppDataResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_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 GetAppDataResponse.ProtoReflect.Descriptor instead.
+func (*GetAppDataResponse) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *GetAppDataResponse) GetAppData() []byte {
+ if x != nil {
+ return x.AppData
+ }
+ return nil
+}
+
+// Used in `SetAppData` endpoint.
+type SetAppDataRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // the app id.
+ AppId string `protobuf:"bytes,1,opt,name=app_id,json=appId,proto3" json:"app_id,omitempty"`
+ // the app data.
+ AppData []byte `protobuf:"bytes,2,opt,name=app_data,json=appData,proto3" json:"app_data,omitempty"`
+}
+
+func (x *SetAppDataRequest) Reset() {
+ *x = SetAppDataRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetAppDataRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetAppDataRequest) ProtoMessage() {}
+
+func (x *SetAppDataRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_proto_msgTypes[7]
+ 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 SetAppDataRequest.ProtoReflect.Descriptor instead.
+func (*SetAppDataRequest) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *SetAppDataRequest) GetAppId() string {
+ if x != nil {
+ return x.AppId
+ }
+ return ""
+}
+
+func (x *SetAppDataRequest) GetAppData() []byte {
+ if x != nil {
+ return x.AppData
+ }
+ return nil
+}
+
+// Used in `SetAppData` endpoint.
+type SetAppDataResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *SetAppDataResponse) Reset() {
+ *x = SetAppDataResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_profile_v1_types_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetAppDataResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetAppDataResponse) ProtoMessage() {}
+
+func (x *SetAppDataResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_profile_v1_types_proto_msgTypes[8]
+ 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 SetAppDataResponse.ProtoReflect.Descriptor instead.
+func (*SetAppDataResponse) Descriptor() ([]byte, []int) {
+ return file_profile_v1_types_proto_rawDescGZIP(), []int{8}
+}
+
+var File_profile_v1_types_proto protoreflect.FileDescriptor
+
+var file_profile_v1_types_proto_rawDesc = []byte{
+ 0x0a, 0x16, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x79, 0x70,
+ 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
+ 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x22, 0xb5, 0x01,
+ 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65,
+ 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73,
+ 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x61,
+ 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x75,
+ 0x73, 0x65, 0x72, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x88, 0x01, 0x01, 0x12, 0x40, 0x0a, 0x0b,
+ 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15,
+ 0x0a, 0x06, 0x69, 0x73, 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05,
+ 0x69, 0x73, 0x42, 0x6f, 0x74, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x61,
+ 0x76, 0x61, 0x74, 0x61, 0x72, 0x22, 0x2c, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73,
+ 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x75, 0x73, 0x65,
+ 0x72, 0x49, 0x64, 0x22, 0x4c, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x36, 0x0a, 0x07, 0x70, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31,
+ 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x22, 0xa6, 0x02, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0d, 0x6e, 0x65,
+ 0x77, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x00, 0x52, 0x0b, 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65,
+ 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f,
+ 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x0d,
+ 0x6e, 0x65, 0x77, 0x55, 0x73, 0x65, 0x72, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x88, 0x01, 0x01,
+ 0x12, 0x4c, 0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x2e,
+ 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x02, 0x52, 0x0d, 0x6e, 0x65,
+ 0x77, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x88, 0x01, 0x01, 0x12, 0x21,
+ 0x0a, 0x0a, 0x6e, 0x65, 0x77, 0x5f, 0x69, 0x73, 0x5f, 0x62, 0x6f, 0x74, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x08, 0x48, 0x03, 0x52, 0x08, 0x6e, 0x65, 0x77, 0x49, 0x73, 0x42, 0x6f, 0x74, 0x88, 0x01,
+ 0x01, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x75, 0x73, 0x65, 0x72,
+ 0x5f, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x6e, 0x65, 0x77, 0x5f,
+ 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x0d, 0x0a, 0x0b, 0x5f,
+ 0x6e, 0x65, 0x77, 0x5f, 0x69, 0x73, 0x5f, 0x62, 0x6f, 0x74, 0x22, 0x17, 0x0a, 0x15, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74,
+ 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x70, 0x70, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x22,
+ 0x2f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x61, 0x70, 0x70, 0x5f, 0x64, 0x61, 0x74,
+ 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x61, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61,
+ 0x22, 0x45, 0x0a, 0x11, 0x53, 0x65, 0x74, 0x41, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x70, 0x70, 0x5f, 0x69, 0x64, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x70, 0x70, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08,
+ 0x61, 0x70, 0x70, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07,
+ 0x61, 0x70, 0x70, 0x44, 0x61, 0x74, 0x61, 0x22, 0x14, 0x0a, 0x12, 0x53, 0x65, 0x74, 0x41, 0x70,
+ 0x70, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0xb2, 0x01,
+ 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x1f,
+ 0x55, 0x53, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4f, 0x46, 0x46, 0x4c,
+ 0x49, 0x4e, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
+ 0x00, 0x12, 0x16, 0x0a, 0x12, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53,
+ 0x5f, 0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x53, 0x45,
+ 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x49, 0x44, 0x4c, 0x45, 0x10, 0x02, 0x12,
+ 0x1e, 0x0a, 0x1a, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44,
+ 0x4f, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x44, 0x49, 0x53, 0x54, 0x55, 0x52, 0x42, 0x10, 0x03, 0x12,
+ 0x16, 0x0a, 0x12, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4d,
+ 0x4f, 0x42, 0x49, 0x4c, 0x45, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x55, 0x53, 0x45, 0x52, 0x5f,
+ 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x49, 0x4e, 0x47,
+ 0x10, 0x05, 0x42, 0xd5, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x63, 0x6f, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x0a,
+ 0x54, 0x79, 0x70, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x40, 0x67, 0x69,
+ 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79,
+ 0x2d, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x68, 0x69,
+ 0x62, 0x73, 0x68, 0x69, 0x62, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x76, 0x31, 0xa2, 0x02,
+ 0x03, 0x50, 0x50, 0x58, 0xaa, 0x02, 0x13, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2e,
+ 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x13, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5c, 0x56, 0x31,
+ 0xe2, 0x02, 0x1f, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5c, 0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0xea, 0x02, 0x15, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x3a, 0x3a, 0x50,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x33,
+}
+
+var (
+ file_profile_v1_types_proto_rawDescOnce sync.Once
+ file_profile_v1_types_proto_rawDescData = file_profile_v1_types_proto_rawDesc
+)
+
+func file_profile_v1_types_proto_rawDescGZIP() []byte {
+ file_profile_v1_types_proto_rawDescOnce.Do(func() {
+ file_profile_v1_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_profile_v1_types_proto_rawDescData)
+ })
+ return file_profile_v1_types_proto_rawDescData
+}
+
+var file_profile_v1_types_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_profile_v1_types_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
+var file_profile_v1_types_proto_goTypes = []interface{}{
+ (UserStatus)(0), // 0: protocol.profile.v1.UserStatus
+ (*Profile)(nil), // 1: protocol.profile.v1.Profile
+ (*GetProfileRequest)(nil), // 2: protocol.profile.v1.GetProfileRequest
+ (*GetProfileResponse)(nil), // 3: protocol.profile.v1.GetProfileResponse
+ (*UpdateProfileRequest)(nil), // 4: protocol.profile.v1.UpdateProfileRequest
+ (*UpdateProfileResponse)(nil), // 5: protocol.profile.v1.UpdateProfileResponse
+ (*GetAppDataRequest)(nil), // 6: protocol.profile.v1.GetAppDataRequest
+ (*GetAppDataResponse)(nil), // 7: protocol.profile.v1.GetAppDataResponse
+ (*SetAppDataRequest)(nil), // 8: protocol.profile.v1.SetAppDataRequest
+ (*SetAppDataResponse)(nil), // 9: protocol.profile.v1.SetAppDataResponse
+}
+var file_profile_v1_types_proto_depIdxs = []int32{
+ 0, // 0: protocol.profile.v1.Profile.user_status:type_name -> protocol.profile.v1.UserStatus
+ 1, // 1: protocol.profile.v1.GetProfileResponse.profile:type_name -> protocol.profile.v1.Profile
+ 0, // 2: protocol.profile.v1.UpdateProfileRequest.new_user_status:type_name -> protocol.profile.v1.UserStatus
+ 3, // [3:3] is the sub-list for method output_type
+ 3, // [3:3] is the sub-list for method input_type
+ 3, // [3:3] is the sub-list for extension type_name
+ 3, // [3:3] is the sub-list for extension extendee
+ 0, // [0:3] is the sub-list for field type_name
+}
+
+func init() { file_profile_v1_types_proto_init() }
+func file_profile_v1_types_proto_init() {
+ if File_profile_v1_types_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_profile_v1_types_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Profile); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetProfileRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetProfileResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateProfileRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateProfileResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetAppDataRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetAppDataResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetAppDataRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetAppDataResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_profile_v1_types_proto_msgTypes[0].OneofWrappers = []interface{}{}
+ file_profile_v1_types_proto_msgTypes[3].OneofWrappers = []interface{}{}
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_profile_v1_types_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 9,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_profile_v1_types_proto_goTypes,
+ DependencyIndexes: file_profile_v1_types_proto_depIdxs,
+ EnumInfos: file_profile_v1_types_proto_enumTypes,
+ MessageInfos: file_profile_v1_types_proto_msgTypes,
+ }.Build()
+ File_profile_v1_types_proto = out.File
+ file_profile_v1_types_proto_rawDesc = nil
+ file_profile_v1_types_proto_goTypes = nil
+ file_profile_v1_types_proto_depIdxs = nil
+}
diff --git a/vendor/github.com/harmony-development/shibshib/located.go b/vendor/github.com/harmony-development/shibshib/located.go
new file mode 100644
index 00000000..d98fadba
--- /dev/null
+++ b/vendor/github.com/harmony-development/shibshib/located.go
@@ -0,0 +1,10 @@
+package shibshib
+
+import chatv1 "github.com/harmony-development/shibshib/gen/chat/v1"
+
+type LocatedMessage struct {
+ chatv1.MessageWithId
+
+ GuildID uint64
+ ChannelID uint64
+}