// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.10
// 	protoc        v6.33.1
// source: post.proto

package gen

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
	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)
)

// Enums
type PostType int32

const (
	PostType_POST_TYPE_UNSPECIFIED PostType = 0
	PostType_MOMENT                PostType = 1
	PostType_ARTICLE               PostType = 2
)

// Enum value maps for PostType.
var (
	PostType_name = map[int32]string{
		0: "POST_TYPE_UNSPECIFIED",
		1: "MOMENT",
		2: "ARTICLE",
	}
	PostType_value = map[string]int32{
		"POST_TYPE_UNSPECIFIED": 0,
		"MOMENT":                1,
		"ARTICLE":               2,
	}
)

func (x PostType) Enum() *PostType {
	p := new(PostType)
	*p = x
	return p
}

func (x PostType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PostType) Descriptor() protoreflect.EnumDescriptor {
	return file_post_proto_enumTypes[0].Descriptor()
}

func (PostType) Type() protoreflect.EnumType {
	return &file_post_proto_enumTypes[0]
}

func (x PostType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PostType.Descriptor instead.
func (PostType) EnumDescriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{0}
}

type PostVisibility int32

const (
	PostVisibility_VISIBILITY_UNSPECIFIED PostVisibility = 0
	PostVisibility_PUBLIC                 PostVisibility = 1
	PostVisibility_FRIENDS                PostVisibility = 2
	PostVisibility_UNLISTED               PostVisibility = 3
	PostVisibility_PRIVATE                PostVisibility = 4
)

// Enum value maps for PostVisibility.
var (
	PostVisibility_name = map[int32]string{
		0: "VISIBILITY_UNSPECIFIED",
		1: "PUBLIC",
		2: "FRIENDS",
		3: "UNLISTED",
		4: "PRIVATE",
	}
	PostVisibility_value = map[string]int32{
		"VISIBILITY_UNSPECIFIED": 0,
		"PUBLIC":                 1,
		"FRIENDS":                2,
		"UNLISTED":               3,
		"PRIVATE":                4,
	}
)

func (x PostVisibility) Enum() *PostVisibility {
	p := new(PostVisibility)
	*p = x
	return p
}

func (x PostVisibility) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PostVisibility) Descriptor() protoreflect.EnumDescriptor {
	return file_post_proto_enumTypes[1].Descriptor()
}

func (PostVisibility) Type() protoreflect.EnumType {
	return &file_post_proto_enumTypes[1]
}

func (x PostVisibility) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PostVisibility.Descriptor instead.
func (PostVisibility) EnumDescriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{1}
}

type PostPinMode int32

const (
	PostPinMode_PIN_MODE_UNSPECIFIED PostPinMode = 0
	PostPinMode_PUBLISHER_PAGE       PostPinMode = 1
	PostPinMode_REALM_PAGE           PostPinMode = 2
	PostPinMode_REPLY_PAGE           PostPinMode = 3
)

// Enum value maps for PostPinMode.
var (
	PostPinMode_name = map[int32]string{
		0: "PIN_MODE_UNSPECIFIED",
		1: "PUBLISHER_PAGE",
		2: "REALM_PAGE",
		3: "REPLY_PAGE",
	}
	PostPinMode_value = map[string]int32{
		"PIN_MODE_UNSPECIFIED": 0,
		"PUBLISHER_PAGE":       1,
		"REALM_PAGE":           2,
		"REPLY_PAGE":           3,
	}
)

func (x PostPinMode) Enum() *PostPinMode {
	p := new(PostPinMode)
	*p = x
	return p
}

func (x PostPinMode) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PostPinMode) Descriptor() protoreflect.EnumDescriptor {
	return file_post_proto_enumTypes[2].Descriptor()
}

func (PostPinMode) Type() protoreflect.EnumType {
	return &file_post_proto_enumTypes[2]
}

func (x PostPinMode) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PostPinMode.Descriptor instead.
func (PostPinMode) EnumDescriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{2}
}

type ContentSensitiveMark int32

const (
	ContentSensitiveMark_SENSITIVE_MARK_UNSPECIFIED ContentSensitiveMark = 0
	ContentSensitiveMark_LANGUAGE                   ContentSensitiveMark = 1
	ContentSensitiveMark_SEXUAL_CONTENT             ContentSensitiveMark = 2
	ContentSensitiveMark_VIOLENCE                   ContentSensitiveMark = 3
	ContentSensitiveMark_PROFANITY                  ContentSensitiveMark = 4
	ContentSensitiveMark_HATE_SPEECH                ContentSensitiveMark = 5
	ContentSensitiveMark_RACISM                     ContentSensitiveMark = 6
	ContentSensitiveMark_ADULT_CONTENT              ContentSensitiveMark = 7
	ContentSensitiveMark_DRUG_ABUSE                 ContentSensitiveMark = 8
	ContentSensitiveMark_ALCOHOL_ABUSE              ContentSensitiveMark = 9
	ContentSensitiveMark_GAMBLING                   ContentSensitiveMark = 10
	ContentSensitiveMark_SELF_HARM                  ContentSensitiveMark = 11
	ContentSensitiveMark_CHILD_ABUSE                ContentSensitiveMark = 12
	ContentSensitiveMark_OTHER                      ContentSensitiveMark = 13
)

// Enum value maps for ContentSensitiveMark.
var (
	ContentSensitiveMark_name = map[int32]string{
		0:  "SENSITIVE_MARK_UNSPECIFIED",
		1:  "LANGUAGE",
		2:  "SEXUAL_CONTENT",
		3:  "VIOLENCE",
		4:  "PROFANITY",
		5:  "HATE_SPEECH",
		6:  "RACISM",
		7:  "ADULT_CONTENT",
		8:  "DRUG_ABUSE",
		9:  "ALCOHOL_ABUSE",
		10: "GAMBLING",
		11: "SELF_HARM",
		12: "CHILD_ABUSE",
		13: "OTHER",
	}
	ContentSensitiveMark_value = map[string]int32{
		"SENSITIVE_MARK_UNSPECIFIED": 0,
		"LANGUAGE":                   1,
		"SEXUAL_CONTENT":             2,
		"VIOLENCE":                   3,
		"PROFANITY":                  4,
		"HATE_SPEECH":                5,
		"RACISM":                     6,
		"ADULT_CONTENT":              7,
		"DRUG_ABUSE":                 8,
		"ALCOHOL_ABUSE":              9,
		"GAMBLING":                   10,
		"SELF_HARM":                  11,
		"CHILD_ABUSE":                12,
		"OTHER":                      13,
	}
)

func (x ContentSensitiveMark) Enum() *ContentSensitiveMark {
	p := new(ContentSensitiveMark)
	*p = x
	return p
}

func (x ContentSensitiveMark) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ContentSensitiveMark) Descriptor() protoreflect.EnumDescriptor {
	return file_post_proto_enumTypes[3].Descriptor()
}

func (ContentSensitiveMark) Type() protoreflect.EnumType {
	return &file_post_proto_enumTypes[3]
}

func (x ContentSensitiveMark) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ContentSensitiveMark.Descriptor instead.
func (ContentSensitiveMark) EnumDescriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{3}
}

type PostReactionAttitude int32

const (
	PostReactionAttitude_ATTITUDE_UNSPECIFIED   PostReactionAttitude = 0
	PostReactionAttitude_POST_ATTITUDE_POSITIVE PostReactionAttitude = 1
	PostReactionAttitude_POST_ATTITUDE_NEUTRAL  PostReactionAttitude = 2
	PostReactionAttitude_POST_ATTITUDE_NEGATIVE PostReactionAttitude = 3
)

// Enum value maps for PostReactionAttitude.
var (
	PostReactionAttitude_name = map[int32]string{
		0: "ATTITUDE_UNSPECIFIED",
		1: "POST_ATTITUDE_POSITIVE",
		2: "POST_ATTITUDE_NEUTRAL",
		3: "POST_ATTITUDE_NEGATIVE",
	}
	PostReactionAttitude_value = map[string]int32{
		"ATTITUDE_UNSPECIFIED":   0,
		"POST_ATTITUDE_POSITIVE": 1,
		"POST_ATTITUDE_NEUTRAL":  2,
		"POST_ATTITUDE_NEGATIVE": 3,
	}
)

func (x PostReactionAttitude) Enum() *PostReactionAttitude {
	p := new(PostReactionAttitude)
	*p = x
	return p
}

func (x PostReactionAttitude) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PostReactionAttitude) Descriptor() protoreflect.EnumDescriptor {
	return file_post_proto_enumTypes[4].Descriptor()
}

func (PostReactionAttitude) Type() protoreflect.EnumType {
	return &file_post_proto_enumTypes[4]
}

func (x PostReactionAttitude) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PostReactionAttitude.Descriptor instead.
func (PostReactionAttitude) EnumDescriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{4}
}

type PostEmbedViewRenderer int32

const (
	PostEmbedViewRenderer_RENDERER_UNSPECIFIED PostEmbedViewRenderer = 0
	PostEmbedViewRenderer_WEBVIEW              PostEmbedViewRenderer = 1
)

