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

package services

import (
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	session_recordings "github.com/hashicorp/boundary/sdk/pbs/controller/api/resources/session_recordings"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	httpbody "google.golang.org/genproto/googleapis/api/httpbody"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type GetSessionRecordingRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the Session recording, or the ID of the Session that was recorded.
	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 *GetSessionRecordingRequest) Reset() {
	*x = GetSessionRecordingRequest{}
	mi := &file_controller_api_services_v1_session_recording_service_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetSessionRecordingRequest) ProtoMessage() {}

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

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

type GetSessionRecordingResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The requested recording.
	Item          *session_recordings.SessionRecording `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetSessionRecordingResponse) ProtoMessage() {}

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

func (x *GetSessionRecordingResponse) GetItem() *session_recordings.SessionRecording {
	if x != nil {
		return x.Item
	}
	return nil
}

type ListSessionRecordingsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The scope in which to list session recordings.
	// Must be set unless recursive is set.
	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"
	// Whether to recurse into child scopes when listing.
	// If set and scope_id is empty, shows session recordings in
	// all scopes the caller has access to.
	Recursive bool `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty" class:"public" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	// 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,3,opt,name=list_token,proto3" json:"list_token,omitempty" class:"public"` // @gotags: `class:"public"`
	// The maximum size of a page in this iteration.
	// If you do not set a page size, Boundary uses the configured default page size.
	// If the page_size is greater than the default page size configured,
	// Boundary truncates the page size to this number.
	PageSize      uint32 `protobuf:"varint,4,opt,name=page_size,proto3" json:"page_size,omitempty" class:"public" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListSessionRecordingsRequest) ProtoMessage() {}

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

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

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

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

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

type ListSessionRecordingsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The items returned in this page.
	Items []*session_recordings.SessionRecording `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" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	// 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" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	// 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" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	// 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" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	// 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" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListSessionRecordingsResponse) ProtoMessage() {}

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

func (x *ListSessionRecordingsResponse) GetItems() []*session_recordings.SessionRecording {
	if x != nil {
		return x.Items
	}
	return nil
}

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

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

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

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

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

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

type DownloadRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the resource that should be downloaded. Supported types:
	//   - Session ID and Session recording ID for Session recordings
	//   - Connection ID and Connection recording ID for Connection recordings
	//   - Channel recording ID for Channel recordings
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	// The format of the response. The only supported mime type is "application/x-asciicast".
	// Defaults to "application/x-asciicast" if not set.
	MimeType      string `protobuf:"bytes,2,opt,name=mime_type,proto3" json:"mime_type,omitempty" class:"public" eventstream:"observation"` // @gotags: class:"public" eventstream:"observation"
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DownloadRequest) ProtoMessage() {}

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

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

func (x *DownloadRequest) GetMimeType() string {
	if x != nil {
		return x.MimeType
	}
	return ""
}

type ReApplyStoragePolicyRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The Session Recording ID
	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 *ReApplyStoragePolicyRequest) Reset() {
	*x = ReApplyStoragePolicyRequest{}
	mi := &file_controller_api_services_v1_session_recording_service_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ReApplyStoragePolicyRequest) ProtoMessage() {}

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

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

type ReApplyStoragePolicyResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The requested recording.
	Item          *session_recordings.SessionRecording `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ReApplyStoragePolicyResponse) ProtoMessage() {}

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

func (x *ReApplyStoragePolicyResponse) GetItem() *session_recordings.SessionRecording {
	if x != nil {
		return x.Item
	}
	return nil
}

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

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

func (*DeleteSessionRecordingRequest) ProtoMessage() {}

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

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

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

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

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

func (*DeleteSessionRecordingResponse) ProtoMessage() {}

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

var File_controller_api_services_v1_session_recording_service_proto protoreflect.FileDescriptor

