// 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/policy_service.proto

package services

import (
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	policies "github.com/hashicorp/boundary/sdk/pbs/controller/api/resources/policies"
	_ "github.com/hashicorp/boundary/sdk/pbs/controller/protooptions"
	_ "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 GetPolicyRequest 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 *GetPolicyRequest) Reset() {
	*x = GetPolicyRequest{}
	mi := &file_controller_api_services_v1_policy_service_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetPolicyRequest) ProtoMessage() {}

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

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

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

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

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

func (*GetPolicyResponse) ProtoMessage() {}

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

func (x *GetPolicyResponse) GetItem() *policies.Policy {
	if x != nil {
		return x.Item
	}
	return nil
}

type ListPoliciesRequest struct {
	state     protoimpl.MessageState `protogen:"open.v1"`
	ScopeId   string                 `protobuf:"bytes,1,opt,name=scope_id,json=scopeId,proto3" json:"scope_id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	Recursive bool                   `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty" class:"public" eventstream:"observation"`           // @gotags: `class:"public" eventstream:"observation"`
	Filter    string                 `protobuf:"bytes,3,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,4,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,5,opt,name=page_size,proto3" json:"page_size,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListPoliciesRequest) ProtoMessage() {}

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

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

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

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

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

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

type ListPoliciesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Items []*policies.Policy     `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 *ListPoliciesResponse) Reset() {
	*x = ListPoliciesResponse{}
	mi := &file_controller_api_services_v1_policy_service_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListPoliciesResponse) ProtoMessage() {}

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

func (x *ListPoliciesResponse) GetItems() []*policies.Policy {
	if x != nil {
		return x.Items
	}
	return nil
}

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

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

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

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

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

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

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

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

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

func (*CreatePolicyRequest) ProtoMessage() {}

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

func (x *CreatePolicyRequest) GetItem() *policies.Policy {
	if x != nil {
		return x.Item
	}
	return nil
}

type CreatePolicyResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Uri           string                 `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	Item          *policies.Policy       `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreatePolicyResponse) ProtoMessage() {}

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

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

func (x *CreatePolicyResponse) GetItem() *policies.Policy {
	if x != nil {
		return x.Item
	}
	return nil
}