// Enum value maps for PostEmbedViewRenderer.
var (
	PostEmbedViewRenderer_name = map[int32]string{
		0: "RENDERER_UNSPECIFIED",
		1: "WEBVIEW",
	}
	PostEmbedViewRenderer_value = map[string]int32{
		"RENDERER_UNSPECIFIED": 0,
		"WEBVIEW":              1,
	}
)

func (x PostEmbedViewRenderer) Enum() *PostEmbedViewRenderer {
	p := new(PostEmbedViewRenderer)
	*p = x
	return p
}

func (x PostEmbedViewRenderer) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (PostEmbedViewRenderer) Descriptor() protoreflect.EnumDescriptor {
	return file_post_proto_enumTypes[5].Descriptor()
}

func (PostEmbedViewRenderer) Type() protoreflect.EnumType {
	return &file_post_proto_enumTypes[5]
}

func (x PostEmbedViewRenderer) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use PostEmbedViewRenderer.Descriptor instead.
func (PostEmbedViewRenderer) EnumDescriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{5}
}

type PostEmbedView struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Uri           string                 `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
	AspectRatio   *float64               `protobuf:"fixed64,2,opt,name=aspect_ratio,json=aspectRatio,proto3,oneof" json:"aspect_ratio,omitempty"`
	Renderer      PostEmbedViewRenderer  `protobuf:"varint,3,opt,name=renderer,proto3,enum=proto.PostEmbedViewRenderer" json:"renderer,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostEmbedView) Reset() {
	*x = PostEmbedView{}
	mi := &file_post_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostEmbedView) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostEmbedView) ProtoMessage() {}

func (x *PostEmbedView) 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 PostEmbedView.ProtoReflect.Descriptor instead.
func (*PostEmbedView) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{0}
}

func (x *PostEmbedView) GetUri() string {
	if x != nil {
		return x.Uri
	}
	return ""
}

func (x *PostEmbedView) GetAspectRatio() float64 {
	if x != nil && x.AspectRatio != nil {
		return *x.AspectRatio
	}
	return 0
}

func (x *PostEmbedView) GetRenderer() PostEmbedViewRenderer {
	if x != nil {
		return x.Renderer
	}
	return PostEmbedViewRenderer_RENDERER_UNSPECIFIED
}

type Post struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	Id             string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Title          string                 `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	Description    string                 `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	Slug           string                 `protobuf:"bytes,4,opt,name=slug,proto3" json:"slug,omitempty"`
	EditedAt       *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=edited_at,json=editedAt,proto3,oneof" json:"edited_at,omitempty"`
	PublishedAt    *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=published_at,json=publishedAt,proto3,oneof" json:"published_at,omitempty"`
	Visibility     PostVisibility         `protobuf:"varint,7,opt,name=visibility,proto3,enum=proto.PostVisibility" json:"visibility,omitempty"`
	Content        *string                `protobuf:"bytes,8,opt,name=content,proto3,oneof" json:"content,omitempty"`
	Type           PostType               `protobuf:"varint,9,opt,name=type,proto3,enum=proto.PostType" json:"type,omitempty"`
	PinMode        *PostPinMode           `protobuf:"varint,10,opt,name=pin_mode,json=pinMode,proto3,enum=proto.PostPinMode,oneof" json:"pin_mode,omitempty"`
	Meta           []byte                 `protobuf:"bytes,11,opt,name=meta,proto3,oneof" json:"meta,omitempty"`                                           // Dictionary<string, object>
	SensitiveMarks []byte                 `protobuf:"bytes,12,opt,name=sensitive_marks,json=sensitiveMarks,proto3,oneof" json:"sensitive_marks,omitempty"` // List<ContentSensitiveMark>
	EmbedView      *PostEmbedView         `protobuf:"bytes,13,opt,name=embed_view,json=embedView,proto3,oneof" json:"embed_view,omitempty"`
	ViewsUnique    int32                  `protobuf:"varint,14,opt,name=views_unique,json=viewsUnique,proto3" json:"views_unique,omitempty"`
	ViewsTotal     int32                  `protobuf:"varint,15,opt,name=views_total,json=viewsTotal,proto3" json:"views_total,omitempty"`
	Upvotes        int32                  `protobuf:"varint,16,opt,name=upvotes,proto3" json:"upvotes,omitempty"`
	Downvotes      int32                  `protobuf:"varint,17,opt,name=downvotes,proto3" json:"downvotes,omitempty"`
	AwardedScore   float64                `protobuf:"fixed64,18,opt,name=awarded_score,json=awardedScore,proto3" json:"awarded_score,omitempty"`
	// Not mapped fields: handled client-side
	ReactionsCount  map[string]int32      `protobuf:"bytes,19,rep,name=reactions_count,json=reactionsCount,proto3" json:"reactions_count,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` // Dictionary<string, int>
	RepliesCount    int32                 `protobuf:"varint,20,opt,name=replies_count,json=repliesCount,proto3" json:"replies_count,omitempty"`
	ReactionsMade   map[string]bool       `protobuf:"bytes,21,rep,name=reactions_made,json=reactionsMade,proto3" json:"reactions_made,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"` // Dictionary<string, bool>
	RepliedGone     bool                  `protobuf:"varint,22,opt,name=replied_gone,json=repliedGone,proto3" json:"replied_gone,omitempty"`
	ForwardedGone   bool                  `protobuf:"varint,23,opt,name=forwarded_gone,json=forwardedGone,proto3" json:"forwarded_gone,omitempty"`
	RepliedPostId   *string               `protobuf:"bytes,24,opt,name=replied_post_id,json=repliedPostId,proto3,oneof" json:"replied_post_id,omitempty"`
	RepliedPost     *Post                 `protobuf:"bytes,25,opt,name=replied_post,json=repliedPost,proto3,oneof" json:"replied_post,omitempty"` // full if populated
	ForwardedPostId *string               `protobuf:"bytes,26,opt,name=forwarded_post_id,json=forwardedPostId,proto3,oneof" json:"forwarded_post_id,omitempty"`
	ForwardedPost   *Post                 `protobuf:"bytes,27,opt,name=forwarded_post,json=forwardedPost,proto3,oneof" json:"forwarded_post,omitempty"` // full if populated
	RealmId         *string               `protobuf:"bytes,28,opt,name=realm_id,json=realmId,proto3,oneof" json:"realm_id,omitempty"`
	Realm           *Realm                `protobuf:"bytes,29,opt,name=realm,proto3,oneof" json:"realm,omitempty"`       // full if populated
	Attachments     []*CloudFile          `protobuf:"bytes,30,rep,name=attachments,proto3" json:"attachments,omitempty"` // List<SnCloudFileReferenceObject>
	PublisherId     string                `protobuf:"bytes,31,opt,name=publisher_id,json=publisherId,proto3" json:"publisher_id,omitempty"`
	Publisher       *Publisher            `protobuf:"bytes,32,opt,name=publisher,proto3" json:"publisher,omitempty"`
	Awards          []*PostAward          `protobuf:"bytes,33,rep,name=awards,proto3" json:"awards,omitempty"`
	Reactions       []*PostReaction       `protobuf:"bytes,34,rep,name=reactions,proto3" json:"reactions,omitempty"`
	Tags            []*PostTag            `protobuf:"bytes,35,rep,name=tags,proto3" json:"tags,omitempty"`
	Categories      []*PostCategory       `protobuf:"bytes,36,rep,name=categories,proto3" json:"categories,omitempty"`
	FeaturedRecords []*PostFeaturedRecord `protobuf:"bytes,37,rep,name=featured_records,json=featuredRecords,proto3" json:"featured_records,omitempty"`
	// Added for ToActivity
	CreatedAt     *timestamppb.Timestamp `protobuf:"bytes,38,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp `protobuf:"bytes,39,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	DeletedAt     *timestamppb.Timestamp `protobuf:"bytes,40,opt,name=deleted_at,json=deletedAt,proto3,oneof" json:"deleted_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Post) Reset() {
	*x = Post{}
	mi := &file_post_proto_msgTypes[1]
	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[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 Post.ProtoReflect.Descriptor instead.
func (*Post) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{1}
}

func (x *Post) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *Post) GetTitle() string {
	if x != nil {
		return x.Title
	}
	return ""
}

func (x *Post) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *Post) GetSlug() string {
	if x != nil {
		return x.Slug
	}
	return ""
}

func (x *Post) GetEditedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.EditedAt
	}
	return nil
}

func (x *Post) GetPublishedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.PublishedAt
	}
	return nil
}

func (x *Post) GetVisibility() PostVisibility {
	if x != nil {
		return x.Visibility
	}
	return PostVisibility_VISIBILITY_UNSPECIFIED
}

func (x *Post) GetContent() string {
	if x != nil && x.Content != nil {
		return *x.Content
	}
	return ""
}

