// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v7.35.0
// source: module/base/cloud/proto/share.proto

package cloud

import (
	protobuf "bsm/full/protobuf"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	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)
)

// 请求消息定义
type CreateShareRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	CloudId       uint64                 `protobuf:"varint,1,opt,name=cloud_id,json=cloudId,proto3" json:"cloud_id,omitempty"`
	CloudIdentity string                 `protobuf:"bytes,2,opt,name=cloud_identity,json=cloudIdentity,proto3" json:"cloud_identity,omitempty"`
	ShareType     string                 `protobuf:"bytes,3,opt,name=share_type,json=shareType,proto3" json:"share_type,omitempty"`     // file, album, note, etc.
	ResourceId    uint64                 `protobuf:"varint,4,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"` // 对应资源的ID
	ShareToken    string                 `protobuf:"bytes,5,opt,name=share_token,json=shareToken,proto3" json:"share_token,omitempty"`  // 分享令牌
	Password      string                 `protobuf:"bytes,6,opt,name=password,proto3" json:"password,omitempty"`                        // 可选分享密码
	ExpiresAt     string                 `protobuf:"bytes,7,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`     // 过期时间
	IsPublic      bool                   `protobuf:"varint,8,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"`       // 是否公开
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateShareRequest) ProtoMessage() {}

func (x *CreateShareRequest) ProtoReflect() protoreflect.Message {
	mi := &file_module_base_cloud_proto_share_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 CreateShareRequest.ProtoReflect.Descriptor instead.
func (*CreateShareRequest) Descriptor() ([]byte, []int) {
	return file_module_base_cloud_proto_share_proto_rawDescGZIP(), []int{0}
}

func (x *CreateShareRequest) GetCloudId() uint64 {
	if x != nil {
		return x.CloudId
	}
	return 0
}

func (x *CreateShareRequest) GetCloudIdentity() string {
	if x != nil {
		return x.CloudIdentity
	}
	return ""
}

func (x *CreateShareRequest) GetShareType() string {
	if x != nil {
		return x.ShareType
	}
	return ""
}

func (x *CreateShareRequest) GetResourceId() uint64 {
	if x != nil {
		return x.ResourceId
	}
	return 0
}

func (x *CreateShareRequest) GetShareToken() string {
	if x != nil {
		return x.ShareToken
	}
	return ""
}

func (x *CreateShareRequest) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

func (x *CreateShareRequest) GetExpiresAt() string {
	if x != nil {
		return x.ExpiresAt
	}
	return ""
}

func (x *CreateShareRequest) GetIsPublic() bool {
	if x != nil {
		return x.IsPublic
	}
	return false
}

type ListSharesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Shares        []*CloudShareItem      `protobuf:"bytes,1,rep,name=shares,proto3" json:"shares,omitempty"`
	Total         int64                  `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListSharesResponse) Reset() {
	*x = ListSharesResponse{}
	mi := &file_module_base_cloud_proto_share_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListSharesResponse) ProtoMessage() {}

func (x *ListSharesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_module_base_cloud_proto_share_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 ListSharesResponse.ProtoReflect.Descriptor instead.
func (*ListSharesResponse) Descriptor() ([]byte, []int) {
	return file_module_base_cloud_proto_share_proto_rawDescGZIP(), []int{1}
}

func (x *ListSharesResponse) GetShares() []*CloudShareItem {
	if x != nil {
		return x.Shares
	}
	return nil
}

func (x *ListSharesResponse) GetTotal() int64 {
	if x != nil {
		return x.Total
	}
	return 0
}

type ValidateSharePasswordRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Identity      string                 `protobuf:"bytes,1,opt,name=identity,proto3" json:"identity,omitempty"`
	Password      string                 `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ValidateSharePasswordRequest) ProtoMessage() {}

