// 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/monitoring/v3/uptime.proto

package monitoringpb

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

	_ "google.golang.org/genproto/googleapis/api/annotations"
	monitoredres "google.golang.org/genproto/googleapis/api/monitoredres"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	durationpb "google.golang.org/protobuf/types/known/durationpb"
)

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

// The regions from which an Uptime check can be run.
type UptimeCheckRegion int32

const (
	// Default value if no region is specified. Will result in Uptime checks
	// running from all regions.
	UptimeCheckRegion_REGION_UNSPECIFIED UptimeCheckRegion = 0
	// Allows checks to run from locations within the United States of America.
	UptimeCheckRegion_USA UptimeCheckRegion = 1
	// Allows checks to run from locations within the continent of Europe.
	UptimeCheckRegion_EUROPE UptimeCheckRegion = 2
	// Allows checks to run from locations within the continent of South
	// America.
	UptimeCheckRegion_SOUTH_AMERICA UptimeCheckRegion = 3
	// Allows checks to run from locations within the Asia Pacific area (ex:
	// Singapore).
	UptimeCheckRegion_ASIA_PACIFIC UptimeCheckRegion = 4
	// Allows checks to run from locations within the western United States of
	// America
	UptimeCheckRegion_USA_OREGON UptimeCheckRegion = 5
	// Allows checks to run from locations within the central United States of
	// America
	UptimeCheckRegion_USA_IOWA UptimeCheckRegion = 6
	// Allows checks to run from locations within the eastern United States of
	// America
	UptimeCheckRegion_USA_VIRGINIA UptimeCheckRegion = 7
)

// Enum value maps for UptimeCheckRegion.
var (
	UptimeCheckRegion_name = map[int32]string{
		0: "REGION_UNSPECIFIED",
		1: "USA",
		2: "EUROPE",
		3: "SOUTH_AMERICA",
		4: "ASIA_PACIFIC",
		5: "USA_OREGON",
		6: "USA_IOWA",
		7: "USA_VIRGINIA",
	}
	UptimeCheckRegion_value = map[string]int32{
		"REGION_UNSPECIFIED": 0,
		"USA":                1,
		"EUROPE":             2,
		"SOUTH_AMERICA":      3,
		"ASIA_PACIFIC":       4,
		"USA_OREGON":         5,
		"USA_IOWA":           6,
		"USA_VIRGINIA":       7,
	}
)

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

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

func (UptimeCheckRegion) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[0].Descriptor()
}

func (UptimeCheckRegion) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[0]
}

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

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

// The supported resource types that can be used as values of
// `group_resource.resource_type`.
// `INSTANCE` includes `gce_instance` and `aws_ec2_instance` resource types.
// The resource types `gae_app` and `uptime_url` are not valid here because
// group checks on App Engine modules and URLs are not allowed.
type GroupResourceType int32

const (
	// Default value (not valid).
	GroupResourceType_RESOURCE_TYPE_UNSPECIFIED GroupResourceType = 0
	// A group of instances from Google Cloud Platform (GCP) or
	// Amazon Web Services (AWS).
	GroupResourceType_INSTANCE GroupResourceType = 1
	// A group of Amazon ELB load balancers.
	GroupResourceType_AWS_ELB_LOAD_BALANCER GroupResourceType = 2
)

// Enum value maps for GroupResourceType.
var (
	GroupResourceType_name = map[int32]string{
		0: "RESOURCE_TYPE_UNSPECIFIED",
		1: "INSTANCE",
		2: "AWS_ELB_LOAD_BALANCER",
	}
	GroupResourceType_value = map[string]int32{
		"RESOURCE_TYPE_UNSPECIFIED": 0,
		"INSTANCE":                  1,
		"AWS_ELB_LOAD_BALANCER":     2,
	}
)

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

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

func (GroupResourceType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[1].Descriptor()
}

func (GroupResourceType) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[1]
}

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

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

// Operational states for an internal checker.
type InternalChecker_State int32

const (
	// An internal checker should never be in the unspecified state.
	InternalChecker_UNSPECIFIED InternalChecker_State = 0
	// The checker is being created, provisioned, and configured. A checker in
	// this state can be returned by `ListInternalCheckers` or
	// `GetInternalChecker`, as well as by examining the [long running
	// Operation](https://cloud.google.com/apis/design/design_patterns#long_running_operations)
	// that created it.
	InternalChecker_CREATING InternalChecker_State = 1
	// The checker is running and available for use. A checker in this state
	// can be returned by `ListInternalCheckers` or `GetInternalChecker` as
	// well as by examining the [long running
	// Operation](https://cloud.google.com/apis/design/design_patterns#long_running_operations)
	// that created it.
	// If a checker is being torn down, it is neither visible nor usable, so
	// there is no "deleting" or "down" state.
	InternalChecker_RUNNING InternalChecker_State = 2
)

// Enum value maps for InternalChecker_State.
var (
	InternalChecker_State_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "CREATING",
		2: "RUNNING",
	}
	InternalChecker_State_value = map[string]int32{
		"UNSPECIFIED": 0,
		"CREATING":    1,
		"RUNNING":     2,
	}
)

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

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

func (InternalChecker_State) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[2].Descriptor()
}

func (InternalChecker_State) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[2]
}

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

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

// What kind of checkers are available to be used by the check.
type UptimeCheckConfig_CheckerType int32

const (
	// The default checker type. Currently converted to `STATIC_IP_CHECKERS`
	// on creation, the default conversion behavior may change in the future.
	UptimeCheckConfig_CHECKER_TYPE_UNSPECIFIED UptimeCheckConfig_CheckerType = 0
	// `STATIC_IP_CHECKERS` are used for uptime checks that perform egress
	// across the public internet. `STATIC_IP_CHECKERS` use the static IP
	// addresses returned by `ListUptimeCheckIps`.
	UptimeCheckConfig_STATIC_IP_CHECKERS UptimeCheckConfig_CheckerType = 1
	// `VPC_CHECKERS` are used for uptime checks that perform egress using
	// Service Directory and private network access. When using `VPC_CHECKERS`,
	// the monitored resource type must be `servicedirectory_service`.
	UptimeCheckConfig_VPC_CHECKERS UptimeCheckConfig_CheckerType = 3
)

// Enum value maps for UptimeCheckConfig_CheckerType.
var (
	UptimeCheckConfig_CheckerType_name = map[int32]string{
		0: "CHECKER_TYPE_UNSPECIFIED",
		1: "STATIC_IP_CHECKERS",
		3: "VPC_CHECKERS",
	}
	UptimeCheckConfig_CheckerType_value = map[string]int32{
		"CHECKER_TYPE_UNSPECIFIED": 0,
		"STATIC_IP_CHECKERS":       1,
		"VPC_CHECKERS":             3,
	}
)

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

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

func (UptimeCheckConfig_CheckerType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[3].Descriptor()
}

func (UptimeCheckConfig_CheckerType) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[3]
}

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

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

// The HTTP request method options.
type UptimeCheckConfig_HttpCheck_RequestMethod int32

const (
	// No request method specified.
	UptimeCheckConfig_HttpCheck_METHOD_UNSPECIFIED UptimeCheckConfig_HttpCheck_RequestMethod = 0
	// GET request.
	UptimeCheckConfig_HttpCheck_GET UptimeCheckConfig_HttpCheck_RequestMethod = 1
	// POST request.
	UptimeCheckConfig_HttpCheck_POST UptimeCheckConfig_HttpCheck_RequestMethod = 2
)

// Enum value maps for UptimeCheckConfig_HttpCheck_RequestMethod.
var (
	UptimeCheckConfig_HttpCheck_RequestMethod_name = map[int32]string{
		0: "METHOD_UNSPECIFIED",
		1: "GET",
		2: "POST",
	}
	UptimeCheckConfig_HttpCheck_RequestMethod_value = map[string]int32{
		"METHOD_UNSPECIFIED": 0,
		"GET":                1,
		"POST":               2,
	}
)

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

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

func (UptimeCheckConfig_HttpCheck_RequestMethod) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[4].Descriptor()
}

func (UptimeCheckConfig_HttpCheck_RequestMethod) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[4]
}

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

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

// Header options corresponding to the content type of a HTTP request body.
type UptimeCheckConfig_HttpCheck_ContentType int32

const (
	// No content type specified.
	UptimeCheckConfig_HttpCheck_TYPE_UNSPECIFIED UptimeCheckConfig_HttpCheck_ContentType = 0
	// `body` is in URL-encoded form. Equivalent to setting the `Content-Type`
	// to `application/x-www-form-urlencoded` in the HTTP request.
	UptimeCheckConfig_HttpCheck_URL_ENCODED UptimeCheckConfig_HttpCheck_ContentType = 1
	// `body` is in `custom_content_type` form. Equivalent to setting the
	// `Content-Type` to the contents of `custom_content_type` in the HTTP
	// request.
	UptimeCheckConfig_HttpCheck_USER_PROVIDED UptimeCheckConfig_HttpCheck_ContentType = 2
)

// Enum value maps for UptimeCheckConfig_HttpCheck_ContentType.
var (
	UptimeCheckConfig_HttpCheck_ContentType_name = map[int32]string{
		0: "TYPE_UNSPECIFIED",
		1: "URL_ENCODED",
		2: "USER_PROVIDED",
	}
	UptimeCheckConfig_HttpCheck_ContentType_value = map[string]int32{
		"TYPE_UNSPECIFIED": 0,
		"URL_ENCODED":      1,
		"USER_PROVIDED":    2,
	}
)

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

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

func (UptimeCheckConfig_HttpCheck_ContentType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[5].Descriptor()
}

func (UptimeCheckConfig_HttpCheck_ContentType) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[5]
}

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

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

// An HTTP status code class.
type UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass int32

const (
	// Default value that matches no status codes.
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_UNSPECIFIED UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass = 0
	// The class of status codes between 100 and 199.
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_1XX UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass = 100
	// The class of status codes between 200 and 299.
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_2XX UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass = 200
	// The class of status codes between 300 and 399.
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_3XX UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass = 300
	// The class of status codes between 400 and 499.
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_4XX UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass = 400
	// The class of status codes between 500 and 599.
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_5XX UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass = 500
	// The class of all status codes.
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_ANY UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass = 1000
)