func (x *Post) GetType() PostType {
	if x != nil {
		return x.Type
	}
	return PostType_POST_TYPE_UNSPECIFIED
}

func (x *Post) GetPinMode() PostPinMode {
	if x != nil && x.PinMode != nil {
		return *x.PinMode
	}
	return PostPinMode_PIN_MODE_UNSPECIFIED
}

func (x *Post) GetMeta() []byte {
	if x != nil {
		return x.Meta
	}
	return nil
}

func (x *Post) GetSensitiveMarks() []byte {
	if x != nil {
		return x.SensitiveMarks
	}
	return nil
}

func (x *Post) GetEmbedView() *PostEmbedView {
	if x != nil {
		return x.EmbedView
	}
	return nil
}

func (x *Post) GetViewsUnique() int32 {
	if x != nil {
		return x.ViewsUnique
	}
	return 0
}

func (x *Post) GetViewsTotal() int32 {
	if x != nil {
		return x.ViewsTotal
	}
	return 0
}

func (x *Post) GetUpvotes() int32 {
	if x != nil {
		return x.Upvotes
	}
	return 0
}

func (x *Post) GetDownvotes() int32 {
	if x != nil {
		return x.Downvotes
	}
	return 0
}

func (x *Post) GetAwardedScore() float64 {
	if x != nil {
		return x.AwardedScore
	}
	return 0
}

func (x *Post) GetReactionsCount() map[string]int32 {
	if x != nil {
		return x.ReactionsCount
	}
	return nil
}

func (x *Post) GetRepliesCount() int32 {
	if x != nil {
		return x.RepliesCount
	}
	return 0
}

func (x *Post) GetReactionsMade() map[string]bool {
	if x != nil {
		return x.ReactionsMade
	}
	return nil
}

func (x *Post) GetRepliedGone() bool {
	if x != nil {
		return x.RepliedGone
	}
	return false
}

func (x *Post) GetForwardedGone() bool {
	if x != nil {
		return x.ForwardedGone
	}
	return false
}

func (x *Post) GetRepliedPostId() string {
	if x != nil && x.RepliedPostId != nil {
		return *x.RepliedPostId
	}
	return ""
}

func (x *Post) GetRepliedPost() *Post {
	if x != nil {
		return x.RepliedPost
	}
	return nil
}

func (x *Post) GetForwardedPostId() string {
	if x != nil && x.ForwardedPostId != nil {
		return *x.ForwardedPostId
	}
	return ""
}

func (x *Post) GetForwardedPost() *Post {
	if x != nil {
		return x.ForwardedPost
	}
	return nil
}

func (x *Post) GetRealmId() string {
	if x != nil && x.RealmId != nil {
		return *x.RealmId
	}
	return ""
}

func (x *Post) GetRealm() *Realm {
	if x != nil {
		return x.Realm
	}
	return nil
}

func (x *Post) GetAttachments() []*CloudFile {
	if x != nil {
		return x.Attachments
	}
	return nil
}

func (x *Post) GetPublisherId() string {
	if x != nil {
		return x.PublisherId
	}
	return ""
}

func (x *Post) GetPublisher() *Publisher {
	if x != nil {
		return x.Publisher
	}
	return nil
}

func (x *Post) GetAwards() []*PostAward {
	if x != nil {
		return x.Awards
	}
	return nil
}

func (x *Post) GetReactions() []*PostReaction {
	if x != nil {
		return x.Reactions
	}
	return nil
}

func (x *Post) GetTags() []*PostTag {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *Post) GetCategories() []*PostCategory {
	if x != nil {
		return x.Categories
	}
	return nil
}

func (x *Post) GetFeaturedRecords() []*PostFeaturedRecord {
	if x != nil {
		return x.FeaturedRecords
	}
	return nil
}

func (x *Post) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *Post) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

func (x *Post) GetDeletedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.DeletedAt
	}
	return nil
}

type PostTag struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Slug          string                 `protobuf:"bytes,2,opt,name=slug,proto3" json:"slug,omitempty"`
	Name          string                 `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	CreatedAt     *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostTag) Reset() {
	*x = PostTag{}
	mi := &file_post_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostTag) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostTag) ProtoMessage() {}

func (x *PostTag) 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 PostTag.ProtoReflect.Descriptor instead.
func (*PostTag) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{2}
}

func (x *PostTag) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *PostTag) GetSlug() string {
	if x != nil {
		return x.Slug
	}
	return ""
}

func (x *PostTag) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *PostTag) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *PostTag) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

type PostCategory struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Slug          string                 `protobuf:"bytes,2,opt,name=slug,proto3" json:"slug,omitempty"`
	Name          string                 `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	CreatedAt     *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostCategory) Reset() {
	*x = PostCategory{}
	mi := &file_post_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostCategory) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostCategory) ProtoMessage() {}

func (x *PostCategory) 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 PostCategory.ProtoReflect.Descriptor instead.
func (*PostCategory) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{3}
}

func (x *PostCategory) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *PostCategory) GetSlug() string {
	if x != nil {
		return x.Slug
	}
	return ""
}

func (x *PostCategory) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *PostCategory) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *PostCategory) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

type PostCategorySubscription struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	AccountId     string                 `protobuf:"bytes,2,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	CategoryId    *string                `protobuf:"bytes,3,opt,name=category_id,json=categoryId,proto3,oneof" json:"category_id,omitempty"`
	Category      *PostCategory          `protobuf:"bytes,4,opt,name=category,proto3,oneof" json:"category,omitempty"`
	TagId         *string                `protobuf:"bytes,5,opt,name=tag_id,json=tagId,proto3,oneof" json:"tag_id,omitempty"`
	Tag           *PostTag               `protobuf:"bytes,6,opt,name=tag,proto3,oneof" json:"tag,omitempty"`
	CreatedAt     *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostCategorySubscription) Reset() {
	*x = PostCategorySubscription{}
	mi := &file_post_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostCategorySubscription) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostCategorySubscription) ProtoMessage() {}

func (x *PostCategorySubscription) 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 PostCategorySubscription.ProtoReflect.Descriptor instead.
func (*PostCategorySubscription) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{4}
}

func (x *PostCategorySubscription) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *PostCategorySubscription) GetAccountId() string {
	if x != nil {
		return x.AccountId
	}
	return ""
}

func (x *PostCategorySubscription) GetCategoryId() string {
	if x != nil && x.CategoryId != nil {
		return *x.CategoryId
	}
	return ""
}

func (x *PostCategorySubscription) GetCategory() *PostCategory {
	if x != nil {
		return x.Category
	}
	return nil
}

func (x *PostCategorySubscription) GetTagId() string {
	if x != nil && x.TagId != nil {
		return *x.TagId
	}
	return ""
}

func (x *PostCategorySubscription) GetTag() *PostTag {
	if x != nil {
		return x.Tag
	}
	return nil
}

func (x *PostCategorySubscription) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *PostCategorySubscription) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

type PostCollection struct {
	state         protoimpl.MessageState  `protogen:"open.v1"`
	Id            string                  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Slug          string                  `protobuf:"bytes,2,opt,name=slug,proto3" json:"slug,omitempty"`
	Name          *wrapperspb.StringValue `protobuf:"bytes,3,opt,name=name,proto3,oneof" json:"name,omitempty"`
	Description   *wrapperspb.StringValue `protobuf:"bytes,4,opt,name=description,proto3,oneof" json:"description,omitempty"`
	Publisher     *Publisher              `protobuf:"bytes,5,opt,name=publisher,proto3" json:"publisher,omitempty"`
	PublisherId   *string                 `protobuf:"bytes,6,opt,name=publisher_id,json=publisherId,proto3,oneof" json:"publisher_id,omitempty"` // for cases where full publisher not needed
	Posts         []*Post                 `protobuf:"bytes,7,rep,name=posts,proto3" json:"posts,omitempty"`
	CreatedAt     *timestamppb.Timestamp  `protobuf:"bytes,8,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp  `protobuf:"bytes,9,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostCollection) Reset() {
	*x = PostCollection{}
	mi := &file_post_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostCollection) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostCollection) ProtoMessage() {}

func (x *PostCollection) 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 PostCollection.ProtoReflect.Descriptor instead.
func (*PostCollection) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{5}
}

func (x *PostCollection) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *PostCollection) GetSlug() string {
	if x != nil {
		return x.Slug
	}
	return ""
}

func (x *PostCollection) GetName() *wrapperspb.StringValue {
	if x != nil {
		return x.Name
	}
	return nil
}

func (x *PostCollection) GetDescription() *wrapperspb.StringValue {
	if x != nil {
		return x.Description
	}
	return nil
}

func (x *PostCollection) GetPublisher() *Publisher {
	if x != nil {
		return x.Publisher
	}
	return nil
}

func (x *PostCollection) GetPublisherId() string {
	if x != nil && x.PublisherId != nil {
		return *x.PublisherId
	}
	return ""
}

func (x *PostCollection) GetPosts() []*Post {
	if x != nil {
		return x.Posts
	}
	return nil
}

