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

package cdn

import (
	_ "github.com/yandex-cloud/go-genproto/yandex/cloud"
	_ "github.com/yandex-cloud/go-genproto/yandex/cloud/api"
	operation "github.com/yandex-cloud/go-genproto/yandex/cloud/operation"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	structpb "google.golang.org/protobuf/types/known/structpb"
	wrapperspb "google.golang.org/protobuf/types/known/wrapperspb"
	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)
)

// A request to get a resource.
type GetResourceRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the requested resource.
	ResourceId    string `protobuf:"bytes,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetResourceRequest) ProtoMessage() {}

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

func (x *GetResourceRequest) GetResourceId() string {
	if x != nil {
		return x.ResourceId
	}
	return ""
}

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

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

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

func (*ListResourcesRequest) ProtoMessage() {}

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

func (x *ListResourcesRequest) GetFolderId() string {
	if x != nil {
		return x.FolderId
	}
	return ""
}

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

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

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

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

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

func (*ListResourcesResponse) ProtoMessage() {}

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

func (x *ListResourcesResponse) GetResources() []*Resource {
	if x != nil {
		return x.Resources
	}
	return nil
}

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

type CreateResourceRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the to bind with new resource.
	FolderId string `protobuf:"bytes,1,opt,name=folder_id,json=folderId,proto3" json:"folder_id,omitempty"`
	// CDN endpoint CNAME, must be unique among clients's resources.
	Cname string `protobuf:"bytes,2,opt,name=cname,proto3" json:"cname,omitempty"`
	// Specify the origins to be used for CDN resources requests.
	Origin *CreateResourceRequest_Origin `protobuf:"bytes,3,opt,name=origin,proto3" json:"origin,omitempty"`
	// List of additional CNAMEs.
	SecondaryHostnames *SecondaryHostnames `protobuf:"bytes,4,opt,name=secondary_hostnames,json=secondaryHostnames,proto3" json:"secondary_hostnames,omitempty"`
	// Specify the protocol schema to be used in communication with origin.
	OriginProtocol OriginProtocol `protobuf:"varint,5,opt,name=origin_protocol,json=originProtocol,proto3,enum=yandex.cloud.cdn.v1.OriginProtocol" json:"origin_protocol,omitempty"`
	// Flag to create Resource either in active or disabled state.
	// In active state Origins payload could be transmitted from CDN CNAME requests.
	// Default value: true
	Active *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=active,proto3" json:"active,omitempty"`
	// Resource settings and options to tune CDN edge behavior. Most is unset.
	Options *ResourceOptions `protobuf:"bytes,7,opt,name=options,proto3" json:"options,omitempty"`
	// SSL Certificate options.
	SslCertificate *SSLTargetCertificate `protobuf:"bytes,8,opt,name=ssl_certificate,json=sslCertificate,proto3" json:"ssl_certificate,omitempty"`
	// Labels of the resource.
	Labels map[string]string `protobuf:"bytes,9,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// Set up resource provider
	// It has two possible values:
	// ourcdn - Based on Yandex technologies
	// gcore - Based on an external partner infrastructure
	// Default value: ourcdn
	ProviderType string `protobuf:"bytes,10,opt,name=provider_type,json=providerType,proto3" json:"provider_type,omitempty"`
	// TLS configuration for the resource.
	Tls           *TLS `protobuf:"bytes,11,opt,name=tls,proto3" json:"tls,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateResourceRequest) ProtoMessage() {}

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

func (x *CreateResourceRequest) GetFolderId() string {
	if x != nil {
		return x.FolderId
	}
	return ""
}

func (x *CreateResourceRequest) GetCname() string {
	if x != nil {
		return x.Cname
	}
	return ""
}

func (x *CreateResourceRequest) GetOrigin() *CreateResourceRequest_Origin {
	if x != nil {
		return x.Origin
	}
	return nil
}

func (x *CreateResourceRequest) GetSecondaryHostnames() *SecondaryHostnames {
	if x != nil {
		return x.SecondaryHostnames
	}
	return nil
}

func (x *CreateResourceRequest) GetOriginProtocol() OriginProtocol {
	if x != nil {
		return x.OriginProtocol
	}
	return OriginProtocol_ORIGIN_PROTOCOL_UNSPECIFIED
}

func (x *CreateResourceRequest) GetActive() *wrapperspb.BoolValue {
	if x != nil {
		return x.Active
	}
	return nil
}

func (x *CreateResourceRequest) GetOptions() *ResourceOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

func (x *CreateResourceRequest) GetSslCertificate() *SSLTargetCertificate {
	if x != nil {
		return x.SslCertificate
	}
	return nil
}

func (x *CreateResourceRequest) GetLabels() map[string]string {
	if x != nil {
		return x.Labels
	}
	return nil
}