func (x *ValidateSharePasswordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_module_base_cloud_proto_share_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 ValidateSharePasswordRequest.ProtoReflect.Descriptor instead.
func (*ValidateSharePasswordRequest) Descriptor() ([]byte, []int) {
	return file_module_base_cloud_proto_share_proto_rawDescGZIP(), []int{2}
}

func (x *ValidateSharePasswordRequest) GetIdentity() string {
	if x != nil {
		return x.Identity
	}
	return ""
}

func (x *ValidateSharePasswordRequest) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

// 分享系统模型
type CloudShareItem struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            uint64                 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Identity      string                 `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"`
	ShareType     string                 `protobuf:"bytes,3,opt,name=share_type,json=shareType,proto3" json:"share_type,omitempty"`              // file, album, note, etc.
	ResourceId    uint64                 `protobuf:"varint,4,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`          // 对应资源的ID
	ShareToken    string                 `protobuf:"bytes,5,opt,name=share_token,json=shareToken,proto3" json:"share_token,omitempty"`           // 分享令牌
	Password      string                 `protobuf:"bytes,6,opt,name=password,proto3" json:"password,omitempty"`                                 // 可选分享密码
	ExpiresAt     string                 `protobuf:"bytes,7,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`              // 过期时间
	ViewCount     int32                  `protobuf:"varint,8,opt,name=view_count,json=viewCount,proto3" json:"view_count,omitempty"`             // 浏览次数
	DownloadCount int32                  `protobuf:"varint,9,opt,name=download_count,json=downloadCount,proto3" json:"download_count,omitempty"` // 下载次数
	IsPublic      bool                   `protobuf:"varint,10,opt,name=is_public,json=isPublic,proto3" json:"is_public,omitempty"`               // 是否公开
	CreatedAt     string                 `protobuf:"bytes,11,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	UpdatedAt     string                 `protobuf:"bytes,12,opt,name=updated_at,json=updatedAt,proto3" json:"updated_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CloudShareItem) ProtoMessage() {}

func (x *CloudShareItem) ProtoReflect() protoreflect.Message {
	mi := &file_module_base_cloud_proto_share_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 CloudShareItem.ProtoReflect.Descriptor instead.
func (*CloudShareItem) Descriptor() ([]byte, []int) {
	return file_module_base_cloud_proto_share_proto_rawDescGZIP(), []int{3}
}

func (x *CloudShareItem) GetId() uint64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *CloudShareItem) GetIdentity() string {
	if x != nil {
		return x.Identity
	}
	return ""
}

func (x *CloudShareItem) GetShareType() string {
	if x != nil {
		return x.ShareType
	}
	return ""
}

func (x *CloudShareItem) GetResourceId() uint64 {
	if x != nil {
		return x.ResourceId
	}
	return 0
}

func (x *CloudShareItem) GetShareToken() string {
	if x != nil {
		return x.ShareToken
	}
	return ""
}

func (x *CloudShareItem) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

func (x *CloudShareItem) GetExpiresAt() string {
	if x != nil {
		return x.ExpiresAt
	}
	return ""
}

func (x *CloudShareItem) GetViewCount() int32 {
	if x != nil {
		return x.ViewCount
	}
	return 0
}

func (x *CloudShareItem) GetDownloadCount() int32 {
	if x != nil {
		return x.DownloadCount
	}
	return 0
}

func (x *CloudShareItem) GetIsPublic() bool {
	if x != nil {
		return x.IsPublic
	}
	return false
}

func (x *CloudShareItem) GetCreatedAt() string {
	if x != nil {
		return x.CreatedAt
	}
	return ""
}

func (x *CloudShareItem) GetUpdatedAt() string {
	if x != nil {
		return x.UpdatedAt
	}
	return ""
}

var File_module_base_cloud_proto_share_proto protoreflect.FileDescriptor

const file_module_base_cloud_proto_share_proto_rawDesc = "" +
	"\n" +
	"#module/base/cloud/proto/share.proto\x12\x05cloud\x1a\x15protobuf/blocks.proto\"\x8f\x02\n" +
	"\x12CreateShareRequest\x12\x19\n" +
	"\bcloud_id\x18\x01 \x01(\x04R\acloudId\x12%\n" +
	"\x0ecloud_identity\x18\x02 \x01(\tR\rcloudIdentity\x12\x1d\n" +
	"\n" +
	"share_type\x18\x03 \x01(\tR\tshareType\x12\x1f\n" +
	"\vresource_id\x18\x04 \x01(\x04R\n" +
	"resourceId\x12\x1f\n" +
	"\vshare_token\x18\x05 \x01(\tR\n" +
	"shareToken\x12\x1a\n" +
	"\bpassword\x18\x06 \x01(\tR\bpassword\x12\x1d\n" +
	"\n" +
	"expires_at\x18\a \x01(\tR\texpiresAt\x12\x1b\n" +
	"\tis_public\x18\b \x01(\bR\bisPublic\"Y\n" +
	"\x12ListSharesResponse\x12-\n" +
	"\x06shares\x18\x01 \x03(\v2\x15.cloud.CloudShareItemR\x06shares\x12\x14\n" +
	"\x05total\x18\x02 \x01(\x03R\x05total\"V\n" +
	"\x1cValidateSharePasswordRequest\x12\x1a\n" +
	"\bidentity\x18\x01 \x01(\tR\bidentity\x12\x1a\n" +
	"\bpassword\x18\x02 \x01(\tR\bpassword\"\xf9\x02\n" +
	"\x0eCloudShareItem\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\x04R\x02id\x12\x1a\n" +
	"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x1d\n" +
	"\n" +
	"share_type\x18\x03 \x01(\tR\tshareType\x12\x1f\n" +
	"\vresource_id\x18\x04 \x01(\x04R\n" +
	"resourceId\x12\x1f\n" +
	"\vshare_token\x18\x05 \x01(\tR\n" +
	"shareToken\x12\x1a\n" +
	"\bpassword\x18\x06 \x01(\tR\bpassword\x12\x1d\n" +
	"\n" +
	"expires_at\x18\a \x01(\tR\texpiresAt\x12\x1d\n" +
	"\n" +
	"view_count\x18\b \x01(\x05R\tviewCount\x12%\n" +
	"\x0edownload_count\x18\t \x01(\x05R\rdownloadCount\x12\x1b\n" +
	"\tis_public\x18\n" +
	" \x01(\bR\bisPublic\x12\x1d\n" +
	"\n" +
	"created_at\x18\v \x01(\tR\tcreatedAt\x12\x1d\n" +
	"\n" +
	"updated_at\x18\f \x01(\tR\tupdatedAt2\xcb\x02\n" +
	"\x05Share\x12=\n" +
	"\vCreateShare\x12\x19.cloud.CreateShareRequest\x1a\x13.blocks.StatusReply\x127\n" +
	"\bGetShare\x12\x14.blocks.IdentRequest\x1a\x15.cloud.CloudShareItem\x128\n" +
	"\vDeleteShare\x12\x14.blocks.IdentRequest\x1a\x13.blocks.StatusReply\x12=\n" +
	"\n" +
	"ListShares\x12\x14.blocks.FetchRequest\x1a\x19.cloud.ListSharesResponse\x12Q\n" +
	"\x15ValidateSharePassword\x12#.cloud.ValidateSharePasswordRequest\x1a\x13.blocks.StatusReplyB%Z#bsm/full/module/base/cloud/pb;cloudb\x06proto3"

var (
	file_module_base_cloud_proto_share_proto_rawDescOnce sync.Once
	file_module_base_cloud_proto_share_proto_rawDescData []byte
)

func file_module_base_cloud_proto_share_proto_rawDescGZIP() []byte {
	file_module_base_cloud_proto_share_proto_rawDescOnce.Do(func() {
		file_module_base_cloud_proto_share_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_module_base_cloud_proto_share_proto_rawDesc), len(file_module_base_cloud_proto_share_proto_rawDesc)))
	})
	return file_module_base_cloud_proto_share_proto_rawDescData
}

