// Copyright IBM Corp. 2020, 2026
// SPDX-License-Identifier: MPL-2.0

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        (unknown)
// source: controller/api/services/v1/role_service.proto

package services

import (
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	roles "github.com/hashicorp/boundary/sdk/pbs/controller/api/resources/roles"
	_ "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 GetRoleRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetRoleRequest) ProtoMessage() {}

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

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

type GetRoleResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetRoleResponse) ProtoMessage() {}

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

func (x *GetRoleResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type ListRolesRequest struct {
	state     protoimpl.MessageState `protogen:"open.v1"`
	ScopeId   string                 `protobuf:"bytes,1,opt,name=scope_id,proto3" json:"scope_id,omitempty" class:"public" eventstream:"observation"`     // @gotags: `class:"public" eventstream:"observation"`
	Recursive bool                   `protobuf:"varint,20,opt,name=recursive,proto3" json:"recursive,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// You can specify that the filter should only return items that match.
	// Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
	Filter string `protobuf:"bytes,30,opt,name=filter,proto3" json:"filter,omitempty" class:"public"` // @gotags: `class:"public"`
	// An opaque token that Boundary uses to continue an existing iteration or
	// request updated items. If you do not specify a token, pagination
	// starts from the beginning. To learn more about list pagination
	// in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
	ListToken string `protobuf:"bytes,40,opt,name=list_token,proto3" json:"list_token,omitempty" class:"public"` // @gotags: `class:"public"`
	// The maximum size of a page in this iteration.
	// If unset, the default page size configured will be used.
	// If the page_size is greater than the default page configured,
	// the page size will be truncated to this number..
	PageSize      uint32 `protobuf:"varint,50,opt,name=page_size,proto3" json:"page_size,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListRolesRequest) ProtoMessage() {}

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

func (x *ListRolesRequest) GetScopeId() string {
	if x != nil {
		return x.ScopeId
	}
	return ""
}

func (x *ListRolesRequest) GetRecursive() bool {
	if x != nil {
		return x.Recursive
	}
	return false
}

func (x *ListRolesRequest) GetFilter() string {
	if x != nil {
		return x.Filter
	}
	return ""
}

func (x *ListRolesRequest) GetListToken() string {
	if x != nil {
		return x.ListToken
	}
	return ""
}

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

type ListRolesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Items []*roles.Role          `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// The type of response, either "delta" or "complete".
	// Delta signifies that this is part of a paginated result
	// or an update to a previously completed pagination.
	// Complete signifies that it is the last page.
	ResponseType string `protobuf:"bytes,2,opt,name=response_type,proto3" json:"response_type,omitempty" class:"public"` // @gotags: `class:"public"`
	// An opaque token used to continue an existing pagination or
	// request updated items. Use this token in the next list request
	// to request the next page.
	ListToken string `protobuf:"bytes,3,opt,name=list_token,proto3" json:"list_token,omitempty" class:"public"` // @gotags: `class:"public"`
	// The name of the field which the items are sorted by.
	SortBy string `protobuf:"bytes,4,opt,name=sort_by,proto3" json:"sort_by,omitempty" class:"public"` // @gotags: `class:"public"`
	// The direction of the sort, either "asc" or "desc".
	SortDir string `protobuf:"bytes,5,opt,name=sort_dir,proto3" json:"sort_dir,omitempty" class:"public"` // @gotags: `class:"public"`
	// A list of item IDs that have been removed since they were returned
	// as part of a pagination. They should be dropped from any client cache.
	// This may contain items that are not known to the cache, if they were
	// created and deleted between listings.
	RemovedIds []string `protobuf:"bytes,6,rep,name=removed_ids,proto3" json:"removed_ids,omitempty" class:"public"` // @gotags: `class:"public"`
	// An estimate at the total items available. This may change during pagination.
	EstItemCount  uint32 `protobuf:"varint,7,opt,name=est_item_count,proto3" json:"est_item_count,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListRolesResponse) ProtoMessage() {}

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

func (x *ListRolesResponse) GetItems() []*roles.Role {
	if x != nil {
		return x.Items
	}
	return nil
}

func (x *ListRolesResponse) GetResponseType() string {
	if x != nil {
		return x.ResponseType
	}
	return ""
}

func (x *ListRolesResponse) GetListToken() string {
	if x != nil {
		return x.ListToken
	}
	return ""
}

func (x *ListRolesResponse) GetSortBy() string {
	if x != nil {
		return x.SortBy
	}
	return ""
}

func (x *ListRolesResponse) GetSortDir() string {
	if x != nil {
		return x.SortDir
	}
	return ""
}

func (x *ListRolesResponse) GetRemovedIds() []string {
	if x != nil {
		return x.RemovedIds
	}
	return nil
}

func (x *ListRolesResponse) GetEstItemCount() uint32 {
	if x != nil {
		return x.EstItemCount
	}
	return 0
}

type CreateRoleRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateRoleRequest) ProtoMessage() {}

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

func (x *CreateRoleRequest) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type CreateRoleResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Uri           string                 `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
	Item          *roles.Role            `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateRoleResponse) ProtoMessage() {}

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

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