func (x *CreateResourceRequest) GetProviderType() string {
	if x != nil {
		return x.ProviderType
	}
	return ""
}

func (x *CreateResourceRequest) GetTls() *TLS {
	if x != nil {
		return x.Tls
	}
	return nil
}

// A set of resource origin parameters.
type ResourceOriginParams struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Source of the content.
	Source string `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
	// Set up type of the origin.
	Meta          *OriginMeta `protobuf:"bytes,2,opt,name=meta,proto3" json:"meta,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ResourceOriginParams) ProtoMessage() {}

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

func (x *ResourceOriginParams) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

func (x *ResourceOriginParams) GetMeta() *OriginMeta {
	if x != nil {
		return x.Meta
	}
	return nil
}

type CreateResourceMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of created resource.
	ResourceId    string `protobuf:"bytes,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateResourceMetadata) ProtoMessage() {}

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

func (x *CreateResourceMetadata) GetResourceId() string {
	if x != nil {
		return x.ResourceId
	}
	return ""
}

type UpdateResourceRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of updated resource.
	ResourceId string `protobuf:"bytes,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	// ID of updated origin group.
	OriginGroupId *wrapperspb.Int64Value `protobuf:"bytes,2,opt,name=origin_group_id,json=originGroupId,proto3" json:"origin_group_id,omitempty"`
	// List of additional CNAMEs.
	SecondaryHostnames *SecondaryHostnames `protobuf:"bytes,3,opt,name=secondary_hostnames,json=secondaryHostnames,proto3" json:"secondary_hostnames,omitempty"`
	// Resource settings and options to tune CDN edge behavior.
	Options *ResourceOptions `protobuf:"bytes,4,opt,name=options,proto3" json:"options,omitempty"`
	// Specify the protocol schema to be used in communication with origin.
	OriginProtocol OriginProtocol `protobuf:"varint,5,opt,name=origin_protocol,json=originProtocol,proto3,enum=yandex.cloud.cdn.v1.OriginProtocol" json:"origin_protocol,omitempty"`
	// Flag to create Resource either in active or disabled state.
	// In active state Origins payload could be transmitted from CDN CNAME requests.
	// Default value: true
	Active *wrapperspb.BoolValue `protobuf:"bytes,6,opt,name=active,proto3" json:"active,omitempty"`
	// SSL Certificate options.
	SslCertificate *SSLTargetCertificate `protobuf:"bytes,7,opt,name=ssl_certificate,json=sslCertificate,proto3" json:"ssl_certificate,omitempty"`
	// Resource labels. At some point will be needed for granular detailing.
	Labels map[string]string `protobuf:"bytes,8,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// If flag is set to true resource labels will be deleted.
	RemoveLabels bool `protobuf:"varint,9,opt,name=remove_labels,json=removeLabels,proto3" json:"remove_labels,omitempty"`
	// TLS configuration for the resource.
	Tls           *TLS `protobuf:"bytes,10,opt,name=tls,proto3" json:"tls,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateResourceRequest) ProtoMessage() {}

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

func (x *UpdateResourceRequest) GetResourceId() string {
	if x != nil {
		return x.ResourceId
	}
	return ""
}

func (x *UpdateResourceRequest) GetOriginGroupId() *wrapperspb.Int64Value {
	if x != nil {
		return x.OriginGroupId
	}
	return nil
}

func (x *UpdateResourceRequest) GetSecondaryHostnames() *SecondaryHostnames {
	if x != nil {
		return x.SecondaryHostnames
	}
	return nil
}

func (x *UpdateResourceRequest) GetOptions() *ResourceOptions {
	if x != nil {
		return x.Options
	}
	return nil
}

func (x *UpdateResourceRequest) GetOriginProtocol() OriginProtocol {
	if x != nil {
		return x.OriginProtocol
	}
	return OriginProtocol_ORIGIN_PROTOCOL_UNSPECIFIED
}

func (x *UpdateResourceRequest) GetActive() *wrapperspb.BoolValue {
	if x != nil {
		return x.Active
	}
	return nil
}

func (x *UpdateResourceRequest) GetSslCertificate() *SSLTargetCertificate {
	if x != nil {
		return x.SslCertificate
	}
	return nil
}

func (x *UpdateResourceRequest) GetLabels() map[string]string {
	if x != nil {
		return x.Labels
	}
	return nil
}

func (x *UpdateResourceRequest) GetRemoveLabels() bool {
	if x != nil {
		return x.RemoveLabels
	}
	return false
}

func (x *UpdateResourceRequest) GetTls() *TLS {
	if x != nil {
		return x.Tls
	}
	return nil
}

type UpdateResourceMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of updated resource.
	ResourceId    string `protobuf:"bytes,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateResourceMetadata) ProtoMessage() {}

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

func (x *UpdateResourceMetadata) GetResourceId() string {
	if x != nil {
		return x.ResourceId
	}
	return ""
}

type DeleteResourceRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of resource to delete.
	ResourceId    string `protobuf:"bytes,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteResourceRequest) ProtoMessage() {}

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

func (x *DeleteResourceRequest) GetResourceId() string {
	if x != nil {
		return x.ResourceId
	}
	return ""
}

type DeleteResourceMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of deleted resource.
	ResourceId    string `protobuf:"bytes,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteResourceMetadata) ProtoMessage() {}

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

func (x *DeleteResourceMetadata) GetResourceId() string {
	if x != nil {
		return x.ResourceId
	}
	return ""
}

type GetProviderCNameRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Folder ID to get provider's CNAME.
	FolderId      string `protobuf:"bytes,1,opt,name=folder_id,json=folderId,proto3" json:"folder_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetProviderCNameRequest) ProtoMessage() {}

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

func (x *GetProviderCNameRequest) GetFolderId() string {
	if x != nil {
		return x.FolderId
	}
	return ""
}

type GetProviderCNameResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Provider's CNAME.
	Cname string `protobuf:"bytes,1,opt,name=cname,proto3" json:"cname,omitempty"`
	// ID of the folder that the provider belongs to.
	FolderId      string `protobuf:"bytes,2,opt,name=folder_id,json=folderId,proto3" json:"folder_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetProviderCNameResponse) ProtoMessage() {}

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

func (x *GetProviderCNameResponse) GetCname() string {
	if x != nil {
		return x.Cname
	}
	return ""
}

func (x *GetProviderCNameResponse) GetFolderId() string {
	if x != nil {
		return x.FolderId
	}
	return ""
}

type GetResourceAttributesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// ID of the resource to get attributes for.
	ResourceId    string `protobuf:"bytes,1,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetResourceAttributesRequest) ProtoMessage() {}

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

func (x *GetResourceAttributesRequest) GetResourceId() string {
	if x != nil {
		return x.ResourceId
	}
	return ""
}

type GetResourceAttributesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Resource attributes.
	Attributes    *structpb.Value `protobuf:"bytes,1,opt,name=attributes,proto3" json:"attributes,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetResourceAttributesResponse) ProtoMessage() {}

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

func (x *GetResourceAttributesResponse) GetAttributes() *structpb.Value {
	if x != nil {
		return x.Attributes
	}
	return nil
}

type ListResourceAttributesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Folder ID to list attributes.
	FolderId      string `protobuf:"bytes,1,opt,name=folder_id,json=folderId,proto3" json:"folder_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListResourceAttributesRequest) ProtoMessage() {}

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

func (x *ListResourceAttributesRequest) GetFolderId() string {
	if x != nil {
		return x.FolderId
	}
	return ""
}

type ListResourceAttributesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Mapping resource ID to its attributes.
	Attributes    map[string]*structpb.Value `protobuf:"bytes,1,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListResourceAttributesResponse) ProtoMessage() {}

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

func (x *ListResourceAttributesResponse) GetAttributes() map[string]*structpb.Value {
	if x != nil {
		return x.Attributes
	}
	return nil
}

type CreateResourceRequest_Origin struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Types that are valid to be assigned to OriginVariant:
	//
	//	*CreateResourceRequest_Origin_OriginGroupId
	//	*CreateResourceRequest_Origin_OriginSource
	//	*CreateResourceRequest_Origin_OriginSourceParams
	OriginVariant isCreateResourceRequest_Origin_OriginVariant `protobuf_oneof:"origin_variant"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateResourceRequest_Origin) ProtoMessage() {}

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

func (x *CreateResourceRequest_Origin) GetOriginVariant() isCreateResourceRequest_Origin_OriginVariant {
	if x != nil {
		return x.OriginVariant
	}
	return nil
}

func (x *CreateResourceRequest_Origin) GetOriginGroupId() int64 {
	if x != nil {
		if x, ok := x.OriginVariant.(*CreateResourceRequest_Origin_OriginGroupId); ok {
			return x.OriginGroupId
		}
	}
	return 0
}

func (x *CreateResourceRequest_Origin) GetOriginSource() string {
	if x != nil {
		if x, ok := x.OriginVariant.(*CreateResourceRequest_Origin_OriginSource); ok {
			return x.OriginSource
		}
	}
	return ""
}

func (x *CreateResourceRequest_Origin) GetOriginSourceParams() *ResourceOriginParams {
	if x != nil {
		if x, ok := x.OriginVariant.(*CreateResourceRequest_Origin_OriginSourceParams); ok {
			return x.OriginSourceParams
		}
	}
	return nil
}

