// Copyright 2025 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v6.33.2
// source: google/logging/v2/logging_config.proto

package loggingpb

import (
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"

	longrunningpb "cloud.google.com/go/longrunning/autogen/longrunningpb"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
	fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
)

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)
)

// List of different operation states.
// High level state of the operation. This is used to report the job's
// current state to the user. Once a long running operation is created,
// the current state of the operation can be queried even before the
// operation is finished and the final result is available.
type OperationState int32

const (
	// Should not be used.
	OperationState_OPERATION_STATE_UNSPECIFIED OperationState = 0
	// The operation is scheduled.
	OperationState_OPERATION_STATE_SCHEDULED OperationState = 1
	// Waiting for necessary permissions.
	OperationState_OPERATION_STATE_WAITING_FOR_PERMISSIONS OperationState = 2
	// The operation is running.
	OperationState_OPERATION_STATE_RUNNING OperationState = 3
	// The operation was completed successfully.
	OperationState_OPERATION_STATE_SUCCEEDED OperationState = 4
	// The operation failed.
	OperationState_OPERATION_STATE_FAILED OperationState = 5
	// The operation was cancelled by the user.
	OperationState_OPERATION_STATE_CANCELLED OperationState = 6
)

// Enum value maps for OperationState.
var (
	OperationState_name = map[int32]string{
		0: "OPERATION_STATE_UNSPECIFIED",
		1: "OPERATION_STATE_SCHEDULED",
		2: "OPERATION_STATE_WAITING_FOR_PERMISSIONS",
		3: "OPERATION_STATE_RUNNING",
		4: "OPERATION_STATE_SUCCEEDED",
		5: "OPERATION_STATE_FAILED",
		6: "OPERATION_STATE_CANCELLED",
	}
	OperationState_value = map[string]int32{
		"OPERATION_STATE_UNSPECIFIED":             0,
		"OPERATION_STATE_SCHEDULED":               1,
		"OPERATION_STATE_WAITING_FOR_PERMISSIONS": 2,
		"OPERATION_STATE_RUNNING":                 3,
		"OPERATION_STATE_SUCCEEDED":               4,
		"OPERATION_STATE_FAILED":                  5,
		"OPERATION_STATE_CANCELLED":               6,
	}
)

func (x OperationState) Enum() *OperationState {
	p := new(OperationState)
	*p = x
	return p
}

func (x OperationState) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (OperationState) Descriptor() protoreflect.EnumDescriptor {
	return file_google_logging_v2_logging_config_proto_enumTypes[0].Descriptor()
}

func (OperationState) Type() protoreflect.EnumType {
	return &file_google_logging_v2_logging_config_proto_enumTypes[0]
}

func (x OperationState) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use OperationState.Descriptor instead.
func (OperationState) EnumDescriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{0}
}

// LogBucket lifecycle states.
type LifecycleState int32

const (
	// Unspecified state. This is only used/useful for distinguishing unset
	// values.
	LifecycleState_LIFECYCLE_STATE_UNSPECIFIED LifecycleState = 0
	// The normal and active state.
	LifecycleState_ACTIVE LifecycleState = 1
	// The resource has been marked for deletion by the user. For some resources
	// (e.g. buckets), this can be reversed by an un-delete operation.
	LifecycleState_DELETE_REQUESTED LifecycleState = 2
	// The resource has been marked for an update by the user. It will remain in
	// this state until the update is complete.
	LifecycleState_UPDATING LifecycleState = 3
	// The resource has been marked for creation by the user. It will remain in
	// this state until the creation is complete.
	LifecycleState_CREATING LifecycleState = 4
	// The resource is in an INTERNAL error state.
	LifecycleState_FAILED LifecycleState = 5
)

// Enum value maps for LifecycleState.
var (
	LifecycleState_name = map[int32]string{
		0: "LIFECYCLE_STATE_UNSPECIFIED",
		1: "ACTIVE",
		2: "DELETE_REQUESTED",
		3: "UPDATING",
		4: "CREATING",
		5: "FAILED",
	}
	LifecycleState_value = map[string]int32{
		"LIFECYCLE_STATE_UNSPECIFIED": 0,
		"ACTIVE":                      1,
		"DELETE_REQUESTED":            2,
		"UPDATING":                    3,
		"CREATING":                    4,
		"FAILED":                      5,
	}
)

func (x LifecycleState) Enum() *LifecycleState {
	p := new(LifecycleState)
	*p = x
	return p
}

func (x LifecycleState) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (LifecycleState) Descriptor() protoreflect.EnumDescriptor {
	return file_google_logging_v2_logging_config_proto_enumTypes[1].Descriptor()
}

func (LifecycleState) Type() protoreflect.EnumType {
	return &file_google_logging_v2_logging_config_proto_enumTypes[1]
}

func (x LifecycleState) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use LifecycleState.Descriptor instead.
func (LifecycleState) EnumDescriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{1}
}

// IndexType is used for custom indexing. It describes the type of an indexed
// field.
type IndexType int32

const (
	// The index's type is unspecified.
	IndexType_INDEX_TYPE_UNSPECIFIED IndexType = 0
	// The index is a string-type index.
	IndexType_INDEX_TYPE_STRING IndexType = 1
	// The index is a integer-type index.
	IndexType_INDEX_TYPE_INTEGER IndexType = 2
)

// Enum value maps for IndexType.
var (
	IndexType_name = map[int32]string{
		0: "INDEX_TYPE_UNSPECIFIED",
		1: "INDEX_TYPE_STRING",
		2: "INDEX_TYPE_INTEGER",
	}
	IndexType_value = map[string]int32{
		"INDEX_TYPE_UNSPECIFIED": 0,
		"INDEX_TYPE_STRING":      1,
		"INDEX_TYPE_INTEGER":     2,
	}
)

func (x IndexType) Enum() *IndexType {
	p := new(IndexType)
	*p = x
	return p
}

func (x IndexType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (IndexType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_logging_v2_logging_config_proto_enumTypes[2].Descriptor()
}

func (IndexType) Type() protoreflect.EnumType {
	return &file_google_logging_v2_logging_config_proto_enumTypes[2]
}

func (x IndexType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use IndexType.Descriptor instead.
func (IndexType) EnumDescriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{2}
}

// Deprecated. This is unused.
type LogSink_VersionFormat int32

const (
	// An unspecified format version that will default to V2.
	LogSink_VERSION_FORMAT_UNSPECIFIED LogSink_VersionFormat = 0
	// `LogEntry` version 2 format.
	LogSink_V2 LogSink_VersionFormat = 1
	// `LogEntry` version 1 format.
	LogSink_V1 LogSink_VersionFormat = 2
)

// Enum value maps for LogSink_VersionFormat.
var (
	LogSink_VersionFormat_name = map[int32]string{
		0: "VERSION_FORMAT_UNSPECIFIED",
		1: "V2",
		2: "V1",
	}
	LogSink_VersionFormat_value = map[string]int32{
		"VERSION_FORMAT_UNSPECIFIED": 0,
		"V2":                         1,
		"V1":                         2,
	}
)

func (x LogSink_VersionFormat) Enum() *LogSink_VersionFormat {
	p := new(LogSink_VersionFormat)
	*p = x
	return p
}

func (x LogSink_VersionFormat) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (LogSink_VersionFormat) Descriptor() protoreflect.EnumDescriptor {
	return file_google_logging_v2_logging_config_proto_enumTypes[3].Descriptor()
}

func (LogSink_VersionFormat) Type() protoreflect.EnumType {
	return &file_google_logging_v2_logging_config_proto_enumTypes[3]
}

func (x LogSink_VersionFormat) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use LogSink_VersionFormat.Descriptor instead.
func (LogSink_VersionFormat) EnumDescriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{3, 0}
}

// Configuration for an indexed field.
type IndexConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The LogEntry field path to index.
	//
	// Note that some paths are automatically indexed, and other paths are not
	// eligible for indexing. See [indexing documentation](
	// https://cloud.google.com/logging/docs/view/advanced-queries#indexed-fields)
	// for details.
	//
	// For example: `jsonPayload.request.status`
	FieldPath string `protobuf:"bytes,1,opt,name=field_path,json=fieldPath,proto3" json:"field_path,omitempty"`
	// Required. The type of data in this index.
	Type IndexType `protobuf:"varint,2,opt,name=type,proto3,enum=google.logging.v2.IndexType" json:"type,omitempty"`
	// Output only. The timestamp when the index was last modified.
	//
	// This is used to return the timestamp, and will be ignored if supplied
	// during update.
	CreateTime    *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*IndexConfig) ProtoMessage() {}

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

func (x *IndexConfig) GetFieldPath() string {
	if x != nil {
		return x.FieldPath
	}
	return ""
}

func (x *IndexConfig) GetType() IndexType {
	if x != nil {
		return x.Type
	}
	return IndexType_INDEX_TYPE_UNSPECIFIED
}

func (x *IndexConfig) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

// Describes a repository in which log entries are stored.
type LogBucket struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Output only. The resource name of the bucket.
	//
	// For example:
	//
	//	`projects/my-project/locations/global/buckets/my-bucket`
	//
	// For a list of supported locations, see [Supported
	// Regions](https://cloud.google.com/logging/docs/region-support)
	//
	// For the location of `global` it is unspecified where log entries are
	// actually stored.
	//
	// After a bucket has been created, the location cannot be changed.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Describes this bucket.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Output only. The creation timestamp of the bucket. This is not set for any
	// of the default buckets.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Output only. The last update timestamp of the bucket.
	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// Logs will be retained by default for this amount of time, after which they
	// will automatically be deleted. The minimum retention period is 1 day. If
	// this value is set to zero at bucket creation time, the default time of 30
	// days will be used.
	RetentionDays int32 `protobuf:"varint,11,opt,name=retention_days,json=retentionDays,proto3" json:"retention_days,omitempty"`
	// Whether the bucket is locked.
	//
	// The retention period on a locked bucket cannot be changed. Locked buckets
	// may only be deleted if they are empty.
	Locked bool `protobuf:"varint,9,opt,name=locked,proto3" json:"locked,omitempty"`
	// Output only. The bucket lifecycle state.
	LifecycleState LifecycleState `protobuf:"varint,12,opt,name=lifecycle_state,json=lifecycleState,proto3,enum=google.logging.v2.LifecycleState" json:"lifecycle_state,omitempty"`
	// Whether log analytics is enabled for this bucket.
	//
	// Once enabled, log analytics features cannot be disabled.
	AnalyticsEnabled bool `protobuf:"varint,14,opt,name=analytics_enabled,json=analyticsEnabled,proto3" json:"analytics_enabled,omitempty"`
	// Log entry field paths that are denied access in this bucket.
	//
	// The following fields and their children are eligible: `textPayload`,
	// `jsonPayload`, `protoPayload`, `httpRequest`, `labels`, `sourceLocation`.
	//
	// Restricting a repeated field will restrict all values. Adding a parent will
	// block all child fields. (e.g. `foo.bar` will block `foo.bar.baz`)
	RestrictedFields []string `protobuf:"bytes,15,rep,name=restricted_fields,json=restrictedFields,proto3" json:"restricted_fields,omitempty"`
	// A list of indexed fields and related configuration data.
	IndexConfigs []*IndexConfig `protobuf:"bytes,17,rep,name=index_configs,json=indexConfigs,proto3" json:"index_configs,omitempty"`
	// The CMEK settings of the log bucket. If present, new log entries written to
	// this log bucket are encrypted using the CMEK key provided in this
	// configuration. If a log bucket has CMEK settings, the CMEK settings cannot
	// be disabled later by updating the log bucket. Changing the KMS key is
	// allowed.
	CmekSettings  *CmekSettings `protobuf:"bytes,19,opt,name=cmek_settings,json=cmekSettings,proto3" json:"cmek_settings,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*LogBucket) ProtoMessage() {}

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

func (x *LogBucket) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *LogBucket) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *LogBucket) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *LogBucket) GetUpdateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdateTime
	}
	return nil
}

func (x *LogBucket) GetRetentionDays() int32 {
	if x != nil {
		return x.RetentionDays
	}
	return 0
}

func (x *LogBucket) GetLocked() bool {
	if x != nil {
		return x.Locked
	}
	return false
}

func (x *LogBucket) GetLifecycleState() LifecycleState {
	if x != nil {
		return x.LifecycleState
	}
	return LifecycleState_LIFECYCLE_STATE_UNSPECIFIED
}

func (x *LogBucket) GetAnalyticsEnabled() bool {
	if x != nil {
		return x.AnalyticsEnabled
	}
	return false
}

func (x *LogBucket) GetRestrictedFields() []string {
	if x != nil {
		return x.RestrictedFields
	}
	return nil
}

func (x *LogBucket) GetIndexConfigs() []*IndexConfig {
	if x != nil {
		return x.IndexConfigs
	}
	return nil
}

func (x *LogBucket) GetCmekSettings() *CmekSettings {
	if x != nil {
		return x.CmekSettings
	}
	return nil
}

// Describes a view over log entries in a bucket.
type LogView struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The resource name of the view.
	//
	// For example:
	//
	//	`projects/my-project/locations/global/buckets/my-bucket/views/my-view`
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Describes this view.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Output only. The creation timestamp of the view.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Output only. The last update timestamp of the view.
	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// Filter that restricts which log entries in a bucket are visible in this
	// view.
	//
	// Filters are restricted to be a logical AND of ==/!= of any of the
	// following:
	//
	//   - originating project/folder/organization/billing account.
	//   - resource type
	//   - log id
	//
	// For example:
	//
	//	SOURCE("projects/myproject") AND resource.type = "gce_instance"
	//	                             AND LOG_ID("stdout")
	Filter        string `protobuf:"bytes,7,opt,name=filter,proto3" json:"filter,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*LogView) ProtoMessage() {}

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

func (x *LogView) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *LogView) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *LogView) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *LogView) GetUpdateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdateTime
	}
	return nil
}

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

// Describes a sink used to export log entries to one of the following
// destinations in any project: a Cloud Storage bucket, a BigQuery dataset, a
// Pub/Sub topic or a Cloud Logging log bucket. A logs filter controls which log
// entries are exported. The sink must be created within a project,
// organization, billing account, or folder.
type LogSink struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The client-assigned sink identifier, unique within the project.
	//
	// For example: `"my-syslog-errors-to-pubsub"`. Sink identifiers are limited
	// to 100 characters and can include only the following characters: upper and
	// lower-case alphanumeric characters, underscores, hyphens, and periods.
	// First character has to be alphanumeric.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The export destination:
	//
	//	"storage.googleapis.com/[GCS_BUCKET]"
	//	"bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET]"
	//	"pubsub.googleapis.com/projects/[PROJECT_ID]/topics/[TOPIC_ID]"
	//
	// The sink's `writer_identity`, set when the sink is created, must have
	// permission to write to the destination or else the log entries are not
	// exported. For more information, see
	// [Exporting Logs with
	// Sinks](https://cloud.google.com/logging/docs/api/tasks/exporting-logs).
	Destination string `protobuf:"bytes,3,opt,name=destination,proto3" json:"destination,omitempty"`
	// Optional. An [advanced logs
	// filter](https://cloud.google.com/logging/docs/view/advanced-queries). The
	// only exported log entries are those that are in the resource owning the
	// sink and that match the filter.
	//
	// For example:
	//
	//	`logName="projects/[PROJECT_ID]/logs/[LOG_ID]" AND severity>=ERROR`
	Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"`
	// Optional. A description of this sink.
	//
	// The maximum length of the description is 8000 characters.
	Description string `protobuf:"bytes,18,opt,name=description,proto3" json:"description,omitempty"`
	// Optional. If set to true, then this sink is disabled and it does not export
	// any log entries.
	Disabled bool `protobuf:"varint,19,opt,name=disabled,proto3" json:"disabled,omitempty"`
	// Optional. Log entries that match any of these exclusion filters will not be
	// exported.
	//
	// If a log entry is matched by both `filter` and one of `exclusion_filters`
	// it will not be exported.
	Exclusions []*LogExclusion `protobuf:"bytes,16,rep,name=exclusions,proto3" json:"exclusions,omitempty"`
	// Deprecated. This field is unused.
	//
	// Deprecated: Marked as deprecated in google/logging/v2/logging_config.proto.
	OutputVersionFormat LogSink_VersionFormat `protobuf:"varint,6,opt,name=output_version_format,json=outputVersionFormat,proto3,enum=google.logging.v2.LogSink_VersionFormat" json:"output_version_format,omitempty"`
	// Output only. An IAM identity&mdash;a service account or group&mdash;under
	// which Cloud Logging writes the exported log entries to the sink's
	// destination. This field is either set by specifying
	// `custom_writer_identity` or set automatically by
	// [sinks.create][google.logging.v2.ConfigServiceV2.CreateSink] and
	// [sinks.update][google.logging.v2.ConfigServiceV2.UpdateSink] based on the
	// value of `unique_writer_identity` in those methods.
	//
	// Until you grant this identity write-access to the destination, log entry
	// exports from this sink will fail. For more information, see [Granting
	// Access for a
	// Resource](https://cloud.google.com/iam/docs/granting-roles-to-service-accounts#granting_access_to_a_service_account_for_a_resource).
	// Consult the destination service's documentation to determine the
	// appropriate IAM roles to assign to the identity.
	//
	// Sinks that have a destination that is a log bucket in the same project as
	// the sink cannot have a writer_identity and no additional permissions are
	// required.
	WriterIdentity string `protobuf:"bytes,8,opt,name=writer_identity,json=writerIdentity,proto3" json:"writer_identity,omitempty"`
	// Optional. This field applies only to sinks owned by organizations and
	// folders. If the field is false, the default, only the logs owned by the
	// sink's parent resource are available for export. If the field is true, then
	// log entries from all the projects, folders, and billing accounts contained
	// in the sink's parent resource are also available for export. Whether a
	// particular log entry from the children is exported depends on the sink's
	// filter expression.
	//
	// For example, if this field is true, then the filter
	// `resource.type=gce_instance` would export all Compute Engine VM instance
	// log entries from all projects in the sink's parent.
	//
	// To only export entries from certain child projects, filter on the project
	// part of the log name:
	//
	//	logName:("projects/test-project1/" OR "projects/test-project2/") AND
	//	resource.type=gce_instance
	IncludeChildren bool `protobuf:"varint,9,opt,name=include_children,json=includeChildren,proto3" json:"include_children,omitempty"`
	// Destination dependent options.
	//
	// Types that are valid to be assigned to Options:
	//
	//	*LogSink_BigqueryOptions
	Options isLogSink_Options `protobuf_oneof:"options"`
	// Output only. The creation timestamp of the sink.
	//
	// This field may not be present for older sinks.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Output only. The last update timestamp of the sink.
	//
	// This field may not be present for older sinks.
	UpdateTime    *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*LogSink) ProtoMessage() {}

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

