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

package sqlserver

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 SQL Server 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 SQL Server user to return.
	//
	// To get the name of the user use a [DatabaseService.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 *GetUserRequest) Reset() {
	*x = GetUserRequest{}
	mi := &file_yandex_cloud_mdb_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server users.
	Users []*User `protobuf:"bytes,1,rep,name=users,proto3" json:"users,omitempty"`
	// Token that 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 has 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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 fields of the SQL Server 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"`
	// New set of server roles granted to the login.
	ServerRoles   []ServerRole `protobuf:"varint,6,rep,packed,name=server_roles,json=serverRoles,proto3,enum=yandex.cloud.mdb.sqlserver.v1.ServerRole" json:"server_roles,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateUserRequest) Reset() {
	*x = UpdateUserRequest{}
	mi := &file_yandex_cloud_mdb_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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
}

func (x *UpdateUserRequest) GetServerRoles() []ServerRole {
	if x != nil {
		return x.ServerRoles
	}
	return nil
}

type UpdateUserMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the SQL Server 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 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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 SQL Server 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"`
	// Permission that should be revoked from the specified user.
	Permission    *Permission `protobuf:"bytes,3,opt,name=permission,proto3" json:"permission,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RevokeUserPermissionRequest) Reset() {
	*x = RevokeUserPermissionRequest{}
	mi := &file_yandex_cloud_mdb_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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) GetPermission() *Permission {
	if x != nil {
		return x.Permission
	}
	return nil
}

type RevokeUserPermissionMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the SQL Server 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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_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_sqlserver_v1_user_service_proto protoreflect.FileDescriptor

const file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDesc = "" +
	"\n" +
	"0yandex/cloud/mdb/sqlserver/v1/user_service.proto\x12\x1dyandex.cloud.mdb.sqlserver.v1\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/sqlserver/v1/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\"v\n" +
	"\x11ListUsersResponse\x129\n" +
	"\x05users\x18\x01 \x03(\v2#.yandex.cloud.mdb.sqlserver.v1.UserR\x05users\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\x8c\x01\n" +
	"\x11CreateUserRequest\x12+\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\tclusterId\x12J\n" +
	"\tuser_spec\x18\x02 \x01(\v2'.yandex.cloud.mdb.sqlserver.v1.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\"\xfb\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\x12K\n" +
	"\vpermissions\x18\x05 \x03(\v2).yandex.cloud.mdb.sqlserver.v1.PermissionR\vpermissions\x12L\n" +
	"\fserver_roles\x18\x06 \x03(\x0e2).yandex.cloud.mdb.sqlserver.v1.ServerRoleR\vserverRoles\"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\"\xd6\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\x12O\n" +
	"\n" +
	"permission\x18\x03 \x01(\v2).yandex.cloud.mdb.sqlserver.v1.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\"\xd7\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\x12O\n" +
	"\n" +
	"permission\x18\x03 \x01(\v2).yandex.cloud.mdb.sqlserver.v1.PermissionB\x04\xe8\xc71\x01R\n" +
	"permission\"Z\n" +
	"\x1cRevokeUserPermissionMetadata\x12\x1d\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tR\tclusterId\x12\x1b\n" +
	"\tuser_name\x18\x02 \x01(\tR\buserName2\xff\n" +
	"\n" +
	"\vUserService\x12\x9c\x01\n" +
	"\x03Get\x12-.yandex.cloud.mdb.sqlserver.v1.GetUserRequest\x1a#.yandex.cloud.mdb.sqlserver.v1.User\"A\x82\xd3\xe4\x93\x02;\x129/mdb/sqlserver/v1/clusters/{cluster_id}/users/{user_name}\x12\xa0\x01\n" +
	"\x04List\x12/.yandex.cloud.mdb.sqlserver.v1.ListUsersRequest\x1a0.yandex.cloud.mdb.sqlserver.v1.ListUsersResponse\"5\x82\xd3\xe4\x93\x02/\x12-/mdb/sqlserver/v1/clusters/{cluster_id}/users\x12\xb5\x01\n" +
	"\x06Create\x120.yandex.cloud.mdb.sqlserver.v1.CreateUserRequest\x1a!.yandex.cloud.operation.Operation\"V\xb2\xd2*\x1a\n" +
	"\x12CreateUserMetadata\x12\x04User\x82\xd3\xe4\x93\x022:\x01*\"-/mdb/sqlserver/v1/clusters/{cluster_id}/users\x12\xc1\x01\n" +
	"\x06Update\x120.yandex.cloud.mdb.sqlserver.v1.UpdateUserRequest\x1a!.yandex.cloud.operation.Operation\"b\xb2\xd2*\x1a\n" +
	"\x12UpdateUserMetadata\x12\x04User\x82\xd3\xe4\x93\x02>:\x01*29/mdb/sqlserver/v1/clusters/{cluster_id}/users/{user_name}\x12\xcf\x01\n" +
	"\x06Delete\x120.yandex.cloud.mdb.sqlserver.v1.DeleteUserRequest\x1a!.yandex.cloud.operation.Operation\"p\xb2\xd2*+\n" +
	"\x12DeleteUserMetadata\x12\x15google.protobuf.Empty\x82\xd3\xe4\x93\x02;*9/mdb/sqlserver/v1/clusters/{cluster_id}/users/{user_name}\x12\xec\x01\n" +
	"\x0fGrantPermission\x129.yandex.cloud.mdb.sqlserver.v1.GrantUserPermissionRequest\x1a!.yandex.cloud.operation.Operation\"{\xb2\xd2*#\n" +
	"\x1bGrantUserPermissionMetadata\x12\x04User\x82\xd3\xe4\x93\x02N:\x01*\"I/mdb/sqlserver/v1/clusters/{cluster_id}/users/{user_name}:grantPermission\x12\xf0\x01\n" +
	"\x10RevokePermission\x12:.yandex.cloud.mdb.sqlserver.v1.RevokeUserPermissionRequest\x1a!.yandex.cloud.operation.Operation\"}\xb2\xd2*$\n" +
	"\x1cRevokeUserPermissionMetadata\x12\x04User\x82\xd3\xe4\x93\x02O:\x01*\"J/mdb/sqlserver/v1/clusters/{cluster_id}/users/{user_name}:revokePermissionBv\n" +
	"!yandex.cloud.api.mdb.sqlserver.v1B\x04PSUSZKgithub.com/yandex-cloud/go-genproto/yandex/cloud/mdb/sqlserver/v1;sqlserverb\x06proto3"

var (
	file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDescOnce sync.Once
	file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDescData []byte
)

func file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDescGZIP() []byte {
	file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDescOnce.Do(func() {
		file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDesc), len(file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDesc)))
	})
	return file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDescData
}

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

func init() { file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_init() }
func file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_init() {
	if File_yandex_cloud_mdb_sqlserver_v1_user_service_proto != nil {
		return
	}
	file_yandex_cloud_mdb_sqlserver_v1_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_sqlserver_v1_user_service_proto_rawDesc), len(file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   13,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_goTypes,
		DependencyIndexes: file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_depIdxs,
		MessageInfos:      file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_msgTypes,
	}.Build()
	File_yandex_cloud_mdb_sqlserver_v1_user_service_proto = out.File
	file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_goTypes = nil
	file_yandex_cloud_mdb_sqlserver_v1_user_service_proto_depIdxs = nil
}