var file_module_base_cloud_proto_share_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_module_base_cloud_proto_share_proto_goTypes = []any{
	(*CreateShareRequest)(nil),           // 0: cloud.CreateShareRequest
	(*ListSharesResponse)(nil),           // 1: cloud.ListSharesResponse
	(*ValidateSharePasswordRequest)(nil), // 2: cloud.ValidateSharePasswordRequest
	(*CloudShareItem)(nil),               // 3: cloud.CloudShareItem
	(*protobuf.IdentRequest)(nil),        // 4: blocks.IdentRequest
	(*protobuf.FetchRequest)(nil),        // 5: blocks.FetchRequest
	(*protobuf.StatusReply)(nil),         // 6: blocks.StatusReply
}
var file_module_base_cloud_proto_share_proto_depIdxs = []int32{
	3, // 0: cloud.ListSharesResponse.shares:type_name -> cloud.CloudShareItem
	0, // 1: cloud.Share.CreateShare:input_type -> cloud.CreateShareRequest
	4, // 2: cloud.Share.GetShare:input_type -> blocks.IdentRequest
	4, // 3: cloud.Share.DeleteShare:input_type -> blocks.IdentRequest
	5, // 4: cloud.Share.ListShares:input_type -> blocks.FetchRequest
	2, // 5: cloud.Share.ValidateSharePassword:input_type -> cloud.ValidateSharePasswordRequest
	6, // 6: cloud.Share.CreateShare:output_type -> blocks.StatusReply
	3, // 7: cloud.Share.GetShare:output_type -> cloud.CloudShareItem
	6, // 8: cloud.Share.DeleteShare:output_type -> blocks.StatusReply
	1, // 9: cloud.Share.ListShares:output_type -> cloud.ListSharesResponse
	6, // 10: cloud.Share.ValidateSharePassword:output_type -> blocks.StatusReply
	6, // [6:11] is the sub-list for method output_type
	1, // [1:6] is the sub-list for method input_type
	1, // [1:1] is the sub-list for extension type_name
	1, // [1:1] is the sub-list for extension extendee
	0, // [0:1] is the sub-list for field type_name
}

func init() { file_module_base_cloud_proto_share_proto_init() }
func file_module_base_cloud_proto_share_proto_init() {
	if File_module_base_cloud_proto_share_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_module_base_cloud_proto_share_proto_rawDesc), len(file_module_base_cloud_proto_share_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   4,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_module_base_cloud_proto_share_proto_goTypes,
		DependencyIndexes: file_module_base_cloud_proto_share_proto_depIdxs,
		MessageInfos:      file_module_base_cloud_proto_share_proto_msgTypes,
	}.Build()
	File_module_base_cloud_proto_share_proto = out.File
	file_module_base_cloud_proto_share_proto_goTypes = nil
	file_module_base_cloud_proto_share_proto_depIdxs = nil
}