func (x *LogSink) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *LogSink) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

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

func (x *LogSink) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *LogSink) GetDisabled() bool {
	if x != nil {
		return x.Disabled
	}
	return false
}

func (x *LogSink) GetExclusions() []*LogExclusion {
	if x != nil {
		return x.Exclusions
	}
	return nil
}

// Deprecated: Marked as deprecated in google/logging/v2/logging_config.proto.
func (x *LogSink) GetOutputVersionFormat() LogSink_VersionFormat {
	if x != nil {
		return x.OutputVersionFormat
	}
	return LogSink_VERSION_FORMAT_UNSPECIFIED
}

func (x *LogSink) GetWriterIdentity() string {
	if x != nil {
		return x.WriterIdentity
	}
	return ""
}

func (x *LogSink) GetIncludeChildren() bool {
	if x != nil {
		return x.IncludeChildren
	}
	return false
}

func (x *LogSink) GetOptions() isLogSink_Options {
	if x != nil {
		return x.Options
	}
	return nil
}

func (x *LogSink) GetBigqueryOptions() *BigQueryOptions {
	if x != nil {
		if x, ok := x.Options.(*LogSink_BigqueryOptions); ok {
			return x.BigqueryOptions
		}
	}
	return nil
}

func (x *LogSink) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *LogSink) GetUpdateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdateTime
	}
	return nil
}

type isLogSink_Options interface {
	isLogSink_Options()
}

type LogSink_BigqueryOptions struct {
	// Optional. Options that affect sinks exporting data to BigQuery.
	BigqueryOptions *BigQueryOptions `protobuf:"bytes,12,opt,name=bigquery_options,json=bigqueryOptions,proto3,oneof"`
}

func (*LogSink_BigqueryOptions) isLogSink_Options() {}

// Describes a BigQuery dataset that was created by a link.
type BigQueryDataset struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Output only. The full resource name of the BigQuery dataset. The DATASET_ID
	// will match the ID of the link, so the link must match the naming
	// restrictions of BigQuery datasets (alphanumeric characters and underscores
	// only).
	//
	// The dataset will have a resource path of
	//
	//	"bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET_ID]"
	DatasetId     string `protobuf:"bytes,1,opt,name=dataset_id,json=datasetId,proto3" json:"dataset_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*BigQueryDataset) ProtoMessage() {}

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

func (x *BigQueryDataset) GetDatasetId() string {
	if x != nil {
		return x.DatasetId
	}
	return ""
}

// Describes a link connected to an analytics enabled bucket.
type Link struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The resource name of the link. The name can have up to 100 characters.
	// A valid link id (at the end of the link name) must only have alphanumeric
	// characters and underscores within it.
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//
	// For example:
	//
	//	`projects/my-project/locations/global/buckets/my-bucket/links/my_link
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Describes this link.
	//
	// The maximum length of the description is 8000 characters.
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	// Output only. The creation timestamp of the link.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Output only. The resource lifecycle state.
	LifecycleState LifecycleState `protobuf:"varint,4,opt,name=lifecycle_state,json=lifecycleState,proto3,enum=google.logging.v2.LifecycleState" json:"lifecycle_state,omitempty"`
	// The information of a BigQuery Dataset. When a link is created, a BigQuery
	// dataset is created along with it, in the same project as the LogBucket it's
	// linked to. This dataset will also have BigQuery Views corresponding to the
	// LogViews in the bucket.
	BigqueryDataset *BigQueryDataset `protobuf:"bytes,5,opt,name=bigquery_dataset,json=bigqueryDataset,proto3" json:"bigquery_dataset,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

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

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

func (*Link) ProtoMessage() {}

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

func (x *Link) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *Link) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *Link) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *Link) GetLifecycleState() LifecycleState {
	if x != nil {
		return x.LifecycleState
	}
	return LifecycleState_LIFECYCLE_STATE_UNSPECIFIED
}

func (x *Link) GetBigqueryDataset() *BigQueryDataset {
	if x != nil {
		return x.BigqueryDataset
	}
	return nil
}

// Options that change functionality of a sink exporting data to BigQuery.
type BigQueryOptions struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional. Whether to use [BigQuery's partition
	// tables](https://cloud.google.com/bigquery/docs/partitioned-tables). By
	// default, Cloud Logging creates dated tables based on the log entries'
	// timestamps, e.g. syslog_20170523. With partitioned tables the date suffix
	// is no longer present and [special query
	// syntax](https://cloud.google.com/bigquery/docs/querying-partitioned-tables)
	// has to be used instead. In both cases, tables are sharded based on UTC
	// timezone.
	UsePartitionedTables bool `protobuf:"varint,1,opt,name=use_partitioned_tables,json=usePartitionedTables,proto3" json:"use_partitioned_tables,omitempty"`
	// Output only. True if new timestamp column based partitioning is in use,
	// false if legacy ingestion-time partitioning is in use.
	//
	// All new sinks will have this field set true and will use timestamp column
	// based partitioning. If use_partitioned_tables is false, this value has no
	// meaning and will be false. Legacy sinks using partitioned tables will have
	// this field set to false.
	UsesTimestampColumnPartitioning bool `protobuf:"varint,3,opt,name=uses_timestamp_column_partitioning,json=usesTimestampColumnPartitioning,proto3" json:"uses_timestamp_column_partitioning,omitempty"`
	unknownFields                   protoimpl.UnknownFields
	sizeCache                       protoimpl.SizeCache
}

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

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

func (*BigQueryOptions) ProtoMessage() {}

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

func (x *BigQueryOptions) GetUsePartitionedTables() bool {
	if x != nil {
		return x.UsePartitionedTables
	}
	return false
}

func (x *BigQueryOptions) GetUsesTimestampColumnPartitioning() bool {
	if x != nil {
		return x.UsesTimestampColumnPartitioning
	}
	return false
}

// The parameters to `ListBuckets`.
type ListBucketsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The parent resource whose buckets are to be listed:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]"
	//
	// Note: The locations portion of the resource must be specified, but
	// supplying the character `-` in place of [LOCATION_ID] will return all
	// buckets.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. If present, then retrieve the next batch of results from the
	// preceding call to this method. `pageToken` must be the value of
	// `nextPageToken` from the previous response. The values of other method
	// parameters should be identical to those in the previous call.
	PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// Optional. The maximum number of results to return from this request.
	// Non-positive values are ignored. The presence of `nextPageToken` in the
	// response indicates that more results might be available.
	PageSize      int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListBucketsRequest) ProtoMessage() {}

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

func (x *ListBucketsRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

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

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

// The response from ListBuckets.
type ListBucketsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A list of buckets.
	Buckets []*LogBucket `protobuf:"bytes,1,rep,name=buckets,proto3" json:"buckets,omitempty"`
	// If there might be more results than appear in this response, then
	// `nextPageToken` is included. To get the next set of results, call the same
	// method again using the value of `nextPageToken` as `pageToken`.
	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 *ListBucketsResponse) Reset() {
	*x = ListBucketsResponse{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListBucketsResponse) ProtoMessage() {}

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

func (x *ListBucketsResponse) GetBuckets() []*LogBucket {
	if x != nil {
		return x.Buckets
	}
	return nil
}

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

// The parameters to `CreateBucket`.
type CreateBucketRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource in which to create the log bucket:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global"`
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. A client-assigned identifier such as `"my-bucket"`. Identifiers
	// are limited to 100 characters and can include only letters, digits,
	// underscores, hyphens, and periods.
	BucketId string `protobuf:"bytes,2,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	// Required. The new bucket. The region specified in the new bucket must be
	// compliant with any Location Restriction Org Policy. The name field in the
	// bucket is ignored.
	Bucket        *LogBucket `protobuf:"bytes,3,opt,name=bucket,proto3" json:"bucket,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateBucketRequest) ProtoMessage() {}

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

func (x *CreateBucketRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *CreateBucketRequest) GetBucketId() string {
	if x != nil {
		return x.BucketId
	}
	return ""
}

func (x *CreateBucketRequest) GetBucket() *LogBucket {
	if x != nil {
		return x.Bucket
	}
	return nil
}

// The parameters to `UpdateBucket`.
type UpdateBucketRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the bucket to update.
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket"`
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The updated bucket.
	Bucket *LogBucket `protobuf:"bytes,2,opt,name=bucket,proto3" json:"bucket,omitempty"`
	// Required. Field mask that specifies the fields in `bucket` that need an
	// update. A bucket field will be overwritten if, and only if, it is in the
	// update mask. `name` and output only fields cannot be updated.
	//
	// For a detailed `FieldMask` definition, see:
	// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMask
	//
	// For example: `updateMask=retention_days`
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateBucketRequest) ProtoMessage() {}

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

func (x *UpdateBucketRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateBucketRequest) GetBucket() *LogBucket {
	if x != nil {
		return x.Bucket
	}
	return nil
}

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

// The parameters to `GetBucket`.
type GetBucketRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name of the bucket:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket"`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBucketRequest) ProtoMessage() {}

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