// Enum value maps for UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass.
var (
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass_name = map[int32]string{
		0:    "STATUS_CLASS_UNSPECIFIED",
		100:  "STATUS_CLASS_1XX",
		200:  "STATUS_CLASS_2XX",
		300:  "STATUS_CLASS_3XX",
		400:  "STATUS_CLASS_4XX",
		500:  "STATUS_CLASS_5XX",
		1000: "STATUS_CLASS_ANY",
	}
	UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass_value = map[string]int32{
		"STATUS_CLASS_UNSPECIFIED": 0,
		"STATUS_CLASS_1XX":         100,
		"STATUS_CLASS_2XX":         200,
		"STATUS_CLASS_3XX":         300,
		"STATUS_CLASS_4XX":         400,
		"STATUS_CLASS_5XX":         500,
		"STATUS_CLASS_ANY":         1000,
	}
)

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

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

func (UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[6].Descriptor()
}

func (UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[6]
}

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

// Deprecated: Use UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass.Descriptor instead.
func (UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass) EnumDescriptor() ([]byte, []int) {
	return file_google_monitoring_v3_uptime_proto_rawDescGZIP(), []int{2, 2, 1, 0}
}

// Type of authentication.
type UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType int32

const (
	// Default value, will result in OIDC Authentication.
	UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_SERVICE_AGENT_AUTHENTICATION_TYPE_UNSPECIFIED UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType = 0
	// OIDC Authentication
	UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_OIDC_TOKEN UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType = 1
)

// Enum value maps for UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType.
var (
	UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType_name = map[int32]string{
		0: "SERVICE_AGENT_AUTHENTICATION_TYPE_UNSPECIFIED",
		1: "OIDC_TOKEN",
	}
	UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType_value = map[string]int32{
		"SERVICE_AGENT_AUTHENTICATION_TYPE_UNSPECIFIED": 0,
		"OIDC_TOKEN": 1,
	}
)

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

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

func (UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[7].Descriptor()
}

func (UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[7]
}

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

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

// Options to perform content matching.
type UptimeCheckConfig_ContentMatcher_ContentMatcherOption int32

const (
	// No content matcher type specified (maintained for backward
	// compatibility, but deprecated for future use).
	// Treated as `CONTAINS_STRING`.
	UptimeCheckConfig_ContentMatcher_CONTENT_MATCHER_OPTION_UNSPECIFIED UptimeCheckConfig_ContentMatcher_ContentMatcherOption = 0
	// Selects substring matching. The match succeeds if the output contains
	// the `content` string.  This is the default value for checks without
	// a `matcher` option, or where the value of `matcher` is
	// `CONTENT_MATCHER_OPTION_UNSPECIFIED`.
	UptimeCheckConfig_ContentMatcher_CONTAINS_STRING UptimeCheckConfig_ContentMatcher_ContentMatcherOption = 1
	// Selects negation of substring matching. The match succeeds if the
	// output does _NOT_ contain the `content` string.
	UptimeCheckConfig_ContentMatcher_NOT_CONTAINS_STRING UptimeCheckConfig_ContentMatcher_ContentMatcherOption = 2
	// Selects regular-expression matching. The match succeeds if the output
	// matches the regular expression specified in the `content` string.
	// Regex matching is only supported for HTTP/HTTPS checks.
	UptimeCheckConfig_ContentMatcher_MATCHES_REGEX UptimeCheckConfig_ContentMatcher_ContentMatcherOption = 3
	// Selects negation of regular-expression matching. The match succeeds if
	// the output does _NOT_ match the regular expression specified in the
	// `content` string. Regex matching is only supported for HTTP/HTTPS
	// checks.
	UptimeCheckConfig_ContentMatcher_NOT_MATCHES_REGEX UptimeCheckConfig_ContentMatcher_ContentMatcherOption = 4
	// Selects JSONPath matching. See `JsonPathMatcher` for details on when
	// the match succeeds. JSONPath matching is only supported for HTTP/HTTPS
	// checks.
	UptimeCheckConfig_ContentMatcher_MATCHES_JSON_PATH UptimeCheckConfig_ContentMatcher_ContentMatcherOption = 5
	// Selects JSONPath matching. See `JsonPathMatcher` for details on when
	// the match succeeds. Succeeds when output does _NOT_ match as specified.
	// JSONPath is only supported for HTTP/HTTPS checks.
	UptimeCheckConfig_ContentMatcher_NOT_MATCHES_JSON_PATH UptimeCheckConfig_ContentMatcher_ContentMatcherOption = 6
)

// Enum value maps for UptimeCheckConfig_ContentMatcher_ContentMatcherOption.
var (
	UptimeCheckConfig_ContentMatcher_ContentMatcherOption_name = map[int32]string{
		0: "CONTENT_MATCHER_OPTION_UNSPECIFIED",
		1: "CONTAINS_STRING",
		2: "NOT_CONTAINS_STRING",
		3: "MATCHES_REGEX",
		4: "NOT_MATCHES_REGEX",
		5: "MATCHES_JSON_PATH",
		6: "NOT_MATCHES_JSON_PATH",
	}
	UptimeCheckConfig_ContentMatcher_ContentMatcherOption_value = map[string]int32{
		"CONTENT_MATCHER_OPTION_UNSPECIFIED": 0,
		"CONTAINS_STRING":                    1,
		"NOT_CONTAINS_STRING":                2,
		"MATCHES_REGEX":                      3,
		"NOT_MATCHES_REGEX":                  4,
		"MATCHES_JSON_PATH":                  5,
		"NOT_MATCHES_JSON_PATH":              6,
	}
)

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

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

func (UptimeCheckConfig_ContentMatcher_ContentMatcherOption) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[8].Descriptor()
}

func (UptimeCheckConfig_ContentMatcher_ContentMatcherOption) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[8]
}

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

// Deprecated: Use UptimeCheckConfig_ContentMatcher_ContentMatcherOption.Descriptor instead.
func (UptimeCheckConfig_ContentMatcher_ContentMatcherOption) EnumDescriptor() ([]byte, []int) {
	return file_google_monitoring_v3_uptime_proto_rawDescGZIP(), []int{2, 4, 0}
}

// Options to perform JSONPath content matching.
type UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption int32

const (
	// No JSONPath matcher type specified (not valid).
	UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JSON_PATH_MATCHER_OPTION_UNSPECIFIED UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption = 0
	// Selects 'exact string' matching. The match succeeds if the content at
	// the `json_path` within the output is exactly the same as the
	// `content` string.
	UptimeCheckConfig_ContentMatcher_JsonPathMatcher_EXACT_MATCH UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption = 1
	// Selects regular-expression matching. The match succeeds if the
	// content at the `json_path` within the output matches the regular
	// expression specified in the `content` string.
	UptimeCheckConfig_ContentMatcher_JsonPathMatcher_REGEX_MATCH UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption = 2
)

// Enum value maps for UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption.
var (
	UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption_name = map[int32]string{
		0: "JSON_PATH_MATCHER_OPTION_UNSPECIFIED",
		1: "EXACT_MATCH",
		2: "REGEX_MATCH",
	}
	UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption_value = map[string]int32{
		"JSON_PATH_MATCHER_OPTION_UNSPECIFIED": 0,
		"EXACT_MATCH":                          1,
		"REGEX_MATCH":                          2,
	}
)

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

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

func (UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption) Descriptor() protoreflect.EnumDescriptor {
	return file_google_monitoring_v3_uptime_proto_enumTypes[9].Descriptor()
}

func (UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption) Type() protoreflect.EnumType {
	return &file_google_monitoring_v3_uptime_proto_enumTypes[9]
}

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

// Deprecated: Use UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption.Descriptor instead.
func (UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption) EnumDescriptor() ([]byte, []int) {
	return file_google_monitoring_v3_uptime_proto_rawDescGZIP(), []int{2, 4, 0, 0}
}

// An internal checker allows Uptime checks to run on private/internal GCP
// resources.
//
// Deprecated: Marked as deprecated in google/monitoring/v3/uptime.proto.
type InternalChecker struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A unique resource name for this InternalChecker. The format is:
	//
	//	projects/[PROJECT_ID_OR_NUMBER]/internalCheckers/[INTERNAL_CHECKER_ID]
	//
	// `[PROJECT_ID_OR_NUMBER]` is the Cloud Monitoring Metrics Scope project for
	// the Uptime check config associated with the internal checker.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The checker's human-readable name. The display name
	// should be unique within a Cloud Monitoring Metrics Scope in order to make
	// it easier to identify; however, uniqueness is not enforced.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// The [GCP VPC network](https://cloud.google.com/vpc/docs/vpc) where the
	// internal resource lives (ex: "default").
	Network string `protobuf:"bytes,3,opt,name=network,proto3" json:"network,omitempty"`
	// The GCP zone the Uptime check should egress from. Only respected for
	// internal Uptime checks, where internal_network is specified.
	GcpZone string `protobuf:"bytes,4,opt,name=gcp_zone,json=gcpZone,proto3" json:"gcp_zone,omitempty"`
	// The GCP project ID where the internal checker lives. Not necessary
	// the same as the Metrics Scope project.
	PeerProjectId string `protobuf:"bytes,6,opt,name=peer_project_id,json=peerProjectId,proto3" json:"peer_project_id,omitempty"`
	// The current operational state of the internal checker.
	State         InternalChecker_State `protobuf:"varint,7,opt,name=state,proto3,enum=google.monitoring.v3.InternalChecker_State" json:"state,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*InternalChecker) ProtoMessage() {}

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

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

func (x *InternalChecker) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *InternalChecker) GetNetwork() string {
	if x != nil {
		return x.Network
	}
	return ""
}

func (x *InternalChecker) GetGcpZone() string {
	if x != nil {
		return x.GcpZone
	}
	return ""
}

func (x *InternalChecker) GetPeerProjectId() string {
	if x != nil {
		return x.PeerProjectId
	}
	return ""
}

func (x *InternalChecker) GetState() InternalChecker_State {
	if x != nil {
		return x.State
	}
	return InternalChecker_UNSPECIFIED
}

// Describes a Synthetic Monitor to be invoked by Uptime.
type SyntheticMonitorTarget struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Specifies a Synthetic Monitor's execution stack.
	//
	// Types that are valid to be assigned to Target:
	//
	//	*SyntheticMonitorTarget_CloudFunctionV2
	Target        isSyntheticMonitorTarget_Target `protobuf_oneof:"target"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SyntheticMonitorTarget) ProtoMessage() {}

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