func (x *PostCollection) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *PostCollection) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

type PostFeaturedRecord struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	PostId        string                 `protobuf:"bytes,2,opt,name=post_id,json=postId,proto3" json:"post_id,omitempty"`
	FeaturedAt    *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=featured_at,json=featuredAt,proto3,oneof" json:"featured_at,omitempty"`
	SocialCredits int32                  `protobuf:"varint,4,opt,name=social_credits,json=socialCredits,proto3" json:"social_credits,omitempty"`
	CreatedAt     *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostFeaturedRecord) Reset() {
	*x = PostFeaturedRecord{}
	mi := &file_post_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostFeaturedRecord) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostFeaturedRecord) ProtoMessage() {}

func (x *PostFeaturedRecord) 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 PostFeaturedRecord.ProtoReflect.Descriptor instead.
func (*PostFeaturedRecord) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{6}
}

func (x *PostFeaturedRecord) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *PostFeaturedRecord) GetPostId() string {
	if x != nil {
		return x.PostId
	}
	return ""
}

func (x *PostFeaturedRecord) GetFeaturedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.FeaturedAt
	}
	return nil
}

func (x *PostFeaturedRecord) GetSocialCredits() int32 {
	if x != nil {
		return x.SocialCredits
	}
	return 0
}

func (x *PostFeaturedRecord) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *PostFeaturedRecord) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

type PostReaction struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Symbol        string                 `protobuf:"bytes,2,opt,name=symbol,proto3" json:"symbol,omitempty"`
	Attitude      PostReactionAttitude   `protobuf:"varint,3,opt,name=attitude,proto3,enum=proto.PostReactionAttitude" json:"attitude,omitempty"`
	PostId        string                 `protobuf:"bytes,4,opt,name=post_id,json=postId,proto3" json:"post_id,omitempty"`
	AccountId     string                 `protobuf:"bytes,5,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	Account       *Account               `protobuf:"bytes,6,opt,name=account,proto3,oneof" json:"account,omitempty"` // optional full account
	CreatedAt     *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostReaction) Reset() {
	*x = PostReaction{}
	mi := &file_post_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostReaction) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostReaction) ProtoMessage() {}

func (x *PostReaction) 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 PostReaction.ProtoReflect.Descriptor instead.
func (*PostReaction) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{7}
}

func (x *PostReaction) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *PostReaction) GetSymbol() string {
	if x != nil {
		return x.Symbol
	}
	return ""
}

func (x *PostReaction) GetAttitude() PostReactionAttitude {
	if x != nil {
		return x.Attitude
	}
	return PostReactionAttitude_ATTITUDE_UNSPECIFIED
}

func (x *PostReaction) GetPostId() string {
	if x != nil {
		return x.PostId
	}
	return ""
}

func (x *PostReaction) GetAccountId() string {
	if x != nil {
		return x.AccountId
	}
	return ""
}

func (x *PostReaction) GetAccount() *Account {
	if x != nil {
		return x.Account
	}
	return nil
}

func (x *PostReaction) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *PostReaction) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

type PostAward struct {
	state         protoimpl.MessageState  `protogen:"open.v1"`
	Id            string                  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Amount        float64                 `protobuf:"fixed64,2,opt,name=amount,proto3" json:"amount,omitempty"`
	Attitude      PostReactionAttitude    `protobuf:"varint,3,opt,name=attitude,proto3,enum=proto.PostReactionAttitude" json:"attitude,omitempty"`
	Message       *wrapperspb.StringValue `protobuf:"bytes,4,opt,name=message,proto3,oneof" json:"message,omitempty"`
	PostId        string                  `protobuf:"bytes,5,opt,name=post_id,json=postId,proto3" json:"post_id,omitempty"`
	AccountId     string                  `protobuf:"bytes,6,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	CreatedAt     *timestamppb.Timestamp  `protobuf:"bytes,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     *timestamppb.Timestamp  `protobuf:"bytes,8,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PostAward) Reset() {
	*x = PostAward{}
	mi := &file_post_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *PostAward) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*PostAward) ProtoMessage() {}

func (x *PostAward) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[8]
	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 PostAward.ProtoReflect.Descriptor instead.
func (*PostAward) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{8}
}

func (x *PostAward) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *PostAward) GetAmount() float64 {
	if x != nil {
		return x.Amount
	}
	return 0
}

func (x *PostAward) GetAttitude() PostReactionAttitude {
	if x != nil {
		return x.Attitude
	}
	return PostReactionAttitude_ATTITUDE_UNSPECIFIED
}

func (x *PostAward) GetMessage() *wrapperspb.StringValue {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *PostAward) GetPostId() string {
	if x != nil {
		return x.PostId
	}
	return ""
}

func (x *PostAward) GetAccountId() string {
	if x != nil {
		return x.AccountId
	}
	return ""
}

func (x *PostAward) GetCreatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.CreatedAt
	}
	return nil
}

func (x *PostAward) GetUpdatedAt() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdatedAt
	}
	return nil
}

type GetPostRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Types that are valid to be assigned to Identifier:
	//
	//	*GetPostRequest_Id
	//	*GetPostRequest_Slug
	Identifier    isGetPostRequest_Identifier `protobuf_oneof:"identifier"`
	PublisherId   *wrapperspb.StringValue     `protobuf:"bytes,3,opt,name=publisher_id,json=publisherId,proto3" json:"publisher_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetPostRequest) Reset() {
	*x = GetPostRequest{}
	mi := &file_post_proto_msgTypes[9]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetPostRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetPostRequest) ProtoMessage() {}

func (x *GetPostRequest) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[9]
	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 GetPostRequest.ProtoReflect.Descriptor instead.
func (*GetPostRequest) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{9}
}

func (x *GetPostRequest) GetIdentifier() isGetPostRequest_Identifier {
	if x != nil {
		return x.Identifier
	}
	return nil
}

func (x *GetPostRequest) GetId() string {
	if x != nil {
		if x, ok := x.Identifier.(*GetPostRequest_Id); ok {
			return x.Id
		}
	}
	return ""
}

func (x *GetPostRequest) GetSlug() string {
	if x != nil {
		if x, ok := x.Identifier.(*GetPostRequest_Slug); ok {
			return x.Slug
		}
	}
	return ""
}

func (x *GetPostRequest) GetPublisherId() *wrapperspb.StringValue {
	if x != nil {
		return x.PublisherId
	}
	return nil
}

type isGetPostRequest_Identifier interface {
	isGetPostRequest_Identifier()
}

type GetPostRequest_Id struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3,oneof"`
}

type GetPostRequest_Slug struct {
	Slug string `protobuf:"bytes,2,opt,name=slug,proto3,oneof"`
}

func (*GetPostRequest_Id) isGetPostRequest_Identifier() {}

func (*GetPostRequest_Slug) isGetPostRequest_Identifier() {}

type GetPostBatchRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Ids           []string               `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetPostBatchRequest) Reset() {
	*x = GetPostBatchRequest{}
	mi := &file_post_proto_msgTypes[10]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetPostBatchRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetPostBatchRequest) ProtoMessage() {}

func (x *GetPostBatchRequest) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[10]
	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 GetPostBatchRequest.ProtoReflect.Descriptor instead.
func (*GetPostBatchRequest) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{10}
}

func (x *GetPostBatchRequest) GetIds() []string {
	if x != nil {
		return x.Ids
	}
	return nil
}

type GetPostBatchResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Posts         []*Post                `protobuf:"bytes,1,rep,name=posts,proto3" json:"posts,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetPostBatchResponse) Reset() {
	*x = GetPostBatchResponse{}
	mi := &file_post_proto_msgTypes[11]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetPostBatchResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetPostBatchResponse) ProtoMessage() {}

func (x *GetPostBatchResponse) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[11]
	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 GetPostBatchResponse.ProtoReflect.Descriptor instead.
func (*GetPostBatchResponse) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{11}
}

func (x *GetPostBatchResponse) GetPosts() []*Post {
	if x != nil {
		return x.Posts
	}
	return nil
}

type SearchPostsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Query         string                 `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	PublisherId   string                 `protobuf:"bytes,2,opt,name=publisher_id,json=publisherId,proto3" json:"publisher_id,omitempty"`
	RealmId       string                 `protobuf:"bytes,3,opt,name=realm_id,json=realmId,proto3" json:"realm_id,omitempty"`
	PageSize      int32                  `protobuf:"varint,4,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	PageToken     string                 `protobuf:"bytes,5,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	OrderBy       string                 `protobuf:"bytes,6,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SearchPostsRequest) Reset() {
	*x = SearchPostsRequest{}
	mi := &file_post_proto_msgTypes[12]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SearchPostsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SearchPostsRequest) ProtoMessage() {}

func (x *SearchPostsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[12]
	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 SearchPostsRequest.ProtoReflect.Descriptor instead.
func (*SearchPostsRequest) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{12}
}

func (x *SearchPostsRequest) GetQuery() string {
	if x != nil {
		return x.Query
	}
	return ""
}

func (x *SearchPostsRequest) GetPublisherId() string {
	if x != nil {
		return x.PublisherId
	}
	return ""
}

func (x *SearchPostsRequest) GetRealmId() string {
	if x != nil {
		return x.RealmId
	}
	return ""
}

func (x *SearchPostsRequest) GetPageSize() int32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *SearchPostsRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

func (x *SearchPostsRequest) GetOrderBy() string {
	if x != nil {
		return x.OrderBy
	}
	return ""
}

type SearchPostsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Posts         []*Post                `protobuf:"bytes,1,rep,name=posts,proto3" json:"posts,omitempty"`
	NextPageToken string                 `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	TotalSize     int32                  `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SearchPostsResponse) Reset() {
	*x = SearchPostsResponse{}
	mi := &file_post_proto_msgTypes[13]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SearchPostsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SearchPostsResponse) ProtoMessage() {}

func (x *SearchPostsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[13]
	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 SearchPostsResponse.ProtoReflect.Descriptor instead.
func (*SearchPostsResponse) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{13}
}

func (x *SearchPostsResponse) GetPosts() []*Post {
	if x != nil {
		return x.Posts
	}
	return nil
}

func (x *SearchPostsResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

func (x *SearchPostsResponse) GetTotalSize() int32 {
	if x != nil {
		return x.TotalSize
	}
	return 0
}

type ListPostsRequest struct {
	state          protoimpl.MessageState  `protogen:"open.v1"`
	PublisherId    *wrapperspb.StringValue `protobuf:"bytes,1,opt,name=publisher_id,json=publisherId,proto3" json:"publisher_id,omitempty"`
	RealmId        *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=realm_id,json=realmId,proto3" json:"realm_id,omitempty"`
	PageSize       int32                   `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	PageToken      string                  `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	OrderBy        *wrapperspb.StringValue `protobuf:"bytes,5,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
	OrderDesc      bool                    `protobuf:"varint,16,opt,name=order_desc,json=orderDesc,proto3" json:"order_desc,omitempty"`
	Categories     []string                `protobuf:"bytes,6,rep,name=categories,proto3" json:"categories,omitempty"`
	Tags           []string                `protobuf:"bytes,7,rep,name=tags,proto3" json:"tags,omitempty"`
	Query          *wrapperspb.StringValue `protobuf:"bytes,8,opt,name=query,proto3" json:"query,omitempty"`
	Types          []PostType              `protobuf:"varint,9,rep,packed,name=types,proto3,enum=proto.PostType" json:"types,omitempty"`
	After          *timestamppb.Timestamp  `protobuf:"bytes,10,opt,name=after,proto3,oneof" json:"after,omitempty"`                                    // Filter posts created after this timestamp
	Before         *timestamppb.Timestamp  `protobuf:"bytes,11,opt,name=before,proto3,oneof" json:"before,omitempty"`                                  // Filter posts created before this timestamp
	IncludeReplies bool                    `protobuf:"varint,12,opt,name=include_replies,json=includeReplies,proto3" json:"include_replies,omitempty"` // Include reply posts
	Pinned         *PostPinMode            `protobuf:"varint,13,opt,name=pinned,proto3,enum=proto.PostPinMode,oneof" json:"pinned,omitempty"`          // Filter by pinned mode (if present, null means not pinned)
	OnlyMedia      bool                    `protobuf:"varint,14,opt,name=only_media,json=onlyMedia,proto3" json:"only_media,omitempty"`                // Only return posts with attachments
	Shuffle        bool                    `protobuf:"varint,15,opt,name=shuffle,proto3" json:"shuffle,omitempty"`                                     // Random order
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *ListPostsRequest) Reset() {
	*x = ListPostsRequest{}
	mi := &file_post_proto_msgTypes[14]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListPostsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListPostsRequest) ProtoMessage() {}

func (x *ListPostsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[14]
	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 ListPostsRequest.ProtoReflect.Descriptor instead.
func (*ListPostsRequest) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{14}
}

func (x *ListPostsRequest) GetPublisherId() *wrapperspb.StringValue {
	if x != nil {
		return x.PublisherId
	}
	return nil
}

func (x *ListPostsRequest) GetRealmId() *wrapperspb.StringValue {
	if x != nil {
		return x.RealmId
	}
	return nil
}

func (x *ListPostsRequest) GetPageSize() int32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListPostsRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

func (x *ListPostsRequest) GetOrderBy() *wrapperspb.StringValue {
	if x != nil {
		return x.OrderBy
	}
	return nil
}

func (x *ListPostsRequest) GetOrderDesc() bool {
	if x != nil {
		return x.OrderDesc
	}
	return false
}

func (x *ListPostsRequest) GetCategories() []string {
	if x != nil {
		return x.Categories
	}
	return nil
}

func (x *ListPostsRequest) GetTags() []string {
	if x != nil {
		return x.Tags
	}
	return nil
}

func (x *ListPostsRequest) GetQuery() *wrapperspb.StringValue {
	if x != nil {
		return x.Query
	}
	return nil
}

func (x *ListPostsRequest) GetTypes() []PostType {
	if x != nil {
		return x.Types
	}
	return nil
}

func (x *ListPostsRequest) GetAfter() *timestamppb.Timestamp {
	if x != nil {
		return x.After
	}
	return nil
}

func (x *ListPostsRequest) GetBefore() *timestamppb.Timestamp {
	if x != nil {
		return x.Before
	}
	return nil
}

func (x *ListPostsRequest) GetIncludeReplies() bool {
	if x != nil {
		return x.IncludeReplies
	}
	return false
}

func (x *ListPostsRequest) GetPinned() PostPinMode {
	if x != nil && x.Pinned != nil {
		return *x.Pinned
	}
	return PostPinMode_PIN_MODE_UNSPECIFIED
}

func (x *ListPostsRequest) GetOnlyMedia() bool {
	if x != nil {
		return x.OnlyMedia
	}
	return false
}

func (x *ListPostsRequest) GetShuffle() bool {
	if x != nil {
		return x.Shuffle
	}
	return false
}

type ListPostsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Posts         []*Post                `protobuf:"bytes,1,rep,name=posts,proto3" json:"posts,omitempty"`
	NextPageToken string                 `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	TotalSize     int32                  `protobuf:"varint,3,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListPostsResponse) Reset() {
	*x = ListPostsResponse{}
	mi := &file_post_proto_msgTypes[15]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListPostsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListPostsResponse) ProtoMessage() {}

func (x *ListPostsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_post_proto_msgTypes[15]
	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 ListPostsResponse.ProtoReflect.Descriptor instead.
func (*ListPostsResponse) Descriptor() ([]byte, []int) {
	return file_post_proto_rawDescGZIP(), []int{15}
}

func (x *ListPostsResponse) GetPosts() []*Post {
	if x != nil {
		return x.Posts
	}
	return nil
}

func (x *ListPostsResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

func (x *ListPostsResponse) GetTotalSize() int32 {
	if x != nil {
		return x.TotalSize
	}
	return 0
}

var File_post_proto protoreflect.FileDescriptor

const file_post_proto_rawDesc = "" +
	"\n" +
	"\n" +
	"post.proto\x12\x05proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\n" +
	"file.proto\x1a\vrealm.proto\x1a\x0fpublisher.proto\x1a\raccount.proto\"\x94\x01\n" +
	"\rPostEmbedView\x12\x10\n" +
	"\x03uri\x18\x01 \x01(\tR\x03uri\x12&\n" +
	"\faspect_ratio\x18\x02 \x01(\x01H\x00R\vaspectRatio\x88\x01\x01\x128\n" +
	"\brenderer\x18\x03 \x01(\x0e2\x1c.proto.PostEmbedViewRendererR\brendererB\x0f\n" +
	"\r_aspect_ratio\"\xe0\x10\n" +
	"\x04Post\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n" +
	"\x05title\x18\x02 \x01(\tR\x05title\x12 \n" +
	"\vdescription\x18\x03 \x01(\tR\vdescription\x12\x12\n" +
	"\x04slug\x18\x04 \x01(\tR\x04slug\x12<\n" +
	"\tedited_at\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampH\x00R\beditedAt\x88\x01\x01\x12B\n" +
	"\fpublished_at\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampH\x01R\vpublishedAt\x88\x01\x01\x125\n" +
	"\n" +
	"visibility\x18\a \x01(\x0e2\x15.proto.PostVisibilityR\n" +
	"visibility\x12\x1d\n" +
	"\acontent\x18\b \x01(\tH\x02R\acontent\x88\x01\x01\x12#\n" +
	"\x04type\x18\t \x01(\x0e2\x0f.proto.PostTypeR\x04type\x122\n" +
	"\bpin_mode\x18\n" +
	" \x01(\x0e2\x12.proto.PostPinModeH\x03R\apinMode\x88\x01\x01\x12\x17\n" +
	"\x04meta\x18\v \x01(\fH\x04R\x04meta\x88\x01\x01\x12,\n" +
	"\x0fsensitive_marks\x18\f \x01(\fH\x05R\x0esensitiveMarks\x88\x01\x01\x128\n" +
	"\n" +
	"embed_view\x18\r \x01(\v2\x14.proto.PostEmbedViewH\x06R\tembedView\x88\x01\x01\x12!\n" +
	"\fviews_unique\x18\x0e \x01(\x05R\vviewsUnique\x12\x1f\n" +
	"\vviews_total\x18\x0f \x01(\x05R\n" +
	"viewsTotal\x12\x18\n" +
	"\aupvotes\x18\x10 \x01(\x05R\aupvotes\x12\x1c\n" +
	"\tdownvotes\x18\x11 \x01(\x05R\tdownvotes\x12#\n" +
	"\rawarded_score\x18\x12 \x01(\x01R\fawardedScore\x12H\n" +
	"\x0freactions_count\x18\x13 \x03(\v2\x1f.proto.Post.ReactionsCountEntryR\x0ereactionsCount\x12#\n" +
	"\rreplies_count\x18\x14 \x01(\x05R\frepliesCount\x12E\n" +
	"\x0ereactions_made\x18\x15 \x03(\v2\x1e.proto.Post.ReactionsMadeEntryR\rreactionsMade\x12!\n" +
	"\freplied_gone\x18\x16 \x01(\bR\vrepliedGone\x12%\n" +
	"\x0eforwarded_gone\x18\x17 \x01(\bR\rforwardedGone\x12+\n" +
	"\x0freplied_post_id\x18\x18 \x01(\tH\aR\rrepliedPostId\x88\x01\x01\x123\n" +
	"\freplied_post\x18\x19 \x01(\v2\v.proto.PostH\bR\vrepliedPost\x88\x01\x01\x12/\n" +
	"\x11forwarded_post_id\x18\x1a \x01(\tH\tR\x0fforwardedPostId\x88\x01\x01\x127\n" +
	"\x0eforwarded_post\x18\x1b \x01(\v2\v.proto.PostH\n" +
	"R\rforwardedPost\x88\x01\x01\x12\x1e\n" +
	"\brealm_id\x18\x1c \x01(\tH\vR\arealmId\x88\x01\x01\x12'\n" +
	"\x05realm\x18\x1d \x01(\v2\f.proto.RealmH\fR\x05realm\x88\x01\x01\x122\n" +
	"\vattachments\x18\x1e \x03(\v2\x10.proto.CloudFileR\vattachments\x12!\n" +
	"\fpublisher_id\x18\x1f \x01(\tR\vpublisherId\x12.\n" +
	"\tpublisher\x18  \x01(\v2\x10.proto.PublisherR\tpublisher\x12(\n" +
	"\x06awards\x18! \x03(\v2\x10.proto.PostAwardR\x06awards\x121\n" +
	"\treactions\x18\" \x03(\v2\x13.proto.PostReactionR\treactions\x12\"\n" +
	"\x04tags\x18# \x03(\v2\x0e.proto.PostTagR\x04tags\x123\n" +
	"\n" +
	"categories\x18$ \x03(\v2\x13.proto.PostCategoryR\n" +
	"categories\x12D\n" +
	"\x10featured_records\x18% \x03(\v2\x19.proto.PostFeaturedRecordR\x0ffeaturedRecords\x129\n" +
	"\n" +
	"created_at\x18& \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18' \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAt\x12>\n" +
	"\n" +
	"deleted_at\x18( \x01(\v2\x1a.google.protobuf.TimestampH\rR\tdeletedAt\x88\x01\x01\x1aA\n" +
	"\x13ReactionsCountEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\x05R\x05value:\x028\x01\x1a@\n" +
	"\x12ReactionsMadeEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\bR\x05value:\x028\x01B\f\n" +
	"\n" +
	"_edited_atB\x0f\n" +
	"\r_published_atB\n" +
	"\n" +
	"\b_contentB\v\n" +
	"\t_pin_modeB\a\n" +
	"\x05_metaB\x12\n" +
	"\x10_sensitive_marksB\r\n" +
	"\v_embed_viewB\x12\n" +
	"\x10_replied_post_idB\x0f\n" +
	"\r_replied_postB\x14\n" +
	"\x12_forwarded_post_idB\x11\n" +
	"\x0f_forwarded_postB\v\n" +
	"\t_realm_idB\b\n" +
	"\x06_realmB\r\n" +
	"\v_deleted_at\"\xb7\x01\n" +
	"\aPostTag\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
	"\x04slug\x18\x02 \x01(\tR\x04slug\x12\x12\n" +
	"\x04name\x18\x03 \x01(\tR\x04name\x129\n" +
	"\n" +
	"created_at\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAt\"\xbc\x01\n" +
	"\fPostCategory\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
	"\x04slug\x18\x02 \x01(\tR\x04slug\x12\x12\n" +
	"\x04name\x18\x03 \x01(\tR\x04name\x129\n" +
	"\n" +
	"created_at\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAt\"\x8e\x03\n" +
	"\x18PostCategorySubscription\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n" +
	"\n" +
	"account_id\x18\x02 \x01(\tR\taccountId\x12$\n" +
	"\vcategory_id\x18\x03 \x01(\tH\x00R\n" +
	"categoryId\x88\x01\x01\x124\n" +
	"\bcategory\x18\x04 \x01(\v2\x13.proto.PostCategoryH\x01R\bcategory\x88\x01\x01\x12\x1a\n" +
	"\x06tag_id\x18\x05 \x01(\tH\x02R\x05tagId\x88\x01\x01\x12%\n" +
	"\x03tag\x18\x06 \x01(\v2\x0e.proto.PostTagH\x03R\x03tag\x88\x01\x01\x129\n" +
	"\n" +
	"created_at\x18\a \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18\b \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAtB\x0e\n" +
	"\f_category_idB\v\n" +
	"\t_categoryB\t\n" +
	"\a_tag_idB\x06\n" +
	"\x04_tag\"\xcb\x03\n" +
	"\x0ePostCollection\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
	"\x04slug\x18\x02 \x01(\tR\x04slug\x125\n" +
	"\x04name\x18\x03 \x01(\v2\x1c.google.protobuf.StringValueH\x00R\x04name\x88\x01\x01\x12C\n" +
	"\vdescription\x18\x04 \x01(\v2\x1c.google.protobuf.StringValueH\x01R\vdescription\x88\x01\x01\x12.\n" +
	"\tpublisher\x18\x05 \x01(\v2\x10.proto.PublisherR\tpublisher\x12&\n" +
	"\fpublisher_id\x18\x06 \x01(\tH\x02R\vpublisherId\x88\x01\x01\x12!\n" +
	"\x05posts\x18\a \x03(\v2\v.proto.PostR\x05posts\x129\n" +
	"\n" +
	"created_at\x18\b \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18\t \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAtB\a\n" +
	"\x05_nameB\x0e\n" +
	"\f_descriptionB\x0f\n" +
	"\r_publisher_id\"\xac\x02\n" +
	"\x12PostFeaturedRecord\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x17\n" +
	"\apost_id\x18\x02 \x01(\tR\x06postId\x12@\n" +
	"\vfeatured_at\x18\x03 \x01(\v2\x1a.google.protobuf.TimestampH\x00R\n" +
	"featuredAt\x88\x01\x01\x12%\n" +
	"\x0esocial_credits\x18\x04 \x01(\x05R\rsocialCredits\x129\n" +
	"\n" +
	"created_at\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAtB\x0e\n" +
	"\f_featured_at\"\xd8\x02\n" +
	"\fPostReaction\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x16\n" +
	"\x06symbol\x18\x02 \x01(\tR\x06symbol\x127\n" +
	"\battitude\x18\x03 \x01(\x0e2\x1b.proto.PostReactionAttitudeR\battitude\x12\x17\n" +
	"\apost_id\x18\x04 \x01(\tR\x06postId\x12\x1d\n" +
	"\n" +
	"account_id\x18\x05 \x01(\tR\taccountId\x12-\n" +
	"\aaccount\x18\x06 \x01(\v2\x0e.proto.AccountH\x00R\aaccount\x88\x01\x01\x129\n" +
	"\n" +
	"created_at\x18\a \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18\b \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAtB\n" +
	"\n" +
	"\b_account\"\xe3\x02\n" +
	"\tPostAward\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x16\n" +
	"\x06amount\x18\x02 \x01(\x01R\x06amount\x127\n" +
	"\battitude\x18\x03 \x01(\x0e2\x1b.proto.PostReactionAttitudeR\battitude\x12;\n" +
	"\amessage\x18\x04 \x01(\v2\x1c.google.protobuf.StringValueH\x00R\amessage\x88\x01\x01\x12\x17\n" +
	"\apost_id\x18\x05 \x01(\tR\x06postId\x12\x1d\n" +
	"\n" +
	"account_id\x18\x06 \x01(\tR\taccountId\x129\n" +
	"\n" +
	"created_at\x18\a \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" +
	"\n" +
	"updated_at\x18\b \x01(\v2\x1a.google.protobuf.TimestampR\tupdatedAtB\n" +
	"\n" +
	"\b_message\"\x87\x01\n" +
	"\x0eGetPostRequest\x12\x10\n" +
	"\x02id\x18\x01 \x01(\tH\x00R\x02id\x12\x14\n" +
	"\x04slug\x18\x02 \x01(\tH\x00R\x04slug\x12?\n" +
	"\fpublisher_id\x18\x03 \x01(\v2\x1c.google.protobuf.StringValueR\vpublisherIdB\f\n" +
	"\n" +
	"identifier\"'\n" +
	"\x13GetPostBatchRequest\x12\x10\n" +
	"\x03ids\x18\x01 \x03(\tR\x03ids\"9\n" +
	"\x14GetPostBatchResponse\x12!\n" +
	"\x05posts\x18\x01 \x03(\v2\v.proto.PostR\x05posts\"\xbf\x01\n" +
	"\x12SearchPostsRequest\x12\x14\n" +
	"\x05query\x18\x01 \x01(\tR\x05query\x12!\n" +
	"\fpublisher_id\x18\x02 \x01(\tR\vpublisherId\x12\x19\n" +
	"\brealm_id\x18\x03 \x01(\tR\arealmId\x12\x1b\n" +
	"\tpage_size\x18\x04 \x01(\x05R\bpageSize\x12\x1d\n" +
	"\n" +
	"page_token\x18\x05 \x01(\tR\tpageToken\x12\x19\n" +
	"\border_by\x18\x06 \x01(\tR\aorderBy\"\x7f\n" +
	"\x13SearchPostsResponse\x12!\n" +
	"\x05posts\x18\x01 \x03(\v2\v.proto.PostR\x05posts\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1d\n" +
	"\n" +
	"total_size\x18\x03 \x01(\x05R\ttotalSize\"\xd2\x05\n" +
	"\x10ListPostsRequest\x12?\n" +
	"\fpublisher_id\x18\x01 \x01(\v2\x1c.google.protobuf.StringValueR\vpublisherId\x127\n" +
	"\brealm_id\x18\x02 \x01(\v2\x1c.google.protobuf.StringValueR\arealmId\x12\x1b\n" +
	"\tpage_size\x18\x03 \x01(\x05R\bpageSize\x12\x1d\n" +
	"\n" +
	"page_token\x18\x04 \x01(\tR\tpageToken\x127\n" +
	"\border_by\x18\x05 \x01(\v2\x1c.google.protobuf.StringValueR\aorderBy\x12\x1d\n" +
	"\n" +
	"order_desc\x18\x10 \x01(\bR\torderDesc\x12\x1e\n" +
	"\n" +
	"categories\x18\x06 \x03(\tR\n" +
	"categories\x12\x12\n" +
	"\x04tags\x18\a \x03(\tR\x04tags\x122\n" +
	"\x05query\x18\b \x01(\v2\x1c.google.protobuf.StringValueR\x05query\x12%\n" +
	"\x05types\x18\t \x03(\x0e2\x0f.proto.PostTypeR\x05types\x125\n" +
	"\x05after\x18\n" +
	" \x01(\v2\x1a.google.protobuf.TimestampH\x00R\x05after\x88\x01\x01\x127\n" +
	"\x06before\x18\v \x01(\v2\x1a.google.protobuf.TimestampH\x01R\x06before\x88\x01\x01\x12'\n" +
	"\x0finclude_replies\x18\f \x01(\bR\x0eincludeReplies\x12/\n" +
	"\x06pinned\x18\r \x01(\x0e2\x12.proto.PostPinModeH\x02R\x06pinned\x88\x01\x01\x12\x1d\n" +
	"\n" +
	"only_media\x18\x0e \x01(\bR\tonlyMedia\x12\x18\n" +
	"\ashuffle\x18\x0f \x01(\bR\ashuffleB\b\n" +
	"\x06_afterB\t\n" +
	"\a_beforeB\t\n" +
	"\a_pinned\"}\n" +
	"\x11ListPostsResponse\x12!\n" +
	"\x05posts\x18\x01 \x03(\v2\v.proto.PostR\x05posts\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1d\n" +
	"\n" +
	"total_size\x18\x03 \x01(\x05R\ttotalSize*>\n" +
	"\bPostType\x12\x19\n" +
	"\x15POST_TYPE_UNSPECIFIED\x10\x00\x12\n" +
	"\n" +
	"\x06MOMENT\x10\x01\x12\v\n" +
	"\aARTICLE\x10\x02*`\n" +
	"\x0ePostVisibility\x12\x1a\n" +
	"\x16VISIBILITY_UNSPECIFIED\x10\x00\x12\n" +
	"\n" +
	"\x06PUBLIC\x10\x01\x12\v\n" +
	"\aFRIENDS\x10\x02\x12\f\n" +
	"\bUNLISTED\x10\x03\x12\v\n" +
	"\aPRIVATE\x10\x04*[\n" +
	"\vPostPinMode\x12\x18\n" +
	"\x14PIN_MODE_UNSPECIFIED\x10\x00\x12\x12\n" +
	"\x0ePUBLISHER_PAGE\x10\x01\x12\x0e\n" +
	"\n" +
	"REALM_PAGE\x10\x02\x12\x0e\n" +
	"\n" +
	"REPLY_PAGE\x10\x03*\x81\x02\n" +
	"\x14ContentSensitiveMark\x12\x1e\n" +
	"\x1aSENSITIVE_MARK_UNSPECIFIED\x10\x00\x12\f\n" +
	"\bLANGUAGE\x10\x01\x12\x12\n" +
	"\x0eSEXUAL_CONTENT\x10\x02\x12\f\n" +
	"\bVIOLENCE\x10\x03\x12\r\n" +
	"\tPROFANITY\x10\x04\x12\x0f\n" +
	"\vHATE_SPEECH\x10\x05\x12\n" +
	"\n" +
	"\x06RACISM\x10\x06\x12\x11\n" +
	"\rADULT_CONTENT\x10\a\x12\x0e\n" +
	"\n" +
	"DRUG_ABUSE\x10\b\x12\x11\n" +
	"\rALCOHOL_ABUSE\x10\t\x12\f\n" +
	"\bGAMBLING\x10\n" +
	"\x12\r\n" +
	"\tSELF_HARM\x10\v\x12\x0f\n" +
	"\vCHILD_ABUSE\x10\f\x12\t\n" +
	"\x05OTHER\x10\r*\x83\x01\n" +
	"\x14PostReactionAttitude\x12\x18\n" +
	"\x14ATTITUDE_UNSPECIFIED\x10\x00\x12\x1a\n" +
	"\x16POST_ATTITUDE_POSITIVE\x10\x01\x12\x19\n" +
	"\x15POST_ATTITUDE_NEUTRAL\x10\x02\x12\x1a\n" +
	"\x16POST_ATTITUDE_NEGATIVE\x10\x03*>\n" +
	"\x15PostEmbedViewRenderer\x12\x18\n" +
	"\x14RENDERER_UNSPECIFIED\x10\x00\x12\v\n" +
	"\aWEBVIEW\x10\x012\x8b\x02\n" +
	"\vPostService\x12-\n" +
	"\aGetPost\x12\x15.proto.GetPostRequest\x1a\v.proto.Post\x12G\n" +
	"\fGetPostBatch\x12\x1a.proto.GetPostBatchRequest\x1a\x1b.proto.GetPostBatchResponse\x12D\n" +
	"\vSearchPosts\x12\x19.proto.SearchPostsRequest\x1a\x1a.proto.SearchPostsResponse\x12>\n" +
	"\tListPosts\x12\x17.proto.ListPostsRequest\x1a\x18.proto.ListPostsResponseBUZ7git.solsynth.dev/goatworks/turbine/pkg/shared/proto/gen\xaa\x02\x19DysonNetwork.Shared.Protob\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_enumTypes = make([]protoimpl.EnumInfo, 6)