func (x *CreateRoleResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type UpdateRoleRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	Item          *roles.Role            `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"`
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateRoleRequest) ProtoMessage() {}

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

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

func (x *UpdateRoleRequest) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

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

type UpdateRoleResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateRoleResponse) ProtoMessage() {}

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

func (x *UpdateRoleResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type DeleteRoleRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteRoleRequest) ProtoMessage() {}

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

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

type DeleteRoleResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteRoleResponse) ProtoMessage() {}

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

type AddRolePrincipalsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`            // @gotags: `class:"public"`
	PrincipalIds  []string `protobuf:"bytes,3,rep,name=principal_ids,proto3" json:"principal_ids,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AddRolePrincipalsRequest) ProtoMessage() {}

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

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

func (x *AddRolePrincipalsRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *AddRolePrincipalsRequest) GetPrincipalIds() []string {
	if x != nil {
		return x.PrincipalIds
	}
	return nil
}

type AddRolePrincipalsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AddRolePrincipalsResponse) ProtoMessage() {}

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

func (x *AddRolePrincipalsResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type SetRolePrincipalsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`            // @gotags: `class:"public"`
	PrincipalIds  []string `protobuf:"bytes,3,rep,name=principal_ids,proto3" json:"principal_ids,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SetRolePrincipalsRequest) ProtoMessage() {}

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

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

func (x *SetRolePrincipalsRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *SetRolePrincipalsRequest) GetPrincipalIds() []string {
	if x != nil {
		return x.PrincipalIds
	}
	return nil
}

type SetRolePrincipalsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SetRolePrincipalsResponse) ProtoMessage() {}

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

func (x *SetRolePrincipalsResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type RemoveRolePrincipalsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`            // @gotags: `class:"public"`
	PrincipalIds  []string `protobuf:"bytes,3,rep,name=principal_ids,proto3" json:"principal_ids,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RemoveRolePrincipalsRequest) ProtoMessage() {}

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

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

func (x *RemoveRolePrincipalsRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *RemoveRolePrincipalsRequest) GetPrincipalIds() []string {
	if x != nil {
		return x.PrincipalIds
	}
	return nil
}

type RemoveRolePrincipalsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RemoveRolePrincipalsResponse) ProtoMessage() {}

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

func (x *RemoveRolePrincipalsResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type AddRoleGrantsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public"` // @gotags: `class:"public"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`            // @gotags: `class:"public"`
	GrantStrings  []string `protobuf:"bytes,3,rep,name=grant_strings,proto3" json:"grant_strings,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddRoleGrantsRequest) Reset() {
	*x = AddRoleGrantsRequest{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[16]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AddRoleGrantsRequest) ProtoMessage() {}

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

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

func (x *AddRoleGrantsRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *AddRoleGrantsRequest) GetGrantStrings() []string {
	if x != nil {
		return x.GrantStrings
	}
	return nil
}

type AddRoleGrantsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddRoleGrantsResponse) Reset() {
	*x = AddRoleGrantsResponse{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[17]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AddRoleGrantsResponse) ProtoMessage() {}

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

func (x *AddRoleGrantsResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type SetRoleGrantsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public"` // @gotags: `class:"public"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`            // @gotags: `class:"public"`
	GrantStrings  []string `protobuf:"bytes,3,rep,name=grant_strings,proto3" json:"grant_strings,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetRoleGrantsRequest) Reset() {
	*x = SetRoleGrantsRequest{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[18]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*SetRoleGrantsRequest) ProtoMessage() {}

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

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

func (x *SetRoleGrantsRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *SetRoleGrantsRequest) GetGrantStrings() []string {
	if x != nil {
		return x.GrantStrings
	}
	return nil
}

type SetRoleGrantsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetRoleGrantsResponse) Reset() {
	*x = SetRoleGrantsResponse{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[19]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*SetRoleGrantsResponse) ProtoMessage() {}

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

func (x *SetRoleGrantsResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type RemoveRoleGrantsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public"` // @gotags: `class:"public"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`            // @gotags: `class:"public"`
	GrantStrings  []string `protobuf:"bytes,3,rep,name=grant_strings,proto3" json:"grant_strings,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveRoleGrantsRequest) Reset() {
	*x = RemoveRoleGrantsRequest{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[20]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*RemoveRoleGrantsRequest) ProtoMessage() {}

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

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

func (x *RemoveRoleGrantsRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *RemoveRoleGrantsRequest) GetGrantStrings() []string {
	if x != nil {
		return x.GrantStrings
	}
	return nil
}

type RemoveRoleGrantsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveRoleGrantsResponse) Reset() {
	*x = RemoveRoleGrantsResponse{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[21]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*RemoveRoleGrantsResponse) ProtoMessage() {}

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

func (x *RemoveRoleGrantsResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type AddRoleGrantScopesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public"` // @gotags: `class:"public"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`                // @gotags: `class:"public"`
	GrantScopeIds []string `protobuf:"bytes,3,rep,name=grant_scope_ids,proto3" json:"grant_scope_ids,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddRoleGrantScopesRequest) Reset() {
	*x = AddRoleGrantScopesRequest{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[22]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AddRoleGrantScopesRequest) ProtoMessage() {}

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

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

func (x *AddRoleGrantScopesRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *AddRoleGrantScopesRequest) GetGrantScopeIds() []string {
	if x != nil {
		return x.GrantScopeIds
	}
	return nil
}

type AddRoleGrantScopesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddRoleGrantScopesResponse) Reset() {
	*x = AddRoleGrantScopesResponse{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[23]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AddRoleGrantScopesResponse) ProtoMessage() {}

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

func (x *AddRoleGrantScopesResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type SetRoleGrantScopesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public"` // @gotags: `class:"public"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`                // @gotags: `class:"public"`
	GrantScopeIds []string `protobuf:"bytes,3,rep,name=grant_scope_ids,proto3" json:"grant_scope_ids,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetRoleGrantScopesRequest) Reset() {
	*x = SetRoleGrantScopesRequest{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[24]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*SetRoleGrantScopesRequest) ProtoMessage() {}

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

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

func (x *SetRoleGrantScopesRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *SetRoleGrantScopesRequest) GetGrantScopeIds() []string {
	if x != nil {
		return x.GrantScopeIds
	}
	return nil
}

type SetRoleGrantScopesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetRoleGrantScopesResponse) Reset() {
	*x = SetRoleGrantScopesResponse{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[25]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*SetRoleGrantScopesResponse) ProtoMessage() {}

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

func (x *SetRoleGrantScopesResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

type RemoveRoleGrantScopesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public"` // @gotags: `class:"public"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version       uint32   `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"`                // @gotags: `class:"public"`
	GrantScopeIds []string `protobuf:"bytes,3,rep,name=grant_scope_ids,proto3" json:"grant_scope_ids,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveRoleGrantScopesRequest) Reset() {
	*x = RemoveRoleGrantScopesRequest{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[26]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*RemoveRoleGrantScopesRequest) ProtoMessage() {}

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

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

func (x *RemoveRoleGrantScopesRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *RemoveRoleGrantScopesRequest) GetGrantScopeIds() []string {
	if x != nil {
		return x.GrantScopeIds
	}
	return nil
}

type RemoveRoleGrantScopesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *roles.Role            `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveRoleGrantScopesResponse) Reset() {
	*x = RemoveRoleGrantScopesResponse{}
	mi := &file_controller_api_services_v1_role_service_proto_msgTypes[27]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*RemoveRoleGrantScopesResponse) ProtoMessage() {}

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

func (x *RemoveRoleGrantScopesResponse) GetItem() *roles.Role {
	if x != nil {
		return x.Item
	}
	return nil
}

var File_controller_api_services_v1_role_service_proto protoreflect.FileDescriptor