func (x *SyntheticMonitorTarget) GetTarget() isSyntheticMonitorTarget_Target {
	if x != nil {
		return x.Target
	}
	return nil
}

func (x *SyntheticMonitorTarget) GetCloudFunctionV2() *SyntheticMonitorTarget_CloudFunctionV2Target {
	if x != nil {
		if x, ok := x.Target.(*SyntheticMonitorTarget_CloudFunctionV2); ok {
			return x.CloudFunctionV2
		}
	}
	return nil
}

type isSyntheticMonitorTarget_Target interface {
	isSyntheticMonitorTarget_Target()
}

type SyntheticMonitorTarget_CloudFunctionV2 struct {
	// Target a Synthetic Monitor GCFv2 instance.
	CloudFunctionV2 *SyntheticMonitorTarget_CloudFunctionV2Target `protobuf:"bytes,1,opt,name=cloud_function_v2,json=cloudFunctionV2,proto3,oneof"`
}

func (*SyntheticMonitorTarget_CloudFunctionV2) isSyntheticMonitorTarget_Target() {}

// This message configures which resources and services to monitor for
// availability.
type UptimeCheckConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Identifier. A unique resource name for this Uptime check configuration. The
	// format is:
	//
	//	projects/[PROJECT_ID_OR_NUMBER]/uptimeCheckConfigs/[UPTIME_CHECK_ID]
	//
	// `[PROJECT_ID_OR_NUMBER]` is the Workspace host project associated with the
	// Uptime check.
	//
	// This field should be omitted when creating the Uptime check configuration;
	// on create, the resource name is assigned by the server and included in the
	// response.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// A human-friendly name for the Uptime check configuration. The display name
	// should be unique within a Cloud Monitoring Workspace in order to make it
	// easier to identify; however, uniqueness is not enforced. Required.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// The resource the check is checking. Required.
	//
	// Types that are valid to be assigned to Resource:
	//
	//	*UptimeCheckConfig_MonitoredResource
	//	*UptimeCheckConfig_ResourceGroup_
	//	*UptimeCheckConfig_SyntheticMonitor
	Resource isUptimeCheckConfig_Resource `protobuf_oneof:"resource"`
	// The type of Uptime check request.
	//
	// Types that are valid to be assigned to CheckRequestType:
	//
	//	*UptimeCheckConfig_HttpCheck_
	//	*UptimeCheckConfig_TcpCheck_
	CheckRequestType isUptimeCheckConfig_CheckRequestType `protobuf_oneof:"check_request_type"`
	// How often, in seconds, the Uptime check is performed.
	// Currently, the only supported values are `60s` (1 minute), `300s`
	// (5 minutes), `600s` (10 minutes), and `900s` (15 minutes). Optional,
	// defaults to `60s`.
	Period *durationpb.Duration `protobuf:"bytes,7,opt,name=period,proto3" json:"period,omitempty"`
	// The maximum amount of time to wait for the request to complete (must be
	// between 1 and 60 seconds). Required.
	Timeout *durationpb.Duration `protobuf:"bytes,8,opt,name=timeout,proto3" json:"timeout,omitempty"`
	// The content that is expected to appear in the data returned by the target
	// server against which the check is run.  Currently, only the first entry
	// in the `content_matchers` list is supported, and additional entries will
	// be ignored. This field is optional and should only be specified if a
	// content match is required as part of the/ Uptime check.
	ContentMatchers []*UptimeCheckConfig_ContentMatcher `protobuf:"bytes,9,rep,name=content_matchers,json=contentMatchers,proto3" json:"content_matchers,omitempty"`
	// The type of checkers to use to execute the Uptime check.
	CheckerType UptimeCheckConfig_CheckerType `protobuf:"varint,17,opt,name=checker_type,json=checkerType,proto3,enum=google.monitoring.v3.UptimeCheckConfig_CheckerType" json:"checker_type,omitempty"`
	// The list of regions from which the check will be run.
	// Some regions contain one location, and others contain more than one.
	// If this field is specified, enough regions must be provided to include a
	// minimum of 3 locations.  Not specifying this field will result in Uptime
	// checks running from all available regions.
	SelectedRegions []UptimeCheckRegion `protobuf:"varint,10,rep,packed,name=selected_regions,json=selectedRegions,proto3,enum=google.monitoring.v3.UptimeCheckRegion" json:"selected_regions,omitempty"`
	// If this is `true`, then checks are made only from the 'internal_checkers'.
	// If it is `false`, then checks are made only from the 'selected_regions'.
	// It is an error to provide 'selected_regions' when is_internal is `true`,
	// or to provide 'internal_checkers' when is_internal is `false`.
	//
	// Deprecated: Marked as deprecated in google/monitoring/v3/uptime.proto.
	IsInternal bool `protobuf:"varint,15,opt,name=is_internal,json=isInternal,proto3" json:"is_internal,omitempty"`
	// The internal checkers that this check will egress from. If `is_internal` is
	// `true` and this list is empty, the check will egress from all the
	// InternalCheckers configured for the project that owns this
	// `UptimeCheckConfig`.
	//
	// Deprecated: Marked as deprecated in google/monitoring/v3/uptime.proto.
	InternalCheckers []*InternalChecker `protobuf:"bytes,14,rep,name=internal_checkers,json=internalCheckers,proto3" json:"internal_checkers,omitempty"`
	// User-supplied key/value data to be used for organizing and
	// identifying the `UptimeCheckConfig` objects.
	//
	// The field can contain up to 64 entries. Each key and value is limited to
	// 63 Unicode characters or 128 bytes, whichever is smaller. Labels and
	// values can contain only lowercase letters, numerals, underscores, and
	// dashes. Keys must begin with a letter.
	UserLabels    map[string]string `protobuf:"bytes,20,rep,name=user_labels,json=userLabels,proto3" json:"user_labels,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig) ProtoMessage() {}

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

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

func (x *UptimeCheckConfig) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *UptimeCheckConfig) GetResource() isUptimeCheckConfig_Resource {
	if x != nil {
		return x.Resource
	}
	return nil
}

func (x *UptimeCheckConfig) GetMonitoredResource() *monitoredres.MonitoredResource {
	if x != nil {
		if x, ok := x.Resource.(*UptimeCheckConfig_MonitoredResource); ok {
			return x.MonitoredResource
		}
	}
	return nil
}

func (x *UptimeCheckConfig) GetResourceGroup() *UptimeCheckConfig_ResourceGroup {
	if x != nil {
		if x, ok := x.Resource.(*UptimeCheckConfig_ResourceGroup_); ok {
			return x.ResourceGroup
		}
	}
	return nil
}

func (x *UptimeCheckConfig) GetSyntheticMonitor() *SyntheticMonitorTarget {
	if x != nil {
		if x, ok := x.Resource.(*UptimeCheckConfig_SyntheticMonitor); ok {
			return x.SyntheticMonitor
		}
	}
	return nil
}

func (x *UptimeCheckConfig) GetCheckRequestType() isUptimeCheckConfig_CheckRequestType {
	if x != nil {
		return x.CheckRequestType
	}
	return nil
}

func (x *UptimeCheckConfig) GetHttpCheck() *UptimeCheckConfig_HttpCheck {
	if x != nil {
		if x, ok := x.CheckRequestType.(*UptimeCheckConfig_HttpCheck_); ok {
			return x.HttpCheck
		}
	}
	return nil
}

func (x *UptimeCheckConfig) GetTcpCheck() *UptimeCheckConfig_TcpCheck {
	if x != nil {
		if x, ok := x.CheckRequestType.(*UptimeCheckConfig_TcpCheck_); ok {
			return x.TcpCheck
		}
	}
	return nil
}

func (x *UptimeCheckConfig) GetPeriod() *durationpb.Duration {
	if x != nil {
		return x.Period
	}
	return nil
}

func (x *UptimeCheckConfig) GetTimeout() *durationpb.Duration {
	if x != nil {
		return x.Timeout
	}
	return nil
}

func (x *UptimeCheckConfig) GetContentMatchers() []*UptimeCheckConfig_ContentMatcher {
	if x != nil {
		return x.ContentMatchers
	}
	return nil
}

func (x *UptimeCheckConfig) GetCheckerType() UptimeCheckConfig_CheckerType {
	if x != nil {
		return x.CheckerType
	}
	return UptimeCheckConfig_CHECKER_TYPE_UNSPECIFIED
}

func (x *UptimeCheckConfig) GetSelectedRegions() []UptimeCheckRegion {
	if x != nil {
		return x.SelectedRegions
	}
	return nil
}

// Deprecated: Marked as deprecated in google/monitoring/v3/uptime.proto.
func (x *UptimeCheckConfig) GetIsInternal() bool {
	if x != nil {
		return x.IsInternal
	}
	return false
}

// Deprecated: Marked as deprecated in google/monitoring/v3/uptime.proto.
func (x *UptimeCheckConfig) GetInternalCheckers() []*InternalChecker {
	if x != nil {
		return x.InternalCheckers
	}
	return nil
}

func (x *UptimeCheckConfig) GetUserLabels() map[string]string {
	if x != nil {
		return x.UserLabels
	}
	return nil
}

type isUptimeCheckConfig_Resource interface {
	isUptimeCheckConfig_Resource()
}

type UptimeCheckConfig_MonitoredResource struct {
	// The [monitored
	// resource](https://cloud.google.com/monitoring/api/resources) associated
	// with the configuration.
	// The following monitored resource types are valid for this field:
	//
	//	`uptime_url`,
	//	`gce_instance`,
	//	`gae_app`,
	//	`aws_ec2_instance`,
	//	`aws_elb_load_balancer`
	//	`k8s_service`
	//	`servicedirectory_service`
	//	`cloud_run_revision`
	MonitoredResource *monitoredres.MonitoredResource `protobuf:"bytes,3,opt,name=monitored_resource,json=monitoredResource,proto3,oneof"`
}

type UptimeCheckConfig_ResourceGroup_ struct {
	// The group resource associated with the configuration.
	ResourceGroup *UptimeCheckConfig_ResourceGroup `protobuf:"bytes,4,opt,name=resource_group,json=resourceGroup,proto3,oneof"`
}

type UptimeCheckConfig_SyntheticMonitor struct {
	// Specifies a Synthetic Monitor to invoke.
	SyntheticMonitor *SyntheticMonitorTarget `protobuf:"bytes,21,opt,name=synthetic_monitor,json=syntheticMonitor,proto3,oneof"`
}

func (*UptimeCheckConfig_MonitoredResource) isUptimeCheckConfig_Resource() {}

func (*UptimeCheckConfig_ResourceGroup_) isUptimeCheckConfig_Resource() {}

func (*UptimeCheckConfig_SyntheticMonitor) isUptimeCheckConfig_Resource() {}

type isUptimeCheckConfig_CheckRequestType interface {
	isUptimeCheckConfig_CheckRequestType()
}

type UptimeCheckConfig_HttpCheck_ struct {
	// Contains information needed to make an HTTP or HTTPS check.
	HttpCheck *UptimeCheckConfig_HttpCheck `protobuf:"bytes,5,opt,name=http_check,json=httpCheck,proto3,oneof"`
}

type UptimeCheckConfig_TcpCheck_ struct {
	// Contains information needed to make a TCP check.
	TcpCheck *UptimeCheckConfig_TcpCheck `protobuf:"bytes,6,opt,name=tcp_check,json=tcpCheck,proto3,oneof"`
}

func (*UptimeCheckConfig_HttpCheck_) isUptimeCheckConfig_CheckRequestType() {}

func (*UptimeCheckConfig_TcpCheck_) isUptimeCheckConfig_CheckRequestType() {}

// Contains the region, location, and list of IP
// addresses where checkers in the location run from.
type UptimeCheckIp struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A broad region category in which the IP address is located.
	Region UptimeCheckRegion `protobuf:"varint,1,opt,name=region,proto3,enum=google.monitoring.v3.UptimeCheckRegion" json:"region,omitempty"`
	// A more specific location within the region that typically encodes
	// a particular city/town/metro (and its containing state/province or country)
	// within the broader umbrella region category.
	Location string `protobuf:"bytes,2,opt,name=location,proto3" json:"location,omitempty"`
	// The IP address from which the Uptime check originates. This is a fully
	// specified IP address (not an IP address range). Most IP addresses, as of
	// this publication, are in IPv4 format; however, one should not rely on the
	// IP addresses being in IPv4 format indefinitely, and should support
	// interpreting this field in either IPv4 or IPv6 format.
	IpAddress     string `protobuf:"bytes,3,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckIp) ProtoMessage() {}

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

