// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.36.6 // protoc v6.33.4 // source: post.proto package pluginapiv1 import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" structpb "google.golang.org/protobuf/types/known/structpb" reflect "reflect" sync "sync" unsafe "unsafe" ) 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) ) // PostMetadata contains additional metadata about a post. // Maps to model.PostMetadata in Go. type PostMetadata struct { state protoimpl.MessageState `protogen:"open.v1"` // Embedded content (link previews, etc.) Embeds []*PostEmbed `protobuf:"bytes,1,rep,name=embeds,proto3" json:"embeds,omitempty"` // Emoji reactions on this post Reactions []*Reaction `protobuf:"bytes,2,rep,name=reactions,proto3" json:"reactions,omitempty"` // File attachments Files []*FileInfo `protobuf:"bytes,3,rep,name=files,proto3" json:"files,omitempty"` // Images in the post (URLs to dimensions) Images map[string]*PostImage `protobuf:"bytes,4,rep,name=images,proto3" json:"images,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // Post priority information Priority *PostPriority `protobuf:"bytes,5,opt,name=priority,proto3,oneof" json:"priority,omitempty"` // Acknowledgements from users Acknowledgements []*PostAcknowledgement `protobuf:"bytes,6,rep,name=acknowledgements,proto3" json:"acknowledgements,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PostMetadata) Reset() { *x = PostMetadata{} mi := &file_post_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PostMetadata) String() string { return protoimpl.X.MessageStringOf(x) } func (*PostMetadata) ProtoMessage() {} func (x *PostMetadata) ProtoReflect() protoreflect.Message { mi := &file_post_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PostMetadata.ProtoReflect.Descriptor instead. func (*PostMetadata) Descriptor() ([]byte, []int) { return file_post_proto_rawDescGZIP(), []int{0} } func (x *PostMetadata) GetEmbeds() []*PostEmbed { if x != nil { return x.Embeds } return nil } func (x *PostMetadata) GetReactions() []*Reaction { if x != nil { return x.Reactions } return nil } func (x *PostMetadata) GetFiles() []*FileInfo { if x != nil { return x.Files } return nil } func (x *PostMetadata) GetImages() map[string]*PostImage { if x != nil { return x.Images } return nil } func (x *PostMetadata) GetPriority() *PostPriority { if x != nil { return x.Priority } return nil } func (x *PostMetadata) GetAcknowledgements() []*PostAcknowledgement { if x != nil { return x.Acknowledgements } return nil } // PostEmbed represents embedded content in a post. type PostEmbed struct { state protoimpl.MessageState `protogen:"open.v1"` // The type of embed (e.g., "link", "opengraph", "image") Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` // The URL being embedded Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"` // The embedded data (structure depends on type) Data *structpb.Struct `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PostEmbed) Reset() { *x = PostEmbed{} mi := &file_post_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PostEmbed) String() string { return protoimpl.X.MessageStringOf(x) } func (*PostEmbed) ProtoMessage() {} func (x *PostEmbed) ProtoReflect() protoreflect.Message { mi := &file_post_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PostEmbed.ProtoReflect.Descriptor instead. func (*PostEmbed) Descriptor() ([]byte, []int) { return file_post_proto_rawDescGZIP(), []int{1} } func (x *PostEmbed) GetType() string { if x != nil { return x.Type } return "" } func (x *PostEmbed) GetUrl() string { if x != nil { return x.Url } return "" } func (x *PostEmbed) GetData() *structpb.Struct { if x != nil { return x.Data } return nil } // PostImage represents image dimensions. type PostImage struct { state protoimpl.MessageState `protogen:"open.v1"` Width int32 `protobuf:"varint,1,opt,name=width,proto3" json:"width,omitempty"` Height int32 `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"` Format string `protobuf:"bytes,3,opt,name=format,proto3" json:"format,omitempty"` FrameCount int64 `protobuf:"varint,4,opt,name=frame_count,json=frameCount,proto3" json:"frame_count,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PostImage) Reset() { *x = PostImage{} mi := &file_post_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PostImage) String() string { return protoimpl.X.MessageStringOf(x) } func (*PostImage) ProtoMessage() {} func (x *PostImage) ProtoReflect() protoreflect.Message { mi := &file_post_proto_msgTypes[2] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PostImage.ProtoReflect.Descriptor instead. func (*PostImage) Descriptor() ([]byte, []int) { return file_post_proto_rawDescGZIP(), []int{2} } func (x *PostImage) GetWidth() int32 { if x != nil { return x.Width } return 0 } func (x *PostImage) GetHeight() int32 { if x != nil { return x.Height } return 0 } func (x *PostImage) GetFormat() string { if x != nil { return x.Format } return "" } func (x *PostImage) GetFrameCount() int64 { if x != nil { return x.FrameCount } return 0 } // PostPriority represents priority settings for a post. type PostPriority struct { state protoimpl.MessageState `protogen:"open.v1"` // Priority level (e.g., "urgent") Priority *string `protobuf:"bytes,1,opt,name=priority,proto3,oneof" json:"priority,omitempty"` // Whether acknowledgement was requested RequestedAck *bool `protobuf:"varint,2,opt,name=requested_ack,json=requestedAck,proto3,oneof" json:"requested_ack,omitempty"` // Whether persistent notifications are enabled PersistentNotifications *bool `protobuf:"varint,3,opt,name=persistent_notifications,json=persistentNotifications,proto3,oneof" json:"persistent_notifications,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PostPriority) Reset() { *x = PostPriority{} mi := &file_post_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PostPriority) String() string { return protoimpl.X.MessageStringOf(x) } func (*PostPriority) ProtoMessage() {} func (x *PostPriority) ProtoReflect() protoreflect.Message { mi := &file_post_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PostPriority.ProtoReflect.Descriptor instead. func (*PostPriority) Descriptor() ([]byte, []int) { return file_post_proto_rawDescGZIP(), []int{3} } func (x *PostPriority) GetPriority() string { if x != nil && x.Priority != nil { return *x.Priority } return "" } func (x *PostPriority) GetRequestedAck() bool { if x != nil && x.RequestedAck != nil { return *x.RequestedAck } return false } func (x *PostPriority) GetPersistentNotifications() bool { if x != nil && x.PersistentNotifications != nil { return *x.PersistentNotifications } return false } // PostAcknowledgement represents a user's acknowledgement of a post. type PostAcknowledgement struct { state protoimpl.MessageState `protogen:"open.v1"` UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` PostId string `protobuf:"bytes,2,opt,name=post_id,json=postId,proto3" json:"post_id,omitempty"` AcknowledgedAt int64 `protobuf:"varint,3,opt,name=acknowledged_at,json=acknowledgedAt,proto3" json:"acknowledged_at,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PostAcknowledgement) Reset() { *x = PostAcknowledgement{} mi := &file_post_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PostAcknowledgement) String() string { return protoimpl.X.MessageStringOf(x) } func (*PostAcknowledgement) ProtoMessage() {} func (x *PostAcknowledgement) ProtoReflect() protoreflect.Message { mi := &file_post_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PostAcknowledgement.ProtoReflect.Descriptor instead. func (*PostAcknowledgement) Descriptor() ([]byte, []int) { return file_post_proto_rawDescGZIP(), []int{4} } func (x *PostAcknowledgement) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *PostAcknowledgement) GetPostId() string { if x != nil { return x.PostId } return "" } func (x *PostAcknowledgement) GetAcknowledgedAt() int64 { if x != nil { return x.AcknowledgedAt } return 0 } // Reaction represents a user's emoji reaction to a post. // Maps to model.Reaction in Go. type Reaction struct { state protoimpl.MessageState `protogen:"open.v1"` UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` PostId string `protobuf:"bytes,2,opt,name=post_id,json=postId,proto3" json:"post_id,omitempty"` EmojiName string `protobuf:"bytes,3,opt,name=emoji_name,json=emojiName,proto3" json:"emoji_name,omitempty"` CreateAt int64 `protobuf:"varint,4,opt,name=create_at,json=createAt,proto3" json:"create_at,omitempty"` UpdateAt int64 `protobuf:"varint,5,opt,name=update_at,json=updateAt,proto3" json:"update_at,omitempty"` DeleteAt int64 `protobuf:"varint,6,opt,name=delete_at,json=deleteAt,proto3" json:"delete_at,omitempty"` RemoteId *string `protobuf:"bytes,7,opt,name=remote_id,json=remoteId,proto3,oneof" json:"remote_id,omitempty"` ChannelId *string `protobuf:"bytes,8,opt,name=channel_id,json=channelId,proto3,oneof" json:"channel_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Reaction) Reset() { *x = Reaction{} mi := &file_post_proto_msgTypes[5] 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_post_proto_msgTypes[5] if 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_post_proto_rawDescGZIP(), []int{5} } func (x *Reaction) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *Reaction) GetPostId() string { if x != nil { return x.PostId } return "" } func (x *Reaction) GetEmojiName() string { if x != nil { return x.EmojiName } return "" } func (x *Reaction) GetCreateAt() int64 { if x != nil { return x.CreateAt } return 0 } func (x *Reaction) GetUpdateAt() int64 { if x != nil { return x.UpdateAt } return 0 } func (x *Reaction) GetDeleteAt() int64 { if x != nil { return x.DeleteAt } return 0 } func (x *Reaction) GetRemoteId() string { if x != nil && x.RemoteId != nil { return *x.RemoteId } return "" } func (x *Reaction) GetChannelId() string { if x != nil && x.ChannelId != nil { return *x.ChannelId } return "" } // Post represents a message/post in Mattermost. // Maps to model.Post in Go. type Post struct { state protoimpl.MessageState `protogen:"open.v1"` // Unique identifier for the post (26-char ID) Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // Timestamp when the post was created (milliseconds since epoch) CreateAt int64 `protobuf:"varint,2,opt,name=create_at,json=createAt,proto3" json:"create_at,omitempty"` // Timestamp when the post was last updated (milliseconds since epoch) UpdateAt int64 `protobuf:"varint,3,opt,name=update_at,json=updateAt,proto3" json:"update_at,omitempty"` // Timestamp when the post was last edited (0 if never edited) EditAt int64 `protobuf:"varint,4,opt,name=edit_at,json=editAt,proto3" json:"edit_at,omitempty"` // Timestamp when the post was deleted (0 if not deleted) DeleteAt int64 `protobuf:"varint,5,opt,name=delete_at,json=deleteAt,proto3" json:"delete_at,omitempty"` // Whether the post is pinned to the channel IsPinned bool `protobuf:"varint,6,opt,name=is_pinned,json=isPinned,proto3" json:"is_pinned,omitempty"` // ID of the user who created the post UserId string `protobuf:"bytes,7,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` // ID of the channel this post belongs to ChannelId string `protobuf:"bytes,8,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"` // ID of the root post if this is a reply (empty for root posts) RootId string `protobuf:"bytes,9,opt,name=root_id,json=rootId,proto3" json:"root_id,omitempty"` // Original post ID (used for cross-posting) OriginalId string `protobuf:"bytes,10,opt,name=original_id,json=originalId,proto3" json:"original_id,omitempty"` // The message content Message string `protobuf:"bytes,11,opt,name=message,proto3" json:"message,omitempty"` // Original message before server modifications (for edit boxes) MessageSource string `protobuf:"bytes,12,opt,name=message_source,json=messageSource,proto3" json:"message_source,omitempty"` // Post type (empty for normal posts, "system_*" for system messages) Type string `protobuf:"bytes,13,opt,name=type,proto3" json:"type,omitempty"` // Post-specific properties (attachments, webhook data, etc.) // Maps to model.StringInterface (map[string]any) in Go Props *structpb.Struct `protobuf:"bytes,14,opt,name=props,proto3" json:"props,omitempty"` // Extracted hashtags from the message Hashtags string `protobuf:"bytes,15,opt,name=hashtags,proto3" json:"hashtags,omitempty"` // IDs of attached files FileIds []string `protobuf:"bytes,16,rep,name=file_ids,json=fileIds,proto3" json:"file_ids,omitempty"` // Client-generated ID for deduplication PendingPostId string `protobuf:"bytes,17,opt,name=pending_post_id,json=pendingPostId,proto3" json:"pending_post_id,omitempty"` // Whether this post has emoji reactions HasReactions bool `protobuf:"varint,18,opt,name=has_reactions,json=hasReactions,proto3" json:"has_reactions,omitempty"` // Remote cluster ID if this post is from a shared channel RemoteId *string `protobuf:"bytes,19,opt,name=remote_id,json=remoteId,proto3,oneof" json:"remote_id,omitempty"` // Number of replies (for root posts only) ReplyCount int64 `protobuf:"varint,20,opt,name=reply_count,json=replyCount,proto3" json:"reply_count,omitempty"` // Timestamp of the last reply (for root posts only) LastReplyAt int64 `protobuf:"varint,21,opt,name=last_reply_at,json=lastReplyAt,proto3" json:"last_reply_at,omitempty"` // Users who participated in the thread Participants []*User `protobuf:"bytes,22,rep,name=participants,proto3" json:"participants,omitempty"` // Whether the current user is following this thread IsFollowing *bool `protobuf:"varint,23,opt,name=is_following,json=isFollowing,proto3,oneof" json:"is_following,omitempty"` // Additional metadata (embeds, reactions, files, etc.) Metadata *PostMetadata `protobuf:"bytes,24,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Post) Reset() { *x = Post{} mi := &file_post_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Post) String() string { return protoimpl.X.MessageStringOf(x) } func (*Post) ProtoMessage() {} func (x *Post) ProtoReflect() protoreflect.Message { mi := &file_post_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Post.ProtoReflect.Descriptor instead. func (*Post) Descriptor() ([]byte, []int) { return file_post_proto_rawDescGZIP(), []int{6} } func (x *Post) GetId() string { if x != nil { return x.Id } return "" } func (x *Post) GetCreateAt() int64 { if x != nil { return x.CreateAt } return 0 } func (x *Post) GetUpdateAt() int64 { if x != nil { return x.UpdateAt } return 0 } func (x *Post) GetEditAt() int64 { if x != nil { return x.EditAt } return 0 } func (x *Post) GetDeleteAt() int64 { if x != nil { return x.DeleteAt } return 0 } func (x *Post) GetIsPinned() bool { if x != nil { return x.IsPinned } return false } func (x *Post) GetUserId() string { if x != nil { return x.UserId } return "" } func (x *Post) GetChannelId() string { if x != nil { return x.ChannelId } return "" } func (x *Post) GetRootId() string { if x != nil { return x.RootId } return "" } func (x *Post) GetOriginalId() string { if x != nil { return x.OriginalId } return "" } func (x *Post) GetMessage() string { if x != nil { return x.Message } return "" } func (x *Post) GetMessageSource() string { if x != nil { return x.MessageSource } return "" } func (x *Post) GetType() string { if x != nil { return x.Type } return "" } func (x *Post) GetProps() *structpb.Struct { if x != nil { return x.Props } return nil } func (x *Post) GetHashtags() string { if x != nil { return x.Hashtags } return "" } func (x *Post) GetFileIds() []string { if x != nil { return x.FileIds } return nil } func (x *Post) GetPendingPostId() string { if x != nil { return x.PendingPostId } return "" } func (x *Post) GetHasReactions() bool { if x != nil { return x.HasReactions } return false } func (x *Post) GetRemoteId() string { if x != nil && x.RemoteId != nil { return *x.RemoteId } return "" } func (x *Post) GetReplyCount() int64 { if x != nil { return x.ReplyCount } return 0 } func (x *Post) GetLastReplyAt() int64 { if x != nil { return x.LastReplyAt } return 0 } func (x *Post) GetParticipants() []*User { if x != nil { return x.Participants } return nil } func (x *Post) GetIsFollowing() bool { if x != nil && x.IsFollowing != nil { return *x.IsFollowing } return false } func (x *Post) GetMetadata() *PostMetadata { if x != nil { return x.Metadata } return nil } // PostList represents a list of posts with ordering information. // Maps to model.PostList in Go. type PostList struct { state protoimpl.MessageState `protogen:"open.v1"` // Ordered list of post IDs Order []string `protobuf:"bytes,1,rep,name=order,proto3" json:"order,omitempty"` // Map of post ID to Post Posts map[string]*Post `protobuf:"bytes,2,rep,name=posts,proto3" json:"posts,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // The ID to use for fetching the next page NextPostId string `protobuf:"bytes,3,opt,name=next_post_id,json=nextPostId,proto3" json:"next_post_id,omitempty"` // The ID to use for fetching the previous page PrevPostId string `protobuf:"bytes,4,opt,name=prev_post_id,json=prevPostId,proto3" json:"prev_post_id,omitempty"` // Whether the first post in the list is at the channel's first unread FirstInaccessiblePostTime bool `protobuf:"varint,5,opt,name=first_inaccessible_post_time,json=firstInaccessiblePostTime,proto3" json:"first_inaccessible_post_time,omitempty"` // Whether there are more posts to fetch HasNext bool `protobuf:"varint,6,opt,name=has_next,json=hasNext,proto3" json:"has_next,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PostList) Reset() { *x = PostList{} mi := &file_post_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PostList) String() string { return protoimpl.X.MessageStringOf(x) } func (*PostList) ProtoMessage() {} func (x *PostList) ProtoReflect() protoreflect.Message { mi := &file_post_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PostList.ProtoReflect.Descriptor instead. func (*PostList) Descriptor() ([]byte, []int) { return file_post_proto_rawDescGZIP(), []int{7} } func (x *PostList) GetOrder() []string { if x != nil { return x.Order } return nil } func (x *PostList) GetPosts() map[string]*Post { if x != nil { return x.Posts } return nil } func (x *PostList) GetNextPostId() string { if x != nil { return x.NextPostId } return "" } func (x *PostList) GetPrevPostId() string { if x != nil { return x.PrevPostId } return "" } func (x *PostList) GetFirstInaccessiblePostTime() bool { if x != nil { return x.FirstInaccessiblePostTime } return false } func (x *PostList) GetHasNext() bool { if x != nil { return x.HasNext } return false } var File_post_proto protoreflect.FileDescriptor const file_post_proto_rawDesc = "" + "\n" + "\n" + "post.proto\x12\x17mattermost.pluginapi.v1\x1a\x1cgoogle/protobuf/struct.proto\x1a\n" + "user.proto\x1a\n" + "file.proto\"\x9d\x04\n" + "\fPostMetadata\x12:\n" + "\x06embeds\x18\x01 \x03(\v2\".mattermost.pluginapi.v1.PostEmbedR\x06embeds\x12?\n" + "\treactions\x18\x02 \x03(\v2!.mattermost.pluginapi.v1.ReactionR\treactions\x127\n" + "\x05files\x18\x03 \x03(\v2!.mattermost.pluginapi.v1.FileInfoR\x05files\x12I\n" + "\x06images\x18\x04 \x03(\v21.mattermost.pluginapi.v1.PostMetadata.ImagesEntryR\x06images\x12F\n" + "\bpriority\x18\x05 \x01(\v2%.mattermost.pluginapi.v1.PostPriorityH\x00R\bpriority\x88\x01\x01\x12X\n" + "\x10acknowledgements\x18\x06 \x03(\v2,.mattermost.pluginapi.v1.PostAcknowledgementR\x10acknowledgements\x1a]\n" + "\vImagesEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x128\n" + "\x05value\x18\x02 \x01(\v2\".mattermost.pluginapi.v1.PostImageR\x05value:\x028\x01B\v\n" + "\t_priority\"^\n" + "\tPostEmbed\x12\x12\n" + "\x04type\x18\x01 \x01(\tR\x04type\x12\x10\n" + "\x03url\x18\x02 \x01(\tR\x03url\x12+\n" + "\x04data\x18\x03 \x01(\v2\x17.google.protobuf.StructR\x04data\"r\n" + "\tPostImage\x12\x14\n" + "\x05width\x18\x01 \x01(\x05R\x05width\x12\x16\n" + "\x06height\x18\x02 \x01(\x05R\x06height\x12\x16\n" + "\x06format\x18\x03 \x01(\tR\x06format\x12\x1f\n" + "\vframe_count\x18\x04 \x01(\x03R\n" + "frameCount\"\xd5\x01\n" + "\fPostPriority\x12\x1f\n" + "\bpriority\x18\x01 \x01(\tH\x00R\bpriority\x88\x01\x01\x12(\n" + "\rrequested_ack\x18\x02 \x01(\bH\x01R\frequestedAck\x88\x01\x01\x12>\n" + "\x18persistent_notifications\x18\x03 \x01(\bH\x02R\x17persistentNotifications\x88\x01\x01B\v\n" + "\t_priorityB\x10\n" + "\x0e_requested_ackB\x1b\n" + "\x19_persistent_notifications\"p\n" + "\x13PostAcknowledgement\x12\x17\n" + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x17\n" + "\apost_id\x18\x02 \x01(\tR\x06postId\x12'\n" + "\x0facknowledged_at\x18\x03 \x01(\x03R\x0eacknowledgedAt\"\x95\x02\n" + "\bReaction\x12\x17\n" + "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x17\n" + "\apost_id\x18\x02 \x01(\tR\x06postId\x12\x1d\n" + "\n" + "emoji_name\x18\x03 \x01(\tR\temojiName\x12\x1b\n" + "\tcreate_at\x18\x04 \x01(\x03R\bcreateAt\x12\x1b\n" + "\tupdate_at\x18\x05 \x01(\x03R\bupdateAt\x12\x1b\n" + "\tdelete_at\x18\x06 \x01(\x03R\bdeleteAt\x12 \n" + "\tremote_id\x18\a \x01(\tH\x00R\bremoteId\x88\x01\x01\x12\"\n" + "\n" + "channel_id\x18\b \x01(\tH\x01R\tchannelId\x88\x01\x01B\f\n" + "\n" + "_remote_idB\r\n" + "\v_channel_id\"\xe3\x06\n" + "\x04Post\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12\x1b\n" + "\tcreate_at\x18\x02 \x01(\x03R\bcreateAt\x12\x1b\n" + "\tupdate_at\x18\x03 \x01(\x03R\bupdateAt\x12\x17\n" + "\aedit_at\x18\x04 \x01(\x03R\x06editAt\x12\x1b\n" + "\tdelete_at\x18\x05 \x01(\x03R\bdeleteAt\x12\x1b\n" + "\tis_pinned\x18\x06 \x01(\bR\bisPinned\x12\x17\n" + "\auser_id\x18\a \x01(\tR\x06userId\x12\x1d\n" + "\n" + "channel_id\x18\b \x01(\tR\tchannelId\x12\x17\n" + "\aroot_id\x18\t \x01(\tR\x06rootId\x12\x1f\n" + "\voriginal_id\x18\n" + " \x01(\tR\n" + "originalId\x12\x18\n" + "\amessage\x18\v \x01(\tR\amessage\x12%\n" + "\x0emessage_source\x18\f \x01(\tR\rmessageSource\x12\x12\n" + "\x04type\x18\r \x01(\tR\x04type\x12-\n" + "\x05props\x18\x0e \x01(\v2\x17.google.protobuf.StructR\x05props\x12\x1a\n" + "\bhashtags\x18\x0f \x01(\tR\bhashtags\x12\x19\n" + "\bfile_ids\x18\x10 \x03(\tR\afileIds\x12&\n" + "\x0fpending_post_id\x18\x11 \x01(\tR\rpendingPostId\x12#\n" + "\rhas_reactions\x18\x12 \x01(\bR\fhasReactions\x12 \n" + "\tremote_id\x18\x13 \x01(\tH\x00R\bremoteId\x88\x01\x01\x12\x1f\n" + "\vreply_count\x18\x14 \x01(\x03R\n" + "replyCount\x12\"\n" + "\rlast_reply_at\x18\x15 \x01(\x03R\vlastReplyAt\x12A\n" + "\fparticipants\x18\x16 \x03(\v2\x1d.mattermost.pluginapi.v1.UserR\fparticipants\x12&\n" + "\fis_following\x18\x17 \x01(\bH\x01R\visFollowing\x88\x01\x01\x12F\n" + "\bmetadata\x18\x18 \x01(\v2%.mattermost.pluginapi.v1.PostMetadataH\x02R\bmetadata\x88\x01\x01B\f\n" + "\n" + "_remote_idB\x0f\n" + "\r_is_followingB\v\n" + "\t_metadata\"\xdd\x02\n" + "\bPostList\x12\x14\n" + "\x05order\x18\x01 \x03(\tR\x05order\x12B\n" + "\x05posts\x18\x02 \x03(\v2,.mattermost.pluginapi.v1.PostList.PostsEntryR\x05posts\x12 \n" + "\fnext_post_id\x18\x03 \x01(\tR\n" + "nextPostId\x12 \n" + "\fprev_post_id\x18\x04 \x01(\tR\n" + "prevPostId\x12?\n" + "\x1cfirst_inaccessible_post_time\x18\x05 \x01(\bR\x19firstInaccessiblePostTime\x12\x19\n" + "\bhas_next\x18\x06 \x01(\bR\ahasNext\x1aW\n" + "\n" + "PostsEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x123\n" + "\x05value\x18\x02 \x01(\v2\x1d.mattermost.pluginapi.v1.PostR\x05value:\x028\x01BXZVgithub.com/mattermost/mattermost/server/public/pluginapi/grpc/generated/go/pluginapiv1b\x06proto3" var ( file_post_proto_rawDescOnce sync.Once file_post_proto_rawDescData []byte ) func file_post_proto_rawDescGZIP() []byte { file_post_proto_rawDescOnce.Do(func() { file_post_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_post_proto_rawDesc), len(file_post_proto_rawDesc))) }) return file_post_proto_rawDescData } var file_post_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_post_proto_goTypes = []any{ (*PostMetadata)(nil), // 0: mattermost.pluginapi.v1.PostMetadata (*PostEmbed)(nil), // 1: mattermost.pluginapi.v1.PostEmbed (*PostImage)(nil), // 2: mattermost.pluginapi.v1.PostImage (*PostPriority)(nil), // 3: mattermost.pluginapi.v1.PostPriority (*PostAcknowledgement)(nil), // 4: mattermost.pluginapi.v1.PostAcknowledgement (*Reaction)(nil), // 5: mattermost.pluginapi.v1.Reaction (*Post)(nil), // 6: mattermost.pluginapi.v1.Post (*PostList)(nil), // 7: mattermost.pluginapi.v1.PostList nil, // 8: mattermost.pluginapi.v1.PostMetadata.ImagesEntry nil, // 9: mattermost.pluginapi.v1.PostList.PostsEntry (*FileInfo)(nil), // 10: mattermost.pluginapi.v1.FileInfo (*structpb.Struct)(nil), // 11: google.protobuf.Struct (*User)(nil), // 12: mattermost.pluginapi.v1.User } var file_post_proto_depIdxs = []int32{ 1, // 0: mattermost.pluginapi.v1.PostMetadata.embeds:type_name -> mattermost.pluginapi.v1.PostEmbed 5, // 1: mattermost.pluginapi.v1.PostMetadata.reactions:type_name -> mattermost.pluginapi.v1.Reaction 10, // 2: mattermost.pluginapi.v1.PostMetadata.files:type_name -> mattermost.pluginapi.v1.FileInfo 8, // 3: mattermost.pluginapi.v1.PostMetadata.images:type_name -> mattermost.pluginapi.v1.PostMetadata.ImagesEntry 3, // 4: mattermost.pluginapi.v1.PostMetadata.priority:type_name -> mattermost.pluginapi.v1.PostPriority 4, // 5: mattermost.pluginapi.v1.PostMetadata.acknowledgements:type_name -> mattermost.pluginapi.v1.PostAcknowledgement 11, // 6: mattermost.pluginapi.v1.PostEmbed.data:type_name -> google.protobuf.Struct 11, // 7: mattermost.pluginapi.v1.Post.props:type_name -> google.protobuf.Struct 12, // 8: mattermost.pluginapi.v1.Post.participants:type_name -> mattermost.pluginapi.v1.User 0, // 9: mattermost.pluginapi.v1.Post.metadata:type_name -> mattermost.pluginapi.v1.PostMetadata 9, // 10: mattermost.pluginapi.v1.PostList.posts:type_name -> mattermost.pluginapi.v1.PostList.PostsEntry 2, // 11: mattermost.pluginapi.v1.PostMetadata.ImagesEntry.value:type_name -> mattermost.pluginapi.v1.PostImage 6, // 12: mattermost.pluginapi.v1.PostList.PostsEntry.value:type_name -> mattermost.pluginapi.v1.Post 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_post_proto_init() } func file_post_proto_init() { if File_post_proto != nil { return } file_user_proto_init() file_file_proto_init() file_post_proto_msgTypes[0].OneofWrappers = []any{} file_post_proto_msgTypes[3].OneofWrappers = []any{} file_post_proto_msgTypes[5].OneofWrappers = []any{} file_post_proto_msgTypes[6].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_post_proto_rawDesc), len(file_post_proto_rawDesc)), NumEnums: 0, NumMessages: 10, NumExtensions: 0, NumServices: 0, }, GoTypes: file_post_proto_goTypes, DependencyIndexes: file_post_proto_depIdxs, MessageInfos: file_post_proto_msgTypes, }.Build() File_post_proto = out.File file_post_proto_goTypes = nil file_post_proto_depIdxs = nil }