func (x *GetBucketRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to `DeleteBucket`.
type DeleteBucketRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the bucket to delete.
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket"`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteBucketRequest) ProtoMessage() {}

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

func (x *DeleteBucketRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to `UndeleteBucket`.
type UndeleteBucketRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the bucket to undelete.
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket"`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UndeleteBucketRequest) ProtoMessage() {}

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

func (x *UndeleteBucketRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to `ListViews`.
type ListViewsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The bucket whose views are to be listed:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. If present, then retrieve the next batch of results from the
	// preceding call to this method. `pageToken` must be the value of
	// `nextPageToken` from the previous response. The values of other method
	// parameters should be identical to those in the previous call.
	PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// Optional. The maximum number of results to return from this request.
	//
	// Non-positive values are ignored. The presence of `nextPageToken` in the
	// response indicates that more results might be available.
	PageSize      int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListViewsRequest) ProtoMessage() {}

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

func (x *ListViewsRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

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

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

// The response from ListViews.
type ListViewsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A list of views.
	Views []*LogView `protobuf:"bytes,1,rep,name=views,proto3" json:"views,omitempty"`
	// If there might be more results than appear in this response, then
	// `nextPageToken` is included. To get the next set of results, call the same
	// method again using the value of `nextPageToken` as `pageToken`.
	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 *ListViewsResponse) Reset() {
	*x = ListViewsResponse{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[15]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListViewsResponse) ProtoMessage() {}

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

func (x *ListViewsResponse) GetViews() []*LogView {
	if x != nil {
		return x.Views
	}
	return nil
}

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

// The parameters to `CreateView`.
type CreateViewRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The bucket in which to create the view
	//
	//	`"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"`
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket"`
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. A client-assigned identifier such as `"my-view"`. Identifiers are
	// limited to 100 characters and can include only letters, digits,
	// underscores, hyphens, and periods.
	ViewId string `protobuf:"bytes,2,opt,name=view_id,json=viewId,proto3" json:"view_id,omitempty"`
	// Required. The new view.
	View          *LogView `protobuf:"bytes,3,opt,name=view,proto3" json:"view,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateViewRequest) ProtoMessage() {}

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

func (x *CreateViewRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *CreateViewRequest) GetViewId() string {
	if x != nil {
		return x.ViewId
	}
	return ""
}

func (x *CreateViewRequest) GetView() *LogView {
	if x != nil {
		return x.View
	}
	return nil
}

// The parameters to `UpdateView`.
type UpdateViewRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the view to update
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket/views/my-view"`
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The updated view.
	View *LogView `protobuf:"bytes,2,opt,name=view,proto3" json:"view,omitempty"`
	// Optional. Field mask that specifies the fields in `view` that need
	// an update. A field will be overwritten if, and only if, it is
	// in the update mask. `name` and output only fields cannot be updated.
	//
	// For a detailed `FieldMask` definition, see
	// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMask
	//
	// For example: `updateMask=filter`
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateViewRequest) ProtoMessage() {}

func (x *UpdateViewRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[17]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateViewRequest.ProtoReflect.Descriptor instead.
func (*UpdateViewRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{17}
}

func (x *UpdateViewRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateViewRequest) GetView() *LogView {
	if x != nil {
		return x.View
	}
	return nil
}

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

// The parameters to `GetView`.
type GetViewRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name of the policy:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket/views/my-view"`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetViewRequest) ProtoMessage() {}

func (x *GetViewRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[18]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetViewRequest.ProtoReflect.Descriptor instead.
func (*GetViewRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{18}
}

func (x *GetViewRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to `DeleteView`.
type DeleteViewRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the view to delete:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/views/[VIEW_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-bucket/views/my-view"`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteViewRequest) ProtoMessage() {}

func (x *DeleteViewRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[19]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteViewRequest.ProtoReflect.Descriptor instead.
func (*DeleteViewRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{19}
}

func (x *DeleteViewRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to `ListSinks`.
type ListSinksRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The parent resource whose sinks are to be listed:
	//
	//	"projects/[PROJECT_ID]"
	//	"organizations/[ORGANIZATION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]"
	//	"folders/[FOLDER_ID]"
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. If present, then retrieve the next batch of results from the
	// preceding call to this method. `pageToken` must be the value of
	// `nextPageToken` from the previous response. The values of other method
	// parameters should be identical to those in the previous call.
	PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// Optional. The maximum number of results to return from this request.
	// Non-positive values are ignored. The presence of `nextPageToken` in the
	// response indicates that more results might be available.
	PageSize      int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListSinksRequest) ProtoMessage() {}

func (x *ListSinksRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[20]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListSinksRequest.ProtoReflect.Descriptor instead.
func (*ListSinksRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{20}
}

func (x *ListSinksRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

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

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

// Result returned from `ListSinks`.
type ListSinksResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A list of sinks.
	Sinks []*LogSink `protobuf:"bytes,1,rep,name=sinks,proto3" json:"sinks,omitempty"`
	// If there might be more results than appear in this response, then
	// `nextPageToken` is included. To get the next set of results, call the same
	// method again using the value of `nextPageToken` as `pageToken`.
	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 *ListSinksResponse) Reset() {
	*x = ListSinksResponse{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[21]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListSinksResponse) ProtoMessage() {}

func (x *ListSinksResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[21]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListSinksResponse.ProtoReflect.Descriptor instead.
func (*ListSinksResponse) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{21}
}

func (x *ListSinksResponse) GetSinks() []*LogSink {
	if x != nil {
		return x.Sinks
	}
	return nil
}

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

// The parameters to `GetSink`.
type GetSinkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name of the sink:
	//
	//	"projects/[PROJECT_ID]/sinks/[SINK_ID]"
	//	"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]"
	//	"folders/[FOLDER_ID]/sinks/[SINK_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/sinks/my-sink"`
	SinkName      string `protobuf:"bytes,1,opt,name=sink_name,json=sinkName,proto3" json:"sink_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetSinkRequest) ProtoMessage() {}

func (x *GetSinkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[22]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSinkRequest.ProtoReflect.Descriptor instead.
func (*GetSinkRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{22}
}

func (x *GetSinkRequest) GetSinkName() string {
	if x != nil {
		return x.SinkName
	}
	return ""
}

// The parameters to `CreateSink`.
type CreateSinkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource in which to create the sink:
	//
	//	"projects/[PROJECT_ID]"
	//	"organizations/[ORGANIZATION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]"
	//	"folders/[FOLDER_ID]"
	//
	// For examples:
	//
	//	`"projects/my-project"`
	//	`"organizations/123456789"`
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The new sink, whose `name` parameter is a sink identifier that
	// is not already in use.
	Sink *LogSink `protobuf:"bytes,2,opt,name=sink,proto3" json:"sink,omitempty"`
	// Optional. Determines the kind of IAM identity returned as `writer_identity`
	// in the new sink. If this value is omitted or set to false, and if the
	// sink's parent is a project, then the value returned as `writer_identity` is
	// the same group or service account used by Cloud Logging before the addition
	// of writer identities to this API. The sink's destination must be in the
	// same project as the sink itself.
	//
	// If this field is set to true, or if the sink is owned by a non-project
	// resource such as an organization, then the value of `writer_identity` will
	// be a unique service account used only for exports from the new sink. For
	// more information, see `writer_identity` in
	// [LogSink][google.logging.v2.LogSink].
	UniqueWriterIdentity bool `protobuf:"varint,3,opt,name=unique_writer_identity,json=uniqueWriterIdentity,proto3" json:"unique_writer_identity,omitempty"`
	unknownFields        protoimpl.UnknownFields
	sizeCache            protoimpl.SizeCache
}

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

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

func (*CreateSinkRequest) ProtoMessage() {}

func (x *CreateSinkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[23]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateSinkRequest.ProtoReflect.Descriptor instead.
func (*CreateSinkRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{23}
}

func (x *CreateSinkRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *CreateSinkRequest) GetSink() *LogSink {
	if x != nil {
		return x.Sink
	}
	return nil
}

func (x *CreateSinkRequest) GetUniqueWriterIdentity() bool {
	if x != nil {
		return x.UniqueWriterIdentity
	}
	return false
}

// The parameters to `UpdateSink`.
type UpdateSinkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the sink to update, including the
	// parent resource and the sink identifier:
	//
	//	"projects/[PROJECT_ID]/sinks/[SINK_ID]"
	//	"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]"
	//	"folders/[FOLDER_ID]/sinks/[SINK_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/sinks/my-sink"`
	SinkName string `protobuf:"bytes,1,opt,name=sink_name,json=sinkName,proto3" json:"sink_name,omitempty"`
	// Required. The updated sink, whose name is the same identifier that appears
	// as part of `sink_name`.
	Sink *LogSink `protobuf:"bytes,2,opt,name=sink,proto3" json:"sink,omitempty"`
	// Optional. See [sinks.create][google.logging.v2.ConfigServiceV2.CreateSink]
	// for a description of this field. When updating a sink, the effect of this
	// field on the value of `writer_identity` in the updated sink depends on both
	// the old and new values of this field:
	//
	//   - If the old and new values of this field are both false or both true,
	//     then there is no change to the sink's `writer_identity`.
	//   - If the old value is false and the new value is true, then
	//     `writer_identity` is changed to a unique service account.
	//   - It is an error if the old value is true and the new value is
	//     set to false or defaulted to false.
	UniqueWriterIdentity bool `protobuf:"varint,3,opt,name=unique_writer_identity,json=uniqueWriterIdentity,proto3" json:"unique_writer_identity,omitempty"`
	// Optional. Field mask that specifies the fields in `sink` that need
	// an update. A sink field will be overwritten if, and only if, it is
	// in the update mask. `name` and output only fields cannot be updated.
	//
	// An empty `updateMask` is temporarily treated as using the following mask
	// for backwards compatibility purposes:
	//
	//	`destination,filter,includeChildren`
	//
	// At some point in the future, behavior will be removed and specifying an
	// empty `updateMask` will be an error.
	//
	// For a detailed `FieldMask` definition, see
	// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMask
	//
	// For example: `updateMask=filter`
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateSinkRequest) ProtoMessage() {}

func (x *UpdateSinkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[24]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateSinkRequest.ProtoReflect.Descriptor instead.
func (*UpdateSinkRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{24}
}

func (x *UpdateSinkRequest) GetSinkName() string {
	if x != nil {
		return x.SinkName
	}
	return ""
}

func (x *UpdateSinkRequest) GetSink() *LogSink {
	if x != nil {
		return x.Sink
	}
	return nil
}

func (x *UpdateSinkRequest) GetUniqueWriterIdentity() bool {
	if x != nil {
		return x.UniqueWriterIdentity
	}
	return false
}

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

// The parameters to `DeleteSink`.
type DeleteSinkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the sink to delete, including the
	// parent resource and the sink identifier:
	//
	//	"projects/[PROJECT_ID]/sinks/[SINK_ID]"
	//	"organizations/[ORGANIZATION_ID]/sinks/[SINK_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_ID]"
	//	"folders/[FOLDER_ID]/sinks/[SINK_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/sinks/my-sink"`
	SinkName      string `protobuf:"bytes,1,opt,name=sink_name,json=sinkName,proto3" json:"sink_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteSinkRequest) ProtoMessage() {}

func (x *DeleteSinkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[25]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteSinkRequest.ProtoReflect.Descriptor instead.
func (*DeleteSinkRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{25}
}

func (x *DeleteSinkRequest) GetSinkName() string {
	if x != nil {
		return x.SinkName
	}
	return ""
}

// The parameters to CreateLink.
type CreateLinkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the bucket to create a link for.
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]"
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The new link.
	Link *Link `protobuf:"bytes,2,opt,name=link,proto3" json:"link,omitempty"`
	// Required. The ID to use for the link. The link_id can have up to 100
	// characters. A valid link_id must only have alphanumeric characters and
	// underscores within it.
	LinkId        string `protobuf:"bytes,3,opt,name=link_id,json=linkId,proto3" json:"link_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateLinkRequest) ProtoMessage() {}

func (x *CreateLinkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[26]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateLinkRequest.ProtoReflect.Descriptor instead.
func (*CreateLinkRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{26}
}

func (x *CreateLinkRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *CreateLinkRequest) GetLink() *Link {
	if x != nil {
		return x.Link
	}
	return nil
}

func (x *CreateLinkRequest) GetLinkId() string {
	if x != nil {
		return x.LinkId
	}
	return ""
}

// The parameters to DeleteLink.
type DeleteLinkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the link to delete.
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	 "organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	 "billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	 "folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteLinkRequest) ProtoMessage() {}

func (x *DeleteLinkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[27]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteLinkRequest.ProtoReflect.Descriptor instead.
func (*DeleteLinkRequest) Descriptor() ([]byte, []int) {
	return file_google_logging_v2_logging_config_proto_rawDescGZIP(), []int{27}
}

func (x *DeleteLinkRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to ListLinks.
type ListLinksRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The parent resource whose links are to be listed:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. If present, then retrieve the next batch of results from the
	// preceding call to this method. `pageToken` must be the value of
	// `nextPageToken` from the previous response.
	PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// Optional. The maximum number of results to return from this request.
	PageSize      int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListLinksRequest) Reset() {
	*x = ListLinksRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[28]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListLinksRequest) ProtoMessage() {}

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

func (x *ListLinksRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

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

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

// The response from ListLinks.
type ListLinksResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A list of links.
	Links []*Link `protobuf:"bytes,1,rep,name=links,proto3" json:"links,omitempty"`
	// If there might be more results than those appearing in this response, then
	// `nextPageToken` is included. To get the next set of results, call the same
	// method again using the value of `nextPageToken` as `pageToken`.
	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 *ListLinksResponse) Reset() {
	*x = ListLinksResponse{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[29]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListLinksResponse) ProtoMessage() {}

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

func (x *ListLinksResponse) GetLinks() []*Link {
	if x != nil {
		return x.Links
	}
	return nil
}

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

// The parameters to GetLink.
type GetLinkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name of the link:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	"organizations/[ORGANIZATION_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]"
	//	"folders/[FOLDER_ID]/locations/[LOCATION_ID]/buckets/[BUCKET_ID]/links/[LINK_ID]
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetLinkRequest) Reset() {
	*x = GetLinkRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[30]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetLinkRequest) ProtoMessage() {}

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

func (x *GetLinkRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// Specifies a set of log entries that are filtered out by a sink. If
// your Google Cloud resource receives a large volume of log entries, you can
// use exclusions to reduce your chargeable logs. Note that exclusions on
// organization-level and folder-level sinks don't apply to child resources.
// Note also that you cannot modify the _Required sink or exclude logs from it.
type LogExclusion struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. A client-assigned identifier, such as
	// `"load-balancer-exclusion"`. Identifiers are limited to 100 characters and
	// can include only letters, digits, underscores, hyphens, and periods. First
	// character has to be alphanumeric.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Optional. A description of this exclusion.
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	// Required. An [advanced logs
	// filter](https://cloud.google.com/logging/docs/view/advanced-queries) that
	// matches the log entries to be excluded. By using the [sample
	// function](https://cloud.google.com/logging/docs/view/advanced-queries#sample),
	// you can exclude less than 100% of the matching log entries.
	//
	// For example, the following query matches 99% of low-severity log entries
	// from Google Cloud Storage buckets:
	//
	//	`resource.type=gcs_bucket severity<ERROR sample(insertId, 0.99)`
	Filter string `protobuf:"bytes,3,opt,name=filter,proto3" json:"filter,omitempty"`
	// Optional. If set to True, then this exclusion is disabled and it does not
	// exclude any log entries. You can [update an
	// exclusion][google.logging.v2.ConfigServiceV2.UpdateExclusion] to change the
	// value of this field.
	Disabled bool `protobuf:"varint,4,opt,name=disabled,proto3" json:"disabled,omitempty"`
	// Output only. The creation timestamp of the exclusion.
	//
	// This field may not be present for older exclusions.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Output only. The last update timestamp of the exclusion.
	//
	// This field may not be present for older exclusions.
	UpdateTime    *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *LogExclusion) Reset() {
	*x = LogExclusion{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[31]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*LogExclusion) ProtoMessage() {}

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

func (x *LogExclusion) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *LogExclusion) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

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

func (x *LogExclusion) GetDisabled() bool {
	if x != nil {
		return x.Disabled
	}
	return false
}

func (x *LogExclusion) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *LogExclusion) GetUpdateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdateTime
	}
	return nil
}

// The parameters to `ListExclusions`.
type ListExclusionsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The parent resource whose exclusions are to be listed.
	//
	//	"projects/[PROJECT_ID]"
	//	"organizations/[ORGANIZATION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]"
	//	"folders/[FOLDER_ID]"
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. If present, then retrieve the next batch of results from the
	// preceding call to this method. `pageToken` must be the value of
	// `nextPageToken` from the previous response. The values of other method
	// parameters should be identical to those in the previous call.
	PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// Optional. The maximum number of results to return from this request.
	// Non-positive values are ignored. The presence of `nextPageToken` in the
	// response indicates that more results might be available.
	PageSize      int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListExclusionsRequest) Reset() {
	*x = ListExclusionsRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[32]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListExclusionsRequest) ProtoMessage() {}

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

func (x *ListExclusionsRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

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

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

// Result returned from `ListExclusions`.
type ListExclusionsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A list of exclusions.
	Exclusions []*LogExclusion `protobuf:"bytes,1,rep,name=exclusions,proto3" json:"exclusions,omitempty"`
	// If there might be more results than appear in this response, then
	// `nextPageToken` is included. To get the next set of results, call the same
	// method again using the value of `nextPageToken` as `pageToken`.
	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 *ListExclusionsResponse) Reset() {
	*x = ListExclusionsResponse{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[33]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListExclusionsResponse) ProtoMessage() {}

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

func (x *ListExclusionsResponse) GetExclusions() []*LogExclusion {
	if x != nil {
		return x.Exclusions
	}
	return nil
}

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

// The parameters to `GetExclusion`.
type GetExclusionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name of an existing exclusion:
	//
	//	"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]"
	//	"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]"
	//	"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/exclusions/my-exclusion"`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetExclusionRequest) Reset() {
	*x = GetExclusionRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[34]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetExclusionRequest) ProtoMessage() {}

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

func (x *GetExclusionRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to `CreateExclusion`.
type CreateExclusionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The parent resource in which to create the exclusion:
	//
	//	"projects/[PROJECT_ID]"
	//	"organizations/[ORGANIZATION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]"
	//	"folders/[FOLDER_ID]"
	//
	// For examples:
	//
	//	`"projects/my-logging-project"`
	//	`"organizations/123456789"`
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The new exclusion, whose `name` parameter is an exclusion name
	// that is not already used in the parent resource.
	Exclusion     *LogExclusion `protobuf:"bytes,2,opt,name=exclusion,proto3" json:"exclusion,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreateExclusionRequest) Reset() {
	*x = CreateExclusionRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[35]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreateExclusionRequest) ProtoMessage() {}

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

func (x *CreateExclusionRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *CreateExclusionRequest) GetExclusion() *LogExclusion {
	if x != nil {
		return x.Exclusion
	}
	return nil
}

// The parameters to `UpdateExclusion`.
type UpdateExclusionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name of the exclusion to update:
	//
	//	"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]"
	//	"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]"
	//	"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/exclusions/my-exclusion"`
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. New values for the existing exclusion. Only the fields specified
	// in `update_mask` are relevant.
	Exclusion *LogExclusion `protobuf:"bytes,2,opt,name=exclusion,proto3" json:"exclusion,omitempty"`
	// Required. A non-empty list of fields to change in the existing exclusion.
	// New values for the fields are taken from the corresponding fields in the
	// [LogExclusion][google.logging.v2.LogExclusion] included in this request.
	// Fields not mentioned in `update_mask` are not changed and are ignored in
	// the request.
	//
	// For example, to change the filter and description of an exclusion,
	// specify an `update_mask` of `"filter,description"`.
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateExclusionRequest) Reset() {
	*x = UpdateExclusionRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[36]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateExclusionRequest) ProtoMessage() {}

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

func (x *UpdateExclusionRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateExclusionRequest) GetExclusion() *LogExclusion {
	if x != nil {
		return x.Exclusion
	}
	return nil
}

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

// The parameters to `DeleteExclusion`.
type DeleteExclusionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name of an existing exclusion to delete:
	//
	//	"projects/[PROJECT_ID]/exclusions/[EXCLUSION_ID]"
	//	"organizations/[ORGANIZATION_ID]/exclusions/[EXCLUSION_ID]"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/exclusions/[EXCLUSION_ID]"
	//	"folders/[FOLDER_ID]/exclusions/[EXCLUSION_ID]"
	//
	// For example:
	//
	//	`"projects/my-project/exclusions/my-exclusion"`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteExclusionRequest) Reset() {
	*x = DeleteExclusionRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[37]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*DeleteExclusionRequest) ProtoMessage() {}

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

func (x *DeleteExclusionRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to
// [GetCmekSettings][google.logging.v2.ConfigServiceV2.GetCmekSettings].
//
// See [Enabling CMEK for Log
// Router](https://cloud.google.com/logging/docs/routing/managed-encryption) for
// more information.
type GetCmekSettingsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource for which to retrieve CMEK settings.
	//
	//	"projects/[PROJECT_ID]/cmekSettings"
	//	"organizations/[ORGANIZATION_ID]/cmekSettings"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/cmekSettings"
	//	"folders/[FOLDER_ID]/cmekSettings"
	//
	// For example:
	//
	//	`"organizations/12345/cmekSettings"`
	//
	// Note: CMEK for the Log Router can be configured for Google Cloud projects,
	// folders, organizations and billing accounts. Once configured for an
	// organization, it applies to all projects and folders in the Google Cloud
	// organization.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetCmekSettingsRequest) Reset() {
	*x = GetCmekSettingsRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[38]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetCmekSettingsRequest) ProtoMessage() {}

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

func (x *GetCmekSettingsRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to
// [UpdateCmekSettings][google.logging.v2.ConfigServiceV2.UpdateCmekSettings].
//
// See [Enabling CMEK for Log
// Router](https://cloud.google.com/logging/docs/routing/managed-encryption) for
// more information.
type UpdateCmekSettingsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name for the CMEK settings to update.
	//
	//	"projects/[PROJECT_ID]/cmekSettings"
	//	"organizations/[ORGANIZATION_ID]/cmekSettings"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/cmekSettings"
	//	"folders/[FOLDER_ID]/cmekSettings"
	//
	// For example:
	//
	//	`"organizations/12345/cmekSettings"`
	//
	// Note: CMEK for the Log Router can currently only be configured for Google
	// Cloud organizations. Once configured, it applies to all projects and
	// folders in the Google Cloud organization.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The CMEK settings to update.
	//
	// See [Enabling CMEK for Log
	// Router](https://cloud.google.com/logging/docs/routing/managed-encryption)
	// for more information.
	CmekSettings *CmekSettings `protobuf:"bytes,2,opt,name=cmek_settings,json=cmekSettings,proto3" json:"cmek_settings,omitempty"`
	// Optional. Field mask identifying which fields from `cmek_settings` should
	// be updated. A field will be overwritten if and only if it is in the update
	// mask. Output only fields cannot be updated.
	//
	// See [FieldMask][google.protobuf.FieldMask] for more information.
	//
	// For example: `"updateMask=kmsKeyName"`
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateCmekSettingsRequest) Reset() {
	*x = UpdateCmekSettingsRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[39]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateCmekSettingsRequest) ProtoMessage() {}

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

func (x *UpdateCmekSettingsRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateCmekSettingsRequest) GetCmekSettings() *CmekSettings {
	if x != nil {
		return x.CmekSettings
	}
	return nil
}

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

// Describes the customer-managed encryption key (CMEK) settings associated with
// a project, folder, organization, billing account, or flexible resource.
//
// Note: CMEK for the Log Router can currently only be configured for Google
// Cloud organizations. Once configured, it applies to all projects and folders
// in the Google Cloud organization.
//
// See [Enabling CMEK for Log
// Router](https://cloud.google.com/logging/docs/routing/managed-encryption) for
// more information.
type CmekSettings struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Output only. The resource name of the CMEK settings.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The resource name for the configured Cloud KMS key.
	//
	// KMS key name format:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key"`
	//
	// To enable CMEK for the Log Router, set this field to a valid
	// `kms_key_name` for which the associated service account has the required
	// cloudkms.cryptoKeyEncrypterDecrypter roles assigned for the key.
	//
	// The Cloud KMS key used by the Log Router can be updated by changing the
	// `kms_key_name` to a new valid key name or disabled by setting the key name
	// to an empty string. Encryption operations that are in progress will be
	// completed with the key that was in use when they started. Decryption
	// operations will be completed using the key that was used at the time of
	// encryption unless access to that key has been revoked.
	//
	// To disable CMEK for the Log Router, set this field to an empty string.
	//
	// See [Enabling CMEK for Log
	// Router](https://cloud.google.com/logging/docs/routing/managed-encryption)
	// for more information.
	KmsKeyName string `protobuf:"bytes,2,opt,name=kms_key_name,json=kmsKeyName,proto3" json:"kms_key_name,omitempty"`
	// The CryptoKeyVersion resource name for the configured Cloud KMS key.
	//
	// KMS key name format:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]/cryptoKeyVersions/[VERSION]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key/cryptoKeyVersions/1"`
	//
	// This is a read-only field used to convey the specific configured
	// CryptoKeyVersion of `kms_key` that has been configured. It will be
	// populated in cases where the CMEK settings are bound to a single key
	// version.
	//
	// If this field is populated, the `kms_key` is tied to a specific
	// CryptoKeyVersion.
	KmsKeyVersionName string `protobuf:"bytes,4,opt,name=kms_key_version_name,json=kmsKeyVersionName,proto3" json:"kms_key_version_name,omitempty"`
	// Output only. The service account that will be used by the Log Router to
	// access your Cloud KMS key.
	//
	// Before enabling CMEK for Log Router, you must first assign the
	// cloudkms.cryptoKeyEncrypterDecrypter role to the service account that
	// the Log Router will use to access your Cloud KMS key. Use
	// [GetCmekSettings][google.logging.v2.ConfigServiceV2.GetCmekSettings] to
	// obtain the service account ID.
	//
	// See [Enabling CMEK for Log
	// Router](https://cloud.google.com/logging/docs/routing/managed-encryption)
	// for more information.
	ServiceAccountId string `protobuf:"bytes,3,opt,name=service_account_id,json=serviceAccountId,proto3" json:"service_account_id,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

func (x *CmekSettings) Reset() {
	*x = CmekSettings{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[40]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CmekSettings) ProtoMessage() {}

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

func (x *CmekSettings) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *CmekSettings) GetKmsKeyName() string {
	if x != nil {
		return x.KmsKeyName
	}
	return ""
}

func (x *CmekSettings) GetKmsKeyVersionName() string {
	if x != nil {
		return x.KmsKeyVersionName
	}
	return ""
}

func (x *CmekSettings) GetServiceAccountId() string {
	if x != nil {
		return x.ServiceAccountId
	}
	return ""
}

// The parameters to
// [GetSettings][google.logging.v2.ConfigServiceV2.GetSettings].
//
// See [Enabling CMEK for Log
// Router](https://cloud.google.com/logging/docs/routing/managed-encryption) for
// more information.
type GetSettingsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource for which to retrieve settings.
	//
	//	"projects/[PROJECT_ID]/settings"
	//	"organizations/[ORGANIZATION_ID]/settings"
	//	"billingAccounts/[BILLING_ACCOUNT_ID]/settings"
	//	"folders/[FOLDER_ID]/settings"
	//
	// For example:
	//
	//	`"organizations/12345/settings"`
	//
	// Note: Settings for the Log Router can be get for Google Cloud projects,
	// folders, organizations and billing accounts. Currently it can only be
	// configured for organizations. Once configured for an organization, it
	// applies to all projects and folders in the Google Cloud organization.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetSettingsRequest) Reset() {
	*x = GetSettingsRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[41]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetSettingsRequest) ProtoMessage() {}

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

func (x *GetSettingsRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The parameters to
// [UpdateSettings][google.logging.v2.ConfigServiceV2.UpdateSettings].
//
// See [Enabling CMEK for Log
// Router](https://cloud.google.com/logging/docs/routing/managed-encryption) for
// more information.
type UpdateSettingsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The resource name for the settings to update.
	//
	//	"organizations/[ORGANIZATION_ID]/settings"
	//
	// For example:
	//
	//	`"organizations/12345/settings"`
	//
	// Note: Settings for the Log Router can currently only be configured for
	// Google Cloud organizations. Once configured, it applies to all projects and
	// folders in the Google Cloud organization.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The settings to update.
	//
	// See [Enabling CMEK for Log
	// Router](https://cloud.google.com/logging/docs/routing/managed-encryption)
	// for more information.
	Settings *Settings `protobuf:"bytes,2,opt,name=settings,proto3" json:"settings,omitempty"`
	// Optional. Field mask identifying which fields from `settings` should
	// be updated. A field will be overwritten if and only if it is in the update
	// mask. Output only fields cannot be updated.
	//
	// See [FieldMask][google.protobuf.FieldMask] for more information.
	//
	// For example: `"updateMask=kmsKeyName"`
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateSettingsRequest) Reset() {
	*x = UpdateSettingsRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[42]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateSettingsRequest) ProtoMessage() {}

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

func (x *UpdateSettingsRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *UpdateSettingsRequest) GetSettings() *Settings {
	if x != nil {
		return x.Settings
	}
	return nil
}

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

// Describes the settings associated with a project, folder, organization,
// billing account, or flexible resource.
type Settings struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Output only. The resource name of the settings.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Optional. The resource name for the configured Cloud KMS key.
	//
	// KMS key name format:
	//
	//	"projects/[PROJECT_ID]/locations/[LOCATION]/keyRings/[KEYRING]/cryptoKeys/[KEY]"
	//
	// For example:
	//
	//	`"projects/my-project/locations/us-central1/keyRings/my-ring/cryptoKeys/my-key"`
	//
	// To enable CMEK for the Log Router, set this field to a valid
	// `kms_key_name` for which the associated service account has the required
	// `roles/cloudkms.cryptoKeyEncrypterDecrypter` role assigned for the key.
	//
	// The Cloud KMS key used by the Log Router can be updated by changing the
	// `kms_key_name` to a new valid key name. Encryption operations that are in
	// progress will be completed with the key that was in use when they started.
	// Decryption operations will be completed using the key that was used at the
	// time of encryption unless access to that key has been revoked.
	//
	// To disable CMEK for the Log Router, set this field to an empty string.
	//
	// See [Enabling CMEK for Log
	// Router](https://cloud.google.com/logging/docs/routing/managed-encryption)
	// for more information.
	KmsKeyName string `protobuf:"bytes,2,opt,name=kms_key_name,json=kmsKeyName,proto3" json:"kms_key_name,omitempty"`
	// Output only. The service account that will be used by the Log Router to
	// access your Cloud KMS key.
	//
	// Before enabling CMEK for Log Router, you must first assign the role
	// `roles/cloudkms.cryptoKeyEncrypterDecrypter` to the service account that
	// the Log Router will use to access your Cloud KMS key. Use
	// [GetSettings][google.logging.v2.ConfigServiceV2.GetSettings] to
	// obtain the service account ID.
	//
	// See [Enabling CMEK for Log
	// Router](https://cloud.google.com/logging/docs/routing/managed-encryption)
	// for more information.
	KmsServiceAccountId string `protobuf:"bytes,3,opt,name=kms_service_account_id,json=kmsServiceAccountId,proto3" json:"kms_service_account_id,omitempty"`
	// Optional. The Cloud region that will be used for _Default and _Required log
	// buckets for newly created projects and folders. For example `europe-west1`.
	// This setting does not affect the location of custom log buckets.
	StorageLocation string `protobuf:"bytes,4,opt,name=storage_location,json=storageLocation,proto3" json:"storage_location,omitempty"`
	// Optional. If set to true, the _Default sink in newly created projects and
	// folders will created in a disabled state. This can be used to automatically
	// disable log ingestion if there is already an aggregated sink configured in
	// the hierarchy. The _Default sink can be re-enabled manually if needed.
	DisableDefaultSink bool `protobuf:"varint,5,opt,name=disable_default_sink,json=disableDefaultSink,proto3" json:"disable_default_sink,omitempty"`
	unknownFields      protoimpl.UnknownFields
	sizeCache          protoimpl.SizeCache
}

func (x *Settings) Reset() {
	*x = Settings{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[43]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Settings) ProtoMessage() {}

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

func (x *Settings) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *Settings) GetKmsKeyName() string {
	if x != nil {
		return x.KmsKeyName
	}
	return ""
}

func (x *Settings) GetKmsServiceAccountId() string {
	if x != nil {
		return x.KmsServiceAccountId
	}
	return ""
}

func (x *Settings) GetStorageLocation() string {
	if x != nil {
		return x.StorageLocation
	}
	return ""
}

func (x *Settings) GetDisableDefaultSink() bool {
	if x != nil {
		return x.DisableDefaultSink
	}
	return false
}

// The parameters to CopyLogEntries.
type CopyLogEntriesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Log bucket from which to copy log entries.
	//
	// For example:
	//
	//	`"projects/my-project/locations/global/buckets/my-source-bucket"`
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Optional. A filter specifying which log entries to copy. The filter must be
	// no more than 20k characters. An empty filter matches all log entries.
	Filter string `protobuf:"bytes,3,opt,name=filter,proto3" json:"filter,omitempty"`
	// Required. Destination to which to copy log entries.
	Destination   string `protobuf:"bytes,4,opt,name=destination,proto3" json:"destination,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CopyLogEntriesRequest) Reset() {
	*x = CopyLogEntriesRequest{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[44]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CopyLogEntriesRequest) ProtoMessage() {}

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

func (x *CopyLogEntriesRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

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

func (x *CopyLogEntriesRequest) GetDestination() string {
	if x != nil {
		return x.Destination
	}
	return ""
}

// Metadata for CopyLogEntries long running operations.
type CopyLogEntriesMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The create time of an operation.
	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// The end time of an operation.
	EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// State of an operation.
	State OperationState `protobuf:"varint,3,opt,name=state,proto3,enum=google.logging.v2.OperationState" json:"state,omitempty"`
	// Identifies whether the user has requested cancellation of the operation.
	CancellationRequested bool `protobuf:"varint,4,opt,name=cancellation_requested,json=cancellationRequested,proto3" json:"cancellation_requested,omitempty"`
	// CopyLogEntries RPC request.
	Request *CopyLogEntriesRequest `protobuf:"bytes,5,opt,name=request,proto3" json:"request,omitempty"`
	// Estimated progress of the operation (0 - 100%).
	Progress int32 `protobuf:"varint,6,opt,name=progress,proto3" json:"progress,omitempty"`
	// The IAM identity of a service account that must be granted access to the
	// destination.
	//
	// If the service account is not granted permission to the destination within
	// an hour, the operation will be cancelled.
	//
	// For example: `"serviceAccount:foo@bar.com"`
	WriterIdentity string `protobuf:"bytes,7,opt,name=writer_identity,json=writerIdentity,proto3" json:"writer_identity,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *CopyLogEntriesMetadata) Reset() {
	*x = CopyLogEntriesMetadata{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[45]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CopyLogEntriesMetadata) ProtoMessage() {}

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

func (x *CopyLogEntriesMetadata) GetStartTime() *timestamppb.Timestamp {
	if x != nil {
		return x.StartTime
	}
	return nil
}

func (x *CopyLogEntriesMetadata) GetEndTime() *timestamppb.Timestamp {
	if x != nil {
		return x.EndTime
	}
	return nil
}

func (x *CopyLogEntriesMetadata) GetState() OperationState {
	if x != nil {
		return x.State
	}
	return OperationState_OPERATION_STATE_UNSPECIFIED
}

func (x *CopyLogEntriesMetadata) GetCancellationRequested() bool {
	if x != nil {
		return x.CancellationRequested
	}
	return false
}

func (x *CopyLogEntriesMetadata) GetRequest() *CopyLogEntriesRequest {
	if x != nil {
		return x.Request
	}
	return nil
}

func (x *CopyLogEntriesMetadata) GetProgress() int32 {
	if x != nil {
		return x.Progress
	}
	return 0
}

func (x *CopyLogEntriesMetadata) GetWriterIdentity() string {
	if x != nil {
		return x.WriterIdentity
	}
	return ""
}

// Response type for CopyLogEntries long running operations.
type CopyLogEntriesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Number of log entries copied.
	LogEntriesCopiedCount int64 `protobuf:"varint,1,opt,name=log_entries_copied_count,json=logEntriesCopiedCount,proto3" json:"log_entries_copied_count,omitempty"`
	unknownFields         protoimpl.UnknownFields
	sizeCache             protoimpl.SizeCache
}

func (x *CopyLogEntriesResponse) Reset() {
	*x = CopyLogEntriesResponse{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[46]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CopyLogEntriesResponse) ProtoMessage() {}

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

func (x *CopyLogEntriesResponse) GetLogEntriesCopiedCount() int64 {
	if x != nil {
		return x.LogEntriesCopiedCount
	}
	return 0
}

// Metadata for LongRunningUpdateBucket Operations.
type BucketMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The create time of an operation.
	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// The end time of an operation.
	EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// State of an operation.
	State OperationState `protobuf:"varint,3,opt,name=state,proto3,enum=google.logging.v2.OperationState" json:"state,omitempty"`
	// Types that are valid to be assigned to Request:
	//
	//	*BucketMetadata_CreateBucketRequest
	//	*BucketMetadata_UpdateBucketRequest
	Request       isBucketMetadata_Request `protobuf_oneof:"request"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *BucketMetadata) Reset() {
	*x = BucketMetadata{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[47]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*BucketMetadata) ProtoMessage() {}

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

func (x *BucketMetadata) GetStartTime() *timestamppb.Timestamp {
	if x != nil {
		return x.StartTime
	}
	return nil
}

func (x *BucketMetadata) GetEndTime() *timestamppb.Timestamp {
	if x != nil {
		return x.EndTime
	}
	return nil
}

func (x *BucketMetadata) GetState() OperationState {
	if x != nil {
		return x.State
	}
	return OperationState_OPERATION_STATE_UNSPECIFIED
}

func (x *BucketMetadata) GetRequest() isBucketMetadata_Request {
	if x != nil {
		return x.Request
	}
	return nil
}

func (x *BucketMetadata) GetCreateBucketRequest() *CreateBucketRequest {
	if x != nil {
		if x, ok := x.Request.(*BucketMetadata_CreateBucketRequest); ok {
			return x.CreateBucketRequest
		}
	}
	return nil
}

func (x *BucketMetadata) GetUpdateBucketRequest() *UpdateBucketRequest {
	if x != nil {
		if x, ok := x.Request.(*BucketMetadata_UpdateBucketRequest); ok {
			return x.UpdateBucketRequest
		}
	}
	return nil
}

type isBucketMetadata_Request interface {
	isBucketMetadata_Request()
}

type BucketMetadata_CreateBucketRequest struct {
	// LongRunningCreateBucket RPC request.
	CreateBucketRequest *CreateBucketRequest `protobuf:"bytes,4,opt,name=create_bucket_request,json=createBucketRequest,proto3,oneof"`
}

type BucketMetadata_UpdateBucketRequest struct {
	// LongRunningUpdateBucket RPC request.
	UpdateBucketRequest *UpdateBucketRequest `protobuf:"bytes,5,opt,name=update_bucket_request,json=updateBucketRequest,proto3,oneof"`
}

func (*BucketMetadata_CreateBucketRequest) isBucketMetadata_Request() {}

func (*BucketMetadata_UpdateBucketRequest) isBucketMetadata_Request() {}

// Metadata for long running Link operations.
type LinkMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The start time of an operation.
	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// The end time of an operation.
	EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// State of an operation.
	State OperationState `protobuf:"varint,3,opt,name=state,proto3,enum=google.logging.v2.OperationState" json:"state,omitempty"`
	// Types that are valid to be assigned to Request:
	//
	//	*LinkMetadata_CreateLinkRequest
	//	*LinkMetadata_DeleteLinkRequest
	Request       isLinkMetadata_Request `protobuf_oneof:"request"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *LinkMetadata) Reset() {
	*x = LinkMetadata{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[48]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*LinkMetadata) ProtoMessage() {}

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

func (x *LinkMetadata) GetStartTime() *timestamppb.Timestamp {
	if x != nil {
		return x.StartTime
	}
	return nil
}

func (x *LinkMetadata) GetEndTime() *timestamppb.Timestamp {
	if x != nil {
		return x.EndTime
	}
	return nil
}

func (x *LinkMetadata) GetState() OperationState {
	if x != nil {
		return x.State
	}
	return OperationState_OPERATION_STATE_UNSPECIFIED
}

func (x *LinkMetadata) GetRequest() isLinkMetadata_Request {
	if x != nil {
		return x.Request
	}
	return nil
}

func (x *LinkMetadata) GetCreateLinkRequest() *CreateLinkRequest {
	if x != nil {
		if x, ok := x.Request.(*LinkMetadata_CreateLinkRequest); ok {
			return x.CreateLinkRequest
		}
	}
	return nil
}

func (x *LinkMetadata) GetDeleteLinkRequest() *DeleteLinkRequest {
	if x != nil {
		if x, ok := x.Request.(*LinkMetadata_DeleteLinkRequest); ok {
			return x.DeleteLinkRequest
		}
	}
	return nil
}

type isLinkMetadata_Request interface {
	isLinkMetadata_Request()
}

type LinkMetadata_CreateLinkRequest struct {
	// CreateLink RPC request.
	CreateLinkRequest *CreateLinkRequest `protobuf:"bytes,4,opt,name=create_link_request,json=createLinkRequest,proto3,oneof"`
}

type LinkMetadata_DeleteLinkRequest struct {
	// DeleteLink RPC request.
	DeleteLinkRequest *DeleteLinkRequest `protobuf:"bytes,5,opt,name=delete_link_request,json=deleteLinkRequest,proto3,oneof"`
}

func (*LinkMetadata_CreateLinkRequest) isLinkMetadata_Request() {}

func (*LinkMetadata_DeleteLinkRequest) isLinkMetadata_Request() {}

// Cloud Logging specific location metadata.
type LocationMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Indicates whether or not Log Analytics features are supported in the given
	// location.
	LogAnalyticsEnabled bool `protobuf:"varint,1,opt,name=log_analytics_enabled,json=logAnalyticsEnabled,proto3" json:"log_analytics_enabled,omitempty"`
	unknownFields       protoimpl.UnknownFields
	sizeCache           protoimpl.SizeCache
}

func (x *LocationMetadata) Reset() {
	*x = LocationMetadata{}
	mi := &file_google_logging_v2_logging_config_proto_msgTypes[49]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*LocationMetadata) ProtoMessage() {}

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

func (x *LocationMetadata) GetLogAnalyticsEnabled() bool {
	if x != nil {
		return x.LogAnalyticsEnabled
	}
	return false
}

var File_google_logging_v2_logging_config_proto protoreflect.FileDescriptor

const file_google_logging_v2_logging_config_proto_rawDesc = "" +
	"\n" +
	"&google/logging/v2/logging_config.proto\x12\x11google.logging.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xaa\x01\n" +
	"\vIndexConfig\x12\"\n" +
	"\n" +
	"field_path\x18\x01 \x01(\tB\x03\xe0A\x02R\tfieldPath\x125\n" +
	"\x04type\x18\x02 \x01(\x0e2\x1c.google.logging.v2.IndexTypeB\x03\xe0A\x02R\x04type\x12@\n" +
	"\vcreate_time\x18\x03 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\"\xe7\x06\n" +
	"\tLogBucket\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x03R\x04name\x12 \n" +
	"\vdescription\x18\x03 \x01(\tR\vdescription\x12@\n" +
	"\vcreate_time\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12@\n" +
	"\vupdate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"updateTime\x12%\n" +
	"\x0eretention_days\x18\v \x01(\x05R\rretentionDays\x12\x16\n" +
	"\x06locked\x18\t \x01(\bR\x06locked\x12O\n" +
	"\x0flifecycle_state\x18\f \x01(\x0e2!.google.logging.v2.LifecycleStateB\x03\xe0A\x03R\x0elifecycleState\x12+\n" +
	"\x11analytics_enabled\x18\x0e \x01(\bR\x10analyticsEnabled\x12+\n" +
	"\x11restricted_fields\x18\x0f \x03(\tR\x10restrictedFields\x12C\n" +
	"\rindex_configs\x18\x11 \x03(\v2\x1e.google.logging.v2.IndexConfigR\findexConfigs\x12D\n" +
	"\rcmek_settings\x18\x13 \x01(\v2\x1f.google.logging.v2.CmekSettingsR\fcmekSettings:\xa5\x02\xeaA\xa1\x02\n" +
	" logging.googleapis.com/LogBucket\x128projects/{project}/locations/{location}/buckets/{bucket}\x12Borganizations/{organization}/locations/{location}/buckets/{bucket}\x126folders/{folder}/locations/{location}/buckets/{bucket}\x12GbillingAccounts/{billing_account}/locations/{location}/buckets/{bucket}\"\xb5\x04\n" +
	"\aLogView\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12 \n" +
	"\vdescription\x18\x03 \x01(\tR\vdescription\x12@\n" +
	"\vcreate_time\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12@\n" +
	"\vupdate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"updateTime\x12\x16\n" +
	"\x06filter\x18\a \x01(\tR\x06filter:\xd7\x02\xeaA\xd3\x02\n" +
	"\x1elogging.googleapis.com/LogView\x12Eprojects/{project}/locations/{location}/buckets/{bucket}/views/{view}\x12Oorganizations/{organization}/locations/{location}/buckets/{bucket}/views/{view}\x12Cfolders/{folder}/locations/{location}/buckets/{bucket}/views/{view}\x12TbillingAccounts/{billing_account}/locations/{location}/buckets/{bucket}/views/{view}\"\xa2\a\n" +
	"\aLogSink\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x12+\n" +
	"\vdestination\x18\x03 \x01(\tB\t\xe0A\x02\xfaA\x03\n" +
	"\x01*R\vdestination\x12\x1b\n" +
	"\x06filter\x18\x05 \x01(\tB\x03\xe0A\x01R\x06filter\x12%\n" +
	"\vdescription\x18\x12 \x01(\tB\x03\xe0A\x01R\vdescription\x12\x1f\n" +
	"\bdisabled\x18\x13 \x01(\bB\x03\xe0A\x01R\bdisabled\x12D\n" +
	"\n" +
	"exclusions\x18\x10 \x03(\v2\x1f.google.logging.v2.LogExclusionB\x03\xe0A\x01R\n" +
	"exclusions\x12`\n" +
	"\x15output_version_format\x18\x06 \x01(\x0e2(.google.logging.v2.LogSink.VersionFormatB\x02\x18\x01R\x13outputVersionFormat\x12,\n" +
	"\x0fwriter_identity\x18\b \x01(\tB\x03\xe0A\x03R\x0ewriterIdentity\x12.\n" +
	"\x10include_children\x18\t \x01(\bB\x03\xe0A\x01R\x0fincludeChildren\x12T\n" +
	"\x10bigquery_options\x18\f \x01(\v2\".google.logging.v2.BigQueryOptionsB\x03\xe0A\x01H\x00R\x0fbigqueryOptions\x12@\n" +
	"\vcreate_time\x18\r \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12@\n" +
	"\vupdate_time\x18\x0e \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"updateTime\"?\n" +
	"\rVersionFormat\x12\x1e\n" +
	"\x1aVERSION_FORMAT_UNSPECIFIED\x10\x00\x12\x06\n" +
	"\x02V2\x10\x01\x12\x06\n" +
	"\x02V1\x10\x02:\xbf\x01\xeaA\xbb\x01\n" +
	"\x1elogging.googleapis.com/LogSink\x12\x1fprojects/{project}/sinks/{sink}\x12)organizations/{organization}/sinks/{sink}\x12\x1dfolders/{folder}/sinks/{sink}\x12.billingAccounts/{billing_account}/sinks/{sink}B\t\n" +
	"\aoptions\"5\n" +
	"\x0fBigQueryDataset\x12\"\n" +
	"\n" +
	"dataset_id\x18\x01 \x01(\tB\x03\xe0A\x03R\tdatasetId\"\xf5\x04\n" +
	"\x04Link\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12 \n" +
	"\vdescription\x18\x02 \x01(\tR\vdescription\x12@\n" +
	"\vcreate_time\x18\x03 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12O\n" +
	"\x0flifecycle_state\x18\x04 \x01(\x0e2!.google.logging.v2.LifecycleStateB\x03\xe0A\x03R\x0elifecycleState\x12M\n" +
	"\x10bigquery_dataset\x18\x05 \x01(\v2\".google.logging.v2.BigQueryDatasetR\x0fbigqueryDataset:\xd4\x02\xeaA\xd0\x02\n" +
	"\x1blogging.googleapis.com/Link\x12Eprojects/{project}/locations/{location}/buckets/{bucket}/links/{link}\x12Oorganizations/{organization}/locations/{location}/buckets/{bucket}/links/{link}\x12Cfolders/{folder}/locations/{location}/buckets/{bucket}/links/{link}\x12TbillingAccounts/{billing_account}/locations/{location}/buckets/{bucket}/links/{link}\"\x9e\x01\n" +
	"\x0fBigQueryOptions\x129\n" +
	"\x16use_partitioned_tables\x18\x01 \x01(\bB\x03\xe0A\x01R\x14usePartitionedTables\x12P\n" +
	"\"uses_timestamp_column_partitioning\x18\x03 \x01(\bB\x03\xe0A\x03R\x1fusesTimestampColumnPartitioning\"\x9c\x01\n" +
	"\x12ListBucketsRequest\x12@\n" +
	"\x06parent\x18\x01 \x01(\tB(\xe0A\x02\xfaA\"\x12 logging.googleapis.com/LogBucketR\x06parent\x12\"\n" +
	"\n" +
	"page_token\x18\x02 \x01(\tB\x03\xe0A\x01R\tpageToken\x12 \n" +
	"\tpage_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\bpageSize\"u\n" +
	"\x13ListBucketsResponse\x126\n" +
	"\abuckets\x18\x01 \x03(\v2\x1c.google.logging.v2.LogBucketR\abuckets\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xb4\x01\n" +
	"\x13CreateBucketRequest\x12@\n" +
	"\x06parent\x18\x01 \x01(\tB(\xe0A\x02\xfaA\"\x12 logging.googleapis.com/LogBucketR\x06parent\x12 \n" +
	"\tbucket_id\x18\x02 \x01(\tB\x03\xe0A\x02R\bbucketId\x129\n" +
	"\x06bucket\x18\x03 \x01(\v2\x1c.google.logging.v2.LogBucketB\x03\xe0A\x02R\x06bucket\"\xd0\x01\n" +
	"\x13UpdateBucketRequest\x12<\n" +
	"\x04name\x18\x01 \x01(\tB(\xe0A\x02\xfaA\"\n" +
	" logging.googleapis.com/LogBucketR\x04name\x129\n" +
	"\x06bucket\x18\x02 \x01(\v2\x1c.google.logging.v2.LogBucketB\x03\xe0A\x02R\x06bucket\x12@\n" +
	"\vupdate_mask\x18\x04 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x02R\n" +
	"updateMask\"P\n" +
	"\x10GetBucketRequest\x12<\n" +
	"\x04name\x18\x01 \x01(\tB(\xe0A\x02\xfaA\"\n" +
	" logging.googleapis.com/LogBucketR\x04name\"S\n" +
	"\x13DeleteBucketRequest\x12<\n" +
	"\x04name\x18\x01 \x01(\tB(\xe0A\x02\xfaA\"\n" +
	" logging.googleapis.com/LogBucketR\x04name\"U\n" +
	"\x15UndeleteBucketRequest\x12<\n" +
	"\x04name\x18\x01 \x01(\tB(\xe0A\x02\xfaA\"\n" +
	" logging.googleapis.com/LogBucketR\x04name\"u\n" +
	"\x10ListViewsRequest\x12\x1b\n" +
	"\x06parent\x18\x01 \x01(\tB\x03\xe0A\x02R\x06parent\x12\"\n" +
	"\n" +
	"page_token\x18\x02 \x01(\tB\x03\xe0A\x01R\tpageToken\x12 \n" +
	"\tpage_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\bpageSize\"m\n" +
	"\x11ListViewsResponse\x120\n" +
	"\x05views\x18\x01 \x03(\v2\x1a.google.logging.v2.LogViewR\x05views\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\x83\x01\n" +
	"\x11CreateViewRequest\x12\x1b\n" +
	"\x06parent\x18\x01 \x01(\tB\x03\xe0A\x02R\x06parent\x12\x1c\n" +
	"\aview_id\x18\x02 \x01(\tB\x03\xe0A\x02R\x06viewId\x123\n" +
	"\x04view\x18\x03 \x01(\v2\x1a.google.logging.v2.LogViewB\x03\xe0A\x02R\x04view\"\xa3\x01\n" +
	"\x11UpdateViewRequest\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x123\n" +
	"\x04view\x18\x02 \x01(\v2\x1a.google.logging.v2.LogViewB\x03\xe0A\x02R\x04view\x12@\n" +
	"\vupdate_mask\x18\x04 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x01R\n" +
	"updateMask\"L\n" +
	"\x0eGetViewRequest\x12:\n" +
	"\x04name\x18\x01 \x01(\tB&\xe0A\x02\xfaA \n" +
	"\x1elogging.googleapis.com/LogViewR\x04name\"O\n" +
	"\x11DeleteViewRequest\x12:\n" +
	"\x04name\x18\x01 \x01(\tB&\xe0A\x02\xfaA \n" +
	"\x1elogging.googleapis.com/LogViewR\x04name\"\x98\x01\n" +
	"\x10ListSinksRequest\x12>\n" +
	"\x06parent\x18\x01 \x01(\tB&\xe0A\x02\xfaA \x12\x1elogging.googleapis.com/LogSinkR\x06parent\x12\"\n" +
	"\n" +
	"page_token\x18\x02 \x01(\tB\x03\xe0A\x01R\tpageToken\x12 \n" +
	"\tpage_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\bpageSize\"m\n" +
	"\x11ListSinksResponse\x120\n" +
	"\x05sinks\x18\x01 \x03(\v2\x1a.google.logging.v2.LogSinkR\x05sinks\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"U\n" +
	"\x0eGetSinkRequest\x12C\n" +
	"\tsink_name\x18\x01 \x01(\tB&\xe0A\x02\xfaA \n" +
	"\x1elogging.googleapis.com/LogSinkR\bsinkName\"\xc3\x01\n" +
	"\x11CreateSinkRequest\x12>\n" +
	"\x06parent\x18\x01 \x01(\tB&\xe0A\x02\xfaA \x12\x1elogging.googleapis.com/LogSinkR\x06parent\x123\n" +
	"\x04sink\x18\x02 \x01(\v2\x1a.google.logging.v2.LogSinkB\x03\xe0A\x02R\x04sink\x129\n" +
	"\x16unique_writer_identity\x18\x03 \x01(\bB\x03\xe0A\x01R\x14uniqueWriterIdentity\"\x8a\x02\n" +
	"\x11UpdateSinkRequest\x12C\n" +
	"\tsink_name\x18\x01 \x01(\tB&\xe0A\x02\xfaA \n" +
	"\x1elogging.googleapis.com/LogSinkR\bsinkName\x123\n" +
	"\x04sink\x18\x02 \x01(\v2\x1a.google.logging.v2.LogSinkB\x03\xe0A\x02R\x04sink\x129\n" +
	"\x16unique_writer_identity\x18\x03 \x01(\bB\x03\xe0A\x01R\x14uniqueWriterIdentity\x12@\n" +
	"\vupdate_mask\x18\x04 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x01R\n" +
	"updateMask\"X\n" +
	"\x11DeleteSinkRequest\x12C\n" +
	"\tsink_name\x18\x01 \x01(\tB&\xe0A\x02\xfaA \n" +
	"\x1elogging.googleapis.com/LogSinkR\bsinkName\"\xa0\x01\n" +
	"\x11CreateLinkRequest\x12;\n" +
	"\x06parent\x18\x01 \x01(\tB#\xe0A\x02\xfaA\x1d\x12\x1blogging.googleapis.com/LinkR\x06parent\x120\n" +
	"\x04link\x18\x02 \x01(\v2\x17.google.logging.v2.LinkB\x03\xe0A\x02R\x04link\x12\x1c\n" +
	"\alink_id\x18\x03 \x01(\tB\x03\xe0A\x02R\x06linkId\"L\n" +
	"\x11DeleteLinkRequest\x127\n" +
	"\x04name\x18\x01 \x01(\tB#\xe0A\x02\xfaA\x1d\n" +
	"\x1blogging.googleapis.com/LinkR\x04name\"\x95\x01\n" +
	"\x10ListLinksRequest\x12;\n" +
	"\x06parent\x18\x01 \x01(\tB#\xe0A\x02\xfaA\x1d\x12\x1blogging.googleapis.com/LinkR\x06parent\x12\"\n" +
	"\n" +
	"page_token\x18\x02 \x01(\tB\x03\xe0A\x01R\tpageToken\x12 \n" +
	"\tpage_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\bpageSize\"j\n" +
	"\x11ListLinksResponse\x12-\n" +
	"\x05links\x18\x01 \x03(\v2\x17.google.logging.v2.LinkR\x05links\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"I\n" +
	"\x0eGetLinkRequest\x127\n" +
	"\x04name\x18\x01 \x01(\tB#\xe0A\x02\xfaA\x1d\n" +
	"\x1blogging.googleapis.com/LinkR\x04name\"\xff\x03\n" +
	"\fLogExclusion\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x12%\n" +
	"\vdescription\x18\x02 \x01(\tB\x03\xe0A\x01R\vdescription\x12\x1b\n" +
	"\x06filter\x18\x03 \x01(\tB\x03\xe0A\x02R\x06filter\x12\x1f\n" +
	"\bdisabled\x18\x04 \x01(\bB\x03\xe0A\x01R\bdisabled\x12@\n" +
	"\vcreate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12@\n" +
	"\vupdate_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"updateTime:\xec\x01\xeaA\xe8\x01\n" +
	"#logging.googleapis.com/LogExclusion\x12)projects/{project}/exclusions/{exclusion}\x123organizations/{organization}/exclusions/{exclusion}\x12'folders/{folder}/exclusions/{exclusion}\x128billingAccounts/{billing_account}/exclusions/{exclusion}\"\xa2\x01\n" +
	"\x15ListExclusionsRequest\x12C\n" +
	"\x06parent\x18\x01 \x01(\tB+\xe0A\x02\xfaA%\x12#logging.googleapis.com/LogExclusionR\x06parent\x12\"\n" +
	"\n" +
	"page_token\x18\x02 \x01(\tB\x03\xe0A\x01R\tpageToken\x12 \n" +
	"\tpage_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\bpageSize\"\x81\x01\n" +
	"\x16ListExclusionsResponse\x12?\n" +
	"\n" +
	"exclusions\x18\x01 \x03(\v2\x1f.google.logging.v2.LogExclusionR\n" +
	"exclusions\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"V\n" +
	"\x13GetExclusionRequest\x12?\n" +
	"\x04name\x18\x01 \x01(\tB+\xe0A\x02\xfaA%\n" +
	"#logging.googleapis.com/LogExclusionR\x04name\"\xa1\x01\n" +
	"\x16CreateExclusionRequest\x12C\n" +
	"\x06parent\x18\x01 \x01(\tB+\xe0A\x02\xfaA%\x12#logging.googleapis.com/LogExclusionR\x06parent\x12B\n" +
	"\texclusion\x18\x02 \x01(\v2\x1f.google.logging.v2.LogExclusionB\x03\xe0A\x02R\texclusion\"\xdf\x01\n" +
	"\x16UpdateExclusionRequest\x12?\n" +
	"\x04name\x18\x01 \x01(\tB+\xe0A\x02\xfaA%\n" +
	"#logging.googleapis.com/LogExclusionR\x04name\x12B\n" +
	"\texclusion\x18\x02 \x01(\v2\x1f.google.logging.v2.LogExclusionB\x03\xe0A\x02R\texclusion\x12@\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x02R\n" +
	"updateMask\"Y\n" +
	"\x16DeleteExclusionRequest\x12?\n" +
	"\x04name\x18\x01 \x01(\tB+\xe0A\x02\xfaA%\n" +
	"#logging.googleapis.com/LogExclusionR\x04name\"Y\n" +
	"\x16GetCmekSettingsRequest\x12?\n" +
	"\x04name\x18\x01 \x01(\tB+\xe0A\x02\xfaA%\n" +
	"#logging.googleapis.com/CmekSettingsR\x04name\"\xc1\x01\n" +
	"\x19UpdateCmekSettingsRequest\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x12I\n" +
	"\rcmek_settings\x18\x02 \x01(\v2\x1f.google.logging.v2.CmekSettingsB\x03\xe0A\x02R\fcmekSettings\x12@\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x01R\n" +
	"updateMask\"\xf4\x02\n" +
	"\fCmekSettings\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x03R\x04name\x12 \n" +
	"\fkms_key_name\x18\x02 \x01(\tR\n" +
	"kmsKeyName\x12/\n" +
	"\x14kms_key_version_name\x18\x04 \x01(\tR\x11kmsKeyVersionName\x121\n" +
	"\x12service_account_id\x18\x03 \x01(\tB\x03\xe0A\x03R\x10serviceAccountId:\xc4\x01\xeaA\xc0\x01\n" +
	"#logging.googleapis.com/CmekSettings\x12\x1fprojects/{project}/cmekSettings\x12)organizations/{organization}/cmekSettings\x12\x1dfolders/{folder}/cmekSettings\x12.billingAccounts/{billing_account}/cmekSettings\"Q\n" +
	"\x12GetSettingsRequest\x12;\n" +
	"\x04name\x18\x01 \x01(\tB'\xe0A\x02\xfaA!\n" +
	"\x1flogging.googleapis.com/SettingsR\x04name\"\xb0\x01\n" +
	"\x15UpdateSettingsRequest\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x12<\n" +
	"\bsettings\x18\x02 \x01(\v2\x1b.google.logging.v2.SettingsB\x03\xe0A\x02R\bsettings\x12@\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x01R\n" +
	"updateMask\"\x9e\x03\n" +
	"\bSettings\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x03R\x04name\x12%\n" +
	"\fkms_key_name\x18\x02 \x01(\tB\x03\xe0A\x01R\n" +
	"kmsKeyName\x128\n" +
	"\x16kms_service_account_id\x18\x03 \x01(\tB\x03\xe0A\x03R\x13kmsServiceAccountId\x12.\n" +
	"\x10storage_location\x18\x04 \x01(\tB\x03\xe0A\x01R\x0fstorageLocation\x125\n" +
	"\x14disable_default_sink\x18\x05 \x01(\bB\x03\xe0A\x01R\x12disableDefaultSink:\xb0\x01\xeaA\xac\x01\n" +
	"\x1flogging.googleapis.com/Settings\x12\x1bprojects/{project}/settings\x12%organizations/{organization}/settings\x12\x19folders/{folder}/settings\x12*billingAccounts/{billing_account}/settings\"t\n" +
	"\x15CopyLogEntriesRequest\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x12\x1b\n" +
	"\x06filter\x18\x03 \x01(\tB\x03\xe0A\x01R\x06filter\x12%\n" +
	"\vdestination\x18\x04 \x01(\tB\x03\xe0A\x02R\vdestination\"\x83\x03\n" +
	"\x16CopyLogEntriesMetadata\x129\n" +
	"\n" +
	"start_time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\tstartTime\x125\n" +
	"\bend_time\x18\x02 \x01(\v2\x1a.google.protobuf.TimestampR\aendTime\x127\n" +
	"\x05state\x18\x03 \x01(\x0e2!.google.logging.v2.OperationStateR\x05state\x125\n" +
	"\x16cancellation_requested\x18\x04 \x01(\bR\x15cancellationRequested\x12B\n" +
	"\arequest\x18\x05 \x01(\v2(.google.logging.v2.CopyLogEntriesRequestR\arequest\x12\x1a\n" +
	"\bprogress\x18\x06 \x01(\x05R\bprogress\x12'\n" +
	"\x0fwriter_identity\x18\a \x01(\tR\x0ewriterIdentity\"Q\n" +
	"\x16CopyLogEntriesResponse\x127\n" +
	"\x18log_entries_copied_count\x18\x01 \x01(\x03R\x15logEntriesCopiedCount\"\x82\x03\n" +
	"\x0eBucketMetadata\x129\n" +
	"\n" +
	"start_time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\tstartTime\x125\n" +
	"\bend_time\x18\x02 \x01(\v2\x1a.google.protobuf.TimestampR\aendTime\x127\n" +
	"\x05state\x18\x03 \x01(\x0e2!.google.logging.v2.OperationStateR\x05state\x12\\\n" +
	"\x15create_bucket_request\x18\x04 \x01(\v2&.google.logging.v2.CreateBucketRequestH\x00R\x13createBucketRequest\x12\\\n" +
	"\x15update_bucket_request\x18\x05 \x01(\v2&.google.logging.v2.UpdateBucketRequestH\x00R\x13updateBucketRequestB\t\n" +
	"\arequest\"\xf4\x02\n" +
	"\fLinkMetadata\x129\n" +
	"\n" +
	"start_time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\tstartTime\x125\n" +
	"\bend_time\x18\x02 \x01(\v2\x1a.google.protobuf.TimestampR\aendTime\x127\n" +
	"\x05state\x18\x03 \x01(\x0e2!.google.logging.v2.OperationStateR\x05state\x12V\n" +
	"\x13create_link_request\x18\x04 \x01(\v2$.google.logging.v2.CreateLinkRequestH\x00R\x11createLinkRequest\x12V\n" +
	"\x13delete_link_request\x18\x05 \x01(\v2$.google.logging.v2.DeleteLinkRequestH\x00R\x11deleteLinkRequestB\t\n" +
	"\arequest\"F\n" +
	"\x10LocationMetadata\x122\n" +
	"\x15log_analytics_enabled\x18\x01 \x01(\bR\x13logAnalyticsEnabled*\xf4\x01\n" +
	"\x0eOperationState\x12\x1f\n" +
	"\x1bOPERATION_STATE_UNSPECIFIED\x10\x00\x12\x1d\n" +
	"\x19OPERATION_STATE_SCHEDULED\x10\x01\x12+\n" +
	"'OPERATION_STATE_WAITING_FOR_PERMISSIONS\x10\x02\x12\x1b\n" +
	"\x17OPERATION_STATE_RUNNING\x10\x03\x12\x1d\n" +
	"\x19OPERATION_STATE_SUCCEEDED\x10\x04\x12\x1a\n" +
	"\x16OPERATION_STATE_FAILED\x10\x05\x12\x1d\n" +
	"\x19OPERATION_STATE_CANCELLED\x10\x06*{\n" +
	"\x0eLifecycleState\x12\x1f\n" +
	"\x1bLIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\n" +
	"\n" +
	"\x06ACTIVE\x10\x01\x12\x14\n" +
	"\x10DELETE_REQUESTED\x10\x02\x12\f\n" +
	"\bUPDATING\x10\x03\x12\f\n" +
	"\bCREATING\x10\x04\x12\n" +
	"\n" +
	"\x06FAILED\x10\x05*V\n" +
	"\tIndexType\x12\x1a\n" +
	"\x16INDEX_TYPE_UNSPECIFIED\x10\x00\x12\x15\n" +
	"\x11INDEX_TYPE_STRING\x10\x01\x12\x16\n" +
	"\x12INDEX_TYPE_INTEGER\x10\x022\x9fY\n" +
	"\x0fConfigServiceV2\x12\xdc\x02\n" +
	"\vListBuckets\x12%.google.logging.v2.ListBucketsRequest\x1a&.google.logging.v2.ListBucketsResponse\"\xfd\x01\xdaA\x06parent\x82\xd3\xe4\x93\x02\xed\x01Z-\x12+/v2/{parent=projects/*/locations/*}/bucketsZ2\x120/v2/{parent=organizations/*/locations/*}/bucketsZ,\x12*/v2/{parent=folders/*/locations/*}/bucketsZ4\x122/v2/{parent=billingAccounts/*/locations/*}/buckets\x12$/v2/{parent=*/*/locations/*}/buckets\x12\xc5\x02\n" +
	"\tGetBucket\x12#.google.logging.v2.GetBucketRequest\x1a\x1c.google.logging.v2.LogBucket\"\xf4\x01\x82\xd3\xe4\x93\x02\xed\x01Z-\x12+/v2/{name=projects/*/locations/*/buckets/*}Z2\x120/v2/{name=organizations/*/locations/*/buckets/*}Z,\x12*/v2/{name=folders/*/locations/*/buckets/*}Z4\x122/v2/{name=billingAccounts/*/locations/*/buckets/*}\x12$/v2/{name=*/*/locations/*/buckets/*}\x12\xd3\x03\n" +
	"\x11CreateBucketAsync\x12&.google.logging.v2.CreateBucketRequest\x1a\x1d.google.longrunning.Operation\"\xf6\x02\xcaA\x1b\n" +
	"\tLogBucket\x12\x0eBucketMetadata\x82\xd3\xe4\x93\x02\xd1\x02:\x06bucketZA:\x06bucket\"7/v2/{parent=projects/*/locations/*}/buckets:createAsyncZF:\x06bucket\"</v2/{parent=organizations/*/locations/*}/buckets:createAsyncZ@:\x06bucket\"6/v2/{parent=folders/*/locations/*}/buckets:createAsyncZH:\x06bucket\">/v2/{parent=billingAccounts/*/locations/*}/buckets:createAsync\"0/v2/{parent=*/*/locations/*}/buckets:createAsync\x12\xd3\x03\n" +
	"\x11UpdateBucketAsync\x12&.google.logging.v2.UpdateBucketRequest\x1a\x1d.google.longrunning.Operation\"\xf6\x02\xcaA\x1b\n" +
	"\tLogBucket\x12\x0eBucketMetadata\x82\xd3\xe4\x93\x02\xd1\x02:\x06bucketZA:\x06bucket\"7/v2/{name=projects/*/locations/*/buckets/*}:updateAsyncZF:\x06bucket\"</v2/{name=organizations/*/locations/*/buckets/*}:updateAsyncZ@:\x06bucket\"6/v2/{name=folders/*/locations/*/buckets/*}:updateAsyncZH:\x06bucket\">/v2/{name=billingAccounts/*/locations/*/buckets/*}:updateAsync\"0/v2/{name=*/*/locations/*/buckets/*}:updateAsync\x12\xf3\x02\n" +
	"\fCreateBucket\x12&.google.logging.v2.CreateBucketRequest\x1a\x1c.google.logging.v2.LogBucket\"\x9c\x02\x82\xd3\xe4\x93\x02\x95\x02:\x06bucketZ5:\x06bucket\"+/v2/{parent=projects/*/locations/*}/bucketsZ::\x06bucket\"0/v2/{parent=organizations/*/locations/*}/bucketsZ4:\x06bucket\"*/v2/{parent=folders/*/locations/*}/bucketsZ<:\x06bucket\"2/v2/{parent=billingAccounts/*/locations/*}/buckets\"$/v2/{parent=*/*/locations/*}/buckets\x12\xf3\x02\n" +
	"\fUpdateBucket\x12&.google.logging.v2.UpdateBucketRequest\x1a\x1c.google.logging.v2.LogBucket\"\x9c\x02\x82\xd3\xe4\x93\x02\x95\x02:\x06bucketZ5:\x06bucket2+/v2/{name=projects/*/locations/*/buckets/*}Z::\x06bucket20/v2/{name=organizations/*/locations/*/buckets/*}Z4:\x06bucket2*/v2/{name=folders/*/locations/*/buckets/*}Z<:\x06bucket22/v2/{name=billingAccounts/*/locations/*/buckets/*}2$/v2/{name=*/*/locations/*/buckets/*}\x12\xc5\x02\n" +
	"\fDeleteBucket\x12&.google.logging.v2.DeleteBucketRequest\x1a\x16.google.protobuf.Empty\"\xf4\x01\x82\xd3\xe4\x93\x02\xed\x01Z-*+/v2/{name=projects/*/locations/*/buckets/*}Z2*0/v2/{name=organizations/*/locations/*/buckets/*}Z,**/v2/{name=folders/*/locations/*/buckets/*}Z4*2/v2/{name=billingAccounts/*/locations/*/buckets/*}*$/v2/{name=*/*/locations/*/buckets/*}\x12\x85\x03\n" +
	"\x0eUndeleteBucket\x12(.google.logging.v2.UndeleteBucketRequest\x1a\x16.google.protobuf.Empty\"\xb0\x02\x82\xd3\xe4\x93\x02\xa9\x02:\x01*Z9:\x01*\"4/v2/{name=projects/*/locations/*/buckets/*}:undeleteZ>:\x01*\"9/v2/{name=organizations/*/locations/*/buckets/*}:undeleteZ8:\x01*\"3/v2/{name=folders/*/locations/*/buckets/*}:undeleteZ@:\x01*\";/v2/{name=billingAccounts/*/locations/*/buckets/*}:undelete\"-/v2/{name=*/*/locations/*/buckets/*}:undelete\x12\xfe\x02\n" +
	"\tListViews\x12#.google.logging.v2.ListViewsRequest\x1a$.google.logging.v2.ListViewsResponse\"\xa5\x02\xdaA\x06parent\x82\xd3\xe4\x93\x02\x95\x02Z5\x123/v2/{parent=projects/*/locations/*/buckets/*}/viewsZ:\x128/v2/{parent=organizations/*/locations/*/buckets/*}/viewsZ4\x122/v2/{parent=folders/*/locations/*/buckets/*}/viewsZ<\x12:/v2/{parent=billingAccounts/*/locations/*/buckets/*}/views\x12,/v2/{parent=*/*/locations/*/buckets/*}/views\x12\xe7\x02\n" +
	"\aGetView\x12!.google.logging.v2.GetViewRequest\x1a\x1a.google.logging.v2.LogView\"\x9c\x02\x82\xd3\xe4\x93\x02\x95\x02Z5\x123/v2/{name=projects/*/locations/*/buckets/*/views/*}Z:\x128/v2/{name=organizations/*/locations/*/buckets/*/views/*}Z4\x122/v2/{name=folders/*/locations/*/buckets/*/views/*}Z<\x12:/v2/{name=billingAccounts/*/locations/*/buckets/*/views/*}\x12,/v2/{name=*/*/locations/*/buckets/*/views/*}\x12\x8b\x03\n" +
	"\n" +
	"CreateView\x12$.google.logging.v2.CreateViewRequest\x1a\x1a.google.logging.v2.LogView\"\xba\x02\x82\xd3\xe4\x93\x02\xb3\x02:\x04viewZ;:\x04view\"3/v2/{parent=projects/*/locations/*/buckets/*}/viewsZ@:\x04view\"8/v2/{parent=organizations/*/locations/*/buckets/*}/viewsZ::\x04view\"2/v2/{parent=folders/*/locations/*/buckets/*}/viewsZB:\x04view\":/v2/{parent=billingAccounts/*/locations/*/buckets/*}/views\",/v2/{parent=*/*/locations/*/buckets/*}/views\x12\x8b\x03\n" +
	"\n" +
	"UpdateView\x12$.google.logging.v2.UpdateViewRequest\x1a\x1a.google.logging.v2.LogView\"\xba\x02\x82\xd3\xe4\x93\x02\xb3\x02:\x04viewZ;:\x04view23/v2/{name=projects/*/locations/*/buckets/*/views/*}Z@:\x04view28/v2/{name=organizations/*/locations/*/buckets/*/views/*}Z::\x04view22/v2/{name=folders/*/locations/*/buckets/*/views/*}ZB:\x04view2:/v2/{name=billingAccounts/*/locations/*/buckets/*/views/*}2,/v2/{name=*/*/locations/*/buckets/*/views/*}\x12\xe9\x02\n" +
	"\n" +
	"DeleteView\x12$.google.logging.v2.DeleteViewRequest\x1a\x16.google.protobuf.Empty\"\x9c\x02\x82\xd3\xe4\x93\x02\x95\x02Z5*3/v2/{name=projects/*/locations/*/buckets/*/views/*}Z:*8/v2/{name=organizations/*/locations/*/buckets/*/views/*}Z4*2/v2/{name=folders/*/locations/*/buckets/*/views/*}Z<*:/v2/{name=billingAccounts/*/locations/*/buckets/*/views/*}*,/v2/{name=*/*/locations/*/buckets/*/views/*}\x12\x90\x02\n" +
	"\tListSinks\x12#.google.logging.v2.ListSinksRequest\x1a$.google.logging.v2.ListSinksResponse\"\xb7\x01\xdaA\x06parent\x82\xd3\xe4\x93\x02\xa7\x01Z\x1f\x12\x1d/v2/{parent=projects/*}/sinksZ$\x12\"/v2/{parent=organizations/*}/sinksZ\x1e\x12\x1c/v2/{parent=folders/*}/sinksZ&\x12$/v2/{parent=billingAccounts/*}/sinks\x12\x16/v2/{parent=*/*}/sinks\x12\x9e\x02\n" +
	"\aGetSink\x12!.google.logging.v2.GetSinkRequest\x1a\x1a.google.logging.v2.LogSink\"\xd3\x01\xdaA\tsink_name\x82\xd3\xe4\x93\x02\xc0\x01Z$\x12\"/v2/{sink_name=projects/*/sinks/*}Z)\x12'/v2/{sink_name=organizations/*/sinks/*}Z#\x12!/v2/{sink_name=folders/*/sinks/*}Z+\x12)/v2/{sink_name=billingAccounts/*/sinks/*}\x12\x1b/v2/{sink_name=*/*/sinks/*}\x12\xab\x02\n" +
	"\n" +
	"CreateSink\x12$.google.logging.v2.CreateSinkRequest\x1a\x1a.google.logging.v2.LogSink\"\xda\x01\xdaA\vparent,sink\x82\xd3\xe4\x93\x02\xc5\x01:\x04sinkZ%:\x04sink\"\x1d/v2/{parent=projects/*}/sinksZ*:\x04sink\"\"/v2/{parent=organizations/*}/sinksZ$:\x04sink\"\x1c/v2/{parent=folders/*}/sinksZ,:\x04sink\"$/v2/{parent=billingAccounts/*}/sinks\"\x16/v2/{parent=*/*}/sinks\x12\x9f\x04\n" +
	"\n" +
	"UpdateSink\x12$.google.logging.v2.UpdateSinkRequest\x1a\x1a.google.logging.v2.LogSink\"\xce\x03\xdaA\x1asink_name,sink,update_mask\xdaA\x0esink_name,sink\x82\xd3\xe4\x93\x02\x99\x03:\x04sinkZ*:\x04sink\x1a\"/v2/{sink_name=projects/*/sinks/*}Z/:\x04sink\x1a'/v2/{sink_name=organizations/*/sinks/*}Z):\x04sink\x1a!/v2/{sink_name=folders/*/sinks/*}Z1:\x04sink\x1a)/v2/{sink_name=billingAccounts/*/sinks/*}Z*:\x04sink2\"/v2/{sink_name=projects/*/sinks/*}Z/:\x04sink2'/v2/{sink_name=organizations/*/sinks/*}Z):\x04sink2!/v2/{sink_name=folders/*/sinks/*}Z1:\x04sink2)/v2/{sink_name=billingAccounts/*/sinks/*}\x1a\x1b/v2/{sink_name=*/*/sinks/*}\x12\xa0\x02\n" +
	"\n" +
	"DeleteSink\x12$.google.logging.v2.DeleteSinkRequest\x1a\x16.google.protobuf.Empty\"\xd3\x01\xdaA\tsink_name\x82\xd3\xe4\x93\x02\xc0\x01Z$*\"/v2/{sink_name=projects/*/sinks/*}Z)*'/v2/{sink_name=organizations/*/sinks/*}Z#*!/v2/{sink_name=folders/*/sinks/*}Z+*)/v2/{sink_name=billingAccounts/*/sinks/*}*\x1b/v2/{sink_name=*/*/sinks/*}\x12\xbb\x03\n" +
	"\n" +
	"CreateLink\x12$.google.logging.v2.CreateLinkRequest\x1a\x1d.google.longrunning.Operation\"\xe7\x02\xcaA\x14\n" +
	"\x04Link\x12\fLinkMetadata\xdaA\x13parent,link,link_id\x82\xd3\xe4\x93\x02\xb3\x02:\x04linkZ;:\x04link\"3/v2/{parent=projects/*/locations/*/buckets/*}/linksZ@:\x04link\"8/v2/{parent=organizations/*/locations/*/buckets/*}/linksZ::\x04link\"2/v2/{parent=folders/*/locations/*/buckets/*}/linksZB:\x04link\":/v2/{parent=billingAccounts/*/locations/*/buckets/*}/links\",/v2/{parent=*/*/locations/*/buckets/*}/links\x12\x9f\x03\n" +
	"\n" +
	"DeleteLink\x12$.google.logging.v2.DeleteLinkRequest\x1a\x1d.google.longrunning.Operation\"\xcb\x02\xcaA%\n" +
	"\x15google.protobuf.Empty\x12\fLinkMetadata\xdaA\x04name\x82\xd3\xe4\x93\x02\x95\x02Z5*3/v2/{name=projects/*/locations/*/buckets/*/links/*}Z:*8/v2/{name=organizations/*/locations/*/buckets/*/links/*}Z4*2/v2/{name=folders/*/locations/*/buckets/*/links/*}Z<*:/v2/{name=billingAccounts/*/locations/*/buckets/*/links/*}*,/v2/{name=*/*/locations/*/buckets/*/links/*}\x12\xfe\x02\n" +
	"\tListLinks\x12#.google.logging.v2.ListLinksRequest\x1a$.google.logging.v2.ListLinksResponse\"\xa5\x02\xdaA\x06parent\x82\xd3\xe4\x93\x02\x95\x02Z5\x123/v2/{parent=projects/*/locations/*/buckets/*}/linksZ:\x128/v2/{parent=organizations/*/locations/*/buckets/*}/linksZ4\x122/v2/{parent=folders/*/locations/*/buckets/*}/linksZ<\x12:/v2/{parent=billingAccounts/*/locations/*/buckets/*}/links\x12,/v2/{parent=*/*/locations/*/buckets/*}/links\x12\xeb\x02\n" +
	"\aGetLink\x12!.google.logging.v2.GetLinkRequest\x1a\x17.google.logging.v2.Link\"\xa3\x02\xdaA\x04name\x82\xd3\xe4\x93\x02\x95\x02Z5\x123/v2/{name=projects/*/locations/*/buckets/*/links/*}Z:\x128/v2/{name=organizations/*/locations/*/buckets/*/links/*}Z4\x122/v2/{name=folders/*/locations/*/buckets/*/links/*}Z<\x12:/v2/{name=billingAccounts/*/locations/*/buckets/*/links/*}\x12,/v2/{name=*/*/locations/*/buckets/*/links/*}\x12\xb8\x02\n" +
	"\x0eListExclusions\x12(.google.logging.v2.ListExclusionsRequest\x1a).google.logging.v2.ListExclusionsResponse\"\xd0\x01\xdaA\x06parent\x82\xd3\xe4\x93\x02\xc0\x01Z$\x12\"/v2/{parent=projects/*}/exclusionsZ)\x12'/v2/{parent=organizations/*}/exclusionsZ#\x12!/v2/{parent=folders/*}/exclusionsZ+\x12)/v2/{parent=billingAccounts/*}/exclusions\x12\x1b/v2/{parent=*/*}/exclusions\x12\xa8\x02\n" +
	"\fGetExclusion\x12&.google.logging.v2.GetExclusionRequest\x1a\x1f.google.logging.v2.LogExclusion\"\xce\x01\xdaA\x04name\x82\xd3\xe4\x93\x02\xc0\x01Z$\x12\"/v2/{name=projects/*/exclusions/*}Z)\x12'/v2/{name=organizations/*/exclusions/*}Z#\x12!/v2/{name=folders/*/exclusions/*}Z+\x12)/v2/{name=billingAccounts/*/exclusions/*}\x12\x1b/v2/{name=*/*/exclusions/*}\x12\xf1\x02\n" +
	"\x0fCreateExclusion\x12).google.logging.v2.CreateExclusionRequest\x1a\x1f.google.logging.v2.LogExclusion\"\x91\x02\xdaA\x10parent,exclusion\x82\xd3\xe4\x93\x02\xf7\x01:\texclusionZ/:\texclusion\"\"/v2/{parent=projects/*}/exclusionsZ4:\texclusion\"'/v2/{parent=organizations/*}/exclusionsZ.:\texclusion\"!/v2/{parent=folders/*}/exclusionsZ6:\texclusion\")/v2/{parent=billingAccounts/*}/exclusions\"\x1b/v2/{parent=*/*}/exclusions\x12\xfb\x02\n" +
	"\x0fUpdateExclusion\x12).google.logging.v2.UpdateExclusionRequest\x1a\x1f.google.logging.v2.LogExclusion\"\x9b\x02\xdaA\x1aname,exclusion,update_mask\x82\xd3\xe4\x93\x02\xf7\x01:\texclusionZ/:\texclusion2\"/v2/{name=projects/*/exclusions/*}Z4:\texclusion2'/v2/{name=organizations/*/exclusions/*}Z.:\texclusion2!/v2/{name=folders/*/exclusions/*}Z6:\texclusion2)/v2/{name=billingAccounts/*/exclusions/*}2\x1b/v2/{name=*/*/exclusions/*}\x12\xa5\x02\n" +
	"\x0fDeleteExclusion\x12).google.logging.v2.DeleteExclusionRequest\x1a\x16.google.protobuf.Empty\"\xce\x01\xdaA\x04name\x82\xd3\xe4\x93\x02\xc0\x01Z$*\"/v2/{name=projects/*/exclusions/*}Z)*'/v2/{name=organizations/*/exclusions/*}Z#*!/v2/{name=folders/*/exclusions/*}Z+*)/v2/{name=billingAccounts/*/exclusions/*}*\x1b/v2/{name=*/*/exclusions/*}\x12\xa7\x02\n" +
	"\x0fGetCmekSettings\x12).google.logging.v2.GetCmekSettingsRequest\x1a\x1f.google.logging.v2.CmekSettings\"\xc7\x01\x82\xd3\xe4\x93\x02\xc0\x01Z$\x12\"/v2/{name=projects/*}/cmekSettingsZ)\x12'/v2/{name=organizations/*}/cmekSettingsZ#\x12!/v2/{name=folders/*}/cmekSettingsZ+\x12)/v2/{name=billingAccounts/*}/cmekSettings\x12\x1b/v2/{name=*/*}/cmekSettings\x12\xd1\x01\n" +
	"\x12UpdateCmekSettings\x12,.google.logging.v2.UpdateCmekSettingsRequest\x1a\x1f.google.logging.v2.CmekSettings\"l\x82\xd3\xe4\x93\x02f:\rcmek_settingsZ8:\rcmek_settings2'/v2/{name=organizations/*}/cmekSettings2\x1b/v2/{name=*/*}/cmekSettings\x12\x8e\x02\n" +
	"\vGetSettings\x12%.google.logging.v2.GetSettingsRequest\x1a\x1b.google.logging.v2.Settings\"\xba\x01\xdaA\x04name\x82\xd3\xe4\x93\x02\xac\x01Z \x12\x1e/v2/{name=projects/*}/settingsZ%\x12#/v2/{name=organizations/*}/settingsZ\x1f\x12\x1d/v2/{name=folders/*}/settingsZ'\x12%/v2/{name=billingAccounts/*}/settings\x12\x17/v2/{name=*/*}/settings\x12\xf6\x01\n" +
	"\x0eUpdateSettings\x12(.google.logging.v2.UpdateSettingsRequest\x1a\x1b.google.logging.v2.Settings\"\x9c\x01\xdaA\x14settings,update_mask\x82\xd3\xe4\x93\x02\x7f:\bsettingsZ/:\bsettings2#/v2/{name=organizations/*}/settingsZ):\bsettings2\x1d/v2/{name=folders/*}/settings2\x17/v2/{name=*/*}/settings\x12\xa9\x01\n" +
	"\x0eCopyLogEntries\x12(.google.logging.v2.CopyLogEntriesRequest\x1a\x1d.google.longrunning.Operation\"N\xcaA0\n" +
	"\x16CopyLogEntriesResponse\x12\x16CopyLogEntriesMetadata\x82\xd3\xe4\x93\x02\x15:\x01*\"\x10/v2/entries:copy\x1a\xdf\x01\xcaA\x16logging.googleapis.com\xd2A\xc2\x01https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/logging.admin,https://www.googleapis.com/auth/logging.readB\xd6\x03\xeaA`\n" +
	"+logging.googleapis.com/OrganizationLocation\x121organizations/{organization}/locations/{location}\xeaAN\n" +
	"%logging.googleapis.com/FolderLocation\x12%folders/{folder}/locations/{location}\xeaAg\n" +
	"-logging.googleapis.com/BillingAccountLocation\x126billingAccounts/{billing_account}/locations/{location}\n" +
	"\x15com.google.logging.v2B\x12LoggingConfigProtoP\x01Z5cloud.google.com/go/logging/apiv2/loggingpb;loggingpb\xf8\x01\x01\xaa\x02\x17Google.Cloud.Logging.V2\xca\x02\x17Google\\Cloud\\Logging\\V2\xea\x02\x1aGoogle::Cloud::Logging::V2b\x06proto3"

var (
	file_google_logging_v2_logging_config_proto_rawDescOnce sync.Once
	file_google_logging_v2_logging_config_proto_rawDescData []byte
)

func file_google_logging_v2_logging_config_proto_rawDescGZIP() []byte {
	file_google_logging_v2_logging_config_proto_rawDescOnce.Do(func() {
		file_google_logging_v2_logging_config_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_google_logging_v2_logging_config_proto_rawDesc), len(file_google_logging_v2_logging_config_proto_rawDesc)))
	})
	return file_google_logging_v2_logging_config_proto_rawDescData
}

var file_google_logging_v2_logging_config_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_google_logging_v2_logging_config_proto_msgTypes = make([]protoimpl.MessageInfo, 50)
var file_google_logging_v2_logging_config_proto_goTypes = []any{
	(OperationState)(0),               // 0: google.logging.v2.OperationState
	(LifecycleState)(0),               // 1: google.logging.v2.LifecycleState
	(IndexType)(0),                    // 2: google.logging.v2.IndexType
	(LogSink_VersionFormat)(0),        // 3: google.logging.v2.LogSink.VersionFormat
	(*IndexConfig)(nil),               // 4: google.logging.v2.IndexConfig
	(*LogBucket)(nil),                 // 5: google.logging.v2.LogBucket
	(*LogView)(nil),                   // 6: google.logging.v2.LogView
	(*LogSink)(nil),                   // 7: google.logging.v2.LogSink
	(*BigQueryDataset)(nil),           // 8: google.logging.v2.BigQueryDataset
	(*Link)(nil),                      // 9: google.logging.v2.Link
	(*BigQueryOptions)(nil),           // 10: google.logging.v2.BigQueryOptions
	(*ListBucketsRequest)(nil),        // 11: google.logging.v2.ListBucketsRequest
	(*ListBucketsResponse)(nil),       // 12: google.logging.v2.ListBucketsResponse
	(*CreateBucketRequest)(nil),       // 13: google.logging.v2.CreateBucketRequest
	(*UpdateBucketRequest)(nil),       // 14: google.logging.v2.UpdateBucketRequest
	(*GetBucketRequest)(nil),          // 15: google.logging.v2.GetBucketRequest
	(*DeleteBucketRequest)(nil),       // 16: google.logging.v2.DeleteBucketRequest
	(*UndeleteBucketRequest)(nil),     // 17: google.logging.v2.UndeleteBucketRequest
	(*ListViewsRequest)(nil),          // 18: google.logging.v2.ListViewsRequest
	(*ListViewsResponse)(nil),         // 19: google.logging.v2.ListViewsResponse
	(*CreateViewRequest)(nil),         // 20: google.logging.v2.CreateViewRequest
	(*UpdateViewRequest)(nil),         // 21: google.logging.v2.UpdateViewRequest
	(*GetViewRequest)(nil),            // 22: google.logging.v2.GetViewRequest
	(*DeleteViewRequest)(nil),         // 23: google.logging.v2.DeleteViewRequest
	(*ListSinksRequest)(nil),          // 24: google.logging.v2.ListSinksRequest
	(*ListSinksResponse)(nil),         // 25: google.logging.v2.ListSinksResponse
	(*GetSinkRequest)(nil),            // 26: google.logging.v2.GetSinkRequest
	(*CreateSinkRequest)(nil),         // 27: google.logging.v2.CreateSinkRequest
	(*UpdateSinkRequest)(nil),         // 28: google.logging.v2.UpdateSinkRequest
	(*DeleteSinkRequest)(nil),         // 29: google.logging.v2.DeleteSinkRequest
	(*CreateLinkRequest)(nil),         // 30: google.logging.v2.CreateLinkRequest
	(*DeleteLinkRequest)(nil),         // 31: google.logging.v2.DeleteLinkRequest
	(*ListLinksRequest)(nil),          // 32: google.logging.v2.ListLinksRequest
	(*ListLinksResponse)(nil),         // 33: google.logging.v2.ListLinksResponse
	(*GetLinkRequest)(nil),            // 34: google.logging.v2.GetLinkRequest
	(*LogExclusion)(nil),              // 35: google.logging.v2.LogExclusion
	(*ListExclusionsRequest)(nil),     // 36: google.logging.v2.ListExclusionsRequest
	(*ListExclusionsResponse)(nil),    // 37: google.logging.v2.ListExclusionsResponse
	(*GetExclusionRequest)(nil),       // 38: google.logging.v2.GetExclusionRequest
	(*CreateExclusionRequest)(nil),    // 39: google.logging.v2.CreateExclusionRequest
	(*UpdateExclusionRequest)(nil),    // 40: google.logging.v2.UpdateExclusionRequest
	(*DeleteExclusionRequest)(nil),    // 41: google.logging.v2.DeleteExclusionRequest
	(*GetCmekSettingsRequest)(nil),    // 42: google.logging.v2.GetCmekSettingsRequest
	(*UpdateCmekSettingsRequest)(nil), // 43: google.logging.v2.UpdateCmekSettingsRequest
	(*CmekSettings)(nil),              // 44: google.logging.v2.CmekSettings
	(*GetSettingsRequest)(nil),        // 45: google.logging.v2.GetSettingsRequest
	(*UpdateSettingsRequest)(nil),     // 46: google.logging.v2.UpdateSettingsRequest
	(*Settings)(nil),                  // 47: google.logging.v2.Settings
	(*CopyLogEntriesRequest)(nil),     // 48: google.logging.v2.CopyLogEntriesRequest
	(*CopyLogEntriesMetadata)(nil),    // 49: google.logging.v2.CopyLogEntriesMetadata
	(*CopyLogEntriesResponse)(nil),    // 50: google.logging.v2.CopyLogEntriesResponse
	(*BucketMetadata)(nil),            // 51: google.logging.v2.BucketMetadata
	(*LinkMetadata)(nil),              // 52: google.logging.v2.LinkMetadata
	(*LocationMetadata)(nil),          // 53: google.logging.v2.LocationMetadata
	(*timestamppb.Timestamp)(nil),     // 54: google.protobuf.Timestamp
	(*fieldmaskpb.FieldMask)(nil),     // 55: google.protobuf.FieldMask
	(*longrunningpb.Operation)(nil),   // 56: google.longrunning.Operation
	(*emptypb.Empty)(nil),             // 57: google.protobuf.Empty
}
var file_google_logging_v2_logging_config_proto_depIdxs = []int32{
	2,  // 0: google.logging.v2.IndexConfig.type:type_name -> google.logging.v2.IndexType
	54, // 1: google.logging.v2.IndexConfig.create_time:type_name -> google.protobuf.Timestamp
	54, // 2: google.logging.v2.LogBucket.create_time:type_name -> google.protobuf.Timestamp
	54, // 3: google.logging.v2.LogBucket.update_time:type_name -> google.protobuf.Timestamp
	1,  // 4: google.logging.v2.LogBucket.lifecycle_state:type_name -> google.logging.v2.LifecycleState
	4,  // 5: google.logging.v2.LogBucket.index_configs:type_name -> google.logging.v2.IndexConfig
	44, // 6: google.logging.v2.LogBucket.cmek_settings:type_name -> google.logging.v2.CmekSettings
	54, // 7: google.logging.v2.LogView.create_time:type_name -> google.protobuf.Timestamp
	54, // 8: google.logging.v2.LogView.update_time:type_name -> google.protobuf.Timestamp
	35, // 9: google.logging.v2.LogSink.exclusions:type_name -> google.logging.v2.LogExclusion
	3,  // 10: google.logging.v2.LogSink.output_version_format:type_name -> google.logging.v2.LogSink.VersionFormat
	10, // 11: google.logging.v2.LogSink.bigquery_options:type_name -> google.logging.v2.BigQueryOptions
	54, // 12: google.logging.v2.LogSink.create_time:type_name -> google.protobuf.Timestamp
	54, // 13: google.logging.v2.LogSink.update_time:type_name -> google.protobuf.Timestamp
	54, // 14: google.logging.v2.Link.create_time:type_name -> google.protobuf.Timestamp
	1,  // 15: google.logging.v2.Link.lifecycle_state:type_name -> google.logging.v2.LifecycleState
	8,  // 16: google.logging.v2.Link.bigquery_dataset:type_name -> google.logging.v2.BigQueryDataset
	5,  // 17: google.logging.v2.ListBucketsResponse.buckets:type_name -> google.logging.v2.LogBucket
	5,  // 18: google.logging.v2.CreateBucketRequest.bucket:type_name -> google.logging.v2.LogBucket
	5,  // 19: google.logging.v2.UpdateBucketRequest.bucket:type_name -> google.logging.v2.LogBucket
	55, // 20: google.logging.v2.UpdateBucketRequest.update_mask:type_name -> google.protobuf.FieldMask
	6,  // 21: google.logging.v2.ListViewsResponse.views:type_name -> google.logging.v2.LogView
	6,  // 22: google.logging.v2.CreateViewRequest.view:type_name -> google.logging.v2.LogView
	6,  // 23: google.logging.v2.UpdateViewRequest.view:type_name -> google.logging.v2.LogView
	55, // 24: google.logging.v2.UpdateViewRequest.update_mask:type_name -> google.protobuf.FieldMask
	7,  // 25: google.logging.v2.ListSinksResponse.sinks:type_name -> google.logging.v2.LogSink
	7,  // 26: google.logging.v2.CreateSinkRequest.sink:type_name -> google.logging.v2.LogSink
	7,  // 27: google.logging.v2.UpdateSinkRequest.sink:type_name -> google.logging.v2.LogSink
	55, // 28: google.logging.v2.UpdateSinkRequest.update_mask:type_name -> google.protobuf.FieldMask
	9,  // 29: google.logging.v2.CreateLinkRequest.link:type_name -> google.logging.v2.Link
	9,  // 30: google.logging.v2.ListLinksResponse.links:type_name -> google.logging.v2.Link
	54, // 31: google.logging.v2.LogExclusion.create_time:type_name -> google.protobuf.Timestamp
	54, // 32: google.logging.v2.LogExclusion.update_time:type_name -> google.protobuf.Timestamp
	35, // 33: google.logging.v2.ListExclusionsResponse.exclusions:type_name -> google.logging.v2.LogExclusion
	35, // 34: google.logging.v2.CreateExclusionRequest.exclusion:type_name -> google.logging.v2.LogExclusion
	35, // 35: google.logging.v2.UpdateExclusionRequest.exclusion:type_name -> google.logging.v2.LogExclusion
	55, // 36: google.logging.v2.UpdateExclusionRequest.update_mask:type_name -> google.protobuf.FieldMask
	44, // 37: google.logging.v2.UpdateCmekSettingsRequest.cmek_settings:type_name -> google.logging.v2.CmekSettings
	55, // 38: google.logging.v2.UpdateCmekSettingsRequest.update_mask:type_name -> google.protobuf.FieldMask
	47, // 39: google.logging.v2.UpdateSettingsRequest.settings:type_name -> google.logging.v2.Settings
	55, // 40: google.logging.v2.UpdateSettingsRequest.update_mask:type_name -> google.protobuf.FieldMask
	54, // 41: google.logging.v2.CopyLogEntriesMetadata.start_time:type_name -> google.protobuf.Timestamp
	54, // 42: google.logging.v2.CopyLogEntriesMetadata.end_time:type_name -> google.protobuf.Timestamp
	0,  // 43: google.logging.v2.CopyLogEntriesMetadata.state:type_name -> google.logging.v2.OperationState
	48, // 44: google.logging.v2.CopyLogEntriesMetadata.request:type_name -> google.logging.v2.CopyLogEntriesRequest
	54, // 45: google.logging.v2.BucketMetadata.start_time:type_name -> google.protobuf.Timestamp
	54, // 46: google.logging.v2.BucketMetadata.end_time:type_name -> google.protobuf.Timestamp
	0,  // 47: google.logging.v2.BucketMetadata.state:type_name -> google.logging.v2.OperationState
	13, // 48: google.logging.v2.BucketMetadata.create_bucket_request:type_name -> google.logging.v2.CreateBucketRequest
	14, // 49: google.logging.v2.BucketMetadata.update_bucket_request:type_name -> google.logging.v2.UpdateBucketRequest
	54, // 50: google.logging.v2.LinkMetadata.start_time:type_name -> google.protobuf.Timestamp
	54, // 51: google.logging.v2.LinkMetadata.end_time:type_name -> google.protobuf.Timestamp
	0,  // 52: google.logging.v2.LinkMetadata.state:type_name -> google.logging.v2.OperationState
	30, // 53: google.logging.v2.LinkMetadata.create_link_request:type_name -> google.logging.v2.CreateLinkRequest
	31, // 54: google.logging.v2.LinkMetadata.delete_link_request:type_name -> google.logging.v2.DeleteLinkRequest
	11, // 55: google.logging.v2.ConfigServiceV2.ListBuckets:input_type -> google.logging.v2.ListBucketsRequest
	15, // 56: google.logging.v2.ConfigServiceV2.GetBucket:input_type -> google.logging.v2.GetBucketRequest
	13, // 57: google.logging.v2.ConfigServiceV2.CreateBucketAsync:input_type -> google.logging.v2.CreateBucketRequest
	14, // 58: google.logging.v2.ConfigServiceV2.UpdateBucketAsync:input_type -> google.logging.v2.UpdateBucketRequest
	13, // 59: google.logging.v2.ConfigServiceV2.CreateBucket:input_type -> google.logging.v2.CreateBucketRequest
	14, // 60: google.logging.v2.ConfigServiceV2.UpdateBucket:input_type -> google.logging.v2.UpdateBucketRequest
	16, // 61: google.logging.v2.ConfigServiceV2.DeleteBucket:input_type -> google.logging.v2.DeleteBucketRequest
	17, // 62: google.logging.v2.ConfigServiceV2.UndeleteBucket:input_type -> google.logging.v2.UndeleteBucketRequest
	18, // 63: google.logging.v2.ConfigServiceV2.ListViews:input_type -> google.logging.v2.ListViewsRequest
	22, // 64: google.logging.v2.ConfigServiceV2.GetView:input_type -> google.logging.v2.GetViewRequest
	20, // 65: google.logging.v2.ConfigServiceV2.CreateView:input_type -> google.logging.v2.CreateViewRequest
	21, // 66: google.logging.v2.ConfigServiceV2.UpdateView:input_type -> google.logging.v2.UpdateViewRequest
	23, // 67: google.logging.v2.ConfigServiceV2.DeleteView:input_type -> google.logging.v2.DeleteViewRequest
	24, // 68: google.logging.v2.ConfigServiceV2.ListSinks:input_type -> google.logging.v2.ListSinksRequest
	26, // 69: google.logging.v2.ConfigServiceV2.GetSink:input_type -> google.logging.v2.GetSinkRequest
	27, // 70: google.logging.v2.ConfigServiceV2.CreateSink:input_type -> google.logging.v2.CreateSinkRequest
	28, // 71: google.logging.v2.ConfigServiceV2.UpdateSink:input_type -> google.logging.v2.UpdateSinkRequest
	29, // 72: google.logging.v2.ConfigServiceV2.DeleteSink:input_type -> google.logging.v2.DeleteSinkRequest
	30, // 73: google.logging.v2.ConfigServiceV2.CreateLink:input_type -> google.logging.v2.CreateLinkRequest
	31, // 74: google.logging.v2.ConfigServiceV2.DeleteLink:input_type -> google.logging.v2.DeleteLinkRequest
	32, // 75: google.logging.v2.ConfigServiceV2.ListLinks:input_type -> google.logging.v2.ListLinksRequest
	34, // 76: google.logging.v2.ConfigServiceV2.GetLink:input_type -> google.logging.v2.GetLinkRequest
	36, // 77: google.logging.v2.ConfigServiceV2.ListExclusions:input_type -> google.logging.v2.ListExclusionsRequest
	38, // 78: google.logging.v2.ConfigServiceV2.GetExclusion:input_type -> google.logging.v2.GetExclusionRequest
	39, // 79: google.logging.v2.ConfigServiceV2.CreateExclusion:input_type -> google.logging.v2.CreateExclusionRequest
	40, // 80: google.logging.v2.ConfigServiceV2.UpdateExclusion:input_type -> google.logging.v2.UpdateExclusionRequest
	41, // 81: google.logging.v2.ConfigServiceV2.DeleteExclusion:input_type -> google.logging.v2.DeleteExclusionRequest
	42, // 82: google.logging.v2.ConfigServiceV2.GetCmekSettings:input_type -> google.logging.v2.GetCmekSettingsRequest
	43, // 83: google.logging.v2.ConfigServiceV2.UpdateCmekSettings:input_type -> google.logging.v2.UpdateCmekSettingsRequest
	45, // 84: google.logging.v2.ConfigServiceV2.GetSettings:input_type -> google.logging.v2.GetSettingsRequest
	46, // 85: google.logging.v2.ConfigServiceV2.UpdateSettings:input_type -> google.logging.v2.UpdateSettingsRequest
	48, // 86: google.logging.v2.ConfigServiceV2.CopyLogEntries:input_type -> google.logging.v2.CopyLogEntriesRequest
	12, // 87: google.logging.v2.ConfigServiceV2.ListBuckets:output_type -> google.logging.v2.ListBucketsResponse
	5,  // 88: google.logging.v2.ConfigServiceV2.GetBucket:output_type -> google.logging.v2.LogBucket
	56, // 89: google.logging.v2.ConfigServiceV2.CreateBucketAsync:output_type -> google.longrunning.Operation
	56, // 90: google.logging.v2.ConfigServiceV2.UpdateBucketAsync:output_type -> google.longrunning.Operation
	5,  // 91: google.logging.v2.ConfigServiceV2.CreateBucket:output_type -> google.logging.v2.LogBucket
	5,  // 92: google.logging.v2.ConfigServiceV2.UpdateBucket:output_type -> google.logging.v2.LogBucket
	57, // 93: google.logging.v2.ConfigServiceV2.DeleteBucket:output_type -> google.protobuf.Empty
	57, // 94: google.logging.v2.ConfigServiceV2.UndeleteBucket:output_type -> google.protobuf.Empty
	19, // 95: google.logging.v2.ConfigServiceV2.ListViews:output_type -> google.logging.v2.ListViewsResponse
	6,  // 96: google.logging.v2.ConfigServiceV2.GetView:output_type -> google.logging.v2.LogView
	6,  // 97: google.logging.v2.ConfigServiceV2.CreateView:output_type -> google.logging.v2.LogView
	6,  // 98: google.logging.v2.ConfigServiceV2.UpdateView:output_type -> google.logging.v2.LogView
	57, // 99: google.logging.v2.ConfigServiceV2.DeleteView:output_type -> google.protobuf.Empty
	25, // 100: google.logging.v2.ConfigServiceV2.ListSinks:output_type -> google.logging.v2.ListSinksResponse
	7,  // 101: google.logging.v2.ConfigServiceV2.GetSink:output_type -> google.logging.v2.LogSink
	7,  // 102: google.logging.v2.ConfigServiceV2.CreateSink:output_type -> google.logging.v2.LogSink
	7,  // 103: google.logging.v2.ConfigServiceV2.UpdateSink:output_type -> google.logging.v2.LogSink
	57, // 104: google.logging.v2.ConfigServiceV2.DeleteSink:output_type -> google.protobuf.Empty
	56, // 105: google.logging.v2.ConfigServiceV2.CreateLink:output_type -> google.longrunning.Operation
	56, // 106: google.logging.v2.ConfigServiceV2.DeleteLink:output_type -> google.longrunning.Operation
	33, // 107: google.logging.v2.ConfigServiceV2.ListLinks:output_type -> google.logging.v2.ListLinksResponse
	9,  // 108: google.logging.v2.ConfigServiceV2.GetLink:output_type -> google.logging.v2.Link
	37, // 109: google.logging.v2.ConfigServiceV2.ListExclusions:output_type -> google.logging.v2.ListExclusionsResponse
	35, // 110: google.logging.v2.ConfigServiceV2.GetExclusion:output_type -> google.logging.v2.LogExclusion
	35, // 111: google.logging.v2.ConfigServiceV2.CreateExclusion:output_type -> google.logging.v2.LogExclusion
	35, // 112: google.logging.v2.ConfigServiceV2.UpdateExclusion:output_type -> google.logging.v2.LogExclusion
	57, // 113: google.logging.v2.ConfigServiceV2.DeleteExclusion:output_type -> google.protobuf.Empty
	44, // 114: google.logging.v2.ConfigServiceV2.GetCmekSettings:output_type -> google.logging.v2.CmekSettings
	44, // 115: google.logging.v2.ConfigServiceV2.UpdateCmekSettings:output_type -> google.logging.v2.CmekSettings
	47, // 116: google.logging.v2.ConfigServiceV2.GetSettings:output_type -> google.logging.v2.Settings
	47, // 117: google.logging.v2.ConfigServiceV2.UpdateSettings:output_type -> google.logging.v2.Settings
	56, // 118: google.logging.v2.ConfigServiceV2.CopyLogEntries:output_type -> google.longrunning.Operation
	87, // [87:119] is the sub-list for method output_type
	55, // [55:87] is the sub-list for method input_type
	55, // [55:55] is the sub-list for extension type_name
	55, // [55:55] is the sub-list for extension extendee
	0,  // [0:55] is the sub-list for field type_name
}

func init() { file_google_logging_v2_logging_config_proto_init() }
func file_google_logging_v2_logging_config_proto_init() {
	if File_google_logging_v2_logging_config_proto != nil {
		return
	}
	file_google_logging_v2_logging_config_proto_msgTypes[3].OneofWrappers = []any{
		(*LogSink_BigqueryOptions)(nil),
	}
	file_google_logging_v2_logging_config_proto_msgTypes[47].OneofWrappers = []any{
		(*BucketMetadata_CreateBucketRequest)(nil),
		(*BucketMetadata_UpdateBucketRequest)(nil),
	}
	file_google_logging_v2_logging_config_proto_msgTypes[48].OneofWrappers = []any{
		(*LinkMetadata_CreateLinkRequest)(nil),
		(*LinkMetadata_DeleteLinkRequest)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_logging_v2_logging_config_proto_rawDesc), len(file_google_logging_v2_logging_config_proto_rawDesc)),
			NumEnums:      4,
			NumMessages:   50,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_google_logging_v2_logging_config_proto_goTypes,
		DependencyIndexes: file_google_logging_v2_logging_config_proto_depIdxs,
		EnumInfos:         file_google_logging_v2_logging_config_proto_enumTypes,
		MessageInfos:      file_google_logging_v2_logging_config_proto_msgTypes,
	}.Build()
	File_google_logging_v2_logging_config_proto = out.File
	file_google_logging_v2_logging_config_proto_goTypes = nil
	file_google_logging_v2_logging_config_proto_depIdxs = nil
}