func (x *UptimeCheckIp) GetRegion() UptimeCheckRegion {
	if x != nil {
		return x.Region
	}
	return UptimeCheckRegion_REGION_UNSPECIFIED
}

func (x *UptimeCheckIp) GetLocation() string {
	if x != nil {
		return x.Location
	}
	return ""
}

func (x *UptimeCheckIp) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

// A Synthetic Monitor deployed to a Cloud Functions V2 instance.
type SyntheticMonitorTarget_CloudFunctionV2Target struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Fully qualified GCFv2 resource name
	// i.e. `projects/{project}/locations/{location}/functions/{function}`
	// Required.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Output only. The `cloud_run_revision` Monitored Resource associated with
	// the GCFv2. The Synthetic Monitor execution results (metrics, logs, and
	// spans) are reported against this Monitored Resource. This field is output
	// only.
	CloudRunRevision *monitoredres.MonitoredResource `protobuf:"bytes,2,opt,name=cloud_run_revision,json=cloudRunRevision,proto3" json:"cloud_run_revision,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

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

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

func (*SyntheticMonitorTarget_CloudFunctionV2Target) ProtoMessage() {}

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

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

func (x *SyntheticMonitorTarget_CloudFunctionV2Target) GetCloudRunRevision() *monitoredres.MonitoredResource {
	if x != nil {
		return x.CloudRunRevision
	}
	return nil
}

// The resource submessage for group checks. It can be used instead of a
// monitored resource, when multiple resources are being monitored.
type UptimeCheckConfig_ResourceGroup struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The group of resources being monitored. Should be only the `[GROUP_ID]`,
	// and not the full-path
	// `projects/[PROJECT_ID_OR_NUMBER]/groups/[GROUP_ID]`.
	GroupId string `protobuf:"bytes,1,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"`
	// The resource type of the group members.
	ResourceType  GroupResourceType `protobuf:"varint,2,opt,name=resource_type,json=resourceType,proto3,enum=google.monitoring.v3.GroupResourceType" json:"resource_type,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_ResourceGroup) ProtoMessage() {}

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

func (x *UptimeCheckConfig_ResourceGroup) GetGroupId() string {
	if x != nil {
		return x.GroupId
	}
	return ""
}

func (x *UptimeCheckConfig_ResourceGroup) GetResourceType() GroupResourceType {
	if x != nil {
		return x.ResourceType
	}
	return GroupResourceType_RESOURCE_TYPE_UNSPECIFIED
}

// Information involved in sending ICMP pings alongside public HTTP/TCP
// checks. For HTTP, the pings are performed for each part of the redirect
// chain.
type UptimeCheckConfig_PingConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Number of ICMP pings. A maximum of 3 ICMP pings is currently supported.
	PingsCount    int32 `protobuf:"varint,1,opt,name=pings_count,json=pingsCount,proto3" json:"pings_count,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_PingConfig) ProtoMessage() {}

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

func (x *UptimeCheckConfig_PingConfig) GetPingsCount() int32 {
	if x != nil {
		return x.PingsCount
	}
	return 0
}

// Information involved in an HTTP/HTTPS Uptime check request.
type UptimeCheckConfig_HttpCheck struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The HTTP request method to use for the check. If set to
	// `METHOD_UNSPECIFIED` then `request_method` defaults to `GET`.
	RequestMethod UptimeCheckConfig_HttpCheck_RequestMethod `protobuf:"varint,8,opt,name=request_method,json=requestMethod,proto3,enum=google.monitoring.v3.UptimeCheckConfig_HttpCheck_RequestMethod" json:"request_method,omitempty"`
	// If `true`, use HTTPS instead of HTTP to run the check.
	UseSsl bool `protobuf:"varint,1,opt,name=use_ssl,json=useSsl,proto3" json:"use_ssl,omitempty"`
	// Optional (defaults to "/"). The path to the page against which to run
	// the check. Will be combined with the `host` (specified within the
	// `monitored_resource`) and `port` to construct the full URL. If the
	// provided path does not begin with "/", a "/" will be prepended
	// automatically.
	Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
	// Optional (defaults to 80 when `use_ssl` is `false`, and 443 when
	// `use_ssl` is `true`). The TCP port on the HTTP server against which to
	// run the check. Will be combined with host (specified within the
	// `monitored_resource`) and `path` to construct the full URL.
	Port int32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"`
	// The authentication information. Optional when creating an HTTP check;
	// defaults to empty.
	// Do not set both `auth_method` and `auth_info`.
	AuthInfo *UptimeCheckConfig_HttpCheck_BasicAuthentication `protobuf:"bytes,4,opt,name=auth_info,json=authInfo,proto3" json:"auth_info,omitempty"`
	// Boolean specifying whether to encrypt the header information.
	// Encryption should be specified for any headers related to authentication
	// that you do not wish to be seen when retrieving the configuration. The
	// server will be responsible for encrypting the headers.
	// On Get/List calls, if `mask_headers` is set to `true` then the headers
	// will be obscured with `******.`
	MaskHeaders bool `protobuf:"varint,5,opt,name=mask_headers,json=maskHeaders,proto3" json:"mask_headers,omitempty"`
	// The list of headers to send as part of the Uptime check request.
	// If two headers have the same key and different values, they should
	// be entered as a single header, with the value being a comma-separated
	// list of all the desired values as described at
	// https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31).
	// Entering two separate headers with the same key in a Create call will
	// cause the first to be overwritten by the second.
	// The maximum number of headers allowed is 100.
	Headers map[string]string `protobuf:"bytes,6,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// The content type header to use for the check. The following
	// configurations result in errors:
	// 1. Content type is specified in both the `headers` field and the
	// `content_type` field.
	// 2. Request method is `GET` and `content_type` is not `TYPE_UNSPECIFIED`
	// 3. Request method is `POST` and `content_type` is `TYPE_UNSPECIFIED`.
	// 4. Request method is `POST` and a "Content-Type" header is provided via
	// `headers` field. The `content_type` field should be used instead.
	ContentType UptimeCheckConfig_HttpCheck_ContentType `protobuf:"varint,9,opt,name=content_type,json=contentType,proto3,enum=google.monitoring.v3.UptimeCheckConfig_HttpCheck_ContentType" json:"content_type,omitempty"`
	// A user provided content type header to use for the check. The invalid
	// configurations outlined in the `content_type` field apply to
	// `custom_content_type`, as well as the following:
	// 1. `content_type` is `URL_ENCODED` and `custom_content_type` is set.
	// 2. `content_type` is `USER_PROVIDED` and `custom_content_type` is not
	// set.
	CustomContentType string `protobuf:"bytes,13,opt,name=custom_content_type,json=customContentType,proto3" json:"custom_content_type,omitempty"`
	// Boolean specifying whether to include SSL certificate validation as a
	// part of the Uptime check. Only applies to checks where
	// `monitored_resource` is set to `uptime_url`. If `use_ssl` is `false`,
	// setting `validate_ssl` to `true` has no effect.
	ValidateSsl bool `protobuf:"varint,7,opt,name=validate_ssl,json=validateSsl,proto3" json:"validate_ssl,omitempty"`
	// The request body associated with the HTTP POST request. If `content_type`
	// is `URL_ENCODED`, the body passed in must be URL-encoded. Users can
	// provide a `Content-Length` header via the `headers` field or the API will
	// do so. If the `request_method` is `GET` and `body` is not empty, the API
	// will return an error. The maximum byte size is 1 megabyte.
	//
	// Note: If client libraries aren't used (which performs the conversion
	// automatically) base64 encode your `body` data since the field is of
	// `bytes` type.
	Body []byte `protobuf:"bytes,10,opt,name=body,proto3" json:"body,omitempty"`
	// If present, the check will only pass if the HTTP response status code is
	// in this set of status codes. If empty, the HTTP status code will only
	// pass if the HTTP status code is 200-299.
	AcceptedResponseStatusCodes []*UptimeCheckConfig_HttpCheck_ResponseStatusCode `protobuf:"bytes,11,rep,name=accepted_response_status_codes,json=acceptedResponseStatusCodes,proto3" json:"accepted_response_status_codes,omitempty"`
	// Contains information needed to add pings to an HTTP check.
	PingConfig *UptimeCheckConfig_PingConfig `protobuf:"bytes,12,opt,name=ping_config,json=pingConfig,proto3" json:"ping_config,omitempty"`
	// This field is optional and should be set only by users interested in
	// an authenticated uptime check.
	// Do not set both `auth_method` and `auth_info`.
	//
	// Types that are valid to be assigned to AuthMethod:
	//
	//	*UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_
	AuthMethod    isUptimeCheckConfig_HttpCheck_AuthMethod `protobuf_oneof:"auth_method"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_HttpCheck) ProtoMessage() {}

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