type isCreateResourceRequest_Origin_OriginVariant interface {
	isCreateResourceRequest_Origin_OriginVariant()
}

type CreateResourceRequest_Origin_OriginGroupId struct {
	// ID of pre-created origin group.
	OriginGroupId int64 `protobuf:"varint,1,opt,name=origin_group_id,json=originGroupId,proto3,oneof"`
}

type CreateResourceRequest_Origin_OriginSource struct {
	// Create new Origins group with single source, it's id will be
	// returned in result.
	OriginSource string `protobuf:"bytes,2,opt,name=origin_source,json=originSource,proto3,oneof"`
}

type CreateResourceRequest_Origin_OriginSourceParams struct {
	// Set up resource origin parameters.
	OriginSourceParams *ResourceOriginParams `protobuf:"bytes,3,opt,name=origin_source_params,json=originSourceParams,proto3,oneof"`
}

func (*CreateResourceRequest_Origin_OriginGroupId) isCreateResourceRequest_Origin_OriginVariant() {}

func (*CreateResourceRequest_Origin_OriginSource) isCreateResourceRequest_Origin_OriginVariant() {}

func (*CreateResourceRequest_Origin_OriginSourceParams) isCreateResourceRequest_Origin_OriginVariant() {
}

var File_yandex_cloud_cdn_v1_resource_service_proto protoreflect.FileDescriptor