type UpdatePolicyRequest 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          *policies.Policy       `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 *UpdatePolicyRequest) Reset() {
	*x = UpdatePolicyRequest{}
	mi := &file_controller_api_services_v1_policy_service_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdatePolicyRequest) ProtoMessage() {}

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

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

func (x *UpdatePolicyRequest) GetItem() *policies.Policy {
	if x != nil {
		return x.Item
	}
	return nil
}

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

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

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

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

func (*UpdatePolicyResponse) ProtoMessage() {}

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

func (x *UpdatePolicyResponse) GetItem() *policies.Policy {
	if x != nil {
		return x.Item
	}
	return nil
}

type DeletePolicyRequest 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 *DeletePolicyRequest) Reset() {
	*x = DeletePolicyRequest{}
	mi := &file_controller_api_services_v1_policy_service_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*DeletePolicyRequest) ProtoMessage() {}

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

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

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

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

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

func (*DeletePolicyResponse) ProtoMessage() {}

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

var File_controller_api_services_v1_policy_service_proto protoreflect.FileDescriptor

const file_controller_api_services_v1_policy_service_proto_rawDesc = "" +
	"\n" +
	"/controller/api/services/v1/policy_service.proto\x12\x1acontroller.api.services.v1\x1a1controller/api/resources/policies/v1/policy.proto\x1a*controller/custom_options/v1/options.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\"\"\n" +
	"\x10GetPolicyRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"U\n" +
	"\x11GetPolicyResponse\x12@\n" +
	"\x04item\x18\x01 \x01(\v2,.controller.api.resources.policies.v1.PolicyR\x04item\"\xa4\x01\n" +
	"\x13ListPoliciesRequest\x12\x19\n" +
	"\bscope_id\x18\x01 \x01(\tR\ascopeId\x12\x1c\n" +
	"\trecursive\x18\x02 \x01(\bR\trecursive\x12\x16\n" +
	"\x06filter\x18\x03 \x01(\tR\x06filter\x12\x1e\n" +
	"\n" +
	"list_token\x18\x04 \x01(\tR\n" +
	"list_token\x12\x1c\n" +
	"\tpage_size\x18\x05 \x01(\rR\tpage_size\"\xa0\x02\n" +
	"\x14ListPoliciesResponse\x12B\n" +
	"\x05items\x18\x01 \x03(\v2,.controller.api.resources.policies.v1.PolicyR\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\"W\n" +
	"\x13CreatePolicyRequest\x12@\n" +
	"\x04item\x18\x01 \x01(\v2,.controller.api.resources.policies.v1.PolicyR\x04item\"j\n" +
	"\x14CreatePolicyResponse\x12\x10\n" +
	"\x03uri\x18\x01 \x01(\tR\x03uri\x12@\n" +
	"\x04item\x18\x02 \x01(\v2,.controller.api.resources.policies.v1.PolicyR\x04item\"\xa5\x01\n" +
	"\x13UpdatePolicyRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12@\n" +
	"\x04item\x18\x02 \x01(\v2,.controller.api.resources.policies.v1.PolicyR\x04item\x12<\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskR\vupdate_mask\"X\n" +
	"\x14UpdatePolicyResponse\x12@\n" +
	"\x04item\x18\x01 \x01(\v2,.controller.api.resources.policies.v1.PolicyR\x04item\"%\n" +
	"\x13DeletePolicyRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"\x16\n" +
	"\x14DeletePolicyResponse2\xc3\t\n" +
	"\rPolicyService\x12\xb5\x01\n" +
	"\tGetPolicy\x12,.controller.api.services.v1.GetPolicyRequest\x1a-.controller.api.services.v1.GetPolicyResponse\"K\x92A)\x12'Gets a single policy with the given id.\x82\xd3\xe4\x93\x02\x19b\x04item\x12\x11/v1/policies/{id}\x12\x9f\x01\n" +
	"\fListPolicies\x12/.controller.api.services.v1.ListPoliciesRequest\x1a0.controller.api.services.v1.ListPoliciesResponse\",\x92A\x15\x12\x13Lists all policies.\x82\xd3\xe4\x93\x02\x0e\x12\f/v1/policies\x12\xb0\x01\n" +
	"\fCreatePolicy\x12/.controller.api.services.v1.CreatePolicyRequest\x1a0.controller.api.services.v1.CreatePolicyResponse\"=\x92A\x1a\x12\x18Creates a single policy.\x82\xd3\xe4\x93\x02\x1a:\x04itemb\x04item\"\f/v1/policies\x12\xb8\x01\n" +
	"\fUpdatePolicy\x12/.controller.api.services.v1.UpdatePolicyRequest\x1a0.controller.api.services.v1.UpdatePolicyResponse\"E\x92A\x1d\x12\x1bUpdates an existing policy.\x82\xd3\xe4\x93\x02\x1f:\x04itemb\x04item2\x11/v1/policies/{id}\x12\xac\x01\n" +
	"\fDeletePolicy\x12/.controller.api.services.v1.DeletePolicyRequest\x1a0.controller.api.services.v1.DeletePolicyResponse\"9\x92A\x1d\x12\x1bDeletes an existing policy.\x82\xd3\xe4\x93\x02\x13*\x11/v1/policies/{id}\x1a\xba\x02\x92A\xb6\x02\n" +
	"\x0ePolicy service\x12\x9a\x01The policy service provides endpoints that let you manage policies in Boundary. Policies are used to define rules for the lifecycle of session recordings.\x1a\x86\x01\n" +
	"0Read about policies in the Boundary domain model\x12Rhttps://developer.hashicorp.com/boundary/docs/concepts/domain-model/storage-policyBW\xa2\xe3)\x06policyZKgithub.com/hashicorp/boundary/internal/gen/controller/api/services;servicesb\x06proto3"

var (
	file_controller_api_services_v1_policy_service_proto_rawDescOnce sync.Once
	file_controller_api_services_v1_policy_service_proto_rawDescData []byte
)

func file_controller_api_services_v1_policy_service_proto_rawDescGZIP() []byte {
	file_controller_api_services_v1_policy_service_proto_rawDescOnce.Do(func() {
		file_controller_api_services_v1_policy_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_controller_api_services_v1_policy_service_proto_rawDesc), len(file_controller_api_services_v1_policy_service_proto_rawDesc)))
	})
	return file_controller_api_services_v1_policy_service_proto_rawDescData
}

var file_controller_api_services_v1_policy_service_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
var file_controller_api_services_v1_policy_service_proto_goTypes = []any{
	(*GetPolicyRequest)(nil),      // 0: controller.api.services.v1.GetPolicyRequest
	(*GetPolicyResponse)(nil),     // 1: controller.api.services.v1.GetPolicyResponse
	(*ListPoliciesRequest)(nil),   // 2: controller.api.services.v1.ListPoliciesRequest
	(*ListPoliciesResponse)(nil),  // 3: controller.api.services.v1.ListPoliciesResponse
	(*CreatePolicyRequest)(nil),   // 4: controller.api.services.v1.CreatePolicyRequest
	(*CreatePolicyResponse)(nil),  // 5: controller.api.services.v1.CreatePolicyResponse
	(*UpdatePolicyRequest)(nil),   // 6: controller.api.services.v1.UpdatePolicyRequest
	(*UpdatePolicyResponse)(nil),  // 7: controller.api.services.v1.UpdatePolicyResponse
	(*DeletePolicyRequest)(nil),   // 8: controller.api.services.v1.DeletePolicyRequest
	(*DeletePolicyResponse)(nil),  // 9: controller.api.services.v1.DeletePolicyResponse
	(*policies.Policy)(nil),       // 10: controller.api.resources.policies.v1.Policy
	(*fieldmaskpb.FieldMask)(nil), // 11: google.protobuf.FieldMask
}
var file_controller_api_services_v1_policy_service_proto_depIdxs = []int32{
	10, // 0: controller.api.services.v1.GetPolicyResponse.item:type_name -> controller.api.resources.policies.v1.Policy
	10, // 1: controller.api.services.v1.ListPoliciesResponse.items:type_name -> controller.api.resources.policies.v1.Policy
	10, // 2: controller.api.services.v1.CreatePolicyRequest.item:type_name -> controller.api.resources.policies.v1.Policy
	10, // 3: controller.api.services.v1.CreatePolicyResponse.item:type_name -> controller.api.resources.policies.v1.Policy
	10, // 4: controller.api.services.v1.UpdatePolicyRequest.item:type_name -> controller.api.resources.policies.v1.Policy
	11, // 5: controller.api.services.v1.UpdatePolicyRequest.update_mask:type_name -> google.protobuf.FieldMask
	10, // 6: controller.api.services.v1.UpdatePolicyResponse.item:type_name -> controller.api.resources.policies.v1.Policy
	0,  // 7: controller.api.services.v1.PolicyService.GetPolicy:input_type -> controller.api.services.v1.GetPolicyRequest
	2,  // 8: controller.api.services.v1.PolicyService.ListPolicies:input_type -> controller.api.services.v1.ListPoliciesRequest
	4,  // 9: controller.api.services.v1.PolicyService.CreatePolicy:input_type -> controller.api.services.v1.CreatePolicyRequest
	6,  // 10: controller.api.services.v1.PolicyService.UpdatePolicy:input_type -> controller.api.services.v1.UpdatePolicyRequest
	8,  // 11: controller.api.services.v1.PolicyService.DeletePolicy:input_type -> controller.api.services.v1.DeletePolicyRequest
	1,  // 12: controller.api.services.v1.PolicyService.GetPolicy:output_type -> controller.api.services.v1.GetPolicyResponse
	3,  // 13: controller.api.services.v1.PolicyService.ListPolicies:output_type -> controller.api.services.v1.ListPoliciesResponse
	5,  // 14: controller.api.services.v1.PolicyService.CreatePolicy:output_type -> controller.api.services.v1.CreatePolicyResponse
	7,  // 15: controller.api.services.v1.PolicyService.UpdatePolicy:output_type -> controller.api.services.v1.UpdatePolicyResponse
	9,  // 16: controller.api.services.v1.PolicyService.DeletePolicy:output_type -> controller.api.services.v1.DeletePolicyResponse
	12, // [12:17] is the sub-list for method output_type
	7,  // [7:12] 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_controller_api_services_v1_policy_service_proto_init() }
func file_controller_api_services_v1_policy_service_proto_init() {
	if File_controller_api_services_v1_policy_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_policy_service_proto_rawDesc), len(file_controller_api_services_v1_policy_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   10,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_controller_api_services_v1_policy_service_proto_goTypes,
		DependencyIndexes: file_controller_api_services_v1_policy_service_proto_depIdxs,
		MessageInfos:      file_controller_api_services_v1_policy_service_proto_msgTypes,
	}.Build()
	File_controller_api_services_v1_policy_service_proto = out.File
	file_controller_api_services_v1_policy_service_proto_goTypes = nil
	file_controller_api_services_v1_policy_service_proto_depIdxs = nil
}