func (x *UptimeCheckConfig_HttpCheck) GetRequestMethod() UptimeCheckConfig_HttpCheck_RequestMethod {
	if x != nil {
		return x.RequestMethod
	}
	return UptimeCheckConfig_HttpCheck_METHOD_UNSPECIFIED
}

func (x *UptimeCheckConfig_HttpCheck) GetUseSsl() bool {
	if x != nil {
		return x.UseSsl
	}
	return false
}

func (x *UptimeCheckConfig_HttpCheck) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *UptimeCheckConfig_HttpCheck) GetPort() int32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *UptimeCheckConfig_HttpCheck) GetAuthInfo() *UptimeCheckConfig_HttpCheck_BasicAuthentication {
	if x != nil {
		return x.AuthInfo
	}
	return nil
}

func (x *UptimeCheckConfig_HttpCheck) GetMaskHeaders() bool {
	if x != nil {
		return x.MaskHeaders
	}
	return false
}

func (x *UptimeCheckConfig_HttpCheck) GetHeaders() map[string]string {
	if x != nil {
		return x.Headers
	}
	return nil
}

func (x *UptimeCheckConfig_HttpCheck) GetContentType() UptimeCheckConfig_HttpCheck_ContentType {
	if x != nil {
		return x.ContentType
	}
	return UptimeCheckConfig_HttpCheck_TYPE_UNSPECIFIED
}

func (x *UptimeCheckConfig_HttpCheck) GetCustomContentType() string {
	if x != nil {
		return x.CustomContentType
	}
	return ""
}

func (x *UptimeCheckConfig_HttpCheck) GetValidateSsl() bool {
	if x != nil {
		return x.ValidateSsl
	}
	return false
}

func (x *UptimeCheckConfig_HttpCheck) GetBody() []byte {
	if x != nil {
		return x.Body
	}
	return nil
}

func (x *UptimeCheckConfig_HttpCheck) GetAcceptedResponseStatusCodes() []*UptimeCheckConfig_HttpCheck_ResponseStatusCode {
	if x != nil {
		return x.AcceptedResponseStatusCodes
	}
	return nil
}

func (x *UptimeCheckConfig_HttpCheck) GetPingConfig() *UptimeCheckConfig_PingConfig {
	if x != nil {
		return x.PingConfig
	}
	return nil
}

func (x *UptimeCheckConfig_HttpCheck) GetAuthMethod() isUptimeCheckConfig_HttpCheck_AuthMethod {
	if x != nil {
		return x.AuthMethod
	}
	return nil
}

func (x *UptimeCheckConfig_HttpCheck) GetServiceAgentAuthentication() *UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication {
	if x != nil {
		if x, ok := x.AuthMethod.(*UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_); ok {
			return x.ServiceAgentAuthentication
		}
	}
	return nil
}

type isUptimeCheckConfig_HttpCheck_AuthMethod interface {
	isUptimeCheckConfig_HttpCheck_AuthMethod()
}

type UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ struct {
	// If specified, Uptime will generate and attach an OIDC JWT token for the
	// Monitoring service agent service account as an `Authorization` header
	// in the HTTP request when probing.
	ServiceAgentAuthentication *UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication `protobuf:"bytes,14,opt,name=service_agent_authentication,json=serviceAgentAuthentication,proto3,oneof"`
}

func (*UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_) isUptimeCheckConfig_HttpCheck_AuthMethod() {
}

// Information required for a TCP Uptime check request.
type UptimeCheckConfig_TcpCheck struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The TCP port on the server against which to run the check. Will be
	// combined with host (specified within the `monitored_resource`) to
	// construct the full URL. Required.
	Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
	// Contains information needed to add pings to a TCP check.
	PingConfig    *UptimeCheckConfig_PingConfig `protobuf:"bytes,2,opt,name=ping_config,json=pingConfig,proto3" json:"ping_config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_TcpCheck) ProtoMessage() {}

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

func (x *UptimeCheckConfig_TcpCheck) GetPort() int32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *UptimeCheckConfig_TcpCheck) GetPingConfig() *UptimeCheckConfig_PingConfig {
	if x != nil {
		return x.PingConfig
	}
	return nil
}

// Optional. Used to perform content matching. This allows matching based on
// substrings and regular expressions, together with their negations. Only the
// first 4&nbsp;MB of an HTTP or HTTPS check's response (and the first
// 1&nbsp;MB of a TCP check's response) are examined for purposes of content
// matching.
type UptimeCheckConfig_ContentMatcher struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// String, regex or JSON content to match. Maximum 1024 bytes. An empty
	// `content` string indicates no content matching is to be performed.
	Content string `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
	// The type of content matcher that will be applied to the server output,
	// compared to the `content` string when the check is run.
	Matcher UptimeCheckConfig_ContentMatcher_ContentMatcherOption `protobuf:"varint,2,opt,name=matcher,proto3,enum=google.monitoring.v3.UptimeCheckConfig_ContentMatcher_ContentMatcherOption" json:"matcher,omitempty"`
	// Certain `ContentMatcherOption` types require additional information.
	// `MATCHES_JSON_PATH` or `NOT_MATCHES_JSON_PATH` require a
	// `JsonPathMatcher`; not used for other options.
	//
	// Types that are valid to be assigned to AdditionalMatcherInfo:
	//
	//	*UptimeCheckConfig_ContentMatcher_JsonPathMatcher_
	AdditionalMatcherInfo isUptimeCheckConfig_ContentMatcher_AdditionalMatcherInfo `protobuf_oneof:"additional_matcher_info"`
	unknownFields         protoimpl.UnknownFields
	sizeCache             protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_ContentMatcher) ProtoMessage() {}

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

func (x *UptimeCheckConfig_ContentMatcher) GetContent() string {
	if x != nil {
		return x.Content
	}
	return ""
}

func (x *UptimeCheckConfig_ContentMatcher) GetMatcher() UptimeCheckConfig_ContentMatcher_ContentMatcherOption {
	if x != nil {
		return x.Matcher
	}
	return UptimeCheckConfig_ContentMatcher_CONTENT_MATCHER_OPTION_UNSPECIFIED
}

func (x *UptimeCheckConfig_ContentMatcher) GetAdditionalMatcherInfo() isUptimeCheckConfig_ContentMatcher_AdditionalMatcherInfo {
	if x != nil {
		return x.AdditionalMatcherInfo
	}
	return nil
}

func (x *UptimeCheckConfig_ContentMatcher) GetJsonPathMatcher() *UptimeCheckConfig_ContentMatcher_JsonPathMatcher {
	if x != nil {
		if x, ok := x.AdditionalMatcherInfo.(*UptimeCheckConfig_ContentMatcher_JsonPathMatcher_); ok {
			return x.JsonPathMatcher
		}
	}
	return nil
}

type isUptimeCheckConfig_ContentMatcher_AdditionalMatcherInfo interface {
	isUptimeCheckConfig_ContentMatcher_AdditionalMatcherInfo()
}

type UptimeCheckConfig_ContentMatcher_JsonPathMatcher_ struct {
	// Matcher information for `MATCHES_JSON_PATH` and `NOT_MATCHES_JSON_PATH`
	JsonPathMatcher *UptimeCheckConfig_ContentMatcher_JsonPathMatcher `protobuf:"bytes,3,opt,name=json_path_matcher,json=jsonPathMatcher,proto3,oneof"`
}

func (*UptimeCheckConfig_ContentMatcher_JsonPathMatcher_) isUptimeCheckConfig_ContentMatcher_AdditionalMatcherInfo() {
}

// The authentication parameters to provide to the specified resource or
// URL that requires a username and password. Currently, only
// [Basic HTTP authentication](https://tools.ietf.org/html/rfc7617) is
// supported in Uptime checks.
type UptimeCheckConfig_HttpCheck_BasicAuthentication struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The username to use when authenticating with the HTTP server.
	Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
	// The password to use when authenticating with the HTTP server.
	Password      string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_HttpCheck_BasicAuthentication) ProtoMessage() {}

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

func (x *UptimeCheckConfig_HttpCheck_BasicAuthentication) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}

func (x *UptimeCheckConfig_HttpCheck_BasicAuthentication) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