const file_yandex_cloud_cdn_v1_resource_service_proto_rawDesc = "" +
	"\n" +
	"*yandex/cloud/cdn/v1/resource_service.proto\x12\x13yandex.cloud.cdn.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a yandex/cloud/api/operation.proto\x1a yandex/cloud/cdn/v1/origin.proto\x1a\"yandex/cloud/cdn/v1/resource.proto\x1a&yandex/cloud/operation/operation.proto\x1a\x1dyandex/cloud/validation.proto\"C\n" +
	"\x12GetResourceRequest\x12-\n" +
	"\vresource_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\n" +
	"resourceId\"\x94\x01\n" +
	"\x14ListResourcesRequest\x12)\n" +
	"\tfolder_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\bfolderId\x12'\n" +
	"\tpage_size\x18\x02 \x01(\x03B\n" +
	"\xfa\xc71\x06<=1000R\bpageSize\x12(\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tB\t\x8a\xc81\x05<=100R\tpageToken\"|\n" +
	"\x15ListResourcesResponse\x12;\n" +
	"\tresources\x18\x01 \x03(\v2\x1d.yandex.cloud.cdn.v1.ResourceR\tresources\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xc8\a\n" +
	"\x15CreateResourceRequest\x12)\n" +
	"\tfolder_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\bfolderId\x12\x1a\n" +
	"\x05cname\x18\x02 \x01(\tB\x04\xe8\xc71\x01R\x05cname\x12O\n" +
	"\x06origin\x18\x03 \x01(\v21.yandex.cloud.cdn.v1.CreateResourceRequest.OriginB\x04\xe8\xc71\x01R\x06origin\x12X\n" +
	"\x13secondary_hostnames\x18\x04 \x01(\v2'.yandex.cloud.cdn.v1.SecondaryHostnamesR\x12secondaryHostnames\x12L\n" +
	"\x0forigin_protocol\x18\x05 \x01(\x0e2#.yandex.cloud.cdn.v1.OriginProtocolR\x0eoriginProtocol\x122\n" +
	"\x06active\x18\x06 \x01(\v2\x1a.google.protobuf.BoolValueR\x06active\x12>\n" +
	"\aoptions\x18\a \x01(\v2$.yandex.cloud.cdn.v1.ResourceOptionsR\aoptions\x12R\n" +
	"\x0fssl_certificate\x18\b \x01(\v2).yandex.cloud.cdn.v1.SSLTargetCertificateR\x0esslCertificate\x12N\n" +
	"\x06labels\x18\t \x03(\v26.yandex.cloud.cdn.v1.CreateResourceRequest.LabelsEntryR\x06labels\x12#\n" +
	"\rprovider_type\x18\n" +
	" \x01(\tR\fproviderType\x12*\n" +
	"\x03tls\x18\v \x01(\v2\x18.yandex.cloud.cdn.v1.TLSR\x03tls\x1a\xca\x01\n" +
	"\x06Origin\x12(\n" +
	"\x0forigin_group_id\x18\x01 \x01(\x03H\x00R\roriginGroupId\x12%\n" +
	"\rorigin_source\x18\x02 \x01(\tH\x00R\foriginSource\x12]\n" +
	"\x14origin_source_params\x18\x03 \x01(\v2).yandex.cloud.cdn.v1.ResourceOriginParamsH\x00R\x12originSourceParamsB\x10\n" +
	"\x0eorigin_variant\x1a9\n" +
	"\vLabelsEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"c\n" +
	"\x14ResourceOriginParams\x12\x16\n" +
	"\x06source\x18\x01 \x01(\tR\x06source\x123\n" +
	"\x04meta\x18\x02 \x01(\v2\x1f.yandex.cloud.cdn.v1.OriginMetaR\x04meta\"G\n" +
	"\x16CreateResourceMetadata\x12-\n" +
	"\vresource_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\n" +
	"resourceId\"\xd7\x05\n" +
	"\x15UpdateResourceRequest\x12-\n" +
	"\vresource_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\n" +
	"resourceId\x12C\n" +
	"\x0forigin_group_id\x18\x02 \x01(\v2\x1b.google.protobuf.Int64ValueR\roriginGroupId\x12X\n" +
	"\x13secondary_hostnames\x18\x03 \x01(\v2'.yandex.cloud.cdn.v1.SecondaryHostnamesR\x12secondaryHostnames\x12>\n" +
	"\aoptions\x18\x04 \x01(\v2$.yandex.cloud.cdn.v1.ResourceOptionsR\aoptions\x12L\n" +
	"\x0forigin_protocol\x18\x05 \x01(\x0e2#.yandex.cloud.cdn.v1.OriginProtocolR\x0eoriginProtocol\x122\n" +
	"\x06active\x18\x06 \x01(\v2\x1a.google.protobuf.BoolValueR\x06active\x12R\n" +
	"\x0fssl_certificate\x18\a \x01(\v2).yandex.cloud.cdn.v1.SSLTargetCertificateR\x0esslCertificate\x12N\n" +
	"\x06labels\x18\b \x03(\v26.yandex.cloud.cdn.v1.UpdateResourceRequest.LabelsEntryR\x06labels\x12#\n" +
	"\rremove_labels\x18\t \x01(\bR\fremoveLabels\x12*\n" +
	"\x03tls\x18\n" +
	" \x01(\v2\x18.yandex.cloud.cdn.v1.TLSR\x03tls\x1a9\n" +
	"\vLabelsEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"G\n" +
	"\x16UpdateResourceMetadata\x12-\n" +
	"\vresource_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\n" +
	"resourceId\"F\n" +
	"\x15DeleteResourceRequest\x12-\n" +
	"\vresource_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\n" +
	"resourceId\"9\n" +
	"\x16DeleteResourceMetadata\x12\x1f\n" +
	"\vresource_id\x18\x01 \x01(\tR\n" +
	"resourceId\"D\n" +
	"\x17GetProviderCNameRequest\x12)\n" +
	"\tfolder_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\bfolderId\"M\n" +
	"\x18GetProviderCNameResponse\x12\x14\n" +
	"\x05cname\x18\x01 \x01(\tR\x05cname\x12\x1b\n" +
	"\tfolder_id\x18\x02 \x01(\tR\bfolderId\"M\n" +
	"\x1cGetResourceAttributesRequest\x12-\n" +
	"\vresource_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\n" +
	"resourceId\"W\n" +
	"\x1dGetResourceAttributesResponse\x126\n" +
	"\n" +
	"attributes\x18\x01 \x01(\v2\x16.google.protobuf.ValueR\n" +
	"attributes\"J\n" +
	"\x1dListResourceAttributesRequest\x12)\n" +
	"\tfolder_id\x18\x01 \x01(\tB\f\xe8\xc71\x01\x8a\xc81\x04<=50R\bfolderId\"\xdc\x01\n" +
	"\x1eListResourceAttributesResponse\x12c\n" +
	"\n" +
	"attributes\x18\x01 \x03(\v2C.yandex.cloud.cdn.v1.ListResourceAttributesResponse.AttributesEntryR\n" +
	"attributes\x1aU\n" +
	"\x0fAttributesEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12,\n" +
	"\x05value\x18\x02 \x01(\v2\x16.google.protobuf.ValueR\x05value:\x028\x012\x8b\t\n" +
	"\x0fResourceService\x12v\n" +
	"\x03Get\x12'.yandex.cloud.cdn.v1.GetResourceRequest\x1a\x1d.yandex.cloud.cdn.v1.Resource\"'\x82\xd3\xe4\x93\x02!\x12\x1f/cdn/v1/resources/{resource_id}\x12x\n" +
	"\x04List\x12).yandex.cloud.cdn.v1.ListResourcesRequest\x1a*.yandex.cloud.cdn.v1.ListResourcesResponse\"\x19\x82\xd3\xe4\x93\x02\x13\x12\x11/cdn/v1/resources\x12\x9b\x01\n" +
	"\x06Create\x12*.yandex.cloud.cdn.v1.CreateResourceRequest\x1a!.yandex.cloud.operation.Operation\"B\xb2\xd2*\"\n" +
	"\x16CreateResourceMetadata\x12\bResource\x82\xd3\xe4\x93\x02\x16:\x01*\"\x11/cdn/v1/resources\x12\xa9\x01\n" +
	"\x06Update\x12*.yandex.cloud.cdn.v1.UpdateResourceRequest\x1a!.yandex.cloud.operation.Operation\"P\xb2\xd2*\"\n" +
	"\x16UpdateResourceMetadata\x12\bResource\x82\xd3\xe4\x93\x02$:\x01*2\x1f/cdn/v1/resources/{resource_id}\x12\xb3\x01\n" +
	"\x06Delete\x12*.yandex.cloud.cdn.v1.DeleteResourceRequest\x1a!.yandex.cloud.operation.Operation\"Z\xb2\xd2*/\n" +
	"\x16DeleteResourceMetadata\x12\x15google.protobuf.Empty\x82\xd3\xe4\x93\x02!*\x1f/cdn/v1/resources/{resource_id}\x12\x92\x01\n" +
	"\x10GetProviderCName\x12,.yandex.cloud.cdn.v1.GetProviderCNameRequest\x1a-.yandex.cloud.cdn.v1.GetProviderCNameResponse\"!\x82\xd3\xe4\x93\x02\x1b\x12\x19/cdn/v1/cname/{folder_id}\x12v\n" +
	"\rGetAttributes\x121.yandex.cloud.cdn.v1.GetResourceAttributesRequest\x1a2.yandex.cloud.cdn.v1.GetResourceAttributesResponse\x12y\n" +
	"\x0eListAttributes\x122.yandex.cloud.cdn.v1.ListResourceAttributesRequest\x1a3.yandex.cloud.cdn.v1.ListResourceAttributesResponseBV\n" +
	"\x17yandex.cloud.api.cdn.v1Z;github.com/yandex-cloud/go-genproto/yandex/cloud/cdn/v1;cdnb\x06proto3"