const file_controller_api_services_v1_role_service_proto_rawDesc = "" +
	"\n" +
	"-controller/api/services/v1/role_service.proto\x12\x1acontroller.api.services.v1\x1a,controller/api/resources/roles/v1/role.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\" \n" +
	"\x0eGetRoleRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"N\n" +
	"\x0fGetRoleResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"\xa2\x01\n" +
	"\x10ListRolesRequest\x12\x1a\n" +
	"\bscope_id\x18\x01 \x01(\tR\bscope_id\x12\x1c\n" +
	"\trecursive\x18\x14 \x01(\bR\trecursive\x12\x16\n" +
	"\x06filter\x18\x1e \x01(\tR\x06filter\x12\x1e\n" +
	"\n" +
	"list_token\x18( \x01(\tR\n" +
	"list_token\x12\x1c\n" +
	"\tpage_size\x182 \x01(\rR\tpage_size\"\x98\x02\n" +
	"\x11ListRolesResponse\x12=\n" +
	"\x05items\x18\x01 \x03(\v2'.controller.api.resources.roles.v1.RoleR\x05items\x12$\n" +
	"\rresponse_type\x18\x02 \x01(\tR\rresponse_type\x12\x1e\n" +
	"\n" +
	"list_token\x18\x03 \x01(\tR\n" +
	"list_token\x12\x18\n" +
	"\asort_by\x18\x04 \x01(\tR\asort_by\x12\x1a\n" +
	"\bsort_dir\x18\x05 \x01(\tR\bsort_dir\x12 \n" +
	"\vremoved_ids\x18\x06 \x03(\tR\vremoved_ids\x12&\n" +
	"\x0eest_item_count\x18\a \x01(\rR\x0eest_item_count\"P\n" +
	"\x11CreateRoleRequest\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"c\n" +
	"\x12CreateRoleResponse\x12\x10\n" +
	"\x03uri\x18\x01 \x01(\tR\x03uri\x12;\n" +
	"\x04item\x18\x02 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"\x9e\x01\n" +
	"\x11UpdateRoleRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12;\n" +
	"\x04item\x18\x02 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\x12<\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskR\vupdate_mask\"Q\n" +
	"\x12UpdateRoleResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"#\n" +
	"\x11DeleteRoleRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"\x14\n" +
	"\x12DeleteRoleResponse\"j\n" +
	"\x18AddRolePrincipalsRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12$\n" +
	"\rprincipal_ids\x18\x03 \x03(\tR\rprincipal_ids\"X\n" +
	"\x19AddRolePrincipalsResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"j\n" +
	"\x18SetRolePrincipalsRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12$\n" +
	"\rprincipal_ids\x18\x03 \x03(\tR\rprincipal_ids\"X\n" +
	"\x19SetRolePrincipalsResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"m\n" +
	"\x1bRemoveRolePrincipalsRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12$\n" +
	"\rprincipal_ids\x18\x03 \x03(\tR\rprincipal_ids\"[\n" +
	"\x1cRemoveRolePrincipalsResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"f\n" +
	"\x14AddRoleGrantsRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12$\n" +
	"\rgrant_strings\x18\x03 \x03(\tR\rgrant_strings\"T\n" +
	"\x15AddRoleGrantsResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"f\n" +
	"\x14SetRoleGrantsRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12$\n" +
	"\rgrant_strings\x18\x03 \x03(\tR\rgrant_strings\"T\n" +
	"\x15SetRoleGrantsResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"i\n" +
	"\x17RemoveRoleGrantsRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12$\n" +
	"\rgrant_strings\x18\x03 \x03(\tR\rgrant_strings\"W\n" +
	"\x18RemoveRoleGrantsResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"o\n" +
	"\x19AddRoleGrantScopesRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12(\n" +
	"\x0fgrant_scope_ids\x18\x03 \x03(\tR\x0fgrant_scope_ids\"Y\n" +
	"\x1aAddRoleGrantScopesResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"o\n" +
	"\x19SetRoleGrantScopesRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12(\n" +
	"\x0fgrant_scope_ids\x18\x03 \x03(\tR\x0fgrant_scope_ids\"Y\n" +
	"\x1aSetRoleGrantScopesResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item\"r\n" +
	"\x1cRemoveRoleGrantScopesRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12(\n" +
	"\x0fgrant_scope_ids\x18\x03 \x03(\tR\x0fgrant_scope_ids\"\\\n" +
	"\x1dRemoveRoleGrantScopesResponse\x12;\n" +
	"\x04item\x18\x01 \x01(\v2'.controller.api.resources.roles.v1.RoleR\x04item2\xd3\x19\n" +
	"\vRoleService\x12\x98\x01\n" +
	"\aGetRole\x12*.controller.api.services.v1.GetRoleRequest\x1a+.controller.api.services.v1.GetRoleResponse\"4\x92A\x15\x12\x13Gets a single Role.\x82\xd3\xe4\x93\x02\x16b\x04item\x12\x0e/v1/roles/{id}\x12\x90\x01\n" +
	"\tListRoles\x12,.controller.api.services.v1.ListRolesRequest\x1a-.controller.api.services.v1.ListRolesResponse\"&\x92A\x12\x12\x10Lists all Roles.\x82\xd3\xe4\x93\x02\v\x12\t/v1/roles\x12\xa5\x01\n" +
	"\n" +
	"CreateRole\x12-.controller.api.services.v1.CreateRoleRequest\x1a..controller.api.services.v1.CreateRoleResponse\"8\x92A\x18\x12\x16Creates a single Role.\x82\xd3\xe4\x93\x02\x17:\x04itemb\x04item\"\t/v1/roles\x12\xa3\x01\n" +
	"\n" +
	"UpdateRole\x12-.controller.api.services.v1.UpdateRoleRequest\x1a..controller.api.services.v1.UpdateRoleResponse\"6\x92A\x11\x12\x0fUpdates a Role.\x82\xd3\xe4\x93\x02\x1c:\x04itemb\x04item2\x0e/v1/roles/{id}\x12\x97\x01\n" +
	"\n" +
	"DeleteRole\x12-.controller.api.services.v1.DeleteRoleRequest\x1a..controller.api.services.v1.DeleteRoleResponse\"*\x92A\x11\x12\x0fDeletes a Role.\x82\xd3\xe4\x93\x02\x10*\x0e/v1/roles/{id}\x12\xd8\x01\n" +
	"\x11AddRolePrincipals\x124.controller.api.services.v1.AddRolePrincipalsRequest\x1a5.controller.api.services.v1.AddRolePrincipalsResponse\"V\x92A%\x12#Adds Users and/or Groups to a Role.\x82\xd3\xe4\x93\x02(:\x01*b\x04item\"\x1d/v1/roles/{id}:add-principals\x12\x97\x02\n" +
	"\x11SetRolePrincipals\x124.controller.api.services.v1.SetRolePrincipalsRequest\x1a5.controller.api.services.v1.SetRolePrincipalsResponse\"\x94\x01\x92Ac\x12aSet Users and/or Groups to a Role, removing any principals that are not specified in the request.\x82\xd3\xe4\x93\x02(:\x01*b\x04item\"\x1d/v1/roles/{id}:set-principals\x12\xf7\x01\n" +
	"\x14RemoveRolePrincipals\x127.controller.api.services.v1.RemoveRolePrincipalsRequest\x1a8.controller.api.services.v1.RemoveRolePrincipalsResponse\"l\x92A8\x126Removes the specified Users and/or Groups from a Role.\x82\xd3\xe4\x93\x02+:\x01*b\x04item\" /v1/roles/{id}:remove-principals\x12\xba\x01\n" +
	"\rAddRoleGrants\x120.controller.api.services.v1.AddRoleGrantsRequest\x1a1.controller.api.services.v1.AddRoleGrantsResponse\"D\x92A\x17\x12\x15Adds grants to a Role\x82\xd3\xe4\x93\x02$:\x01*b\x04item\"\x19/v1/roles/{id}:add-grants\x12\xf7\x01\n" +
	"\rSetRoleGrants\x120.controller.api.services.v1.SetRoleGrantsRequest\x1a1.controller.api.services.v1.SetRoleGrantsResponse\"\x80\x01\x92AS\x12QSet grants for a Role, removing any grants that are not specified in the request.\x82\xd3\xe4\x93\x02$:\x01*b\x04item\"\x19/v1/roles/{id}:set-grants\x12\xcc\x01\n" +
	"\x10RemoveRoleGrants\x123.controller.api.services.v1.RemoveRoleGrantsRequest\x1a4.controller.api.services.v1.RemoveRoleGrantsResponse\"M\x92A\x1d\x12\x1bRemoves grants from a Role.\x82\xd3\xe4\x93\x02':\x01*b\x04item\"\x1c/v1/roles/{id}:remove-grants\x12\xd5\x01\n" +
	"\x12AddRoleGrantScopes\x125.controller.api.services.v1.AddRoleGrantScopesRequest\x1a6.controller.api.services.v1.AddRoleGrantScopesResponse\"P\x92A\x1d\x12\x1bAdds grant scopes to a Role\x82\xd3\xe4\x93\x02*:\x01*b\x04item\"\x1f/v1/roles/{id}:add-grant-scopes\x12\x98\x02\n" +
	"\x12SetRoleGrantScopes\x125.controller.api.services.v1.SetRoleGrantScopesRequest\x1a6.controller.api.services.v1.SetRoleGrantScopesResponse\"\x92\x01\x92A_\x12]Set grant scopes for a Role, removing any grant scopes that are not specified in the request.\x82\xd3\xe4\x93\x02*:\x01*b\x04item\"\x1f/v1/roles/{id}:set-grant-scopes\x12\xe7\x01\n" +
	"\x15RemoveRoleGrantScopes\x128.controller.api.services.v1.RemoveRoleGrantScopesRequest\x1a9.controller.api.services.v1.RemoveRoleGrantScopesResponse\"Y\x92A#\x12!Removes grant scopes from a Role.\x82\xd3\xe4\x93\x02-:\x01*b\x04item\"\"/v1/roles/{id}:remove-grant-scopes\x1a\xdb\x02\x92A\xd7\x02\n" +
	"\fRole service\x12\xca\x01A role represents a collection of permissions that define what actions a user or service account can perform within the system. The role service provides endpoints that let you manage roles in Boundary.\x1az\n" +
	"-Read about roles in the Boundary domain model\x12Ihttps://developer.hashicorp.com/boundary/docs/concepts/domain-model/rolesBMZKgithub.com/hashicorp/boundary/internal/gen/controller/api/services;servicesb\x06proto3"