// A status to accept. Either a status code class like "2xx", or an integer
// status code like "200".
type UptimeCheckConfig_HttpCheck_ResponseStatusCode struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Either a specific value or a class of status codes.
	//
	// Types that are valid to be assigned to StatusCode:
	//
	//	*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusValue
	//	*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass_
	StatusCode    isUptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusCode `protobuf_oneof:"status_code"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_HttpCheck_ResponseStatusCode) ProtoMessage() {}

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

func (x *UptimeCheckConfig_HttpCheck_ResponseStatusCode) GetStatusCode() isUptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusCode {
	if x != nil {
		return x.StatusCode
	}
	return nil
}

func (x *UptimeCheckConfig_HttpCheck_ResponseStatusCode) GetStatusValue() int32 {
	if x != nil {
		if x, ok := x.StatusCode.(*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusValue); ok {
			return x.StatusValue
		}
	}
	return 0
}

func (x *UptimeCheckConfig_HttpCheck_ResponseStatusCode) GetStatusClass() UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass {
	if x != nil {
		if x, ok := x.StatusCode.(*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass_); ok {
			return x.StatusClass
		}
	}
	return UptimeCheckConfig_HttpCheck_ResponseStatusCode_STATUS_CLASS_UNSPECIFIED
}

type isUptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusCode interface {
	isUptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusCode()
}

type UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusValue struct {
	// A status code to accept.
	StatusValue int32 `protobuf:"varint,1,opt,name=status_value,json=statusValue,proto3,oneof"`
}

type UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass_ struct {
	// A class of status codes to accept.
	StatusClass UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass `protobuf:"varint,2,opt,name=status_class,json=statusClass,proto3,enum=google.monitoring.v3.UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass,oneof"`
}

func (*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusValue) isUptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusCode() {
}

func (*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass_) isUptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusCode() {
}

// Contains information needed for generating either an
// [OpenID Connect
// token](https://developers.google.com/identity/protocols/OpenIDConnect) or
// [OAuth token](https://developers.google.com/identity/protocols/oauth2).
// The token will be generated for the Monitoring service agent service
// account.
type UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Type of authentication.
	Type          UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType `protobuf:"varint,1,opt,name=type,proto3,enum=google.monitoring.v3.UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType" json:"type,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication) ProtoMessage() {}

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

func (x *UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication) GetType() UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType {
	if x != nil {
		return x.Type
	}
	return UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_SERVICE_AGENT_AUTHENTICATION_TYPE_UNSPECIFIED
}