var (
	file_yandex_cloud_cdn_v1_resource_service_proto_rawDescOnce sync.Once
	file_yandex_cloud_cdn_v1_resource_service_proto_rawDescData []byte
)

func file_yandex_cloud_cdn_v1_resource_service_proto_rawDescGZIP() []byte {
	file_yandex_cloud_cdn_v1_resource_service_proto_rawDescOnce.Do(func() {
		file_yandex_cloud_cdn_v1_resource_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_yandex_cloud_cdn_v1_resource_service_proto_rawDesc), len(file_yandex_cloud_cdn_v1_resource_service_proto_rawDesc)))
	})
	return file_yandex_cloud_cdn_v1_resource_service_proto_rawDescData
}

var file_yandex_cloud_cdn_v1_resource_service_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
var file_yandex_cloud_cdn_v1_resource_service_proto_goTypes = []any{
	(*GetResourceRequest)(nil),             // 0: yandex.cloud.cdn.v1.GetResourceRequest
	(*ListResourcesRequest)(nil),           // 1: yandex.cloud.cdn.v1.ListResourcesRequest
	(*ListResourcesResponse)(nil),          // 2: yandex.cloud.cdn.v1.ListResourcesResponse
	(*CreateResourceRequest)(nil),          // 3: yandex.cloud.cdn.v1.CreateResourceRequest
	(*ResourceOriginParams)(nil),           // 4: yandex.cloud.cdn.v1.ResourceOriginParams
	(*CreateResourceMetadata)(nil),         // 5: yandex.cloud.cdn.v1.CreateResourceMetadata
	(*UpdateResourceRequest)(nil),          // 6: yandex.cloud.cdn.v1.UpdateResourceRequest
	(*UpdateResourceMetadata)(nil),         // 7: yandex.cloud.cdn.v1.UpdateResourceMetadata
	(*DeleteResourceRequest)(nil),          // 8: yandex.cloud.cdn.v1.DeleteResourceRequest
	(*DeleteResourceMetadata)(nil),         // 9: yandex.cloud.cdn.v1.DeleteResourceMetadata
	(*GetProviderCNameRequest)(nil),        // 10: yandex.cloud.cdn.v1.GetProviderCNameRequest
	(*GetProviderCNameResponse)(nil),       // 11: yandex.cloud.cdn.v1.GetProviderCNameResponse
	(*GetResourceAttributesRequest)(nil),   // 12: yandex.cloud.cdn.v1.GetResourceAttributesRequest
	(*GetResourceAttributesResponse)(nil),  // 13: yandex.cloud.cdn.v1.GetResourceAttributesResponse
	(*ListResourceAttributesRequest)(nil),  // 14: yandex.cloud.cdn.v1.ListResourceAttributesRequest
	(*ListResourceAttributesResponse)(nil), // 15: yandex.cloud.cdn.v1.ListResourceAttributesResponse
	(*CreateResourceRequest_Origin)(nil),   // 16: yandex.cloud.cdn.v1.CreateResourceRequest.Origin
	nil,                                    // 17: yandex.cloud.cdn.v1.CreateResourceRequest.LabelsEntry
	nil,                                    // 18: yandex.cloud.cdn.v1.UpdateResourceRequest.LabelsEntry
	nil,                                    // 19: yandex.cloud.cdn.v1.ListResourceAttributesResponse.AttributesEntry
	(*Resource)(nil),                       // 20: yandex.cloud.cdn.v1.Resource
	(*SecondaryHostnames)(nil),             // 21: yandex.cloud.cdn.v1.SecondaryHostnames
	(OriginProtocol)(0),                    // 22: yandex.cloud.cdn.v1.OriginProtocol
	(*wrapperspb.BoolValue)(nil),           // 23: google.protobuf.BoolValue
	(*ResourceOptions)(nil),                // 24: yandex.cloud.cdn.v1.ResourceOptions
	(*SSLTargetCertificate)(nil),           // 25: yandex.cloud.cdn.v1.SSLTargetCertificate
	(*TLS)(nil),                            // 26: yandex.cloud.cdn.v1.TLS
	(*OriginMeta)(nil),                     // 27: yandex.cloud.cdn.v1.OriginMeta
	(*wrapperspb.Int64Value)(nil),          // 28: google.protobuf.Int64Value
	(*structpb.Value)(nil),                 // 29: google.protobuf.Value
	(*operation.Operation)(nil),            // 30: yandex.cloud.operation.Operation
}
var file_yandex_cloud_cdn_v1_resource_service_proto_depIdxs = []int32{
	20, // 0: yandex.cloud.cdn.v1.ListResourcesResponse.resources:type_name -> yandex.cloud.cdn.v1.Resource
	16, // 1: yandex.cloud.cdn.v1.CreateResourceRequest.origin:type_name -> yandex.cloud.cdn.v1.CreateResourceRequest.Origin
	21, // 2: yandex.cloud.cdn.v1.CreateResourceRequest.secondary_hostnames:type_name -> yandex.cloud.cdn.v1.SecondaryHostnames
	22, // 3: yandex.cloud.cdn.v1.CreateResourceRequest.origin_protocol:type_name -> yandex.cloud.cdn.v1.OriginProtocol
	23, // 4: yandex.cloud.cdn.v1.CreateResourceRequest.active:type_name -> google.protobuf.BoolValue
	24, // 5: yandex.cloud.cdn.v1.CreateResourceRequest.options:type_name -> yandex.cloud.cdn.v1.ResourceOptions
	25, // 6: yandex.cloud.cdn.v1.CreateResourceRequest.ssl_certificate:type_name -> yandex.cloud.cdn.v1.SSLTargetCertificate
	17, // 7: yandex.cloud.cdn.v1.CreateResourceRequest.labels:type_name -> yandex.cloud.cdn.v1.CreateResourceRequest.LabelsEntry
	26, // 8: yandex.cloud.cdn.v1.CreateResourceRequest.tls:type_name -> yandex.cloud.cdn.v1.TLS
	27, // 9: yandex.cloud.cdn.v1.ResourceOriginParams.meta:type_name -> yandex.cloud.cdn.v1.OriginMeta
	28, // 10: yandex.cloud.cdn.v1.UpdateResourceRequest.origin_group_id:type_name -> google.protobuf.Int64Value
	21, // 11: yandex.cloud.cdn.v1.UpdateResourceRequest.secondary_hostnames:type_name -> yandex.cloud.cdn.v1.SecondaryHostnames
	24, // 12: yandex.cloud.cdn.v1.UpdateResourceRequest.options:type_name -> yandex.cloud.cdn.v1.ResourceOptions
	22, // 13: yandex.cloud.cdn.v1.UpdateResourceRequest.origin_protocol:type_name -> yandex.cloud.cdn.v1.OriginProtocol
	23, // 14: yandex.cloud.cdn.v1.UpdateResourceRequest.active:type_name -> google.protobuf.BoolValue
	25, // 15: yandex.cloud.cdn.v1.UpdateResourceRequest.ssl_certificate:type_name -> yandex.cloud.cdn.v1.SSLTargetCertificate
	18, // 16: yandex.cloud.cdn.v1.UpdateResourceRequest.labels:type_name -> yandex.cloud.cdn.v1.UpdateResourceRequest.LabelsEntry
	26, // 17: yandex.cloud.cdn.v1.UpdateResourceRequest.tls:type_name -> yandex.cloud.cdn.v1.TLS
	29, // 18: yandex.cloud.cdn.v1.GetResourceAttributesResponse.attributes:type_name -> google.protobuf.Value
	19, // 19: yandex.cloud.cdn.v1.ListResourceAttributesResponse.attributes:type_name -> yandex.cloud.cdn.v1.ListResourceAttributesResponse.AttributesEntry
	4,  // 20: yandex.cloud.cdn.v1.CreateResourceRequest.Origin.origin_source_params:type_name -> yandex.cloud.cdn.v1.ResourceOriginParams
	29, // 21: yandex.cloud.cdn.v1.ListResourceAttributesResponse.AttributesEntry.value:type_name -> google.protobuf.Value
	0,  // 22: yandex.cloud.cdn.v1.ResourceService.Get:input_type -> yandex.cloud.cdn.v1.GetResourceRequest
	1,  // 23: yandex.cloud.cdn.v1.ResourceService.List:input_type -> yandex.cloud.cdn.v1.ListResourcesRequest
	3,  // 24: yandex.cloud.cdn.v1.ResourceService.Create:input_type -> yandex.cloud.cdn.v1.CreateResourceRequest
	6,  // 25: yandex.cloud.cdn.v1.ResourceService.Update:input_type -> yandex.cloud.cdn.v1.UpdateResourceRequest
	8,  // 26: yandex.cloud.cdn.v1.ResourceService.Delete:input_type -> yandex.cloud.cdn.v1.DeleteResourceRequest
	10, // 27: yandex.cloud.cdn.v1.ResourceService.GetProviderCName:input_type -> yandex.cloud.cdn.v1.GetProviderCNameRequest
	12, // 28: yandex.cloud.cdn.v1.ResourceService.GetAttributes:input_type -> yandex.cloud.cdn.v1.GetResourceAttributesRequest
	14, // 29: yandex.cloud.cdn.v1.ResourceService.ListAttributes:input_type -> yandex.cloud.cdn.v1.ListResourceAttributesRequest
	20, // 30: yandex.cloud.cdn.v1.ResourceService.Get:output_type -> yandex.cloud.cdn.v1.Resource
	2,  // 31: yandex.cloud.cdn.v1.ResourceService.List:output_type -> yandex.cloud.cdn.v1.ListResourcesResponse
	30, // 32: yandex.cloud.cdn.v1.ResourceService.Create:output_type -> yandex.cloud.operation.Operation
	30, // 33: yandex.cloud.cdn.v1.ResourceService.Update:output_type -> yandex.cloud.operation.Operation
	30, // 34: yandex.cloud.cdn.v1.ResourceService.Delete:output_type -> yandex.cloud.operation.Operation
	11, // 35: yandex.cloud.cdn.v1.ResourceService.GetProviderCName:output_type -> yandex.cloud.cdn.v1.GetProviderCNameResponse
	13, // 36: yandex.cloud.cdn.v1.ResourceService.GetAttributes:output_type -> yandex.cloud.cdn.v1.GetResourceAttributesResponse
	15, // 37: yandex.cloud.cdn.v1.ResourceService.ListAttributes:output_type -> yandex.cloud.cdn.v1.ListResourceAttributesResponse
	30, // [30:38] is the sub-list for method output_type
	22, // [22:30] is the sub-list for method input_type
	22, // [22:22] is the sub-list for extension type_name
	22, // [22:22] is the sub-list for extension extendee
	0,  // [0:22] is the sub-list for field type_name
}