var file_post_proto_msgTypes = make([]protoimpl.MessageInfo, 18)
var file_post_proto_goTypes = []any{
	(PostType)(0),                    // 0: proto.PostType
	(PostVisibility)(0),              // 1: proto.PostVisibility
	(PostPinMode)(0),                 // 2: proto.PostPinMode
	(ContentSensitiveMark)(0),        // 3: proto.ContentSensitiveMark
	(PostReactionAttitude)(0),        // 4: proto.PostReactionAttitude
	(PostEmbedViewRenderer)(0),       // 5: proto.PostEmbedViewRenderer
	(*PostEmbedView)(nil),            // 6: proto.PostEmbedView
	(*Post)(nil),                     // 7: proto.Post
	(*PostTag)(nil),                  // 8: proto.PostTag
	(*PostCategory)(nil),             // 9: proto.PostCategory
	(*PostCategorySubscription)(nil), // 10: proto.PostCategorySubscription
	(*PostCollection)(nil),           // 11: proto.PostCollection
	(*PostFeaturedRecord)(nil),       // 12: proto.PostFeaturedRecord
	(*PostReaction)(nil),             // 13: proto.PostReaction
	(*PostAward)(nil),                // 14: proto.PostAward
	(*GetPostRequest)(nil),           // 15: proto.GetPostRequest
	(*GetPostBatchRequest)(nil),      // 16: proto.GetPostBatchRequest
	(*GetPostBatchResponse)(nil),     // 17: proto.GetPostBatchResponse
	(*SearchPostsRequest)(nil),       // 18: proto.SearchPostsRequest
	(*SearchPostsResponse)(nil),      // 19: proto.SearchPostsResponse
	(*ListPostsRequest)(nil),         // 20: proto.ListPostsRequest
	(*ListPostsResponse)(nil),        // 21: proto.ListPostsResponse
	nil,                              // 22: proto.Post.ReactionsCountEntry
	nil,                              // 23: proto.Post.ReactionsMadeEntry
	(*timestamppb.Timestamp)(nil),    // 24: google.protobuf.Timestamp
	(*Realm)(nil),                    // 25: proto.Realm
	(*CloudFile)(nil),                // 26: proto.CloudFile
	(*Publisher)(nil),                // 27: proto.Publisher
	(*wrapperspb.StringValue)(nil),   // 28: google.protobuf.StringValue
	(*Account)(nil),                  // 29: proto.Account
}
var file_post_proto_depIdxs = []int32{
	5,  // 0: proto.PostEmbedView.renderer:type_name -> proto.PostEmbedViewRenderer
	24, // 1: proto.Post.edited_at:type_name -> google.protobuf.Timestamp
	24, // 2: proto.Post.published_at:type_name -> google.protobuf.Timestamp
	1,  // 3: proto.Post.visibility:type_name -> proto.PostVisibility
	0,  // 4: proto.Post.type:type_name -> proto.PostType
	2,  // 5: proto.Post.pin_mode:type_name -> proto.PostPinMode
	6,  // 6: proto.Post.embed_view:type_name -> proto.PostEmbedView
	22, // 7: proto.Post.reactions_count:type_name -> proto.Post.ReactionsCountEntry
	23, // 8: proto.Post.reactions_made:type_name -> proto.Post.ReactionsMadeEntry
	7,  // 9: proto.Post.replied_post:type_name -> proto.Post
	7,  // 10: proto.Post.forwarded_post:type_name -> proto.Post
	25, // 11: proto.Post.realm:type_name -> proto.Realm
	26, // 12: proto.Post.attachments:type_name -> proto.CloudFile
	27, // 13: proto.Post.publisher:type_name -> proto.Publisher
	14, // 14: proto.Post.awards:type_name -> proto.PostAward
	13, // 15: proto.Post.reactions:type_name -> proto.PostReaction
	8,  // 16: proto.Post.tags:type_name -> proto.PostTag
	9,  // 17: proto.Post.categories:type_name -> proto.PostCategory
	12, // 18: proto.Post.featured_records:type_name -> proto.PostFeaturedRecord
	24, // 19: proto.Post.created_at:type_name -> google.protobuf.Timestamp
	24, // 20: proto.Post.updated_at:type_name -> google.protobuf.Timestamp
	24, // 21: proto.Post.deleted_at:type_name -> google.protobuf.Timestamp
	24, // 22: proto.PostTag.created_at:type_name -> google.protobuf.Timestamp
	24, // 23: proto.PostTag.updated_at:type_name -> google.protobuf.Timestamp
	24, // 24: proto.PostCategory.created_at:type_name -> google.protobuf.Timestamp
	24, // 25: proto.PostCategory.updated_at:type_name -> google.protobuf.Timestamp
	9,  // 26: proto.PostCategorySubscription.category:type_name -> proto.PostCategory
	8,  // 27: proto.PostCategorySubscription.tag:type_name -> proto.PostTag
	24, // 28: proto.PostCategorySubscription.created_at:type_name -> google.protobuf.Timestamp
	24, // 29: proto.PostCategorySubscription.updated_at:type_name -> google.protobuf.Timestamp
	28, // 30: proto.PostCollection.name:type_name -> google.protobuf.StringValue
	28, // 31: proto.PostCollection.description:type_name -> google.protobuf.StringValue
	27, // 32: proto.PostCollection.publisher:type_name -> proto.Publisher
	7,  // 33: proto.PostCollection.posts:type_name -> proto.Post
	24, // 34: proto.PostCollection.created_at:type_name -> google.protobuf.Timestamp
	24, // 35: proto.PostCollection.updated_at:type_name -> google.protobuf.Timestamp
	24, // 36: proto.PostFeaturedRecord.featured_at:type_name -> google.protobuf.Timestamp
	24, // 37: proto.PostFeaturedRecord.created_at:type_name -> google.protobuf.Timestamp
	24, // 38: proto.PostFeaturedRecord.updated_at:type_name -> google.protobuf.Timestamp
	4,  // 39: proto.PostReaction.attitude:type_name -> proto.PostReactionAttitude
	29, // 40: proto.PostReaction.account:type_name -> proto.Account
	24, // 41: proto.PostReaction.created_at:type_name -> google.protobuf.Timestamp
	24, // 42: proto.PostReaction.updated_at:type_name -> google.protobuf.Timestamp
	4,  // 43: proto.PostAward.attitude:type_name -> proto.PostReactionAttitude
	28, // 44: proto.PostAward.message:type_name -> google.protobuf.StringValue
	24, // 45: proto.PostAward.created_at:type_name -> google.protobuf.Timestamp
	24, // 46: proto.PostAward.updated_at:type_name -> google.protobuf.Timestamp
	28, // 47: proto.GetPostRequest.publisher_id:type_name -> google.protobuf.StringValue
	7,  // 48: proto.GetPostBatchResponse.posts:type_name -> proto.Post
	7,  // 49: proto.SearchPostsResponse.posts:type_name -> proto.Post
	28, // 50: proto.ListPostsRequest.publisher_id:type_name -> google.protobuf.StringValue
	28, // 51: proto.ListPostsRequest.realm_id:type_name -> google.protobuf.StringValue
	28, // 52: proto.ListPostsRequest.order_by:type_name -> google.protobuf.StringValue
	28, // 53: proto.ListPostsRequest.query:type_name -> google.protobuf.StringValue
	0,  // 54: proto.ListPostsRequest.types:type_name -> proto.PostType
	24, // 55: proto.ListPostsRequest.after:type_name -> google.protobuf.Timestamp
	24, // 56: proto.ListPostsRequest.before:type_name -> google.protobuf.Timestamp
	2,  // 57: proto.ListPostsRequest.pinned:type_name -> proto.PostPinMode
	7,  // 58: proto.ListPostsResponse.posts:type_name -> proto.Post
	15, // 59: proto.PostService.GetPost:input_type -> proto.GetPostRequest
	16, // 60: proto.PostService.GetPostBatch:input_type -> proto.GetPostBatchRequest
	18, // 61: proto.PostService.SearchPosts:input_type -> proto.SearchPostsRequest
	20, // 62: proto.PostService.ListPosts:input_type -> proto.ListPostsRequest
	7,  // 63: proto.PostService.GetPost:output_type -> proto.Post
	17, // 64: proto.PostService.GetPostBatch:output_type -> proto.GetPostBatchResponse
	19, // 65: proto.PostService.SearchPosts:output_type -> proto.SearchPostsResponse
	21, // 66: proto.PostService.ListPosts:output_type -> proto.ListPostsResponse
	63, // [63:67] is the sub-list for method output_type
	59, // [59:63] is the sub-list for method input_type
	59, // [59:59] is the sub-list for extension type_name
	59, // [59:59] is the sub-list for extension extendee
	0,  // [0:59] 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_file_proto_init()
	file_realm_proto_init()
	file_publisher_proto_init()
	file_account_proto_init()
	file_post_proto_msgTypes[0].OneofWrappers = []any{}
	file_post_proto_msgTypes[1].OneofWrappers = []any{}
	file_post_proto_msgTypes[4].OneofWrappers = []any{}
	file_post_proto_msgTypes[5].OneofWrappers = []any{}
	file_post_proto_msgTypes[6].OneofWrappers = []any{}
	file_post_proto_msgTypes[7].OneofWrappers = []any{}
	file_post_proto_msgTypes[8].OneofWrappers = []any{}
	file_post_proto_msgTypes[9].OneofWrappers = []any{
		(*GetPostRequest_Id)(nil),
		(*GetPostRequest_Slug)(nil),
	}
	file_post_proto_msgTypes[14].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:      6,
			NumMessages:   18,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_post_proto_goTypes,
		DependencyIndexes: file_post_proto_depIdxs,
		EnumInfos:         file_post_proto_enumTypes,
		MessageInfos:      file_post_proto_msgTypes,
	}.Build()
	File_post_proto = out.File
	file_post_proto_goTypes = nil
	file_post_proto_depIdxs = nil
}