// Information needed to perform a JSONPath content match.
// Used for `ContentMatcherOption::MATCHES_JSON_PATH` and
// `ContentMatcherOption::NOT_MATCHES_JSON_PATH`.
type UptimeCheckConfig_ContentMatcher_JsonPathMatcher struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// JSONPath within the response output pointing to the expected
	// `ContentMatcher::content` to match against.
	JsonPath string `protobuf:"bytes,1,opt,name=json_path,json=jsonPath,proto3" json:"json_path,omitempty"`
	// The type of JSONPath match that will be applied to the JSON output
	// (`ContentMatcher.content`)
	JsonMatcher   UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption `protobuf:"varint,2,opt,name=json_matcher,json=jsonMatcher,proto3,enum=google.monitoring.v3.UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption" json:"json_matcher,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UptimeCheckConfig_ContentMatcher_JsonPathMatcher) ProtoMessage() {}

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

func (x *UptimeCheckConfig_ContentMatcher_JsonPathMatcher) GetJsonPath() string {
	if x != nil {
		return x.JsonPath
	}
	return ""
}

func (x *UptimeCheckConfig_ContentMatcher_JsonPathMatcher) GetJsonMatcher() UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption {
	if x != nil {
		return x.JsonMatcher
	}
	return UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JSON_PATH_MATCHER_OPTION_UNSPECIFIED
}

var File_google_monitoring_v3_uptime_proto protoreflect.FileDescriptor

const file_google_monitoring_v3_uptime_proto_rawDesc = "" +
	"\n" +
	"!google/monitoring/v3/uptime.proto\x12\x14google.monitoring.v3\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/api/field_info.proto\x1a#google/api/monitored_resource.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\"\xa1\x02\n" +
	"\x0fInternalChecker\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12!\n" +
	"\fdisplay_name\x18\x02 \x01(\tR\vdisplayName\x12\x18\n" +
	"\anetwork\x18\x03 \x01(\tR\anetwork\x12\x19\n" +
	"\bgcp_zone\x18\x04 \x01(\tR\agcpZone\x12&\n" +
	"\x0fpeer_project_id\x18\x06 \x01(\tR\rpeerProjectId\x12A\n" +
	"\x05state\x18\a \x01(\x0e2+.google.monitoring.v3.InternalChecker.StateR\x05state\"3\n" +
	"\x05State\x12\x0f\n" +
	"\vUNSPECIFIED\x10\x00\x12\f\n" +
	"\bCREATING\x10\x01\x12\v\n" +
	"\aRUNNING\x10\x02:\x02\x18\x01\"\xc4\x02\n" +
	"\x16SyntheticMonitorTarget\x12p\n" +
	"\x11cloud_function_v2\x18\x01 \x01(\v2B.google.monitoring.v3.SyntheticMonitorTarget.CloudFunctionV2TargetH\x00R\x0fcloudFunctionV2\x1a\xad\x01\n" +
	"\x15CloudFunctionV2Target\x12B\n" +
	"\x04name\x18\x01 \x01(\tB.\xe0A\x02\xfaA(\n" +
	"&cloudfunctions.googleapis.com/FunctionR\x04name\x12P\n" +
	"\x12cloud_run_revision\x18\x02 \x01(\v2\x1d.google.api.MonitoredResourceB\x03\xe0A\x03R\x10cloudRunRevisionB\b\n" +
	"\x06target\"\x94#\n" +
	"\x11UptimeCheckConfig\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\bR\x04name\x12!\n" +
	"\fdisplay_name\x18\x02 \x01(\tR\vdisplayName\x12N\n" +
	"\x12monitored_resource\x18\x03 \x01(\v2\x1d.google.api.MonitoredResourceH\x00R\x11monitoredResource\x12^\n" +
	"\x0eresource_group\x18\x04 \x01(\v25.google.monitoring.v3.UptimeCheckConfig.ResourceGroupH\x00R\rresourceGroup\x12[\n" +
	"\x11synthetic_monitor\x18\x15 \x01(\v2,.google.monitoring.v3.SyntheticMonitorTargetH\x00R\x10syntheticMonitor\x12R\n" +
	"\n" +
	"http_check\x18\x05 \x01(\v21.google.monitoring.v3.UptimeCheckConfig.HttpCheckH\x01R\thttpCheck\x12O\n" +
	"\ttcp_check\x18\x06 \x01(\v20.google.monitoring.v3.UptimeCheckConfig.TcpCheckH\x01R\btcpCheck\x121\n" +
	"\x06period\x18\a \x01(\v2\x19.google.protobuf.DurationR\x06period\x123\n" +
	"\atimeout\x18\b \x01(\v2\x19.google.protobuf.DurationR\atimeout\x12a\n" +
	"\x10content_matchers\x18\t \x03(\v26.google.monitoring.v3.UptimeCheckConfig.ContentMatcherR\x0fcontentMatchers\x12V\n" +
	"\fchecker_type\x18\x11 \x01(\x0e23.google.monitoring.v3.UptimeCheckConfig.CheckerTypeR\vcheckerType\x12R\n" +
	"\x10selected_regions\x18\n" +
	" \x03(\x0e2'.google.monitoring.v3.UptimeCheckRegionR\x0fselectedRegions\x12#\n" +
	"\vis_internal\x18\x0f \x01(\bB\x02\x18\x01R\n" +
	"isInternal\x12V\n" +
	"\x11internal_checkers\x18\x0e \x03(\v2%.google.monitoring.v3.InternalCheckerB\x02\x18\x01R\x10internalCheckers\x12X\n" +
	"\vuser_labels\x18\x14 \x03(\v27.google.monitoring.v3.UptimeCheckConfig.UserLabelsEntryR\n" +
	"userLabels\x1ax\n" +
	"\rResourceGroup\x12\x19\n" +
	"\bgroup_id\x18\x01 \x01(\tR\agroupId\x12L\n" +
	"\rresource_type\x18\x02 \x01(\x0e2'.google.monitoring.v3.GroupResourceTypeR\fresourceType\x1a-\n" +
	"\n" +
	"PingConfig\x12\x1f\n" +
	"\vpings_count\x18\x01 \x01(\x05R\n" +
	"pingsCount\x1a\xef\x0e\n" +
	"\tHttpCheck\x12f\n" +
	"\x0erequest_method\x18\b \x01(\x0e2?.google.monitoring.v3.UptimeCheckConfig.HttpCheck.RequestMethodR\rrequestMethod\x12\x17\n" +
	"\ause_ssl\x18\x01 \x01(\bR\x06useSsl\x12\x12\n" +
	"\x04path\x18\x02 \x01(\tR\x04path\x12\x12\n" +
	"\x04port\x18\x03 \x01(\x05R\x04port\x12b\n" +
	"\tauth_info\x18\x04 \x01(\v2E.google.monitoring.v3.UptimeCheckConfig.HttpCheck.BasicAuthenticationR\bauthInfo\x12!\n" +
	"\fmask_headers\x18\x05 \x01(\bR\vmaskHeaders\x12X\n" +
	"\aheaders\x18\x06 \x03(\v2>.google.monitoring.v3.UptimeCheckConfig.HttpCheck.HeadersEntryR\aheaders\x12`\n" +
	"\fcontent_type\x18\t \x01(\x0e2=.google.monitoring.v3.UptimeCheckConfig.HttpCheck.ContentTypeR\vcontentType\x12.\n" +
	"\x13custom_content_type\x18\r \x01(\tR\x11customContentType\x12!\n" +
	"\fvalidate_ssl\x18\a \x01(\bR\vvalidateSsl\x12\x12\n" +
	"\x04body\x18\n" +
	" \x01(\fR\x04body\x12\x89\x01\n" +
	"\x1eaccepted_response_status_codes\x18\v \x03(\v2D.google.monitoring.v3.UptimeCheckConfig.HttpCheck.ResponseStatusCodeR\x1bacceptedResponseStatusCodes\x12S\n" +
	"\vping_config\x18\f \x01(\v22.google.monitoring.v3.UptimeCheckConfig.PingConfigR\n" +
	"pingConfig\x12\x90\x01\n" +
	"\x1cservice_agent_authentication\x18\x0e \x01(\v2L.google.monitoring.v3.UptimeCheckConfig.HttpCheck.ServiceAgentAuthenticationH\x00R\x1aserviceAgentAuthentication\x1aM\n" +
	"\x13BasicAuthentication\x12\x1a\n" +
	"\busername\x18\x01 \x01(\tR\busername\x12\x1a\n" +
	"\bpassword\x18\x02 \x01(\tR\bpassword\x1a\xf6\x02\n" +
	"\x12ResponseStatusCode\x12#\n" +
	"\fstatus_value\x18\x01 \x01(\x05H\x00R\vstatusValue\x12u\n" +
	"\fstatus_class\x18\x02 \x01(\x0e2P.google.monitoring.v3.UptimeCheckConfig.HttpCheck.ResponseStatusCode.StatusClassH\x00R\vstatusClass\"\xb4\x01\n" +
	"\vStatusClass\x12\x1c\n" +
	"\x18STATUS_CLASS_UNSPECIFIED\x10\x00\x12\x14\n" +
	"\x10STATUS_CLASS_1XX\x10d\x12\x15\n" +
	"\x10STATUS_CLASS_2XX\x10\xc8\x01\x12\x15\n" +
	"\x10STATUS_CLASS_3XX\x10\xac\x02\x12\x15\n" +
	"\x10STATUS_CLASS_4XX\x10\x90\x03\x12\x15\n" +
	"\x10STATUS_CLASS_5XX\x10\xf4\x03\x12\x15\n" +
	"\x10STATUS_CLASS_ANY\x10\xe8\aB\r\n" +
	"\vstatus_code\x1a\x82\x02\n" +
	"\x1aServiceAgentAuthentication\x12\x7f\n" +
	"\x04type\x18\x01 \x01(\x0e2k.google.monitoring.v3.UptimeCheckConfig.HttpCheck.ServiceAgentAuthentication.ServiceAgentAuthenticationTypeR\x04type\"c\n" +
	"\x1eServiceAgentAuthenticationType\x121\n" +
	"-SERVICE_AGENT_AUTHENTICATION_TYPE_UNSPECIFIED\x10\x00\x12\x0e\n" +
	"\n" +
	"OIDC_TOKEN\x10\x01\x1a:\n" +
	"\fHeadersEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\":\n" +
	"\rRequestMethod\x12\x16\n" +
	"\x12METHOD_UNSPECIFIED\x10\x00\x12\a\n" +
	"\x03GET\x10\x01\x12\b\n" +
	"\x04POST\x10\x02\"G\n" +
	"\vContentType\x12\x14\n" +
	"\x10TYPE_UNSPECIFIED\x10\x00\x12\x0f\n" +
	"\vURL_ENCODED\x10\x01\x12\x11\n" +
	"\rUSER_PROVIDED\x10\x02B\r\n" +
	"\vauth_method\x1as\n" +
	"\bTcpCheck\x12\x12\n" +
	"\x04port\x18\x01 \x01(\x05R\x04port\x12S\n" +
	"\vping_config\x18\x02 \x01(\v22.google.monitoring.v3.UptimeCheckConfig.PingConfigR\n" +
	"pingConfig\x1a\x84\x06\n" +
	"\x0eContentMatcher\x12\x18\n" +
	"\acontent\x18\x01 \x01(\tR\acontent\x12e\n" +
	"\amatcher\x18\x02 \x01(\x0e2K.google.monitoring.v3.UptimeCheckConfig.ContentMatcher.ContentMatcherOptionR\amatcher\x12t\n" +
	"\x11json_path_matcher\x18\x03 \x01(\v2F.google.monitoring.v3.UptimeCheckConfig.ContentMatcher.JsonPathMatcherH\x00R\x0fjsonPathMatcher\x1a\x94\x02\n" +
	"\x0fJsonPathMatcher\x12\x1b\n" +
	"\tjson_path\x18\x01 \x01(\tR\bjsonPath\x12\x7f\n" +
	"\fjson_matcher\x18\x02 \x01(\x0e2\\.google.monitoring.v3.UptimeCheckConfig.ContentMatcher.JsonPathMatcher.JsonPathMatcherOptionR\vjsonMatcher\"c\n" +
	"\x15JsonPathMatcherOption\x12(\n" +
	"$JSON_PATH_MATCHER_OPTION_UNSPECIFIED\x10\x00\x12\x0f\n" +
	"\vEXACT_MATCH\x10\x01\x12\x0f\n" +
	"\vREGEX_MATCH\x10\x02\"\xc8\x01\n" +
	"\x14ContentMatcherOption\x12&\n" +
	"\"CONTENT_MATCHER_OPTION_UNSPECIFIED\x10\x00\x12\x13\n" +
	"\x0fCONTAINS_STRING\x10\x01\x12\x17\n" +
	"\x13NOT_CONTAINS_STRING\x10\x02\x12\x11\n" +
	"\rMATCHES_REGEX\x10\x03\x12\x15\n" +
	"\x11NOT_MATCHES_REGEX\x10\x04\x12\x15\n" +
	"\x11MATCHES_JSON_PATH\x10\x05\x12\x19\n" +
	"\x15NOT_MATCHES_JSON_PATH\x10\x06B\x19\n" +
	"\x17additional_matcher_info\x1a=\n" +
	"\x0fUserLabelsEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"U\n" +
	"\vCheckerType\x12\x1c\n" +
	"\x18CHECKER_TYPE_UNSPECIFIED\x10\x00\x12\x16\n" +
	"\x12STATIC_IP_CHECKERS\x10\x01\x12\x10\n" +
	"\fVPC_CHECKERS\x10\x03:\xf3\x01\xeaA\xef\x01\n" +
	"+monitoring.googleapis.com/UptimeCheckConfig\x12;projects/{project}/uptimeCheckConfigs/{uptime_check_config}\x12Eorganizations/{organization}/uptimeCheckConfigs/{uptime_check_config}\x129folders/{folder}/uptimeCheckConfigs/{uptime_check_config}\x12\x01*B\n" +
	"\n" +
	"\bresourceB\x14\n" +
	"\x12check_request_type\"\x8b\x01\n" +
	"\rUptimeCheckIp\x12?\n" +
	"\x06region\x18\x01 \x01(\x0e2'.google.monitoring.v3.UptimeCheckRegionR\x06region\x12\x1a\n" +
	"\blocation\x18\x02 \x01(\tR\blocation\x12\x1d\n" +
	"\n" +
	"ip_address\x18\x03 \x01(\tR\tipAddress*\x95\x01\n" +
	"\x11UptimeCheckRegion\x12\x16\n" +
	"\x12REGION_UNSPECIFIED\x10\x00\x12\a\n" +
	"\x03USA\x10\x01\x12\n" +
	"\n" +
	"\x06EUROPE\x10\x02\x12\x11\n" +
	"\rSOUTH_AMERICA\x10\x03\x12\x10\n" +
	"\fASIA_PACIFIC\x10\x04\x12\x0e\n" +
	"\n" +
	"USA_OREGON\x10\x05\x12\f\n" +
	"\bUSA_IOWA\x10\x06\x12\x10\n" +
	"\fUSA_VIRGINIA\x10\a*[\n" +
	"\x11GroupResourceType\x12\x1d\n" +
	"\x19RESOURCE_TYPE_UNSPECIFIED\x10\x00\x12\f\n" +
	"\bINSTANCE\x10\x01\x12\x19\n" +
	"\x15AWS_ELB_LOAD_BALANCER\x10\x02B\xaf\x02\xeaAf\n" +
	"&cloudfunctions.googleapis.com/Function\x12<projects/{project}/locations/{location}/functions/{function}\n" +
	"\x18com.google.monitoring.v3B\vUptimeProtoP\x01ZAcloud.google.com/go/monitoring/apiv3/v2/monitoringpb;monitoringpb\xaa\x02\x1aGoogle.Cloud.Monitoring.V3\xca\x02\x1aGoogle\\Cloud\\Monitoring\\V3\xea\x02\x1dGoogle::Cloud::Monitoring::V3b\x06proto3"

var (
	file_google_monitoring_v3_uptime_proto_rawDescOnce sync.Once
	file_google_monitoring_v3_uptime_proto_rawDescData []byte
)

func file_google_monitoring_v3_uptime_proto_rawDescGZIP() []byte {
	file_google_monitoring_v3_uptime_proto_rawDescOnce.Do(func() {
		file_google_monitoring_v3_uptime_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_google_monitoring_v3_uptime_proto_rawDesc), len(file_google_monitoring_v3_uptime_proto_rawDesc)))
	})
	return file_google_monitoring_v3_uptime_proto_rawDescData
}