func init() { file_yandex_cloud_cdn_v1_resource_service_proto_init() }
func file_yandex_cloud_cdn_v1_resource_service_proto_init() {
	if File_yandex_cloud_cdn_v1_resource_service_proto != nil {
		return
	}
	file_yandex_cloud_cdn_v1_origin_proto_init()
	file_yandex_cloud_cdn_v1_resource_proto_init()
	file_yandex_cloud_cdn_v1_resource_service_proto_msgTypes[16].OneofWrappers = []any{
		(*CreateResourceRequest_Origin_OriginGroupId)(nil),
		(*CreateResourceRequest_Origin_OriginSource)(nil),
		(*CreateResourceRequest_Origin_OriginSourceParams)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_yandex_cloud_cdn_v1_resource_service_proto_rawDesc), len(file_yandex_cloud_cdn_v1_resource_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   20,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_yandex_cloud_cdn_v1_resource_service_proto_goTypes,
		DependencyIndexes: file_yandex_cloud_cdn_v1_resource_service_proto_depIdxs,
		MessageInfos:      file_yandex_cloud_cdn_v1_resource_service_proto_msgTypes,
	}.Build()
	File_yandex_cloud_cdn_v1_resource_service_proto = out.File
	file_yandex_cloud_cdn_v1_resource_service_proto_goTypes = nil
	file_yandex_cloud_cdn_v1_resource_service_proto_depIdxs = nil
}