var (
	file_controller_api_services_v1_role_service_proto_rawDescOnce sync.Once
	file_controller_api_services_v1_role_service_proto_rawDescData []byte
)

func file_controller_api_services_v1_role_service_proto_rawDescGZIP() []byte {
	file_controller_api_services_v1_role_service_proto_rawDescOnce.Do(func() {
		file_controller_api_services_v1_role_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_controller_api_services_v1_role_service_proto_rawDesc), len(file_controller_api_services_v1_role_service_proto_rawDesc)))
	})
	return file_controller_api_services_v1_role_service_proto_rawDescData
}

var file_controller_api_services_v1_role_service_proto_msgTypes = make([]protoimpl.MessageInfo, 28)
var file_controller_api_services_v1_role_service_proto_goTypes = []any{
	(*GetRoleRequest)(nil),                // 0: controller.api.services.v1.GetRoleRequest
	(*GetRoleResponse)(nil),               // 1: controller.api.services.v1.GetRoleResponse
	(*ListRolesRequest)(nil),              // 2: controller.api.services.v1.ListRolesRequest
	(*ListRolesResponse)(nil),             // 3: controller.api.services.v1.ListRolesResponse
	(*CreateRoleRequest)(nil),             // 4: controller.api.services.v1.CreateRoleRequest
	(*CreateRoleResponse)(nil),            // 5: controller.api.services.v1.CreateRoleResponse
	(*UpdateRoleRequest)(nil),             // 6: controller.api.services.v1.UpdateRoleRequest
	(*UpdateRoleResponse)(nil),            // 7: controller.api.services.v1.UpdateRoleResponse
	(*DeleteRoleRequest)(nil),             // 8: controller.api.services.v1.DeleteRoleRequest
	(*DeleteRoleResponse)(nil),            // 9: controller.api.services.v1.DeleteRoleResponse
	(*AddRolePrincipalsRequest)(nil),      // 10: controller.api.services.v1.AddRolePrincipalsRequest
	(*AddRolePrincipalsResponse)(nil),     // 11: controller.api.services.v1.AddRolePrincipalsResponse
	(*SetRolePrincipalsRequest)(nil),      // 12: controller.api.services.v1.SetRolePrincipalsRequest
	(*SetRolePrincipalsResponse)(nil),     // 13: controller.api.services.v1.SetRolePrincipalsResponse
	(*RemoveRolePrincipalsRequest)(nil),   // 14: controller.api.services.v1.RemoveRolePrincipalsRequest
	(*RemoveRolePrincipalsResponse)(nil),  // 15: controller.api.services.v1.RemoveRolePrincipalsResponse
	(*AddRoleGrantsRequest)(nil),          // 16: controller.api.services.v1.AddRoleGrantsRequest
	(*AddRoleGrantsResponse)(nil),         // 17: controller.api.services.v1.AddRoleGrantsResponse
	(*SetRoleGrantsRequest)(nil),          // 18: controller.api.services.v1.SetRoleGrantsRequest
	(*SetRoleGrantsResponse)(nil),         // 19: controller.api.services.v1.SetRoleGrantsResponse
	(*RemoveRoleGrantsRequest)(nil),       // 20: controller.api.services.v1.RemoveRoleGrantsRequest
	(*RemoveRoleGrantsResponse)(nil),      // 21: controller.api.services.v1.RemoveRoleGrantsResponse
	(*AddRoleGrantScopesRequest)(nil),     // 22: controller.api.services.v1.AddRoleGrantScopesRequest
	(*AddRoleGrantScopesResponse)(nil),    // 23: controller.api.services.v1.AddRoleGrantScopesResponse
	(*SetRoleGrantScopesRequest)(nil),     // 24: controller.api.services.v1.SetRoleGrantScopesRequest
	(*SetRoleGrantScopesResponse)(nil),    // 25: controller.api.services.v1.SetRoleGrantScopesResponse
	(*RemoveRoleGrantScopesRequest)(nil),  // 26: controller.api.services.v1.RemoveRoleGrantScopesRequest
	(*RemoveRoleGrantScopesResponse)(nil), // 27: controller.api.services.v1.RemoveRoleGrantScopesResponse
	(*roles.Role)(nil),                    // 28: controller.api.resources.roles.v1.Role
	(*fieldmaskpb.FieldMask)(nil),         // 29: google.protobuf.FieldMask
}
var file_controller_api_services_v1_role_service_proto_depIdxs = []int32{
	28, // 0: controller.api.services.v1.GetRoleResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 1: controller.api.services.v1.ListRolesResponse.items:type_name -> controller.api.resources.roles.v1.Role
	28, // 2: controller.api.services.v1.CreateRoleRequest.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 3: controller.api.services.v1.CreateRoleResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 4: controller.api.services.v1.UpdateRoleRequest.item:type_name -> controller.api.resources.roles.v1.Role
	29, // 5: controller.api.services.v1.UpdateRoleRequest.update_mask:type_name -> google.protobuf.FieldMask
	28, // 6: controller.api.services.v1.UpdateRoleResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 7: controller.api.services.v1.AddRolePrincipalsResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 8: controller.api.services.v1.SetRolePrincipalsResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 9: controller.api.services.v1.RemoveRolePrincipalsResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 10: controller.api.services.v1.AddRoleGrantsResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 11: controller.api.services.v1.SetRoleGrantsResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 12: controller.api.services.v1.RemoveRoleGrantsResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 13: controller.api.services.v1.AddRoleGrantScopesResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 14: controller.api.services.v1.SetRoleGrantScopesResponse.item:type_name -> controller.api.resources.roles.v1.Role
	28, // 15: controller.api.services.v1.RemoveRoleGrantScopesResponse.item:type_name -> controller.api.resources.roles.v1.Role
	0,  // 16: controller.api.services.v1.RoleService.GetRole:input_type -> controller.api.services.v1.GetRoleRequest
	2,  // 17: controller.api.services.v1.RoleService.ListRoles:input_type -> controller.api.services.v1.ListRolesRequest
	4,  // 18: controller.api.services.v1.RoleService.CreateRole:input_type -> controller.api.services.v1.CreateRoleRequest
	6,  // 19: controller.api.services.v1.RoleService.UpdateRole:input_type -> controller.api.services.v1.UpdateRoleRequest
	8,  // 20: controller.api.services.v1.RoleService.DeleteRole:input_type -> controller.api.services.v1.DeleteRoleRequest
	10, // 21: controller.api.services.v1.RoleService.AddRolePrincipals:input_type -> controller.api.services.v1.AddRolePrincipalsRequest
	12, // 22: controller.api.services.v1.RoleService.SetRolePrincipals:input_type -> controller.api.services.v1.SetRolePrincipalsRequest
	14, // 23: controller.api.services.v1.RoleService.RemoveRolePrincipals:input_type -> controller.api.services.v1.RemoveRolePrincipalsRequest
	16, // 24: controller.api.services.v1.RoleService.AddRoleGrants:input_type -> controller.api.services.v1.AddRoleGrantsRequest
	18, // 25: controller.api.services.v1.RoleService.SetRoleGrants:input_type -> controller.api.services.v1.SetRoleGrantsRequest
	20, // 26: controller.api.services.v1.RoleService.RemoveRoleGrants:input_type -> controller.api.services.v1.RemoveRoleGrantsRequest
	22, // 27: controller.api.services.v1.RoleService.AddRoleGrantScopes:input_type -> controller.api.services.v1.AddRoleGrantScopesRequest
	24, // 28: controller.api.services.v1.RoleService.SetRoleGrantScopes:input_type -> controller.api.services.v1.SetRoleGrantScopesRequest
	26, // 29: controller.api.services.v1.RoleService.RemoveRoleGrantScopes:input_type -> controller.api.services.v1.RemoveRoleGrantScopesRequest
	1,  // 30: controller.api.services.v1.RoleService.GetRole:output_type -> controller.api.services.v1.GetRoleResponse
	3,  // 31: controller.api.services.v1.RoleService.ListRoles:output_type -> controller.api.services.v1.ListRolesResponse
	5,  // 32: controller.api.services.v1.RoleService.CreateRole:output_type -> controller.api.services.v1.CreateRoleResponse
	7,  // 33: controller.api.services.v1.RoleService.UpdateRole:output_type -> controller.api.services.v1.UpdateRoleResponse
	9,  // 34: controller.api.services.v1.RoleService.DeleteRole:output_type -> controller.api.services.v1.DeleteRoleResponse
	11, // 35: controller.api.services.v1.RoleService.AddRolePrincipals:output_type -> controller.api.services.v1.AddRolePrincipalsResponse
	13, // 36: controller.api.services.v1.RoleService.SetRolePrincipals:output_type -> controller.api.services.v1.SetRolePrincipalsResponse
	15, // 37: controller.api.services.v1.RoleService.RemoveRolePrincipals:output_type -> controller.api.services.v1.RemoveRolePrincipalsResponse
	17, // 38: controller.api.services.v1.RoleService.AddRoleGrants:output_type -> controller.api.services.v1.AddRoleGrantsResponse
	19, // 39: controller.api.services.v1.RoleService.SetRoleGrants:output_type -> controller.api.services.v1.SetRoleGrantsResponse
	21, // 40: controller.api.services.v1.RoleService.RemoveRoleGrants:output_type -> controller.api.services.v1.RemoveRoleGrantsResponse
	23, // 41: controller.api.services.v1.RoleService.AddRoleGrantScopes:output_type -> controller.api.services.v1.AddRoleGrantScopesResponse
	25, // 42: controller.api.services.v1.RoleService.SetRoleGrantScopes:output_type -> controller.api.services.v1.SetRoleGrantScopesResponse
	27, // 43: controller.api.services.v1.RoleService.RemoveRoleGrantScopes:output_type -> controller.api.services.v1.RemoveRoleGrantScopesResponse
	30, // [30:44] is the sub-list for method output_type
	16, // [16:30] is the sub-list for method input_type
	16, // [16:16] is the sub-list for extension type_name
	16, // [16:16] is the sub-list for extension extendee
	0,  // [0:16] is the sub-list for field type_name
}

func init() { file_controller_api_services_v1_role_service_proto_init() }
func file_controller_api_services_v1_role_service_proto_init() {
	if File_controller_api_services_v1_role_service_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_controller_api_services_v1_role_service_proto_rawDesc), len(file_controller_api_services_v1_role_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   28,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_controller_api_services_v1_role_service_proto_goTypes,
		DependencyIndexes: file_controller_api_services_v1_role_service_proto_depIdxs,
		MessageInfos:      file_controller_api_services_v1_role_service_proto_msgTypes,
	}.Build()
	File_controller_api_services_v1_role_service_proto = out.File
	file_controller_api_services_v1_role_service_proto_goTypes = nil
	file_controller_api_services_v1_role_service_proto_depIdxs = nil
}