const file_controller_api_services_v1_session_recording_service_proto_rawDesc = "" +
	"\n" +
	":controller/api/services/v1/session_recording_service.proto\x12\x1acontroller.api.services.v1\x1aEcontroller/api/resources/sessionrecordings/v1/session_recording.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/api/httpbody.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\",\n" +
	"\x1aGetSessionRecordingRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"r\n" +
	"\x1bGetSessionRecordingResponse\x12S\n" +
	"\x04item\x18\x01 \x01(\v2?.controller.api.resources.sessionrecordings.v1.SessionRecordingR\x04item\"\x95\x01\n" +
	"\x1cListSessionRecordingsRequest\x12\x19\n" +
	"\bscope_id\x18\x01 \x01(\tR\ascopeId\x12\x1c\n" +
	"\trecursive\x18\x02 \x01(\bR\trecursive\x12\x1e\n" +
	"\n" +
	"list_token\x18\x03 \x01(\tR\n" +
	"list_token\x12\x1c\n" +
	"\tpage_size\x18\x04 \x01(\rR\tpage_size\"\xbc\x02\n" +
	"\x1dListSessionRecordingsResponse\x12U\n" +
	"\x05items\x18\x01 \x03(\v2?.controller.api.resources.sessionrecordings.v1.SessionRecordingR\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\"?\n" +
	"\x0fDownloadRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x1c\n" +
	"\tmime_type\x18\x02 \x01(\tR\tmime_type\"-\n" +
	"\x1bReApplyStoragePolicyRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"s\n" +
	"\x1cReApplyStoragePolicyResponse\x12S\n" +
	"\x04item\x18\x01 \x01(\v2?.controller.api.resources.sessionrecordings.v1.SessionRecordingR\x04item\"/\n" +
	"\x1dDeleteSessionRecordingRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\" \n" +
	"\x1eDeleteSessionRecordingResponse2\xe5\x12\n" +
	"\x17SessionRecordingService\x12\xea\x03\n" +
	"\x13GetSessionRecording\x126.controller.api.services.v1.GetSessionRecordingRequest\x1a7.controller.api.services.v1.GetSessionRecordingResponse\"\xe1\x02\x92A\xb4\x02\x12\xb1\x02GetSessionRecording returns a stored Session recording if present. The provided request must include the Session recording ID for the Session recording being retrieved, or the ID of the Session that was recorded. If that ID is missing, malformed or reference a non existing resource, an error is returned.\x82\xd3\xe4\x93\x02#b\x04item\x12\x1b/v1/session-recordings/{id}\x12\xbe\x02\n" +
	"\x15ListSessionRecordings\x128.controller.api.services.v1.ListSessionRecordingsRequest\x1a9.controller.api.services.v1.ListSessionRecordingsResponse\"\xaf\x01\x92A\x8d\x01\x12\x8a\x01ListSessionRecordings lists all Session recordings. Session recordings are ordered by start_time descending (most recently started first).\x82\xd3\xe4\x93\x02\x18\x12\x16/v1/session-recordings\x12\x87\x04\n" +
	"\bDownload\x12+.controller.api.services.v1.DownloadRequest\x1a\x14.google.api.HttpBody\"\xb5\x03\x92A\x85\x03\x12\x82\x03Download returns the contents of the specified resource in the specified mime type. Supports both Session ID and Session recording ID for looking up a Session recording. Supports both Connection ID and Connection recording ID to look up a Connection recording. A Channel recording ID is required to look up a Channel recording. The only supported mime type is \"application/x-asciicast\".\x82\xd3\xe4\x93\x02&\x12$/v1/session-recordings/{id}:download0\x01\x12\xc7\x02\n" +
	"\x14ReApplyStoragePolicy\x127.controller.api.services.v1.ReApplyStoragePolicyRequest\x1a8.controller.api.services.v1.ReApplyStoragePolicyResponse\"\xbb\x01\x92Ax\x12vReApplyStoragePolicy will recalculate the resultant set of policy and apply the result to the given session recording.\x82\xd3\xe4\x93\x02:b\x04item\"2/v1/session-recordings/{id}:reapply-storage-policy\x12\xd4\x01\n" +
	"\x16DeleteSessionRecording\x129.controller.api.services.v1.DeleteSessionRecordingRequest\x1a:.controller.api.services.v1.DeleteSessionRecordingResponse\"C\x92A\x1d\x12\x1bDeletes a Session Recording\x82\xd3\xe4\x93\x02\x1d*\x1b/v1/session-recordings/{id}\x1a\xf0\x03\x92A\xec\x03\n" +
	"\x19Session recording service\x12\xb7\x02A session recording is a feature that enables administrators to record and play back user access sessions to target resources. It provides an audit trail of user activity and lets administrators monitor access. The session recording service provides endpoints that let you manage session recordings in Boundary.\x1a\x94\x01\n" +
	":Read about session recordings in the Boundary domain model\x12Vhttps://developer.hashicorp.com/boundary/docs/concepts/domain-model/session-recordingsBMZKgithub.com/hashicorp/boundary/internal/gen/controller/api/services;servicesb\x06proto3"

var (
	file_controller_api_services_v1_session_recording_service_proto_rawDescOnce sync.Once
	file_controller_api_services_v1_session_recording_service_proto_rawDescData []byte
)

func file_controller_api_services_v1_session_recording_service_proto_rawDescGZIP() []byte {
	file_controller_api_services_v1_session_recording_service_proto_rawDescOnce.Do(func() {
		file_controller_api_services_v1_session_recording_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_controller_api_services_v1_session_recording_service_proto_rawDesc), len(file_controller_api_services_v1_session_recording_service_proto_rawDesc)))
	})
	return file_controller_api_services_v1_session_recording_service_proto_rawDescData
}

