// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.6
// 	protoc        v3.21.12
// source: yandex/cloud/mdb/mysql/v1alpha/user_service.proto

package mysql

import (
	_ "github.com/yandex-cloud/go-genproto/yandex/cloud"
	_ "github.com/yandex-cloud/go-genproto/yandex/cloud/api"
	operation "github.com/yandex-cloud/go-genproto/yandex/cloud/operation"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
	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 GetUserRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user.
	UserName      string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetUserRequest) ProtoMessage() {}

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

func (x *GetUserRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *GetUserRequest) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

type ListUsersRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the cluster to list MySQL users in. To get the cluster ID, use a [ClusterService.List] request.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// The maximum number of results per page to return. If the number of available results is larger than [page_size], the service returns a [ListUsersResponse.next_page_token] that can be used to get the next page of results in subsequent list requests.
	PageSize int64 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// Page token. To get the next page of results, set [page_token] to the [ListUsersResponse.next_page_token] returned by the previous list request.
	PageToken     string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListUsersRequest) ProtoMessage() {}

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

func (x *ListUsersRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

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

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

type ListUsersResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Requested list of MySQL users.
	Users []*User `protobuf:"bytes,1,rep,name=users,proto3" json:"users,omitempty"`
	// This token allows you to get the next page of results for list requests. If the number of results is larger than [ListUsersRequest.page_size], use the [next_page_token] as the value for the [ListUsersRequest.page_token] parameter in the next list request. Each subsequent list request will have its own [next_page_token] to continue paging through the results.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListUsersResponse) ProtoMessage() {}

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

func (x *ListUsersResponse) GetUsers() []*User {
	if x != nil {
		return x.Users
	}
	return nil
}

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

type CreateUserRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster to create a user for. To get the cluster ID, use a [ClusterService.List] request.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Properties of the user to be created.
	UserSpec      *UserSpec `protobuf:"bytes,2,opt,name=user_spec,json=userSpec,proto3" json:"user_spec,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateUserRequest) ProtoMessage() {}

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

func (x *CreateUserRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *CreateUserRequest) GetUserSpec() *UserSpec {
	if x != nil {
		return x.UserSpec
	}
	return nil
}

type CreateUserMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user is being created for.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user that is being created.
	UserName      string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateUserMetadata) ProtoMessage() {}

func (x *CreateUserMetadata) ProtoReflect() protoreflect.Message {
	mi := &file_yandex_cloud_mdb_mysql_v1alpha_user_service_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 CreateUserMetadata.ProtoReflect.Descriptor instead.
func (*CreateUserMetadata) Descriptor() ([]byte, []int) {
	return file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescGZIP(), []int{4}
}

func (x *CreateUserMetadata) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *CreateUserMetadata) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

type UpdateUserRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to. To get the cluster ID, use a [ClusterService.List] request.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user to be updated. To get the name of the user, use a [UserService.List] request.
	UserName string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	// Field mask that specifies which settings of the MySQL user should be updated.
	UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	// New password for the user.
	Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"`
	// New set of permissions for the user.
	Permissions   []*Permission `protobuf:"bytes,5,rep,name=permissions,proto3" json:"permissions,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateUserRequest) ProtoMessage() {}

func (x *UpdateUserRequest) ProtoReflect() protoreflect.Message {
	mi := &file_yandex_cloud_mdb_mysql_v1alpha_user_service_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 UpdateUserRequest.ProtoReflect.Descriptor instead.
func (*UpdateUserRequest) Descriptor() ([]byte, []int) {
	return file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescGZIP(), []int{5}
}

func (x *UpdateUserRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *UpdateUserRequest) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

func (x *UpdateUserRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
	if x != nil {
		return x.UpdateMask
	}
	return nil
}

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

func (x *UpdateUserRequest) GetPermissions() []*Permission {
	if x != nil {
		return x.Permissions
	}
	return nil
}

type UpdateUserMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of a user that is being updated.
	UserName      string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateUserMetadata) ProtoMessage() {}

func (x *UpdateUserMetadata) ProtoReflect() protoreflect.Message {
	mi := &file_yandex_cloud_mdb_mysql_v1alpha_user_service_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 UpdateUserMetadata.ProtoReflect.Descriptor instead.
func (*UpdateUserMetadata) Descriptor() ([]byte, []int) {
	return file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescGZIP(), []int{6}
}

func (x *UpdateUserMetadata) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *UpdateUserMetadata) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

type DeleteUserRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to. To get the cluster ID, use a [ClusterService.List] request.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user to delete. To get the name of the user, use a [UserService.List] request.
	UserName      string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteUserRequest) ProtoMessage() {}

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

func (x *DeleteUserRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *DeleteUserRequest) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

type DeleteUserMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user that is being deleted.
	UserName      string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteUserMetadata) ProtoMessage() {}

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

func (x *DeleteUserMetadata) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *DeleteUserMetadata) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

type GrantUserPermissionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to. To get the cluster ID, use a [ClusterService.List] request.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user to grant the permission to. To get the name of the user, use a [UserService.List] request.
	UserName string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	// Permission that should be granted to the specified user.
	Permission    *Permission `protobuf:"bytes,3,opt,name=permission,proto3" json:"permission,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GrantUserPermissionRequest) ProtoMessage() {}

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

func (x *GrantUserPermissionRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *GrantUserPermissionRequest) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

func (x *GrantUserPermissionRequest) GetPermission() *Permission {
	if x != nil {
		return x.Permission
	}
	return nil
}

type GrantUserPermissionMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to. To get the cluster ID, use a [ClusterService.List] request.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user that is being granted a permission.
	UserName      string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GrantUserPermissionMetadata) ProtoMessage() {}

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