var file_google_monitoring_v3_uptime_proto_enumTypes = make([]protoimpl.EnumInfo, 10)
var file_google_monitoring_v3_uptime_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
var file_google_monitoring_v3_uptime_proto_goTypes = []any{
	(UptimeCheckRegion)(0),                                          // 0: google.monitoring.v3.UptimeCheckRegion
	(GroupResourceType)(0),                                          // 1: google.monitoring.v3.GroupResourceType
	(InternalChecker_State)(0),                                      // 2: google.monitoring.v3.InternalChecker.State
	(UptimeCheckConfig_CheckerType)(0),                              // 3: google.monitoring.v3.UptimeCheckConfig.CheckerType
	(UptimeCheckConfig_HttpCheck_RequestMethod)(0),                  // 4: google.monitoring.v3.UptimeCheckConfig.HttpCheck.RequestMethod
	(UptimeCheckConfig_HttpCheck_ContentType)(0),                    // 5: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ContentType
	(UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass)(0), // 6: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ResponseStatusCode.StatusClass
	(UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_ServiceAgentAuthenticationType)(0), // 7: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ServiceAgentAuthentication.ServiceAgentAuthenticationType
	(UptimeCheckConfig_ContentMatcher_ContentMatcherOption)(0),                                 // 8: google.monitoring.v3.UptimeCheckConfig.ContentMatcher.ContentMatcherOption
	(UptimeCheckConfig_ContentMatcher_JsonPathMatcher_JsonPathMatcherOption)(0),                // 9: google.monitoring.v3.UptimeCheckConfig.ContentMatcher.JsonPathMatcher.JsonPathMatcherOption
	(*InternalChecker)(nil),                                        // 10: google.monitoring.v3.InternalChecker
	(*SyntheticMonitorTarget)(nil),                                 // 11: google.monitoring.v3.SyntheticMonitorTarget
	(*UptimeCheckConfig)(nil),                                      // 12: google.monitoring.v3.UptimeCheckConfig
	(*UptimeCheckIp)(nil),                                          // 13: google.monitoring.v3.UptimeCheckIp
	(*SyntheticMonitorTarget_CloudFunctionV2Target)(nil),           // 14: google.monitoring.v3.SyntheticMonitorTarget.CloudFunctionV2Target
	(*UptimeCheckConfig_ResourceGroup)(nil),                        // 15: google.monitoring.v3.UptimeCheckConfig.ResourceGroup
	(*UptimeCheckConfig_PingConfig)(nil),                           // 16: google.monitoring.v3.UptimeCheckConfig.PingConfig
	(*UptimeCheckConfig_HttpCheck)(nil),                            // 17: google.monitoring.v3.UptimeCheckConfig.HttpCheck
	(*UptimeCheckConfig_TcpCheck)(nil),                             // 18: google.monitoring.v3.UptimeCheckConfig.TcpCheck
	(*UptimeCheckConfig_ContentMatcher)(nil),                       // 19: google.monitoring.v3.UptimeCheckConfig.ContentMatcher
	nil,                                                            // 20: google.monitoring.v3.UptimeCheckConfig.UserLabelsEntry
	(*UptimeCheckConfig_HttpCheck_BasicAuthentication)(nil),        // 21: google.monitoring.v3.UptimeCheckConfig.HttpCheck.BasicAuthentication
	(*UptimeCheckConfig_HttpCheck_ResponseStatusCode)(nil),         // 22: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ResponseStatusCode
	(*UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication)(nil), // 23: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ServiceAgentAuthentication
	nil, // 24: google.monitoring.v3.UptimeCheckConfig.HttpCheck.HeadersEntry
	(*UptimeCheckConfig_ContentMatcher_JsonPathMatcher)(nil), // 25: google.monitoring.v3.UptimeCheckConfig.ContentMatcher.JsonPathMatcher
	(*monitoredres.MonitoredResource)(nil),                   // 26: google.api.MonitoredResource
	(*durationpb.Duration)(nil),                              // 27: google.protobuf.Duration
}
var file_google_monitoring_v3_uptime_proto_depIdxs = []int32{
	2,  // 0: google.monitoring.v3.InternalChecker.state:type_name -> google.monitoring.v3.InternalChecker.State
	14, // 1: google.monitoring.v3.SyntheticMonitorTarget.cloud_function_v2:type_name -> google.monitoring.v3.SyntheticMonitorTarget.CloudFunctionV2Target
	26, // 2: google.monitoring.v3.UptimeCheckConfig.monitored_resource:type_name -> google.api.MonitoredResource
	15, // 3: google.monitoring.v3.UptimeCheckConfig.resource_group:type_name -> google.monitoring.v3.UptimeCheckConfig.ResourceGroup
	11, // 4: google.monitoring.v3.UptimeCheckConfig.synthetic_monitor:type_name -> google.monitoring.v3.SyntheticMonitorTarget
	17, // 5: google.monitoring.v3.UptimeCheckConfig.http_check:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck
	18, // 6: google.monitoring.v3.UptimeCheckConfig.tcp_check:type_name -> google.monitoring.v3.UptimeCheckConfig.TcpCheck
	27, // 7: google.monitoring.v3.UptimeCheckConfig.period:type_name -> google.protobuf.Duration
	27, // 8: google.monitoring.v3.UptimeCheckConfig.timeout:type_name -> google.protobuf.Duration
	19, // 9: google.monitoring.v3.UptimeCheckConfig.content_matchers:type_name -> google.monitoring.v3.UptimeCheckConfig.ContentMatcher
	3,  // 10: google.monitoring.v3.UptimeCheckConfig.checker_type:type_name -> google.monitoring.v3.UptimeCheckConfig.CheckerType
	0,  // 11: google.monitoring.v3.UptimeCheckConfig.selected_regions:type_name -> google.monitoring.v3.UptimeCheckRegion
	10, // 12: google.monitoring.v3.UptimeCheckConfig.internal_checkers:type_name -> google.monitoring.v3.InternalChecker
	20, // 13: google.monitoring.v3.UptimeCheckConfig.user_labels:type_name -> google.monitoring.v3.UptimeCheckConfig.UserLabelsEntry
	0,  // 14: google.monitoring.v3.UptimeCheckIp.region:type_name -> google.monitoring.v3.UptimeCheckRegion
	26, // 15: google.monitoring.v3.SyntheticMonitorTarget.CloudFunctionV2Target.cloud_run_revision:type_name -> google.api.MonitoredResource
	1,  // 16: google.monitoring.v3.UptimeCheckConfig.ResourceGroup.resource_type:type_name -> google.monitoring.v3.GroupResourceType
	4,  // 17: google.monitoring.v3.UptimeCheckConfig.HttpCheck.request_method:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.RequestMethod
	21, // 18: google.monitoring.v3.UptimeCheckConfig.HttpCheck.auth_info:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.BasicAuthentication
	24, // 19: google.monitoring.v3.UptimeCheckConfig.HttpCheck.headers:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.HeadersEntry
	5,  // 20: google.monitoring.v3.UptimeCheckConfig.HttpCheck.content_type:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.ContentType
	22, // 21: google.monitoring.v3.UptimeCheckConfig.HttpCheck.accepted_response_status_codes:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.ResponseStatusCode
	16, // 22: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ping_config:type_name -> google.monitoring.v3.UptimeCheckConfig.PingConfig
	23, // 23: google.monitoring.v3.UptimeCheckConfig.HttpCheck.service_agent_authentication:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.ServiceAgentAuthentication
	16, // 24: google.monitoring.v3.UptimeCheckConfig.TcpCheck.ping_config:type_name -> google.monitoring.v3.UptimeCheckConfig.PingConfig
	8,  // 25: google.monitoring.v3.UptimeCheckConfig.ContentMatcher.matcher:type_name -> google.monitoring.v3.UptimeCheckConfig.ContentMatcher.ContentMatcherOption
	25, // 26: google.monitoring.v3.UptimeCheckConfig.ContentMatcher.json_path_matcher:type_name -> google.monitoring.v3.UptimeCheckConfig.ContentMatcher.JsonPathMatcher
	6,  // 27: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ResponseStatusCode.status_class:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.ResponseStatusCode.StatusClass
	7,  // 28: google.monitoring.v3.UptimeCheckConfig.HttpCheck.ServiceAgentAuthentication.type:type_name -> google.monitoring.v3.UptimeCheckConfig.HttpCheck.ServiceAgentAuthentication.ServiceAgentAuthenticationType
	9,  // 29: google.monitoring.v3.UptimeCheckConfig.ContentMatcher.JsonPathMatcher.json_matcher:type_name -> google.monitoring.v3.UptimeCheckConfig.ContentMatcher.JsonPathMatcher.JsonPathMatcherOption
	30, // [30:30] is the sub-list for method output_type
	30, // [30:30] is the sub-list for method input_type
	30, // [30:30] is the sub-list for extension type_name
	30, // [30:30] is the sub-list for extension extendee
	0,  // [0:30] is the sub-list for field type_name
}

func init() { file_google_monitoring_v3_uptime_proto_init() }
func file_google_monitoring_v3_uptime_proto_init() {
	if File_google_monitoring_v3_uptime_proto != nil {
		return
	}
	file_google_monitoring_v3_uptime_proto_msgTypes[1].OneofWrappers = []any{
		(*SyntheticMonitorTarget_CloudFunctionV2)(nil),
	}
	file_google_monitoring_v3_uptime_proto_msgTypes[2].OneofWrappers = []any{
		(*UptimeCheckConfig_MonitoredResource)(nil),
		(*UptimeCheckConfig_ResourceGroup_)(nil),
		(*UptimeCheckConfig_SyntheticMonitor)(nil),
		(*UptimeCheckConfig_HttpCheck_)(nil),
		(*UptimeCheckConfig_TcpCheck_)(nil),
	}
	file_google_monitoring_v3_uptime_proto_msgTypes[7].OneofWrappers = []any{
		(*UptimeCheckConfig_HttpCheck_ServiceAgentAuthentication_)(nil),
	}
	file_google_monitoring_v3_uptime_proto_msgTypes[9].OneofWrappers = []any{
		(*UptimeCheckConfig_ContentMatcher_JsonPathMatcher_)(nil),
	}
	file_google_monitoring_v3_uptime_proto_msgTypes[12].OneofWrappers = []any{
		(*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusValue)(nil),
		(*UptimeCheckConfig_HttpCheck_ResponseStatusCode_StatusClass_)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_monitoring_v3_uptime_proto_rawDesc), len(file_google_monitoring_v3_uptime_proto_rawDesc)),
			NumEnums:      10,
			NumMessages:   16,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_google_monitoring_v3_uptime_proto_goTypes,
		DependencyIndexes: file_google_monitoring_v3_uptime_proto_depIdxs,
		EnumInfos:         file_google_monitoring_v3_uptime_proto_enumTypes,
		MessageInfos:      file_google_monitoring_v3_uptime_proto_msgTypes,
	}.Build()
	File_google_monitoring_v3_uptime_proto = out.File
	file_google_monitoring_v3_uptime_proto_goTypes = nil
	file_google_monitoring_v3_uptime_proto_depIdxs = nil
}