var file_controller_api_services_v1_session_recording_service_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_controller_api_services_v1_session_recording_service_proto_goTypes = []any{
	(*GetSessionRecordingRequest)(nil),          // 0: controller.api.services.v1.GetSessionRecordingRequest
	(*GetSessionRecordingResponse)(nil),         // 1: controller.api.services.v1.GetSessionRecordingResponse
	(*ListSessionRecordingsRequest)(nil),        // 2: controller.api.services.v1.ListSessionRecordingsRequest
	(*ListSessionRecordingsResponse)(nil),       // 3: controller.api.services.v1.ListSessionRecordingsResponse
	(*DownloadRequest)(nil),                     // 4: controller.api.services.v1.DownloadRequest
	(*ReApplyStoragePolicyRequest)(nil),         // 5: controller.api.services.v1.ReApplyStoragePolicyRequest
	(*ReApplyStoragePolicyResponse)(nil),        // 6: controller.api.services.v1.ReApplyStoragePolicyResponse
	(*DeleteSessionRecordingRequest)(nil),       // 7: controller.api.services.v1.DeleteSessionRecordingRequest
	(*DeleteSessionRecordingResponse)(nil),      // 8: controller.api.services.v1.DeleteSessionRecordingResponse
	(*session_recordings.SessionRecording)(nil), // 9: controller.api.resources.sessionrecordings.v1.SessionRecording
	(*httpbody.HttpBody)(nil),                   // 10: google.api.HttpBody
}
var file_controller_api_services_v1_session_recording_service_proto_depIdxs = []int32{
	9,  // 0: controller.api.services.v1.GetSessionRecordingResponse.item:type_name -> controller.api.resources.sessionrecordings.v1.SessionRecording
	9,  // 1: controller.api.services.v1.ListSessionRecordingsResponse.items:type_name -> controller.api.resources.sessionrecordings.v1.SessionRecording
	9,  // 2: controller.api.services.v1.ReApplyStoragePolicyResponse.item:type_name -> controller.api.resources.sessionrecordings.v1.SessionRecording
	0,  // 3: controller.api.services.v1.SessionRecordingService.GetSessionRecording:input_type -> controller.api.services.v1.GetSessionRecordingRequest
	2,  // 4: controller.api.services.v1.SessionRecordingService.ListSessionRecordings:input_type -> controller.api.services.v1.ListSessionRecordingsRequest
	4,  // 5: controller.api.services.v1.SessionRecordingService.Download:input_type -> controller.api.services.v1.DownloadRequest
	5,  // 6: controller.api.services.v1.SessionRecordingService.ReApplyStoragePolicy:input_type -> controller.api.services.v1.ReApplyStoragePolicyRequest
	7,  // 7: controller.api.services.v1.SessionRecordingService.DeleteSessionRecording:input_type -> controller.api.services.v1.DeleteSessionRecordingRequest
	1,  // 8: controller.api.services.v1.SessionRecordingService.GetSessionRecording:output_type -> controller.api.services.v1.GetSessionRecordingResponse
	3,  // 9: controller.api.services.v1.SessionRecordingService.ListSessionRecordings:output_type -> controller.api.services.v1.ListSessionRecordingsResponse
	10, // 10: controller.api.services.v1.SessionRecordingService.Download:output_type -> google.api.HttpBody
	6,  // 11: controller.api.services.v1.SessionRecordingService.ReApplyStoragePolicy:output_type -> controller.api.services.v1.ReApplyStoragePolicyResponse
	8,  // 12: controller.api.services.v1.SessionRecordingService.DeleteSessionRecording:output_type -> controller.api.services.v1.DeleteSessionRecordingResponse
	8,  // [8:13] is the sub-list for method output_type
	3,  // [3:8] is the sub-list for method input_type
	3,  // [3:3] is the sub-list for extension type_name
	3,  // [3:3] is the sub-list for extension extendee
	0,  // [0:3] is the sub-list for field type_name
}

func init() { file_controller_api_services_v1_session_recording_service_proto_init() }
func file_controller_api_services_v1_session_recording_service_proto_init() {
	if File_controller_api_services_v1_session_recording_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_session_recording_service_proto_rawDesc), len(file_controller_api_services_v1_session_recording_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   9,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_controller_api_services_v1_session_recording_service_proto_goTypes,
		DependencyIndexes: file_controller_api_services_v1_session_recording_service_proto_depIdxs,
		MessageInfos:      file_controller_api_services_v1_session_recording_service_proto_msgTypes,
	}.Build()
	File_controller_api_services_v1_session_recording_service_proto = out.File
	file_controller_api_services_v1_session_recording_service_proto_goTypes = nil
	file_controller_api_services_v1_session_recording_service_proto_depIdxs = nil
}