func (x *GrantUserPermissionMetadata) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *GrantUserPermissionMetadata) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

type RevokeUserPermissionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to. To get the cluster ID, use a [ClusterService.List] request.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user to revoke a permission from. To get the name of the user, use a [UserService.List] request.
	UserName string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	// Name of the database that the user should lose access to.
	DatabaseName  string `protobuf:"bytes,3,opt,name=database_name,json=databaseName,proto3" json:"database_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RevokeUserPermissionRequest) ProtoMessage() {}

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

func (x *RevokeUserPermissionRequest) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *RevokeUserPermissionRequest) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

func (x *RevokeUserPermissionRequest) GetDatabaseName() string {
	if x != nil {
		return x.DatabaseName
	}
	return ""
}

type RevokeUserPermissionMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the MySQL cluster the user belongs to.
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Name of the user whose permission is being revoked.
	UserName      string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RevokeUserPermissionMetadata) ProtoMessage() {}

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

func (x *RevokeUserPermissionMetadata) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *RevokeUserPermissionMetadata) GetUserName() string {
	if x != nil {
		return x.UserName
	}
	return ""
}

var File_yandex_cloud_mdb_mysql_v1alpha_user_service_proto protoreflect.FileDescriptor

const file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDesc = "" +
	"\n" +
	"1yandex/cloud/mdb/mysql/v1alpha/user_service.proto\x12\x1eyandex.cloud.mdb.mysql.v1alpha\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/operation/operation.proto\x1a\x1dyandex/cloud/validation.proto\x1a)yandex/cloud/mdb/mysql/v1alpha/user.proto\"y\n" +
	"\x0eGetUserRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12:\n" +
	"\tuser_name\x18\x02 \x01(\tB\x1d\xe8\xc71\x01\xf2\xc71\r[a-zA-Z0-9_]*\x8a\xc81\x04<=63R\buserName\"\x92\x01\n" +
	"\x10ListUsersRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12'\n" +
	"\tpage_size\x18\x02 \x01(\x03B\n" +
	"\xfa\xc71\x060-1000R\bpageSize\x12(\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tB\t\x8a\xc81\x05<=100R\tpageToken\"w\n" +
	"\x11ListUsersResponse\x12:\n" +
	"\x05users\x18\x01 \x03(\v2$.yandex.cloud.mdb.mysql.v1alpha.UserR\x05users\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\x8d\x01\n" +
	"\x11CreateUserRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12K\n" +
	"\tuser_spec\x18\x02 \x01(\v2(.yandex.cloud.mdb.mysql.v1alpha.UserSpecB\x04\xe8\xc71\x01R\buserSpec\"P\n" +
	"\x12CreateUserMetadata\x12\x1d\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tR\tclusterId\x12\x1b\n" +
	"\tuser_name\x18\x02 \x01(\tR\buserName\"\xae\x02\n" +
	"\x11UpdateUserRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12:\n" +
	"\tuser_name\x18\x02 \x01(\tB\x1d\xe8\xc71\x01\xf2\xc71\r[a-zA-Z0-9_]*\x8a\xc81\x04<=63R\buserName\x12;\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskR\n" +
	"updateMask\x12%\n" +
	"\bpassword\x18\x04 \x01(\tB\t\x8a\xc81\x058-128R\bpassword\x12L\n" +
	"\vpermissions\x18\x05 \x03(\v2*.yandex.cloud.mdb.mysql.v1alpha.PermissionR\vpermissions\"P\n" +
	"\x12UpdateUserMetadata\x12\x1d\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tR\tclusterId\x12\x1b\n" +
	"\tuser_name\x18\x02 \x01(\tR\buserName\"|\n" +
	"\x11DeleteUserRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12:\n" +
	"\tuser_name\x18\x02 \x01(\tB\x1d\xe8\xc71\x01\xf2\xc71\r[a-zA-Z0-9_]*\x8a\xc81\x04<=63R\buserName\"P\n" +
	"\x12DeleteUserMetadata\x12\x1d\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tR\tclusterId\x12\x1b\n" +
	"\tuser_name\x18\x02 \x01(\tR\buserName\"\xd7\x01\n" +
	"\x1aGrantUserPermissionRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12:\n" +
	"\tuser_name\x18\x02 \x01(\tB\x1d\xe8\xc71\x01\xf2\xc71\r[a-zA-Z0-9_]*\x8a\xc81\x04<=63R\buserName\x12P\n" +
	"\n" +
	"permission\x18\x03 \x01(\v2*.yandex.cloud.mdb.mysql.v1alpha.PermissionB\x04\xe8\xc71\x01R\n" +
	"permission\"Y\n" +
	"\x1bGrantUserPermissionMetadata\x12\x1d\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tR\tclusterId\x12\x1b\n" +
	"\tuser_name\x18\x02 \x01(\tR\buserName\"\xcb\x01\n" +
	"\x1bRevokeUserPermissionRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12:\n" +
	"\tuser_name\x18\x02 \x01(\tB\x1d\xe8\xc71\x01\xf2\xc71\r[a-zA-Z0-9_]*\x8a\xc81\x04<=63R\buserName\x12C\n" +
	"\rdatabase_name\x18\x03 \x01(\tB\x1e\xe8\xc71\x01\xf2\xc71\x0e[a-zA-Z0-9_-]*\x8a\xc81\x04<=63R\fdatabaseName\"Z\n" +
	"\x1cRevokeUserPermissionMetadata\x12\x1d\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tR\tclusterId\x12\x1b\n" +
	"\tuser_name\x18\x02 \x01(\tR\buserName2\xad\v\n" +
	"\vUserService\x12\xa3\x01\n" +
	"\x03Get\x12..yandex.cloud.mdb.mysql.v1alpha.GetUserRequest\x1a$.yandex.cloud.mdb.mysql.v1alpha.User\"F\x82\xd3\xe4\x93\x02@\x12>/managed-mysql/v1alpha/clusters/{cluster_id}/users/{user_name}\x12\xa7\x01\n" +
	"\x04List\x120.yandex.cloud.mdb.mysql.v1alpha.ListUsersRequest\x1a1.yandex.cloud.mdb.mysql.v1alpha.ListUsersResponse\":\x82\xd3\xe4\x93\x024\x122/managed-mysql/v1alpha/clusters/{cluster_id}/users\x12\xbb\x01\n" +
	"\x06Create\x121.yandex.cloud.mdb.mysql.v1alpha.CreateUserRequest\x1a!.yandex.cloud.operation.Operation\"[\xb2\xd2*\x1a\n" +
	"\x12CreateUserMetadata\x12\x04User\x82\xd3\xe4\x93\x027:\x01*\"2/managed-mysql/v1alpha/clusters/{cluster_id}/users\x12\xc7\x01\n" +
	"\x06Update\x121.yandex.cloud.mdb.mysql.v1alpha.UpdateUserRequest\x1a!.yandex.cloud.operation.Operation\"g\xb2\xd2*\x1a\n" +
	"\x12UpdateUserMetadata\x12\x04User\x82\xd3\xe4\x93\x02C:\x01*2>/managed-mysql/v1alpha/clusters/{cluster_id}/users/{user_name}\x12\xd5\x01\n" +
	"\x06Delete\x121.yandex.cloud.mdb.mysql.v1alpha.DeleteUserRequest\x1a!.yandex.cloud.operation.Operation\"u\xb2\xd2*+\n" +
	"\x12DeleteUserMetadata\x12\x15google.protobuf.Empty\x82\xd3\xe4\x93\x02@*>/managed-mysql/v1alpha/clusters/{cluster_id}/users/{user_name}\x12\xf3\x01\n" +
	"\x0fGrantPermission\x12:.yandex.cloud.mdb.mysql.v1alpha.GrantUserPermissionRequest\x1a!.yandex.cloud.operation.Operation\"\x80\x01\xb2\xd2*#\n" +
	"\x1bGrantUserPermissionMetadata\x12\x04User\x82\xd3\xe4\x93\x02S:\x01*\"N/managed-mysql/v1alpha/clusters/{cluster_id}/users/{user_name}:grantPermission\x12\xf7\x01\n" +
	"\x10RevokePermission\x12;.yandex.cloud.mdb.mysql.v1alpha.RevokeUserPermissionRequest\x1a!.yandex.cloud.operation.Operation\"\x82\x01\xb2\xd2*$\n" +
	"\x1cRevokeUserPermissionMetadata\x12\x04User\x82\xd3\xe4\x93\x02T:\x01*\"O/managed-mysql/v1alpha/clusters/{cluster_id}/users/{user_name}:revokePermissionBn\n" +
	"\"yandex.cloud.api.mdb.mysql.v1alphaZHgithub.com/yandex-cloud/go-genproto/yandex/cloud/mdb/mysql/v1alpha;mysqlb\x06proto3"

var (
	file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescOnce sync.Once
	file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescData []byte
)

func file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescGZIP() []byte {
	file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescOnce.Do(func() {
		file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDesc), len(file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDesc)))
	})
	return file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDescData
}

var file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_goTypes = []any{
	(*GetUserRequest)(nil),               // 0: yandex.cloud.mdb.mysql.v1alpha.GetUserRequest
	(*ListUsersRequest)(nil),             // 1: yandex.cloud.mdb.mysql.v1alpha.ListUsersRequest
	(*ListUsersResponse)(nil),            // 2: yandex.cloud.mdb.mysql.v1alpha.ListUsersResponse
	(*CreateUserRequest)(nil),            // 3: yandex.cloud.mdb.mysql.v1alpha.CreateUserRequest
	(*CreateUserMetadata)(nil),           // 4: yandex.cloud.mdb.mysql.v1alpha.CreateUserMetadata
	(*UpdateUserRequest)(nil),            // 5: yandex.cloud.mdb.mysql.v1alpha.UpdateUserRequest
	(*UpdateUserMetadata)(nil),           // 6: yandex.cloud.mdb.mysql.v1alpha.UpdateUserMetadata
	(*DeleteUserRequest)(nil),            // 7: yandex.cloud.mdb.mysql.v1alpha.DeleteUserRequest
	(*DeleteUserMetadata)(nil),           // 8: yandex.cloud.mdb.mysql.v1alpha.DeleteUserMetadata
	(*GrantUserPermissionRequest)(nil),   // 9: yandex.cloud.mdb.mysql.v1alpha.GrantUserPermissionRequest
	(*GrantUserPermissionMetadata)(nil),  // 10: yandex.cloud.mdb.mysql.v1alpha.GrantUserPermissionMetadata
	(*RevokeUserPermissionRequest)(nil),  // 11: yandex.cloud.mdb.mysql.v1alpha.RevokeUserPermissionRequest
	(*RevokeUserPermissionMetadata)(nil), // 12: yandex.cloud.mdb.mysql.v1alpha.RevokeUserPermissionMetadata
	(*User)(nil),                         // 13: yandex.cloud.mdb.mysql.v1alpha.User
	(*UserSpec)(nil),                     // 14: yandex.cloud.mdb.mysql.v1alpha.UserSpec
	(*fieldmaskpb.FieldMask)(nil),        // 15: google.protobuf.FieldMask
	(*Permission)(nil),                   // 16: yandex.cloud.mdb.mysql.v1alpha.Permission
	(*operation.Operation)(nil),          // 17: yandex.cloud.operation.Operation
}
var file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_depIdxs = []int32{
	13, // 0: yandex.cloud.mdb.mysql.v1alpha.ListUsersResponse.users:type_name -> yandex.cloud.mdb.mysql.v1alpha.User
	14, // 1: yandex.cloud.mdb.mysql.v1alpha.CreateUserRequest.user_spec:type_name -> yandex.cloud.mdb.mysql.v1alpha.UserSpec
	15, // 2: yandex.cloud.mdb.mysql.v1alpha.UpdateUserRequest.update_mask:type_name -> google.protobuf.FieldMask
	16, // 3: yandex.cloud.mdb.mysql.v1alpha.UpdateUserRequest.permissions:type_name -> yandex.cloud.mdb.mysql.v1alpha.Permission
	16, // 4: yandex.cloud.mdb.mysql.v1alpha.GrantUserPermissionRequest.permission:type_name -> yandex.cloud.mdb.mysql.v1alpha.Permission
	0,  // 5: yandex.cloud.mdb.mysql.v1alpha.UserService.Get:input_type -> yandex.cloud.mdb.mysql.v1alpha.GetUserRequest
	1,  // 6: yandex.cloud.mdb.mysql.v1alpha.UserService.List:input_type -> yandex.cloud.mdb.mysql.v1alpha.ListUsersRequest
	3,  // 7: yandex.cloud.mdb.mysql.v1alpha.UserService.Create:input_type -> yandex.cloud.mdb.mysql.v1alpha.CreateUserRequest
	5,  // 8: yandex.cloud.mdb.mysql.v1alpha.UserService.Update:input_type -> yandex.cloud.mdb.mysql.v1alpha.UpdateUserRequest
	7,  // 9: yandex.cloud.mdb.mysql.v1alpha.UserService.Delete:input_type -> yandex.cloud.mdb.mysql.v1alpha.DeleteUserRequest
	9,  // 10: yandex.cloud.mdb.mysql.v1alpha.UserService.GrantPermission:input_type -> yandex.cloud.mdb.mysql.v1alpha.GrantUserPermissionRequest
	11, // 11: yandex.cloud.mdb.mysql.v1alpha.UserService.RevokePermission:input_type -> yandex.cloud.mdb.mysql.v1alpha.RevokeUserPermissionRequest
	13, // 12: yandex.cloud.mdb.mysql.v1alpha.UserService.Get:output_type -> yandex.cloud.mdb.mysql.v1alpha.User
	2,  // 13: yandex.cloud.mdb.mysql.v1alpha.UserService.List:output_type -> yandex.cloud.mdb.mysql.v1alpha.ListUsersResponse
	17, // 14: yandex.cloud.mdb.mysql.v1alpha.UserService.Create:output_type -> yandex.cloud.operation.Operation
	17, // 15: yandex.cloud.mdb.mysql.v1alpha.UserService.Update:output_type -> yandex.cloud.operation.Operation
	17, // 16: yandex.cloud.mdb.mysql.v1alpha.UserService.Delete:output_type -> yandex.cloud.operation.Operation
	17, // 17: yandex.cloud.mdb.mysql.v1alpha.UserService.GrantPermission:output_type -> yandex.cloud.operation.Operation
	17, // 18: yandex.cloud.mdb.mysql.v1alpha.UserService.RevokePermission:output_type -> yandex.cloud.operation.Operation
	12, // [12:19] is the sub-list for method output_type
	5,  // [5:12] is the sub-list for method input_type
	5,  // [5:5] is the sub-list for extension type_name
	5,  // [5:5] is the sub-list for extension extendee
	0,  // [0:5] is the sub-list for field type_name
}

func init() { file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_init() }
func file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_init() {
	if File_yandex_cloud_mdb_mysql_v1alpha_user_service_proto != nil {
		return
	}
	file_yandex_cloud_mdb_mysql_v1alpha_user_proto_init()
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDesc), len(file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   13,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_goTypes,
		DependencyIndexes: file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_depIdxs,
		MessageInfos:      file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_msgTypes,
	}.Build()
	File_yandex_cloud_mdb_mysql_v1alpha_user_service_proto = out.File
	file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_goTypes = nil
	file_yandex_cloud_mdb_mysql_v1alpha_user_service_proto_depIdxs = nil
}
